:root{--bg:#0b0f17;--bg-raised:#111827;--bg-card:#0f1520;--border:#1f2937;--border-bright:#334155;--text:#e5e7eb;--text-dim:#94a3b8;--text-faint:#64748b;--shipped:#4ade80;--shipped-dim:#4ade801f;--shipped-glow:#4ade8059;--planned:#475569;--accent:#38bdf8;--accent-dim:#38bdf81f;--amber:#fbbf24}*{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(1200px 500px at 50% -10%,#38bdf814,#0000 60%),radial-gradient(900px 400px at 85% 110%,#4ade800d,#0000 60%);position:fixed;inset:0}.shell{z-index:1;max-width:1440px;margin:0 auto;padding:40px 24px 80px;position:relative}.header{text-align:center;margin-bottom:28px}.wordmark{letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);align-items:center;gap:12px;font-size:15px;font-weight:600;display:inline-flex}.wordmark svg{flex:none}.title{letter-spacing:-.02em;margin-top:18px;font-size:clamp(28px,4.5vw,44px);font-weight:750;line-height:1.12}.title em{color:var(--shipped);font-style:normal}.subtitle{max-width:640px;color:var(--text-dim);margin:14px auto 0;font-size:16px}.stats{color:var(--text-faint);flex-wrap:wrap;justify-content:center;gap:28px;margin-top:22px;font-size:13px;display:flex}.stats b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:650}.controls{z-index:20;background:linear-gradient(var(--bg) 82%, transparent);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-bottom:26px;padding:14px 0;display:flex;position:sticky;top:0}.tabs{background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.tab{appearance:none;color:var(--text-dim);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:550}.tab:hover{color:var(--text)}.tab.active{background:var(--accent-dim);color:var(--accent)}.legend{color:var(--text-faint);align-items:center;gap:16px;padding:0 8px;font-size:12px;display:inline-flex}.legend .dot{vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.dot.shipped{background:var(--shipped);box-shadow:0 0 8px var(--shipped-glow)}.dot.planned{border:1.5px solid var(--planned);background:0 0}.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.dept{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;padding:20px;display:flex}.dept-head{align-items:baseline;gap:10px;display:flex}.dept-num{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.dept-name{letter-spacing:-.01em;font-size:17px;font-weight:700}.dept-count{color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:12px}.dept-count b{color:var(--shipped)}.dept-promise{color:var(--text-dim);font-size:13px;line-height:1.5}.meter{background:var(--border);border-radius:2px;height:4px;overflow:hidden}.meter>span{background:var(--shipped);height:100%;box-shadow:0 0 8px var(--shipped-glow);border-radius:2px;display:block}.wave-block{flex-direction:column;gap:8px;display:flex}.wave-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:700}.nodes{flex-wrap:wrap;gap:8px;display:flex}.node{appearance:none;font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--bg-raised);color:var(--text-dim);text-align:left;border-radius:10px;align-items:center;gap:8px;padding:7px 12px;font-size:13px;font-weight:550;transition:border-color .12s,color .12s,box-shadow .12s,transform .12s;display:inline-flex}.node:hover{border-color:var(--border-bright);color:var(--text);transform:translateY(-1px)}.node .dot{border-radius:50%;flex:none;width:7px;height:7px}.node.shipped{background:var(--shipped-dim);color:var(--text);border-color:#4ade8059}.node.shipped:hover{box-shadow:0 0 14px var(--shipped-glow);border-color:var(--shipped)}.node.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.vmark{background:var(--amber);border-radius:50%;flex:none;width:5px;height:5px}.overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;background:#03060c8c;position:fixed;inset:0}.panel{background:var(--bg-raised);border-left:1px solid var(--border);z-index:50;flex-direction:column;gap:18px;width:min(440px,100vw);padding:28px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.panel-close{appearance:none;border:1px solid var(--border);background:var(--bg-card);color:var(--text-dim);cursor:pointer;border-radius:8px;width:32px;height:32px;font-size:16px;line-height:1;position:absolute;top:16px;right:16px}.panel-close:hover{color:var(--text);border-color:var(--border-bright)}.panel-dept{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:700}.panel-title{letter-spacing:-.01em;margin-top:4px;font-size:24px;font-weight:750;line-height:1.2}.badges{flex-wrap:wrap;gap:8px;display:flex}.badge{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:650}.badge.shipped{color:var(--shipped);background:var(--shipped-dim);border-color:#4ade8066}.badge.planned{color:var(--text-faint)}.panel-desc{color:var(--text);font-size:14.5px;line-height:1.6}.panel-section h4{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px;font-size:11px;font-weight:700}.panel-section p,.panel-section li{color:var(--text-dim);font-size:13.5px;line-height:1.55}.panel-section ul{flex-direction:column;gap:8px;list-style:none;display:flex}.vnote b{color:var(--text);font-weight:650}.linklist{flex-wrap:wrap;gap:8px;display:flex}.joblink{appearance:none;font:inherit;border:1px solid var(--border);background:var(--bg-card);color:var(--accent);cursor:pointer;border-radius:8px;padding:5px 11px;font-size:12.5px;font-weight:550}.joblink:hover{border-color:var(--accent)}.skillfile{color:var(--shipped);background:var(--shipped-dim);border:1px solid #4ade8040;border-radius:8px;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;display:inline-block}.footer{text-align:center;color:var(--text-faint);margin-top:56px;font-size:13px}.footer a{color:var(--text-dim);border-bottom:1px solid var(--border-bright);text-decoration:none}.footer a:hover{color:var(--text)}@media (max-width:640px){.shell{padding:28px 14px 60px}.panel{width:100vw}.legend{display:none}}
