:root{--navy:#124371;--navy-deep:#0d3357;--gold:#C6B15A;--gold-soft:#f6f1dc;--bg:#f4f6f9;--panel:#ffffff;--ink:#1e2a3a;--muted:#5b6b7c;--line:#dfe5ec;--line-strong:#c5cfdb;--link:#1a5aa8;--link-soft:#e8f0fa;--band:#124371;--band-ink:#ffffff;--good:#1e8e3e;--warn:#b26a00;--crit:#c62828;--good-bg:#e4f4e8;--warn-bg:#fdf1dc;--crit-bg:#fbe4e2;--alert:#f6c6c6;--alert-ink:#5a1313;--shadow:0 1px 2px rgba(18,67,113,.06),0 1px 3px rgba(18,67,113,.08);--head:"Rubik",system-ui,sans-serif;--body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f161e;--panel:#171f29;--ink:#e7edf3;--muted:#9aa9b9;--line:#273340;--line-strong:#35434f;--link:#7fb0ea;--link-soft:#1b2a3d;--band:#0d3357;--gold-soft:#2e2a18;--good:#5ed394;--warn:#f0b35c;--crit:#f58a80;--good-bg:#15301f;--warn-bg:#352a12;--crit-bg:#3a1c19;--alert:#4a1f1f;--alert-ink:#ffd9d9;--shadow:none;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f161e;--panel:#171f29;--ink:#e7edf3;--muted:#9aa9b9;--line:#273340;--line-strong:#35434f;--link:#7fb0ea;--link-soft:#1b2a3d;--band:#0d3357;--gold-soft:#2e2a18;--good:#5ed394;--warn:#f0b35c;--crit:#f58a80;--good-bg:#15301f;--warn-bg:#352a12;--crit-bg:#3a1c19;--alert:#4a1f1f;--alert-ink:#ffd9d9;--shadow:none;color-scheme:dark}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:13.5px;line-height:1.45}.brand,.stage,.tile .v,h1,h2,h3{font-family:var(--head)}h1{font-size:21px;margin:0 0 2px;text-wrap:balance}h1,h2{font-weight:600}h2{font-size:14px;margin:0 0 10px}h3{font-size:13px;font-weight:600;margin:14px 0 6px}.sub{color:var(--muted);margin:0 0 16px}a{color:var(--link);text-decoration:underline;-webkit-text-decoration-color:transparent;text-decoration-color:transparent}a:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.top{background:var(--navy);color:#fff;gap:18px;padding:0 20px;height:54px;position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:9}.brand,.top{display:flex;align-items:center}.brand{gap:10px;font-weight:700;letter-spacing:.06em;font-size:14px;text-transform:uppercase;white-space:nowrap}.brand .mark{width:26px;height:26px;border:3px double #fff;border-radius:3px;box-shadow:inset 0 0 0 2px var(--navy)}.brand small{display:block;font-family:var(--body);font-weight:600;font-size:9.5px;letter-spacing:.14em;opacity:.8;text-transform:uppercase;line-height:1}.nav{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;min-width:0}.nav::-webkit-scrollbar{display:none}.nav button{all:unset;cursor:pointer;padding:0 10px;height:54px;line-height:54px;font-weight:700;font-size:13px;color:rgba(255,255,255,.82);white-space:nowrap;border-bottom:3px solid transparent}.nav button:hover{color:#fff}.nav button[aria-current=page]{color:#fff;background:rgba(255,255,255,.09);border-bottom-color:var(--gold)}.search{margin-left:auto;display:flex;align-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:6px 10px;color:#fff;min-width:150px;gap:8px;font-size:12.5px;flex:0 0 auto}.search span{opacity:.8}.icons{display:flex;align-items:center;gap:12px;font-size:12px;flex:0 0 auto}.badge{background:var(--crit);color:#fff;border-radius:999px;padding:1px 7px;font-size:11px}.avatar,.badge{font-weight:800}.avatar{width:28px;height:28px;border-radius:50%;background:var(--gold);color:var(--navy);display:grid;place-items:center;font-size:12px}.switch{display:flex;border:1px solid rgba(255,255,255,.35);border-radius:6px;overflow:hidden}.switch button{border:0;background:transparent;color:rgba(255,255,255,.85);padding:5px 10px;white-space:nowrap;font:inherit;font-weight:700;font-size:12px;cursor:pointer}.switch button[aria-pressed=true]{background:var(--gold);color:var(--navy)}.btn:focus-visible,.nav button:focus-visible,.switch button:focus-visible,.tabs button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.alerts{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:12px;gap:12px;margin:16px 0 0}.alert{background:var(--alert);color:var(--alert-ink);font-size:11.5px;font-weight:700;padding:7px 12px;border-radius:3px}.alert:before{content:"\26A0  "}.band{background:var(--band);color:var(--band-ink);margin:0 -24px;padding:26px 24px 30px}.band h1{color:#fff;font-weight:500;font-size:22px}.band .sub{color:rgba(255,255,255,.8);margin:0}.band .btn{position:absolute;right:24px;top:28px}.bandwrap{position:relative}.work{padding:0 24px 48px;min-width:0;overflow-x:hidden;width:100%;max-width:1400px;margin:0 auto}.screen[hidden]{display:none}.crumb{font-size:12px;color:var(--muted);margin:14px 0 8px}.crumb a{text-decoration:underline}.titlerow{align-items:flex-start;gap:12px;margin-bottom:8px}.titlerow,.titlerow .right{display:flex;flex-wrap:wrap}.titlerow .right{margin-left:auto;gap:8px}.chip{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:3px;background:var(--navy);color:#fff;vertical-align:middle}.chip.gold{background:var(--gold);color:var(--navy)}.chip.good{background:var(--good);color:#fff}.chip.soft{background:var(--link-soft);color:var(--link)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--line-strong);margin:4px 0 16px;overflow-x:auto;scrollbar-width:none}.tabs button{all:unset;cursor:pointer;padding:9px 12px;font-size:13px;font-weight:700;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap}.tabs button.on,.tabs button[aria-current=page]{color:var(--navy);border-bottom-color:var(--navy)}.wpane[hidden]{display:none}.grid{display:grid;grid-gap:16px;gap:16px}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.g4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:16px 18px;min-width:0;box-shadow:var(--shadow)}.card h2{display:flex;align-items:center;justify-content:space-between;gap:8px}.card h2 a{font-size:12.5px;font-weight:700}.tile{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:14px 16px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr;grid-gap:8px 14px;gap:8px 14px;align-items:center}.tile .k{grid-column:1/3;font-weight:700;font-size:14px}.tile .v{font-size:24px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile .d,.tile .v{text-align:right;grid-column:2}.tile .d{font-size:11.5px;color:var(--muted)}.ring{width:54px;height:54px;background:conic-gradient(var(--navy) calc(var(--p)*1%),var(--line) 0);place-items:center;grid-row:2/4}.ring,.ring:after{border-radius:50%;display:grid}.ring:after{content:attr(data-l);width:40px;height:40px;background:var(--panel);place-items:center;font-size:11px;font-weight:800;color:var(--navy)}.ring.gold{background:conic-gradient(var(--gold) calc(var(--p)*1%),var(--line) 0)}.ring.crit{background:conic-gradient(var(--crit) calc(var(--p)*1%),var(--line) 0)}table{width:100%;border-collapse:collapse;font-size:12.5px}th{text-align:left;font-size:11px;letter-spacing:.04em;color:var(--muted);font-weight:800;border-bottom:1px solid var(--line-strong);white-space:nowrap}td,th{padding:8px}td{border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--link-soft)}.num{font-family:var(--mono);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.mono{font-family:var(--mono);font-size:12px}.scroll{overflow-x:auto}.pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:3px;font-size:11px;font-weight:800;white-space:nowrap}.good{background:var(--good-bg);color:var(--good)}.warn{background:var(--warn-bg);color:var(--warn)}.crit{background:var(--crit-bg);color:var(--crit)}.neutral{background:var(--link-soft);color:var(--link)}.gold{background:var(--gold-soft);color:#6b5a0f}.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);padding:6px 12px;border-radius:4px;font:inherit;font-weight:700;cursor:pointer;font-size:12.5px;white-space:nowrap}.btn:hover{color:var(--navy)}.btn.primary,.btn:hover{border-color:var(--navy)}.btn.primary{background:var(--navy);color:#fff}.btn.primary:hover{color:#fff;background:var(--navy-deep)}.btn.gold{background:var(--gold);color:var(--navy);border-color:var(--gold)}.btn.danger{background:var(--crit);color:#fff;border-color:var(--crit)}.btn.sm{padding:3px 9px;font-size:11.5px}.actions{margin-top:12px}.actions,.toolbar{display:flex;gap:8px;flex-wrap:wrap}.toolbar{align-items:center;margin-bottom:14px}.toolbar .sep{width:1px;height:22px;background:var(--line-strong)}.filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}.filters span{border:1px solid var(--line-strong);border-radius:3px;padding:3px 9px;font-size:11.5px;font-weight:700;color:var(--muted)}.filters span.on{background:var(--navy);color:#fff;border-color:var(--navy)}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.list li{display:flex;gap:12px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line)}.list li:last-child{border-bottom:0}.list .when{font-family:var(--mono);font-size:11.5px;color:var(--muted);min-width:74px}.acc{background:var(--navy);color:#fff;font-family:var(--head);font-weight:500;font-size:14px;padding:11px 16px;border-radius:4px;display:flex;justify-content:space-between;margin-top:10px}.acc.open{border-radius:4px 4px 0 0}.accbody{background:var(--panel);border:1px solid var(--line);border-top:0;border-radius:0 0 4px 4px;padding:14px 16px}.field{display:grid;grid-template-columns:170px 1fr;grid-gap:8px 12px;gap:8px 12px;font-size:12.5px;align-items:center}.field dt{color:var(--muted);font-weight:700}.field dd{margin:0}.in{border:1px solid var(--line-strong);border-radius:3px;padding:5px 8px;background:var(--panel);color:var(--ink);font:inherit;font-size:12.5px;min-width:0;width:100%;max-width:280px}.in.ro{background:var(--bg);color:var(--muted)}.in.n{text-align:right;font-family:var(--mono);max-width:110px}.stages{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 16px}.stage{flex:1 1 100px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:4px;font-size:12px;background:var(--panel);font-weight:500;color:var(--muted)}.stage.done{background:var(--good-bg);border-color:transparent;color:var(--good)}.stage.now{background:var(--navy);color:#fff;border-color:var(--navy)}.stage small{display:block;font-family:var(--body);font-weight:400;opacity:.85;font-size:11px}.info{background:var(--gold-soft);border-left:4px solid var(--gold);padding:8px 12px;font-size:12.5px;margin:0 0 14px;border-radius:0 4px 4px 0}.info:before{content:"\24D8  ";color:#6b5a0f}.note{font-size:12px;color:var(--muted);margin-top:8px}.progress{height:8px;background:var(--line);border-radius:4px;overflow:hidden;min-width:70px}.progress i{display:block;height:100%;background:var(--good)}.av{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;font-size:10px;font-weight:800}.av,.datechip{background:var(--navy);color:#fff}.datechip{display:inline-block;font-size:11px;font-weight:700;padding:2px 7px;border-radius:3px;font-family:var(--mono)}.datechip.red{background:var(--crit)}.calc{font-family:var(--body);max-width:620px}.calc .row{display:grid;grid-template-columns:1fr 100px 90px 100px;grid-gap:6px;gap:6px;padding:4px 0;font-size:12px;align-items:baseline}.calc .row.h{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:6px 0;margin-top:8px}.calc .row.h,.calc .row.t{font-weight:800}.calc .row .r{text-align:right;font-family:var(--mono)}.calc .row .u{border-bottom:1px solid var(--ink)}.calc .row .uu{border-bottom:3px double var(--ink)}.calc .ind{padding-left:22px}.preview{background:var(--muted);padding:24px;display:flex;justify-content:center;border-radius:4px}.page{background:#fff;color:#111;width:100%;max-width:560px;min-height:420px;padding:36px 40px;font-family:Arial,Helvetica,sans-serif;font-size:11px;box-shadow:0 2px 10px rgba(0,0,0,.3)}.page h4{font-size:12px;margin:120px 0 4px}.page h4,.page p{text-align:center}.page p{margin:2px 0}.timeline{position:relative;padding-left:24px}.timeline:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--line-strong)}.tl{position:relative;margin-bottom:12px;border:1px solid var(--line);border-radius:4px;padding:10px 12px}.tl,.tl:before{background:var(--panel)}.tl:before{content:"";position:absolute;left:-21px;top:14px;width:10px;height:10px;border-radius:50%;border:2px solid var(--good)}.tl .m{font-size:11px;color:var(--muted)}.wizard{counter-reset:s;display:flex;flex-direction:column}.wizard .step{display:grid;grid-template-columns:28px 1fr;grid-gap:10px;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.wizard .step:before{counter-increment:s;content:counter(s);width:24px;height:24px;border-radius:50%;background:var(--link-soft);color:var(--navy);font-weight:800;font-size:12px;display:grid;place-items:center}.wizard .step.done:before{background:var(--good-bg);color:var(--good);content:"\2713"}.wizard .step:last-child{border-bottom:0}.wizard b{display:block}.wizard span{color:var(--muted);font-size:12px}.foot{font-size:11px;color:var(--muted);margin-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}@media (max-width:760px){.top{padding:0 12px;gap:10px}.icons .who,.search{display:none}.nav button{padding:0 9px}.work{padding:0 16px 32px}.band{margin:0 -16px;padding:20px 16px}.band .btn{position:static;margin-top:10px}.field{grid-template-columns:1fr}.calc .row{grid-template-columns:1fr 80px 70px 80px;font-size:11px}}@media (prefers-reduced-motion:no-preference){.screen{animation:fade .15s ease}}@keyframes fade{0%{opacity:.5}to{opacity:1}}.toasts{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:50}.toast{background:var(--navy);color:#fff;padding:10px 14px;border-radius:6px;font-size:13px;box-shadow:0 4px 14px rgba(0,0,0,.25);opacity:0;transform:translateY(8px);transition:all .25s;max-width:360px}.toast.show{opacity:1;transform:none}#modal{position:fixed;inset:0;background:rgba(10,20,30,.55);display:grid;place-items:center;z-index:40;padding:16px}#modal[hidden]{display:none}#modal-box{background:var(--panel);color:var(--ink);border-radius:8px;width:100%;max-width:520px;max-height:90vh;overflow:auto;box-shadow:0 10px 40px rgba(0,0,0,.35)}#modal-box.wide{max-width:760px}#modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);font-family:var(--head);font-weight:600;font-size:15px}#modal-body{padding:16px 18px}#modal-foot{padding:12px 18px;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-end}.mf{display:grid;grid-template-columns:170px 1fr;grid-gap:6px 12px;gap:6px 12px;align-items:center;margin-bottom:10px;font-size:12.5px}.mf span{color:var(--muted);font-weight:700}.mf .in{max-width:none}.mf.row{grid-template-columns:auto 1fr;gap:8px}.mf input[type=checkbox]{width:16px;height:16px;justify-self:start}.x{all:unset;font-size:18px;color:var(--muted);padding:0 4px}.searchbtn,.x{cursor:pointer}@media (max-width:760px){.mf{grid-template-columns:1fr}}.foot a{color:var(--muted)}.nav a{all:unset;cursor:pointer;padding:0 10px;height:54px;line-height:54px;font-weight:700;font-size:13px;color:rgba(255,255,255,.82);white-space:nowrap;border-bottom:3px solid transparent}.nav a:hover{color:#fff}.nav a[aria-current=page]{color:#fff;background:rgba(255,255,255,.09);border-bottom-color:var(--gold)}.nav a:focus-visible,.switch a:focus-visible,.tabs a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.switch a{border:0;background:transparent;color:rgba(255,255,255,.85);padding:5px 10px;white-space:nowrap;font:inherit;font-weight:700;font-size:12px;cursor:pointer;text-decoration:none}.switch a[aria-pressed=true]{background:var(--gold);color:var(--navy)}.brand,.icons a{color:#fff;text-decoration:none}.tabs a{all:unset;cursor:pointer;padding:9px 12px;font-size:13px;font-weight:700;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap}.tabs a.on,.tabs a[aria-current=page]{color:var(--navy);border-bottom-color:var(--navy)}.filters a{border:1px solid var(--line-strong);border-radius:3px;padding:3px 9px;font-size:11.5px;font-weight:700;color:var(--muted);text-decoration:none}.filters a.on{background:var(--navy);color:#fff;border-color:var(--navy)}.viewtoggle{margin-left:auto;font-size:11.5px;color:var(--muted);font-weight:700}.rowactions,.viewtoggle{display:flex;gap:6px;align-items:center}.rowactions{flex-wrap:wrap}.earlier{font-size:11px;color:var(--muted);display:block;margin-top:2px}.btn[disabled]{opacity:.55;cursor:not-allowed}.toast.crit{background:var(--crit)}textarea.in{resize:vertical}.quote{border-left:3px solid var(--line-strong);padding:4px 10px;margin:0 0 12px;font-size:12.5px}.empty,.quote{color:var(--muted)}.empty{text-align:center;padding:24px 8px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tabs a.on{color:var(--link);border-bottom-color:var(--link)}}:root[data-theme=dark] .tabs a.on{color:var(--link);border-bottom-color:var(--link)}@media (max-width:760px){.top{flex-wrap:wrap;height:auto;row-gap:0;padding-top:8px}.brand{min-height:38px}.icons{margin-left:auto;gap:8px}.switch a{padding:5px 7px}.nav{order:3;flex:1 0 100%;margin:0 -12px;padding:0 4px}.nav a{height:40px;line-height:40px}}.signout{all:unset;cursor:pointer;font-size:12px;font-weight:700;color:rgba(255,255,255,.85);white-space:nowrap}.signout:hover{color:#fff;text-decoration:underline}.signout:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.btn.disabled{opacity:.55;pointer-events:none}.nav a.soon{color:rgba(255,255,255,.55)}.nav a.soon[aria-current=page]{color:#fff}.soontag{display:inline-block;margin-left:5px;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:1px 5px;border-radius:3px;background:rgba(255,255,255,.14);color:rgba(255,255,255,.8);vertical-align:2px;line-height:1.4}.search input{all:unset;color:#fff;font-size:12.5px;min-width:120px}.search input::placeholder{color:rgba(255,255,255,.75)}