:root{--bg:#fcfaf4;--panel:#fffffe;--soft:#f7f4ec;--ink:#2b2a27;--muted:#716d65;--faint:#a7a298;--line:#f0ece3;--line2:#e4ded2;--accent:#4a70db;--accent-soft:#eef2fc;--done:#3a9c6f;--overdue:#db5a45;--warn:#c99a2e;--shadow:0 1px 2px rgba(80,65,35,0.03),0 6px 22px rgba(80,65,35,0.035)}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#13171c;--panel:#1a1f26;--soft:#20262e;--ink:#e6eaef;--muted:#9aa4b1;--faint:#6c7684;--line:#272e37;--line2:#353d48;--accent:#7b9bf5;--accent-soft:#232c44;--done:#4db887;--overdue:#ef6e59;--warn:#e3b03e;--shadow:none}}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent)}h1{font-size:30px;line-height:1.2;margin:0;letter-spacing:-.02em;text-wrap:balance}h1,h2{font-weight:600}h2{font-size:16px;margin:0 0 12px}.muted,.sub{color:var(--muted)}.sub{margin:8px 0 0}.brand{display:flex;align-items:center;gap:10px;font-weight:600}.brand i{width:22px;height:22px;border-radius:7px;background:linear-gradient(135deg,var(--accent),#9cc7f4);display:block}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:24px 28px;box-shadow:var(--shadow);margin-top:22px}.auth{max-width:440px;margin:9vh auto;padding-inline:20px;padding-block:0 60px}.auth .brand{margin-bottom:32px}.stack{display:grid;grid-gap:16px;gap:16px}.field{display:grid;grid-gap:6px;gap:6px}.field label{font-size:13px;color:var(--muted)}.field input{width:100%;height:42px;padding:0 12px;border:1px solid var(--line2);border-radius:11px;background:var(--panel);color:var(--ink);font:inherit}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.hint{font-size:12.5px;color:var(--faint)}.msg{border-radius:12px;padding:11px 14px;font-size:14px}.msg.error{background:color-mix(in srgb,var(--overdue) 10%,var(--panel));color:var(--overdue)}.msg.notice{background:var(--accent-soft)}.btn{height:42px;padding:0 18px;border-radius:11px;border:1px solid var(--line2);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn:disabled{opacity:.6;cursor:default}.below{margin:18px 0 0;font-size:14px}.linklike{background:none;border:0;padding:0;font:inherit;color:var(--accent);cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{max-width:1080px;margin:0 auto;padding-inline:20px;padding-block:0 80px}.top{justify-content:space-between;flex-wrap:wrap;padding-block:18px;margin-bottom:36px;border-bottom:1px solid var(--line)}.top,.who{display:flex;align-items:center;gap:16px}.who{font-size:13.5px;line-height:1.3}.who b{font-weight:500}.list{list-style:none;margin:0;padding:0}.list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.list li:first-child{border-top:0}.top .brand{color:var(--ink);text-decoration:none}.nav{display:flex;gap:4px;flex:1 1;flex-wrap:wrap}.nav a{padding:7px 14px;border-radius:999px;color:var(--muted);text-decoration:none}.nav a:hover{background:var(--soft);color:var(--ink)}.av,.nav a.on{background:var(--accent-soft);color:var(--accent)}.av{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:600;flex:none}.page.narrow{max-width:760px}.head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.crumbs{font-size:13px;color:var(--faint);margin-bottom:14px}.crumbs a{color:var(--muted)}a.btn{display:inline-flex;align-items:center;text-decoration:none}.btn.danger{color:var(--overdue)}.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.small{font-size:13px}.faint{color:var(--faint)}.red{color:var(--overdue)}.strong{font-weight:500}.note{font-size:13px;color:var(--muted);margin:0 0 12px}.sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.flag{background:color-mix(in srgb,var(--warn) 12%,var(--panel));border-radius:14px;padding:12px 16px;margin-top:18px;font-size:14px}.danger-zone{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th{text-align:left;font-weight:400;font-size:12.5px;color:var(--faint);padding:10px 14px 10px 0;white-space:nowrap}td,th{border-bottom:1px solid var(--line)}td{padding:14px 14px 14px 0;vertical-align:top}tr:last-child td{border-bottom:0}.num{text-align:right}.kpis{display:flex;flex-wrap:wrap;margin-top:26px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:6px 8px;box-shadow:var(--shadow)}.kpi{padding:14px 26px;border-right:1px solid var(--line);display:grid}.kpi:last-child{border-right:0}.kpi b{font-size:24px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi span{font-size:12.5px;color:var(--muted)}.st{display:inline-flex;align-items:center;gap:7px}.st:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c,var(--faint))}.st-done{--c:var(--done)}.st-active{--c:var(--accent)}.st-overdue{--c:var(--overdue);color:var(--overdue)}fieldset.field{border:0;padding:0;margin:0}fieldset.field legend{font-size:13px;color:var(--muted);margin-bottom:6px;padding:0}.checks{max-height:260px;overflow:auto;border:1px solid var(--line2);border-radius:12px;padding:4px 12px}.checks label{display:flex;gap:9px;align-items:center;margin:8px 0;font-size:14px;color:var(--ink)}.checks label.dis{color:var(--faint)}.inline{display:flex;gap:12px;flex-wrap:wrap}.inline>.field{flex:1 1;min-width:150px}.inline>.field.grow{flex:3 1}.gwrap{overflow:auto;background:var(--soft);border-radius:14px;max-height:70vh;background-image:radial-gradient(var(--line2) 1px,transparent 1px);background-size:22px 22px}.graph{position:relative}.graph svg{position:absolute;inset:0;overflow:visible}.edge{fill:none;stroke:var(--line2);stroke-width:1.5}.edge.done{stroke:var(--done);opacity:.7}.node{position:absolute;background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:10px 12px 9px 17px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;color:var(--ink);text-decoration:none;box-shadow:0 1px 2px rgba(25,40,60,.05);transition:box-shadow .15s,border-color .15s}.node:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c,var(--faint))}a.node:hover{border-color:var(--accent);box-shadow:0 6px 18px rgba(40,80,160,.12)}.node .nm{font-weight:500;font-size:13.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.node .mt{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:6px}.node.st-done{--c:var(--done)}.node.st-active{--c:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line2))}.node.st-overdue{--c:var(--overdue);border-color:color-mix(in srgb,var(--overdue) 45%,var(--line2))}.node.st-blocked{border-style:dashed;box-shadow:none}.node.st-template{--c:var(--accent)}.node.locked{opacity:.5}.legend{display:flex;gap:18px;flex-wrap:wrap;font-size:12.5px;margin-top:14px;color:var(--muted)}.legend i{display:inline-block;width:14px;height:4px;border-radius:2px;margin-right:6px;vertical-align:middle}.field select,.field textarea,.inline-form select{width:100%;padding:10px 12px;border:1px solid var(--line2);border-radius:11px;background:var(--panel);color:var(--ink);font:inherit}.field select,.inline-form select{height:42px;padding-block:0}.field textarea{resize:vertical;min-height:70px}.field select:focus,.field textarea:focus,.inline-form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.msg,.pre{white-space:pre-line}.pre{overflow-wrap:anywhere}.warn{color:var(--warn)}.ts{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12.5px;white-space:nowrap;background:var(--soft);color:var(--muted)}.ts-progress{background:var(--accent-soft);color:var(--accent)}.ts-review{background:color-mix(in srgb,var(--warn) 16%,var(--panel));color:color-mix(in srgb,var(--warn) 75%,var(--ink))}.ts-done{background:color-mix(in srgb,var(--done) 13%,var(--panel));color:var(--done)}.ts-overdue{background:color-mix(in srgb,var(--overdue) 13%,var(--panel));color:var(--overdue)}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-top:22px}.tabs a{padding:8px 16px;border-radius:999px;color:var(--muted);text-decoration:none;border:1px solid var(--line2);background:var(--panel)}.tabs a.on{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.badge{display:inline-block;min-width:20px;padding:0 6px;margin-left:6px;border-radius:999px;background:var(--warn);color:#fff;font-size:12px;line-height:20px;text-align:center}.filters{gap:16px;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}.filters,.inline-form{display:flex;align-items:center}.inline-form{gap:10px}.inline-form select{width:auto;min-width:220px}.card.accent{border-color:color-mix(in srgb,var(--warn) 40%,var(--line2))}.review{display:grid;grid-template-columns:auto 1fr;grid-gap:24px;gap:24px;align-items:start}.btnrow{display:flex;gap:10px;flex-wrap:wrap}.timeline{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-gap:12px;gap:12px}.timeline li{padding-left:16px;border-left:2px solid var(--line2);font-size:14px}.timeline .ev-returned{border-left-color:var(--overdue)}.timeline .ev-accepted{border-left-color:var(--done)}.timeline .ev-submitted{border-left-color:var(--warn)}.timeline .pre{margin-top:4px;color:var(--ink)}details.add{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}details.add summary,details.mini summary{cursor:pointer;color:var(--accent);margin-bottom:12px}details.mini summary{font-size:13px;margin-bottom:8px;white-space:nowrap}@media (max-width:720px){.review{grid-template-columns:1fr}.inline-form select{min-width:0}.kpi{padding:12px 16px}.card{padding:18px 16px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}