:root{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color-scheme:dark;--page:#0b0b0e;--page2:#111116;--surface:#1c1c22;--surface2:#24242c;--surface3:#303039;--ink:#f5f3f6;--muted:#aaa7b1;--faint:#787680;--line:rgba(255,255,255,.095);--glass:rgba(37,37,43,.72);--glass-border:rgba(255,255,255,.18);--accent:#a95572;--accent-soft:rgba(169,85,114,.18);--positive:#8abfa0;--negative:#e1939a;--shadow:rgba(0,0,0,.45);--radius:22px}
:root[data-theme="light"]{color-scheme:light;--page:#f4f3f4;--page2:#ffffff;--surface:#fff;--surface2:#f2f0f2;--surface3:#e7e4e7;--ink:#222127;--muted:#77737d;--faint:#96919b;--line:rgba(24,22,29,.09);--glass:rgba(255,255,255,.75);--glass-border:rgba(255,255,255,.9);--accent:#963c60;--accent-soft:rgba(150,60,96,.12);--positive:#29714b;--negative:#c14e60;--shadow:rgba(60,49,67,.12)}
*{box-sizing:border-box}html{scrollbar-width:none}body{margin:0;background:#08080a;color:var(--ink)}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit}input,textarea,select{outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}svg{flex-shrink:0}#app{min-height:100dvh;position:relative;isolation:isolate;max-width:520px;margin:0 auto;background:var(--page);overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 14px 70px #0008}
#app::before{content:"";position:absolute;pointer-events:none;top:-190px;left:-80px;right:-100px;height:440px;background:radial-gradient(ellipse at 60% 30%,var(--accent-soft),transparent 63%);opacity:.75;z-index:-1}#screen{min-height:100dvh;padding:0 23px 139px;animation:appear .24s both}@keyframes appear{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(min-width:700px){body{background:radial-gradient(ellipse at center,#25212b,#08080b 68%);padding:25px}#app{min-height:calc(100dvh - 50px);border-radius:35px;border:1px solid rgba(255,255,255,.09)}#screen{min-height:calc(100dvh - 50px)}.bottom-nav{bottom:40px!important}.quick-add{bottom:143px!important}.overlay{align-items:center!important}.sheet{border-radius:30px!important;margin-bottom:24px}}@media(max-width:420px){#screen{padding-left:18px;padding-right:18px}.bottom-nav{left:13px!important;right:13px!important}.nav-btn{font-size:9px!important}.nav-btn svg{width:20px;height:20px}}
.topbar{display:flex;align-items:center;justify-content:space-between;padding-top:max(45px,env(safe-area-inset-top));margin-bottom:29px}.brand{display:flex;align-items:center;gap:11px}.brand-icon{width:39px;height:39px;border-radius:12px;object-fit:cover}.eyebrow{color:var(--muted);font-size:12px;letter-spacing:.12px;margin-bottom:3px}.brand-name{font-size:19px;letter-spacing:-.6px;font-weight:700}.top-actions{display:flex;align-items:center;gap:8px}.icon-button{width:40px;height:40px;display:grid;place-items:center;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px}.icon-button:hover,.secondary-btn:hover,.nav-btn:hover{filter:brightness(1.1)}.section-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin:0 0 20px}.screen-title{font-size:33px;line-height:1.13;letter-spacing:-1.25px;font-weight:760;margin:0}.screen-subtitle{font-size:13px;color:var(--muted);margin:7px 0 0}.tiny-link{color:var(--muted);background:none;padding:7px 0;font-size:12px;font-weight:600;display:flex;align-items:center;gap:4px;white-space:nowrap}.tiny-link.accent{color:var(--accent)}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:27px 1px 13px}.section-heading h2{font-size:16px;letter-spacing:-.25px;margin:0;font-weight:690}.kicker{color:var(--muted);font-size:12px}.glass{background:var(--glass);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(28px) saturate(160%);backdrop-filter:blur(28px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 15px 35px -20px var(--shadow)}.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.hero{border-radius:29px;position:relative;overflow:hidden;background:linear-gradient(142deg,rgba(255,255,255,.065),transparent 58%),var(--surface);border:1px solid var(--line);padding:19px 20px 22px;margin-bottom:15px}.hero::after{content:"";position:absolute;right:-60px;bottom:-135px;height:265px;width:265px;border-radius:50%;background:radial-gradient(circle,var(--accent-soft),transparent 72%);pointer-events:none}.segment{background:var(--surface2);border:1px solid var(--line);padding:4px;border-radius:15px;display:grid;grid-auto-columns:1fr;grid-auto-flow:column;gap:3px}.segment-btn{background:transparent;color:var(--muted);min-height:34px;border-radius:11px;font-size:13px;font-weight:650;transition:background .25s,color .25s,transform .25s}.segment-btn.active{background:var(--surface3);box-shadow:0 2px 9px var(--shadow);color:var(--ink)}.hero .segment{width:185px;position:relative;z-index:1}.hero-label{color:var(--muted);font-size:13px;margin-top:25px}.hero-balance{font-size:37px;letter-spacing:-1.5px;font-weight:750;line-height:1.26;margin-top:5px;font-variant-numeric:tabular-nums}.hero-balance small{font-size:16px;letter-spacing:-.1px;font-weight:600;color:var(--muted)}.hero-footer{display:flex;align-items:center;justify-content:space-between;margin-top:22px;position:relative;z-index:1}.hero-note{font-size:12px;color:var(--muted)}.small-round{display:grid;place-items:center;border-radius:11px;width:35px;height:35px;background:var(--accent-soft);color:var(--accent)}.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.metric{padding:14px 12px;min-width:0;border-radius:17px;background:var(--surface);border:1px solid var(--line)}.metric-label{color:var(--muted);font-size:10.5px;line-height:1.3;min-height:27px}.metric-value{display:block;font-size:16px;font-weight:720;letter-spacing:-.65px;margin-top:8px;line-height:1.2;overflow-wrap:anywhere}.metric-value span{font-size:10px;color:var(--muted);font-weight:560;letter-spacing:0}.metric-sub{font-size:10px;color:var(--muted);margin-top:8px;min-height:12px}.transaction-list{overflow:hidden;border-radius:19px;border:1px solid var(--line);background:var(--surface)}.tx-row{padding:13px;display:flex;align-items:center;gap:12px;background:none;color:var(--ink);width:100%;text-align:left}.tx-row+ .tx-row{border-top:1px solid var(--line)}.tx-row:hover{background:var(--surface2)}.tx-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;flex-shrink:0;background:var(--surface2);color:var(--muted)}.tx-main{flex:1;min-width:0}.tx-name{font-size:13.5px;font-weight:640;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-description{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.tx-right{text-align:right;flex-shrink:0}.tx-amount{font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}.tx-amount.income{color:var(--positive)}.tx-time{font-size:10.5px;color:var(--muted);margin-top:5px}.empty{border:1px dashed var(--line);border-radius:20px;padding:27px 22px;text-align:center;background:rgba(125,125,125,.02)}.empty-glyph{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:var(--surface2);margin:0 auto 12px;color:var(--muted)}.empty h3{margin:0;font-size:14px}.empty p{margin:7px auto 0;max-width:240px;color:var(--muted);line-height:1.5;font-size:12px}.callout{padding:13px 15px;border-radius:15px;background:var(--accent-soft);color:var(--ink);font-size:12px;line-height:1.5;margin:12px 0}.small-warning{font-size:11px;color:var(--muted);margin:8px 3px}.bottom-nav{position:fixed;z-index:20;bottom:calc(18px + env(safe-area-inset-bottom));left:max(calc((100vw - 520px)/2 + 20px),20px);right:max(calc((100vw - 520px)/2 + 20px),20px);height:72px;border-radius:24px;display:grid;grid-template-columns:repeat(5,1fr);padding:5px 4px;gap:0;transition:background .3s}.nav-btn{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:var(--muted);background:transparent;border-radius:18px;min-width:0;font-size:10px;font-weight:540;position:relative;transition:color .23s,transform .23s}.nav-btn.active{color:var(--accent);font-weight:700}.nav-btn.active::before{content:"";background:var(--accent-soft);border-radius:14px;position:absolute;inset:2px 8px;z-index:-1;animation:navIn .28s both}@keyframes navIn{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}.nav-btn svg{height:22px;width:22px}.quick-add{position:fixed;z-index:18;bottom:calc(109px + env(safe-area-inset-bottom));right:max(calc((100vw - 520px)/2 + 28px),28px);height:53px;width:53px;border-radius:18px;display:grid;place-items:center;background:var(--accent);color:#fff;box-shadow:0 9px 25px color-mix(in srgb,var(--accent) 35%,transparent),inset 0 1px 0 #ffffff48;transition:transform .2s}.quick-add:active{transform:scale(.92)}
.primary-btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--accent);color:#fff;border-radius:14px;min-height:46px;padding:0 18px;font-size:13px;font-weight:710;box-shadow:0 8px 19px -12px var(--accent)}.secondary-btn{display:inline-flex;justify-content:center;align-items:center;gap:7px;background:var(--surface2);color:var(--ink);border:1px solid var(--line);border-radius:13px;min-height:40px;padding:0 13px;font-size:12px;font-weight:640}.danger-btn{background:rgba(185,52,68,.12);color:var(--negative)}.full{width:100%}.button-row{display:flex;gap:9px;flex-wrap:wrap}.icon-text{display:flex;align-items:center;gap:8px}.chip{border-radius:14px;background:var(--surface2);color:var(--ink);padding:9px 12px;font-size:12px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line)}.chip.active{border-color:var(--accent);background:var(--accent-soft)}.account-card{border-radius:24px;padding:19px 20px;margin:12px 0;min-height:137px;position:relative;overflow:hidden;color:#fff;background:linear-gradient(138deg,color-mix(in srgb,var(--card-color) 77%,#ddd 23%),var(--card-color));border:1px solid #ffffff34;box-shadow:0 12px 25px -18px #000b}.account-card::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(112deg,#fff2,transparent 50%)}.account-card::after{content:"";position:absolute;width:195px;height:195px;right:-78px;bottom:-130px;border-radius:50%;box-shadow:0 0 0 40px #ffffff09,0 0 0 88px #ffffff05;pointer-events:none}.account-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.account-card h3{font-size:15px;letter-spacing:-.3px;margin:0;text-align:right;font-weight:720}.account-card .bank-label{font-size:11px;color:#ffffffe3;text-align:right;margin-top:4px}.account-card .account-amount{text-align:left;font-variant-numeric:tabular-nums;font-size:17px;font-weight:760;letter-spacing:-.7px}.account-card .account-amount small{font-size:10px;font-weight:550;letter-spacing:0}.account-card .account-small{font-size:11px;color:#ffffffc4;margin-top:3px}.account-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:34px}.account-edit{width:31px;height:31px;border-radius:10px;color:#fff;background:#ffffff23;display:grid;place-items:center;border:1px solid #ffffff25}.goal-track{height:5px;width:110px;background:#ffffff38;border-radius:99px;overflow:hidden}.goal-fill{height:100%;background:#fff;border-radius:99px}.goal-caption{font-size:10px;color:#ffffffcd;margin-top:5px}.bank-cash-grid{display:flex;gap:9px}.stat-panel{border-radius:22px;padding:19px;background:var(--surface);border:1px solid var(--line);margin-bottom:12px}.stat-main{font-size:30px;letter-spacing:-1px;font-weight:740;margin-top:7px}.mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-stat{padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:17px}.mini-stat .label{color:var(--muted);font-size:11px}.mini-stat strong{display:block;margin-top:6px;font-size:16px;letter-spacing:-.5px}.bars{display:flex;flex-direction:column;gap:16px}.bar-row{width:100%;display:block;background:transparent;color:var(--ink);text-align:left;padding:0}.bar-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:7px}.bar-top strong{font-weight:680}.bar-top span{font-variant-numeric:tabular-nums;color:var(--muted)}.bar-track{height:7px;border-radius:99px;background:var(--surface2);overflow:hidden}.bar-fill{height:100%;border-radius:99px;min-width:0;transition:width .4s}.donut{height:160px;width:160px;border-radius:50%;margin:8px auto 18px;display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;inset:23px;background:var(--surface);border-radius:50%}.donut-inner{z-index:1;text-align:center}.donut-inner strong{display:block;font-size:23px}.donut-inner span{font-size:11px;color:var(--muted)}.loan-switch{margin:18px 0 20px}.loan-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px;margin:10px 0}.loan-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.loan-person{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:650}.avatar{height:38px;width:38px;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-weight:700}.loan-balance{font-size:19px;letter-spacing:-.5px;font-weight:720;margin:13px 0 9px}.loan-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px;color:var(--muted);font-size:11px}.status{border-radius:99px;padding:5px 8px;font-size:10px;font-weight:680;background:var(--surface2);color:var(--muted);white-space:nowrap}.status.overdue{background:rgba(221,110,120,.14);color:var(--negative)}.status.completed{background:rgba(93,169,123,.13);color:var(--positive)}.settings-group{margin:19px 0 25px}.settings-group h2{font-size:11px;letter-spacing:.5px;color:var(--muted);font-weight:660;text-transform:uppercase;margin:0 0 9px 10px}.settings-list{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden}.setting-row{width:100%;display:flex;align-items:center;gap:12px;padding:13px 15px;text-align:left;background:transparent;color:var(--ink);font-size:13px}.setting-row + .setting-row{border-top:1px solid var(--line)}.setting-row .left{flex:1}.setting-row small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.setting-row .right{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.setting-symbol{width:31px;height:31px;background:var(--surface2);color:var(--accent);border-radius:10px;display:grid;place-items:center}.theme-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.theme-choice button{color:var(--muted);background:var(--surface2);border:1px solid var(--line);padding:12px 3px;border-radius:13px;font-size:12px}.theme-choice button.active{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}.swatches{display:flex;flex-wrap:wrap;gap:13px;padding:12px 2px 0}.swatch{width:32px;height:32px;border-radius:50%;background:var(--swatch);display:grid;place-items:center;color:#fff;border:2px solid transparent}.swatch.active{outline:2px solid var(--ink);outline-offset:3px}.mono{font-variant-numeric:tabular-nums}
.overlay{position:fixed;z-index:50;inset:0;display:flex;justify-content:center;align-items:flex-end;background:rgba(0,0,0,.56);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);animation:fadeIn .22s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.sheet{width:100%;max-width:520px;max-height:96dvh;overflow:auto;overscroll-behavior:contain;border-radius:29px 29px 0 0;background:var(--page2);border:1px solid var(--glass-border);border-bottom:0;box-shadow:0 -15px 50px #0005;animation:sheetIn .32s cubic-bezier(.2,.7,.2,1)}@keyframes sheetIn{from{transform:translateY(30px);opacity:.7}to{transform:translateY(0);opacity:1}}.sheet-handle{width:35px;height:5px;background:var(--muted);opacity:.4;border-radius:99px;margin:11px auto 15px}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 20px 19px}.sheet-header h2{font-size:20px;letter-spacing:-.65px;margin:0}.sheet-header p{color:var(--muted);font-size:12px;margin:5px 0 0}.sheet-body{padding:0 20px calc(28px + env(safe-area-inset-bottom));}.sheet .segment{margin:0 0 18px}.field{display:block;margin:14px 0}.field>span{display:block;font-size:11px;font-weight:670;color:var(--muted);margin-bottom:7px}.input,.textarea,.select{width:100%;min-height:45px;border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:0 13px;color:var(--ink);font-size:14px;appearance:none}.textarea{padding:11px 13px;min-height:73px;resize:vertical}.select{padding-right:28px}.input::placeholder{color:var(--faint)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.field-grid .field{min-width:0}.form-actions{display:flex;gap:8px;margin-top:22px}.form-actions>*{flex:1}.amount-field{margin:17px 0 19px}.amount-field input{width:100%;border:none;border-bottom:1px solid var(--line);border-radius:0;background:transparent;font-size:37px;font-weight:750;letter-spacing:-1.25px;color:var(--ink);padding:7px 2px 10px;font-variant-numeric:tabular-nums}.suggestions{padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-top:5px;max-height:150px;overflow:auto}.suggestion{display:block;text-align:left;width:100%;color:var(--ink);padding:9px 12px;background:transparent;font-size:12px;border-radius:8px}.suggestion:hover{background:var(--surface2)}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:220px;overflow:auto}.category-opt{display:flex;align-items:center;gap:7px;justify-content:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 8px;color:var(--ink);font-size:11px;overflow:hidden}.category-opt.active{border-color:var(--accent);background:var(--accent-soft)}.category-opt span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.balance-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.balance-line:last-child{border-bottom:0}.muted{color:var(--muted)}.text-positive{color:var(--positive)!important}.text-negative{color:var(--negative)!important}.divider{height:1px;background:var(--line);margin:19px 0}.subheading{font-size:13px;font-weight:700;margin:20px 0 10px}.list-picker{display:flex;flex-direction:column;gap:7px}.picker-row{display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px;color:var(--ink);width:100%;text-align:left}.picker-row .title{font-size:12px;font-weight:600}.picker-row .sub{font-size:11px;color:var(--muted)}.picker-row .grow{flex:1}.picker-row.selected{border-color:var(--accent);background:var(--accent-soft)}.switch{height:25px;width:43px;border-radius:99px;background:var(--surface3);position:relative;flex-shrink:0;transition:background .2s}.switch.on{background:var(--accent)}.switch::after{content:"";position:absolute;left:3px;top:3px;border-radius:50%;height:19px;width:19px;background:#fff;transition:transform .2s}.switch.on::after{transform:translateX(18px)}.color-choices{display:flex;gap:9px;flex-wrap:wrap}.color-choice{width:34px;height:34px;border-radius:11px;background:var(--choice);border:2px solid #ffffff24}.color-choice.selected{outline:2px solid var(--ink);outline-offset:2px}.sticky-actions{position:sticky;bottom:0;padding:10px 0 0;background:var(--page2)}.toast{position:fixed;z-index:90;top:calc(env(safe-area-inset-top) + 18px);left:50%;transform:translateX(-50%);max-width:360px;background:var(--surface3);border:1px solid var(--glass-border);border-radius:14px;box-shadow:0 12px 30px var(--shadow);padding:12px 16px;color:var(--ink);font-size:12px;animation:fadeIn .22s}.obscure{filter:blur(5px)}.file-input{display:none}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:99px;background:var(--surface2);padding:7px 9px;color:var(--muted);font-size:10px}.form-error{color:var(--negative);font-size:12px;margin:10px 0}.center{text-align:center}.no-margin{margin:0}.hstack{display:flex;align-items:center;gap:9px}.between{justify-content:space-between}.space-top{margin-top:13px}.caret{opacity:.7}.app-identity{width:70px;height:70px;border-radius:20px;display:block;margin:0 auto 17px}.onboard{padding-top:max(86px,env(safe-area-inset-top));text-align:center}.onboard h1{font-size:39px;letter-spacing:-1.9px;margin:12px 0}.onboard .copy{max-width:300px;margin:0 auto 28px;color:var(--muted);font-size:14px;line-height:1.65}.onboard .card{padding:17px;border-radius:22px;background:var(--surface);border:1px solid var(--line);text-align:left}.onboard .card h2{font-size:15px}.onboard-footer{margin-top:22px}.about-checksum{word-break:break-all;font:10px ui-monospace,monospace;color:var(--muted);line-height:1.6}html[dir="rtl"] .tx-row,html[dir="rtl"] .setting-row{text-align:right}html[dir="rtl"] .tx-right{text-align:left}html[dir="rtl"] .account-card h3,html[dir="rtl"] .bank-label{text-align:left}html[dir="rtl"] .account-card .account-amount{text-align:right}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* Folio 1.1 scoped, non-destructive visual refinements */
.topbar{padding-top:max(72px,calc(env(safe-area-inset-top,0px) + 19px));}
@media (min-width:700px){.topbar{padding-top:29px}}
.bottom-nav{height:62px;bottom:calc(13px + env(safe-area-inset-bottom,0px));padding:5px 8px;border-radius:23px;}
.nav-btn{gap:0;min-height:48px;}
.nav-btn svg{width:25px;height:25px;}
.nav-btn.active::before{inset:2px 10px;border-radius:15px;}
.quick-add{bottom:calc(88px + env(safe-area-inset-bottom,0px));right:max(calc((100vw - 520px)/2 + 26px),26px);height:56px;width:56px;border-radius:19px;background:color-mix(in srgb,var(--accent) 88%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 70%,white 30%);color:white;z-index:21;}
.quick-add:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media (min-width:700px){.bottom-nav{bottom:39px!important}.quick-add{bottom:116px!important}}
@media (max-width:420px){.nav-btn svg{width:24px;height:24px}.bottom-nav{left:13px!important;right:13px!important}}
/* The three preserved financial metrics form a cleaner, single glanceable panel. */
.overview-grid{display:flex;flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.metric{padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:57px;border:0;border-radius:0;background:transparent}
.metric + .metric{border-top:1px solid var(--line)}
.metric-label{min-height:0;font-size:12.5px;line-height:1.2;color:var(--muted);flex:1}
.metric-value{margin:0;display:inline-flex;justify-content:flex-end;align-items:baseline;gap:4px;white-space:nowrap;font-size:19px;letter-spacing:-.65px;overflow-wrap:normal;font-variant-numeric:tabular-nums}
.metric-value span{font-size:10px;white-space:nowrap;letter-spacing:.1px}
.metric-sub{display:none}
@media(max-width:360px){.metric{padding:12px}.metric-label{font-size:11px}.metric-value{font-size:17px}}
/* Keep approved account card layout, only give balances slightly more emphasis. */
.account-card .account-amount{font-size:20px;letter-spacing:-.7px;line-height:1.18;white-space:nowrap;}
.account-card .account-amount small{font-size:10px;letter-spacing:0;vertical-align:baseline}
@media(max-width:360px){.account-card .account-amount{font-size:18px}}
.tx-icon{transition:background-color .2s,color .2s}
/* Leave space for the thumb-reachable add control while scrolling. */
#screen{padding-bottom:calc(158px + env(safe-area-inset-bottom,0px));}
@media(min-width:700px){#screen{padding-bottom:175px}}


/* Folio 1.3: Only the three approved UI refinements. */
/* Paint the whole iPhone top safe area with the current app theme, without
   the legacy tinted pseudo-element or any shadow on the header. */
html,body,#app{background:var(--page)}
#app::before{content:none!important;display:none!important}
.topbar{position:relative;z-index:1;background:transparent!important;box-shadow:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;opacity:1!important}
.topbar .brand,.topbar .brand-icon,.topbar .brand-name,.topbar .eyebrow{filter:none!important;opacity:1}
@media(max-width:699px){
  #app{box-shadow:none}
  #screen{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}
  .topbar{padding-top:calc(env(safe-area-inset-top,0px) + 20px)}
  .bottom-nav{left:14px!important;right:14px!important;bottom:calc(7px + env(safe-area-inset-bottom,0px));height:62px}
}
@media(min-width:700px){.bottom-nav{bottom:38px!important;left:max(calc((100vw - 520px)/2 + 16px),16px);right:max(calc((100vw - 520px)/2 + 16px),16px)}}
/* Neutral dark glass: charcoal, graphite, white and silver only.
   Keep the existing pill, grid, touch targets and sliding selection. */
.bottom-nav.liquid-nav{
  --active-index:0;
  direction:ltr;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:stretch;
  padding:6px;
  gap:0;
  overflow:visible;
  border-radius:999px;
  border:1px solid rgba(222,222,226,.31);
  background:linear-gradient(180deg,rgba(60,61,67,.49) 0%,rgba(22,23,27,.70) 37%,rgba(17,18,22,.77) 100%);
  -webkit-backdrop-filter:blur(35px) saturate(105%);
  backdrop-filter:blur(35px) saturate(105%);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.22),inset 0 -1px 2px rgba(207,208,212,.11),0 9px 24px rgba(0,0,0,.24);
  isolation:isolate;
}
.bottom-nav.liquid-nav::before{
  content:"";position:absolute;pointer-events:none;
  inset:-1.5px;border-radius:inherit;padding:1.5px;
  background:linear-gradient(115deg,rgba(237,238,240,.68),rgba(190,192,198,.28) 19%,rgba(255,255,255,.47) 52%,rgba(165,167,175,.25) 73%,rgba(228,229,233,.66));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask-composite:exclude;
  opacity:.76;
  z-index:2;
}
.bottom-nav.liquid-nav::after{
  content:"";pointer-events:none;position:absolute;inset:2px 8px 46% 8px;
  border-radius:inherit;
  background:linear-gradient(to bottom,rgba(255,255,255,.095),transparent);
  opacity:.76;z-index:0;
}
.bottom-nav.liquid-nav .nav-selection{
  pointer-events:none;position:absolute;z-index:0;
  top:6px;bottom:6px;left:6px;
  width:calc((100% - 12px) / 5);
  border-radius:999px;
  transform:translate3d(calc(var(--active-index) * 100%),0,0);
  transition:transform .52s cubic-bezier(.19,1.13,.32,1);
  background:linear-gradient(145deg,rgba(216,218,224,.30),rgba(117,119,128,.21) 60%,rgba(83,85,93,.31)),rgba(59,60,68,.32);
  border:1px solid rgba(230,231,235,.38);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.27),inset 0 -1px 3px rgba(212,212,218,.12),0 3px 9px rgba(0,0,0,.19);
  -webkit-backdrop-filter:blur(15px) saturate(95%);
  backdrop-filter:blur(15px) saturate(95%);
}
.bottom-nav.liquid-nav .nav-btn{
  display:grid;place-items:center;position:relative;z-index:1;
  border-radius:999px;background:transparent;
  color:rgba(255,255,255,.98);
  padding:0;min-height:48px;transition:color .22s,transform .22s;outline-offset:2px;
  -webkit-tap-highlight-color:transparent;
}
.bottom-nav.liquid-nav .nav-btn.active{color:#fff}
.bottom-nav.liquid-nav .nav-btn.active::before{display:none}
.bottom-nav.liquid-nav .nav-btn svg{width:25px;height:25px;stroke-width:1.9}
.bottom-nav.liquid-nav .nav-btn .nav-house-solid{display:none}
.bottom-nav.liquid-nav .nav-btn[data-tab="home"].active .nav-house-outline{display:none}
.bottom-nav.liquid-nav .nav-btn[data-tab="home"].active .nav-house-solid{display:block}
.bottom-nav.liquid-nav .nav-btn:active{transform:scale(.92)}
:root[data-theme="light"] .bottom-nav.liquid-nav{
  border-color:rgba(255,255,255,.92);
  background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(243,244,245,.66));
  box-shadow:inset 0 1.5px 1px rgba(255,255,255,.99),inset 0 -1px 2px rgba(149,152,158,.13),0 11px 24px rgba(56,58,63,.08);
}
:root[data-theme="light"] .bottom-nav.liquid-nav::before{
  background:linear-gradient(110deg,rgba(255,255,255,.99),rgba(184,187,193,.38) 26%,rgba(255,255,255,.97) 57%,rgba(175,178,185,.28) 79%,rgba(255,255,255,.98));opacity:.92;
}
:root[data-theme="light"] .bottom-nav.liquid-nav .nav-selection{
  border-color:rgba(255,255,255,.96);
  background:linear-gradient(140deg,rgba(255,255,255,.74),rgba(222,224,229,.30) 58%,rgba(255,255,255,.58));
  box-shadow:inset 0 1px 2px rgba(255,255,255,.98),0 2px 11px rgba(55,58,63,.10);
}
:root[data-theme="light"] .bottom-nav.liquid-nav .nav-btn,
:root[data-theme="light"] .bottom-nav.liquid-nav .nav-btn.active{color:#12131c}
/* A single integrated full-width expense action between metrics and Today. */
.add-expense-action{
  display:flex;align-items:center;justify-content:center;gap:12px;
  width:100%;min-height:49px;margin:13px 0 0;
  padding:0 18px;border-radius:14px;
  background:var(--accent);color:#fff;
  font-size:13.5px;font-weight:690;letter-spacing:-.05px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 8px 15px -13px rgba(0,0,0,.5);
  transition:transform .18s ease,filter .18s ease;
}
.add-expense-action svg{width:22px;height:22px;stroke-width:2}
.add-expense-action:active{transform:scale(.988)}
.add-expense-action:hover{filter:brightness(1.035)}
@media(prefers-reduced-motion:reduce){.bottom-nav.liquid-nav .nav-selection,.add-expense-action{transition:none}}
