:root{--bg:#f4f5f7;--card:#fff;--card-2:#fafbfc;--text:#111827;--text-2:#4b5563;--muted:#6b7280;--border:#e5e7eb;--border-2:#d1d5db;--accent:#0f766e;--accent-h:#115e59;--accent-bg:#f0fdfa;--on-accent:#fff;--income:#15803d;--income-bg:#f0fdf4;--expense:#c2410c;--expense-bg:#fff7ed;--danger:#dc2626;--danger-bg:#fef2f2;--warn:#b45309;--warn-bg:#fffbeb;--ok:#15803d;--ok-bg:#f0fdf4;--shadow:0 1px 3px #1018280f, 0 1px 2px #1018280a;--shadow-lg:0 -8px 30px #10182829;--radius:16px;--radius-sm:12px;--tabbar-h:58px;--header-h:52px}@media (prefers-color-scheme:dark){:root{--bg:#0b0f14;--card:#151b23;--card-2:#1b222c;--text:#e6edf3;--text-2:#b9c2cc;--muted:#8b96a3;--border:#232c37;--border-2:#313c49;--accent:#2dd4bf;--accent-h:#5eead4;--accent-bg:#0c2e2b;--on-accent:#04211e;--income:#4ade80;--income-bg:#0e2a19;--expense:#fb923c;--expense-bg:#331a0c;--danger:#f87171;--danger-bg:#2a1416;--warn:#fbbf24;--warn-bg:#33280a;--ok:#4ade80;--ok-bg:#0e2a19;--shadow:0 1px 3px #00000080;--shadow-lg:0 -8px 30px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:none}a{color:var(--accent);text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:14px 16px}.card-h{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-size:.92rem;font-weight:700;display:flex}.sec-title{color:var(--muted);padding:0 2px 6px;font-size:.8rem;font-weight:700}.stack{flex-direction:column;gap:12px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:10px;display:flex}.muted{color:var(--muted)}.small{font-size:.78rem}.empty{text-align:center;color:var(--muted);padding:28px 16px;font-size:.86rem}.err{color:var(--danger);font-size:.82rem;font-weight:600}.stat{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px}.stat .l{color:var(--muted);font-size:.74rem;font-weight:700}.stat .v{font-variant-numeric:tabular-nums;margin-top:2px;font-size:1.15rem;font-weight:800}.stat .t{color:var(--muted);margin-top:2px;font-size:.7rem}.v.income{color:var(--income)}.v.expense{color:var(--expense)}.grid-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bar{background:var(--bg);border:1px solid var(--border);border-radius:999px;height:9px;overflow:hidden}.bar>i{background:var(--ok);border-radius:999px;height:100%;transition:width .45s;display:block}.bar>i.over{background:var(--danger)}.bar>i.warn{background:var(--warn)}.list{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.list-h{color:var(--muted);background:var(--card-2);border-bottom:1px solid var(--border);padding:6px 14px;font-size:.74rem;font-weight:700}.row{border-bottom:1px solid var(--border);text-align:left;align-items:center;gap:11px;width:100%;padding:11px 14px;display:flex}.row:last-child{border-bottom:none}.row:active{background:var(--bg)}.row .ic{background:var(--bg);width:34px;height:34px;color:var(--text-2);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1rem;display:flex}.row .ic.income{background:var(--income-bg);color:var(--income)}.row .ic.expense{background:var(--expense-bg);color:var(--expense)}.row .ic.warn{background:var(--warn-bg);color:var(--warn)}.row .body{flex:auto;min-width:0}.row .t1{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;display:block;overflow:hidden}.row .t2{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;display:block;overflow:hidden}.row .t2 .badge{vertical-align:1px;margin-left:4px}.row .amt{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;flex:none;font-size:.95rem;font-weight:700}.row .amt.income{color:var(--income)}.badge{background:var(--bg);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-block}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.danger{background:var(--danger-bg);color:var(--danger)}.badge.info{background:var(--accent-bg);color:var(--accent)}.chip{white-space:nowrap;background:var(--card);border:1px solid var(--border);color:var(--text-2);border-radius:999px;align-items:center;gap:4px;padding:5px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.chip[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.chips{scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.selchip{width:auto;min-height:34px;color:var(--text-2);background-color:var(--card);border:1px solid var(--border);text-overflow:ellipsis;border-radius:999px;max-width:52vw;padding:3px 28px 3px 12px;font-size:16px;font-weight:600}.two{grid-template-columns:1fr 1fr;gap:9px;display:grid}@media (width<=460px){.two{grid-template-columns:1fr}}.btn{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--border-2);min-height:44px;color:var(--text);justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:.9rem;font-weight:700;display:inline-flex}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.5}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.danger{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.btn.ghost{color:var(--accent);background:0 0;border-color:#0000}.btn.sm{border-radius:9px;min-height:34px;padding:0 11px;font-size:.78rem}.btn.block{width:100%}.btn-row{gap:8px;display:flex}.field{flex-direction:column;gap:5px;display:flex}.field>label{color:var(--text-2);font-size:.78rem;font-weight:700}input[type=text],input[type=number],input[type=date],input[type=month],input[type=password],input[type=search],select,textarea{background:var(--card);width:100%;min-height:44px;color:var(--text);border:1px solid var(--border-2);border-radius:var(--radius-sm);appearance:none;padding:9px 12px;font-size:16px}textarea{resize:vertical;min-height:72px}select{background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:34px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}input[type=checkbox]{width:20px;height:20px;min-height:0;accent-color:var(--accent)}.switch{align-items:center;gap:9px;font-size:.86rem;display:flex}.search{background:var(--card);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:flex}.search input{background:0 0;border:none;min-height:40px;padding:0}.search input:focus{box-shadow:none}.seg{background:var(--card-2);border:1px solid var(--border);border-radius:999px;gap:2px;padding:3px;display:flex}.seg>button{min-height:34px;color:var(--muted);border-radius:999px;flex:1;font-size:.82rem;font-weight:700}.seg>button[aria-pressed=true]{background:var(--card);color:var(--accent);box-shadow:var(--shadow)}.sheet-back{z-index:60;background:#090c1080;justify-content:center;align-items:flex-end;animation:.18s fade;display:flex;position:fixed;inset:0}.sheet{background:var(--card);width:100%;max-width:560px;box-shadow:var(--shadow-lg);max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:22px 22px 0 0;flex-direction:column;animation:.24s cubic-bezier(.2,.9,.3,1) up;display:flex}.sheet-h{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px 10px;display:flex}.sheet-h h2{font-size:1rem;font-weight:800}.sheet-body{-webkit-overflow-scrolling:touch;flex:auto;padding:14px 16px;overflow-y:auto}.sheet-foot{border-top:1px solid var(--border);flex:none;gap:8px;padding:10px 16px 14px;display:flex}.sheet-foot .btn{flex:1}.grab{background:var(--border-2);border-radius:999px;width:38px;height:4px;margin:6px auto 0}@keyframes up{0%{opacity:.6;transform:translateY(14%)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-back{animation:none}.bar>i{transition:none}}.toasts{z-index:90;left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 14px);flex-direction:column;gap:8px;width:min(92vw,460px);display:flex;position:fixed;transform:translate(-50%)}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);border-radius:12px;align-items:center;gap:8px;padding:11px 14px;font-size:.84rem;font-weight:600;animation:.16s fade;display:flex}.toast.err{background:var(--danger);color:#fff}.toast.ok{background:var(--ok);color:#fff}.skel{background:linear-gradient(90deg, var(--border) 25%, var(--card-2) 50%, var(--border) 75%);background-size:200% 100%;border-radius:8px;animation:1.2s infinite sk}@keyframes sk{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}@media (width>=900px){.grid-2{grid-template-columns:repeat(4,1fr)}.two-col{grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}.sheet-back{align-items:center}.sheet{border-radius:var(--radius);max-height:86dvh}}.center-screen.svelte-12qhfyh{justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.center-screen.fixed.svelte-12qhfyh{background:var(--bg);z-index:100;position:fixed;inset:0}.shell.svelte-12qhfyh{min-height:100dvh;padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 12px)}.shell.notab.svelte-12qhfyh{padding-bottom:calc(env(safe-area-inset-bottom) + 16px)}.menulist.svelte-12qhfyh{flex-direction:column;gap:4px;display:flex}.menuitem.svelte-12qhfyh{color:inherit;border-radius:12px;align-items:center;gap:12px;padding:13px 12px;font-weight:700;text-decoration:none;display:flex}.menuitem.svelte-12qhfyh:active,.menuitem.on.svelte-12qhfyh{background:var(--card-2)}.hdr.svelte-12qhfyh{z-index:40;background:var(--card);border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top);position:sticky;top:0}.hdr-main.svelte-12qhfyh{padding:7px max(12px, env(safe-area-inset-right)) 7px max(12px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:8px;display:flex}.hdr-l.svelte-12qhfyh{align-items:center;gap:6px;min-width:0;display:flex}.hdr-r.svelte-12qhfyh{align-items:center;gap:2px;display:flex}.gname.svelte-12qhfyh,.gsel.svelte-12qhfyh{color:var(--muted);font-size:.72rem;font-weight:700}.gname.svelte-12qhfyh{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gsel.svelte-12qhfyh{background:0 0;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 7px) 55%,calc(100% - 3px) 55%;background-repeat:no-repeat;background-size:4px 4px,4px 4px;border:none;width:auto;max-width:46vw;min-height:0;padding:0 18px 0 0}.gsel.svelte-12qhfyh:focus{box-shadow:none}.ttl.svelte-12qhfyh{font-size:1.05rem;font-weight:800;line-height:1.25}.iconbtn.svelte-12qhfyh{width:40px;height:40px;color:var(--text-2);border-radius:10px;justify-content:center;align-items:center;display:flex}.iconbtn.svelte-12qhfyh:active{background:var(--bg)}.iconbtn.on.svelte-12qhfyh{color:var(--accent);background:var(--accent-bg)}.monthbar.svelte-12qhfyh{justify-content:center;align-items:center;gap:4px;padding:0 8px 7px;display:flex}.mlabel.svelte-12qhfyh{border-radius:9px;justify-content:center;align-items:center;gap:3px;min-width:8.5em;padding:5px 8px;font-size:.9rem;font-weight:800;display:inline-flex}.mlabel.svelte-12qhfyh:active{background:var(--bg)}.mgrid.svelte-12qhfyh{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.main.svelte-12qhfyh{padding:12px max(12px, env(safe-area-inset-right)) 12px max(12px, env(safe-area-inset-left));max-width:900px;margin:0 auto}.tabbar.svelte-12qhfyh{z-index:45;background:var(--card);border-top:1px solid var(--border);height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tab.svelte-12qhfyh{color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 0;font-size:.66rem;font-weight:700;display:flex}.tab.on.svelte-12qhfyh{color:var(--accent)}.fab.svelte-12qhfyh{background:var(--accent);width:52px;height:52px;color:var(--on-accent);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:-20px;display:flex;box-shadow:0 6px 16px #0f766e59}.fab.svelte-12qhfyh:active{transform:scale(.94)}@media (width>=900px){.shell.svelte-12qhfyh{padding-bottom:0;padding-left:208px}.hdr.svelte-12qhfyh{padding-left:0}.main.svelte-12qhfyh{padding:18px max(18px, env(safe-area-inset-right)) 18px max(18px, env(safe-area-inset-left));max-width:1040px}.tabbar.svelte-12qhfyh{width:208px;height:100dvh;padding:14px 10px 14px max(10px, env(safe-area-inset-left));border-top:none;border-right:1px solid var(--border);flex-direction:column;justify-content:flex-start;gap:4px;top:0;right:auto}.tab.svelte-12qhfyh{border-radius:11px;flex-direction:row;flex:none;justify-content:flex-start;gap:10px;width:100%;padding:11px 12px;font-size:.86rem}.tab.on.svelte-12qhfyh{background:var(--accent-bg)}.fab.svelte-12qhfyh{border-radius:11px;order:-1;gap:8px;width:100%;height:44px;margin:0 0 8px}.fab.svelte-12qhfyh:after{content:"入力";font-size:.86rem;font-weight:800}}
