/* The Armory's drawing board (2026-10-14). Markup inc/armory_bench.php, script forge/bench.js.
   Everything is prefixed ib- so the site's .btn and friends never reach in. */
.ib{--ib-panel:#050c1a;--ib-bar:#071224;--ib-soft:#bcd6ea;--ib-dim:#86a6c2;--ib-rule:rgba(190,226,240,.28);--ib-rule2:rgba(190,226,240,.13);--ib-cut:6px;
  margin:0 0 8px}
.ib-chamf{clip-path:polygon(var(--ib-cut) 0,100% 0,100% calc(100% - var(--ib-cut)),calc(100% - var(--ib-cut)) 100%,0 100%,0 var(--ib-cut))}
.ib-lead{margin:0 0 18px;color:var(--ib-soft);font-size:17px;max-width:80ch}
.ib-bench{display:grid;grid-template-columns:150px minmax(0,1fr) 250px;gap:14px;align-items:start}
.ib-tray,.ib-drawers{background:var(--ib-panel);border:1px solid var(--ib-rule);padding:12px;display:grid;gap:14px;align-content:start}
.ib h2{margin:0;font:700 10px var(--head);letter-spacing:.2em;text-transform:uppercase;color:var(--ib-dim)}
.ib-grp{display:grid;gap:6px}
.ib-btn{font:600 11px var(--data);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:transparent;cursor:pointer;
  border:1px solid var(--ib-rule);padding:8px 10px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:6px}
.ib-btn kbd{font:500 10px var(--data);color:var(--ib-dim)}
.ib-btn:hover{border-color:var(--cyan)}
.ib-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.ib-btn[aria-pressed="true"]{background:var(--cyan);color:#021018;border-color:var(--cyan)}
.ib-btn[aria-pressed="true"] kbd{color:#021018}
.ib-btn:disabled{opacity:.35;cursor:default}
.ib-save{justify-content:center;border-color:var(--pink);color:var(--pink)}
.ib-save:hover{background:var(--pink);color:#fff;border-color:var(--pink)}
.ib-row{display:flex;flex-wrap:wrap;gap:6px}
.ib-row .ib-btn{flex:1 1 auto;justify-content:center}
.ib-cans{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ib-can{aspect-ratio:1;border-radius:50%;border:2px solid #22406f;background:#0b1a33;cursor:pointer;padding:5px;display:grid}
.ib-can i{border-radius:50%;background:var(--c);display:block;border:1px solid rgba(0,0,0,.35)}
.ib-can[aria-pressed="true"]{border-color:var(--ink);outline:2px solid var(--c);outline-offset:2px}
.ib-lampc{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.ib-lampc button{height:22px;border:1px solid var(--ib-rule);background:var(--c);cursor:pointer}
.ib-lampc button[aria-pressed="true"]{outline:2px solid var(--ink);outline-offset:2px}
.ib-f{display:grid;gap:4px;font:500 10px var(--data);letter-spacing:.14em;text-transform:uppercase;color:var(--ib-dim)}
.ib-f input{font:500 13px var(--data);color:var(--ink);background:#030812;border:1px solid var(--ib-rule);padding:7px 8px;min-width:0;text-transform:none;letter-spacing:0}
.ib-f input::placeholder{color:var(--ib-dim)}
.ib-table{position:relative;min-width:0;border:1px solid var(--ib-rule);background:#02060f}
.ib-table::before{content:"";position:absolute;left:var(--ib-cut);right:0;top:0;height:2px;background:var(--cyan);z-index:1}
#ib-cv{display:block;width:100%;aspect-ratio:540/404;touch-action:none;cursor:crosshair}
.ib-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:9px 12px;border-top:1px solid var(--ib-rule2);background:var(--ib-bar);font:500 12px var(--data);color:var(--ib-soft)}
.ib-status b{color:var(--cyan);font-weight:500}
.ib-sp{margin-left:auto;display:flex;gap:6px}
.ib-status .ib-btn{padding:5px 8px}
.ib-tabs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ib-rule)}
.ib-tabs button{font:700 9px var(--head);letter-spacing:.14em;padding:9px 2px;background:transparent;color:var(--ib-dim);border:0;border-right:1px solid var(--ib-rule);cursor:pointer}
.ib-tabs button:last-child{border-right:0}
.ib-tabs button[aria-selected="true"]{background:var(--cyan);color:#021018}
.ib-parts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.ib-part{aspect-ratio:1;border:1px solid var(--ib-rule);background:#030812;cursor:grab;display:grid;grid-template-rows:1fr auto;padding:4px;color:var(--ink);touch-action:none}
.ib-part:hover,.ib-part:focus-visible{border-color:var(--cyan);outline:none}
.ib-part svg{width:100%;height:100%;min-height:0}
.ib-part span{font:500 9px var(--data);letter-spacing:.06em;color:var(--ib-dim);text-align:center;text-transform:uppercase}
.ib-hint{font-size:12px;color:var(--ib-dim);margin:0;line-height:1.5}
.ib-ghost{position:fixed;width:56px;height:56px;pointer-events:none;z-index:50;color:var(--cyan);opacity:.85}
@media (max-width:1100px){
  .ib-bench{grid-template-columns:minmax(0,1fr)}
  .ib-table{order:-1}
  .ib-tray,.ib-drawers{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
}
@media (max-width:520px){ .ib-parts{grid-template-columns:repeat(4,1fr)} .ib-lead{font-size:16px} }
