:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--fairway:#2e7d32;--evergreen:#1b4d2e;--sand:#a86a12;--card:#fff;--turf-top:#e3f2df;--turf-bottom:#c6e4c0;--destructive:#c62828;--text:#16241b;--text-secondary:#5b6b60;--separator:#1b4d2e1f;--stripe:#ffffff47;--shadow:0 1px 2px #0f221714, 0 4px 16px #0f22170f}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--fairway:#6fcf73;--evergreen:#a9d8b0;--sand:#e3b65e;--card:#16241b;--turf-top:#0f2217;--turf-bottom:#0a170f;--destructive:#ff6b6b;--text:#e8f3ea;--text-secondary:#9db3a3;--separator:#a9d8b024;--stripe:#ffffff09;--shadow:none}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{min-height:100dvh;color:var(--text);background:var(--turf-bottom);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.3}.fairway{z-index:-1;background:repeating-linear-gradient(66deg, var(--stripe) 0 46px, transparent 46px 92px), linear-gradient(var(--turf-top), var(--turf-bottom));position:fixed;inset:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{flex:none;width:1.15em;height:1.15em}#app{max-width:560px;padding:max(12px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0 auto}.top-bar{justify-content:space-between;align-items:center;gap:12px;padding:8px 4px 12px;display:flex}.top-bar h1{letter-spacing:-.02em;color:var(--evergreen);margin:0;font-size:34px;font-weight:700}.clear-button{font:inherit;color:var(--destructive);cursor:pointer;background:0 0;border:0;padding:8px 4px;font-weight:500}.clear-button:disabled{color:var(--text-secondary);opacity:.5;cursor:default}.card{margin-top:20px}.section-header{color:var(--evergreen);align-items:center;gap:6px;margin:0 0 8px 16px;font-size:15px;font-weight:600;display:flex}.section-header .row-icon{color:var(--evergreen)}.rows{background:var(--card);box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.row{justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:8px 16px;display:flex}.row+.row{border-top:1px solid var(--separator)}.row-label{align-items:center;gap:10px;display:flex}.row-icon{color:var(--fairway);display:inline-flex}.row-value{color:var(--text-secondary);font-variant-numeric:tabular-nums;text-align:right}.total{color:var(--evergreen);font-weight:600}.hint{color:var(--evergreen);opacity:.8;margin:8px 16px 0;font-size:13px}.pay-value{border:2px solid var(--fairway);min-width:48px;min-height:48px;color:var(--fairway);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:20px;font-weight:700;display:inline-flex}.stepper-controls{align-items:center;gap:10px;display:flex}.step-button{width:36px;height:36px;color:var(--fairway);background:color-mix(in srgb, var(--fairway) 15%, transparent);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.step-button:active:not(:disabled){background:color-mix(in srgb, var(--fairway) 28%, transparent)}.step-button:disabled{opacity:.35;cursor:default}.count-input{width:56px;font:inherit;font-variant-numeric:tabular-nums;text-align:center;color:var(--evergreen);background:0 0;border:0;border-radius:8px;padding:4px 0;font-size:20px;font-weight:600}.count-input:focus{background:color-mix(in srgb, var(--fairway) 14%, transparent);outline:none}.step-button:focus-visible,.clear-button:focus-visible{outline:2px solid var(--fairway);outline-offset:2px}.kitty-badge{font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:15px;font-weight:600;display:inline-flex}.kitty-in{color:var(--fairway);background:color-mix(in srgb, var(--fairway) 15%, transparent)}.kitty-out{color:var(--sand);background:color-mix(in srgb, var(--sand) 15%, transparent)}.kitty-none{color:var(--text-secondary);background:color-mix(in srgb, var(--text-secondary) 15%, transparent)}
