@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Silkscreen:wght@400;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";
:root{--ground-0:#f4fbf7;--ground-1:#e3efe6;--glass:#ffffff9e;--glass-strong:#ffffffc7;--glass-edge:#ffffffe6;--ink:#2e5f5a;--sage:#5e8b85;--faint:#93b3ac;--lagoon:#4a9e94;--lagoon-soft:#4a9e9421;--gain:#5fa050;--loss:#d97b5f;--loss-soft:#d97b5f24;--shadow:0 8px 28px -10px #4a9e944d;--mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html{background:var(--ground-1)}body{color:var(--ink);background:linear-gradient(180deg, var(--ground-0), var(--ground-1) 60%);min-height:100vh;margin:0;font-family:Manrope,sans-serif;font-size:14px}a{color:var(--lagoon);text-decoration:none}a:hover{color:var(--ink)}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--lagoon);outline-offset:2px}.shell{min-height:100vh;display:flex}.rail{border-right:1px solid var(--glass-edge);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;flex-shrink:0;width:220px;padding:20px 16px;display:flex}.wordmark{color:var(--ink);letter-spacing:.02em;font-family:Silkscreen,monospace;font-size:15px}.wordmark small{color:var(--sage);letter-spacing:.02em;margin-top:6px;font-family:Manrope,sans-serif;font-size:11px;font-weight:500;display:block}.rail nav{gap:3px;margin-top:28px;display:grid}.rail nav a{color:var(--sage);border-radius:9px;padding:8px 11px;font-size:13px;font-weight:600}.rail nav a:hover{background:var(--glass-strong);color:var(--ink)}.rail nav a.active{background:var(--glass-strong);color:var(--ink);box-shadow:var(--shadow)}.rail nav a.active:before{content:"▸ ";color:var(--lagoon)}.rail-foot{color:var(--faint);font-family:var(--mono);margin-top:auto;font-size:11px;line-height:1.7}.rail-foot .vocab{color:var(--lagoon);opacity:.6;margin-top:10px}.signout{margin-top:14px}.signout button{border:1px solid var(--glass-edge);color:var(--sage);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:5px 10px;font-size:11px}.signout button:hover{color:var(--ink);border-color:var(--lagoon)}.main{flex:1;min-width:0;padding:24px 28px 44px}.main h1{letter-spacing:-.01em;margin:0 0 4px;font-size:19px;font-weight:800}.main .sub{color:var(--sage);margin:0 0 20px;font-size:13px}.statusbar{border:1px solid var(--glass-edge);background:var(--glass);box-shadow:var(--shadow);border-radius:13px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;padding:10px 12px;display:flex}.statusbar .spacer{flex:1}.chip{background:var(--glass-strong);color:var(--sage);font-family:var(--mono);border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;display:inline-flex}.chip b{color:var(--ink);font-weight:600}.chip .dot{background:var(--faint);border-radius:50%;width:8px;height:8px}.dot.ok,.dot.warn{background:var(--lagoon)}.dot.danger{background:var(--loss)}.tiles{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px;display:grid}@media (max-width:980px){.tiles{grid-template-columns:1fr 1fr}}.tile{border:1px solid var(--glass-edge);background:var(--glass);box-shadow:var(--shadow);border-radius:13px;gap:3px;padding:12px 15px;display:grid}.tile-label{color:var(--sage);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.tile-value{color:var(--ink);font-family:var(--mono);font-size:19px;font-weight:600}.tile-sub{color:var(--faint);font-family:var(--mono);font-size:11px}.grid{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}@media (max-width:980px){.grid{grid-template-columns:1fr}}.stack{gap:14px;display:grid}.panel{border:1px solid var(--glass-edge);background:var(--glass);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px}.panel-head{border-bottom:1px solid var(--glass-edge);color:var(--sage);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:8px;padding:11px 15px;font-size:11px;font-weight:700;display:flex}.panel-head .count{color:var(--faint);font-family:var(--mono);letter-spacing:0;text-transform:none;margin-left:auto;font-weight:400}.panel-body{padding:13px 15px}.panel-body.tight{padding:0}.empty{color:var(--faint);text-align:center;padding:24px 15px;font-size:13px}.row{border-bottom:1px solid var(--glass-edge);align-items:center;gap:10px;padding:11px 15px;display:flex}.row:last-child{border-bottom:0}.row .grow{flex:1;min-width:0}.row .meta{color:var(--sage);font-family:var(--mono);font-size:11px}.status{font-family:var(--mono);border-radius:999px;padding:2px 9px;font-size:11px}.status.completed{color:var(--ink);background:var(--glass-strong)}.status.awaiting_approval,.status.open{color:var(--lagoon);background:var(--lagoon-soft)}.status.simulated{color:var(--sage);background:var(--glass-strong)}.status.blocked,.status.failed,.status.declined{color:var(--loss);background:var(--loss-soft)}.btn{border:1px solid var(--glass-edge);color:var(--ink);background:var(--glass-strong);border-radius:9px;padding:6px 14px;font-size:12px;font-weight:700}.btn:hover{border-color:var(--lagoon)}.btn.primary{border-color:var(--lagoon);color:#fff;background:var(--lagoon)}.btn.danger{border-color:var(--loss);color:var(--loss);background:0 0}.btn:disabled{opacity:.45;cursor:default}table.data{border-collapse:collapse;width:100%;font-size:13px}table.data th{border-bottom:1px solid var(--glass-edge);color:var(--sage);letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:8px 15px;font-size:11px;font-weight:700}table.data td{border-bottom:1px solid var(--glass-edge);color:var(--ink);padding:8px 15px}table.data tr:last-child td{border-bottom:0}table.data td.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}table.data th.num{text-align:right}.stages{margin:6px 0 0;padding:0;list-style:none}.stages li{color:var(--sage);font-family:var(--mono);gap:8px;padding:2px 0;font-size:12px;display:flex}.stages .stage{width:88px;color:var(--faint);flex-shrink:0}.ladder{gap:6px;display:grid}.ladder .lvl{border:1px solid var(--glass-edge);background:var(--glass-strong);color:var(--sage);border-radius:10px;align-items:center;gap:10px;padding:8px 13px;font-size:13px;display:flex}.ladder .lvl.current{border-color:var(--lagoon);color:var(--ink);background:var(--lagoon-soft)}.ladder .lvl.ceiling{border-style:dashed}.ladder .n{width:18px;color:var(--faint);font-family:var(--mono)}button.lvl{text-align:left;width:100%;font:inherit}button.lvl:disabled{opacity:.4;cursor:default}.kv{grid-template-columns:max-content 1fr;gap:6px;font-size:13px;display:grid}.kv dt{color:var(--sage);padding-right:18px}.kv dd{color:var(--ink);margin:0}code.hash{color:var(--faint);font-family:var(--mono);font-size:11px}.form{gap:12px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.field{color:var(--sage);gap:4px;font-size:12px;font-weight:600;display:grid}.field input[type=text],.field input[type=number],.field select,.field textarea{border:1px solid var(--glass-edge);color:var(--ink);font:inherit;background:#ffffffd9;border-radius:9px;padding:7px 11px;font-size:13px;font-weight:500}.checks{color:var(--ink);flex-wrap:wrap;gap:12px;font-size:12px;font-weight:500;display:flex}.checks label{align-items:center;gap:6px;display:flex}input[type=checkbox]{accent-color:var(--lagoon)}.notice{font-family:var(--mono);border-radius:9px;padding:8px 12px;font-size:12px}.notice.ok{color:var(--ink);background:var(--lagoon-soft)}.notice.err{color:var(--loss);background:var(--loss-soft)}
