:root{color-scheme:light;--brand: #feb022;--brand-ink: #7a4b00;--orange: #c45f00;--ink: #262626;--ink-2: #4a4540;--muted: #736b62;--ground: #f6f3ee;--cream: #fffbf5;--surface: #ffffff;--surface-2: #f3eee6;--line: #e9e2d6;--good: #1b7f4b;--good-bg: #e2f3e9;--warn: #8a5a00;--warn-bg: #fdf0d2;--bad: #b42318;--bad-bg: #fde7e4;--absent: #ebe5db;--c-billed: #b4530a;--c-pending: #e8a33d;--r-sm: 6px;--r: 8px;--r-lg: 14px;--shadow-float: 0 12px 32px -8px rgb(60 40 10 / .22), 0 2px 6px rgb(60 40 10 / .08);--ease: cubic-bezier(.2, .7, .2, 1);--z-sticky: 10;--z-side: 30;--z-ask: 35;--z-toast: 40;--z-drop: 50;--side-w: 264px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font:14px/1.5 Roboto,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--ground);-webkit-font-smoothing:antialiased;touch-action:manipulation;-webkit-tap-highlight-color:transparent}h1,h2,h3,.brand-title,.kpi-value,.crf-id,.nav,.btn,.seg button,.state-pill{font-family:Inter,system-ui,sans-serif}h1,h2,h3{text-wrap:balance}button,select,input,textarea{font:inherit;color:inherit}a{color:var(--orange);text-underline-offset:2px}code{font-size:.92em;background:var(--surface-2);padding:1px 5px;border-radius:4px}:focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:4px}main:focus{outline:none}::selection{background:#fde3a8}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:fixed;left:12px;top:-48px;z-index:var(--z-drop);background:var(--ink);color:#fff;padding:10px 14px;border-radius:var(--r);text-decoration:none;transition:transform .15s var(--ease)}.skip:focus{transform:translateY(60px)}.layout{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);min-height:100dvh}.side{background:var(--cream);padding:20px 14px 16px;display:flex;flex-direction:column;gap:20px;position:sticky;top:0;height:100dvh;overflow-y:auto;overscroll-behavior:contain;box-shadow:inset -1px 0 0 var(--line)}.brand{position:relative;padding:18px 12px 16px;margin:-4px -2px 0;background:#fff;border-radius:14px;box-shadow:0 0 0 1px #ece3cf,0 1px 2px #55461e0f,0 8px 24px -12px #55461e2e}.lockup{display:grid;justify-items:center;gap:7px}.lockup img{display:block;width:176px;height:auto}.lockup span{font:600 10px/1 Cormorant Garamond,Georgia,serif;letter-spacing:.3em;text-transform:uppercase;color:#262626;padding-left:.3em}.brand .brand-title{display:grid;justify-items:center;gap:4px;margin-top:16px;text-align:center}.brand .brand-title:before{content:"";width:72px;height:7px;margin-bottom:8px;background:linear-gradient(#bda235,#bda235) center / 100% 1px no-repeat,radial-gradient(circle,#bda235 2.5px,#fff 3px) center / 9px 9px no-repeat}.brand .brand-title{font:600 20px/1.1 Cormorant Garamond,Georgia,serif;letter-spacing:.005em;color:#1c1b17;white-space:nowrap}.powered{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:12px;font-size:11px;color:var(--muted)}.powered img{height:13px;width:auto;display:block}.brand-text{min-width:0}.brand-title{font-weight:700;font-size:15px;letter-spacing:-.01em}.brand-sub{font-size:12px;color:var(--muted);line-height:1.3}.brand-text{flex:1}.brand .side-close{display:none;position:absolute;top:0;right:0}.navs{display:flex;flex-direction:column;gap:18px}.nav-group{display:flex;flex-direction:column;gap:2px}.side-label{font-size:12px;font-weight:500;color:var(--muted);padding:0 10px 4px}.nav{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r);color:var(--ink-2);text-decoration:none;font-weight:500;font-size:14px;transition:background-color .15s var(--ease),color .15s var(--ease)}.nav svg{flex:none;color:var(--muted);transition:color .15s var(--ease)}.nav:hover{background:var(--surface-2);color:var(--ink)}.nav.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:inset 3px 0 0 var(--brand),0 1px 2px #3c280a0f}.nav.on svg{color:var(--ink)}.nav .count{margin-left:auto;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.sources{margin-top:auto;display:grid;gap:6px;padding:12px;border-radius:var(--r);background:var(--surface-2);text-decoration:none;color:var(--ink);font-size:13px;transition:background-color .15s var(--ease)}.sources:hover{background:#ece5d9}.source{display:flex;align-items:center;gap:8px}.source-state{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap}.dot{width:8px;height:8px;border-radius:50%;background:#b8afa3;flex:none}.dot.on{background:var(--good)}.dot.wait{background:var(--brand)}.body{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:center;gap:12px;padding:10px 28px;min-height:60px;background:var(--ground);box-shadow:0 1px 0 var(--line)}.topbar .menu-btn{display:none}.crumbs{display:flex;gap:8px;align-items:center;min-width:0;font-size:14px;color:var(--muted)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.crumbs>span:last-child{color:var(--ink);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.demo-chip{font-size:12px;font-weight:500;color:var(--warn);background:var(--warn-bg);padding:5px 10px;border-radius:var(--r-sm);text-decoration:none;white-space:nowrap}.demo-chip:hover{background:#fbe6b5}.main{padding:28px 28px 64px;width:100%;max-width:1400px}.scrim{display:none}.btn{display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:7px 14px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink);text-decoration:none;font-weight:500;font-size:14px;white-space:nowrap;transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease),transform .1s var(--ease)}.btn:hover:not(:disabled):not(.disabled){background:var(--surface-2);border-color:#dcd3c4}.btn:active:not(:disabled):not(.disabled){transform:translateY(1px)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--ink);font-weight:600}.btn.primary:hover:not(:disabled):not(.disabled){background:#f5a50f;border-color:#f5a50f}.btn:disabled,.btn.disabled{opacity:.55;cursor:not-allowed}.btn.sm{min-height:30px;padding:4px 10px;font-size:13px}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn.armed,.btn.ghost.armed{background:var(--bad);border-color:var(--bad);color:#fff}.btn svg{flex:none}label.btn{position:relative}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:var(--r);background:transparent;color:var(--ink-2);cursor:pointer;transition:background-color .15s var(--ease)}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.link{background:none;border:0;padding:0;color:var(--orange);cursor:pointer;text-align:left;text-decoration:none;font-weight:500}.link:hover{text-decoration:underline}.link.small{font-size:12px;margin-left:8px}.link.strong{font-weight:600}.row-link{color:var(--ink);text-decoration:none}.row-link:hover{color:var(--orange);text-decoration:underline}.row-toggle{background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit;text-align:left}input:not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:7px 10px;min-height:36px;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}input:hover,select:hover,textarea:hover{border-color:#d6ccbb}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px #c45f002e}select{padding-right:28px;background-color:var(--surface)}textarea{width:100%;resize:vertical;line-height:1.45}.seg{display:inline-flex;padding:3px;gap:2px;background:var(--surface-2);border-radius:var(--r);flex-wrap:wrap}.seg button{border:0;background:transparent;padding:5px 12px;border-radius:var(--r-sm);cursor:pointer;font-size:13px;font-weight:500;color:var(--ink-2);transition:background-color .15s var(--ease),color .15s var(--ease)}.seg button:hover{color:var(--ink);background:#fff9}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #3c280a1f}.seg-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:2px}.pill{border:0;background:var(--surface-2);border-radius:var(--r-sm);padding:5px 11px;cursor:pointer;font-size:13px;font-weight:500;color:var(--ink-2);transition:background-color .15s var(--ease)}.pill:hover{background:#ece5d9}.pill.on{background:var(--ink);color:#fff}.month{min-width:170px}.page.narrow{max-width:860px}.head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:24px;flex-wrap:wrap}.head h1{margin:0;font-size:28px;line-height:1.15;font-weight:700;letter-spacing:-.02em}.sub,.lede{color:var(--muted);margin-top:6px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;max-width:75ch}.lede{display:block;font-size:15px;margin:6px 0 0}.sub.small{font-size:12px;margin-top:4px}.head-actions,.range{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.search-field{display:flex;align-items:center;gap:8px;flex:1 1 280px;max-width:420px;padding:0 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);color:var(--muted)}.search-field:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px #c45f002e}.search-field input{border:0!important;box-shadow:none!important;padding-left:0;flex:1;min-width:0;background:transparent}.chip{background:var(--surface-2);border-radius:var(--r-sm);padding:2px 9px;color:var(--ink-2);font-size:12px}.chip.ghost{background:transparent;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}.nowrap{white-space:nowrap}.muted{color:var(--muted);font-size:12px}.strong{font-weight:500}.num{text-align:right!important;font-variant-numeric:tabular-nums}.empty{color:var(--muted)}.empty.pad{padding:28px 20px;margin:0}.dim{opacity:.6;transition:opacity .2s var(--ease)}.scroll-x{overflow-x:auto}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.card{background:var(--surface);border-radius:var(--r-lg);padding:20px;margin-bottom:20px;box-shadow:0 1px 2px #3c280a0d;overflow-x:auto}.card.flush{padding:0}.card.flush>.tbl th:first-child,.card.flush>.tbl td:first-child,.card.flush>.paged>.tbl th:first-child,.card.flush>.paged>.tbl td:first-child{padding-left:20px}.card.flush>.tbl th:last-child,.card.flush>.tbl td:last-child,.card.flush>.paged>.tbl th:last-child,.card.flush>.paged>.tbl td:last-child{padding-right:20px}.card h2,.card-title{font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0 0 14px}.card.flush>.card-title{padding:18px 20px 0}.card h2 .muted{font-weight:400;font-family:Roboto,sans-serif;margin-left:6px}.card h3{margin:24px 0 10px;font-size:14px;font-weight:600}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.card-head h2{margin:0}p.small{font-size:13px;margin:0 0 12px;max-width:80ch}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:20px}.kpi{background:var(--surface);border-radius:var(--r-lg);padding:16px 18px;box-shadow:0 1px 2px #3c280a0d}.kpi-label{font-size:13px;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:7px}.kpi.good .kpi-label:before,.kpi.warn .kpi-label:before,.kpi.bad .kpi-label:before{content:"";width:8px;height:8px;border-radius:50%;flex:none}.kpi.good .kpi-label:before{background:var(--good)}.kpi.warn .kpi-label:before{background:var(--brand)}.kpi.bad .kpi-label:before{background:var(--bad)}.kpi-value{font-size:26px;font-weight:700;margin:4px 0 2px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15;overflow-wrap:anywhere}.kpi.bad .kpi-value{color:var(--bad)}.kpi-note{font-size:12px;color:var(--muted)}.tbl{width:100%;border-collapse:collapse}.tbl th,.tbl td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.tbl th{font-size:12px;color:var(--muted);font-weight:500;white-space:nowrap;vertical-align:bottom}.tbl tbody tr:last-child td{border-bottom:0}.tbl tfoot td{font-weight:600;border-bottom:0;border-top:1px solid var(--line)}.tbl.hover tbody tr{cursor:pointer;transition:background-color .12s var(--ease)}.tbl.hover tbody tr:hover,.tbl tr.open{background:#fbf8f3}.tbl.compact th,.tbl.compact td{padding:7px 10px;font-size:13px}.tbl tr.clickable{cursor:pointer}.tbl tr.clickable:hover{background:#fbf8f3}.tbl tr.group td{background:var(--surface-2)}.tbl td.indent{padding-left:28px}.tbl tr.total td{font-weight:600;border-top:2px solid var(--ink)}.tbl tfoot tr.light td{font-weight:400;color:var(--muted);border:0;padding-top:3px;padding-bottom:3px}.tbl tfoot tr.grand td{font-size:16px;border-top:2px solid var(--ink)}.tbl select{max-width:260px;min-height:32px;padding:4px 8px}.tbl td.good,span.good{color:var(--good)}.tbl td.bad,span.bad,.bad-text{color:var(--bad)}.tbl td.warn{color:var(--warn)}.tbl .clip{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tbl tr.expand>td{background:#fbf8f3;padding:16px;cursor:default}.tbl.inner{background:var(--surface);border-radius:var(--r)}.tbl.edit td{padding:6px}.tbl.edit input,.tbl.edit select{width:100%;min-width:96px;min-height:34px}.tbl.edit td:nth-child(2) input,.tbl.edit td:nth-child(3) select{min-width:170px}.tbl a{color:var(--orange)}.tag{display:inline-block;font-size:12px;line-height:18px;font-weight:500;padding:1px 8px;border-radius:var(--r-sm);background:var(--absent);color:var(--ink-2);white-space:nowrap}.tag.good{background:var(--good-bg);color:var(--good)}.tag.warn{background:var(--warn-bg);color:var(--warn)}.tag.bad{background:var(--bad-bg);color:var(--bad)}.state{font-size:12px;font-weight:500;padding:2px 8px;border-radius:var(--r-sm);white-space:nowrap}.state.open{background:var(--absent);color:var(--ink-2)}.state.review{background:var(--warn-bg);color:var(--warn)}.state.reconciled{background:var(--good-bg);color:var(--good)}.state-pill{font-size:12px;font-weight:600;padding:4px 10px;border-radius:var(--r-sm);background:var(--absent);color:var(--ink-2);white-space:nowrap}.state-pill.good{background:var(--good-bg);color:var(--good)}.state-pill.warn{background:var(--warn-bg);color:var(--warn)}.rev{font-size:11px;margin-left:6px;padding:1px 6px;border-radius:4px;background:var(--warn-bg);color:var(--warn);font-weight:600;vertical-align:1px}.bar{height:6px;background:var(--absent);border-radius:999px;overflow:hidden;margin-bottom:4px}.bar span{display:block;height:100%}.bar .good{background:var(--good)}.bar .warn{background:var(--brand)}.bar .bad{background:var(--bad)}.banner,.note{display:block;padding:12px 14px;border-radius:var(--r);background:var(--warn-bg);color:var(--ink);margin:0 0 16px;font-size:13px}.banner.ok,.note.good{background:var(--good-bg)}.banner.err,.note.bad{background:var(--bad-bg)}.note.with-icon{display:flex;gap:10px;align-items:flex-start}.note.bad svg{color:var(--bad);flex:none}.note .btn{margin-left:auto}.note.warn{background:var(--warn-bg)}.rev-banner{display:block}.empty-state{max-width:560px;margin:64px auto;text-align:left;padding:32px;background:var(--surface);border-radius:var(--r-lg)}.empty-state h2{margin:0 0 8px;font-size:22px;letter-spacing:-.01em}.empty-state p{margin:0 0 16px;color:var(--ink-2)}.empty-actions{display:flex;gap:8px;flex-wrap:wrap}.hero{padding:60px 0;text-align:center;color:var(--muted)}.field-error{color:var(--bad);font-size:13px;margin:0}.sk{background:linear-gradient(90deg,#ece6dc,#f4efe7,#ece6dc);background-size:200% 100%;border-radius:var(--r);animation:shimmer 1.4s linear infinite}.sk-title{height:30px;width:280px;margin-bottom:10px}.sk-sub{height:14px;width:420px;max-width:80%;margin-bottom:24px}.sk-kpi{height:92px;border-radius:var(--r-lg)}.sk-row{height:18px;margin:14px 0}.sk-row:nth-child(odd){width:92%}.toasts{position:fixed;right:20px;bottom:20px;z-index:var(--z-toast);display:grid;gap:8px;width:min(440px,calc(100vw - 32px))}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 8px 12px 14px;border-radius:var(--r);background:var(--ink);color:#fff;font-size:13px;box-shadow:var(--shadow-float);animation:toast-in .22s var(--ease)}.toast span{flex:1;padding-top:1px;overflow-wrap:anywhere}.toast.ok svg:first-child{color:#7bd3a1}.toast.err svg:first-child{color:#ffb4a8}.toast .icon-btn{width:28px;height:28px;color:#d8d2ca;margin-top:-4px}.toast .icon-btn:hover{background:#ffffff1a;color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.dropzone{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-drop);background:#26262673;display:grid;place-items:center;pointer-events:none;animation:fade .15s var(--ease)}.dropzone>div{display:grid;justify-items:center;gap:6px;padding:36px 48px;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-float);outline:2px dashed var(--brand);outline-offset:-10px}.dropzone b{font:600 18px Inter,sans-serif}.dropzone span{color:var(--muted);font-size:13px}@keyframes fade{0%{opacity:0}}.legend{display:flex;gap:6px 14px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:12px}.legend .cell{margin-left:8px}.legend .cell:first-child{margin-left:0}.grid-wrap{overflow-x:auto}.grid{border-collapse:separate;border-spacing:3px;font-size:12px}.grid th{font-weight:500;color:var(--muted);min-width:26px}.grid thead th{font-variant-numeric:tabular-nums}.dow{font-size:10px}.grid .sticky{position:sticky;left:0;background:var(--surface);text-align:left;padding-right:12px;white-space:nowrap;color:var(--ink);min-width:150px;z-index:1}.grid td{text-align:center}.cell{display:inline-block;width:18px;height:18px;border-radius:4px;vertical-align:middle}.cell.valid{background:var(--good)}.cell.unverified{background:var(--brand)}.cell.absent{background:var(--absent)}.cell.upcoming{background:transparent;box-shadow:inset 0 0 0 1px var(--line)}.cell.duplicate{background:repeating-linear-gradient(45deg,var(--good) 0 3px,#fff 3px 6px)}button.cell{border:0;padding:0;cursor:pointer;transition:transform .1s var(--ease)}button.cell:hover{transform:scale(1.15)}.cell.sel{outline:2px solid var(--ink);outline-offset:1px}.grid .foot td{font-size:11px;font-variant-numeric:tabular-nums;padding:2px;border-radius:4px}.grid .foot .ok{background:var(--good-bg);color:var(--good)}.grid .foot .short{background:var(--bad-bg);color:var(--bad)}.grid .foot .over{background:var(--warn-bg);color:var(--warn)}.grid .foot .up{color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.coverage{display:flex;gap:16px;align-items:flex-start}.coverage .grid-wrap{flex:1;min-width:0}.detail{width:270px;flex-shrink:0;border-radius:var(--r);padding:14px 16px;background:var(--surface-2);font-size:13px}.detail-head{display:flex;justify-content:space-between;align-items:center}.detail-state{margin:10px 0;padding:6px 10px;border-radius:var(--r-sm);font-weight:500}.detail-state.valid{background:var(--good-bg);color:var(--good)}.detail-state.unverified{background:var(--warn-bg);color:var(--warn)}.detail-state.absent,.detail-state.duplicate{background:var(--absent)}.detail dl,.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0}.detail dt,.facts dt{color:var(--muted)}.detail dd,.facts dd{margin:0;font-variant-numeric:tabular-nums}.statusbar{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:var(--r-lg);margin-bottom:16px;flex-wrap:wrap;background:var(--surface);box-shadow:inset 4px 0 0 var(--line),0 1px 2px #3c280a0d}.statusbar.review{box-shadow:inset 4px 0 0 var(--brand),0 1px 2px #3c280a0d}.statusbar.reconciled{box-shadow:inset 4px 0 0 var(--good),0 1px 2px #3c280a0d}.statusbar input{flex:1;min-width:200px}.window{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:18px;font-size:13px}.alerts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.alerts li{font-size:13px;padding:8px 12px;border-radius:var(--r-sm);background:var(--surface-2)}.alerts li.bad{background:var(--bad-bg)}.alerts .tag{margin-right:8px;font-size:11px}.versions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.versions>li{box-shadow:inset 2px 0 0 var(--line);padding-left:14px}.versions>li:first-child{box-shadow:inset 2px 0 0 var(--brand)}.v-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.changes{margin:6px 0 0;padding-left:18px;font-size:13px}.conn-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.conn-head h2{margin-bottom:4px}.conn-head p{margin:0;max-width:60ch;font-size:13px}.conn-body{margin-top:18px;padding-top:18px;box-shadow:0 -1px 0 var(--line);display:grid;gap:14px;justify-items:start}.conn-body p{margin:0}.form{max-width:420px}.field{display:grid;gap:6px;width:100%;font-size:13px;font-weight:500;color:var(--ink-2)}.field input{width:100%;font-weight:400}.flags{margin:0;padding-left:16px;font-size:12px}.flags li.over,.flags li.unapproved,.flags li.hours{color:var(--bad)}.flags li.under,.flags li.pending,.flags li.disputed,.flags li.duplicate{color:var(--warn)}.signoff{display:grid;gap:8px;margin-top:16px;max-width:760px}.signoff textarea{width:100%;resize:vertical}.signoff-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:4px}.signoff-sep{width:1px;height:24px;background:var(--line);margin:0 4px}.invoice{box-shadow:inset 4px 0 0 var(--line),0 1px 2px #3c280a0d}.invoice.issued{box-shadow:inset 4px 0 0 var(--brand),0 1px 2px #3c280a0d}.invoice.paid{box-shadow:inset 4px 0 0 var(--good),0 1px 2px #3c280a0d}.inv-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:12px;flex-wrap:wrap}.steps{display:flex;list-style:none;margin:0;padding:0;gap:4px;flex-wrap:wrap}.steps li{padding:4px 12px;font-size:13px;color:var(--muted);background:var(--surface-2);border-radius:var(--r-sm);font-weight:500}.steps li.done{color:var(--ink);background:var(--good-bg)}.steps li.done:before{content:"✓ ";color:var(--good)}.steps li span{font-weight:400;color:var(--muted)}.inv-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inv-row label,.settings label{display:inline-flex;gap:8px;align-items:center;font-size:13px;color:var(--muted)}.settings input[type=number]{width:88px}.warn-inline{width:100%;margin:0}.settings{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;margin-bottom:14px;background:var(--surface-2);border-radius:var(--r)}.inv-note{display:flex;gap:8px;margin-top:14px}.inv-note input{flex:1}.adj{margin:14px 0 0;display:block}.adj ul{margin:6px 0 0;padding-left:18px}.fin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fin-grid>.card{min-width:0}.recv{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.recv .kpi-value{font-size:18px;white-space:nowrap}.recv-table td.num{white-space:nowrap}.trend .legend{gap:6px 10px}.trend .legend .link{margin-left:auto}.sw{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px}.sw.tick{height:2px;width:14px;background:var(--ink);border-radius:0;vertical-align:3px}.chart-wrap{position:relative}.chart-wrap svg{width:100%;height:auto;display:block}.chart-wrap .grid{stroke:var(--line);stroke-width:1}.chart-wrap .axis{font:11px Roboto,sans-serif;fill:var(--muted)}.chart-wrap .strong-axis{fill:var(--ink);font-weight:600}.chart-wrap .budget{stroke:var(--ink);stroke-width:2;stroke-linecap:round}.chart-wrap .hit{fill:transparent;cursor:pointer}.chart-wrap .col:hover .hit,.chart-wrap .hit.sel{fill:var(--surface-2)}.tip{position:absolute;top:0;transform:translate(-50%);background:var(--surface);border-radius:var(--r);padding:8px 10px;font-size:12px;box-shadow:var(--shadow-float);pointer-events:none;white-space:nowrap;z-index:2}.tip div{margin-top:2px}.burn{position:relative;display:flex;height:8px;background:var(--absent);border-radius:999px;overflow:hidden;margin-bottom:4px}.burn .b-billed{background:var(--c-billed)}.burn .b-pending{background:var(--c-pending);margin-left:2px}.burn .b-elapsed{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--ink)}.ask-btn{border-color:transparent;background:linear-gradient(135deg,#fff6e0,#ffe9bf);color:var(--brand-ink);font-weight:600}.ask-btn:hover:not(:disabled){background:linear-gradient(135deg,#ffefcc,#ffdf9e)!important;border-color:transparent!important}.ask-btn kbd{font:500 11px/1 Inter,system-ui,sans-serif;padding:3px 5px;border-radius:4px;background:#ffffffb3;color:var(--brand-ink)}.ask-orb{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;color:var(--brand-ink);background:radial-gradient(120% 120% at 20% 10%,#fff4d6,#ffd27a 45%,#feb022);box-shadow:0 10px 28px -10px #feb022cc,inset 0 1px #ffffffb3;animation:orb 6s var(--ease) infinite}@keyframes orb{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(-4deg)}}.ask-signin{padding:24px 4px}.ask-signin h2{font-size:24px;letter-spacing:-.02em;line-height:1.2;margin:18px 0 8px}.byo{margin:20px 0;padding:14px 16px;border-radius:var(--r);background:var(--cream);border-left:3px solid var(--brand);max-width:64ch;color:var(--ink-2)}.ask-signin-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.btn.lg{min-height:44px;padding:10px 18px;font-size:15px}.ask-pending{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:var(--r);background:var(--surface-2)}.ask-points{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:8px;color:var(--ink-2)}.ask-points li{display:flex;gap:8px;align-items:flex-start}.ask-points svg{color:var(--good);flex:none;margin-top:3px}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--orange);animation:spin .8s linear infinite;flex:none;display:inline-block}.spinner.sm{width:12px;height:12px;border-width:1.5px}@keyframes spin{to{transform:rotate(360deg)}}.row-gap{display:flex;gap:8px}.ask-empty{text-align:center;padding:32px 0 8px;display:flex;flex-direction:column;align-items:center}.ask-empty h2{font-size:22px;letter-spacing:-.02em;margin:18px 0 6px}.suggest{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:20px;width:100%;text-align:left}.suggest-card{border:0;background:var(--ground);border-radius:var(--r-lg);padding:14px 16px;cursor:pointer;display:grid;gap:4px;box-shadow:0 1px 2px #3c280a0d;transition:transform .2s var(--ease),box-shadow .2s var(--ease);animation:rise .5s var(--ease) both}.suggest-card:nth-child(2){animation-delay:.04s}.suggest-card:nth-child(3){animation-delay:.08s}.suggest-card:nth-child(4){animation-delay:.12s}.suggest-card:nth-child(5){animation-delay:.16s}.suggest-card:nth-child(6){animation-delay:.2s}.suggest-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-float)}.suggest-card b{font-family:Inter,system-ui,sans-serif;font-size:14px}.suggest-card span{color:var(--muted);font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}.thread{list-style:none;margin:0;padding:4px 0 16px;display:grid;gap:18px;align-content:start}.msg{animation:rise .35s var(--ease) both;min-width:0}.msg.user{display:flex;justify-content:flex-end}.msg.user .bubble{max-width:min(80%,620px);background:var(--ink);color:#fff;padding:10px 14px;border-radius:16px 16px 4px;white-space:pre-wrap;overflow-wrap:anywhere}.msg.ai{display:grid;gap:10px}.md{line-height:1.6;overflow-wrap:anywhere}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 10px;max-width:72ch}.md h1,.md h2,.md h3{font-size:16px;margin:16px 0 6px}.md ul,.md ol{padding-left:20px;margin:0 0 10px}.md li{margin:2px 0}.md strong{font-weight:600}.md .scroll-x,.chart-card .scroll-x{background:var(--ground);border-radius:var(--r);margin:6px 0 10px}.md table td,.md table th{padding:7px 12px}.md pre{background:var(--surface-2);padding:10px 12px;border-radius:var(--r);overflow-x:auto}.thinking{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.shimmer{background:linear-gradient(90deg,var(--muted) 0%,var(--ink) 50%,var(--muted) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 1.6s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.dots{display:inline-flex;gap:3px}.dots i{width:4px;height:4px;border-radius:50%;background:var(--brand);animation:blink 1.2s infinite}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.reasoning,.tool{font-size:13px;color:var(--ink-2)}.reasoning summary,.tool summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:7px;padding:4px 10px 4px 6px;border-radius:999px;background:var(--surface-2);max-width:100%;transition:background-color .15s var(--ease)}.reasoning summary::-webkit-details-marker,.tool summary::-webkit-details-marker{display:none}.reasoning summary:hover,.tool summary:hover{background:#ebe4d8}.reasoning summary svg{color:var(--brand-ink)}.reasoning-body{margin:8px 0 0 10px;padding-left:12px;border-left:2px solid var(--line);white-space:pre-wrap;color:var(--muted);max-height:260px;overflow:auto}.tool+.tool{margin-top:-4px}.tool code{background:none;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-verb{color:var(--muted)}.tool-state{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--surface);flex:none;font-weight:700;font-size:11px}.tool-state.ok{background:var(--good-bg);color:var(--good)}.tool-state.bad{background:var(--bad-bg);color:var(--bad)}.tool-out{margin:8px 0 0;padding:10px 12px;background:var(--ground);border-radius:var(--r);max-height:320px;overflow:auto;font-size:12px;line-height:1.5}.compacted{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.compacted:before,.compacted:after{content:"";flex:1;height:1px;background:var(--line)}.chart-card{margin:4px 0;background:var(--surface);border-radius:var(--r-lg);padding:14px 12px 8px;box-shadow:0 0 0 1px var(--line);animation:rise .45s var(--ease) both;min-width:0}.chart-card figcaption{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.chart-card figcaption b{font-family:Inter,system-ui,sans-serif;font-size:15px}.seg.sm button{padding:3px 10px;font-size:12px}.chart-box{min-width:0}.composer{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.composer textarea{resize:none;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:12px 14px;min-height:48px;line-height:1.45;transition:border-color .15s var(--ease)}.composer textarea:focus-visible{outline:none;border-color:var(--brand)}.send{width:48px;height:48px;border-radius:14px;border:0;background:var(--brand);color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:transform .1s var(--ease),background-color .15s var(--ease)}.send:hover:not(:disabled){background:#f5a50f}.send:active:not(:disabled){transform:scale(.96)}.send:disabled{opacity:.45;cursor:not-allowed}.send.stop{background:var(--ink)}.stop-sq{width:12px;height:12px;border-radius:2px;background:#fff}.composer-row{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.composer-hint{font-size:11.5px;color:var(--muted);white-space:nowrap}.mpick{position:relative;min-width:0}.mpick-btn{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 8px 5px 9px;border:0;border-radius:8px;background:transparent;color:var(--ink-2);font:500 12.5px/1 Inter,system-ui,sans-serif;cursor:pointer;transition:background-color .15s var(--ease)}.mpick-btn:hover:not(:disabled),.mpick-btn[aria-expanded=true]{background:var(--ground)}.mpick-btn svg:first-child{color:var(--brand-ink)}.mpick-btn b{font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mpick-effort{padding:2px 6px;border-radius:5px;background:#fff3d6;color:var(--brand-ink);font-size:11px;font-weight:600}.mpick-btn[aria-expanded=true] svg:last-child{transform:rotate(180deg)}.mpick-btn svg:last-child{transition:transform .15s var(--ease);color:var(--muted)}.mpick-pop{position:absolute;left:0;bottom:calc(100% + 6px);z-index:2;width:min(360px,calc(100vw - 40px));max-height:min(460px,70dvh);overflow-y:auto;padding:6px;background:var(--surface);border-radius:14px;box-shadow:0 0 0 1px #3c280a14,0 18px 40px -12px #3c280a4d;animation:rise .18s var(--ease) both}.mpick-group{padding:8px 10px 4px;font:600 10.5px/1 Inter,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.mpick-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:2px;align-items:center;text-align:left;padding:8px 10px;border:0;border-radius:9px;background:none;cursor:pointer;color:var(--ink);transition:background-color .12s var(--ease)}.mpick-item:hover{background:var(--ground)}.mpick-item[aria-checked=true]{background:#fff8e6}.mpick-item svg{grid-row:1 / 3;grid-column:2;color:var(--brand-ink)}.mpick-name{display:flex;align-items:center;gap:6px;font:600 13.5px/1.2 Inter,system-ui,sans-serif}.mpick-desc{grid-column:1;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);line-height:1.35}.mpick-tag{padding:2px 6px;border-radius:5px;background:var(--ground);color:var(--ink-2);font-size:10.5px;font-weight:600}.mpick-tag.save{background:#e6f2e2;color:#2f6a24}.mpick-more{display:flex;align-items:center;gap:4px;margin:2px 4px 4px;padding:6px;border:0;background:none;color:var(--brand-ink);font:600 12px/1 Inter,system-ui,sans-serif;cursor:pointer;border-radius:6px}.mpick-more:hover{background:var(--ground)}.mpick-foot{margin-top:4px;padding:4px 0;border-top:1px solid var(--line)}.mpick-seg{margin:4px 10px 0;display:flex}.mpick-seg button{flex:1}.mpick-note{margin:8px 10px 4px;font-size:11.5px;color:var(--muted);line-height:1.4}.ask-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-ask);background:#261e1447;opacity:0;pointer-events:none;transition:opacity .25s var(--ease)}.ask-scrim.on{opacity:1;pointer-events:auto}.ask-panel{position:fixed;top:8px;right:8px;bottom:8px;z-index:var(--z-ask);width:min(560px,calc(100vw - 16px));display:flex;flex-direction:column;background:var(--surface);border-radius:18px;box-shadow:-24px 0 60px -20px #3c280a59,0 0 0 1px #3c280a0f;transform:translate(calc(100% + 24px));transition:transform .32s cubic-bezier(.2,.9,.25,1),width .25s var(--ease);overflow:hidden}.ask-panel.on{transform:none}.ask-panel.wide{width:min(980px,calc(100vw - 16px))}.ask-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 10px 10px 16px;border-bottom:1px solid var(--line);background:radial-gradient(80% 140% at 0% 0%,rgb(254 176 34 / .12),transparent 60%)}.ask-title{display:flex;align-items:center;gap:10px;font-family:Inter,system-ui,sans-serif;font-size:15px}.ask-orb.sm{width:30px;height:30px;border-radius:10px;animation:none;box-shadow:0 4px 12px -4px #feb022cc,inset 0 1px #ffffffb3}.ask-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:8px 18px}.ask-foot{padding:8px 14px 12px;border-top:1px solid var(--line);display:grid;gap:8px;background:var(--surface)}.ask-meta{display:flex;align-items:center;gap:8px;min-width:0}.ask-who{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:5px}.ctx-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;background:#fff3d6;color:var(--brand-ink);font-size:12px;font-weight:500;white-space:nowrap;max-width:45%;overflow:hidden;text-overflow:ellipsis;flex:none}body.ask-lock{overflow:hidden}@media(max-width:560px){.composer-hint{display:none}.msg.user .bubble{max-width:92%}.ask-panel{top:0;right:0;bottom:0;width:100vw;border-radius:0}.ask-who{display:none}}@media(max-width:1100px){.fin-grid{grid-template-columns:1fr}.coverage{flex-direction:column}.detail{width:100%}}@media(max-width:900px){.layout{grid-template-columns:minmax(0,1fr)}.side{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);z-index:var(--z-side);transform:translate(-100%);visibility:hidden;transition:transform .22s var(--ease),visibility 0s .22s;box-shadow:var(--shadow-float)}.menu-open .side{transform:none;visibility:visible;transition:transform .22s var(--ease)}.menu-open .scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-side) - 1);background:#26262659;animation:fade .15s var(--ease)}.brand .side-close,.topbar .menu-btn{display:inline-grid}.topbar{padding:8px 16px}.main{padding:20px 16px 48px}.head h1{font-size:24px}.recv{grid-template-columns:1fr 1fr}}@media(max-width:560px){.hide-sm,.demo-chip{display:none}.crumbs{font-size:13px}.kpis{grid-template-columns:1fr 1fr}.kpi-value{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(pointer:fine){html{overscroll-behavior:none}}.print-only{display:none}@media print{body{background:#fff}.side,.topbar,.toasts,.banner,.no-print,.trend .legend .link,.skip{display:none!important}.layout{display:block}.main{padding:0;max-width:none}.print-only{display:block;margin-bottom:8px}.card,.kpi{box-shadow:none;border:1px solid #ddd;break-inside:avoid}.fin-grid{grid-template-columns:1fr}.chart-wrap svg{max-width:520px}.tip,.chart-wrap .hit{display:none}}.ov-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}.ov-legend span{display:inline-flex;align-items:center;gap:5px}.ov-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.ov-legend i.line{width:14px;height:0;border-top:2px solid #262626;border-radius:0}.ov-legend i.line.dash{border-top-style:dashed;opacity:.5}.chart-tip{background:var(--surface);border-radius:10px;padding:10px 12px;box-shadow:0 0 0 1px #3c280a14,0 10px 24px -10px #3c280a4d;font-size:12.5px;display:grid;gap:3px}.chart-tip i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}.bar .neutral{background:#2f6f9f}.tip-gap{margin-top:3px;padding-top:5px;border-top:1px solid var(--line);color:var(--muted);display:grid;gap:2px}.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--line);font-size:12.5px}.card:not(.flush)>.pager,.scroll-x+.pager{padding-left:0;padding-right:0}.pager-btns{display:flex;align-items:center;gap:2px}.pager .btn.sm{min-width:30px;justify-content:center;font-variant-numeric:tabular-nums}.pager .btn.on{background:var(--ink);color:#fff;border-color:var(--ink)}.card:has(>.paged),.card:has(>.scroll-x>.paged){overflow:visible}.scroll-x:has(>.paged),.paged>.scroll-x{overflow:visible}.paged .tbl thead th{position:sticky;top:60px;z-index:1;background:var(--surface);box-shadow:inset 0 -1px 0 var(--line)}.paged .tbl thead tr+tr th{top:93px}@media(max-width:900px){.paged,.paged>.scroll-x{overflow-x:auto}.paged .tbl thead th{position:static}}.nav.sub{margin-left:18px;padding-top:6px;padding-bottom:6px;font-size:13.5px;position:relative}.nav.sub:before{content:"";position:absolute;left:-8px;top:-2px;bottom:50%;width:8px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);border-bottom-left-radius:6px}.banner.next{display:flex;align-items:center;gap:10px;text-decoration:none;background:var(--bad-bg);border:1px solid rgb(180 60 40 / .15);transition:transform .15s var(--ease),box-shadow .15s var(--ease)}.banner.next svg{color:var(--bad);flex:none}.banner.next .go{margin-left:auto;font-weight:600;color:var(--bad);white-space:nowrap}.banner.next:hover{box-shadow:0 2px 8px #3c280a14;transform:translateY(-1px)}.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.tags:empty{display:none}.row-toggle svg{vertical-align:-1px;transition:transform .15s var(--ease);transform:rotate(-90deg);color:var(--muted)}tr.open .row-toggle svg{transform:none}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0;margin:0 0 20px}.steps li{display:grid;gap:4px;padding:12px 14px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);font-size:13px;color:var(--ink-2)}.steps li b{font-size:13px;color:var(--ink)}.steps li.on{border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand)}.steps li.done b:after{content:" ✓";color:var(--good)}@media(max-width:900px){.steps{grid-template-columns:1fr}}.login{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(90% 70% at 50% 0%,rgb(254 176 34 / .12),transparent 60%),var(--bg)}.login-card{width:min(400px,100%);display:grid;gap:14px;padding:32px 28px 24px;background:var(--surface);border-radius:var(--r-lg);border:1px solid rgb(180 140 60 / .25);box-shadow:0 10px 40px #3c280a14}.login-card .lockup{justify-self:center}.login-card .brand-title{text-align:center;margin-bottom:6px}.login-card p{margin:0}.login-card .btn.lg{width:100%;justify-content:center;margin-top:4px}.login-card .link{justify-self:center}.login-card .powered{justify-self:center;margin-top:8px}.me{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:0 0 8px;border-radius:var(--r);background:var(--surface);box-shadow:0 1px 2px #3c280a0f}.me-avatar{flex:none;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--brand);color:#262626;font-weight:700}.me-text{display:grid;gap:2px;min-width:0;flex:1}.me-text b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me .btn{flex:none}.role{display:inline-block;justify-self:start;font-size:11px;font-weight:600;padding:1px 7px;border-radius:var(--r-sm);background:var(--absent);color:var(--ink-2);white-space:nowrap}.role.superadmin{background:#262626;color:#fff}.role.admin{background:#feb02238;color:#7a4a00}.role.hr{background:var(--good-bg);color:var(--good)}.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.role-card{display:grid;gap:6px;padding:12px 14px;background:var(--surface);border-radius:var(--r);border:1px solid var(--line)}.add-user{display:grid;grid-template-columns:1.3fr 1fr 180px auto;gap:12px;align-items:end}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.filters .search{flex:1;min-width:220px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--r);padding:0 10px;background:var(--surface)}.filters .search input{border:0;flex:1;box-shadow:none;padding-left:0}@media(max-width:900px){.roles,.add-user{grid-template-columns:1fr}}.me{margin-top:auto}.me+.sources{margin-top:0}.login-card .brand-title{font:600 22px/1.1 Cormorant Garamond,Georgia,serif;color:#1c1b17}.status-strip{margin-bottom:12px}.steps li.sel{outline:2px solid var(--ink);outline-offset:1px}.how{margin:0 0 20px;max-width:90ch}.today+.status-strip,.head+.status-strip{margin-top:0}.status-strip li{padding:0}.status-strip li>button{display:grid;gap:4px;width:100%;height:100%;padding:12px 14px}.status-strip li>button span{font-weight:400;color:var(--muted)}.steps li.on.bad{border-color:var(--bad);box-shadow:inset 3px 0 0 var(--bad)}.steps li.on.bad b{color:var(--bad)}.tbl tr.no-hover{cursor:default}.disputes{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}.card .disputes{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0}.dispute{background:var(--surface);border-radius:var(--r);padding:10px 12px;box-shadow:0 0 0 1px var(--line);display:grid;gap:8px;font-size:13px}.dispute.open{box-shadow:0 0 0 1px var(--brand),inset 3px 0 0 var(--brand)}.dispute-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dispute-actions{display:flex;gap:6px;flex-wrap:wrap}.dispute-actions input{flex:1 1 140px;min-width:0}.dispute-open{margin-top:12px}.dispute-form{display:grid;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.dispute-form .times{display:flex;gap:8px}.dispute-form .times label{display:grid;gap:2px;font-size:12px;color:var(--muted);flex:1}.dispute-form .signoff-row{margin-top:0}.cell.disputed{box-shadow:inset 0 0 0 2px var(--brand)}.cell.corrected{position:relative}.cell.corrected:after{content:"";position:absolute;right:2px;top:2px;width:5px;height:5px;border-radius:50%;background:#fff}.legend .cell.disputed,.legend .cell.corrected{display:inline-block}@media(max-width:900px){.coverage{flex-direction:column}.detail{width:100%}}.status-strip li.done:before{content:none}.dispute .facts{grid-template-columns:auto minmax(0,1fr)}.dispute .facts dd{overflow-wrap:anywhere}.detail .disputes{grid-template-columns:minmax(0,1fr)}.cell.absent.corrected:after{background:var(--ink-2)}.today{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);gap:0;margin-bottom:20px;border-radius:var(--r-lg);overflow:hidden;background:var(--surface);box-shadow:0 1px 2px #3c280a0d}.today-main{padding:20px 22px;background:radial-gradient(120% 140% at 0% 0%,rgb(254 176 34 / .14),transparent 55%)}.today-side{padding:20px 22px;border-left:1px solid var(--line);display:grid;align-content:start;gap:6px}.today-eyebrow{display:flex;align-items:center;gap:8px;font:600 11px/1 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.pulse{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 #1b7f4b80;animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 7px #1b7f4b00}to{box-shadow:0 0 #1b7f4b00}}@media(prefers-reduced-motion:reduce){.pulse{animation:none}}.today-big{display:flex;align-items:baseline;gap:10px;margin:10px 0}.today-big b{font:700 44px/1 Inter,system-ui,sans-serif;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.today-big span{color:var(--ink-2)}.today-bar{height:8px;max-width:420px}.today-y{font-size:15px;margin:6px 0}.today-y b{font:700 22px/1 Inter,system-ui,sans-serif}.noshow{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:13px}.link-btn{border:0;background:none;padding:0;color:var(--ink);font:inherit;font-weight:500;cursor:pointer;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.link-btn:hover{text-decoration-color:currentColor}.today-warn{display:flex;align-items:center;gap:6px;margin:12px 0 0;font-size:12.5px;color:var(--bad)}@media(max-width:900px){.today{grid-template-columns:1fr}.today-side{border-left:0;border-top:1px solid var(--line)}}.dept-rows{display:grid;gap:2px;margin-top:16px;max-width:620px}.dept-line{width:100%;display:grid;grid-template-columns:minmax(0,170px) minmax(60px,1fr) 52px 70px;align-items:center;gap:12px;padding:6px 8px;margin:0 -8px;border:0;border-radius:8px;background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .12s var(--ease)}.dept-line:hover:not(:disabled),.dept-line[aria-expanded=true]{background:#ffffffb3}.dept-line:disabled{cursor:default}.dept-name{font-size:13px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dept-count{font-size:13px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.dept-count b{color:var(--ink)}.dept-gap{justify-self:end;font:600 11.5px/1 Inter,system-ui,sans-serif;padding:4px 7px;border-radius:6px;background:var(--warn-bg);color:var(--warn);white-space:nowrap}.dept-gap.ok{background:none;color:var(--good);padding:0}.dept-names{display:flex;flex-wrap:wrap;gap:4px 12px;padding:4px 0 8px;font-size:13px}.dept-rows .btn{justify-self:start;margin-top:4px}.noshow-line{width:100%;display:grid;grid-template-columns:1fr auto 14px;gap:8px;align-items:center;padding:5px 0;border:0;background:none;font:inherit;color:var(--ink-2);text-align:left;cursor:pointer;border-bottom:1px solid var(--line)}.noshow-line b{color:var(--bad);font-variant-numeric:tabular-nums}.noshow-line svg{color:var(--muted);transition:transform .15s var(--ease)}.noshow-line[aria-expanded=true] svg{transform:rotate(180deg)}@media(max-width:560px){.dept-line{grid-template-columns:minmax(0,1fr) 44px 64px}.dept-line .bar{display:none}}.tags:first-child{margin-top:0}.tags.indent{padding-left:19px}.zero{color:var(--muted)}.needs{color:var(--warn);font-weight:500}.table-note{margin:12px 0 0}.group-tbl{table-layout:fixed;min-width:760px}.group-tbl col.c-num{width:120px}.group-tbl col.c-status{width:200px}.group-tbl tr.child td{background:#fcfaf6;border-bottom-color:#f1ebe1}.group-tbl tr.child td:first-child{padding-left:40px}.group-tbl tr.child:hover td{background:#f8f3eb}.queue-tbl .clip{max-width:260px}.queue-tbl .clip .muted{overflow:hidden;text-overflow:ellipsis}.day-detail{display:grid;gap:4px}.day-lines{list-style:none;margin:0;padding:0;display:grid;gap:8px}.day-line{display:grid;grid-template-columns:minmax(180px,1.2fr) auto minmax(220px,2fr);gap:12px 28px;align-items:start;padding:12px 16px;background:var(--surface);border-radius:var(--r);box-shadow:0 0 0 1px var(--line)}.dl-who .muted{margin-top:2px}.dl-who a{color:var(--orange)}.dl-nums{display:flex;gap:24px;margin:0}.dl-nums div{display:grid;gap:2px;min-width:56px}.dl-nums dt{font-size:12px;color:var(--muted)}.dl-nums dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.dl-nums dd .muted{font-weight:400}.dl-what .flags{font-size:13px;padding-left:16px}.field-label{font-size:13px;font-weight:600;color:var(--ink)}@media(max-width:900px){.day-line{grid-template-columns:1fr}}.ids a{display:block}@media(max-width:900px){.group-tbl{table-layout:auto;min-width:640px}.group-tbl col.c-num,.group-tbl col.c-status{width:auto}.group-tbl td:first-child{min-width:180px}.tbl tr.expand>td>*{position:sticky;left:0;max-width:calc(100vw - 104px)}.signoff-row .btn{flex:1 1 auto}.signoff-sep{display:none}}
