.icp-wrap { position: relative; display: inline-block; max-width: 100%; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; line-height: 0; }
.icp-wrap canvas { max-width: 100%; max-height: 520px; cursor: crosshair; touch-action: manipulation; }
.icp-lens { position: absolute; width: 22px; height: 22px; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px rgba(0,0,0,.6); transform: translate(-50%, -50%); pointer-events: none; }
.icp-picked { display: flex; gap: 14px; align-items: center; margin: 14px 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; }
.icp-picked > i { width: 64px; height: 64px; border-radius: 10px; border: 1px solid var(--line); flex: none; }
.icp-vals { display: grid; gap: 4px; min-width: 0; }
.icp-vals div { display: flex; gap: 8px; align-items: center; font-size: .9rem; } .icp-vals code { font-family: ui-monospace, Menlo, monospace; }
.icp-dom { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; }
.icp-dom button { border: 1px solid var(--line); border-radius: 10px; overflow: hidden; padding: 0; background: #fff; cursor: pointer; font: 600 .78rem ui-monospace, Menlo, monospace; }
.icp-dom button i { display: block; height: 54px; } .icp-dom button span { display: block; padding: 6px; }
