:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f6f7f4;--surface:#fff;--surface-muted:#eef0ec;--text:#20241f;--muted:#5d665b;--accent:#2f6f4f;--on-accent:#fff;--error:#a4262c;--border:#d8dcd5;--personal:#2f5f8a;--shared:#a3542a;--expense:#b23b3b;--income:#2f7d4f;--sunday:#b23b3b;--saturday:#2f5f8a;--backdrop:#14181459;font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#171a17;--surface:#222622;--surface-muted:#2b302b;--text:#eef0ec;--muted:#a8b0a6;--accent:#7cc49d;--on-accent:#10211a;--error:#ff8f8f;--border:#3a403a;--personal:#8bb8e0;--shared:#e8a57f;--expense:#ff9a8f;--income:#8fd4a6;--sunday:#ff9a8f;--saturday:#8bb8e0;--backdrop:#0000008c}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#171a17;--surface:#222622;--surface-muted:#2b302b;--text:#eef0ec;--muted:#a8b0a6;--accent:#7cc49d;--on-accent:#10211a;--error:#ff8f8f;--border:#3a403a;--personal:#8bb8e0;--shared:#e8a57f;--expense:#ff9a8f;--income:#8fd4a6;--sunday:#ff9a8f;--saturday:#8bb8e0;--backdrop:#0000008c}*,:before,:after{box-sizing:border-box}body{background:var(--background);color:var(--text);margin:0}main{max-width:28rem;margin:0 auto;padding:1rem 1rem 2rem}main.centered{padding-top:calc(env(safe-area-inset-top) + 1.5rem)}h1{font-size:1.4rem}h2{margin:0 0 .5rem;font-size:1.1rem}button{border:1px solid var(--accent);background:var(--accent);min-height:2.75rem;color:var(--on-accent);font:inherit;cursor:pointer;border-radius:.5rem;font-weight:600}button.secondary{color:var(--accent);background:0 0}button.danger{border-color:var(--error);color:var(--error);background:0 0}button:disabled{opacity:.45;cursor:not-allowed}.icon-button{min-width:2.75rem;color:var(--text);background:0 0;border-color:#0000;font-size:1.3rem;line-height:1}input{border:1px solid var(--border);background:var(--background);width:100%;min-height:2.75rem;color:var(--text);font:inherit;border-radius:.5rem;margin-bottom:.75rem;padding:0 .75rem}.actions{gap:.75rem;display:grid}.success{color:var(--accent)}.error{color:var(--error)}.muted{color:var(--muted);font-size:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;margin-bottom:1rem;padding:1rem}.notice{border-left:4px solid var(--shared);background:var(--surface);border-radius:.5rem;gap:.75rem;padding:.75rem;display:grid}.notice p{margin:0}dl{grid-template-columns:auto 1fr;gap:.5rem 1rem;display:grid}dt{color:var(--muted)}dd{overflow-wrap:anywhere;margin:0}.shell{flex-direction:column;min-height:100dvh;display:flex}.content{flex:1;width:100%}.topbar{z-index:2;padding:calc(env(safe-area-inset-top) + .5rem) .5rem .5rem 1rem;background:var(--background);border-bottom:1px solid var(--border);align-items:center;gap:.25rem;display:flex;position:sticky;top:0}.topbar-title{flex:1;margin:0;font-size:1.1rem}.scope{flex:1;grid-template-columns:1fr 1fr 1.4fr;gap:.25rem;display:grid}.scope button{min-height:2.25rem;color:var(--text);border-color:var(--border);white-space:nowrap;background:0 0;padding:0 .25rem;font-size:.85rem}.scope button[aria-pressed=true]{color:var(--on-accent)}.scope .scope-personal[aria-pressed=true]{background:var(--personal);border-color:var(--personal)}.scope .scope-shared[aria-pressed=true]{background:var(--shared);border-color:var(--shared)}.scope .scope-combined[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.tabs{z-index:2;padding:.25rem .5rem calc(env(safe-area-inset-bottom) + .25rem);background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid;position:sticky;bottom:0}.tabs button{min-height:3rem;color:var(--muted);background:0 0;border:none;justify-items:center;gap:.1rem;font-weight:500;display:grid}.tab-icon{filter:grayscale();opacity:.6;font-size:1.2rem}.tab-label{font-size:.7rem}.tabs button[aria-current=page]{color:var(--accent);font-weight:700}.tabs button[aria-current=page] .tab-icon{filter:none;opacity:1}.segmented{background:var(--surface-muted);border-radius:.6rem;gap:.25rem;padding:.2rem;display:flex}.segmented button{min-height:2.25rem;color:var(--muted);background:0 0;border-color:#0000;flex:1;font-weight:600}.segmented button[aria-pressed=true]{background:var(--surface);border-color:var(--border);color:var(--text)}.segmented.small button{min-height:1.9rem;font-size:.8rem}.target .target-personal[aria-pressed=true]{background:var(--personal);border-color:var(--personal);color:var(--on-accent)}.target .target-shared[aria-pressed=true]{background:var(--shared);border-color:var(--shared);color:var(--on-accent)}.calendar{margin-bottom:1rem}.calendar-head{justify-content:space-between;align-items:center;display:flex}.month-title{color:var(--text);background:0 0;border-color:#0000;font-size:1.15rem;font-weight:700}.calendar-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekday{text-align:center;color:var(--muted);border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:.25rem 0;font-size:.7rem}.weekday-0{color:var(--sunday)}.weekday-6{color:var(--saturday)}.day{background:var(--surface);border:none;border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0;min-height:3.6rem;color:var(--text);text-align:right;border-radius:0;flex-direction:column;align-items:stretch;gap:.05rem;padding:.15rem .2rem;font-weight:400;display:flex}.day.outside{background:var(--background);color:var(--muted)}.day-number{text-align:center;align-self:flex-start;min-width:1.4rem;font-size:.75rem;line-height:1.4rem}.day.today .day-number{background:var(--accent);color:var(--on-accent);border-radius:999px;font-weight:700}.day-expense,.day-income{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.68rem;overflow:hidden}.day-expense,.expense{color:var(--expense)}.day-income,.income{color:var(--income)}.summary{gap:.75rem;display:grid}.totals{margin:0}.totals dd{font-variant-numeric:tabular-nums;text-align:right;font-size:1.15rem;font-weight:700}.ratios{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.ratios li{grid-template-columns:1.5rem 4.5rem 1fr 2.5rem;align-items:center;gap:.4rem;font-size:.85rem;display:grid}.ratio-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ratio-bar{background:var(--surface-muted);border-radius:999px;height:.5rem;overflow:hidden}.ratio-bar span{background:var(--expense);border-radius:999px;height:100%;display:block}.ratio-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.sheet-backdrop{z-index:10;background:var(--backdrop);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:28rem;max-height:92dvh;padding:.75rem 1rem calc(env(safe-area-inset-bottom) + .75rem);background:var(--surface);border-radius:1rem 1rem 0 0;gap:.6rem;animation:.18s ease-out sheet-in;display:grid;overflow-y:auto}@keyframes sheet-in{0%{opacity:0;transform:translateY(2rem)}}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}.sheet:focus{outline:none}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-head h2{margin:0}.entries{gap:.25rem;max-height:9rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.entry{background:var(--background);border:1px solid var(--border);width:100%;min-height:2.4rem;color:var(--text);text-align:left;border-left-width:4px;grid-template-columns:1.5rem 1fr auto;align-items:center;gap:.5rem;padding:0 .5rem;font-weight:400;display:grid}.entry-personal{border-left-color:var(--personal)}.entry-shared{border-left-color:var(--shared)}.entry.selected{border-color:var(--accent)}.entry-memo{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sheet-switches{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.amount{font-variant-numeric:tabular-nums;text-align:right;font-size:2rem;font-weight:700;display:block}.category-grid{grid-template-columns:repeat(auto-fill,minmax(4rem,1fr));gap:.35rem;display:grid}.category-grid button{background:var(--background);border-color:var(--border);min-height:3.2rem;color:var(--text);justify-items:center;gap:.1rem;padding:.25rem 0;font-size:.7rem;font-weight:500;display:grid}.category-grid button span:first-child{font-size:1.3rem}.category-grid button[aria-checked=true]{border-color:var(--accent);background:var(--surface-muted);border-width:2px}.memo{margin:0}.keypad{grid-template-columns:repeat(3,1fr);gap:.35rem;display:grid}.key{background:var(--surface-muted);min-height:3rem;color:var(--text);border-color:#0000;font-size:1.25rem}.sheet-actions{gap:.5rem;display:flex}.sheet-actions .submit{flex:1;font-size:1.4rem}.sheet-actions .secondary{min-width:4rem}a{color:var(--accent)}.invite-link{margin-bottom:.75rem}
