@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations")}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations")}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f6f5f1;--panel:#fff;--fill:#ecebe5;--border:#e2e0d8;--line-soft:#eeede7;--border-strong:#8a918b;--text:#1f2421;--muted:#5c635e;--muted-2:#b3b8b2;--chevron:#8a918b;--accent:#4f7942;--on-accent:#fff;--accent-ink:#3e6034;--accent-soft:#e8efe2;--accent-wash:#f3f7ef;--accent-deep:#2f4a27;--on-deep:#fff;--on-deep-muted:#c9d8c0;--accent-focus:#4f794238;--lime:#8cc63f;--slate:#56677a;--slate-ink:#3f4e5c;--slate-soft:#e6eaee;--sand:#f4ead2;--sand-ink:#6b4e0c;--mustard:#d9a520;--highlight:#f0e3b8;--splash-tip:var(--lime);--danger:#b0402c;--on-danger:#fff;--warning:#8a5310;--warning-soft:#f6ebd9;--sys-orange:var(--warning);--sys-green:var(--accent-ink);--sys-purple:var(--slate);--sys-teal:var(--accent-deep);--sys-indigo:var(--slate);--booked:#b07212;--confirmed:var(--slate);--worked:var(--accent);--billed:var(--accent-deep);--cancelled:#b9bdb7;--stipend:var(--slate);--font-primary:"DM Sans Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif;--font-display:"Fraunces Variable", Georgia, "Times New Roman", serif;--font-num:"Inter Variable", var(--font-primary);--font-alt:var(--font-primary);--radius:16px;--radius-md:12px;--radius-sm:8px;--radius-pill:999px;--shadow-card:0 1px 2px #1f24210f, 0 2px 8px #1f24210a;--shadow-sheet:0 8px 30px #1f242124;--overlay:#1f242161;--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);font-family:var(--font-primary)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#171d1a;--panel:#212925;--fill:#121714;--border:#2f3833;--line-soft:#29322d;--border-strong:#6b746e;--text:#eef0ea;--muted:#a9b0aa;--muted-2:#58605a;--chevron:#6b746e;--accent:#8cc63f;--on-accent:#14200f;--accent-ink:#a6d466;--accent-soft:#26341f;--accent-wash:#1d2820;--accent-deep:#2f4a27;--accent-focus:#8cc63f4d;--slate:#9fb0c2;--slate-ink:#c5d2df;--slate-soft:#262e36;--sand:#3a2e1a;--sand-ink:#e3b062;--mustard:#e3b84a;--highlight:#e3b84a4d;--splash-tip:#fff;--danger:#f08a74;--on-danger:#2a0f09;--warning:#e3b062;--warning-soft:#3a2e1a;--booked:#e3b062;--cancelled:#58605a;--billed:#a6d466;--shadow-card:0 1px 2px #00000059;--shadow-sheet:0 8px 30px #00000080;--overlay:#0000008c}}:root[data-theme=dark]{--bg:#171d1a;--panel:#212925;--fill:#121714;--border:#2f3833;--line-soft:#29322d;--border-strong:#6b746e;--text:#eef0ea;--muted:#a9b0aa;--muted-2:#58605a;--chevron:#6b746e;--accent:#8cc63f;--on-accent:#14200f;--accent-ink:#a6d466;--accent-soft:#26341f;--accent-wash:#1d2820;--accent-deep:#2f4a27;--accent-focus:#8cc63f4d;--slate:#9fb0c2;--slate-ink:#c5d2df;--slate-soft:#262e36;--sand:#3a2e1a;--sand-ink:#e3b062;--mustard:#e3b84a;--highlight:#e3b84a4d;--splash-tip:#fff;--danger:#f08a74;--on-danger:#2a0f09;--warning:#e3b062;--warning-soft:#3a2e1a;--booked:#e3b062;--cancelled:#58605a;--billed:#a6d466;--shadow-card:0 1px 2px #00000059;--shadow-sheet:0 8px 30px #00000080;--overlay:#0000008c}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:22px}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}body{-webkit-tap-highlight-color:transparent}button,.tabbar,.seg,.badge,.pill{-webkit-user-select:none;user-select:none}@media (width<=899px),(pointer:coarse){input,select,textarea{font-size:16px!important}}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:500}a{color:var(--accent-ink)}h1{font-family:var(--font-display);letter-spacing:-.01em;font-weight:500!important}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}.section-label{color:var(--muted);margin:0;font-size:13px;font-weight:500;line-height:18px}.link{color:var(--accent-ink);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:500;line-height:20px;text-decoration:none}.hairline{border:none;border-top:1px solid var(--line-soft);margin:0}button{font:inherit;cursor:pointer;color:var(--text);border-radius:var(--radius-sm);transition:filter .12s var(--ease-standard), opacity .12s var(--ease-standard), transform .1s var(--ease-out);background:0 0;border:none}button:hover:not(:disabled){filter:brightness(.97)}button:active:not(:disabled){filter:brightness(.92);transform:scale(.98)}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select,textarea{font:inherit;color:var(--text);transition:border-color .15s var(--ease-standard), box-shadow .15s var(--ease-standard)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-focus);outline:none}.btn{border-radius:var(--radius-md);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 16px;font-size:14px;font-weight:500;display:inline-flex}.btn-lg{height:48px;font-size:16px}.btn-sm{border-radius:10px;height:36px;padding:0 14px}a.btn,a.btn:hover{text-decoration:none}.btn-primary{background:var(--accent);color:var(--on-accent)}a.btn-primary{color:var(--on-accent)}.btn-secondary{background:var(--accent-soft);color:var(--accent-ink)}.btn-white{background:var(--panel);color:var(--accent-ink)}.btn-outline{background:var(--panel);color:var(--accent-ink);border:1px solid var(--border)}.btn-plain{color:var(--accent-ink);background:0 0;padding:6px 8px;font-weight:500}.btn-destructive{background:var(--panel);color:var(--danger);border:1px solid var(--border)}.btn-primary:disabled,.btn-secondary:disabled{background:var(--fill);color:var(--muted);opacity:1}.icon-btn{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-ink);border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn.outline{background:var(--panel);border:1px solid var(--border)}.field{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-md);min-height:42px;color:var(--text);padding:0 12px}textarea.field{padding:10px 12px;line-height:22px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}.list-group{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden}.list-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;display:flex}.list-row:last-child{border-bottom:none}.badge,.pill{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.badge-slate{background:var(--slate-soft);color:var(--slate-ink)}.badge-olive{background:var(--accent-soft);color:var(--accent-ink)}.badge-white{background:var(--panel);color:var(--accent-ink)}.badge-sand{background:var(--sand);color:var(--sand-ink)}.badge-muted{background:var(--fill);color:var(--muted)}.dot{box-sizing:border-box;border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-lg{width:10px;height:10px}.dot-worked{background:var(--worked)}.dot-confirmed{border:2px solid var(--confirmed);background:0 0}.dot-booked{background:var(--booked)}.dot-billed{background:var(--billed)}.dot-cancelled{background:var(--cancelled)}.seg{border-radius:var(--radius-md);background:var(--fill);padding:3px;display:inline-flex}.seg button{height:32px;color:var(--muted);background:0 0;border:none;border-radius:9px;padding:0 14px;font-size:14px;font-weight:500}.seg button.active{background:var(--panel);color:var(--text);box-shadow:var(--shadow-card)}.banner{border-radius:var(--radius-md);background:var(--warning-soft);color:var(--warning);align-items:flex-start;gap:10px;padding:10px 12px;font-size:14px;line-height:20px;display:flex}.banner>svg{flex:none;margin-top:1px}.banner>span{flex:1}.banner a,.banner button{color:inherit;background:0 0;padding:0;font-weight:500;text-decoration:underline}.banner-danger{background:var(--panel);border:1px solid var(--border);color:var(--danger)}.form-card{flex-direction:column;gap:12px;padding:16px;display:flex}.form-card-title{color:var(--muted);margin:0;font-size:13px;font-weight:500}.form-card-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-card-field-label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.app{min-height:100vh}.sidebar{display:none}.tabbar{z-index:40;padding:6px 6px max(env(safe-area-inset-bottom,0px), 12px);background:var(--panel);border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a,.tabbar button{color:var(--muted);transition:background-color .18s var(--ease-standard), color .18s var(--ease-standard);background:0 0;border-radius:14px;flex-direction:column;align-items:center;gap:3px;padding:7px 0 6px;font-size:11px;font-weight:500;line-height:14px;text-decoration:none;display:flex}.tabbar .active{background:var(--accent);color:var(--on-accent)}.main{min-width:0}.screen{padding:0 16px calc(104px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:16px;display:flex;overflow-x:clip}.phone-top{padding:calc(20px + env(safe-area-inset-top,0px)) 0 0;justify-content:space-between;align-items:center;gap:12px;min-height:56px;display:flex}.back-btn{color:var(--accent-ink);background:0 0;border-radius:10px;align-items:center;gap:2px;margin-left:-8px;padding:8px 10px 8px 4px;font-size:17px;font-weight:500;display:inline-flex}.page-title{font-size:32px;line-height:38px}.title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.only-desktop{display:none!important}@media (width>=900px){.app{grid-template-columns:248px minmax(0,1fr);display:grid}.sidebar{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;gap:28px;height:100vh;padding:28px 16px 20px;display:flex;position:sticky;top:0}.tabbar,.phone-top,.only-phone{display:none!important}.only-desktop{display:revert!important}.screen{gap:24px;max-width:1320px;padding:28px 40px 40px}.page-title{letter-spacing:-.015em;font-size:38px;line-height:44px}}.logo-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-light{display:none}:root:not([data-theme=light]) .logo-dark{display:block}}:root[data-theme=dark] .logo-light{display:none}:root[data-theme=dark] .logo-dark{display:block}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.sidebar-nav button{height:42px;color:var(--muted);text-align:left;background:0 0;border-radius:10px;align-items:center;gap:12px;padding:0 12px;font-size:15px;font-weight:500;display:flex}.sidebar-nav button.active{background:var(--accent-soft);color:var(--accent-ink)}.earned-card{background:var(--bg);border-radius:14px;flex-direction:column;gap:2px;margin-top:auto;padding:16px;display:flex}.meter{background:var(--border);border-radius:3px;height:6px;display:block;overflow:hidden}.meter>span{background:var(--accent);border-radius:3px;height:100%;display:block}.favorite-pill{background:var(--panel);border:1px solid var(--border);cursor:grab;text-align:left;min-width:140px;transition:box-shadow .15s var(--ease-standard), border-color .15s var(--ease-standard);border-radius:10px;flex-direction:column;flex-shrink:0;gap:2px;padding:6px 10px;display:flex;position:relative}.favorite-pill:active{cursor:grabbing}.favorite-pill:hover{border-color:var(--accent)}.favorite-pill.editing{border-color:var(--accent);background:var(--accent-soft)}.favorite-pill-add{color:var(--accent-ink);cursor:pointer;background:0 0;border-style:dashed;justify-content:center;align-items:center;min-width:100px;font-size:13px;font-weight:500}.favorite-pill-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px;font-size:14px;line-height:1;position:absolute;top:2px;right:4px}.favorite-pill-remove:hover{color:var(--danger)}.cal-cell.drag-over{outline:2px dashed var(--accent);outline-offset:-2px;background-color:var(--accent-soft)!important}.week-day-drop.drag-over{outline:2px dashed var(--accent);outline-offset:-2px;border-radius:var(--radius)}.cal-head{border-bottom:1px solid var(--border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-head>div{text-align:center;color:var(--muted);padding:8px 0;font-size:12px;font-weight:500;line-height:16px}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-cell{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:var(--panel);min-height:70px;transition:background-color .15s var(--ease-standard);flex-direction:column;align-items:center;gap:4px;padding:6px 3px 4px;display:flex;position:relative}.cal-cell.last-col{border-right:none}.cal-cell.last-row{border-bottom:none}.cal-cell.today{background:var(--accent-wash)}.cal-cell.clickable{cursor:pointer}.cal-cell.clickable:hover{background-color:var(--accent-wash)}.cal-num{min-width:24px;height:24px;font:500 13px/1 var(--font-num);font-variant-numeric:tabular-nums;color:var(--text);justify-content:center;align-items:center;display:inline-flex}.cal-num.out{color:var(--muted-2)}.cal-num.today{background:var(--accent);width:24px;color:var(--on-accent);border-radius:50%;font-weight:600}.cal-chip{border-radius:var(--radius-sm);background:var(--fill);cursor:pointer;min-width:0;max-width:100%;transition:transform .12s var(--ease-out);align-items:center;gap:3px;padding:3px 4px;display:inline-flex;overflow:hidden}.cal-chip:hover{transform:translateY(-1px)}.cal-chip.worked{background:var(--accent-soft)}.cal-chip.confirmed{background:var(--slate-soft)}.cal-chip .time{font:500 10.5px/14px var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}.cal-chip.cancelled .time{color:var(--muted);text-decoration:line-through}.cal-chip .mer{display:none}.cal-chip .site,.cal-chip .tag{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;line-height:16px;display:none;overflow:hidden}@media (width>=900px){.summary-grid{gap:8px 16px}.summary-figure{font-size:17px;line-height:26px}.cal-head>div{text-align:left;padding:12px 12px 10px;font-size:13px;line-height:18px}.cal-cell{align-items:flex-start;gap:8px;min-height:clamp(76px,16.6667dvh - 50px,104px);padding:10px}.cal-num{min-width:28px;height:28px;font-size:14px}.cal-num.today{width:28px}.cal-chip{gap:6px;width:100%;padding:5px 8px;display:flex}.cal-chip .time{font-size:12px;line-height:16px}.cal-chip .mer{display:inline}.cal-chip .site,.cal-chip .tag{display:block}.cal-chip .tag{flex-shrink:0}}.view-select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);min-width:0;height:36px;color:var(--muted);cursor:pointer;align-items:center;gap:6px;padding:0 28px 0 12px;font-size:14px;font-weight:500;display:inline-flex;position:relative}.view-select select{appearance:none;min-width:0;max-width:92px;color:var(--text);font:inherit;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;padding:0}.view-select select:focus{box-shadow:none}.view-chevron{pointer-events:none;color:var(--muted);position:absolute;right:10px}.view-select.active{background:var(--accent-soft);color:var(--accent-ink);border-color:#0000}.view-select.active select,.view-select.active .view-chevron{color:var(--accent-ink)}@media (width>=900px){.view-select{height:40px}.view-select select{max-width:220px}}.legend{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:12px;line-height:16px;display:flex}.legend>span{align-items:center;gap:6px;display:inline-flex}.summary-grid{grid-template-columns:1fr auto auto;align-items:baseline;gap:6px 22px;display:grid}.summary-grid.compact .summary-figure{font-size:14px!important}.summary-head{text-align:right;font-size:12px;font-weight:500;line-height:16px}.summary-figure{white-space:nowrap;font:600 20px/28px var(--font-num);font-variant-numeric:tabular-nums;text-align:right;letter-spacing:-.01em}.stat-tile{flex-direction:column;gap:4px;padding:18px 20px;display:flex}.stat-tile .k{color:var(--muted);font-size:13px;font-weight:500;line-height:18px}.stat-tile .v{font:600 26px/32px var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.week-tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:none}@media (width>=900px){.week-tiles{display:grid}}.week-cols{grid-template-columns:repeat(7,minmax(120px,1fr));gap:12px;min-width:900px;display:grid}.tc-desktop{display:none}.tc-row{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px 20px;display:grid}@media (width>=900px){.tc-desktop{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}}.report-table{border-collapse:collapse;width:100%;font-size:14px}.report-table th,.report-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:middle;padding:13px 16px}.report-table thead th{color:var(--muted);border-bottom:1px solid var(--border);padding:12px 16px;font-size:12px;font-weight:500;line-height:16px}.report-table tr.subtotal td{background:color-mix(in srgb, var(--fill) 45%, var(--panel));font-weight:500}.report-table tr.grand-total td{border-top:2px solid var(--text);border-bottom:none;font-weight:600}.report-table td.n,.report-table th.n{text-align:right;font-family:var(--font-num);font-variant-numeric:tabular-nums}.swipe-under{z-index:1;background:var(--bg);pointer-events:none;position:fixed;inset:0;overflow:hidden;transform:translate(-28%)}.swipe-under:after{content:"";opacity:var(--dim,.14);background:#000;position:absolute;inset:0}.main.swiping{z-index:2;background:var(--bg);will-change:transform;position:relative;box-shadow:-10px 0 28px #00000024}.tab-panel.no-anim{animation:none}.tab-panel{animation:fade-in .2s var(--ease-out)}.modal-overlay{animation:fade-in .15s var(--ease-standard)}.modal-panel{animation:modal-in .2s var(--ease-out)}.sheet-grabber{background:var(--border);border-radius:3px;flex-shrink:0;width:36px;height:5px;margin:8px auto}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}@media print{.no-print,.sidebar,.tabbar,.phone-top{display:none!important}.app{display:block}.screen{max-width:none;padding:0}body{color:#000;background:#fff}.card{box-shadow:none;border-color:#999}.report-table th,.report-table td{color:#000;border-color:#999}.report-table thead th,.report-table tr.subtotal td{background:#eee}}.mileage-tiles{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.only-desktop-tile{display:none}@media (width>=900px){.mileage-tiles{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.only-desktop-tile{display:flex}}.inv-layout{flex-wrap:wrap;align-items:stretch;gap:24px;display:flex}.inv-form{flex-direction:column;flex:340px;gap:14px;min-width:0;display:flex}.inv-fields{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden}.inv-row{border:none;border-bottom:1px solid var(--line-soft);width:100%;min-height:56px;color:var(--text);font:inherit;text-align:left;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;display:flex}.inv-row-button{cursor:pointer}.inv-dates .inv-row:last-child{border-bottom:none}.inv-ctl{font:500 15px/20px var(--font-num);color:var(--text)}.inv-select{align-items:center;min-width:0;display:flex;position:relative}.inv-select-icon{pointer-events:none;color:var(--muted);position:absolute;right:0}select.inv-ctl{appearance:none;text-align:right;font:400 15px/20px var(--font-primary);color:var(--muted);cursor:pointer;background:0 0;border:none;max-width:100%;padding:6px 24px 6px 0}select.inv-ctl:focus{box-shadow:none}input.inv-ctl{background:var(--fill);border:none;border-radius:8px;padding:6px 10px}.date-field input{min-width:116px}.date-field{display:inline-flex;position:relative}.date-field.empty input{color:#0000}.date-field .date-placeholder{font:400 15px/20px var(--font-primary);color:var(--muted-2);pointer-events:none;align-items:center;padding:0 10px;display:flex;position:absolute;inset:0}.inv-po{font-family:var(--font-primary);color:var(--accent-ink);align-items:center;gap:4px;font-weight:500;display:flex}.inv-actions{flex-direction:column;gap:8px;display:flex}.inv-hint{color:var(--muted);text-align:center;margin:0;font-size:13px;line-height:18px}.inv-preview,.inv-form-title{display:none}.sk{background:#ecebe5;border-radius:5px;height:10px;display:block}.inv-paper{aspect-ratio:8.5/11;color:#1f2421;background:#fff;border-radius:6px;flex-direction:column;gap:22px;width:100%;max-width:520px;max-height:560px;padding:36px;display:flex;overflow:hidden;box-shadow:0 1px 2px #1f24210f,0 12px 32px #1f242114}@media (width>=900px){.inv-form{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);max-width:460px;box-shadow:var(--shadow-card);flex:340px;gap:18px;padding:24px}.inv-form-title{font-family:var(--font-display);font-size:22px;font-weight:500;line-height:28px;display:block}.inv-fields{box-shadow:none;background:0 0;border:none;flex-direction:column;gap:18px;display:flex;overflow:visible}.inv-row{border-bottom:none;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px;min-height:0;padding:0}.inv-row label,.inv-row .inv-label{color:var(--muted);font-size:13px;font-weight:500;line-height:18px}.inv-select{display:block}.inv-ctl,select.inv-ctl,input.inv-ctl{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--panel);text-align:left;width:100%;height:46px;color:var(--text);font:500 15px/20px var(--font-num);align-items:center;padding:0 14px;display:flex}input.inv-ctl[type=date]{padding:0 10px;font-size:14px}select.inv-ctl{font:400 15px/20px var(--font-primary);padding-right:36px}.inv-select-icon{top:15px;right:12px}.inv-po{justify-content:space-between}.inv-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.inv-preview{border-radius:var(--radius);background:var(--fill);flex:999 420px;justify-content:center;align-items:flex-start;min-width:0;padding:32px;display:flex}}.splash{z-index:200;background:var(--bg);transition:opacity .32s var(--ease-standard);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.splash.hide{opacity:0;pointer-events:none}.splash-logo{width:min(62vw,280px);height:auto;overflow:visible}.sp-row,.sp-tip,.sp-letter{transform-box:fill-box;transform-origin:50%}.sp-row line{stroke:var(--accent)}.sp-tip{stroke:var(--splash-tip)}.sp-letter{fill:var(--accent)}.sp-row{animation:.46s cubic-bezier(.2,.8,.2,1) both sp-pill}.sp-row-1{animation-delay:0s}.sp-row-2{animation-delay:90ms}.sp-row-3{animation-delay:.18s}.sp-tip{animation:.62s cubic-bezier(.2,.9,.3,1) .3s both sp-tip}.sp-letter{animation:.38s cubic-bezier(.2,.8,.2,1) both sp-letter}@keyframes sp-pill{0%{opacity:0;transform:translateY(-10px)scaleX(.55)}to{opacity:1;transform:none}}@keyframes sp-tip{0%{opacity:0;transform:scale(.3)}55%{opacity:1;transform:scale(1.5,1.35)}to{opacity:1;transform:none}}@keyframes sp-letter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.earned{font:inherit;color:inherit;text-align:right;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-end;margin-left:auto;padding:0;display:inline-flex}.earned-amount{letter-spacing:-.01em;color:var(--accent-ink);font-size:24px;font-weight:600;line-height:30px}.earned-hours{color:var(--muted);font-size:12px;line-height:16px}.earned-inline{text-align:left;flex-direction:row;align-items:baseline;gap:8px;margin-top:2px;margin-left:0}.earned-inline .earned-amount{font-size:20px;line-height:26px}.earned-none{color:var(--muted);margin-left:auto;font-size:13px}.hl{isolation:isolate;display:inline-block;position:relative}.hl:after{content:"";z-index:-1;background:var(--highlight);transform-origin:0;border-radius:7px;animation:2.1s linear 1.85s forwards hl-wash;position:absolute;inset:1px -8px;transform:scaleX(0)}@keyframes hl-wash{0%{transform-origin:0;animation-timing-function:cubic-bezier(.2,.8,.2,1);transform:scaleX(0)}26%{transform-origin:0;animation-timing-function:linear;transform:scaleX(1)}72%{transform-origin:100%;animation-timing-function:cubic-bezier(.4,0,.2,1);transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}.more-tile{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-ink);border-radius:10px;flex:none;place-items:center;display:grid}.settings-row{flex-direction:column;gap:8px;padding:16px;display:flex}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=900px){.report-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.report-stat{flex-direction:column;gap:2px;padding:14px 16px;display:flex}.report-stat .label{color:var(--muted);font-size:12px;font-weight:500;line-height:16px}.report-stat .value{letter-spacing:-.01em;font-size:22px;font-weight:600;line-height:28px}.auth-screen{min-height:100dvh;padding:calc(24px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px));background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.auth-card{background:var(--panel);width:100%;max-width:400px;box-shadow:var(--shadow-card);border-radius:20px;flex-direction:column;gap:14px;padding:28px 24px;display:flex}.auth-field{color:var(--muted);flex-direction:column;gap:6px;font-size:14px;font-weight:500;display:flex}.auth-field .field{width:100%}.auth-note,.auth-hint{color:var(--muted);margin:0;font-size:13px;font-weight:400;line-height:19px}.auth-error{color:var(--danger);margin:0;font-size:14px}.auth-card .link{align-self:center}.sync-stack{left:0;right:0;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:45;pointer-events:none;flex-direction:column;align-items:center;gap:8px;padding:0 16px;display:flex;position:fixed}.sync-pill{pointer-events:auto;background:var(--text);max-width:460px;color:var(--bg);box-shadow:var(--shadow-sheet);border-radius:999px;align-items:center;gap:12px;padding:10px 16px;font-size:13px;font-weight:500;line-height:18px;display:flex}.sync-pill .link{color:inherit;white-space:nowrap;text-decoration:underline}.sync-pill-warn{background:var(--warning);color:var(--on-danger)}@media (width>=900px){.sync-stack{align-items:flex-end;padding:0 24px;bottom:24px}}.onboarding-dots{gap:6px;display:flex}.onboarding-dots span{background:var(--line-soft);border-radius:2px;width:22px;height:4px}.onboarding-dots span.on{background:var(--accent)}.onboarding-types{color:var(--muted);flex-direction:column;gap:8px;margin:0;padding:0 0 0 18px;font-size:14px;line-height:20px;display:flex}.onboarding-types strong{color:var(--text);font-weight:500}.cal-cell.blocked{background-image:repeating-linear-gradient(135deg, transparent 0 7px, var(--line-soft) 7px 8px)}.cal-block{color:var(--slate-ink);background:var(--slate-soft);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:6px;align-self:stretch;margin:0 1px;padding:2px 5px;font-size:11px;font-weight:500;line-height:14px;overflow:hidden}.block-swatch{vertical-align:-1px;background:var(--slate-soft);border:1px solid var(--line-soft);border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.block-row{width:100%;color:var(--slate-ink);background:var(--slate-soft);text-align:left;cursor:pointer;border:none;border-radius:10px;justify-content:space-between;align-items:baseline;gap:8px;padding:8px 12px;font-size:13px;line-height:18px;display:flex}.block-row span{color:var(--muted);font-size:12px}.week-day-drop.blocked{background-image:repeating-linear-gradient(135deg, transparent 0 7px, var(--line-soft) 7px 8px)}
