@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.518e079e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.ea323500.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.853d50a3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.55554cd0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.3b6cae6d.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_22e2a02c-module__MwEO2a__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_22e2a02c-module__MwEO2a__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.56c1f21e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3b336396.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.e3369375.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.a40b9a8b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.fe42ddf4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.29207c2f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_42eec60-module__Gb1_vG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_42eec60-module__Gb1_vG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--primary:#0b6e4f;--on-primary:#f7fbf8;--primary-dark:#085a40;--primary-container:#d8f3e7;--accent:#12a06a;--background:#eaf1ed;--surface:#f7fbf8;--surface-alt:#dde7e2;--outline:#c5d4cc;--text:#14201b;--text-secondary:#4a5c54;--text-tertiary:#6e8078;--error:#c23b3b;--error-container:#f8e2e2;--success:#0b6e4f;--warning:#c47a14;--warning-container:#f8e8cc;--border:1px solid color-mix(in srgb,var(--outline)65%,transparent);--border-strong:1px solid var(--outline);--radius-sm:6px;--radius-md:8px;--radius-lg:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--focus-ring:0 0 0 3px color-mix(in srgb,var(--primary)35%,transparent);--ease:cubic-bezier(.2,0,0,1);--fast:.15s;--font-sans:var(--font-geist-sans),"Geist",Inter,ui-sans-serif,system-ui,sans-serif;--font-mono:var(--font-geist-mono),"Geist Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--primary:#3dba86;--on-primary:#06281c;--primary-dark:#7ad4aa;--primary-container:#163d2d;--accent:#4fd39a;--background:#0f1613;--surface:#18231e;--surface-alt:#22312a;--outline:#33453c;--text:#eef6f1;--text-secondary:#a9bdb3;--text-tertiary:#7e9489;--error:#e07a7a;--error-container:#4a2424;--success:#3dba86;--warning:#e0a84a;--warning-container:#4a3418;--focus-ring:0 0 0 3px color-mix(in srgb,var(--primary)45%,transparent);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{min-height:100vh;min-height:100dvh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:radial-gradient(1200px 500px at 10% -10%,color-mix(in srgb,var(--primary)16%,transparent),transparent 55%),radial-gradient(900px 420px at 100% 0%,color-mix(in srgb,var(--accent)12%,transparent),transparent 50%),linear-gradient(180deg,color-mix(in srgb,var(--background)88%,var(--primary-container))0%,var(--background)42%,var(--background)100%);background-attachment:fixed;font-size:15px;line-height:1.5}button,input,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3{margin:0}:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-frame{width:min(480px,100%);min-height:100vh;flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.app-main{gap:var(--space-4);padding:var(--space-8)var(--space-5)calc(var(--space-10) + 64px + env(safe-area-inset-bottom,0px));animation:enter .2s var(--ease)both;flex-direction:column;flex:1;display:flex}.app-main.stack{padding-top:var(--space-5)}.app-main>*{margin-top:0;margin-bottom:0}.stack-bar,.tab-bar{background:color-mix(in srgb,var(--surface)86%,transparent);-webkit-backdrop-filter:blur(12px)saturate(1.2);align-items:center;display:flex}.stack-bar{z-index:2;gap:var(--space-2);min-height:56px;padding:calc(6px + env(safe-area-inset-top,0px))var(--space-3)6px;border-bottom:var(--border);grid-template-columns:44px 1fr 44px;display:grid;position:-webkit-sticky;position:sticky;top:0}.stack-bar h1{letter-spacing:-.01em;text-align:center;font-size:15px;font-weight:600}.tab-bar{z-index:2;gap:var(--space-1);padding:var(--space-2)var(--space-3)calc(var(--space-2) + env(safe-area-inset-bottom,0px));border-top:var(--border);grid-template-columns:repeat(4,1fr);display:grid;position:-webkit-sticky;position:sticky;bottom:0}.tab-bar a{border-radius:var(--radius-sm);min-height:48px;color:var(--text-tertiary);transition:color var(--fast)var(--ease),background var(--fast)var(--ease),transform var(--fast)var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:500;display:flex}.tab-bar a:hover{color:var(--text)}.tab-bar a:active{transform:scale(.96)}.tab-bar a.active{color:var(--primary-dark);background:color-mix(in srgb,var(--primary-container)80%,transparent);font-weight:600}.screen-header{gap:var(--space-2);padding-bottom:var(--space-2);flex-direction:column;display:flex}.screen-header h2{letter-spacing:-.045em;font-size:32px;font-weight:700;line-height:1.05}.screen-header p{font-size:15px}.screen-header .brand-mark{align-items:center;gap:var(--space-2);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--primary-dark);font-size:11px;font-weight:500;display:inline-flex}.screen-header .brand-mark .dot{background:linear-gradient(135deg,var(--accent),var(--primary));border-radius:2px;width:8px;height:8px}.screen-header p,.muted,.caption{color:var(--text-secondary);margin:0}.caption{font-size:13px}.section-label{margin:var(--space-4)0 calc(-1*var(--space-2));font-family:var(--font-mono);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:500}h3{letter-spacing:-.02em;font-size:16px;font-weight:600}.card,.group{background:color-mix(in srgb,var(--surface)92%,transparent);border:var(--border);border-radius:var(--radius-md);padding:var(--space-5);transition:border-color var(--fast)var(--ease);margin:0}.card{gap:var(--space-1);flex-direction:column;display:flex}.card>.btn{margin-top:var(--space-4)}.card.hero{background:radial-gradient(420px 180px at 100% 0%,rgba(255,255,255,.18),transparent 60%),linear-gradient(145deg,var(--primary)0%,color-mix(in srgb,var(--primary)70%,#0a3d2d)100%);color:var(--on-primary);border:1px solid color-mix(in srgb,var(--primary)70%,#0a3d2d);padding:var(--space-6);gap:var(--space-2)}.card.hero h3{margin-top:var(--space-2);letter-spacing:-.035em;font-size:24px;font-weight:700;line-height:1.15}.card.hero .muted,.card.hero .caption{color:color-mix(in srgb,var(--on-primary)82%,transparent)}.card.hero .badge{color:var(--on-primary);background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);align-self:flex-start}.group{padding:0;overflow:hidden}.row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3)var(--space-4);border:0;border-bottom:var(--border);text-align:left;min-height:52px;transition:background var(--fast)var(--ease);background:0 0;display:flex}.group .row:last-child{border-bottom:0}.row:hover{background:color-mix(in srgb,var(--primary-container)35%,transparent)}.row:active{background:color-mix(in srgb,var(--primary-container)55%,transparent)}.row>svg{color:var(--text-secondary);transition:transform var(--fast)var(--ease);flex-shrink:0}.row:hover>svg{transform:translate(2px)}.row strong{letter-spacing:-.01em;font-size:14px;font-weight:500;display:block}.row span{color:var(--text-secondary);font-size:13px}.row .grow,.grow{flex:1;min-width:0}.btn{border-radius:var(--radius-sm);width:100%;min-height:44px;padding:0 var(--space-4);letter-spacing:-.01em;background:var(--primary);color:var(--on-primary);transition:transform var(--fast)var(--ease),opacity var(--fast)var(--ease),background var(--fast)var(--ease),border-color var(--fast)var(--ease);border:1px solid transparent;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.btn:hover{opacity:.9}.btn:active{transform:scale(.98)}.btn.secondary{background:var(--primary-container);color:var(--primary-dark)}.btn.danger{background:var(--error);color:#fff}.btn.outline{color:var(--text);border-color:var(--outline);background:0 0}.btn.outline:hover{opacity:1;background:color-mix(in srgb,var(--primary-container)35%,transparent)}.btn.inverted{background:var(--on-primary);color:var(--primary-dark)}.btn:disabled{opacity:.5;transform:none}.btn-row{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.action-stack{gap:var(--space-2);flex-direction:column;display:flex}.icon-btn,.round-btn{border-radius:var(--radius-sm);border:var(--border-strong);background:var(--surface);width:44px;height:44px;transition:transform var(--fast)var(--ease),background var(--fast)var(--ease),border-color var(--fast)var(--ease);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover,.round-btn:hover{background:color-mix(in srgb,var(--primary-container)70%,var(--surface-alt))}.icon-btn:active,.round-btn:active{transform:scale(.95)}.round-btn.plus{background:var(--primary-container);color:var(--primary-dark);border-color:transparent;font-size:20px;font-weight:600}.round-btn:disabled{opacity:.4;transform:none}.field{gap:var(--space-2);flex-direction:column;margin:0;display:flex}.field span{color:var(--text-secondary);font-size:13px;font-weight:500}.field input,.field select{border:var(--border-strong);background:var(--surface);border-radius:var(--radius-sm);min-height:44px;padding:0 var(--space-3);transition:border-color var(--fast)var(--ease),box-shadow var(--fast)var(--ease);font-size:14px}.field input:hover,.field select:hover{border-color:var(--text-tertiary)}.field input:focus,.field select:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}form{gap:var(--space-4);flex-direction:column;display:flex}.field input.mono,.ledger,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.inline input.mono{border:var(--border-strong);background:var(--surface);border-radius:var(--radius-sm);min-height:40px;padding:0 var(--space-3)}.badge{max-width:100%;height:22px;padding:0 var(--space-2);font-family:var(--font-mono);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;background:color-mix(in srgb,var(--primary-container)80%,transparent);color:var(--primary-dark);border-radius:4px;flex-shrink:0;align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.card>.badge{align-self:flex-start}.badge.warn{background:var(--warning-container);color:var(--warning)}.badge.ok{background:var(--primary-container);color:var(--primary-dark)}.empty{align-items:center;gap:var(--space-2);text-align:center;padding:var(--space-10)var(--space-5);border:1px dashed color-mix(in srgb,var(--outline)80%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface)70%,transparent);flex-direction:column;display:flex}.empty strong{letter-spacing:-.01em;font-size:15px;font-weight:600}.player-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (min-width:420px){.player-grid{grid-template-columns:1fr 1fr}}.player-grid .card{padding:var(--space-4)}.player-grid .card .ledger{margin-top:var(--space-1);font-size:20px;font-weight:600}.player-actions{gap:var(--space-2);margin-top:var(--space-3);align-items:center;display:flex}.dialog-backdrop{z-index:20;animation:fade .15s var(--ease)both;background:rgba(10,18,14,.5);justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.dialog{gap:var(--space-3);background:var(--surface);border:var(--border-strong);border-radius:var(--radius-lg)var(--radius-lg)0 0;width:min(480px,100%);padding:var(--space-6)var(--space-5)calc(var(--space-6) + env(safe-area-inset-bottom,0px));animation:sheet .2s var(--ease)both;border-bottom:0;flex-direction:column;display:flex}.dialog h2{letter-spacing:-.02em;font-size:18px;font-weight:600}.dialog .btn,.dialog .btn-row{margin-top:var(--space-2)}.segments{background:var(--surface-alt);border:var(--border);border-radius:var(--radius-md);grid-auto-columns:1fr;grid-auto-flow:column;gap:3px;padding:3px;display:grid}.segments button{border-radius:var(--radius-sm);text-transform:capitalize;min-height:36px;color:var(--text-secondary);transition:background var(--fast)var(--ease),color var(--fast)var(--ease),border-color var(--fast)var(--ease);background:0 0;border:1px solid transparent;font-size:13px;font-weight:500}.segments button:hover{color:var(--text)}.segments button.active{background:var(--surface);border-color:var(--outline);color:var(--text)}.center{min-height:40vh;color:var(--text-secondary);place-items:center;display:grid}.inline{align-items:center;gap:var(--space-2);display:flex}.warning-text{color:var(--warning)}.form-error{padding:var(--space-3);border:1px solid color-mix(in srgb,var(--error)35%,transparent);border-radius:var(--radius-sm);background:var(--error-container);color:var(--error);margin:0;font-size:13px;font-weight:500}.split{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-direction:row;display:flex}.split>:last-child{text-align:right}.split strong.ledger{font-size:20px;font-weight:600}.cash-fields{align-items:end;gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.cash-fields .field{min-width:0}.cash-fields .field span{text-align:center}.cash-fields input{text-align:center;width:100%;min-width:0;min-height:40px}.chart-card{height:220px;margin-top:var(--space-3);border-top:var(--border);padding-top:var(--space-3)}.kpi-strip{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.kpi{padding:var(--space-4);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface)90%,transparent);border:var(--border);text-align:left;transition:border-color var(--fast)var(--ease),transform var(--fast)var(--ease)}.kpi:hover{border-color:var(--outline);transform:translateY(-1px)}.kpi span{color:var(--text-secondary);margin-bottom:var(--space-1);font-size:12px;display:block}.kpi strong{letter-spacing:-.03em;font-size:18px;font-weight:600}.auth-box{gap:var(--space-6);flex-direction:column;margin-top:10vh;display:flex}.auth-box .screen-header h2{font-size:36px}.auth-link{color:var(--primary-dark);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--primary-dark)35%,transparent);text-decoration-color:color-mix(in srgb,var(--primary-dark)35%,transparent);text-underline-offset:4px;transition:text-decoration-color var(--fast)var(--ease);font-size:14px;font-weight:500}.auth-link:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.timeline{margin-top:var(--space-2)}.timeline-day{margin:var(--space-1)0 var(--space-2);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:11px;font-weight:500}.timeline-row{column-gap:var(--space-2);grid-template-columns:52px 18px minmax(0,1fr);display:grid}.timeline-time{text-align:right;font-family:var(--font-mono);color:var(--text-secondary);font-variant-numeric:tabular-nums;padding-top:12px;font-size:12px;font-weight:500;line-height:16px}.timeline-rail{position:relative}.timeline-rail:before{content:"";background:var(--outline);width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-row.is-first .timeline-rail:before{top:16px}.timeline-row.is-last .timeline-rail:before{height:18px;bottom:auto}.timeline-row.is-first.is-last .timeline-rail:before{display:none}.timeline-dot{z-index:1;background:var(--primary);width:9px;height:9px;box-shadow:0 0 0 3px var(--background);border-radius:999px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.timeline-events{gap:var(--space-2);min-width:0;padding:var(--space-1)0 var(--space-4);flex-direction:column;display:flex}.timeline-event{background:var(--surface);border:var(--border);border-left:3px solid var(--primary);border-radius:var(--radius-sm);padding:var(--space-3)}.timeline-event.tone-1{border-left-color:#3b82f6}.timeline-event.tone-2{border-left-color:var(--warning)}.timeline-event.tone-3{border-left-color:#0f766e}.timeline-event-top{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.timeline-event-top strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.timeline-event .totals{color:var(--text-secondary);font-family:var(--font-mono);white-space:nowrap;font-size:12px}.timeline-event .delta{margin:2px 0 0;font-size:13px;font-weight:500}.timeline-event .delta.down{color:var(--error)}@keyframes enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes sheet{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:768px){.app-frame{border-left:var(--border);border-right:var(--border)}}
