/* Hamyon · approved pastel neumorphic themes. All financial values remain live. */
:root {
  color-scheme:light; --bg:#e8ecf2; --panel:#e8ecf2; --text:#29384d; --muted:#65758b;
  --line:#d5dce5; --highlight:#ffffff; --shade:#bdc7d5; --accent:#147f88;
  --mint:#a2ddd5; --blue:#d1e3f7; --lavender:#e3daf2; --peach:#f5dcc7; --rose:#eed9e3; --yellow:#f4e8ba; --paid:#d4e9dc;
  --green:#147f88; --positive:#36785c; --negative:#a34f64;
  --raised:6px 7px 13px var(--shade),-6px -6px 13px var(--highlight);
  --small:3px 4px 7px var(--shade),-3px -3px 7px var(--highlight);
  --inset:inset 3px 3px 6px var(--shade),inset -3px -3px 6px var(--highlight);
  background:var(--bg); color:var(--text); font-family:Manrope,Arial,sans-serif;
}
:root[data-theme=dark] {
  color-scheme:dark; --bg:#283240; --panel:#283240; --text:#e5ebf4; --muted:#b0bdcd;
  --line:#3a4657; --highlight:#354253; --shade:#1d2531; --accent:#9edbd9;
  --mint:#91d2cf; --blue:#33475d; --lavender:#403d54; --peach:#504235; --rose:#503f4c; --yellow:#514b33; --paid:#304f46;
  --green:#9edbd9; --positive:#a9dbc3; --negative:#f0b1c1;
}
body{background:var(--bg);color:var(--text);min-width:320px}
button,input,select{color:var(--text)}button{touch-action:manipulation;min-height:44px}button:hover{filter:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button:disabled{opacity:.65}button:active{transform:translateY(1px)}
.icon{display:inline-block;width:21px;height:21px;vertical-align:middle;flex-shrink:0}
.sidebar{width:236px;background:var(--bg);border:0;box-shadow:4px 0 14px color-mix(in srgb,var(--shade) 35%,transparent);padding:32px 20px}
.brand{color:var(--text);font-size:29px;gap:11px}.brand-mark{background:linear-gradient(135deg,#abe2d6,#80cdd0);color:#28485a;box-shadow:var(--small)}.brand-dot{color:var(--accent)}
.workspace{border-color:var(--line);margin:30px 0}.workspace-icon{background:var(--bg);color:var(--accent);box-shadow:var(--small)}.workspace strong{font-size:12px}.workspace small,.profile small{color:var(--muted)}.nav-label{color:var(--muted)}
.sidebar nav button,.settings-link{color:var(--muted);font-size:13px;padding:15px 13px;border-radius:15px;margin:4px 0}.sidebar nav button.active{background:var(--bg);color:var(--accent);box-shadow:var(--inset)}.sidebar nav button:hover{color:var(--accent)}
.sidebar-note{background:var(--bg);box-shadow:var(--raised);border-radius:22px;margin:32px 5px;padding:22px;min-height:160px}.sidebar-note>span{color:var(--accent)}.sidebar-note p{color:var(--muted)}.note-decoration{color:var(--line)}
.profile{border-color:var(--line)}.avatar{background:var(--lavender);border:0;box-shadow:var(--small);color:var(--text)}
main{margin-left:236px;padding:0 48px;max-width:1560px}.topbar{height:88px;border-color:var(--line);gap:16px}.breadcrumb{color:var(--muted)}.breadcrumb strong{color:var(--text)}.local-badge{color:var(--muted);font-size:10px}.topbar>.text-button{margin-left:auto;color:var(--muted);font-size:11px;display:flex;align-items:center;gap:8px}.theme-picker{margin:0;display:flex;flex-direction:row;gap:8px;align-items:center;font-size:11px;color:var(--muted)}.theme-picker select{padding:9px 11px;min-height:40px;font-size:11px;width:145px;background:var(--bg);box-shadow:var(--small);border:0;border-radius:12px}.theme-picker>span{display:none}
#content{max-width:1180px;margin:auto;padding-top:26px}.demo-banner{background:transparent;border:0;padding:0 0 12px;margin:0 0 22px;color:var(--muted);font-size:10px;line-height:1.6}.demo-banner b{color:var(--muted);font-weight:500}.demo-banner button{color:var(--accent);font-size:10px}.main-mode-switch{display:none}
h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:9px 0 10px}h2{font-size:17px;letter-spacing:-.3px}p{line-height:1.6}.eyebrow{color:var(--accent);font-size:10px;letter-spacing:1px}.page-heading{margin-bottom:30px}.page-heading p{color:var(--muted);font-size:13px}.page-heading .primary{flex-shrink:0}
.primary,.secondary,.icon-button{border:0;border-radius:15px;box-shadow:var(--small);font-weight:700;min-height:46px;font-size:12px}.primary{background:linear-gradient(120deg,#a5ded4,#80ced1);color:#24475a;padding:13px 22px}.primary .icon,.secondary .icon{margin-right:5px}.secondary,.icon-button{background:var(--bg);color:var(--accent);padding:12px 18px}.icon-button{width:44px;padding:10px;border-radius:50%;color:var(--muted)}.primary:hover,.secondary:hover{box-shadow:var(--raised)}.primary:active,.secondary:active,.icon-button:active{box-shadow:var(--inset)}.text-button{color:var(--accent);font-size:12px;min-height:40px}.panel{background:var(--panel);border:0;border-radius:24px;padding:28px;box-shadow:var(--raised)}.panel-heading h2,.section-title h2{display:flex;align-items:center;gap:8px}.panel-heading p{color:var(--muted);font-size:12px;margin:7px 0 0}.chart-note,.subtle{font-size:11px;color:var(--muted);line-height:1.7}.positive{color:var(--positive)}.negative,.danger,.form-error{color:var(--negative)}.empty{color:var(--muted);padding:32px 18px;font-size:13px}
label{font-size:12px;color:var(--muted);margin:18px 0 14px;font-weight:600}input,select{border:1px solid transparent;background:var(--bg);box-shadow:var(--inset);border-radius:13px;color:var(--text);padding:14px;min-height:46px;font-size:14px}input::placeholder{color:var(--muted);opacity:.8}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{appearance:none}input:focus,select:focus{outline-color:var(--accent)}.form-grid{gap:18px}.form-error{min-height:0}.form-help{color:var(--muted);font-size:10px}.full{margin-top:8px}.inline-form{gap:16px;flex-wrap:wrap}.inline-form label{margin:0}.settings-panel{max-width:900px}.settings-panel p,.settings-panel small{color:var(--muted)}.settings-panel form{margin-bottom:22px}.settings-panel h2{font-size:19px}hr{border-color:var(--line)}
/* The entry form is the main screen, not a dashboard detour. */
.entry-page-heading{max-width:560px;margin:0 auto 24px}.entry-page-heading p{color:var(--muted);font-size:13px;margin:0}.entry-page{max-width:560px;margin:0 auto;padding:0;box-shadow:none;border:0;background:transparent}.entry-page .dialog-heading{display:none}
.type-switch{background:var(--bg);border:0;box-shadow:var(--inset);border-radius:13px;padding:5px;gap:5px}.type-switch label{color:var(--muted);font-size:12px;min-height:36px;display:flex;align-items:center;justify-content:center;border-radius:9px;padding:9px;margin:0}.type-switch label:has(input:checked){background:linear-gradient(120deg,#a6ded6,#81ced1);color:#28475b;box-shadow:3px 3px 5px var(--shade)}
.amount-field{position:relative;display:block;background:var(--bg);box-shadow:var(--inset);border-radius:19px;padding:16px 20px;margin:26px 0 22px}.amount-field>span:first-child{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.7px}.amount-field input.amount-input{border:0;background:none;box-shadow:none;padding:10px 65px 2px 0;min-height:55px;font-size:38px;font-weight:750;letter-spacing:-1px;width:100%;color:var(--text)}#entry-currency{position:absolute;right:22px;bottom:23px;border-left:2px solid var(--accent);padding-left:14px;font-size:13px;font-weight:500;color:var(--muted)}
.category-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 6px}.category-heading strong{font-size:14px}.category-heading[hidden]{display:none}.category-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 18px;margin-bottom:22px}.category-choices[hidden]{display:none}.category-choices button{display:flex;flex-direction:column;align-items:center;gap:9px;background:none;border:0;color:var(--muted);font-size:11px;font-weight:500;min-width:0;min-height:79px;padding:2px 4px}.category-bubble{display:grid;place-items:center;width:51px;height:51px;border-radius:50%;background:color-mix(in srgb,var(--category-color) 42%,var(--bg));box-shadow:var(--small);color:color-mix(in srgb,var(--category-color) 50%,#22354b)}.category-bubble .icon{width:23px;height:23px}.category-choices button[aria-pressed=true]{color:var(--accent);font-weight:800}.category-choices button[aria-pressed=true] .category-bubble{background:var(--category-color);box-shadow:var(--inset);outline:2px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:2px}.category-choices button:hover .category-bubble{transform:translateY(-2px)}[data-theme=dark] .category-bubble{background:color-mix(in srgb,var(--category-color) 18%,var(--bg));color:var(--category-color)}[data-theme=dark] .category-choices button[aria-pressed=true] .category-bubble{background:var(--category-color);color:#294557}
#entry-form>label:has([name=accountId]){background:var(--blue);box-shadow:var(--small);border-radius:16px;padding:12px 16px;position:relative;margin:18px 0 10px;font-size:10px}#entry-form [name=accountId]{box-shadow:none;background:transparent;border:0;border-radius:0;font-weight:700;padding:0;min-height:28px;font-size:13px}#entry-form>label[hidden]{display:none}.entry-details{margin:12px 0 20px}.entry-details summary{color:var(--muted);font-size:11px;cursor:pointer;min-height:35px;padding:10px 0}.entry-details summary span{font-size:10px;margin-left:6px}.entry-details[open]{border-top:1px solid var(--line);padding-top:4px}.entry-submit{display:grid;grid-template-columns:1fr 49px;align-items:start;gap:0 15px;padding:0;background:none;position:static}.entry-submit>.primary{margin:0;min-height:50px;border-radius:26px;font-size:14px}.entry-submit>.voice-button{border-radius:50%;width:49px;height:49px;border:0;background:var(--bg);box-shadow:var(--small);color:var(--accent);font-size:0;padding:13px}.voice-button .icon{width:22px;height:22px}.voice-button[aria-pressed=true]{background:var(--rose);color:var(--negative);box-shadow:var(--inset)}.entry-submit .form-help{grid-column:1/-1;margin:12px 0 0;text-align:left;font-size:10px}.voice-widget{margin:18px 0 0;font-size:11px;color:var(--muted)}.voice-widget>summary{cursor:pointer;min-height:40px;padding:12px 0}.voice-widget p{font-size:12px}.voice-widget small{font-size:10px;display:block;line-height:1.6}.voice-widget input{margin:12px 0}.voice-widget details{margin-top:12px}.voice-widget details summary{cursor:pointer;padding:8px 0}
/* Report: a thin pastel ring on a raised, recessed base. */
.month-control{background:var(--bg);border:0;border-radius:16px;box-shadow:var(--small);padding:4px 8px;justify-content:space-between;min-width:230px}.month-control span{font-size:12px;font-weight:700;min-width:140px}.month-control button{display:grid;place-items:center;color:var(--muted);width:40px;padding:9px}.report-spotlight{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:28px;align-items:center}.report-donut-wrap{text-align:center;padding:22px 12px}.report-donut{width:280px;height:280px;border-radius:50%;padding:13px;margin:10px auto 24px;box-shadow:0 0 0 15px var(--bg),9px 10px 16px 15px var(--shade),-9px -9px 16px 15px var(--highlight);display:flex;align-items:stretch}.report-donut>div{background:var(--bg);border:9px solid var(--bg);border-radius:50%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 3px 3px 8px var(--shade),inset -3px -3px 8px var(--highlight);padding:8px}.report-donut span:not(.currency){font-size:11px;color:var(--muted)}.report-donut strong{font-size:29px;letter-spacing:-1px;line-height:1.3;margin:9px 0;max-width:100%;overflow-wrap:anywhere}.report-donut .currency{display:block;font-size:12px;line-height:1.6;color:var(--muted)}.report-donut small{font-size:10px;color:var(--muted)}.report-donut-wrap>p{font-size:10px;color:var(--muted);margin:20px 0 0}.report-category-list{min-width:0}.report-category-list h2{margin-bottom:16px}.category-breakdown{display:flex;gap:12px;align-items:center;width:100%;padding:15px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;color:var(--text);text-align:left;min-height:58px}.category-symbol{width:9px;height:9px;background:var(--category-color);border-radius:50%;flex-shrink:0}.category-symbol .icon{display:none}.category-detail{flex:1;min-width:0}.category-detail strong{font-size:12px;font-weight:500}.category-track{display:none}.category-sum{text-align:right;white-space:nowrap}.category-sum strong{font-size:12px}.category-sum small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.category-breakdown>.icon{display:none}.report-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;grid-column:1/-1}.report-bottom>div{padding:17px;border-radius:16px;background:var(--mint);color:#2a4e55}.report-bottom>div:nth-child(2){background:var(--peach);color:var(--text)}.report-bottom>div:nth-child(3){background:var(--lavender);color:var(--text)}.report-bottom span{display:flex;gap:5px;align-items:center;font-size:11px}.report-bottom strong{display:block;font-size:20px;margin-top:10px}.report-bottom .positive{color:inherit}.report-spotlight>.chart-note{grid-column:1/-1;margin:0}.report-trends,.family-breakdown{margin-top:28px}.report-trends summary{cursor:pointer;display:flex;gap:10px;align-items:center;font-size:13px;min-height:32px;font-weight:650}.report-trends summary span{margin-left:auto;font-size:10px;color:var(--muted)}.flow-totals{display:flex;gap:20px;color:var(--muted);font-size:11px;margin:24px 0}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.lime{background:#85cfd0}.pink{background:#cda4be}.bar-chart{height:180px;display:flex;gap:12px}.chart-axis{display:flex;flex-direction:column;justify-content:space-between;color:var(--muted);font-size:10px;padding-bottom:23px}.bar-plot{display:flex;justify-content:space-around;gap:12px;flex:1}.week-column{display:flex;flex:1;flex-direction:column;justify-content:flex-end;align-items:center;border:0;background:none;position:relative;padding:0;color:var(--muted)}.bars{height:150px;display:flex;align-items:flex-end;gap:7px;width:100%;justify-content:center;border-bottom:1px solid var(--line)}.bars i{width:25%;max-width:30px;border-radius:7px 7px 0 0}.income-bar{background:#85cfd0}.expense-bar{background:#cda4be}.week-label{font-size:10px;margin-top:8px}.bar-tooltip{display:none;position:absolute;bottom:35px;white-space:nowrap;background:var(--bg);padding:8px;border:1px solid var(--line);font-size:10px;border-radius:10px}.week-column:hover .bar-tooltip,.week-column:focus-visible .bar-tooltip{display:block}.reconcile-record{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.8}.reconcile-record:last-child{border:0}.reconcile-record>span{text-align:right}.reconcile-record small{display:block;font-size:10px;color:var(--muted)}
/* Plans and accounts retain their real data and actions. */
.plan-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.plan-summary>div:not(.progress-track){display:flex;flex-direction:column;gap:12px}.plan-summary span{color:var(--muted);font-size:11px}.plan-summary strong{font-size:25px}.plan-summary .progress-track{grid-column:1/-1}.progress-track{background:var(--bg);box-shadow:var(--inset);height:9px;border-radius:10px}.progress-track div{background:#85cfd0}.payment-explainer{margin:22px 0}.plan-list{box-shadow:none;padding:0;background:transparent}.plan-list>.panel-heading{margin:24px 0}.bill-row{background:var(--blue);border:0;border-radius:20px;padding:20px;margin-bottom:18px;box-shadow:var(--small);gap:16px}.bill-row[data-kind=subscription]{background:var(--rose)}.bill-row[data-kind=loan]{background:var(--yellow)}.bill-row.is-paid{background:var(--paid);box-shadow:var(--inset)}.bill-date{background:color-mix(in srgb,var(--bg) 65%,transparent);border-radius:50%;width:44px;height:44px;color:var(--accent)}.bill-date strong{font-size:16px}.bill-date small{color:var(--muted);font-size:8px}.bill-name strong{font-size:14px}.bill-name small{font-size:10px;color:var(--muted)}.bill-amount>strong{font-size:16px;white-space:normal}.bill-amount button{background:var(--bg);box-shadow:var(--small);border-radius:24px;font-size:11px;color:var(--accent);padding:8px 18px;min-height:36px}.bill-amount button.paid{box-shadow:none;background:none;color:var(--positive);opacity:1}.is-paid .bill-date{color:var(--positive)}
.wealth-overview>div:first-child>strong{display:block;font-size:36px;letter-spacing:-1px;margin:14px 0}.wealth-overview>div:first-child>small{display:block;color:var(--muted);font-size:11px;line-height:1.7}.wealth-split{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border-top:1px solid var(--line);margin-top:17px;padding-top:20px}.wealth-split span{color:var(--muted);font-size:11px}.wealth-split strong{display:block;font-size:20px;margin-top:9px}.section-title{gap:12px;margin:32px 0 16px}.section-title h2{font-size:16px}.accounts-page{margin:0 0 25px;gap:18px}.accounts-page .account-card{background:var(--blue);border:0;box-shadow:var(--small);border-radius:20px;padding:20px}.accounts-page .account-card.tone-1{background:var(--peach)}.accounts-page .account-card.tone-2{background:var(--mint);color:#294b55}.accounts-page .account-card.tone-3{background:var(--lavender)}.account-card-top{font-size:12px;color:inherit}.account-card-top>span{display:flex;align-items:center;gap:10px}.account-card-top .icon{color:var(--accent)}.account-card-top b{color:var(--muted);background:color-mix(in srgb,var(--bg) 60%,transparent);font-size:10px}.accounts-page .account-balance{font-size:28px;margin:22px 0 14px}.account-card-bottom{color:var(--muted);font-size:10px;align-items:center}.account-card-bottom button{background:none;border:0;color:var(--accent);font-size:11px;padding:3px;min-height:30px}.crypto-panel{margin-top:26px;background:var(--rose)}.holding-row{display:flex;gap:13px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.coin-badge{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--bg);color:var(--accent);font-size:24px;flex-shrink:0}.holding-name{flex:1}.holding-name strong{font-size:14px}.holding-name span,.holding-name small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.holding-value{text-align:right}.holding-value>strong{display:block;font-size:20px}.holding-value small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.quote-footer{display:flex;align-items:center;gap:15px;margin-top:20px}.quote-footer>span{color:var(--muted);font-size:10px}.reconcile-panel{margin-top:28px}.integration{box-shadow:none;border:1px solid var(--line);margin-bottom:24px}.integration-logo{background:var(--bg);box-shadow:var(--small);color:var(--accent)}.integration p{color:var(--muted)}.status-pill{background:var(--yellow);color:var(--text);border-radius:10px;line-height:1.7}
.transaction{border-color:var(--line);gap:12px}.category-icon{border-radius:50%;background:color-mix(in srgb,var(--category-color) 35%,var(--bg));color:color-mix(in srgb,var(--category-color) 60%,var(--text));width:39px;height:39px}.transaction strong{font-size:12px}.transaction small,.member{color:var(--muted)}.member i{background:var(--lavender);color:var(--text)}.delete-button{opacity:1;color:var(--muted);width:30px;padding:4px}.delete-button .icon{width:17px}.active-filter{display:flex;justify-content:space-between;color:var(--muted);padding:12px;font-size:12px}.active-filter button{background:none;border:0;color:var(--accent)}.filters input,.filters select{background:var(--bg)}.goal p{color:var(--muted)}.goal-symbol{color:var(--accent)}.goal-numbers>span{color:var(--muted)}
dialog{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:26px;padding:28px;width:490px;box-shadow:16px 20px 70px #15233255;max-height:90dvh;overflow-y:auto}dialog::backdrop{background:#17243465;backdrop-filter:blur(5px)}dialog .dialog-heading{margin-bottom:22px;gap:15px}dialog .dialog-heading h2{font-size:23px}dialog .dialog-heading .icon-button{flex-shrink:0}#entry-form .dialog-heading{margin-bottom:25px}#entry-dialog .category-bubble{width:45px;height:45px}#entry-dialog .category-choices{gap:10px}
#toast{background:var(--text);color:var(--bg);box-shadow:var(--small);max-width:calc(100vw - 30px);line-height:1.6;z-index:100}footer{color:var(--muted);padding:35px 0}.mobile-nav{display:none}.add-operation-fab{display:none}
@media(min-width:1100px){.entry-page{max-width:610px}.entry-page-heading{max-width:610px}.category-choices{grid-template-columns:repeat(3,1fr);gap:19px}.category-bubble{width:57px;height:57px}.category-choices button{font-size:12px}}
@media(max-width:1100px){main{padding:0 28px}.sidebar{width:205px;padding:28px 15px}main{margin-left:205px}.local-badge{display:none}.report-spotlight{grid-template-columns:1fr;max-width:730px;margin:auto}.report-donut{width:270px;height:270px}.report-category-list{padding:0 8px}.report-bottom{gap:12px}.report-bottom>div{padding:14px}.report-bottom strong{font-size:18px}.plan-summary strong{font-size:21px}}
@media(max-width:800px){.sidebar{width:76px;padding:27px 10px}.sidebar .brand{font-size:0;padding:0}.brand-dot,.workspace,.nav-label,.sidebar-note,.profile,.settings-link span{display:none}.sidebar nav{margin-top:30px}.sidebar nav button{font-size:0;padding:13px;gap:0;justify-content:center}.sidebar nav button span{width:22px}.settings-link{justify-content:center}main{margin-left:76px;padding:0 24px}.topbar{height:76px;gap:12px}.topbar .breadcrumb{font-size:10px}.theme-picker select{width:117px;font-size:10px}.topbar>.text-button span{display:none}.topbar>.text-button{width:39px;height:39px;min-height:39px;border-radius:12px;box-shadow:var(--small);justify-content:center}.topbar>.text-button .icon{width:18px}.page-heading{flex-wrap:wrap}.page-heading>.primary{font-size:11px}.entry-page-heading h1{font-size:28px}.wealth-split strong{font-size:17px}.plan-summary{gap:15px}.plan-summary strong{font-size:19px}.plan-summary span{font-size:10px}.holding-row{flex-wrap:wrap}.holding-row>.text-button{margin-left:auto}.quote-footer{flex-wrap:wrap}}
@media(max-width:600px){
 .sidebar{display:none}main{margin:0;padding:0 24px;width:100%}.topbar{height:65px;border:0;gap:10px;justify-content:flex-end}.breadcrumb{margin-right:auto}.breadcrumb>strong,.breadcrumb>span{display:none}.breadcrumb:before{content:'HAMYON';color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.5px}.breadcrumb{font-size:0!important}.theme-picker select{width:114px;font-size:10px;padding:8px 9px;min-height:36px;border-radius:11px}.topbar>.text-button{order:3;margin:0;width:36px;height:36px;min-height:36px}.demo-banner{font-size:9px;margin-bottom:14px;padding:0;align-items:center}.demo-banner b{display:inline}.demo-banner button{font-size:9px;max-width:93px;white-space:normal;text-align:right;min-height:34px}.demo-banner>span{max-width:210px}#content{padding-top:7px}.eyebrow{display:none}.page-heading,.entry-page-heading{margin:0 0 24px;gap:15px}.page-heading h1,.entry-page-heading h1{font-size:27px;letter-spacing:-.8px;margin:0 0 7px}.page-heading p,.entry-page-heading p{font-size:11px}.page-heading>.primary{width:auto;min-height:40px;font-size:11px;padding:10px 14px}.page-heading>.month-control{width:100%;margin-top:4px}.panel{padding:21px;border-radius:22px}.entry-page{padding:0;border-radius:0}.entry-page .amount-field{margin:23px 0 16px;padding:15px 18px}.entry-page .amount-input{font-size:36px}.type-switch label{font-size:11px;padding:8px;min-height:32px}.category-heading strong{font-size:13px}.category-heading .text-button{font-size:11px}.category-choices{gap:10px 16px;margin-bottom:14px}.category-bubble{width:49px;height:49px}.category-choices button{font-size:10px;gap:7px;min-height:72px}.entry-details{margin:10px 0 15px}.entry-details summary{font-size:10px}.entry-details summary span{font-size:9px}.entry-submit>.primary{font-size:13px;min-height:48px}.voice-widget{margin-top:13px}.voice-widget>summary{font-size:10px}.entry-submit .form-help{font-size:9px}#entry-form [name=accountId]{font-size:12px}input,select{font-size:16px}.entry-page .category-choices{padding:0 5px}.entry-page .form-error:empty{display:none}
 .mobile-nav{position:fixed;display:flex;bottom:14px;left:16px;right:16px;margin:0;z-index:10;border-radius:23px;background:var(--bg);box-shadow:var(--raised);height:72px;justify-content:space-around;align-items:center;padding:8px 5px calc(8px + env(safe-area-inset-bottom,0px));height:calc(72px + env(safe-area-inset-bottom,0px))}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--muted);font-size:9px;padding:5px;min-width:60px;min-height:52px;border:0;background:none;margin:0}.mobile-nav button>.icon{width:22px;height:22px;box-sizing:content-box;padding:6px;border-radius:11px}.mobile-nav button>span{font-size:9px;line-height:1;width:auto}.mobile-nav button.active{color:var(--accent);background:none;font-weight:800}.mobile-nav button.active>.icon{box-shadow:var(--inset)}footer{padding:27px 0 120px;font-size:9px}footer span{display:none}#toast{bottom:100px;width:90%;font-size:12px}
 .report-spotlight{padding:0;box-shadow:none;gap:18px}.report-donut-wrap{padding:22px 0 7px}.report-donut{width:240px;height:240px;padding:12px;margin:12px auto 25px;box-shadow:0 0 0 13px var(--bg),7px 8px 12px 13px var(--shade),-7px -7px 12px 13px var(--highlight)}.report-donut strong{font-size:26px}.report-donut small{font-size:9px}.report-donut-wrap>p{font-size:9px;max-width:260px;margin:20px auto 0}.report-category-list{padding:0}.report-category-list h2{font-size:15px;margin:5px 0}.category-breakdown{padding:12px 0;min-height:50px;gap:10px}.category-detail strong,.category-sum strong{font-size:11px}.category-sum small{font-size:9px}.report-bottom{grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.report-bottom>div:nth-child(3){grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.report-bottom strong{font-size:18px}.report-bottom>div:nth-child(3) strong{margin:0}.report-bottom span{font-size:10px}.report-bottom span>.icon{width:15px;height:15px}.report-spotlight>.chart-note{font-size:10px}.report-trends{padding:18px;margin-top:24px}.report-trends summary{font-size:11px}.report-trends summary>span{display:none}.family-breakdown h2{font-size:15px}.reconcile-record{font-size:11px;gap:10px}.reconcile-record span{overflow-wrap:anywhere}.recent{padding:18px;margin-top:24px}.panel-heading h2{font-size:14px}.panel-heading .text-button{font-size:10px}.transaction{gap:8px;position:relative;flex-wrap:wrap}.transaction-name{min-width:90px}.transaction strong{font-size:10px}.transaction-name small{font-size:9px;line-height:1.5}.transaction-value{min-width:82px}.transaction-value small{font-size:8px}.category-icon{width:30px;height:30px}.category-icon>.icon{width:17px;height:17px}.transaction .member{display:none}.delete-button{width:20px}.delete-button .icon{width:15px}.section-toolbar{flex-wrap:wrap}.section-toolbar .month-control{width:100%}.month-control{min-width:0;width:100%;padding:3px 6px;min-height:44px}.month-control span{font-size:12px}.month-control button{min-height:38px}
 .plan-summary{grid-template-columns:1fr 1fr;gap:17px}.plan-summary .progress-track{height:6px}.plan-list{padding:0}.plan-list>.panel-heading h2{font-size:14px}.plan-list>.panel-heading .secondary{font-size:11px;padding:9px 12px}.bill-row{display:grid;grid-template-columns:39px 1fr;padding:16px;gap:9px 12px;margin-bottom:17px;border-radius:20px}.bill-date{width:37px;height:37px}.bill-name strong{font-size:13px}.bill-name small{font-size:9px}.bill-amount{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;margin-top:5px}.bill-amount>strong{font-size:15px}.bill-amount button{margin:0;min-height:36px;font-size:10px;padding:8px 16px}.bill-row.is-paid .bill-amount{margin-top:0}.payment-explainer{font-size:10px}
 .wealth-overview{padding:22px}.wealth-overview .eyebrow{display:block;font-size:9px;color:var(--muted)}.wealth-overview>div:first-child>strong{font-size:31px;margin:12px 0}.wealth-overview>div:first-child>small{font-size:9px}.wealth-split{grid-template-columns:1fr;gap:11px;padding-top:15px;margin-top:14px}.wealth-split>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.wealth-split strong{margin:0;font-size:15px}.wealth-split span{font-size:10px}.section-title{margin:26px 0 14px;gap:9px}.section-title h2{font-size:15px}.section-title h2>.icon{display:none}.section-title>.text-button{font-size:10px}.section-title>.text-button>.icon{width:16px}.accounts-page{grid-template-columns:1fr;gap:15px;margin-bottom:24px}.accounts-page .account-card{padding:16px;display:grid;grid-template-columns:1fr auto;gap:5px 12px;border-radius:18px}.accounts-page .account-card-top{font-size:12px;display:block}.account-card-top>span{gap:8px}.account-card-top>b{display:none}.accounts-page .account-balance{font-size:16px;margin:0;align-self:center}.account-card-bottom{grid-column:1/-1;font-size:9px}.account-card-bottom button{min-height:24px;font-size:10px}.account-card-top .icon{width:18px}.crypto-panel{padding:19px;background:var(--rose)}.crypto-panel .panel-heading{gap:8px}.crypto-panel .panel-heading h2{font-size:14px}.crypto-panel .panel-heading h2>.icon{display:none}.crypto-panel .panel-heading p{font-size:10px}.crypto-panel .secondary{font-size:10px;padding:9px 12px;min-height:38px}.holding-name strong{font-size:12px}.holding-value>strong{font-size:16px}.holding-value small{font-size:9px}.coin-badge{width:32px;height:32px;font-size:20px}.holding-row{gap:8px}.quote-footer{gap:12px}.quote-footer>span{font-size:9px}.crypto-panel>.chart-note{font-size:10px}.reconcile-panel .panel-heading{flex-wrap:wrap}.reconcile-panel .panel-heading p{font-size:11px}.integration{padding:16px;gap:12px}.integration h2{font-size:14px}.integration p{font-size:11px}.integration-logo{width:32px;height:32px}.settings-panel{padding:20px}.settings-panel p{font-size:12px}.button-row{gap:13px}.button-row button{font-size:11px}.inline-form{gap:14px}.inline-form input{max-width:100%}.filters input,.filters select{font-size:13px}.goal{padding:24px}.goal-numbers{flex-wrap:wrap}.goal-numbers strong{font-size:28px}
 dialog{padding:23px;max-width:calc(100vw - 24px);max-height:90dvh;border-radius:24px}dialog .dialog-heading h2{font-size:21px}.form-grid{gap:12px}dialog label{font-size:12px}.form-grid label{font-size:11px}#entry-dialog{margin:auto;width:calc(100vw - 24px)}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Compact summaries keep the actual accounts and upcoming bills near the top. */
.plan-summary{grid-template-columns:1fr;gap:16px}.plan-summary .plan-remaining{gap:8px}.plan-remaining>span{text-transform:uppercase;font-size:10px;letter-spacing:.5px}.plan-remaining>strong{font-size:33px}.plan-remaining>small{color:var(--muted);font-size:11px}.plan-details summary,.wealth-details summary{cursor:pointer;color:var(--muted);font-size:11px;min-height:32px;line-height:1.6;padding:8px 0}.plan-details>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.plan-details>div>strong{font-size:18px}.plan-summary+.section-toolbar{margin-top:25px}.wealth-details{margin-top:12px;border-top:1px solid var(--line);padding-top:8px}.wealth-details>summary{display:flex;justify-content:space-between;gap:5px;align-items:center;color:var(--accent)}.wealth-details>summary:after{content:'⌄';font-size:16px}.wealth-details[open]>summary:after{content:'⌃'}.wealth-details .wealth-split{margin-top:0}.bill-row[data-kind=regular]:not(.is-paid):nth-of-type(even){background:var(--peach)}
@media(max-width:600px){.plan-summary{gap:6px}.plan-summary .plan-remaining>strong{font-size:30px!important}.plan-summary .plan-remaining>span{font-size:9px!important}.plan-remaining>small{font-size:10px}.plan-details summary{font-size:10px}.page-heading:has([data-open=bill])>.primary,.page-heading:has([data-open=account])>.primary{width:auto;position:absolute;right:24px;top:127px;min-width:36px;min-height:36px;padding:9px;font-size:0;border-radius:12px}.page-heading:has([data-open=bill])>.primary .icon,.page-heading:has([data-open=account])>.primary .icon{width:18px;height:18px;margin:0}.page-heading:has([data-open=bill]),.page-heading:has([data-open=account]){padding-right:43px}.plan-list>.panel-heading{margin:16px 0}.payment-explainer{margin:16px 0;font-size:10px}.plan-summary+.section-toolbar{margin:23px 0 10px}.wealth-details summary{font-size:11px}.wealth-overview>div:first-child>small{font-size:10px}.wealth-overview .wealth-split strong{font-size:14px}}
@media(max-width:600px){.page-heading:has([data-open=bill]),.page-heading:has([data-open=account]){position:relative}.page-heading:has([data-open=bill])>.primary,.page-heading:has([data-open=account])>.primary{top:0;right:0}}
.plan-summary>.plan-remaining{grid-row:1}.plan-summary>.progress-track{grid-row:auto}
[data-theme=dark]{--mint:#335354}
[data-theme=dark] .accounts-page .account-card.tone-2,[data-theme=dark] .report-bottom>div:first-child{color:var(--text)}
:root[data-theme=dark]{--mint:#335354}
@media(min-width:601px){.entry-page .entry-submit{position:sticky;bottom:16px;z-index:2;background:var(--bg);border-radius:24px;padding:8px;margin:0 -8px;box-shadow:0 8px 18px color-mix(in srgb,var(--bg) 90%,transparent)}.entry-page .entry-submit .form-help{margin-top:8px}}

/* Family access uses the same surfaces as the four finance screens. */
.family-panel{max-width:680px;margin:0 auto}.family-panel h2{font-size:23px;margin:0 0 14px}.family-panel p{color:var(--muted);line-height:1.65}.family-panel form{margin:24px 0 12px}.family-panel label{display:flex;flex-direction:column;gap:10px}.family-panel input{width:100%;min-width:0}.family-panel .button-row{flex-wrap:wrap;gap:12px;margin-top:24px}.family-panel>.text-button{margin-top:20px}.family-callout{background:var(--blue);border-radius:18px;padding:20px;margin:20px 0}.family-callout p:last-child{margin-bottom:0}.family-steps{padding-left:24px;line-height:2.3;color:var(--muted);margin:24px 0}.family-members{list-style:none;padding:0;margin:24px 0}.family-members li{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.family-members small{display:block;color:var(--muted);margin-top:5px}.family-members .avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%}#telegram-login-slot{min-height:48px;margin:24px 0 8px}.topbar>.family-shortcut{margin-left:auto}.topbar>.text-button[data-view=settings]{margin-left:0}
@media(max-width:600px){.topbar{gap:8px}.topbar>.family-shortcut{order:2}.family-panel{padding:22px 18px}.family-panel h2{font-size:21px}.family-panel .primary,.family-panel .secondary{width:100%;min-height:48px}.family-panel .button-row{display:grid}.family-panel input{font-size:16px}.family-steps{font-size:13px}.family-callout{padding:16px}.family-panel iframe{max-width:100%}}
