@layer reset, base, layout, components, responsive;
@layer reset {
  *,*::before,*::after{box-sizing:border-box} body{margin:0} button,input,select{font:inherit} button,a,input,select{-webkit-tap-highlight-color:transparent} button{cursor:pointer} button:disabled{cursor:wait} h1,h2,h3,p{margin:0} a{color:inherit} svg{display:block;flex:none} button{color:inherit} [hidden]{display:none!important}
}
@layer base {
  :root{color-scheme:dark;--bg:#0c0e12;--sidebar:#101216;--panel:#15181e;--raised:#1c2027;--input:#101318;--hover:#232833;--text:#f1f3f8;--muted:#a0a8b8;--faint:#7f889a;--line:rgba(198,212,242,.10);--accent:#b8d1ff;--accent-text:#182941;--accent-soft:rgba(146,184,248,.12);--green:#96debc;--red:#efa8a8;--amber:#edc78e;--shadow:0 28px 80px -34px #000b;--radius:23px;font:16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-synthesis:none}
  :root[data-theme=light]{color-scheme:light;--bg:#f5f5f7;--sidebar:#ededf1;--panel:#fff;--raised:#f4f5f8;--input:#f7f8fa;--hover:#e8ebf2;--text:#20242d;--muted:#626b7a;--faint:#747e8d;--line:rgba(36,50,75,.1);--accent:#285eb4;--accent-text:#fff;--accent-soft:rgba(38,100,209,.08);--green:#217a51;--red:#b44d4f;--amber:#956a23;--shadow:0 22px 70px -38px #33456645}
  body{background:var(--bg);color:var(--text);min-height:100vh;transition:background .3s,color .3s;font-weight:400;letter-spacing:-.015em} :focus-visible{outline:3px solid var(--accent);outline-offset:4px} ::selection{background:var(--accent);color:var(--accent-text)} button,input,select{outline-offset:4px} button{border:0} button:disabled{opacity:.6} input,select{min-width:0} input::placeholder{color:var(--faint);opacity:1} h1{font-size:clamp(1.9rem,3vw,2.4rem);letter-spacing:-.055em;line-height:1.15;font-weight:650} h2{font-size:1.125rem;font-weight:600;letter-spacing:-.03em} h3{font-size:1rem;font-weight:600} .muted{color:var(--muted)} .income-text{color:var(--green)} .expense-text{color:var(--red)} .expected-text{color:var(--amber)} .tabular{font-variant-numeric:tabular-nums} .eyebrow{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:600} .icon{width:20px;height:20px;stroke-width:1.7} .icon.small{width:16px;height:16px} .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
}
@layer layout {
  .shell{display:grid;grid-template-columns:226px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:37px 21px 23px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--sidebar)}.brand{display:flex;align-items:center;gap:12px;padding:0 12px;font-size:1.6rem;font-weight:680;letter-spacing:-.07em}.brand-mark{height:36px;width:36px;display:grid;place-items:center;border-radius:12px;background:var(--accent);color:var(--accent-text);font-size:1.65rem;font-weight:750;line-height:1;padding-bottom:3px}.workspace-label{padding:43px 13px 13px}.nav{display:grid;gap:7px}.nav-button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 15px;background:transparent;color:var(--muted);font-size:.9375rem;font-weight:500;text-align:left;border-radius:12px;transition:background .2s,color .2s}.nav-button:hover{background:var(--raised);color:var(--text)}.nav-button.active{background:var(--accent-soft);color:var(--accent)}.nav-button .icon{width:19px;height:19px}.nav-button .badge{margin-left:auto}.sidebar-footer{margin-top:auto;padding-top:24px}.local-caption{display:flex;gap:9px;align-items:center;margin:23px 13px 6px;color:var(--faint);font-size:.8125rem}.local-caption .icon{width:15px;height:15px}.sidebar-rule{height:1px;background:var(--line);margin:20px 13px}.main{min-width:0;max-width:1590px;width:100%;margin:auto;padding:34px 46px 50px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px;gap:20px;min-height:38px}.breadcrumb{font-size:.875rem;color:var(--muted);display:flex;align-items:center;gap:11px}.breadcrumb b{color:var(--text);font-weight:500}.top-actions{display:flex;align-items:center;gap:14px}.top-date{font-size:.875rem;color:var(--muted)}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;gap:18px}.page-heading p{color:var(--muted);margin-top:10px;font-size:.9375rem}.entry-layout{display:grid;grid-template-columns:minmax(410px,1.3fr) minmax(285px,.85fr);gap:26px;align-items:start}.right-column{display:grid;gap:22px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-pad{padding:25px 27px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:25px}.analysis-layout{display:grid;grid-template-columns:minmax(370px,1.1fr) minmax(310px,.9fr);gap:25px;align-items:start}.analysis-bottom{margin-top:25px}.page-content{animation:appear .35s cubic-bezier(.2,.7,.2,1)}
}
@layer components {
  .icon-button{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:var(--raised);color:var(--muted);transition:background .2s,transform .2s,color .2s}.icon-button:hover{background:var(--hover);color:var(--text);transform:translateY(-1px)}.icon-button.danger:hover{color:var(--red)}.text-button{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:.875rem;background:transparent;padding:5px 0;border-radius:3px}.text-button:hover{text-decoration:underline}.primary{background:var(--accent);color:var(--accent-text);display:flex;align-items:center;justify-content:center;gap:9px;border-radius:13px;padding:13px 19px;font-size:.9375rem;font-weight:650;transition:filter .2s,transform .2s;min-height:48px}.primary:hover{filter:brightness(1.07);transform:translateY(-1px)}.primary:active{transform:scale(.985)}.secondary{background:var(--raised);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:10px 15px;font-size:.875rem;font-weight:500;min-height:42px}.secondary:hover{background:var(--hover)}.danger-button{background:var(--red);color:var(--bg)}.wide{width:100%}.pill{border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:.8125rem;display:inline-flex;align-items:center;gap:6px;padding:5px 10px}.badge{background:var(--accent-soft);border-radius:7px;padding:1px 7px;font-size:.75rem;color:var(--accent)}
  .entry-card{padding:26px 30px 28px}.segmented{display:flex;background:var(--input);border:1px solid var(--line);padding:5px;border-radius:14px;gap:4px}.segment{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 8px;border-radius:10px;font-size:.875rem;font-weight:500;background:transparent;color:var(--muted);transition:background .2s,color .2s,box-shadow .2s;white-space:nowrap}.segment.active{background:var(--raised);color:var(--text);box-shadow:0 2px 6px #0002}.segment.active[data-kind=expense]{color:var(--red)}.segment.active[data-kind=income]{color:var(--green)}.segment.active[data-kind=expected]{color:var(--amber)}.segment:disabled{cursor:default}.amount-block{text-align:center;padding:31px 0 26px}.amount-label{color:var(--muted);font-size:.8125rem;display:block;margin-bottom:8px}.amount-row{display:flex;align-items:baseline;justify-content:center;gap:12px;max-width:100%}.currency{font-size:1rem;color:var(--muted);font-weight:500;letter-spacing:0}.amount-input{color:var(--text);text-align:center;background:transparent;border:0;font-size:clamp(2.6rem,4.5vw,4.15rem);line-height:1.2;font-weight:500;letter-spacing:-.065em;font-variant-numeric:tabular-nums;width:5ch;min-width:3.4ch;max-width:calc(100% - 55px);padding:0 0 4px;border-radius:5px}.amount-input::placeholder{color:var(--faint)}.amount-input:focus{outline:none}.amount-block:focus-within .amount-label{color:var(--accent)}.input-underline{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);max-width:245px;margin:13px auto 0}.field-heading{font-size:.875rem;font-weight:500;display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:24px}.category{border:1px solid transparent;border-radius:12px;background:var(--raised);min-height:82px;padding:12px 4px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;transition:background .18s,border-color .18s,transform .18s}.category:hover{background:var(--hover);transform:translateY(-2px)}.category.selected{border-color:var(--accent);background:var(--accent-soft)}.category .icon{color:var(--category-color);width:21px;height:21px}.category span{font-size:.75rem;line-height:1.25;text-align:center;max-width:100%;overflow-wrap:anywhere;color:var(--muted)}.category.selected span{color:var(--text)}.category.add{border:1px dashed var(--line);background:transparent;color:var(--faint)}.fields-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;margin:3px 0 18px}.field{display:flex;flex-direction:column;gap:7px}.field label,.field>span{font-size:.8125rem;color:var(--muted)}.input{background:var(--input);border:1px solid var(--line);border-radius:10px;padding:11px 12px;color:var(--text);font-size:.875rem;min-height:44px;width:100%;transition:border-color .2s}.input:focus{outline:0;border-color:var(--accent)}.input:disabled{opacity:.7}.optional{font-size:.75rem;color:var(--faint);font-weight:400}.tag-details{margin:0 0 20px}.tag-details summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.8125rem;width:fit-content}.tag-details summary::-webkit-details-marker{display:none}.tag-details[open] summary{margin-bottom:10px}.tag-details p{font-size:.75rem;color:var(--faint);margin-top:5px}.save-note{font-size:.75rem;color:var(--faint);text-align:center;margin-top:12px}.save-note kbd{font:inherit;border:1px solid var(--line);border-radius:4px;padding:1px 4px}.form-error{color:var(--red);font-size:.875rem;margin:0 0 13px;min-height:0}.form-error:empty{display:none}.edit-banner{color:var(--accent);background:var(--accent-soft);padding:10px 14px;font-size:.875rem;border-radius:10px;display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:27px 13px;gap:9px;color:var(--muted)}.empty-icon{width:48px;height:48px;background:var(--raised);border:1px solid var(--line);border-radius:16px;display:grid;place-items:center;color:var(--faint);margin-bottom:7px}.empty strong{font-size:.9375rem;color:var(--text);font-weight:500}.empty p{font-size:.8125rem;max-width:250px;line-height:1.6}.balance-card{background:radial-gradient(ellipse at 80% 0%,var(--accent-soft),transparent 70%),var(--panel)}.balance-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.875rem}.balance-amount{font-size:clamp(1.8rem,2.4vw,2.45rem);letter-spacing:-.06em;line-height:1.25;margin-top:12px;overflow-wrap:anywhere}.balance-amount small{font-size:.875rem;letter-spacing:0;color:var(--muted);font-weight:400;margin-right:6px}.balance-caption{color:var(--faint);font-size:.75rem;margin-top:7px}.balance-pair{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:23px;padding-top:17px;gap:14px}.balance-pair span{font-size:.75rem;display:flex;align-items:center;gap:5px;color:var(--muted);margin-bottom:5px}.balance-pair b{font-size:1rem;font-weight:500;letter-spacing:-.025em}.record-list{display:grid}.record{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);min-width:0}.record:first-child{padding-top:0}.record:last-child{border-bottom:0;padding-bottom:0}.category-icon{width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--category-color) 12%,transparent);color:var(--category-color);display:grid;place-items:center;flex:none}.record-main{min-width:0;flex:1}.record-title{font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-meta{font-size:.75rem;color:var(--muted);margin-top:3px;display:flex;gap:5px;flex-wrap:wrap}.record-value{font-size:.875rem;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right}.record-value small{display:block;font-size:.75rem;color:var(--faint);font-weight:400;margin-top:2px}.recent-panel .panel-heading{margin-bottom:20px}.expected-mini{background:var(--raised);border:1px solid var(--line);border-radius:15px;padding:17px 19px;display:flex;align-items:center;gap:12px}.expected-mini>.icon{color:var(--amber)}.expected-mini span{display:block;color:var(--muted);font-size:.75rem}.expected-mini strong{font-size:.9375rem;font-weight:500}.expected-mini>button{margin-left:auto}.tiny-help{font-size:.75rem;color:var(--faint);margin-top:18px;line-height:1.7}.stat-card{padding:23px 24px}.stat-heading{font-size:.8125rem;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:10px}.stat-heading .icon{width:18px;height:18px}.stat-amount{font-size:clamp(1.7rem,2.4vw,2.3rem);letter-spacing:-.055em;line-height:1.3;margin-top:13px;overflow-wrap:anywhere}.stat-amount small{font-size:.8125rem;color:var(--muted);letter-spacing:0;font-weight:400}.stat-caption{font-size:.75rem;color:var(--faint);margin-top:8px}.period-select{width:auto;min-width:175px;max-width:100%;padding:11px 34px 11px 14px;border-radius:11px;background-color:var(--panel)}.chart-wrap{height:255px;position:relative;display:grid;place-items:center;margin:8px 0 22px}.donut{width:242px;height:242px;overflow:visible;transform:rotate(-90deg)}.donut circle{fill:none;stroke-width:21}.donut .track{stroke:var(--raised)}.donut .arc{transition:stroke-width .2s,opacity .2s;animation:ring-reveal .8s cubic-bezier(.2,.7,.2,1) both;cursor:default;outline:none;stroke-linecap:butt}.donut .arc:hover,.donut .arc:focus{stroke-width:25}.donut .arc:focus{filter:drop-shadow(0 0 2px var(--text))}.chart-center{position:absolute;pointer-events:none;text-align:center;max-width:160px}.chart-center span{color:var(--muted);font-size:.75rem;display:block}.chart-center strong{font-size:1.6rem;letter-spacing:-.05em;font-weight:550;display:block;overflow-wrap:anywhere;margin:4px 0}.chart-center small{font-size:.75rem;color:var(--faint)}.legend{display:grid;gap:15px}.legend-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.legend-name{display:flex;align-items:center;gap:9px;font-size:.8125rem;color:var(--muted)}.legend-name .swatch{width:8px;height:8px;border-radius:3px;flex:none;background:var(--category-color)}.legend-value{font-size:.8125rem;font-variant-numeric:tabular-nums}.legend-value span{color:var(--faint);margin-left:9px;font-size:.75rem;display:inline-block;min-width:33px;text-align:right}.legend-bar{grid-column:1/-1;height:3px;background:var(--raised);border-radius:2px;overflow:hidden;margin-top:-4px}.legend-fill{height:100%;width:var(--share);background:var(--category-color);border-radius:2px;transform-origin:left;animation:grow .65s ease both}.insights-stack{display:grid;gap:21px}.insight{display:flex;gap:13px;padding-bottom:19px;border-bottom:1px solid var(--line)}.insight:last-child{border:0;padding-bottom:0}.insight-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent);flex:none}.insight-icon .icon{width:17px;height:17px}.insight h3{font-size:.875rem;font-weight:550;line-height:1.5}.insight p{font-size:.8125rem;color:var(--muted);line-height:1.7;margin-top:6px}.upcoming-list{display:grid;gap:0}.upcoming-row{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);padding:17px 0}.upcoming-row:first-child{border:0;padding-top:0}.upcoming-row:last-child{padding-bottom:0}.upcoming-row .record-title{white-space:normal}.overdue{color:var(--red)}.status-label{border-radius:6px;padding:2px 7px;font-size:.75rem;background:var(--raised);color:var(--muted);display:inline-block}.status-label.expected{background:color-mix(in srgb,var(--amber) 10%,transparent);color:var(--amber)}.receive-button{white-space:nowrap;font-size:.8125rem;min-height:36px;padding:8px 10px;border-radius:10px}.history-toolbar{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:24px}.search-field{position:relative;flex:1;min-width:190px}.search-field>.icon{position:absolute;left:13px;top:13px;color:var(--faint);width:18px;height:18px}.search-field .input{padding-left:40px}.type-select{width:auto;min-width:140px}.history-table-wrap{overflow-x:auto}.history-table{width:100%;border-collapse:collapse;text-align:left;min-width:620px}.history-table th{font-size:.75rem;color:var(--muted);font-weight:500;padding:0 14px 14px;border-bottom:1px solid var(--line)}.history-table td{padding:17px 14px;border-bottom:1px solid var(--line);font-size:.8125rem}.history-table tbody tr:last-child td{border-bottom:0}.history-table tr{transition:background .2s}.history-table tbody tr:hover{background:var(--raised)}.history-table .amount-cell{text-align:right;white-space:nowrap;font-size:.875rem}.history-table .date-cell{white-space:nowrap;color:var(--muted)}.history-table .transaction-cell{display:flex;align-items:center;gap:12px;max-width:330px}.row-actions{display:flex;gap:6px;justify-content:flex-end}.row-actions .icon-button{background:transparent;width:32px;height:32px;border-radius:9px}.row-actions .icon{width:16px;height:16px}.history-count{color:var(--faint);font-size:.8125rem;margin-top:18px}.tag-chip{font-size:.75rem;background:var(--raised);padding:1px 6px;border-radius:4px;color:var(--muted)}.toast{position:fixed;bottom:30px;left:calc(50% + 110px);transform:translate(-50%,20px);background:var(--text);color:var(--bg);border-radius:14px;padding:13px 22px;font-size:.875rem;font-weight:500;box-shadow:0 10px 40px #0004;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:100;max-width:calc(100vw - 35px)}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);border-radius:22px;max-width:440px;width:calc(100% - 32px);background:var(--panel);color:var(--text);padding:28px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#06080cb0;backdrop-filter:blur(7px)}dialog[open]{animation:appear .22s ease}dialog h2{font-size:1.25rem;margin-bottom:12px}dialog p{color:var(--muted);font-size:.875rem;line-height:1.7;margin-bottom:22px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.dialog-header h2{margin:0}.dialog-header .icon-button{width:30px;height:30px}.help-list{display:grid;gap:12px;font-size:.875rem;margin:16px 0 8px}.help-list>div{display:flex;align-items:center;gap:10px;color:var(--muted)}.help-list .icon{color:var(--accent)}.startup{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:var(--muted);padding:24px;text-align:center}.startup p{max-width:460px}.failure-message{font-size:.875rem;max-width:420px;color:var(--red)}.startup .brand-mark{width:52px;height:52px;font-size:2.2rem;border-radius:17px}.loading-shimmer{height:1px;background:var(--accent);animation:grow 1s infinite}.mobile-brand{display:none}.demo-banner{border:1px solid var(--line);border-radius:12px;background:var(--accent-soft);padding:10px 15px;display:flex;align-items:center;gap:10px;font-size:.8125rem;color:var(--accent);margin-bottom:22px}.demo-banner .text-button{margin-left:auto}.form-success{animation:save-glow .55s ease}.empty-chart{border:20px solid var(--raised);border-radius:50%;width:228px;height:228px;display:grid;place-items:center}.empty-chart>.icon{height:30px;width:30px;color:var(--faint)}
  @keyframes appear{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ring-reveal{from{opacity:0;stroke-dasharray:0 100}to{opacity:1}}@keyframes save-glow{50%{box-shadow:0 0 0 3px var(--accent-soft)}}
}
@layer responsive {
  .category span{font-size:.875rem}.field label,.field>span{font-size:.875rem}.insight p,.legend-name,.legend-value{font-size:.875rem}.upcoming-row .record-meta,.history-table td,.status-label{font-size:.875rem}
  @media(min-width:1700px){.main{padding-right:65px;padding-left:65px}.entry-layout{grid-template-columns:minmax(450px,1.2fr) minmax(320px,.8fr)}.entry-card{padding:30px 38px}}
  @media(max-width:1200px){.shell{grid-template-columns:192px 1fr}.sidebar{padding-right:13px;padding-left:13px}.main{padding:29px 28px 40px}.entry-layout{grid-template-columns:minmax(350px,1.2fr) minmax(250px,.8fr);gap:18px}.entry-card{padding:23px}.panel-pad{padding:22px}.analysis-layout{gap:18px;grid-template-columns:minmax(310px,1fr) minmax(280px,1fr)}.category-grid{gap:7px}.category span{font-size:.75rem}.toast{left:calc(50% + 90px)}.summary-grid{gap:13px}.stat-card{padding:20px}.top-date{display:none}}
  @media(max-width:1030px){.shell{grid-template-columns:174px 1fr}.sidebar{padding:30px 10px 20px}.brand{font-size:1.45rem;gap:9px}.brand-mark{width:32px;height:32px}.nav-button{padding:12px 11px;font-size:.875rem;gap:9px}.main{padding:27px 24px 40px}.entry-layout{grid-template-columns:1fr}.right-column{grid-template-columns:1fr 1fr;align-items:start}.right-column .expected-mini{grid-column:1/-1}.right-column .tiny-help{grid-column:1/-1;margin-top:0}.analysis-layout{grid-template-columns:1fr}.chart-and-legend{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:28px}.chart-wrap{margin:0}.summary-grid{gap:10px}.stat-card{padding:18px 16px}.stat-amount{font-size:1.65rem}.category-grid{grid-template-columns:repeat(4,1fr)}.toast{left:calc(50% + 85px)}}
  @media(max-width:740px){.shell{display:block}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;height:auto;padding:8px 15px calc(9px + env(safe-area-inset-bottom));z-index:40;border-right:0;border-top:1px solid var(--line);background:color-mix(in srgb,var(--sidebar) 90%,transparent);backdrop-filter:blur(22px)}.sidebar .brand,.workspace-label,.sidebar-footer{display:none}.nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.nav-button{display:flex;flex-direction:column;gap:4px;justify-content:center;padding:8px 3px 6px;font-size:.75rem;background:transparent}.nav-button.active{background:transparent}.nav-button .icon{width:21px;height:21px}.nav-button .badge{display:none}.main{padding:20px 18px 112px}.topbar{margin-bottom:27px}.breadcrumb{display:none}.mobile-brand{display:flex;font-size:1.5rem;font-weight:670;letter-spacing:-.06em;align-items:center;gap:8px}.mobile-brand .brand-mark{width:29px;height:29px;font-size:1.4rem;border-radius:9px}.top-actions{gap:9px}.page-heading{margin-bottom:22px;align-items:center}.page-heading p{font-size:.875rem;margin-top:8px}h1{font-size:1.9rem}.page-heading .pill{display:none}.entry-card{padding:20px}.amount-block{padding:28px 0 24px}.amount-input{font-size:3.7rem}.category-grid{grid-template-columns:repeat(4,1fr);gap:7px}.category{min-height:77px;padding:9px 3px}.right-column{grid-template-columns:1fr}.right-column>*{grid-column:1}.panel-pad{padding:22px}.entry-layout{gap:20px}.summary-grid{grid-template-columns:1fr;gap:10px}.stat-card{padding:17px 20px;display:grid;grid-template-columns:1fr auto;gap:5px 15px}.stat-heading{justify-content:flex-start;gap:7px}.stat-heading .icon{order:-1}.stat-amount{margin:0;grid-column:2;grid-row:1/3;align-self:center;font-size:1.75rem}.stat-caption{grid-column:1;grid-row:2;margin:0;font-size:.75rem}.page-heading:has(.period-select){align-items:flex-start;flex-wrap:wrap}.period-select{min-width:158px;font-size:.8125rem;min-height:42px;padding:9px 25px 9px 12px}.chart-and-legend{grid-template-columns:1fr;gap:17px}.analysis-layout{gap:20px}.analysis-bottom{margin-top:20px}.chart-wrap{height:240px}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100% - 35px)}.upcoming-row{flex-wrap:wrap}.upcoming-row .record-main{min-width:110px}.upcoming-row .receive-button{margin-left:auto}.history-toolbar{gap:9px}.history-toolbar .period-select,.type-select{flex:1;min-width:135px}.search-field{flex-basis:100%}.history-table{min-width:590px}.history-table th,.history-table td{padding-left:10px;padding-right:10px}.history-panel{padding:20px 12px}.mobile-help{display:grid}.topbar .icon-button{width:35px;height:35px}.save-note{font-size:.75rem}.demo-banner{font-size:.75rem;gap:7px}.demo-banner .text-button{font-size:.75rem}.fields-row{gap:11px}.entry-layout .tiny-help{padding:0 5px}}
  @media(min-width:741px){.mobile-help{display:none}}
  @media(max-width:380px){.main{padding-left:12px;padding-right:12px}.entry-card{padding:17px}.category-grid{grid-template-columns:repeat(3,1fr)}.segment{font-size:.8125rem;padding:10px 5px;gap:4px}.segment .icon{width:14px;height:14px}.fields-row{grid-template-columns:1fr}.stat-amount{font-size:1.5rem}.amount-input{font-size:3rem}}
  @media(max-width:1200px){.category span{font-size:.875rem}}
  @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
}

.auth-form {width:min(100%,360px);display:grid;gap:18px;text-align:left;margin:20px auto}.auth-form .primary{justify-content:center}.auth-form input{font-size:16px}.dialog-actions{flex-wrap:wrap}.sidebar .local-caption{font-size:12px}

/* Pocket 2 extends the existing dark/light theme. */
.planning-layout,.budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.allowance-card{margin-bottom:20px;background:linear-gradient(140deg,var(--accent-soft),var(--panel));border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}.right-column .allowance-card,.planning-layout .allowance-card{margin-bottom:0}.allowance-amount{font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:-.055em;color:var(--accent);overflow-wrap:anywhere}.allowance-amount small{font-size:14px;letter-spacing:0;color:var(--muted)}.allowance-card>p,.allowance-details p{font-size:14px;color:var(--muted)}.allowance-details{margin-top:18px;font-size:14px}.allowance-details summary{cursor:pointer}.allowance-details dl,.plan-numbers{display:grid;gap:12px;margin:20px 0}.allowance-details dl>div,.plan-numbers>div{display:flex;justify-content:space-between;gap:20px}.allowance-details dd,.plan-numbers dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.plan-numbers dt{color:var(--muted)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:28px 0 18px}.budget-remaining,.bill-amount{font-size:1.8rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.budget-remaining small,.bill-amount small{font-size:14px;color:var(--muted)}.budget-detail{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;color:var(--muted);font-size:14px}.budget-card progress{width:100%;height:9px;border:0;border-radius:6px;overflow:hidden;background:var(--raised);accent-color:var(--accent);margin:20px 0 8px}.budget-card progress::-webkit-progress-bar{background:var(--raised)}.budget-card progress::-webkit-progress-value{background:var(--accent)}.bill-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.notification-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.notification-panel .bill-actions{margin:0}.repeat-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.repeat-panel>p{margin-top:10px}.feature-form{display:grid;gap:17px}.feature-form p{margin:0}.check-label{display:flex;align-items:center;gap:10px;font-size:16px}.check-label input{width:20px;height:20px;accent-color:var(--accent)}#feature-dialog{max-width:530px;max-height:90dvh;overflow:auto}.feature-form .input{font-size:16px}.auth-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;max-width:440px}.auth-screen{padding-top:45px;padding-bottom:45px}.auth-form{margin:0 auto}.auth-form .form-error{margin:0}.sidebar{overflow-y:auto}.page-heading>label{font-size:14px;color:var(--muted)}.page-heading input[type=month]{margin-top:6px}
@media(max-width:1030px){.right-column .allowance-card{grid-column:1/-1}}
@media(max-width:740px){.nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.nav-button{font-size:12px;min-width:0}.sidebar{padding-left:6px;padding-right:6px}.planning-layout,.budget-grid{grid-template-columns:1fr}.notification-panel{align-items:flex-start;flex-direction:column}.page-heading{flex-wrap:wrap;gap:16px}.section-heading{flex-wrap:wrap}.allowance-amount{font-size:2.5rem}.budget-detail{font-size:14px}.main{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.auth-screen h1{font-size:2rem}}
