
.wheelhouse-workbench{
  --bg:#eef2f5; --surface:#ffffff; --surface-2:#e4eaef; --ink:#13212e; --ink-2:#44576a; --ink-3:#6b7d8e;
  --rule:#cfd9e1; --accent:#0e7477; --accent-soft:#d3ecec; --accent-ink:#ffffff;
  --good:#2f7d4f; --good-soft:#dcefe2; --warn:#9a6a00; --warn-soft:#f6ebcf; --bad:#c2412f; --bad-soft:#f8dcd6;
  --plan:#5a4fb0; --plan-soft:#e6e3f7;
  --code-bg:#0f1b26; --code-ink:#d4e0ea; --code-dim:#6f8597; --code-kw:#7fd3c8; --code-ty:#e6c07b; --code-str:#b5d98c; --code-num:#f0a07a;
  --gl-bg:#0d1822; --gl-a:#5fd4c8; --gl-b:#e6c07b; --gl-c:#ff6b5a; --gl-d:#8aa4ba;
  --display:"Chakra Petch", "Bahnschrift", "Segoe UI", sans-serif;
  --body:"IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --mono:"IBM Plex Mono", "Cascadia Mono", Consolas, monospace;
  color-scheme: light;
}
@media (prefers-color-scheme: dark){
  .wheelhouse-workbench:not([data-theme="light"]){
    --bg:#0b141c; --surface:#111e29; --surface-2:#172735; --ink:#dbe6ee; --ink-2:#a7b9c8; --ink-3:#7f94a6;
    --rule:#233648; --accent:#5fd4c8; --accent-soft:#16383a; --accent-ink:#06201f;
    --good:#6fcf97; --good-soft:#15322a; --warn:#e8c068; --warn-soft:#3a2f14; --bad:#ff8a78; --bad-soft:#3d1c18;
    --plan:#a99ff0; --plan-soft:#27234a;
    --code-bg:#08111a; --gl-bg:#08111a;
    color-scheme: dark;
  }
}
.wheelhouse-workbench[data-theme="dark"]{
  --bg:#0b141c; --surface:#111e29; --surface-2:#172735; --ink:#dbe6ee; --ink-2:#a7b9c8; --ink-3:#7f94a6;
  --rule:#233648; --accent:#5fd4c8; --accent-soft:#16383a; --accent-ink:#06201f;
  --good:#6fcf97; --good-soft:#15322a; --warn:#e8c068; --warn-soft:#3a2f14; --bad:#ff8a78; --bad-soft:#3d1c18;
  --plan:#a99ff0; --plan-soft:#27234a;
  --code-bg:#08111a; --gl-bg:#08111a;
  color-scheme: dark;
}
.wheelhouse-workbench *{box-sizing:border-box}
.wheelhouse-workbench{background:var(--bg); color:var(--ink); font-family:var(--body); font-size:15px; line-height:1.55; padding-inline:16px; padding-block:0 64px}
.wheelhouse-workbench .wrap{max-width:1180px; margin:0 auto}
.wheelhouse-workbench h1,
.wheelhouse-workbench h2,
.wheelhouse-workbench h3{font-family:var(--display); text-wrap:balance; letter-spacing:.005em; margin:0}
.wheelhouse-workbench h1{font-size:clamp(28px,4.6vw,46px); line-height:1.08; font-weight:700}
.wheelhouse-workbench h2{font-size:clamp(22px,2.8vw,30px); line-height:1.15; font-weight:600}
.wheelhouse-workbench h3{font-size:18px; font-weight:600}
.wheelhouse-workbench p{margin:0; max-width:68ch}
.wheelhouse-workbench .eyebrow{font-family:var(--mono); font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--accent)}
.wheelhouse-workbench .lede{font-size:18px; color:var(--ink-2); max-width:62ch}
.wheelhouse-workbench code,
.wheelhouse-workbench .mono{font-family:var(--mono); font-size:.92em}
.wheelhouse-workbench section{padding-block:56px 8px; display:grid; gap:20px}
.wheelhouse-workbench .head{display:grid; gap:10px}
.wheelhouse-workbench header.hero{padding-block:40px 8px; display:grid; gap:18px}
.wheelhouse-workbench .meta{display:flex; flex-wrap:wrap; gap:8px 18px; color:var(--ink-3); font-size:13px}
.wheelhouse-workbench .meta b{color:var(--ink-2); font-weight:500}

/* ---------- editor mockup ---------- */
.wheelhouse-workbench .win{background:var(--code-bg); color:var(--code-ink); border-radius:10px; overflow:hidden; border:1px solid #1f3446; box-shadow:0 18px 50px -24px rgba(8,20,30,.55); font-family:var(--mono); font-size:12.5px}
.wheelhouse-workbench .win-scroll{overflow-x:auto}
.wheelhouse-workbench .win-inner{min-width:860px}
.wheelhouse-workbench .tabs{display:flex; gap:2px; background:#0a141d; padding:6px 8px 0}
.wheelhouse-workbench .tab{padding:7px 12px; border-radius:6px 6px 0 0; color:var(--code-dim); white-space:nowrap}
.wheelhouse-workbench .tab.on{background:var(--code-bg); color:var(--code-ink)}
.wheelhouse-workbench .tab .dot{color:var(--code-num)}
.wheelhouse-workbench .body3{display:grid; grid-template-columns:170px 1fr 220px}
.wheelhouse-workbench .side{border-right:1px solid #1a2c3b; padding:10px 0; color:var(--code-dim)}
.wheelhouse-workbench .side.r{border-right:0; border-left:1px solid #1a2c3b; padding:10px 12px}
.wheelhouse-workbench .side .t{font-size:10.5px; letter-spacing:.08em; padding:0 12px 6px; color:#50667a}
.wheelhouse-workbench .side .it{padding:2px 12px}
.wheelhouse-workbench .side .it.sel{background:#15293a; color:var(--code-ink)}
.wheelhouse-workbench .kv{display:grid; grid-template-columns:auto 1fr; gap:3px 10px; font-size:12px}
.wheelhouse-workbench .kv span:nth-child(odd){color:#50667a}
.wheelhouse-workbench .code{padding:10px 0; position:relative}
.wheelhouse-workbench .ln{display:grid; grid-template-columns:22px 30px 1fr auto; align-items:center; min-height:21px; padding-right:12px}
.wheelhouse-workbench .ln .g{display:flex; justify-content:center}
.wheelhouse-workbench .ln .n{color:#3f5568; text-align:right; padding-right:10px}
.wheelhouse-workbench .ln .inl{color:#56708a; font-size:11.5px; padding-left:18px; white-space:nowrap}
.wheelhouse-workbench .ln .inl b{color:var(--gl-a); font-weight:500}
.wheelhouse-workbench .ln.cur{background:rgba(95,212,200,.08)}
.wheelhouse-workbench .ln.paused{background:rgba(230,192,123,.12)}
.wheelhouse-workbench .heat{position:absolute; left:0; width:3px}
.wheelhouse-workbench .bp{width:9px; height:9px; border-radius:50%; background:var(--gl-c)}
.wheelhouse-workbench .cap{width:9px; height:9px; transform:rotate(45deg); background:var(--gl-a)}
.wheelhouse-workbench .arrow{color:var(--code-ty)}
.wheelhouse-workbench .kw{color:var(--code-kw)} .wheelhouse-workbench .ty{color:var(--code-ty)} .wheelhouse-workbench .st{color:var(--code-str)} .wheelhouse-workbench .nu{color:var(--code-num)} .wheelhouse-workbench .cm{color:var(--code-dim)}
.wheelhouse-workbench .err{text-decoration:underline wavy var(--gl-c); text-underline-offset:3px}
.wheelhouse-workbench .note-u{text-decoration:underline dotted var(--gl-a); text-underline-offset:3px}
.wheelhouse-workbench .card{margin:6px 12px 6px 52px; border:1px solid #3a2621; background:#1a1110; border-radius:8px; padding:9px 12px; font-family:var(--body); font-size:13px; color:#f1d9d4; display:grid; gap:6px}
.wheelhouse-workbench .card .h{display:flex; flex-wrap:wrap; gap:6px 10px; align-items:center}
.wheelhouse-workbench .chip{font-family:var(--mono); font-size:11px; padding:1px 7px; border-radius:99px; border:1px solid currentColor; white-space:nowrap}
.wheelhouse-workbench .card .chip.p{color:#ffb3a6} .wheelhouse-workbench .card .chip.c{color:#e6c07b}
.wheelhouse-workbench .card .fixes{display:flex; flex-wrap:wrap; gap:6px}
.wheelhouse-workbench .btn{font-family:var(--body); font-size:12px; padding:3px 10px; border-radius:6px; border:1px solid #5a3a33; background:#2a1916; color:#ffd8cf; cursor:pointer}
.wheelhouse-workbench .btn.pri{background:#ff6b5a; color:#1b0b08; border-color:#ff6b5a; font-weight:600}
.wheelhouse-workbench .btn:focus-visible,
.wheelhouse-workbench .vt:focus-visible{outline:2px solid var(--accent); outline-offset:2px}
.wheelhouse-workbench .strip{display:flex; gap:8px; padding:8px; border-top:1px solid #1a2c3b; background:#0b1620; overflow-x:auto}
.wheelhouse-workbench .tile{flex:0 0 auto; display:grid; grid-template-columns:62px 1fr; gap:8px; align-items:center; background:#101f2b; border:1px solid #1d3244; border-radius:8px; padding:6px 10px 6px 6px}
.wheelhouse-workbench .tile canvas{width:62px; height:40px; border-radius:5px; background:#06101a; display:block}
.wheelhouse-workbench .tile .s{font-size:11px; color:var(--code-dim); line-height:1.35}
.wheelhouse-workbench .tile .s b{color:var(--code-ink); font-weight:500}
.wheelhouse-workbench .st-run{color:#6fcf97} .wheelhouse-workbench .st-pause{color:var(--code-ty)} .wheelhouse-workbench .st-lab{color:#a99ff0}
.wheelhouse-workbench .panel{border-top:1px solid #1a2c3b}
.wheelhouse-workbench .ptabs{display:flex; gap:14px; padding:7px 12px; color:#50667a; font-size:11.5px; letter-spacing:.04em; overflow-x:auto}
.wheelhouse-workbench .ptabs span.on{color:var(--code-ink); border-bottom:1px solid var(--gl-a)}
.wheelhouse-workbench .prow{display:grid; grid-template-columns:1.4fr .7fr 1fr 1fr; padding:3px 12px; color:var(--code-dim); font-size:12px}
.wheelhouse-workbench .prow.h{color:#50667a; font-size:11px}
.wheelhouse-workbench .prow b{color:var(--code-ink); font-weight:500}
.wheelhouse-workbench .status{display:flex; flex-wrap:wrap; gap:4px 18px; padding:6px 12px; background:#0e4f52; color:#dff5f2; font-size:11.5px}

/* ---------- general blocks ---------- */
.wheelhouse-workbench .grid2{display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:16px}
.wheelhouse-workbench .rules{display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1px; background:var(--rule); border:1px solid var(--rule); border-radius:10px; overflow:hidden}
.wheelhouse-workbench .rule{background:var(--surface); padding:16px; display:grid; gap:6px; align-content:start}
.wheelhouse-workbench .rule .k{font-family:var(--display); font-weight:600; font-size:15px}
.wheelhouse-workbench .rule p{color:var(--ink-2); font-size:14px}
.wheelhouse-workbench .tbl{overflow-x:auto; border:1px solid var(--rule); border-radius:10px; background:var(--surface)}
.wheelhouse-workbench table{border-collapse:collapse; width:100%; font-size:14px}
.wheelhouse-workbench th,
.wheelhouse-workbench td{text-align:left; padding:10px 14px; border-bottom:1px solid var(--rule); vertical-align:top}
.wheelhouse-workbench th{font-family:var(--mono); font-size:11.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-3); font-weight:500; background:var(--surface-2)}
.wheelhouse-workbench tr:last-child td{border-bottom:0}
.wheelhouse-workbench td .mono{white-space:nowrap}
.wheelhouse-workbench .pill{display:inline-block; font-family:var(--mono); font-size:11px; padding:2px 8px; border-radius:99px; white-space:nowrap; font-weight:500}
.wheelhouse-workbench .pill.landed{background:var(--good-soft); color:var(--good)}
.wheelhouse-workbench .pill.owed{background:var(--warn-soft); color:var(--warn)}
.wheelhouse-workbench .pill.decide{background:var(--plan-soft); color:var(--plan)}
.wheelhouse-workbench .pill.word{background:var(--accent-soft); color:var(--accent)}

/* ---------- stage ---------- */
.wheelhouse-workbench .stage{display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:16px; align-items:stretch}
.wheelhouse-workbench .glbox{position:relative; background:var(--gl-bg); border-radius:12px; overflow:hidden; min-height:420px; border:1px solid var(--rule)}
.wheelhouse-workbench #gl{position:absolute; inset:0; width:100%; height:100%; display:block; touch-action:none; cursor:grab}
.wheelhouse-workbench .glhud{position:absolute; left:12px; top:12px; right:12px; display:flex; justify-content:space-between; gap:8px; pointer-events:none; flex-wrap:wrap}
.wheelhouse-workbench .vtabs{display:flex; gap:4px; background:rgba(8,17,26,.72); border:1px solid #1f3446; padding:4px; border-radius:9px; pointer-events:auto; flex-wrap:wrap}
.wheelhouse-workbench .vt{font-family:var(--body); font-size:13px; color:#a7b9c8; background:transparent; border:0; padding:5px 10px; border-radius:6px; cursor:pointer}
.wheelhouse-workbench .vt[aria-selected="true"]{background:#1d3446; color:#e8f3f8}
.wheelhouse-workbench .glcap{position:absolute; left:12px; bottom:12px; right:12px; color:#9fb4c6; font-size:12.5px; line-height:1.45; background:rgba(8,17,26,.72); border:1px solid #1f3446; border-radius:8px; padding:8px 10px; pointer-events:none}
.wheelhouse-workbench .glcap b{color:#e8f3f8; font-weight:600}
.wheelhouse-workbench .proj{display:grid; grid-template-rows:auto 1fr; gap:10px; min-width:0}
.wheelhouse-workbench .proj .tbl{max-height:420px; overflow:auto}
.wheelhouse-workbench .proj table{font-size:13px}
.wheelhouse-workbench .proj td,
.wheelhouse-workbench .proj th{padding:7px 10px}
.wheelhouse-workbench .bar{height:6px; border-radius:3px; background:var(--accent); display:block}
.wheelhouse-workbench .bar.hot{background:var(--bad)}
.wheelhouse-workbench .legend{display:flex; flex-wrap:wrap; gap:6px 14px; font-size:12.5px; color:var(--ink-3)}
.wheelhouse-workbench .sw{display:inline-block; width:10px; height:10px; border-radius:2px; margin-right:6px; vertical-align:-1px}

/* ---------- cost chart ---------- */
.wheelhouse-workbench .chart{background:var(--surface); border:1px solid var(--rule); border-radius:10px; padding:16px; display:grid; gap:12px}
.wheelhouse-workbench .crow{display:grid; grid-template-columns:150px 1fr 110px; gap:10px; align-items:center; font-size:13px}
.wheelhouse-workbench .crow .fn{font-family:var(--mono); font-size:12.5px; color:var(--ink-2); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.wheelhouse-workbench .pair{display:grid; gap:3px}
.wheelhouse-workbench .b1,
.wheelhouse-workbench .b2{height:9px; border-radius:2px}
.wheelhouse-workbench .b1{background:var(--ink-3); opacity:.55}
.wheelhouse-workbench .b2{background:var(--accent)}
.wheelhouse-workbench .b2.up{background:var(--bad)}
.wheelhouse-workbench .delta{font-family:var(--mono); font-size:12.5px; text-align:right; font-variant-numeric:tabular-nums}
.wheelhouse-workbench .delta.up{color:var(--bad)} .wheelhouse-workbench .delta.dn{color:var(--good)}
.wheelhouse-workbench .small{font-size:12.5px; color:var(--ink-3)}

/* ---------- asset previews ---------- */
.wheelhouse-workbench .asset-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px}
.wheelhouse-workbench .asset-card{background:var(--surface); border:1px solid var(--rule); border-radius:10px; overflow:hidden; display:grid; grid-template-rows:92px auto}
.wheelhouse-workbench .asset-card .meta-a{padding:9px 11px; display:grid; gap:2px; min-width:0}
.wheelhouse-workbench .asset-card .meta-a b{font-family:var(--mono); font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.wheelhouse-workbench .asset-card .meta-a span{font-size:11.5px; color:var(--ink-3)}
.wheelhouse-workbench .asset-prev{display:grid; place-items:center; position:relative; width:100%; min-width:78px; height:92px; overflow:hidden; color:#e8f3f8; background:#142534; border:1px solid #294257}
.wheelhouse-workbench td .asset-prev{width:86px; height:50px; border-radius:6px}
.wheelhouse-workbench .asset-prev .pvmark{font-family:var(--display); font-weight:700; letter-spacing:.03em; z-index:1; text-shadow:0 1px 8px rgba(0,0,0,.45)}
.wheelhouse-workbench .asset-prev .lv{position:absolute; right:5px; bottom:4px; z-index:2; font-family:var(--mono); font-size:9px; background:rgba(5,14,22,.78); border-radius:99px; padding:1px 5px}
.wheelhouse-workbench .asset-prev .why{position:absolute; left:5px; bottom:4px; z-index:2; font-family:var(--mono); font-size:8.5px; color:#c4d2dc; background:rgba(5,14,22,.82); border-radius:3px; padding:1px 4px; max-width:calc(100% - 10px); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.wheelhouse-workbench .asset-prev.placeholder{border-style:dashed; background-color:#101d28; filter:saturate(.45)}
.wheelhouse-workbench .asset-prev.placeholder::after{content:""; position:absolute; inset:7px; border:1px dashed rgba(196,210,220,.42); border-radius:5px}
.wheelhouse-workbench .p-image{background:linear-gradient(145deg,#0d4150 0 34%,#db8f5b 35% 58%,#d9c87b 59% 72%,#214b63 73%)}
.wheelhouse-workbench .p-texture{background-color:#183444; background-image:linear-gradient(45deg,#416a72 25%,transparent 25%),linear-gradient(-45deg,#416a72 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#243c54 75%),linear-gradient(-45deg,transparent 75%,#243c54 75%); background-size:18px 18px; background-position:0 0,0 9px,9px -9px,-9px 0}
.wheelhouse-workbench .p-mesh{background:repeating-linear-gradient(30deg,transparent 0 13px,rgba(95,212,200,.22) 14px 15px),repeating-linear-gradient(-30deg,#112531 0 16px,rgba(138,164,186,.24) 17px 18px)}
.wheelhouse-workbench .p-audio{background:linear-gradient(180deg,#102534,#172c3c)}
.wheelhouse-workbench .p-audio::before{content:""; position:absolute; inset:24% 8%; background:repeating-linear-gradient(90deg,#5fd4c8 0 2px,transparent 2px 6px); clip-path:polygon(0 46%,5% 35%,10% 62%,15% 18%,20% 75%,25% 43%,30% 54%,35% 28%,40% 66%,45% 8%,50% 83%,55% 35%,60% 58%,65% 21%,70% 70%,75% 40%,80% 55%,85% 30%,90% 66%,95% 42%,100% 51%,100% 56%,0 56%)}
.wheelhouse-workbench .p-font{background:linear-gradient(145deg,#21394c,#0d1822)}
.wheelhouse-workbench .p-font .pvmark{font-family:Georgia,serif; font-size:34px; letter-spacing:-.09em}
.wheelhouse-workbench .p-heightfield{background:radial-gradient(ellipse at 30% 72%,transparent 0 12%,#5b8278 13% 14%,transparent 15% 25%,#42675f 26% 27%,transparent 28% 39%,#304f4b 40% 41%,transparent 42%),linear-gradient(155deg,#3e665d,#132736 62%)}
.wheelhouse-workbench .p-palette{background:linear-gradient(90deg,#d86656 0 20%,#e1bd68 20% 40%,#61aa84 40% 60%,#4d8fb2 60% 80%,#786bb0 80%)}
.wheelhouse-workbench .p-rigclip{background:linear-gradient(160deg,#142a38,#1f3849)}
.wheelhouse-workbench .p-rigclip .pvmark{font-size:24px}
.wheelhouse-workbench .p-video{background:repeating-linear-gradient(90deg,#0a141d 0 7px,#365469 8px 24px,#0a141d 25px 31px)}
.wheelhouse-workbench .p-time{background:linear-gradient(180deg,#172c3c,#0e1b27)}
.wheelhouse-workbench .p-time::before{content:""; position:absolute; left:10%; right:10%; top:49%; height:2px; background:#e6c07b; box-shadow:18px -12px 0 -0.5px #5fd4c8,44px 10px 0 -0.5px #ff8a78,70px -7px 0 -0.5px #a99ff0}

/* ---------- lab ---------- */
.wheelhouse-workbench pre.draft{background:var(--code-bg); color:var(--code-ink); border-radius:10px; padding:14px 16px; overflow-x:auto; font-family:var(--mono); font-size:12.5px; line-height:1.55; margin:0}
.wheelhouse-workbench .mech{display:grid; gap:10px}
.wheelhouse-workbench .mrow{display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:start; background:var(--surface); border:1px solid var(--rule); border-radius:10px; padding:12px 14px}
.wheelhouse-workbench .mrow p{font-size:14px; color:var(--ink-2)}
.wheelhouse-workbench .mrow b{font-family:var(--display); font-weight:600; color:var(--ink)}

/* ---------- inspector ---------- */
.wheelhouse-workbench .insp{display:grid; grid-template-columns:minmax(0,220px) minmax(0,1fr); background:var(--code-bg); color:var(--code-ink); border-radius:10px; overflow:hidden; border:1px solid #1f3446; font-family:var(--mono); font-size:12.5px}
.wheelhouse-workbench .insp .subj{border-right:1px solid #1a2c3b; padding:10px 0}
.wheelhouse-workbench .insp .subj div{padding:4px 14px; color:var(--code-dim); display:flex; justify-content:space-between; gap:8px}
.wheelhouse-workbench .insp .subj div.on{background:#15293a; color:var(--code-ink)}
.wheelhouse-workbench .insp .subj small{font-size:10.5px; color:#50667a}
.wheelhouse-workbench .insp .subj small.u{color:#e6c07b}
.wheelhouse-workbench .insp .obj{padding:12px 14px; display:grid; gap:8px; min-width:0}
.wheelhouse-workbench .insp .crumb{color:#56708a; font-size:11.5px; overflow-wrap:anywhere}
.wheelhouse-workbench .insp .crumb b{color:var(--code-ink); font-weight:500}
.wheelhouse-workbench .insp .row{display:grid; grid-template-columns:minmax(0,140px) minmax(0,150px) minmax(0,1fr); gap:10px; padding:3px 0; border-bottom:1px solid #13212e}
.wheelhouse-workbench .insp .row span:nth-child(1){color:var(--code-ink)}
.wheelhouse-workbench .insp .row span:nth-child(2){color:var(--code-ty)}
.wheelhouse-workbench .insp .row span:nth-child(3){color:var(--code-str); overflow-wrap:anywhere}
.wheelhouse-workbench .insp .row .red{color:#8aa4ba; font-style:italic}
.wheelhouse-workbench .insp .row .lnk{color:var(--gl-a); text-decoration:underline; text-underline-offset:2px}
.wheelhouse-workbench .insp .row .chg{color:#ff8a78}
.wheelhouse-workbench .insp .foot{color:#56708a; font-size:11.5px}
@media (max-width:720px){ .wheelhouse-workbench .insp{grid-template-columns:1fr} .wheelhouse-workbench .insp .subj{border-right:0; border-bottom:1px solid #1a2c3b} .wheelhouse-workbench .insp .row{grid-template-columns:1fr 1fr} .wheelhouse-workbench .insp .row span:nth-child(3){grid-column:1 / -1} }
.wheelhouse-workbench .relmap{display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:12px; align-items:stretch; background:var(--code-bg); color:var(--code-ink); border:1px solid #1f3446; border-radius:10px; padding:14px; font-family:var(--mono); font-size:12px}
.wheelhouse-workbench .relbox{border:1px solid #294257; border-radius:8px; padding:11px 12px; display:grid; gap:7px; align-content:start; min-width:0}
.wheelhouse-workbench .relbox.derived{border-style:dashed; background:rgba(95,212,200,.045)}
.wheelhouse-workbench .relt{display:flex; justify-content:space-between; gap:8px; align-items:center; color:#8aa4ba; font-size:10.5px; letter-spacing:.05em; text-transform:uppercase}
.wheelhouse-workbench .relname{color:var(--code-ink); font-size:13px; overflow-wrap:anywhere}
.wheelhouse-workbench .relname b{color:var(--gl-a); font-weight:500}
.wheelhouse-workbench .reldetail{color:var(--code-dim); line-height:1.45}
.wheelhouse-workbench .relflow{display:grid; place-items:center; color:var(--code-ty); text-align:center; min-width:92px}
.wheelhouse-workbench .relflow b{font-size:20px; line-height:1}
.wheelhouse-workbench .relcost{grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:#1a2c3b; border:1px solid #1a2c3b; border-radius:7px; overflow:hidden}
.wheelhouse-workbench .relcost span{background:#101f2b; padding:7px 9px; color:var(--code-dim)}
.wheelhouse-workbench .relcost b{display:block; color:var(--code-ink); font-weight:500; margin-bottom:2px}
@media (max-width:720px){ .wheelhouse-workbench .relmap{grid-template-columns:1fr} .wheelhouse-workbench .relflow{min-height:46px} .wheelhouse-workbench .relflow b{transform:rotate(90deg)} .wheelhouse-workbench .relcost{grid-column:1; grid-template-columns:1fr 1fr} }

/* ---------- decisions ---------- */
.wheelhouse-workbench .dec{display:grid; gap:10px; counter-reset:d}
.wheelhouse-workbench .dec li{list-style:none; background:var(--surface); border:1px solid var(--rule); border-radius:10px; padding:14px 16px 14px 52px; position:relative; counter-increment:d}
.wheelhouse-workbench .dec li::before{content:counter(d); position:absolute; left:16px; top:13px; width:24px; height:24px; border-radius:50%; background:var(--accent-soft); color:var(--accent); font-family:var(--display); font-weight:700; display:grid; place-items:center; font-size:13px}
.wheelhouse-workbench .dec b{font-family:var(--display); font-weight:600}
.wheelhouse-workbench .dec p{color:var(--ink-2); font-size:14px; margin-top:4px}
.wheelhouse-workbench .bibh{font-family:var(--display); font-weight:600; font-size:17px; color:var(--ink); margin:22px 0 10px}
.wheelhouse-workbench .bib{border-top:1px solid var(--rule)}
.wheelhouse-workbench .bib .entry{display:grid; grid-template-columns:minmax(150px,210px) 1fr; gap:6px 18px; padding:12px 0; border-bottom:1px solid var(--rule)}
.wheelhouse-workbench .bib .src b{display:block; font-family:var(--display); font-weight:600; color:var(--ink)}
.wheelhouse-workbench .bib .src span{font-family:var(--mono); font-size:11.5px; letter-spacing:.04em; color:var(--ink-3)}
.wheelhouse-workbench .bib ul{list-style:none; margin:0; padding:0; display:grid; gap:6px}
.wheelhouse-workbench .bib li{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:14px; font-size:14px}
.wheelhouse-workbench .bib .idea{color:var(--ink)}
.wheelhouse-workbench .bib .form{color:var(--ink-2)}
.wheelhouse-workbench .bib .form::before{content:"\2192\00a0"; color:var(--accent)}
@media (max-width:720px){ .wheelhouse-workbench .bib .entry{grid-template-columns:1fr} .wheelhouse-workbench .bib li{grid-template-columns:1fr; gap:2px} }
.wheelhouse-workbench ul.plain{margin:0; padding-left:18px; color:var(--ink-2); display:grid; gap:4px; max-width:70ch}

@media (max-width:860px){
  .wheelhouse-workbench .stage{grid-template-columns:1fr}
  .wheelhouse-workbench .glbox{min-height:360px}
  .wheelhouse-workbench .crow{grid-template-columns:110px 1fr 84px}
}
@media (prefers-reduced-motion: reduce){ .wheelhouse-workbench *{scroll-behavior:auto!important} }
