:root{--paper: #f8f8e9;--card: #fdfdf4;--surface-2: #f1f1e2;--surface-3: #fdfdf4;--ink: #1b1b1b;--ink-soft: rgba(27, 27, 27, .76);--ink-faint: rgba(27, 27, 27, .52);--line: rgba(27, 27, 27, .16);--line-soft: rgba(27, 27, 27, .08);--orange: #c73c1e;--orange-fill: #c73c1e;--orange-soft: rgba(199, 60, 30, .1);--green: #3e6e4e;--green-soft: rgba(62, 110, 78, .12);--amber: #8a6a12;--amber-soft: rgba(169, 130, 31, .14);--red: #c73c1e;--disc-strategy: #c73c1e;--disc-accounts: #2c6fb0;--disc-creative: #2f9e6e;--disc-paid: #b8901c;--disc-other: rgba(27, 27, 27, .35);--radius: 8px;--radius-sm: 6px;--font: "Reddit Sans", -apple-system, BlinkMacSystemFont, sans-serif;--display: "Reddit Sans Condensed", "Reddit Sans", sans-serif;--mono: "Reddit Mono", ui-monospace, "SF Mono", monospace;--serif: "Playfair Display", Georgia, serif}[data-theme=ink]{--paper: #161615;--card: #1e1e1d;--surface-2: #272726;--surface-3: #2f2f2e;--ink: #f8f8e9;--ink-soft: rgba(248, 248, 233, .8);--ink-faint: rgba(248, 248, 233, .58);--line: rgba(248, 248, 233, .18);--line-soft: rgba(248, 248, 233, .09);--orange: #ff6a3d;--orange-fill: #c73c1e;--orange-soft: rgba(199, 60, 30, .16);--green: #86b48c;--green-soft: rgba(134, 180, 140, .13);--amber: #d9a441;--amber-soft: rgba(217, 164, 65, .14);--red: #ff6a3d;--disc-strategy: #e85a30;--disc-accounts: #4a8ccc;--disc-creative: #2fa36f;--disc-paid: #b38d22;--disc-other: rgba(248, 248, 233, .4)}*{box-sizing:border-box}html{color-scheme:light}[data-theme=ink]{color-scheme:dark}body{margin:0;font-family:var(--font);background:var(--paper);color:var(--ink);font-size:13.5px;line-height:1.55;-webkit-font-smoothing:antialiased}button{font-family:var(--font);cursor:pointer;color:inherit}input,select,textarea{font-family:var(--font);font-size:13.5px;color:var(--ink)}::selection{background:var(--orange-fill);color:#f8f8e9}.table,.week-grid,.stat,.pulse-nums,.rate-table,.hours,.pct,.month-cal,.day-pill,.spark-num,.hero-stat{font-variant-numeric:tabular-nums}.topbar{background:var(--paper);border-bottom:1px solid var(--line-soft);color:var(--ink);display:flex;align-items:center;gap:24px;padding:0 24px;height:47px;position:sticky;top:0;z-index:20}.logo{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none}.noise-mark{width:22px;height:22px;border-radius:5px;display:block;flex:none}[data-theme=ink] .noise-mark{box-shadow:inset 0 0 0 1px var(--line-soft)}.app-splash .mark .noise-mark{width:38px;height:38px;border-radius:9px}.logo .byline{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.22em;color:var(--ink-faint);text-transform:uppercase}.nav{display:flex;gap:4px;flex:1;height:100%}.nav button{background:none;border:none;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);padding:0 10px;height:100%;border-bottom:1px solid transparent;margin-bottom:-1px;transition:color .14s ease-out}.nav button:hover{color:var(--ink)}.nav button.active{color:var(--ink);border-bottom-color:var(--orange-fill)}.topbar-right{display:flex;align-items:center;gap:10px}.running-pill{display:flex;align-items:center;gap:8px;background:var(--orange-soft);color:var(--orange);border:1px solid var(--orange-fill);border-radius:var(--radius-sm);padding:4px 10px;font-family:var(--mono);font-weight:600;font-size:12px}.running-pill .dot{width:7px;height:7px;border-radius:50%;background:var(--orange);animation:pulse 1.4s infinite}@keyframes pulse{50%{opacity:.25}}.running-pill button{border:none;background:var(--orange-fill);color:#f8f8e9;border-radius:4px;padding:2px 8px;font-size:10.5px;font-weight:600;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase}.person-select{border:1px solid var(--line-soft);border-radius:var(--radius-sm);padding:6px 8px;background:var(--surface-2);color:var(--ink);font-size:12.5px}.icon-btn{border:1px solid var(--line-soft);background:var(--surface-2);border-radius:var(--radius-sm);padding:5px 9px;color:var(--ink-soft);font-size:13.5px;transition:color .14s ease-out,border-color .14s ease-out}.icon-btn:hover{color:var(--ink);border-color:var(--line)}.icon-btn-glyph{display:inline-flex;align-items:center;justify-content:center;width:30px;height:28px;padding:0}.icon-btn-glyph:disabled{opacity:.4}.sync-warn{color:var(--amber);font-family:var(--mono);font-size:11px;font-weight:600}.page{max-width:1180px;margin:0 auto;padding:34px 28px 90px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:16px;flex-wrap:wrap}.page-title{font-family:var(--display);font-size:32px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;line-height:1;margin:0}.page-sub{color:var(--ink-faint);font-family:var(--mono);font-size:11px;letter-spacing:.08em;margin-top:8px;text-transform:uppercase}.page-sub a{color:inherit}.card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius)}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-family:var(--mono);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:11px;padding:8px 14px;border-radius:var(--radius-sm);transition:opacity .14s ease-out,background .14s ease-out,color .14s ease-out}.btn:hover{opacity:.85}.btn.secondary{background:transparent;color:var(--ink-soft);border-color:var(--line)}.btn.secondary:hover{opacity:1;color:var(--ink);border-color:var(--ink-soft)}.btn.small{padding:6px 11px;font-size:11px}.btn.danger-text{background:none;color:var(--orange);border:none}.btn:disabled{opacity:.4;cursor:default}.week-nav{display:flex;align-items:center;gap:6px}.week-nav button{border:1px solid var(--line);background:transparent;border-radius:var(--radius-sm);padding:5px 10px;font-size:11px;color:var(--ink-soft);font-family:var(--mono);font-weight:500;letter-spacing:.06em;text-transform:uppercase;transition:color .14s ease-out,border-color .14s ease-out}.week-nav button:hover{color:var(--ink);border-color:var(--ink-soft)}.project-week-nav{flex-wrap:wrap}.project-week-nav label{font-family:var(--mono);font-size:11px;color:var(--ink-soft)}.project-week-nav input{width:auto;padding:5px 8px}.project-week-nav button:disabled{opacity:.35;cursor:not-allowed}.view-toggle{display:flex;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.view-toggle button{border:none;background:transparent;padding:6px 12px;font-size:11px;color:var(--ink-faint);font-family:var(--mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;transition:color .14s ease-out,background .14s ease-out}.view-toggle button:hover{color:var(--ink)}.view-toggle button.active{background:var(--surface-2);color:var(--ink)}.month-nav{position:relative}.month-nav .month-label{min-width:92px;font-family:var(--mono)}.month-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:40;background:var(--surface-3);border:1px solid var(--line);border-radius:var(--radius);padding:10px;width:224px}.month-pop-head{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-weight:600;margin-bottom:8px}.month-pop-head button{border:1px solid var(--line);background:none;border-radius:4px;width:26px;height:24px;cursor:pointer;color:var(--ink-soft)}.month-pop-head button:hover{color:var(--ink);border-color:var(--ink-soft)}.month-pop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.month-pop-grid button{border:1px solid transparent;background:none;border-radius:4px;padding:6px 0;font-size:11.5px;cursor:pointer;color:var(--ink-soft);font-family:var(--mono)}.month-pop-grid button:hover{border-color:var(--line);color:var(--ink)}.month-pop-grid button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.month-pop-grid button.now{border-color:var(--orange-fill);color:var(--orange)}.month-pop-now{width:100%;margin-top:8px;border:none;background:none;cursor:pointer;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);padding:4px 0;font-family:var(--mono)}.month-pop-now:hover{color:var(--orange)}.cal-rail{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 2px}.cal-rail .rail-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);font-weight:600;font-family:var(--mono)}.cal-chip{display:inline-flex;align-items:center;gap:7px;border:1px dashed var(--line);border-radius:999px;padding:4px 12px;font-size:12px;cursor:pointer;background:none;color:var(--ink-soft);transition:color .14s ease-out,border-color .14s ease-out}.cal-chip:hover{border-style:solid;border-color:var(--ink-soft);color:var(--ink)}.cal-chip .t{font-family:var(--mono);color:var(--ink-faint);font-size:11px}.cal-chip.allday{cursor:default;opacity:.6}.cal-chip.allday:hover{border-style:dashed;border-color:var(--line);color:var(--ink-soft)}.client-projects{margin:0 0 6px 22px;padding-left:12px;border-left:1px solid var(--line-soft)}.load-cell.clickable{cursor:pointer}.load-cell.clickable:hover{outline:1px solid var(--ink-soft);outline-offset:-1px}.wk-leave{margin-left:4px;font-size:11px;opacity:.7}.pin-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line-soft)}.pin-row .pin-info{flex:1;min-width:0}.pin-row input{width:72px;text-align:center;font-family:var(--mono);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 4px;background:var(--surface-2)}.pin-row input.pinned{border-color:var(--ink-soft);font-weight:700}.day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:20px 0}.day-pill{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--card);padding:7px 5px;text-align:center;cursor:pointer;transition:border-color .14s ease-out,background .14s ease-out}.day-pill:hover{border-color:var(--line);background:var(--surface-2)}.day-pill.selected{border-color:var(--ink);background:var(--ink);color:var(--paper)}.day-pill.today .dname:after{content:"●";color:var(--orange);margin-left:4px;font-size:6px;vertical-align:2px}.day-pill .dname{font-family:var(--mono);font-size:10px;color:var(--ink-faint);font-weight:500;text-transform:uppercase;letter-spacing:.1em}.day-pill.selected .dname{color:var(--paper);opacity:.6}.day-pill .dhours{font-family:var(--mono);font-size:13.5px;font-weight:600;margin-top:3px}.day-pill .dhours.zero{color:var(--ink-faint);font-weight:400}.day-pill.selected .dhours.zero{color:var(--paper);opacity:.6}.entry-list .entry{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line-soft)}.entry:last-child{border-bottom:none}.entry .color{width:8px;height:8px;border-radius:50%;flex:none}.entry .meta{flex:1;min-width:0}.entry .proj{font-weight:600}.entry .proj .client{color:var(--ink-faint);font-weight:400}.entry .task{color:var(--ink-soft);font-size:12.5px}.entry .notes{color:var(--ink-faint);font-size:12.5px;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry .hours{font-family:var(--mono);font-size:14px;font-weight:600;min-width:62px;text-align:right}.entry .hours.running{color:var(--orange)}.entry .actions{display:flex;gap:6px;opacity:0;transition:opacity .14s ease-out}.entry:hover .actions{opacity:1}@media(hover:none){.entry .actions{opacity:1}}.play-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--line);background:transparent;font-size:11px;color:var(--ink-soft);display:flex;align-items:center;justify-content:center;transition:color .14s ease-out,border-color .14s ease-out}.play-btn:hover{border-color:var(--ink-soft);color:var(--ink)}.play-btn.running{background:var(--orange-fill);border-color:var(--orange-fill);color:#f8f8e9}.empty{padding:44px 20px;text-align:center;color:var(--ink-faint)}.empty-serif{font-family:var(--serif);font-style:italic;font-size:19px;color:var(--ink-soft);letter-spacing:.01em}.day-total-row{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:11px;color:var(--ink-soft)}.day-total-row .t{font-family:var(--mono);font-size:15px;color:var(--ink)}.week-grid{width:100%;border-collapse:collapse}.week-grid th{text-align:center;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;color:var(--ink-faint);font-weight:500;letter-spacing:.1em;padding:11px 6px;border-bottom:1px solid var(--line)}.week-grid th.rowhead{text-align:left;padding-left:18px}.week-grid th.today{color:var(--orange)}.week-grid td{padding:6px;border-bottom:1px solid var(--line-soft);text-align:center}.week-grid tbody tr{transition:background .14s ease-out}.week-grid tbody tr:hover{background:var(--surface-2)}.week-grid td.rowhead{text-align:left;padding:10px 6px 10px 18px}.week-grid td.rowhead .proj{font-weight:600;font-size:13.5px}.week-grid td.rowhead .task{color:var(--ink-soft);font-size:12px}.week-grid input{width:60px;text-align:center;border:1px solid transparent;border-radius:4px;padding:7px 4px;font-family:var(--mono);font-size:13.5px;background:transparent;color:var(--ink);transition:border-color .14s ease-out,background .14s ease-out}.week-grid input:hover{border-color:var(--line);background:var(--surface-2)}.week-grid input:focus{border-color:var(--orange-fill);background:var(--surface-2);outline:none}.week-grid input.zero{color:var(--ink-faint)}.week-grid .rowtotal,.week-grid tfoot td{font-family:var(--mono);font-weight:600}.week-grid tfoot td{border-top:1px solid var(--line);border-bottom:none;padding:12px 6px}.week-grid tfoot tr:hover{background:none}.week-grid tfoot td.rowhead{font-family:var(--mono);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:11px;color:var(--ink-soft)}.plan-wrap{overflow-x:auto}.plan-grid input{width:46px}.plan-grid th.rowhead,.plan-grid td.rowhead{position:sticky;left:0;background:var(--card);z-index:2;min-width:170px;max-width:220px;box-shadow:1px 0 0 var(--line-soft)}.plan-grid tbody tr:hover td.rowhead{background:var(--surface-2)}.plan-grid .plan-group td{background:var(--paper);color:var(--ink-faint);font-family:var(--mono);font-weight:600;font-size:10.5px;text-transform:uppercase;letter-spacing:.18em;padding:9px 18px;border-bottom:1px solid var(--line)}.plan-grid .plan-group td.rowhead{background:var(--paper);color:var(--ink-faint);box-shadow:none}.plan-grid .plan-group:hover td,.plan-grid tr.plan-group:hover{background:var(--paper)}.plan-discipline{font-family:var(--mono);font-weight:400;color:var(--ink-faint);letter-spacing:.04em;font-size:10px}.plan-over{color:var(--orange)!important;font-weight:700}.plan-grid tfoot input{font-weight:600}.plan-fee{font-family:var(--mono);font-size:11.5px;white-space:nowrap}.pulse-progress{display:flex;align-items:center;gap:14px;margin:4px 0 26px;font-family:var(--mono);font-size:11px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em}.pulse-progress .track{flex:1;height:2px;border:none;border-radius:0;background:var(--line-soft);overflow:hidden}.pulse-progress .fillbar{height:100%;background:var(--ink-soft)}.pulse-section{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin:34px 0 12px;display:flex;align-items:center;gap:12px}.pulse-section:after{content:"";flex:1;height:1px;background:var(--line-soft)}.pulse-section .count{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--ink-faint)}.pulse-card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:14px 18px 12px;margin-bottom:8px;transition:border-color .14s ease-out}.pulse-card:hover{border-color:var(--line)}.pulse-card.tone-bad{border-color:#c73c1e73}.pulse-card.tone-warn{border-color:var(--line)}.pulse-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pulse-head .who{flex:1;min-width:200px}.pulse-head .client{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.04em;text-transform:uppercase}.pulse-head .service{color:var(--ink-faint);font-size:11px;font-family:var(--mono)}.pulse-nums{display:flex;gap:22px;font-family:var(--mono);font-size:11px;color:var(--ink-faint);text-align:right;text-transform:uppercase;letter-spacing:.04em}.pulse-nums b{color:var(--ink);font-size:14px;display:block;font-weight:600;letter-spacing:0;text-transform:none}.chip{font-family:var(--mono);font-weight:600;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:0;border:none;background:none;white-space:nowrap;color:var(--ink-soft);display:inline-flex;align-items:center;gap:7px}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.chip.bad{color:var(--orange)}.chip.warn{color:var(--amber)}.chip.good{color:var(--green)}.chip.dashed{color:var(--ink-faint)}.chip.dashed:before{background:transparent;border:1px dashed currentColor}.pace-track{position:relative;height:6px;border:none;border-radius:3px;background:var(--line-soft);margin:14px 0 6px;overflow:visible}.pace-track .actual-split{position:absolute;inset:0 auto 0 0;display:flex;gap:2px}.pace-track .actual-split span{flex-basis:0;min-width:2px}.pace-track .actual-split span:first-child{border-radius:3px 0 0 3px}.pace-track .actual-split span:last-child{border-radius:0 3px 3px 0}.pace-track .actual-split span:only-child{border-radius:3px}.pace-track .expected{position:absolute;top:-4px;bottom:-4px;width:1.5px;background:var(--ink)}.pace-legend{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.admin-copy{border-top:1px solid var(--line-soft);padding-top:11px;display:flex;gap:12px;align-items:flex-start}.admin-copy p{margin:0;flex:1;font-size:13.5px;line-height:1.6;color:var(--ink-soft)}.copy-btn{border:1px solid var(--line);background:none;border-radius:4px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);padding:5px 9px;flex:none;transition:color .14s ease-out,border-color .14s ease-out}.copy-btn:hover{border-color:var(--ink-soft);color:var(--ink)}.copy-btn.done{border-color:var(--green);color:var(--green)}.pulse-fine{display:flex;flex-wrap:wrap;gap:6px}.pulse-fine .fine-chip{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--card);padding:7px 12px;font-size:12.5px;font-weight:500;display:flex;gap:8px;align-items:baseline}.pulse-fine .fine-chip .n{font-family:var(--mono);font-size:11px;color:var(--ink-faint)}.capacity-strip{display:flex;flex-wrap:wrap;gap:6px}.cap-chip{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--card);padding:8px 12px;font-size:12.5px;display:flex;gap:10px;align-items:baseline}.cap-chip.over{border-color:#c73c1e80;background:var(--orange-soft)}.cap-chip.over .n{color:var(--orange)}.cap-chip .name{font-weight:600}.cap-chip .n{font-family:var(--mono);font-size:11px;color:var(--ink-faint)}.hero-stat{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:22px 24px 18px;margin-bottom:16px;display:flex;gap:34px;align-items:flex-start;flex-wrap:wrap}.hero-stat .headline{flex:1;min-width:260px}.hero-stat .figure{font-family:var(--font);font-weight:600;font-size:40px;letter-spacing:-.02em;line-height:1}.hero-stat .figure.bad{color:var(--orange)}.hero-stat .figure.good{color:var(--green)}.hero-stat .label{font-family:var(--serif);font-style:italic;font-weight:500;font-size:19px;color:var(--ink-soft);margin-top:8px}.hero-stat .bench{font-family:var(--mono);font-size:11px;color:var(--ink-faint);letter-spacing:.04em;margin-top:12px;max-width:46ch;line-height:1.7;text-transform:uppercase}.hero-stat .contribs{min-width:220px}.hero-stat .contribs .contrib{display:flex;justify-content:space-between;gap:18px;padding:6px 0;border-bottom:1px solid var(--line-soft);font-size:12.5px}.hero-stat .contribs .contrib:last-child{border-bottom:none}.hero-stat .contribs .contrib .v{font-family:var(--mono);color:var(--orange);font-weight:600}.hero-stat .contribs .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);padding-bottom:6px}.hero-stat .sparkcol{text-align:right}.hero-stat .sparkcol .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px}.memo{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px 16px;margin-bottom:16px}.memo-title{font-family:var(--serif);font-style:italic;font-weight:500;font-size:21px;color:var(--ink);display:flex;align-items:baseline;gap:14px;margin-bottom:14px}.memo-days{font-family:var(--mono);font-style:normal;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.memo-body{display:flex;gap:30px;align-items:flex-start;flex-wrap:wrap}.memo-numbers{display:flex;gap:26px;flex:none}.memo-number .k{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint)}.memo-number .v{font-size:19px;font-weight:600;margin-top:3px;font-variant-numeric:tabular-nums}.memo-decision{margin:0;flex:1;min-width:280px;font-size:13.5px;line-height:1.65;color:var(--ink-soft);border-left:1px solid var(--line-soft);padding-left:22px}.rate-table th .th-sub{display:block;margin-top:3px;font-family:var(--font);font-size:10.5px;text-transform:none;letter-spacing:0;color:var(--ink-faint);opacity:.85}.hero-stat .contribs .contrib-days{font-style:normal;font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);margin-left:6px}.quad-board{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:760px){.quad-board{grid-template-columns:1fr}}.quad-cell{padding:12px 14px}.quad-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:8px;border-bottom:1px solid var(--line-soft);margin-bottom:4px}.quad-meaning{font-size:12px;color:var(--ink-faint)}.quad-empty{padding:12px 0 6px;color:var(--ink-faint);font-size:12.5px;font-style:italic}.quad-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line-soft)}.quad-row:last-child{border-bottom:none}.quad-bar{position:relative;flex:0 0 38%;height:6px;border-radius:3px;background:var(--line-soft)}.quad-bar-fill{position:absolute;inset:0 auto 0 0;border-radius:3px;opacity:.85}.quad-bar-tick{position:absolute;top:-3px;bottom:-3px;width:1.5px;background:var(--ink)}.quad-ref{color:var(--ink-faint)}.quad-foot{margin:8px 2px 0;font-size:12px;color:var(--ink-faint)}.quad-name{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quad-svc{font-weight:400;color:var(--ink-faint);font-size:12px}.quad-stat{font-family:var(--mono);font-size:11px;color:var(--ink-soft);white-space:nowrap;min-width:64px;text-align:right}.spark{display:inline-block;vertical-align:middle}.spark path{fill:none;stroke:var(--ink-faint);stroke-width:1.5}.spark .dot{fill:var(--orange)}.spark.good path{stroke:var(--ink-faint)}.spark .base{stroke:var(--line-soft);stroke-width:1}.rate-table{width:100%;border-collapse:collapse}.rate-table th{text-align:left;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint);font-weight:500;padding:11px 16px;border-bottom:1px solid var(--line)}.rate-table td{padding:10px 16px;border-bottom:1px solid var(--line-soft);font-size:13.5px}.rate-table tbody tr{transition:background .14s ease-out}.rate-table tbody tr:hover{background:var(--surface-2)}.rate-table tr:last-child td{border-bottom:none}.rate-table .num{text-align:right;font-family:var(--mono)}.rate-table th.num{text-align:right}.rate-table .client-cell{font-weight:600}.rate-table .client-cell .svc{display:block;font-weight:400;font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;margin-top:1px}.rate-table .gap-bad{color:var(--orange);font-weight:600}.rate-table .gap-good{color:var(--green);font-weight:600}.rate-table .muted{color:var(--ink-faint)}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:16px}.stat{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:12px 14px}.stat .k{font-family:var(--mono);font-size:10px;text-transform:uppercase;color:var(--ink-faint);font-weight:500;letter-spacing:.14em}.stat .v{font-size:19px;font-weight:600;font-family:var(--font);margin-top:4px;letter-spacing:-.01em}.stat .v.over{color:var(--orange)}.stat .d{font-family:var(--mono);font-size:10.5px;margin-top:3px;color:var(--ink-faint);letter-spacing:.04em}.stat .d.up{color:var(--green)}.stat .d.down{color:var(--orange)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint);font-weight:500;padding:11px 18px;border-bottom:1px solid var(--line)}.table td{padding:10px 14px;border-bottom:1px solid var(--line-soft)}.table tbody tr{transition:background .14s ease-out}.table tbody tr:hover{background:var(--surface-2)}.table tr:last-child td{border-bottom:none}.table .num{text-align:right;font-family:var(--mono)}.table th.num{text-align:right}.section-title{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin:34px 0 12px;display:flex;align-items:center;gap:12px}.section-title:after{content:"";flex:1;height:1px;background:var(--line-soft)}button.section-toggle{background:none;border:none;padding:0;width:100%;cursor:pointer;text-align:left;transition:color .14s ease-out}button.section-toggle:hover{color:var(--ink)}.section-chevron{display:inline-flex;align-items:center;color:var(--ink-faint);transition:transform .16s ease-out}button.section-toggle:hover .section-chevron{color:var(--orange)}button.section-toggle.open .section-chevron{transform:rotate(90deg)}.section-count{font-size:10px;letter-spacing:.1em;color:var(--ink-faint);border:1px solid var(--line-soft);border-radius:999px;padding:1px 7px}.back-link{background:none;border:none;color:var(--ink-faint);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:0;margin-bottom:12px;transition:color .14s ease-out}.back-link:hover{color:var(--orange)}.project-card{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line-soft);cursor:pointer;transition:background .14s ease-out}.project-card:hover{background:var(--surface-2)}.project-card:last-child{border-bottom:none}.project-card .color{width:8px;height:8px;border-radius:50%;flex:none}.project-card .info{flex:1.2;min-width:0}.project-card .name{font-weight:600}.project-card .client{color:var(--ink-faint);font-size:11px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em}.project-card .budgetcol{flex:2}.project-card .numbers{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-faint);margin-bottom:6px;font-family:var(--mono)}.project-card .numbers .spent{font-weight:600;color:var(--ink)}.bar{height:3px;border:none;border-radius:2px;background:var(--line-soft);overflow:hidden}.bar .fill{height:100%;background:var(--ink-soft);border-radius:2px}.bar .fill.warn{background:var(--amber)}.bar .fill.over{background:var(--orange-fill)}.pct{font-family:var(--mono);font-size:12.5px;font-weight:600;min-width:48px;text-align:right}.pct.warn{color:var(--amber)}.pct.over{color:var(--orange)}.pct.ok{color:var(--green)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;font-weight:600;flex:none;letter-spacing:.04em}.team-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line-soft);cursor:pointer;transition:background .14s ease-out}.team-row:hover{background:var(--surface-2)}.team-row .who{flex:1;display:flex;align-items:center;gap:12px;min-width:190px}.team-row .who .name{font-weight:600}.team-row .who .cap{font-size:11px;color:var(--ink-faint);font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em}.team-row .barcol{flex:2.2}.team-row .nums{display:flex;gap:18px;font-size:11px;color:var(--ink-faint);min-width:240px;justify-content:flex-end;font-family:var(--mono);align-items:baseline}.team-row .nums b{color:var(--ink)}.team-row .manage-btn{opacity:0;transition:opacity .14s ease-out}.team-row:hover .manage-btn{opacity:1}@media(hover:none){.team-row .manage-btn{opacity:1}}.team-detail{padding:4px 18px 16px 62px;border-bottom:1px solid var(--line-soft);background:var(--surface-2)}.team-detail .mini{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--line-soft);font-size:13.5px}.team-detail .mini:last-child{border-bottom:none}.team-detail .mini .h{font-family:var(--mono);font-weight:600}.util-band{position:relative;height:3px;background:var(--line-soft);border-radius:2px}.util-band .zone{position:absolute;top:0;bottom:0;background:var(--green-soft)}.util-band .fill{position:absolute;top:0;bottom:0;left:0;background:var(--ink-soft);border-radius:2px}.util-band .fill.warn{background:var(--amber)}.util-band .fill.over{background:var(--orange-fill)}.mini{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:12.5px;align-items:baseline}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b1b1b73;display:flex;align-items:flex-start;justify-content:center;padding:7vh 20px 20px;z-index:50}[data-theme=ink] .overlay{background:#0a0a09a8}.modal{background:var(--surface-3);border:1px solid var(--line);border-radius:10px;width:100%;max-width:470px;max-height:84vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line-soft)}.modal-head h3{margin:0;font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.modal-head button{border:none;background:none;font-size:16px;color:var(--ink-faint)}.modal-head button:hover{color:var(--ink)}.modal-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.modal-foot{display:flex;gap:10px;justify-content:flex-end;align-items:center;padding:14px 20px;border-top:1px solid var(--line-soft)}.modal-foot .spacer{flex:1}.field label{display:block;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 10px;background:var(--surface-2);color:var(--ink);transition:border-color .14s ease-out}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--orange-fill)}.field-row{display:flex;gap:12px}.field-row .field{flex:1}.task-edit-row{display:flex;gap:8px;align-items:center}.task-edit-row input[type=text]{flex:1;min-width:0}.task-edit-row input[type=checkbox]{width:auto;flex:none;padding:0}.fee-input{display:flex;gap:6px}.fee-input select{flex:0 0 76px}.fee-input input{flex:1;min-width:0}.fx-line{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin:6px 0 0}.fx-line .fx-note{flex-basis:100%}.fx-line .fx-rate{width:84px;padding:3px 6px;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);color:var(--ink);font-family:var(--mono);font-size:12px}.table tr.row-selected td{background:var(--surface-2)}.task-edit-row label.inline{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink-soft);white-space:nowrap;margin:0;font-weight:400}.task-edit-row .rm{border:none;background:none;color:var(--ink-faint);font-size:14px}.task-edit-row .rm:hover{color:var(--orange)}.add-task{border:none;background:none;color:var(--orange);font-weight:600;font-size:12.5px;padding:4px 0;text-align:left}.hint{font-size:12px;color:var(--ink-faint)}.app-splash{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:15px;text-align:center;padding:20px;flex-direction:column;gap:6px}.app-splash .mark{font-family:var(--display);font-weight:800;font-size:34px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:12px}.app-splash .btn{margin-top:12px}.app-splash code{font-family:var(--mono);background:var(--surface-2);border:1px solid var(--line-soft);padding:1px 5px;border-radius:4px}.lock-input{border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 12px;background:var(--surface-2);font-family:var(--mono);min-width:220px;color:var(--ink)}.lock-input:focus{outline:none;border-color:var(--orange-fill)}.lock-form{display:flex;flex-direction:column;gap:8px;margin:22px 0 0;width:260px;align-items:stretch}.lock-input:-webkit-autofill,.lock-input:-webkit-autofill:hover,.lock-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 40px var(--surface-2) inset;caret-color:var(--ink)}.lock-form .lock-input{min-width:0}.lock-links{display:flex;gap:18px;margin-top:14px}.lock-link{border:none;background:none;padding:0;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer}.lock-link:hover{color:var(--orange)}.secret-reveal{display:inline-flex;align-items:center;gap:8px}.desktop-timer-toggle{margin-top:26px}.desktop-timer{padding:16px}.desktop-timer p{font-size:12.5px;color:var(--ink-soft);margin:0 0 12px;max-width:62ch}.desktop-timer code{font-family:var(--mono);font-size:11.5px;background:var(--surface-2);padding:1px 5px;border-radius:4px}.desktop-timer a{color:var(--orange)}.desktop-timer .btn{margin-top:12px}.token-reveal{border:1px dashed var(--orange-fill);border-radius:var(--radius-sm);padding:12px;margin-bottom:12px}.token-value{font-family:var(--mono);font-size:13px;color:var(--ink);word-break:break-all;-webkit-user-select:all;user-select:all;margin-bottom:8px}.token-note{font-size:11.5px;color:var(--ink-faint);margin-bottom:10px;max-width:58ch}.secret-reveal code{font-family:var(--mono);font-size:12px;background:var(--surface-2);border:1px solid var(--line-soft);border-radius:4px;padding:3px 8px;-webkit-user-select:all;user-select:all}.me-pill{font-family:var(--mono);font-size:11px;color:var(--ink-soft);border:1px solid var(--line-soft);border-radius:999px;padding:5px 12px;background:var(--surface-2)}.headroom-free{color:var(--green);font-weight:600;font-family:var(--mono);font-size:11.5px}.headroom-over{color:var(--orange);font-weight:600;font-family:var(--mono);font-size:11.5px}.quick-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:10px 12px;margin-bottom:14px}.quick-add select,.quick-add input{border:1px solid var(--line-soft);border-radius:var(--radius-sm);padding:7px 8px;background:var(--surface-2);color:var(--ink)}.quick-add select{max-width:250px}.quick-add select:focus,.quick-add input:focus{outline:none;border-color:var(--orange-fill)}.quick-add input.qa-hours{width:74px;font-family:var(--mono);text-align:center}.quick-add input.qa-notes{flex:1;min-width:140px}.quick-add .btn{padding:7px 12px}.copy-week{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}.copy-week-note{font-size:12px;color:var(--ink-faint)}.copy-week-note.error{color:var(--orange)}.month-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.month-cal .mc-head{text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);padding:4px 0}.month-cal .mc-day{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--card);min-height:62px;padding:7px 9px;cursor:pointer;text-align:left;display:flex;flex-direction:column;justify-content:space-between;transition:border-color .14s ease-out,background .14s ease-out}.month-cal .mc-day:hover{border-color:var(--line);background:var(--surface-2)}.month-cal .mc-day.blank{border-color:transparent;background:transparent;cursor:default}.month-cal .mc-day.today{border-color:var(--orange-fill)}.month-cal .mc-day.weekend{background:transparent;border-style:dashed}.month-cal .mc-date{font-family:var(--mono);font-size:11px;color:var(--ink-faint)}.month-cal .mc-day.today .mc-date{color:var(--orange);font-weight:600}.month-cal .mc-hours{font-family:var(--mono);font-size:12.5px;font-weight:600}.month-cal .mc-hours.zero{color:var(--ink-faint);font-weight:400}.goals-panel{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:13px 16px;margin-bottom:8px}.goals-panel .goals-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.goals-panel .goals-title{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.goals-panel .goal-field{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-soft)}.goals-panel .goal-click{cursor:pointer;flex-wrap:wrap}.goals-panel .goal-click:hover b{text-decoration:underline}.goals-panel .goal-field input{width:84px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:5px 7px;font-family:var(--mono);text-align:right;background:var(--surface-2)}.goals-panel .verdict{margin:10px 0 0;font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.goals-panel .verdict.bad{color:var(--orange)}.goal-line{display:flex;gap:10px;align-items:baseline;margin-top:10px;font-family:var(--mono);font-size:11px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}.goal-line .ok{color:var(--green);font-weight:600}.goal-line .bad{color:var(--orange);font-weight:600}.insights-panel{background:var(--card);color:var(--ink);border:1px solid var(--line-soft);border-radius:var(--radius);padding:15px 18px;margin-bottom:8px}.insights-title{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}.insight{display:flex;gap:12px;align-items:baseline;padding:5px 0}.insight .marker{width:5px;height:5px;border-radius:50%;background:var(--orange-fill);flex:none;transform:translateY(-2px)}.insight p{margin:0;font-size:13.5px;line-height:1.6;color:var(--ink-soft)}.manage-btn{border:1px solid var(--line);background:none;border-radius:4px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);padding:4px 8px;transition:color .14s ease-out,border-color .14s ease-out;white-space:nowrap}.manage-btn:hover{border-color:var(--ink-soft);color:var(--ink)}.manage-btn:disabled{opacity:.35;cursor:not-allowed}.client-row{display:flex;align-items:center;gap:12px;padding:9px 16px;border-bottom:1px solid var(--line-soft)}.client-row:last-child{border-bottom:none}.client-row .cname{flex:1;font-weight:600}.client-row input{flex:1;border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 8px;background:var(--surface-2);color:var(--ink)}.client-row .count{font-family:var(--mono);font-size:11px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em}.load-grid td.load-cell{font-family:var(--mono);font-size:11.5px;text-align:center;min-width:62px;padding:9px 6px}.load-cell.load-ok{background:var(--green-soft);color:var(--ink)}.load-cell.load-warn{background:var(--amber-soft);color:var(--amber);font-weight:600}.load-cell.load-over{background:var(--orange-soft);color:var(--orange);font-weight:700}.load-cell.load-proj{opacity:.55;font-style:italic}.agent-group{margin-top:22px}.chip.sev-chip{font-size:10px;flex:none}.chip.sev-chip.sev-high{color:var(--orange)}.chip.sev-chip.sev-med{color:var(--amber)}.chip.sev-chip.sev-low{color:var(--ink-faint)}.agent-hello{padding:38px 10px 34px;text-align:center}.agent-hello-title{font-family:var(--serif);font-style:italic;font-weight:500;font-size:34px;color:var(--ink);line-height:1.15}.agent-chat{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--card);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.agent-seed{border:1px solid var(--line-soft);background:transparent;border-radius:999px;padding:5px 12px;font-size:12px;color:var(--ink-soft);cursor:pointer;transition:color .14s ease-out,border-color .14s ease-out}.agent-seed:hover{border-color:var(--line);color:var(--ink)}.agent-seed:disabled{opacity:.5;cursor:default}.agent-msg{display:flex;flex-direction:column;gap:3px}.agent-msg-who{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}.agent-msg-body{font-size:13.5px;line-height:1.6;white-space:pre-wrap}.agent-msg-user .agent-msg-body{color:var(--ink-faint)}.agent-msg-assistant .agent-msg-body{color:var(--ink-soft)}.agent-msg-thinking{color:var(--ink-faint);font-style:italic}.agent-link{color:var(--orange);text-decoration:none;border-bottom:1px solid var(--orange-fill)}.agent-link:hover{color:var(--ink);border-bottom-color:var(--line)}.agent-chat-error{font-size:12px;color:var(--orange);border:1px dashed var(--orange-fill);border-radius:var(--radius-sm);padding:8px 11px}.agent-files{display:flex;flex-wrap:wrap;gap:6px}.agent-file{display:inline-flex;align-items:center;gap:7px;border:1px dashed var(--line);border-radius:999px;padding:4px 11px;font-size:12px;color:var(--ink-soft)}.agent-file svg{color:var(--ink-faint);flex:none}.agent-file button{border:none;background:none;padding:0;color:var(--ink-faint);display:inline-flex;align-items:center}.agent-file button:hover{color:var(--orange)}.agent-chat-input{display:flex;gap:8px;margin-top:2px;align-items:center}.agent-chat-input input{flex:1;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 11px;font-size:13.5px;background:var(--surface-2);color:var(--ink)}.agent-chat-input input:focus{outline:none;border-color:var(--orange-fill)}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b1b1b66;display:flex;align-items:flex-start;justify-content:center;padding:14vh 20px 20px;z-index:90}[data-theme=ink] .cmdk-overlay{background:#0a0a0999}.cmdk{width:100%;max-width:560px;background:var(--surface-3);border:1px solid var(--line);border-radius:10px;overflow:hidden}.cmdk input{width:100%;border:none;background:transparent;color:var(--ink);font-size:15px;padding:16px 18px;outline:none;border-bottom:1px solid var(--line-soft)}.cmdk input::placeholder{color:var(--ink-faint)}.cmdk-list{max-height:42vh;overflow-y:auto;padding:6px}.cmdk-row{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;color:var(--ink-soft)}.cmdk-row.sel{background:var(--surface-2);color:var(--ink)}.cmdk-row .cmdk-kind{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint);margin-left:auto;flex:none}.cmdk-row .cmdk-dot{width:6px;height:6px;border-radius:50%;flex:none;background:var(--ink-faint)}.cmdk-empty{padding:22px;text-align:center;color:var(--ink-faint);font-size:13.5px}.cmdk-foot{display:flex;gap:14px;padding:9px 14px;border-top:1px solid var(--line-soft);font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em}@media(max-width:760px){.page{padding:22px 16px 70px}.page-title{font-size:26px}.topbar{padding:0 14px;gap:12px;overflow-x:auto}.team-row{flex-wrap:wrap}.week-grid input{width:44px}.pulse-nums{flex-wrap:wrap;gap:12px;text-align:left}.hero-stat{gap:20px}.hero-stat .figure{font-size:32px}}.leave-balance{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.leave-stat{padding:4px 20px 4px 0;border-right:1px solid var(--line-soft)}.leave-stat:last-child{border-right:none;padding-right:0}.leave-stat-label{font-family:var(--display);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint)}.leave-stat-value{font-family:var(--display);font-size:34px;line-height:1.1;margin-top:4px;font-variant-numeric:tabular-nums}.leave-stat-strong .leave-stat-value{color:var(--orange)}.leave-stat-sub{font-size:11.5px;color:var(--ink-faint);margin-top:2px}.leave-form{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin-top:12px}.leave-form .field{min-width:150px}.leave-form .field-wide{flex:1 1 260px}.leave-preview{margin-top:14px;padding-top:12px;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:6px}.leave-preview-days{font-size:14px}.leave-preview-days strong{font-family:var(--display);font-size:17px}.leave-warn{font-size:12.5px;color:var(--orange);background:var(--orange-soft);padding:7px 10px;border-radius:var(--radius-sm)}.leave-chip{text-transform:none}.leave-approved:before{background:var(--green)}.leave-pending:before{background:var(--amber)}.leave-declined:before,.leave-cancelled:before{background:var(--ink-faint)}.leave-dead td{opacity:.45}.leave-bh{color:var(--ink-faint)}.leave-approval{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line-soft)}.leave-approval:last-child{border-bottom:none;padding-bottom:0}.leave-approval-main{display:flex;flex-direction:column;gap:5px;flex:1}.leave-approval-who{font-size:14px}.leave-approval-note{font-family:var(--serif);font-style:italic;color:var(--ink-soft);font-size:14px}.leave-approval-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}@media(max-width:900px){.fc-months{grid-template-columns:1fr}.leave-balance{grid-template-columns:repeat(2,1fr);gap:14px 0}}.leave-month-cell,.leave-left{white-space:nowrap}.quiet{font-size:11.5px;color:var(--ink-faint)}.leave-allowance-btn{background:none;border:none;padding:0 2px;cursor:pointer;font:inherit;font-size:11.5px;color:var(--ink-faint);border-bottom:1px dotted var(--line)}.leave-allowance-btn:hover{color:var(--ink)}.leave-allowance-input{width:44px;text-align:right;font:inherit;font-size:11.5px;background:var(--surface-2);border:1px solid var(--line);border-radius:3px;padding:1px 4px;color:var(--ink)}.story{display:flex;flex-direction:column;gap:54px}.story-hero{position:relative;padding-top:8px}.story-eyebrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--display);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.story-dot{width:5px;height:5px;border-radius:50%;background:var(--orange);flex-shrink:0}.story-tags{display:flex;gap:8px;flex-wrap:wrap}.story-tag{border:1px solid var(--line);border-radius:999px;padding:2px 9px;letter-spacing:.1em}.story-head{font-family:var(--display);font-size:clamp(34px,5.2vw,62px);line-height:1.02;letter-spacing:-.005em;text-transform:uppercase;margin:18px 0 0;max-width:20ch}.story-head-accent{color:var(--orange)}.story-standfirst{margin:18px 0 0;max-width:62ch;font-size:15px;line-height:1.6;color:var(--ink-soft)}.story-nav{position:absolute;top:0;right:0;display:flex;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.story-nav button{background:none;border:none;cursor:pointer;padding:7px 13px;color:var(--ink-faint);font-family:var(--display);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;border-right:1px solid var(--line)}.story-nav button:last-child{border-right:none}.story-nav button:hover{color:var(--ink);background:var(--surface-2)}.story-section{display:flex;flex-direction:column;gap:18px}.story-section-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);padding-bottom:10px;border-bottom:1px solid var(--line)}.story-section-sub{text-transform:none;letter-spacing:0;font-family:var(--font);font-size:11.5px;color:var(--ink-faint)}.story-label{font-family:var(--display);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-top:14px}.story-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.story-card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:22px 20px 20px;display:flex;flex-direction:column}.story-card-num{font-family:var(--display);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);padding-bottom:12px;border-bottom:1px solid var(--line-soft)}.story-card-figure{font-family:var(--display);font-size:40px;line-height:1.05;margin-top:16px;color:var(--orange);font-variant-numeric:tabular-nums}.story-card-figure-label{font-size:11.5px;color:var(--ink-faint);margin-top:2px}.story-found{margin:6px 0 0;font-size:14.5px;line-height:1.45;font-weight:500;color:var(--ink)}.story-matters{margin:6px 0 0;font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.story-action{padding-top:16px;font-family:var(--serif);font-style:italic;font-size:14px;line-height:1.5;color:var(--ink);border-top:1px solid var(--line-soft);margin-top:16px}.story-months{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.story-month{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:18px 18px 16px;display:flex;flex-direction:column;gap:12px}.story-month-over{border-color:var(--orange)}.story-month-head{display:flex;align-items:baseline;justify-content:space-between}.story-month-name{font-family:var(--display);font-size:13px;letter-spacing:.1em;text-transform:uppercase}.story-now{font-family:var(--display);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);border:1px solid var(--orange);border-radius:999px;padding:1px 7px}.story-month-fig{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.story-month-big{font-family:var(--display);font-size:42px;line-height:1;font-variant-numeric:tabular-nums}.story-month-unit{font-size:11.5px;color:var(--ink-faint)}.story-stack{display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--surface-2)}.story-stack-bill{background:var(--orange-fill)}.story-stack-int{background:var(--ink-faint)}.story-stack-key{display:flex;flex-wrap:wrap;gap:10px;font-size:10.5px;color:var(--ink-faint)}.story-sw{display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:5px}.story-sw-bill{background:var(--orange-fill)}.story-sw-int{background:var(--ink-faint)}.story-sw-free{background:var(--surface-2);border:1px solid var(--line)}.story-month-facts{margin:0;display:flex;flex-direction:column}.story-fact{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;border-bottom:1px solid var(--line-soft)}.story-fact:last-child{border-bottom:none}.story-fact dt{font-size:12px;color:var(--ink-soft);margin:0}.story-fact dd{margin:0;font-family:var(--mono);font-size:12px;color:var(--ink);white-space:nowrap}.story-fact-note{color:var(--ink-faint);font-size:10.5px}.story-fact-warn dd{color:var(--orange)}.story-apply{margin-top:4px}.story-note{font-size:13px;color:var(--ink-soft)}.story-split{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}.story-split-main{display:flex;flex-direction:column;gap:2px}.story-aside{background:var(--card);border-left:2px solid var(--orange);padding:16px 18px;border-radius:0 var(--radius) var(--radius) 0}.story-aside-fig{font-family:var(--display);font-size:38px;line-height:1;font-variant-numeric:tabular-nums}.story-aside-label{font-size:11px;color:var(--ink-faint);margin-top:3px;padding-bottom:12px;border-bottom:1px solid var(--line-soft)}.story-aside p{margin:12px 0 0;font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.story-aside-warn{color:var(--orange)!important}.story-bar-row{display:grid;grid-template-columns:150px 1fr 52px 76px;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid var(--line-soft);font-size:12.5px}.story-bar-name{color:var(--ink)}.story-bar-track{height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden}.story-bar-fill{display:block;height:100%;background:var(--ink-faint)}.story-bar-val{font-family:var(--mono);font-size:12px;text-align:right}.story-bar-money{font-family:var(--mono);font-size:12px;text-align:right;color:var(--ink-faint)}.story-clients{display:flex;flex-direction:column;gap:3px}.story-client{display:grid;grid-template-columns:190px 1fr 250px;align-items:center;gap:16px;padding:9px 0;border-bottom:1px solid var(--line-soft)}.story-client-name{font-size:13px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.story-pill{font-family:var(--display);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:1px 7px;white-space:nowrap}.story-pill-bad{color:var(--orange);border:1px solid var(--orange)}.story-pill-warn{color:var(--amber);border:1px solid var(--amber)}.story-client-track{position:relative;height:12px;background:var(--surface-2);border-radius:3px}.story-client-fill{display:block;height:100%;border-radius:3px;background:var(--ink-soft)}.story-client-fill.over{background:var(--orange-fill)}.story-client-fill.under{background:var(--amber)}.story-client-notch{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--ink);opacity:.75}.story-client-nums{display:grid;grid-template-columns:52px 1fr 88px;align-items:baseline;gap:8px;font-size:11.5px}.story-client-days{font-family:var(--mono);font-size:12px;color:var(--ink)}.story-client-sold{color:var(--ink-faint)}.story-client-rate{font-family:var(--mono);font-size:12px;text-align:right}.story-client-rate.bad{color:var(--orange)}.story-people{display:flex;flex-direction:column;gap:2px}.story-person{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:16px;padding:6px 0;border-bottom:1px solid var(--line-soft);font-size:12.5px}.story-person-months{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.story-person-month{display:grid;grid-template-columns:1fr 42px;align-items:center;gap:9px}.story-person-track{height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden}.story-person-fill{display:block;height:100%;background:var(--ink-faint)}.story-person-fill.is-over{background:var(--orange-fill)}.story-person-fill.is-hot{background:var(--amber)}.story-person-pct{font-family:var(--mono);font-size:11px;text-align:right;color:var(--ink-faint)}.story-person-pct.is-over{color:var(--orange)}.story-person-pct.is-hot{color:var(--amber)}.story-person-pct.is-cold{opacity:.55}.story-toggle{background:none;border:none;cursor:pointer;padding:0;text-align:left;font-family:var(--display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.story-toggle:hover{color:var(--ink)}.story-working{display:flex;flex-direction:column;gap:26px;padding-top:8px}.story-variance{display:flex;flex-direction:column;gap:2px;margin-top:8px}.story-var{display:grid;grid-template-columns:64px 1fr 60px;align-items:center;gap:12px;font-size:12px;padding:5px 0}.story-var-month{color:var(--ink-faint);font-family:var(--display);letter-spacing:.08em}.story-var-track{position:relative;height:10px;background:var(--surface-2);border-radius:3px}.story-var-mid{position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:var(--line)}.story-var-fill{position:absolute;top:0;bottom:0}.story-var-fill.up{background:var(--orange-fill);border-radius:0 3px 3px 0}.story-var-fill.down{background:var(--ink-faint);border-radius:3px 0 0 3px}.story-var-num{font-family:var(--mono);font-size:11.5px;text-align:right}.story-caveats{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:9px}.story-caveats li{font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.story-caveats strong{color:var(--ink);font-weight:500}@media(max-width:1000px){.story-cards,.story-months,.story-split{grid-template-columns:1fr}.story-client,.story-person{grid-template-columns:1fr;gap:6px}.story-nav{position:static;margin-top:18px;align-self:flex-start;width:fit-content}}.story-disc{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.story-disc-cell{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:14px 15px 13px}.story-disc-cell.is-over{border-color:var(--orange)}.story-disc-name{font-family:var(--display);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.story-disc-pct{font-family:var(--display);font-size:30px;line-height:1.1;margin-top:4px;font-variant-numeric:tabular-nums}.story-disc-cell.is-over .story-disc-pct{color:var(--orange)}.story-disc-cell.is-hot .story-disc-pct{color:var(--amber)}.story-disc-cell.is-cold .story-disc-pct{color:var(--ink-faint)}.story-disc-track{height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden;margin:9px 0 8px}.story-disc-fill{display:block;height:100%;background:var(--ink-faint)}.story-disc-fill.is-over{background:var(--orange-fill)}.story-disc-fill.is-hot{background:var(--amber)}.story-disc-nums{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--ink-faint)}.story-disc-head{color:var(--ink-soft)}.story-swatch{display:inline-block;width:8px;height:8px;border-radius:2px;margin:0 4px 0 6px;vertical-align:middle}.story-swatch.over{background:var(--orange-fill)}.story-swatch.under{background:var(--amber)}.cal{margin:14px 0 4px}.cal-bar{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line-soft)}.cal-bar-label{font-family:var(--display);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.cal-nav{background:none;border:1px solid var(--line);border-radius:var(--radius-sm);width:26px;height:24px;cursor:pointer;color:var(--ink-faint);line-height:1}.cal-nav:hover{color:var(--ink);background:var(--surface-2)}.cal-months{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:14px}.cal-month-name{font-family:var(--display);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.cal-dow,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-dow span{text-align:center;font-size:9.5px;color:var(--ink-faint);font-family:var(--display);letter-spacing:.1em;padding-bottom:4px}.cal-day{position:relative;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--card);cursor:pointer;font:inherit;font-size:12px;color:var(--ink);padding:0;overflow:hidden}.cal-day:hover:not(:disabled){border-color:var(--ink-soft)}.cal-day:disabled{cursor:default}.cal-day-num{position:relative;z-index:1}.cal-out{visibility:hidden}.cal-weekend{background:transparent;border-color:transparent;color:var(--ink-faint);opacity:.45}.cal-bank{background:var(--surface-2);border-style:dashed;border-color:var(--line);color:var(--ink-faint)}.cal-past .cal-day-num{opacity:.55}.cal-picked{border-color:var(--orange);color:var(--paper)}.cal-am,.cal-pm{background:var(--card);color:var(--ink)}.cal-half{position:absolute;left:0;right:0;background:var(--orange-fill)}.cal-half-am{top:0;height:50%}.cal-half-pm{bottom:0;height:50%}.cal-am{align-items:flex-start;padding-top:2px}.cal-pm{align-items:flex-end;padding-bottom:2px}.cal-am .cal-day-num,.cal-pm .cal-day-num{color:var(--paper);height:50%;display:flex;align-items:center}.cal-away{position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:3px;height:3px;border-radius:50%;background:var(--ink-faint)}.cal-key{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:11px;color:var(--ink-faint)}.cal-sw{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;vertical-align:-1px}.cal-sw-full{background:var(--orange-fill)}.cal-sw-am{background:linear-gradient(to bottom,var(--orange-fill) 50%,var(--card) 50%);border:1px solid var(--line)}.cal-sw-pm{background:linear-gradient(to top,var(--orange-fill) 50%,var(--card) 50%);border:1px solid var(--line)}.cal-sw-bank{background:var(--surface-2);border:1px dashed var(--line)}.cal-sw-away{background:var(--ink-faint);border-radius:50%;width:5px;height:5px;margin-left:2px;margin-right:7px}.leave-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.leave-runs{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.leave-run{border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:11.5px;color:var(--ink-soft);white-space:nowrap}.leave-row-actions{display:flex;gap:6px;white-space:nowrap}.manage-btn.is-editing{color:var(--orange);border-color:var(--orange)}@media(max-width:760px){.cal-months{grid-template-columns:1fr}}.leave-sick-note{font-size:12.5px;color:var(--ink-soft);padding:10px 14px;border-left:2px solid var(--line);background:var(--card);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.leave-sick-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:6px 0 18px}.leave-sick-stats .leave-stat-value{font-size:28px}@media(max-width:760px){.leave-sick-stats{grid-template-columns:repeat(2,1fr);gap:14px 0}}.cal-key-hint{color:var(--ink-faint);opacity:.75}.cal-menu{position:fixed;z-index:60;min-width:188px;background:var(--surface-3);border:1px solid var(--line);border-radius:var(--radius);padding:5px;display:flex;flex-direction:column}.cal-menu-head{font-family:var(--display);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);padding:6px 9px 7px;border-bottom:1px solid var(--line-soft);margin-bottom:4px}.cal-menu button{display:flex;align-items:center;gap:2px;background:none;border:none;cursor:pointer;text-align:left;font:inherit;font-size:12.5px;color:var(--ink);padding:7px 9px;border-radius:var(--radius-sm)}.cal-menu button:hover:not(:disabled){background:var(--surface-2)}.cal-menu button:disabled{opacity:.35;cursor:default}.cal-menu button.is-on{color:var(--orange)}.cal-menu button.is-on:after{content:"✓";margin-left:auto;font-size:11px}.cal-menu-rule{height:1px;background:var(--line-soft);margin:4px 0}.cal-menu-foot{font-size:11px;color:var(--ink-faint);padding:7px 9px 4px;border-top:1px solid var(--line-soft);margin-top:4px}.row-drop-head,.row-drop-cell{width:1%;padding-left:4px!important}.row-drop{background:none;border:none;cursor:pointer;padding:2px 6px;font:inherit;font-size:14px;line-height:1;color:var(--ink-faint);border-radius:var(--radius-sm);opacity:0}.week-grid tr:hover .row-drop,.row-drop:focus-visible{opacity:1}.row-drop:hover{color:var(--orange);background:var(--surface-2)}.row-drop.is-confirm{opacity:1;font-size:10.5px;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--orange);border:1px solid var(--orange);padding:3px 7px;white-space:nowrap}.copy-week-label{font-family:var(--display);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-right:2px}.submit-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:var(--card)}.submit-bar.is-pending{border-color:var(--amber);background:var(--amber-soft)}.submit-bar.is-approved{border-color:var(--green);background:var(--green-soft)}.submit-bar.is-declined{border-color:var(--orange);background:var(--orange-soft)}.submit-state{flex:1 1 260px;min-width:0}.submit-line{font-weight:600}.submit-sub{margin-top:2px;font-size:13px;color:var(--ink-faint)}.submit-sub .drift{color:var(--orange)}.submit-actions{display:flex;gap:8px;flex-wrap:wrap}.submit-note{flex:1 1 100%;display:flex;gap:8px}.submit-note input{flex:1;min-width:0}.submit-error{flex:1 1 100%;color:var(--red);font-size:13px}.approval-queue{padding:12px 16px;margin-bottom:14px}.queue-head{font-weight:600;margin-bottom:8px}.queue-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:7px 0;border-top:1px solid var(--line-soft)}.queue-who{background:none;border:0;padding:0;font:inherit;font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.queue-week{color:var(--ink-soft)}.queue-hours{font-variant-numeric:tabular-nums}.queue-when,.queue-own{color:var(--ink-faint);font-size:13px;margin-left:auto}.pixel-confetti{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:9999}.pixel-piece{position:absolute;top:0;display:block;will-change:transform,opacity;animation-name:pixel-fall;animation-timing-function:cubic-bezier(.3,.28,.5,1);animation-fill-mode:both}.pixel-confetti img{display:block;will-change:transform;animation-name:pixel-flutter;animation-timing-function:ease-in-out;animation-fill-mode:both;filter:drop-shadow(0 3px 7px rgba(0,0,0,.3))}@keyframes pixel-fall{0%{transform:translate3d(0,-18vh,0);opacity:0}6%{opacity:1}90%{opacity:1}to{transform:translate3d(0,110vh,0);opacity:0}}@keyframes pixel-flutter{0%{transform:translate(calc(var(--drift) * -.45)) rotate(0)}25%{transform:translate(calc(var(--drift) * .35)) rotate(calc(var(--spin) * .25))}50%{transform:translate(calc(var(--drift) * -.25)) rotate(calc(var(--spin) * .5))}75%{transform:translate(calc(var(--drift) * .5)) rotate(calc(var(--spin) * .75))}to{transform:translate(var(--drift)) rotate(var(--spin))}}@media(prefers-reduced-motion:reduce){.pixel-confetti{display:none}}.locked-note{margin:0 0 10px;font-size:13px;color:var(--amber);letter-spacing:.02em}.submit-sub .blocked{color:var(--amber)}.submission-overview .queue-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.submission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:7px}.submission-person{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font-family:var(--font);text-align:left;cursor:pointer}.submission-person b{font:600 10px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.submission-person.is-submitted,.submission-person.is-approved{border-color:var(--green);background:var(--green-soft)}.submission-person.is-submitted b,.submission-person.is-approved b{color:var(--green)}.submission-person.is-declined{border-color:var(--orange);background:var(--orange-soft)}.submission-person.is-declined b{color:var(--orange)}.weekgraph{width:100%;height:auto;display:block}.weekgraph .grid{stroke:var(--line-soft);stroke-width:1}.weekgraph .gl{font-family:var(--mono);font-size:10px;fill:var(--ink-faint);font-variant-numeric:tabular-nums}.weekgraph .xl{font-family:var(--mono);font-size:10px;fill:var(--ink-faint);text-anchor:middle}.weekgraph .line{fill:none;stroke:var(--orange);stroke-width:2}.weekgraph .area{fill:var(--orange);opacity:.08}.weekgraph .dot{fill:var(--paper);stroke:var(--orange);stroke-width:2;cursor:pointer}.weekgraph .dot.sel{fill:var(--orange)}.weekgraph .dot:hover{stroke-width:3}.week-nav button.active{color:var(--ink);border-color:var(--ink-soft);font-weight:600}.util-band .fill.seg{border-radius:0}.util-band .fill.seg:first-of-type{border-radius:2px 0 0 2px}.util-band .fill.seg.unassigned{background:var(--ink-faint);opacity:.55}.team-split{font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);letter-spacing:.04em;padding:2px 0 0}.team-legend{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin:4px 0 8px;display:flex;gap:10px;flex-wrap:wrap}.team-legend .lg:before{content:"■";margin-right:4px}.team-legend .lg.unassigned{color:var(--ink-faint)}.task-team{font-size:12px}.me-pill-btn{cursor:pointer;font:inherit}.me-pill-btn:hover{border-color:var(--ink-soft)}.stat.withviz{display:flex;align-items:center;justify-content:space-between;gap:10px}.stat.withviz .txt{min-width:0}.stat .viz{flex:none}.viz.ring .track{fill:none;stroke:var(--line-soft);stroke-width:3.5}.viz.ring .fill{fill:none;stroke:var(--ink-faint);stroke-width:3.5;stroke-linecap:round}.viz.ring.over .fill{stroke:var(--orange)}.viz.ring.good .fill{stroke:var(--green)}.viz.ring .seg{fill:none;stroke-width:3.5}.viz.ring .seg.s0{stroke:var(--ink-faint)}.viz.ring .seg.s1{stroke:var(--orange)}.viz.ring .seg.s2{stroke:var(--green)}.viz.ring .seg.s3{stroke:var(--line)}.viz.pair .b1{fill:var(--ink-faint);opacity:.35}.viz.pair .b2{fill:var(--orange)}.viz.meter{display:block;margin-top:8px}.viz.meter .track{fill:var(--line-soft)}.viz.meter .fill{fill:var(--ink-faint);opacity:.55}.viz.meter .mark{stroke:var(--ink-faint);stroke-width:1}.viz.dots{display:inline-flex;gap:3px;margin-top:8px}.viz.dots .dot{border-radius:50%;background:var(--line-soft);display:inline-block}.viz.dots .dot.lit{background:var(--orange)}.viz.stack{position:relative;display:block;background:var(--line-soft);border-radius:4px;overflow:hidden;margin-top:14px}.viz.stack .seg{position:absolute;top:0;bottom:0;display:block}.viz.stack .seg.taken{background:var(--ink-faint);opacity:.55}.viz.stack .seg.booked{background:var(--orange);opacity:.85}.viz.stack .seg.pending{background:repeating-linear-gradient(45deg,var(--line) 0 3px,transparent 3px 6px)}.viz.stack-legend{display:flex;gap:14px;margin-top:6px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.viz.stack-legend .sw{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;vertical-align:-1px}.viz.stack-legend .sw.taken{background:var(--ink-faint);opacity:.55}.viz.stack-legend .sw.booked{background:var(--orange)}.viz.stack-legend .sw.pending{background:repeating-linear-gradient(45deg,var(--line) 0 2px,transparent 2px 4px)}.spark.live .hit{fill:var(--line);stroke:transparent;stroke-width:9}.spark.live .hit.on,.spark.live .hit.last{fill:var(--orange)}.spark.live .hoverlabel{font-family:var(--mono);font-size:8.5px;fill:var(--ink);paint-order:stroke;stroke:var(--card);stroke-width:2.5px}.viz.ring.donut .seg{stroke-width:4;transition:opacity .15s ease,stroke-width .15s ease}.viz.ring.donut .seg.on{stroke-width:6.5}.viz.ring.donut .seg.dim{opacity:.25}.day-pill .dbar{display:block;height:3px;background:var(--line-soft);border-radius:2px;margin-top:5px;overflow:hidden}.day-pill .dbar span{display:block;height:100%;background:var(--ink-faint);opacity:.6;border-radius:2px}.day-pill.selected .dbar span{background:var(--orange);opacity:1}.stat.clickable{cursor:pointer;transition:background .14s ease-out,border-color .14s ease-out}.stat.clickable:hover{background:var(--surface-2);border-color:var(--line)}.stat.clickable.active{background:var(--surface-2);border-color:var(--ink-soft)}.drill{animation:drill-in .16s ease-out;margin:-8px 0 16px}@keyframes drill-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.drill-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint);margin-bottom:8px}.drill-head .n{color:var(--ink-soft);font-weight:600;letter-spacing:.04em;text-transform:none}.drill-row{display:grid;grid-template-columns:minmax(140px,1.2fr) 2fr auto;gap:10px;align-items:center;padding:3px 4px;border-radius:var(--radius-sm)}.drill-row.clickable{cursor:pointer;transition:background .14s ease-out}.drill-row.clickable:hover{background:var(--surface-2)}.drill-name{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drill-sub{color:var(--ink-faint);font-size:11px;margin-left:6px}.drill-bar{height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden}.drill-bar span{display:block;height:100%;background:var(--ink-soft);border-radius:3px}.drill-num{font-family:var(--mono);font-size:11px;color:var(--ink-soft);text-align:right;min-width:64px}.drill-empty{color:var(--ink-faint);font-size:12.5px;padding:4px 0}.pulse-card{cursor:pointer}.pulse-card.open{border-color:var(--ink-soft)}.pulse-caret{color:var(--ink-faint);font-size:11px;margin-left:6px}.card-drill{border-top:1px solid var(--line-soft);margin-top:10px;padding-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:16px;animation:drill-in .16s ease-out;cursor:default}@media(max-width:720px){.card-drill{grid-template-columns:1fr}}.cd-k{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint);margin-bottom:6px}.cd-open{margin-top:8px}.trendbars{display:flex;align-items:flex-end;gap:4px;height:52px}.tb-col{flex:1;display:flex;align-items:flex-end;justify-content:center;height:100%;position:relative;cursor:pointer}.tb-bar{width:100%;background:var(--ink-soft);border-radius:2px 2px 0 0;opacity:.5;transition:opacity .14s ease-out}.tb-col.on .tb-bar{opacity:1}.tb-tip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:10px;padding:2px 6px;border-radius:4px;white-space:nowrap;margin-bottom:4px;z-index:2;pointer-events:none}.cap-chip.clickable{cursor:pointer;transition:background .14s ease-out,border-color .14s ease-out}.cap-chip.clickable:hover{background:var(--surface-2);border-color:var(--line)}.cap-chip.clickable.active{border-color:var(--ink-soft);background:var(--surface-2)}.fine-chip.clickable{cursor:pointer;transition:background .14s ease-out,border-color .14s ease-out}.fine-chip.clickable:hover{background:var(--surface-2);border-color:var(--line)}.load-readout{font-family:var(--mono);font-size:11px;color:var(--ink-soft);min-height:15px;margin:-4px 0 5px}.load-cell{transition:outline-color .14s ease-out;outline:1px solid transparent;outline-offset:-1px}.load-cell.row-hi.col-hi{outline-color:var(--ink-soft)}.stat.clickable{transition:background .14s ease-out,border-color .14s ease-out,transform .1s ease-out}.stat.clickable:after{content:"›";position:absolute;top:10px;right:13px;font-size:15px;line-height:1;color:var(--ink-faint);transition:transform .14s ease-out,color .14s ease-out}.stat.clickable:hover:after{color:var(--ink)}.stat.clickable.active:after{transform:rotate(90deg);color:var(--ink)}.stat.clickable:active{transform:scale(.985)}.pulse-card{transition:border-color .14s ease-out,transform .1s ease-out,background .14s ease-out}.pulse-card:hover{background:var(--card);border-color:var(--ink-soft)}.pulse-card:active{transform:scale(.998)}.pulse-caret{font-size:13px;color:var(--ink-faint);transition:color .14s ease-out}.pulse-card:hover .pulse-caret{color:var(--ink)}.drill-row{animation:drill-row-in .22s ease-out both}@keyframes drill-row-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.drill-bar span{transform-origin:left;animation:bar-in .5s cubic-bezier(.2,.7,.3,1) both}@keyframes bar-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.drill-row.clickable:active{background:var(--surface-3)}.rate-table tbody tr.clickable{cursor:pointer;transition:background .14s ease-out}.rate-table tbody tr.clickable:hover{background:var(--surface-2)}.rate-table tbody tr.clickable:active{background:var(--surface-3)}.tb-col{animation:tb-in .4s ease-out both;transform-origin:bottom}@keyframes tb-in{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.pace-track{position:relative;cursor:default}.pace-tip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:10px;padding:3px 8px;border-radius:4px;white-space:nowrap;z-index:2;pointer-events:none;animation:drill-in .12s ease-out}.cap-chip.clickable,.fine-chip.clickable{transition:background .14s ease-out,border-color .14s ease-out,transform .1s ease-out}.cap-chip.clickable:active,.fine-chip.clickable:active{transform:scale(.985)}.viz.ring .fill{transition:stroke-dasharray .5s ease-out}.viz.meter .fill{transition:width .5s ease-out}.viz.pair rect{transition:height .4s ease-out,y .4s ease-out}.viz.dots .dot{transition:transform .14s ease-out}.viz.dots .dot:hover{transform:scale(1.25)}.spark .hit{transition:r .12s ease-out}.load-cell{cursor:default}.load-cell.col-hi{outline-color:var(--line)}.grow{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.2,.7,.3,1)}.grow.open{grid-template-rows:1fr}.grow-inner{overflow:hidden;min-height:0}.drill-bar span{transition:width .3s ease-out}.stat.clickable:hover{transform:translateY(-1px);box-shadow:0 6px 16px #1b1b1b0f}.pulse-card:hover{transform:translateY(-1px);box-shadow:0 8px 22px #1b1b1b0f}.pulse-card{transition:border-color .14s ease-out,transform .14s ease-out,background .14s ease-out,box-shadow .14s ease-out}.stat.clickable{transition:background .14s ease-out,border-color .14s ease-out,transform .14s ease-out,box-shadow .14s ease-out}.viz.ring .fill,.viz.ring.donut .seg{animation:ring-sweep .7s ease-out}@keyframes ring-sweep{0%{stroke-dasharray:0 999}}.viz.meter .fill{animation:meter-in .6s ease-out}@keyframes meter-in{0%{width:0}}.viz.pair rect{transform-box:fill-box;transform-origin:bottom;animation:pair-in .5s ease-out backwards}.viz.pair rect.b2{animation-delay:.08s}@keyframes pair-in{0%{transform:scaleY(0)}}.viz.dots .dot{animation:dot-in .3s ease-out backwards}.viz.dots .dot:nth-child(2){animation-delay:.03s}.viz.dots .dot:nth-child(3){animation-delay:.06s}.viz.dots .dot:nth-child(4){animation-delay:.09s}.viz.dots .dot:nth-child(5){animation-delay:.12s}.viz.dots .dot:nth-child(6){animation-delay:.15s}.viz.dots .dot:nth-child(7){animation-delay:.18s}.viz.dots .dot:nth-child(8){animation-delay:.21s}.viz.dots .dot:nth-child(9){animation-delay:.24s}.viz.dots .dot:nth-child(n+10){animation-delay:.27s}@keyframes dot-in{0%{transform:scale(0)}}.spark .scrub{stroke:var(--ink-faint);stroke-width:1;stroke-dasharray:2 3}.month-scrub{display:flex;gap:2px;margin:0 0 14px;padding:5px;background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none}.ms-cell{flex:1;text-align:center;padding:7px 0 6px;border-radius:var(--radius-sm);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);transition:background .14s ease-out,color .14s ease-out,transform .14s ease-out}.ms-cell.now{color:var(--ink-soft);font-weight:600}.ms-cell.future{opacity:.45}.ms-cell.sel{background:var(--ink);color:var(--paper);font-weight:600}.month-scrub.drag{border-color:var(--line)}.page-fade{animation:page-in .22s ease-out}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.build-tag{position:fixed;left:10px;bottom:8px;z-index:90;font-size:10px;letter-spacing:.06em;color:var(--ink-4, #9a9a90);opacity:.75;pointer-events:none;-webkit-user-select:none;user-select:none}.client-lines .queue-head{margin-bottom:6px}.cl-chart{width:100%;height:auto;display:block;cursor:crosshair}.cl-grid{stroke:#0000000f;stroke-width:1}.cl-xlab{font-size:10px;fill:var(--ink-4, #9a9a90);letter-spacing:.04em}.cl-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;transition:opacity .25s ease}.cl-line.dim{opacity:.12}.cl-crossline{stroke:#00000040;stroke-width:1;stroke-dasharray:3 3}.cl-dot{r:3.5;stroke:#fff;stroke-width:1.5}.cl-readout{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;min-height:22px;padding:4px 2px 8px;font-size:13px}.cl-readout-item{display:inline-flex;align-items:baseline;gap:5px}.cl-readout-item i,.cl-key i{width:9px;height:9px;border-radius:50%;display:inline-block;align-self:center}.cl-legend{display:flex;flex-wrap:wrap;gap:6px}.cl-key{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;padding:4px 10px;border:1px solid rgba(0,0,0,.1);border-radius:999px;background:transparent;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.cl-key:hover{transform:translateY(-1px);border-color:#00000040}.cl-key.active{background:var(--orange-soft);border-color:var(--orange-fill)}.cl-key .hint{font-size:10.5px}.cl-bar{display:flex;height:34px;border:1.5px solid var(--ink, #1b1b1b);border-radius:8px;overflow:hidden;margin:12px 0 6px}.cl-slice{height:100%;transition:opacity .15s ease}.cl-slice.dim{opacity:.15}.cl-total{font-size:13px;margin:0 0 10px}.cl-rank{display:flex;flex-direction:column;gap:2px}.cl-rank-row{display:flex;align-items:baseline;gap:10px;width:100%;padding:6px 8px;border:none;background:transparent;font:inherit;font-size:13px;text-align:left;cursor:pointer;border-radius:6px;transition:background .15s ease}.cl-rank-row:hover{background:#0000000a}.cl-rank-row.active{background:var(--orange-soft)}.cl-rank-row .cl-pos{font-family:var(--mono);font-size:10.5px;color:var(--ink-4, #9a9a90);width:18px}.cl-rank-row i{width:9px;height:9px;border-radius:50%;display:inline-block;align-self:center;flex:none}.cl-rank-row .cl-name{flex:1}.cl-rank-row .hint{font-size:10.5px}.team-review{padding:0}.team-review-head{display:flex;align-items:center;gap:8px;width:100%;font:inherit;font-weight:600;font-size:14px;text-align:left;padding:12px 16px;background:transparent;border:0;cursor:pointer}.team-review-head .caret{display:inline-block;transition:transform .2s ease}.team-review-head .caret.open{transform:rotate(90deg)}.team-review-head .count{margin-left:auto;font-size:12px;font-weight:600;color:var(--orange)}.team-review-body{padding:0 12px 12px;display:grid;gap:12px}.team-review-body .card{box-shadow:none;border:1px solid rgba(0,0,0,.08)}.whatif{padding:12px 16px;margin-bottom:14px}.whatif-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.whatif-lead{font-weight:600;font-size:14px}.whatif-name,.whatif-days{font:inherit;padding:6px 10px;border:1px solid rgba(0,0,0,.15);border-radius:8px;background:#fff}.whatif-name{width:180px}.whatif-days{width:70px}.whatif-result{display:grid;gap:8px}.whatif-line{font-size:14px}.whatif-absorb{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;font-size:13px}.whatif-person b{margin-left:4px}.whatif .over{color:var(--orange);font-weight:600}.stat.whatif-live{outline:1px dashed var(--orange-fill);outline-offset:-1px}.whatif-from{opacity:.45;text-decoration:line-through;font-weight:400}@keyframes cl-draw-in{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.cl-draw{stroke-dasharray:1;animation:cl-draw-in .45s cubic-bezier(.3,.7,.3,1) both}.cl-chart{touch-action:pan-y;-webkit-user-select:none;user-select:none}.client-filter{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 14px}.cf-chip{font:inherit;font-size:12.5px;padding:5px 12px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:transparent;cursor:pointer;transition:transform .16s cubic-bezier(.3,.7,.4,1),background .15s ease,border-color .15s ease}.cf-chip:hover{transform:translateY(-1px);border-color:#00000047}.cf-chip.active{background:var(--ink);color:var(--paper, #f8f8e9);border-color:var(--ink)}.goal-saved{color:var(--orange);font-weight:700;font-size:12px;animation:goal-tick 1.8s ease both}@keyframes goal-tick{0%{opacity:0;transform:translateY(3px)}15%{opacity:1;transform:none}75%{opacity:1}to{opacity:0}}.btn,.cf-chip,.cl-key,.cap-chip,.fine-chip,.submission-person,.nav button,.view-toggle button,.team-review-head,.month-scrub button,.stat.clickable,.pulse-card,.chip,.icon-btn{transition:transform .18s cubic-bezier(.3,.7,.4,1),box-shadow .18s ease}.btn:active,.cf-chip:active,.cl-key:active,.cap-chip:active,.fine-chip:active,.submission-person:active,.nav button:active,.view-toggle button:active,.team-review-head:active,.month-scrub button:active,.stat.clickable:active,.pulse-card:active,.chip:active,.icon-btn:active{transform:scale(.985)}.stat{position:relative}.stat-gone{display:none}.stat-hide{position:absolute;top:4px;right:6px;border:none;background:none;color:inherit;opacity:0;cursor:pointer;font-size:14px;line-height:1;padding:2px 5px;border-radius:4px}.stat:hover .stat-hide{opacity:.4}.stat-hide:hover{opacity:.9!important;background:#00000012}.stat-restore{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:2px 0 10px}.glance{margin:4px 0 18px}.glance-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:900px){.glance-cols{grid-template-columns:1fr}}.glance-card{padding:12px 16px}.heat{padding:12px 16px;margin-bottom:14px}.heat-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.heat-title{font-weight:700;font-size:14px}.heat-spare{margin-left:auto;font-family:var(--mono);font-size:12.5px}.heat-grid{display:grid;gap:3px;align-items:center}.heat-wk{font-size:10px;text-transform:uppercase;letter-spacing:.04em;opacity:.55;text-align:center}.heat-wk.now{opacity:1;font-weight:700}.heat-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heat-cell{display:block;text-align:center;font-family:var(--mono);font-size:10.5px;padding:3px 0;border-radius:3px;color:var(--ink)}.heat-cell.now{outline:1px solid var(--ink);outline-offset:-1px}.heat-cell.leave{background:transparent;color:var(--ink-faint);font-style:italic;border:1px dashed var(--line)}.heat-cell.none{background:#0000000a;color:#00000059}.heat-cell.low{background:#0000001a}.heat-cell.mid{background:#00000038;color:var(--paper, #f8f8e9)}.heat-cell.full{background:#3f6b52;color:#fff}.heat-cell.over{background:var(--orange);color:#fff}.heat-legend{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:11px;opacity:.7}.heat-legend .heat-cell{width:22px}.split-bar{display:flex;height:14px;border-radius:4px;overflow:hidden;margin:4px 0 10px}.split-rows{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12.5px}.split-row{display:inline-flex;align-items:baseline;gap:6px}.split-row i{width:8px;height:8px;border-radius:2px;display:inline-block}.split-row b{font-family:var(--mono)}.split-row em{font-style:normal;opacity:.55;font-size:11.5px}.glance-verdict{font-size:13px;margin:10px 0 0}.glance-verdict.bad{color:var(--orange);font-weight:600}.glance-verdict.warn{opacity:.85}.fees-rows{display:grid;gap:4px}.fees-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:baseline;font-size:13px}.fees-name{font-weight:600}.fees-days{font-family:var(--mono);font-size:12px;opacity:.7}.fees-money{font-family:var(--mono);font-size:12px}.fees-money.over{color:var(--orange);font-weight:700}.rf-dash{flex:none;width:34px;height:34px;border:1.5px solid var(--ink);border-radius:8px;background:var(--card);color:var(--ink);font:500 15px/1 var(--font);cursor:pointer;margin-right:10px}.rf-dash:hover{background:#1b1b1b0d}.rf-clients{padding:26px 30px}.rf-clients-head{display:flex;align-items:center;gap:4px;margin-bottom:22px}.rf-clients-title{font:600 30px/1.1 var(--font);letter-spacing:-.01em}.rf-client-list{max-width:420px;border:1.5px solid var(--ink);border-radius:12px;overflow:hidden}.rf-client-row{display:block;width:100%;box-sizing:border-box;padding:14px 16px;border:none;border-bottom:1px solid rgba(27,27,27,.14);background:var(--card);color:var(--ink);font:500 15px/1.2 var(--font);text-align:left;cursor:pointer}.rf-client-row:last-child{border-bottom:none}button.rf-client-row:hover,select.rf-client-row:hover{background:#1b1b1b0d}select.rf-client-new{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#1b1b1b8c}.rf-client-empty{height:48px;cursor:default}.grid.budgets{width:100%;border-collapse:collapse}.grid.budgets th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.55;font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line-soft)}.grid.budgets th.num,.grid.budgets td.num{text-align:right;font-family:var(--mono);white-space:nowrap}.grid.budgets td{padding:9px 10px;border-bottom:1px solid var(--line-soft);font-size:13px}.grid.budgets tr:last-child td{border-bottom:0}.budget-row{cursor:pointer}.budget-row:hover{background:var(--line-soft)}.budget-row.over .rowhead{box-shadow:inset 3px 0 0 var(--orange)}.budget-row.warn .rowhead{box-shadow:inset 3px 0 0 var(--amber, #C08A2E)}.budget-row.ok .rowhead{box-shadow:inset 3px 0 0 transparent}.budget-detail td{background:var(--card);padding:12px 16px 16px}.budget-detail .k{font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.55;font-weight:600;margin-bottom:4px}.budget-detail .split{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:720px){.budget-detail .split{grid-template-columns:1fr;gap:14px}}.pill{display:inline-block;font-family:var(--mono);font-size:11px;padding:2px 8px;border-radius:999px;white-space:nowrap;border:1px solid var(--line-soft)}.pill.over{color:var(--orange);border-color:var(--orange)}.cap-cell.over{color:var(--orange);font-weight:700}.cap-cell.warn{font-weight:600}.cap-cell.under{opacity:.6}.plan-grid td.pva{white-space:nowrap;font-family:var(--mono);font-size:12px;text-align:center}.plan-grid td.pva-empty{text-align:center;color:var(--ink-faint)}.pva-plan{color:var(--ink-soft)}.pva-sep{color:var(--ink-faint);margin:0 4px}.pva-act{font-weight:600}.pva-act.over{color:var(--red)}.pva-act.under{color:var(--amber)}.pva-act.even{color:var(--ink)}.bar.burn-bar{position:relative;overflow:visible}.burn-split{position:absolute;inset:0 auto 0 0;display:flex;gap:2px}.burn-split span{flex-basis:0;min-width:2px}.burn-split span:first-child{border-radius:3px 0 0 3px}.burn-split span:last-child{border-radius:0 3px 3px 0}.burn-split span:only-child{border-radius:3px}.burn-money{color:var(--ink-faint)}
