:root{--bg:#0f1013;--panel:#17181c;--panel2:#1e1f24;--line:#2a2b31;--line2:#34353b;--text:#eceae4;--muted:#a3a3aa;--dim:#8b8c93;--amber:#f2a93b;--blue:#7ab8ff;--violet:#c4b5fd;--coral:#ff8a65}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.5 IBM Plex Sans,system-ui,sans-serif}a{color:var(--blue)}a:hover{color:#a9d1ff}h1,h2,h3,p{margin:0}.mono{font-family:IBM Plex Mono,ui-monospace,monospace}.muted{color:var(--muted)}.label{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:400}.top{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 24px;display:flex}.brand{letter-spacing:.28em;color:var(--text);align-items:center;min-height:44px;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:600;text-decoration:none;display:flex}.goal{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex:420px;align-items:center;gap:10px;padding:0 12px;display:flex}.goal input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;min-height:42px}.shell{flex-wrap:wrap;min-height:calc(100vh - 69px);display:flex}.rail{border-right:1px solid var(--line);flex-direction:column;flex:200px;gap:2px;padding:20px 12px;display:flex}.rail a{min-height:40px;color:var(--muted);border-radius:6px;justify-content:space-between;align-items:center;padding:0 12px;text-decoration:none;display:flex}.rail a:hover{background:var(--panel);color:var(--text)}.rail a.on{background:var(--panel2);color:var(--text);font-weight:500}.count{color:var(--amber);font-family:IBM Plex Mono,monospace;font-size:12px}.content{flex:999 560px;min-width:0;max-width:1240px;padding:28px 32px 56px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0;padding:20px}.grid2{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:20px;display:grid}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.between{justify-content:space-between}.head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.head h1{font-size:28px;font-weight:600}.chip{border:1px solid var(--line2);color:var(--muted);white-space:nowrap;text-transform:uppercase;border-radius:4px;align-items:center;gap:6px;padding:5px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1;text-decoration:none;display:inline-flex}.chip.verified,.chip.active,.chip.ver{color:var(--blue);border-color:#2c4766}.chip.stated{color:#9bd0c0;border-color:#2d4a43}.chip.att,.chip.proposed{color:var(--amber);border-color:#5a4220}.chip.inferred,.chip.wait{color:var(--violet);border-color:#433a66}.chip.conflicted,.chip.conf{color:var(--coral);border-color:#66352a}.btn{min-height:44px;font:inherit;cursor:pointer;border:1px solid var(--line2);background:var(--panel2);color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{color:var(--text);background:#26272d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.pri{background:var(--amber);border-color:var(--amber);color:#17130a}.btn.pri:hover{background:#f6bc62}.btn.sm{min-height:36px;padding:0 12px;font-size:13px}.item{border-top:1px solid var(--line);color:var(--text);align-items:flex-start;gap:14px;padding:12px 0;text-decoration:none;display:flex}.tile{background:var(--panel2);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:6px;min-width:0;padding:14px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field input,.field select,.field textarea{background:var(--panel2);border:1px solid var(--line2);color:var(--text);font:inherit;border-radius:8px;min-height:44px;padding:8px 12px}.field textarea{resize:vertical;min-height:80px}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}dl.kv{grid-template-columns:minmax(120px,200px) minmax(0,1fr);gap:10px 16px;margin:0;font-family:IBM Plex Mono,monospace;font-size:13px;display:grid}dl.kv dt{color:var(--muted)}dl.kv dd{overflow-wrap:anywhere;margin:0}.bar{background:#26272d;border-radius:4px;height:8px;overflow:hidden}.bar>div{background:var(--blue);height:100%}.ladder{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.ladder li{background:var(--panel2);border:1px dashed var(--line2);border-radius:8px;flex-direction:column;gap:6px;padding:14px;display:flex}.ladder li.done{border:1px solid #2c4766}.ladder li.now{border:2px solid var(--blue);background:#1f2a38;padding:13px}.timeline{margin:0;padding:0;list-style:none}.timeline li{gap:16px;display:flex}.timeline .rail2{flex-direction:column;flex:none;align-items:center;width:14px;display:flex}.timeline .dot{background:var(--blue);border-radius:5px;width:10px;height:10px;margin-top:6px}.timeline .line{background:var(--line);flex:1;width:2px}.timeline .body{flex-direction:column;gap:2px;min-width:0;padding-bottom:18px;display:flex}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;border-top:1px solid var(--line);padding:10px 12px;font-weight:500}td{border-top:1px solid var(--line);vertical-align:top;padding:12px}.scroll{overflow-x:auto}.quote{border-left:2px solid var(--line2);color:var(--muted);overflow-wrap:anywhere;padding-left:12px;font-style:italic}.error{color:var(--coral)}.empty{text-align:center;color:var(--muted);padding:28px}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login .card{flex-direction:column;gap:18px;width:min(100%,420px);padding:32px;display:flex}.drop{border:1px dashed var(--line2);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:10px;padding:28px;display:flex}.drop.over{border-color:var(--amber);background:#1e1a12}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=800px){.top{gap:10px;padding:12px 16px}.shell{flex-direction:column}.rail{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;flex:none;padding:8px;overflow-x:auto}.rail a{flex:none}.content{padding:20px 16px 48px}.head h1{font-size:24px}.login .card{padding:24px}}
