:root{color-scheme:dark;--ink:#eaf2fc;--muted:#94a9c2;--bg:#0b1422;--panel:#142238;--panel2:#1b2c44;--line:#344b67;--blue:#83c0fc;--green:#73dcb2;--amber:#eabb64;--purple:#b6a0f2;--coral:#fa9485;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(1100px 500px at 50% -100px,#203f63,transparent 70%),var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:2px}[hidden]{display:none!important}
.shell{max-width:1640px;margin:auto;padding:28px 25px 60px}.topline{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:25px}.eyebrow{font-weight:750;letter-spacing:.19em;color:var(--blue);font-size:10px}.topline h1{font-size:clamp(24px,3vw,38px);letter-spacing:-.035em;margin:7px 0 8px}.version{font-size:13px;font-weight:500;color:var(--muted)}.muted{color:var(--muted);line-height:1.5;margin:3px 0}.top-actions{display:flex;align-items:center;gap:9px}.connection{font-size:11px;color:var(--green)}.btn{min-height:35px;border:1px solid #4b6280;background:#1c3049;border-radius:9px;color:var(--ink);padding:7px 12px;font-size:12px}.btn:hover{background:#29415f}.btn.primary{background:#296e5a;border-color:#52aa84;color:#fff}.btn.primary:hover{background:#368368}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat{border:1px solid var(--line);border-radius:12px;background:linear-gradient(150deg,#1c3049,#152339);padding:16px}.stat strong{font-size:clamp(20px,2.5vw,31px);display:block;line-height:1.15;font-variant-numeric:tabular-nums}.stat span{color:var(--muted);display:block;font-size:11px;margin-top:6px}.progress{height:8px;border-radius:20px;background:#2b3c54;overflow:hidden;margin:13px 0 18px}.progress>div{width:0%;height:100%;background:linear-gradient(90deg,#379b7a,#71e2b1);transition:width .15s}
.bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:13px}.filters{display:flex;flex-wrap:wrap;gap:7px}.pill{border:1px solid #48617f;border-radius:99px;background:transparent;color:#b5c5d7;font-size:12px;padding:7px 13px}.pill.active{background:#285079;border-color:#80b8ed;color:#fff}.bar input{border:1px solid var(--line);border-radius:9px;background:#132239;color:var(--ink);height:36px;padding:8px 11px;flex:1;min-width:180px;max-width:290px}.tools{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 15px;margin-bottom:13px}.buttons,.legend{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.legend{color:var(--muted);font-size:11px;gap:7px 13px}.legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px;background:#8495a9}.legend i.decision{background:var(--amber)}.legend i.test{background:var(--purple)}.legend i.owner{background:var(--coral)}.legend i.done{background:var(--green)}.graph-viewport{max-height:calc(100vh - 345px);min-height:340px;overflow:auto;padding:17px;border:1px solid var(--line);border-radius:13px;background:#0e1a2b}.graph{min-width:930px}.division{display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px;align-items:center;position:relative;margin-bottom:23px}.division::before{position:absolute;left:180px;top:50%;width:28px;height:2px;background:#49617c;content:''}.division-node{border:1px solid #4a76a0;border-radius:9px;padding:17px 12px;text-align:center;background:linear-gradient(125deg,#2a4665,#19314c)}.division-node strong{display:block;font-size:14px;line-height:1.3;margin:7px 0}.division-node small{color:#a8bfd8;font-size:10px}.minibar{height:5px;border-radius:9px;background:#14263b;margin-top:13px;overflow:hidden}.minibar div{height:100%;background:var(--green)}.tracks{display:grid;gap:9px;border-left:2px solid #49617c;padding-left:16px}.track{display:grid;grid-template-columns:205px minmax(0,1fr);gap:21px;align-items:center;position:relative}.track::before{position:absolute;left:-16px;top:50%;width:16px;height:2px;background:#49617c;content:''}.track-node{background:var(--panel2);border:1px solid #45617c;border-radius:9px;min-height:65px;padding:10px;display:flex;flex-direction:column;justify-content:center;gap:7px}.track-title{font-size:12px;font-weight:700;line-height:1.3}.track-title b{font-size:10px;color:var(--blue);padding-right:6px}.track-meta{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px}.linkbtn{border:0;background:transparent;color:var(--blue);font-size:11px;padding:1px}.linkbtn:hover{text-decoration:underline}.task-grid{border-left:1px solid #49617c;padding-left:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;position:relative}.task-grid::before{content:'';position:absolute;left:-21px;top:50%;width:21px;height:2px;background:#49617c}.task{border:1px solid #3d536c;background:#19283d;border-radius:8px;display:flex;gap:7px;align-items:center;min-height:50px;padding:7px 9px;font-size:11px;line-height:1.3}.task.decision:not(.done){border-left:3px solid var(--amber)}.task.test:not(.done){border-left:3px solid var(--purple)}.task.owner:not(.done){border-left:3px solid var(--coral)}.task.done{background:#15362d;border-color:#346f59}.task input{accent-color:#60d4a6;width:15px;height:15px;flex:0 0 15px;cursor:pointer}.task-open{min-width:0;text-align:left;padding:3px 0;border:0;background:transparent;color:var(--ink);font-size:11px;line-height:1.3;flex:1}.task-open:hover{text-decoration:underline}.task.done .task-open{text-decoration:line-through;color:#9ec0b0}.task .status{font-size:10px;font-weight:750;color:#a5b9d0}.task .status.blocked{color:var(--coral)}.task .status.review{color:var(--purple)}.task .status.in_progress{color:var(--blue)}.footnote{font-size:11px;color:var(--muted);line-height:1.5;margin-top:13px}
.login-panel{min-height:55vh;display:grid;place-items:center}.login-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:30px;width:min(420px,100%);box-shadow:0 25px 60px #0006}.login-card h2{margin:8px 0;font-size:26px}.login-card form,.drawer form{display:flex;flex-direction:column;gap:15px;margin-top:22px}label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#c4d1e1}label input:not([type=checkbox]),label textarea,label select{min-height:37px;border:1px solid #50647c;color:var(--ink);background:#0e1b2d;border-radius:8px;padding:9px;resize:vertical}.error{color:var(--coral);font-size:12px;line-height:1.5}
.backdrop{position:fixed;inset:0;background:#040913b9;z-index:10}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(480px,100vw);overflow-y:auto;background:#152238;border-left:1px solid #52708e;z-index:11;padding:24px;box-shadow:-20px 0 60px #0006}.drawer-top{display:flex;justify-content:space-between;align-items:center}.drawer h2{font-size:22px;line-height:1.25;margin:18px 0 9px}.drawer-buttons{display:flex;gap:10px;flex-wrap:wrap}.toast{position:fixed;bottom:18px;right:18px;border:1px solid #649a89;background:#214a41;color:#e8fff5;padding:13px 17px;border-radius:10px;z-index:50;box-shadow:0 12px 45px #0007;font-size:12px;max-width:85vw}.empty{padding:30px;text-align:center;color:var(--muted)}
@media(max-width:700px){.shell{padding:19px 12px 45px}.stats{gap:6px}.stat{padding:10px}.stat strong{font-size:21px}.stat span{font-size:10px}.bar input{max-width:none}.graph-viewport{padding:9px;max-height:68vh}.graph{min-width:800px}.drawer{padding:19px}}
