:root{--bg:#f6f7f9;--panel:#fff;--ink:#1a2230;--muted:#5d6879;--line:#d9dee6;--accent:#0b5fa5;--accent-ink:#fff;--rg:#1a8a4a;--ra:#d98a00;--rr:#c8352b;--rn:#98a1ae;--t-g:#e3f4ea;--t-a:#fdf0d6;--t-r:#fbe3e1;--t-n:#eceef2;--t-blue:#e3eefa;--s1:#3b82c4;--s2:#1a9e8f;--rx:#98a1ae;--g300:#b9c0cb;--xs-navy:#1f3a5f;color:var(--ink);font-family:Montserrat,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#11151c;--panel:#1a212c;--ink:#e8ecf2;--muted:#9aa5b6;--line:#2e3745;--accent:#5aa7e8;--accent-ink:#0b1220;--rg:#43b873;--ra:#f0b13a;--rr:#ee6a60;--rn:#6d7787;--t-g:#16301f;--t-a:#33280f;--t-r:#381a18;--t-n:#232a35;--t-blue:#17283d;--s1:#5aa7e8;--s2:#3fc7b5;--rx:#6d7787;--g300:#46505f;--xs-navy:#8fb4e8}}:root[data-theme=dark]{--bg:#11151c;--panel:#1a212c;--ink:#e8ecf2;--muted:#9aa5b6;--line:#2e3745;--accent:#5aa7e8;--accent-ink:#0b1220;--rg:#43b873;--ra:#f0b13a;--rr:#ee6a60;--rn:#6d7787;--t-g:#16301f;--t-a:#33280f;--t-r:#381a18;--t-n:#232a35;--t-blue:#17283d;--s1:#5aa7e8;--s2:#3fc7b5;--rx:#6d7787;--g300:#46505f;--xs-navy:#8fb4e8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1{margin:0 0 .25rem;font-size:1.5rem}h2{margin:1.5rem 0 .5rem;font-size:1.05rem}p{margin:0 0 .5rem}.app{grid-template:"h h""n m"1fr/200px 1fr;min-height:100vh;display:grid}header{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;grid-area:h;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}header label{color:var(--muted);align-items:center;gap:.4rem;display:flex}.brand{font-size:1rem}.sp{flex:1}.who{color:var(--muted)}nav{background:var(--panel);border-right:1px solid var(--line);grid-area:n;padding:1rem .75rem}nav h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1rem .5rem .3rem;font-size:.7rem}nav a{color:var(--ink);border-radius:6px;padding:.4rem .5rem;text-decoration:none;display:block}nav a[aria-current]{background:var(--accent);color:var(--accent-ink)}main{grid-area:m;min-width:0;padding:1.25rem 1.5rem}@media (width<=760px){.app{grid-template:"h""n""m"1fr/1fr}nav{border-right:0;border-bottom:1px solid var(--line);gap:.25rem;padding:.4rem;display:flex;overflow-x:auto}nav h2{display:none}nav div{gap:.25rem;display:flex}nav a{white-space:nowrap}main{padding:1rem}}.page-h{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.page-h p{color:var(--muted);max-width:70ch}.acts{align-items:center;gap:.5rem;display:flex}.empty{text-align:center;background:var(--panel);border:1px dashed var(--line);color:var(--muted);border-radius:8px;padding:2rem}.btn{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:6px;padding:.4rem .8rem}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.danger{background:var(--rr);border-color:var(--rr);color:#fff}.btn.sm{padding:.2rem .5rem;font-size:.85rem}.btn.link{color:var(--accent);background:0 0;border:0;padding-left:0}.btn:disabled{opacity:.6;cursor:default}select,input{font:inherit;color:inherit}.tbl-wrap{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:.3rem .5rem}th{color:var(--muted);font-size:.75rem;font-weight:600}.r{text-align:right}tr:last-child td{border-bottom:0}tr.click{cursor:pointer}tr.click:hover,tr.click:focus-visible{background:var(--t-n);outline:none}td.stripe,th.stripe{width:6px;padding:0}td.stripe.G{background:var(--rg)}td.stripe.A{background:var(--ra)}td.stripe.R{background:var(--rr)}td.stripe.N{background:var(--rn)}td.ck{text-align:center}td.del{width:1%}.edit{background:0 0;border:1px solid #0000;border-radius:4px;width:100%;padding:.25rem .35rem}.edit:hover{border-color:var(--line)}.edit:focus{border-color:var(--accent);background:var(--panel);outline:none}.edit.num{text-align:right;min-width:80px}.x{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.2rem;line-height:1}.x:hover{color:var(--rr)}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.pill{border-radius:99px;padding:.1rem .6rem;font-size:.78rem;font-weight:600;display:inline-block}.pill.G{background:var(--t-g);color:var(--rg)}.pill.A{background:var(--t-a);color:var(--ra)}.pill.R{background:var(--t-r);color:var(--rr)}.pill.N{background:var(--t-n);color:var(--muted)}.tag{background:var(--t-n);color:var(--muted);border-radius:4px;margin-left:.5rem;padding:.05rem .4rem;font-size:.7rem}.overall{border-left:6px solid var(--rn);background:var(--panel);border-radius:8px;flex-wrap:wrap;align-items:center;gap:1.5rem;margin-bottom:1rem;padding:1rem;display:flex}.overall.G{border-color:var(--rg)}.overall.A{border-color:var(--ra)}.overall.R{border-color:var(--rr)}.overall-line{color:var(--muted)}.areas{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}.area{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--rn);border-radius:8px;padding:.8rem 1rem}.area.G{border-top-color:var(--rg)}.area.A{border-top-color:var(--ra)}.area.R{border-top-color:var(--rr)}.area-h{justify-content:space-between;align-items:center;display:flex}.driver{color:var(--muted);margin:.15rem 0 .5rem;font-size:.75rem}.login{place-items:center;min-height:100vh;display:grid}.login form{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:.75rem;width:min(360px,90vw);padding:1.5rem;display:grid}.login label{gap:.25rem;display:grid}.login input{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:.45rem .6rem}.err{color:var(--rr)}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin-bottom:1rem}.card .tbl-wrap{border:0;border-top:1px solid var(--line);border-radius:0}.card .empty{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0}.bar-h{align-items:baseline;gap:.6rem;padding:.6rem .8rem;display:flex}.bar-h small,.muted{color:var(--muted)}.addbar{border-top:1px solid var(--line);align-items:center;gap:.5rem;padding:.6rem .8rem;display:flex}tfoot td{border-top:1px solid var(--line);border-bottom:0;font-weight:600}.neg{color:var(--rr)}.fields{flex-wrap:wrap;gap:.75rem 1.5rem;padding:0 .8rem .8rem;display:flex}.fld{align-content:start;gap:.15rem;min-width:200px;display:grid}.fld.wide{flex:100%}.fld>span{color:var(--muted);font-size:.75rem;font-weight:600}.fld small{color:var(--muted);font-size:.72rem}.fld .edit{border-color:var(--line);background:var(--bg)}.kpis{flex-wrap:wrap;gap:.75rem;padding:0 .8rem .8rem;display:flex}.kpi{border-left:4px solid var(--accent);background:var(--bg);border-radius:8px;min-width:170px;padding:.55rem .8rem}.kpi .v{font-size:1.2rem;font-weight:700}.kpi .l{color:var(--muted);font-size:.78rem}.kpi .s{color:var(--muted);margin-top:.15rem;font-size:.72rem}.kpi.G{border-color:var(--rg)}.kpi.A{border-color:var(--ra)}.kpi.R{border-color:var(--rr)}.kpi.N{border-color:var(--rn)}.kpi.teal{border-color:#1f9d9d}.stmt{background:var(--bg);border-radius:8px;margin:0 .8rem .8rem;padding:.6rem .8rem}.grid2{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));align-items:start;gap:1rem;display:grid}.grid2>.card{margin-bottom:0}.grid2{margin-bottom:1rem}.kpis:not(.sm){margin-bottom:1rem;padding:0}.crumb{color:var(--muted);margin-bottom:.5rem}.crumb .btn{padding:0}.foot{color:var(--muted);margin-top:1rem;font-size:.8rem}.stmt .who{color:var(--muted);margin-top:.3rem;font-style:italic;display:block}td.area{font-weight:600}tr.ov td{background:var(--bg);font-weight:600}td.wrap,th.wrap{white-space:normal;min-width:130px}.nm{font-weight:600}.cb{gap:.5rem;padding:.6rem .8rem;display:grid}.mrow{grid-template-columns:5.5rem 1fr 4.6rem;align-items:center;gap:.6rem;display:grid}.mrow>.muted{grid-column:2;font-size:.75rem}.mrow>b{text-align:right}.meter{background:var(--t-n);border-radius:99px;height:12px;display:flex;overflow:hidden}.meter i{height:100%;display:block}.meter.progress i{background:var(--rg)}.meter.spend i,.meter i.drawn,.sw.drawn{background:var(--accent)}.meter i.fcst,.sw.fcst{background:var(--accent);opacity:.45}.sw.rest{background:var(--t-n);border:1px solid var(--line)}.legend{color:var(--muted);flex-wrap:wrap;gap:1rem;margin-top:.5rem;font-size:.78rem;display:flex}.legend span{align-items:center;gap:.35rem;display:inline-flex}.sw{border-radius:3px;width:.8rem;height:.8rem;display:inline-block}.ragbar{background:var(--t-n);border-radius:99px;height:10px;margin:0 .8rem;display:flex;overflow:hidden}.ragbar i{height:100%;display:block}.ragbar i.G{background:var(--rg)}.ragbar i.A{background:var(--ra)}.ragbar i.R{background:var(--rr)}.ragbar i.N{background:var(--rn)}.ragleg{flex-wrap:wrap;gap:.4rem;padding:.5rem .8rem .8rem;display:flex}.offline{background:var(--t-a);border:1px solid var(--ra);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.6rem .9rem;display:flex}.toast{background:var(--ink);max-width:min(560px,92vw);color:var(--bg);border-radius:8px;align-items:center;gap:.75rem;padding:.7rem 1rem;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0004}.filters{flex-wrap:wrap;align-items:end;gap:.6rem .9rem;margin-bottom:1rem;display:flex}.filters .f{color:var(--muted);gap:.2rem;font-size:.78rem;display:grid}.filters select,.filters input{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:6px;padding:.3rem .5rem}.sort{color:var(--muted);align-items:center;gap:.4rem;font-size:.8rem;display:flex}.sort select{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:6px;padding:.2rem .4rem}.bars{gap:.4rem;padding:.6rem .8rem .8rem;display:grid}.mrow.wide{grid-template-columns:minmax(8rem,22rem) 1fr 2.6rem}.mrow.wide>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meter.rag-R i{background:var(--rr)}.meter.rag-A i{background:var(--ra)}.meter.rag-G i{background:var(--rg)}.meter.rag-N i{background:var(--rn)}.hmw{padding:.6rem .8rem .8rem;overflow-x:auto}table.hm{border-collapse:separate;border-spacing:3px;width:100%;max-width:560px}table.hm th{color:var(--muted);text-align:right;white-space:nowrap;padding:0 .4rem;font-size:.72rem;font-weight:600}table.hm th.il{text-align:center;vertical-align:top;padding-top:.25rem}table.hm td.hm{text-align:center;background:var(--t-n);border-radius:6px;height:2.4rem;font-weight:700}table.hm td.hm.G{background:var(--t-g);color:var(--rg)}table.hm td.hm.A{background:var(--t-a);color:var(--ra)}table.hm td.hm.R{background:var(--t-r);color:var(--rr)}table.hm td.hm.E{background:var(--bg)}table.hm td.hm button{all:unset;cursor:pointer;width:100%;line-height:2.4rem;display:block}table.hm td.hm.on{outline:2px solid var(--accent)}table.hm td.hm button:focus-visible{outline:2px solid var(--accent);border-radius:6px}.hint{color:var(--muted);margin-top:.5rem;font-size:.75rem}.hm-sel{align-items:center;gap:.6rem;padding:0 .8rem .8rem;font-size:.8rem;display:flex}.fx{text-align:center;border-radius:6px;min-width:2rem;padding:.05rem .4rem;font-weight:700;display:inline-block}.fx.G{background:var(--t-g);color:var(--rg)}.fx.A{background:var(--t-a);color:var(--ra)}.fx.R{background:var(--t-r);color:var(--rr)}.fx.N{background:var(--t-n);color:var(--muted)}.sub{color:var(--muted);font-size:.72rem;display:block}.cq{color:var(--muted);font-size:.78rem;display:block}.ev{font-weight:600;display:block}.mv{font-size:.7rem;font-weight:700}.mv.up{color:var(--rr)}.mv.down{color:var(--rg)}.mv.new{color:var(--accent)}.rk-t td.rk-d{min-width:18rem;max-width:34rem}tr.rec{cursor:pointer}tr.rec:hover,tr.rec:focus-visible{background:var(--bg);outline:none}.od{color:var(--rr);font-weight:700}dialog.rec{border:1px solid var(--line);background:var(--panel);width:min(860px,94vw);max-height:92vh;color:var(--ink);border-radius:10px;padding:1rem 1.25rem}dialog.rec::backdrop{background:#0a0e1680}dialog.rec h2{margin:0 0 .75rem}.form{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem .9rem;display:grid}.form .f{color:var(--muted);align-content:start;gap:.2rem;font-size:.78rem;display:grid}.form .f.wide{grid-column:1/-1}.form input,.form select,.form textarea{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;padding:.35rem .5rem}.form [aria-invalid=true]{border-color:var(--rr)}.form small.err{color:var(--rr)}.rec-calc{background:var(--bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem 1.2rem;margin:1rem 0;padding:.6rem .8rem;font-size:.85rem;display:flex}.rec-calc .gaps{color:var(--ra)}.rec-sec h4{margin:.5rem 0}ol.hist{margin:0;padding-left:1.2rem;font-size:.82rem}.rec-acts{gap:.5rem;margin-top:1rem;display:flex}.court{background:var(--t-n);color:var(--muted);border-radius:99px;padding:.05rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.court.CTS{background:var(--t-g);color:var(--accent)}.court.Client{background:var(--t-a);color:var(--ra)}.stg{white-space:nowrap;font-weight:600}.pad{padding:.6rem .8rem 0}tr.on{background:var(--bg)}.wf-now{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.6rem;font-size:.85rem;display:flex}.steps{flex-wrap:wrap;align-items:end;gap:.5rem;margin-bottom:.6rem;display:flex}.steps .f{color:var(--muted);gap:.2rem;font-size:.78rem;display:grid}.steps .grow{flex:1;min-width:14rem}.steps input{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;padding:.35rem .5rem}.rec-links{color:var(--muted);margin:.5rem 0;font-size:.82rem}#printDoc{display:none}@media print{body.printing-doc #root{display:none}body.printing-doc #printDoc{color:#000;background:#fff;display:block}.paper.cr-form{max-width:190mm;margin:0 auto;font-size:11pt}.cf-h{border-bottom:2px solid #000;justify-content:space-between;align-items:flex-start;margin-bottom:6mm;padding-bottom:6mm;display:flex}.cf-k{text-transform:uppercase;letter-spacing:.05em;font-size:9pt}.cf-h h2{margin:1mm 0;font-size:18pt}.cf-sub{font-size:10pt}.cf-st{text-align:right;font-weight:700}.cf-st small{font-weight:400;display:block}.cf-t{border-collapse:collapse;width:100%;margin-bottom:6mm}.cf-t th,.cf-t td{text-align:left;vertical-align:top;border:1px solid #999;padding:2mm 3mm}.cf-t th{background:#eee;width:42mm}.cf-h2 th{width:auto}.cf-sig{grid-template-columns:1fr 1fr;gap:10mm;margin-top:12mm;display:grid}.cf-sig div{gap:9mm;display:grid}.cf-sig span{border-top:1px solid #000;padding-top:1mm;font-size:9pt}.cf-foot{color:#555;margin-top:8mm;font-size:8pt}}.edlist input,.edlist select,.addrow input,.addrow select,.person-new input{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;padding:.3rem .5rem}.edlist input.nm{min-width:14rem}.edlist td.act{white-space:nowrap;text-align:right}.btn.xs{padding:.05rem .4rem;font-size:.8rem}.addrow{flex-wrap:wrap;align-items:center;gap:.6rem;padding:.6rem .8rem .8rem;display:flex}.addrow input{min-width:16rem}.person-new{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.person-new small.err{color:var(--rr);flex-basis:100%}.stmt{padding:.8rem 1rem}.stmt .acts{margin-top:.5rem}.src-b{border-radius:99px;margin-right:.4rem;padding:.1rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.src-b.brief{background:var(--t-g);color:var(--rg)}.src-b.prop{background:var(--t-a);color:var(--ra)}.rule{padding:.2rem 1rem .8rem;font-size:.85rem;line-height:2.1}.rule input.edit{text-align:right;width:3.2rem;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;margin:0 .15rem;padding:.05rem .4rem}.rule input.edit.bad{border-color:var(--rr)}.rule-now{border-top:1px solid var(--line);flex-wrap:wrap;gap:.4rem 1rem;padding:.6rem 1rem .8rem;font-size:.8rem;display:flex}.rule-now .muted{margin-right:.3rem}.guide ul,.guide ol{margin:0;padding:.6rem 1rem 1rem 2.2rem;font-size:.88rem;line-height:1.6}.import-report{border-top:1px solid var(--line);padding:.6rem 1rem;font-size:.85rem}.import-report ul{margin:.3rem 0 0;padding-left:1.2rem}.import-report details{margin-top:.5rem}.import-report summary{cursor:pointer;font-weight:600}.tbl-small{border-collapse:collapse;margin:.4rem 0}.tbl-small td{padding:.15rem .8rem .15rem 0}.tbl-small td.r{text-align:right;font-weight:600}label.check{align-items:center;gap:.5rem;margin:.6rem 0;font-size:.85rem;display:flex}label.btn input[type=file]{display:none}.pad label.f{align-items:center;gap:.6rem;margin:.4rem 0;font-size:.85rem;display:flex}.chart{padding:.4rem .8rem .2rem;overflow-x:auto}.chart svg{display:block;overflow:visible}.chart text{fill:var(--ink);font-family:inherit}.chart text.axis{fill:var(--muted);font-size:10px}.chart text.vlab{font-size:11px;font-weight:600}.chart text.blab{font-size:11.5px}.chart .hit:focus{outline:2px solid var(--accent);outline-offset:-2px}.chart .hit:hover{fill:#80808014}.chart.wf{padding:.6rem .8rem}.wf .node{cursor:pointer}.wf .node:focus-visible rect{stroke:var(--accent);stroke-width:2px;outline:none}.wf .ll{fill:var(--muted);letter-spacing:.08em;font-size:11px;font-weight:700}.wf .al{fill:var(--muted);font-size:10px;font-style:italic}.wf .nl{font-size:11.5px;font-weight:600}.wf .nn{font-size:19px;font-weight:700}.wf .nv{fill:var(--muted);font-size:11px}.wf .nd{fill:var(--muted);font-size:10.5px}.wf .no{fill:var(--rr);font-size:10.5px;font-weight:700}.legend{color:var(--muted);flex-wrap:wrap;gap:.3rem 1rem;padding:0 1rem .8rem;font-size:.78rem;display:flex}.legend .lg{align-items:center;gap:.35rem;display:inline-flex}.legend .sw{border-radius:2px;width:10px;height:10px;display:inline-block}.legend .ln{border-top:2px solid;width:16px;display:inline-block}.legend .ln.dash{border-top-style:dashed}
