:root{color:#1c1f24;--ink:#1c1f24;--muted:#5b6470;--line:#dde1e6;--panel:#fff;--brand:#0f2a4a;--accent:#1f6feb;--high:#1b7f3b;--high-bg:#e3f5e8;--medium:#8a5a00;--medium-bg:#fff4d6;--low:#b42318;--low-bg:#fde8e6;--none-bg:#eceff3;background:#f6f7f9;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;line-height:1.45}a{color:var(--accent)}code{word-break:break-all;font-size:.9em}h1{margin:0 0 12px;font-size:1.4rem}h2{margin:0 0 8px;font-size:1.1rem}h3{margin:12px 0 6px;font-size:.95rem}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:4px;padding:6px 12px}button[type=submit]{background:var(--accent);border-color:var(--accent);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:4px;padding:5px 8px}.app-header{background:var(--brand);color:#fff;flex-wrap:wrap;align-items:center;gap:10px 20px;padding:10px 16px;display:flex}.brand small{opacity:.8;margin-left:8px;font-weight:400}.app-header nav{flex-wrap:wrap;gap:2px 14px;display:flex}.app-header nav a{color:#fff;opacity:.8;border-bottom:2px solid #0000;padding:4px 0;text-decoration:none}.app-header nav a.active{opacity:1;border-bottom-color:#fff}.header-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.control{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.control .alert{flex-basis:100%;margin:0;font-size:.85rem}.reviewer{position:relative}.reviewer-toggle{color:#fff;background:#ffffff1f;border-color:#fff6}.reviewer-form{z-index:10;background:var(--panel);width:320px;max-width:calc(100vw - 32px);color:var(--ink);border:1px solid var(--line);border-radius:6px;gap:6px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 6px 20px #0000002e}.reviewer-form label{color:var(--muted);font-size:.85rem}.reviewer-form .hint{color:var(--muted);margin:4px 0;font-size:.8rem}.account{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.account-name{overflow-wrap:anywhere;font-size:.9rem}.account button{color:#fff;background:#ffffff1f;border-color:#fff6}main{max-width:1400px;margin:0 auto;padding:16px}main.auth-page{place-items:center;max-width:none;min-height:100vh;display:grid}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:8px;width:100%;max-width:380px;padding:20px;display:grid}.auth-card h1,.auth-card p{margin:0}.auth-card label{color:var(--muted);font-size:.85rem}.auth-card input{width:100%;min-width:0}.auth-card button[type=submit]{justify-self:start;margin-top:4px}.kill-switch{background:var(--medium-bg);border-bottom:1px solid #f0d38a}.kill-switch p,.shell-alert{max-width:1400px;margin:0 auto;padding:10px 16px}.kill-switch p{overflow-wrap:anywhere}.kill-switch time{white-space:nowrap}.shell-alert .alert{margin:0}.muted{color:var(--muted)}.small{font-size:.85rem}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.filters{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:12px;display:flex}.filters label+select{margin-right:10px}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.93rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 12px}th{color:var(--muted);white-space:nowrap;font-size:.85rem;font-weight:600}tfoot th{border-bottom:0}tr.row-link{cursor:pointer}tr.row-link:hover{background:#f0f4fa}tr.group-head td{background:#f8f9fb;border-bottom-color:#0000}.group-title{font-weight:600}tr.group-member td:nth-child(2){border-left:3px solid var(--line);padding-left:28px}.related{gap:8px;margin:0;padding:0;list-style:none;display:grid}.badge,.status,.flag{white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.8rem;display:inline-block}.band-high{background:var(--high-bg);color:var(--high)}.band-medium{background:var(--medium-bg);color:var(--medium)}.band-low{background:var(--low-bg);color:var(--low)}.band-none{background:var(--none-bg);color:var(--muted)}.status{color:var(--brand);background:#e8edf5}.status-approved,.status-auto_approved,.status-completed,.status-ok{background:var(--high-bg);color:var(--high)}.status-corrected,.status-running{background:var(--medium-bg);color:var(--medium)}.status-rejected,.status-failed,.status-error,.flag{background:var(--low-bg);color:var(--low)}.alert{background:var(--low-bg);color:#7a1b13;border:1px solid #f1b8b3;border-radius:6px;padding:10px 12px}.notice{background:var(--high-bg);border:1px solid #b7dfc3;border-radius:6px;padding:10px 12px}.notice.warn{background:var(--medium-bg);border-color:#f0d38a}.empty{text-align:center;color:var(--muted);background:var(--panel);border:1px dashed var(--line);border-radius:6px;padding:24px}.card{background:var(--panel);border:1px solid var(--line);border-radius:6px;margin-bottom:14px;padding:14px 16px}.card.exception{border-left:4px solid var(--low)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:14px;display:grid}.grid-2>*{min-width:0}.facts{grid-template-columns:max-content 1fr;gap:4px 14px;margin:0;display:grid}.facts dt{color:var(--muted)}.facts dd{overflow-wrap:anywhere;margin:0}.page-header{margin-bottom:14px}.page-header .meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;display:flex}.decision-forms{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:12px;display:grid}.decision-forms form{border:1px solid var(--line);border-radius:6px;align-content:start;gap:6px;min-width:0;padding:12px;display:grid}.decision-forms input,.decision-forms select,.decision-forms textarea,.reviewer-form input{width:100%;min-width:0}.control select{max-width:min(320px,100vw - 96px)}.decision-forms h3{margin:0}.decision-forms label{color:var(--muted);font-size:.85rem}.decision-forms button{justify-self:start;margin-top:4px}.replace-coding{margin-top:12px}.replace-coding h3{margin:0 0 6px}.replace-coding .replace{background:var(--accent);border-color:var(--accent);color:#fff}.events{margin:0;padding:0;list-style:none}.events li{border-bottom:1px solid var(--line);padding:8px 0}.events li:last-child{border-bottom:0}.events time{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:8px}pre{background:#f0f2f5;border-radius:4px;padding:8px;font-size:.8rem;overflow-x:auto}details summary{cursor:pointer;color:var(--muted);font-size:.85rem}@media (width<=640px){main{padding:12px}.kill-switch p,.shell-alert{padding:10px 12px}.header-controls{width:100%;margin-left:0}.reviewer-form{width:auto;position:fixed;top:auto;left:16px;right:16px}th,td{padding:6px 8px}.facts{grid-template-columns:1fr;gap:2px}.facts dt{margin-top:6px}}.proposal-list{gap:14px;margin-bottom:14px;display:grid}.rule-proposal .page-header{margin-bottom:8px}.rule-proposal.has-conflicts{border-left:4px solid var(--medium)}.conflicts{background:var(--medium-bg);border:1px solid #f0d38a;border-radius:6px;margin:0;padding:8px 12px 8px 28px}.rule-decision{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.rule-decision form{gap:6px;max-width:520px;display:grid}.rule-decision h3{margin:0}.rule-decision label{color:var(--muted);font-size:.85rem}.rule-decision input,.rule-decision textarea{width:100%;min-width:0}.decided{margin:12px 0 0}.actions{flex-wrap:wrap;gap:8px;margin:4px 0 0;display:flex}.list-more{margin-top:12px}.notice p{margin:0 0 4px}.notice p:last-child{margin-bottom:0}.status-amended,.status-awaiting_client,.status-investigating{background:var(--medium-bg);color:var(--medium)}.status-active{background:var(--high-bg);color:var(--high)}.status-retired,.status-closed{background:var(--none-bg);color:var(--muted)}.summary{margin-bottom:14px}.stat-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 10px;padding:0;list-style:none;display:grid}.stat-cards li{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:10px 12px}.stat-label{color:var(--muted);font-size:.8rem;display:block}.stat-value{font-variant-numeric:tabular-nums;font-size:1.4rem}.stat-cards li.flagged .stat-value{color:var(--low)}.age-buckets{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 8px;display:grid}.age-buckets .bucket{border:1px solid var(--line);background:var(--none-bg);border-radius:6px;padding:8px 12px}.age-buckets dt{color:var(--muted);font-size:.8rem}.age-buckets dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.2rem}.age-buckets .age-warn{background:var(--medium-bg);border-color:#f0d38a}.age-buckets .age-late{background:var(--low-bg);border-color:#f1b8b3}.breakdown{margin:0}.age{border-radius:999px;padding:1px 8px;display:inline-block}.age.age-warn{background:var(--medium-bg);color:var(--medium)}.age.age-late{background:var(--low-bg);color:var(--low);font-weight:600}.assign{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.assign input{width:150px}.assign .alert{flex-basis:100%;margin:0;font-size:.85rem}@media (width<=640px){.age-buckets{grid-template-columns:repeat(2,minmax(0,1fr))}}.report-window input[type=number]{width:90px}.report-window input[type=month]{width:160px}.metric-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stat-note{color:var(--muted);font-size:.8rem;display:block}.stat-target{border-top:1px solid var(--line);margin-top:6px;padding-top:6px;font-size:.78rem;display:block}.mom th:first-child,.mom td:first-child{z-index:1;background:var(--panel);position:sticky;left:0}.mom tbody th{color:var(--ink);white-space:normal;font-weight:500}.mom tr.group th{background:var(--none-bg);color:var(--muted);font-weight:600}.flag-cell{color:var(--low);font-weight:600}.counts{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px 12px;margin:0 0 12px;display:grid}.counts dt{color:var(--muted);font-size:.8rem}.counts dd{font-variant-numeric:tabular-nums;margin:0}.checks{gap:4px;margin:0 0 12px;padding:0;list-style:none;display:grid}.checks li{border:1px solid var(--line);border-radius:4px;padding:4px 10px}.checks .check-ok{background:var(--high-bg);color:var(--high);border-color:#b7dfc3}.checks .check-fail{background:var(--low-bg);color:var(--low);border-color:#f1b8b3;font-weight:600}.notes{margin:10px 0 0;padding-left:18px}.blockers,.triggers{margin:0;padding-left:18px}.tasks td:first-child{min-width:160px}.tasks .blockers,.tasks .triggers{min-width:220px}.triggers{background:var(--low-bg);color:var(--low);border:1px solid #f1b8b3;border-radius:6px;padding:6px 12px 6px 28px}tr.triggered>td{background:#fff7f6}.level{font-weight:600}.status-promote{background:var(--high-bg);color:var(--high)}.status-hold{background:var(--none-bg);color:var(--muted)}.status-demote{background:var(--low-bg);color:var(--low)}.link-button{color:var(--accent);background:0 0;border:0;padding:0;text-decoration:underline}.row-panel-row>td{background:#f9fafb}.row-panel{max-width:calc(100vw - 26px);position:sticky;left:0}.row-form{gap:6px;max-width:520px;display:grid}.row-form h3{margin:0}.row-form label{color:var(--muted);font-size:.85rem}.row-form input,.row-form select,.row-form textarea{width:100%;min-width:0}.row-form .alert ul{margin:4px 0 0;padding-left:18px}.notice.small{margin:6px 0 0;padding:6px 8px}.summary-line{color:var(--ink);flex-basis:100%}.tabs{flex-wrap:wrap;gap:4px;display:flex}.tabs a{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:999px;padding:4px 12px;text-decoration:none}.tabs a[aria-current=page]{background:var(--brand);border-color:var(--brand);color:#fff}.tone-ok{background:var(--high-bg);color:var(--high)}.tone-warn{background:var(--medium-bg);color:var(--medium)}.tone-bad{background:var(--low-bg);color:var(--low);font-weight:600}.tone-neutral{background:var(--none-bg);color:var(--muted)}.flags{flex-wrap:wrap;gap:4px;display:inline-flex}.flag.warn{background:var(--medium-bg);color:var(--medium)}.status-on_hold,.status-void{background:var(--low-bg);color:var(--low)}.status-received,.status-duplicate{background:var(--none-bg);color:var(--muted)}.status-posted,.status-paid{background:var(--high-bg);color:var(--high)}.bill-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:0 14px;display:grid}.document-frame{border:1px solid var(--line);background:#f0f2f5;border-radius:4px;width:100%;height:72vh;min-height:420px;margin-bottom:8px;display:block}.document-frame p{padding:12px}.facts dd.amount{font-variant-numeric:tabular-nums}ul.plain{margin:0;padding:0;list-style:none}.bill-checks li{align-items:flex-start;gap:8px;display:flex}.bill-checks li.check-ok,.bill-checks li.check-warn,.bill-checks li.check-fail{color:var(--ink);font-weight:400}.bill-checks li>div{min-width:0}.bill-checks ul{margin:4px 0 0;padding-left:18px}.checks .check-warn{background:var(--medium-bg);border-color:#f0d38a}.bill-checks .mark{font-weight:700}.bill-checks .check-ok .mark{color:var(--high)}.bill-checks .check-warn .mark{color:var(--medium)}.bill-checks .check-fail{border-left:4px solid var(--low)}.bill-checks .check-fail .mark{color:var(--low)}.match-status{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 10px;display:flex}.variances{background:var(--low-bg);color:#7a1b13;border:1px solid #f1b8b3;border-radius:6px;margin:0 0 10px;padding:8px 12px 8px 28px}tr.variance>td{background:#fff7f6}.variance-details{color:var(--low);margin:4px 0 0;padding-left:16px;font-size:.85rem}.bill-lines .coding-input{width:7em;min-width:0}.bill-lines td.changed{background:var(--medium-bg)}.post-bill{justify-items:start;gap:6px;margin-top:8px;display:grid}.post-bill p{margin:0}.ageing td.overdue{color:var(--low);font-weight:600}.ageing td:first-child,.bills-table td:first-child,.bill-lines td:nth-child(2),.order-match td:nth-child(2){min-width:13em}@media (width<=900px){.bill-layout{grid-template-columns:minmax(0,1fr)}.document-frame{height:60vh;min-height:320px}}.close-periods-wrap{margin-bottom:14px}.close-periods tr.selected>td{background:#f0f4fa}.close-periods a[aria-current=page]{font-weight:600}.close-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 10px;display:flex}.closed-banner{border-left:4px solid var(--high);margin-bottom:12px}.close-blockers{background:var(--low-bg);border:1px solid #f1b8b3;border-left:4px solid var(--low);color:#7a1b13;border-radius:6px;margin:0 0 12px;padding:10px 12px}.close-blockers h3{color:var(--low);margin:0 0 6px}.close-blockers ul{margin:0 0 6px;padding-left:18px}.close-blockers p{margin:0}.checklist td:first-child{min-width:12em}.checklist td:nth-child(3){min-width:16em}.checklist tr.state-overdue>td:first-child{box-shadow:inset 4px 0 0 var(--low)}.evidence{margin:6px 0 0;font-size:.85rem}.evidence>div{overflow-wrap:anywhere;margin-top:2px}.evidence dt{color:var(--muted);display:inline}.evidence dt:after{content:": "}.evidence dd{margin:0;display:inline}.evidence ul{margin:2px 0 0;padding-left:18px}.evidence .amount,.accrual .amount{font-variant-numeric:tabular-nums}.confirm-item{flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:14em;display:flex}.confirm-item label{color:var(--muted);flex-basis:100%;font-size:.8rem}.confirm-item input{flex:10em;min-width:0}.findings{margin-top:12px}.findings h3{margin:0 0 6px}.findings.severity-material h3{color:var(--low)}.findings.severity-review h3{color:var(--medium)}.findings details{margin-top:4px}.findings table{table-layout:fixed;min-width:640px}.findings th:first-child{width:10em}.findings th:nth-child(2){width:12em}.findings th:nth-child(3){width:8em}.findings th:nth-child(5){width:9em}.findings td{overflow-wrap:anywhere}.accrual{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.accrual h3{margin:0 0 8px}.accrual .facts{margin-bottom:10px}.decision-forms h4{margin:0;font-size:.95rem}.close-form{gap:6px;max-width:640px;display:grid}.close-form>label{color:var(--muted);font-size:.85rem}.close-form textarea{width:100%;min-width:0}.close-form .actions{margin-top:4px}.waivers{border:1px solid var(--line);border-radius:6px;gap:10px;min-width:0;margin:0 0 6px;padding:10px 12px;display:grid}.waivers legend{padding:0 4px;font-weight:600}.waivers>p,.waiver p{margin:0}.waiver{gap:2px;min-width:0;display:grid}.waiver label{font-weight:600}.status-replied{background:var(--high-bg);color:var(--high)}.status-cancelled{background:var(--none-bg);color:var(--muted)}pre.email-body{border:1px solid var(--line);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;background:#fbfcfd;border-radius:6px;margin:10px 0 0;padding:12px 14px;font-family:inherit;font-size:.95rem}.decision-forms label.check{color:var(--ink);align-items:center;gap:8px;font-size:.93rem;display:flex}.decision-forms .check input{width:auto}.decision-forms p.small{margin:0}.drafts-table td:first-child,.drafts-table td:nth-child(2){min-width:12em}.drafts-table td:last-child{min-width:11em}.status-tiles li{background:0 0;border:0;padding:0}.status-tiles .tile{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:6px;width:100%;height:100%;padding:10px 12px;display:block}.status-tiles .tile[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.status-tiles .tone-edge-bad .stat-value{color:var(--low)}.status-tiles .tone-edge-warn .stat-value{color:var(--medium)}.settlement-window input[type=month],.settlement-window input[type=date]{width:160px}.settlement-window .alert{flex-basis:100%;margin:0}.settlement-table tr.day-head th{color:var(--ink);background:#f0f4fa;font-size:.9rem}.settlement-table td.explanation{min-width:16em}.settlement-table td.num .small{white-space:normal}.settlement-table td.review-links{min-width:9em}.settlement-table td.review-links>div+div{margin-top:4px}.diff-flagged{color:var(--low);font-weight:600}.status-reversed,.status-superseded{background:var(--none-bg);color:var(--muted)}.ledger-table td:nth-child(2),.ledger-table td:nth-child(5){min-width:12em}.ledger-action form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ledger-action label{color:var(--muted);font-size:.85rem}.ledger-action input{width:12em}.ledger-action .alert{min-width:16em;margin:6px 0 0}
