:root{
  --bg:#f4f7f8;--surface:#ffffff;--surface-2:#f8fafb;--surface-3:#edf2f4;
  --text:#102432;--muted:#6d7b85;--line:#dfe7ea;
  --navy:#071b2b;--navy-2:#0d2b40;--teal:#0f9f8f;--teal-2:#2dd4bf;--gold:#f4c95d;
  --green:#168c67;--red:#d84c4c;--orange:#df8b2f;--blue:#3f7fd8;
  --shadow:0 18px 55px rgba(8,28,42,.09);--shadow-sm:0 8px 26px rgba(8,28,42,.07);
  --r:18px;--r-sm:12px;--sidebar:248px;
}
:root[data-theme="dark"]{
  --bg:#07131d;--surface:#0d1d28;--surface-2:#102531;--surface-3:#17313e;
  --text:#eaf3f5;--muted:#94a7b1;--line:#203945;--navy:#06131d;--navy-2:#0b2433;
  --shadow:0 18px 55px rgba(0,0,0,.28);--shadow-sm:0 8px 24px rgba(0,0,0,.2);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}
.boot{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;font-weight:800;font-size:22px}.boot img{width:62px;height:62px}.mono{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.gold{color:#c18a07}.teal{color:var(--teal)}.danger{color:var(--red)}.positive{color:var(--green)}

/* shared */
.btn{border:0;border-radius:12px;padding:11px 16px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s ease;min-height:42px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--teal);color:white;box-shadow:0 10px 24px rgba(15,159,143,.22)}.btn-primary:hover{background:#0b8f81}.btn-dark{background:var(--navy);color:white}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.btn-soft{background:rgba(15,159,143,.1);color:var(--teal);border:1px solid rgba(15,159,143,.12)}.btn-danger{background:rgba(216,76,76,.1);color:var(--red);border:1px solid rgba(216,76,76,.15)}.btn-sm{padding:8px 11px;min-height:34px;border-radius:10px;font-size:13px}.icon-btn{width:40px;height:40px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:12px;display:grid;place-items:center}.icon-btn:hover{background:var(--surface-2)}
.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;background:var(--surface-3);font-size:12px;font-weight:700;color:var(--muted)}.pill.success{background:rgba(22,140,103,.11);color:var(--green)}.pill.warning{background:rgba(223,139,47,.12);color:var(--orange)}.pill.danger{background:rgba(216,76,76,.11);color:var(--red)}.pill.gold{background:rgba(244,201,93,.18);color:#9b710b}.dot{width:7px;height:7px;border-radius:50%;background:currentColor}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm)}.card-pad{padding:20px}.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.section-title h2,.section-title h3{margin:0}.section-title p{margin:6px 0 0;color:var(--muted);font-size:14px}.divider{height:1px;background:var(--line);margin:18px 0}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:750}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:11px;padding:11px 12px;outline:none;transition:.2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(15,159,143,.11)}.field textarea{min-height:88px;resize:vertical}.hint{font-size:12px;color:var(--muted)}
.empty{padding:46px 20px;text-align:center;color:var(--muted)}.empty .empty-icon{width:52px;height:52px;border-radius:16px;background:var(--surface-3);display:grid;place-items:center;margin:0 auto 12px;font-size:23px}.empty h3{margin:0 0 6px;color:var(--text)}

/* landing */
.landing{min-height:100vh;background:linear-gradient(180deg,#071b2b 0,#0a2435 52%,var(--bg) 52%);color:white}.landing-nav{height:76px;max-width:1180px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:-.4px}.brand img{width:38px;height:38px}.brand small{display:block;font-size:10px;letter-spacing:1.8px;color:#9bb0bc;font-weight:700;text-transform:uppercase;margin-top:1px}.landing-links{display:flex;align-items:center;gap:10px}.landing .btn-ghost{color:white;border-color:rgba(255,255,255,.18)}.hero{max-width:1180px;margin:auto;padding:74px 24px 112px;display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}.hero-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);padding:8px 11px;border-radius:999px;font-size:13px;color:#cae7e3}.hero h1{font-size:clamp(43px,6vw,72px);line-height:.98;margin:18px 0 22px;letter-spacing:-3.1px;max-width:760px}.hero h1 span{color:var(--teal-2)}.hero p{font-size:18px;line-height:1.65;color:#b8c7ce;max-width:660px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;color:#9fb2bc;font-size:13px}.hero-trust span{display:flex;gap:7px;align-items:center}.hero-preview{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:12px;transform:rotate(1.5deg);box-shadow:0 40px 90px rgba(0,0,0,.28)}.preview-window{background:#f7fafb;color:#102432;border-radius:20px;padding:18px}.preview-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.preview-top strong{font-size:14px}.preview-dots{display:flex;gap:5px}.preview-dots i{display:block;width:7px;height:7px;border-radius:50%;background:#c9d4d8}.preview-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.preview-metric{background:white;border:1px solid #e5ecef;padding:14px;border-radius:14px}.preview-metric small{color:#7a8a93}.preview-metric b{display:block;font-size:19px;margin-top:8px}.preview-chart{height:130px;margin-top:12px;background:white;border:1px solid #e5ecef;border-radius:14px;padding:14px;display:flex;align-items:flex-end;gap:9px}.preview-chart span{flex:1;background:linear-gradient(180deg,#2dd4bf,#0f9f8f);border-radius:7px 7px 3px 3px}.preview-ai{margin-top:10px;background:#071b2b;color:white;border-radius:14px;padding:14px;display:flex;gap:10px}.preview-ai .spark{width:34px;height:34px;border-radius:10px;background:rgba(244,201,93,.14);display:grid;place-items:center;color:var(--gold)}.preview-ai small{color:#a9bbc3;display:block;margin-top:4px}.landing-body{color:var(--text);max-width:1180px;margin:-20px auto 0;padding:0 24px 80px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature{padding:23px}.feature .ficon{width:44px;height:44px;border-radius:14px;background:rgba(15,159,143,.1);color:var(--teal);display:grid;place-items:center;font-size:20px;margin-bottom:18px}.feature h3{margin:0 0 9px}.feature p{margin:0;color:var(--muted);line-height:1.6;font-size:14px}.landing-section{padding:84px 0 0}.landing-section .eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:12px;font-weight:850;color:var(--teal)}.landing-section h2{font-size:clamp(30px,4vw,44px);letter-spacing:-1.8px;margin:9px 0 12px}.landing-section>p{color:var(--muted);max-width:680px;line-height:1.7}.price-card{margin-top:24px;display:grid;grid-template-columns:1fr auto;align-items:center;padding:28px;background:linear-gradient(135deg,var(--surface),rgba(15,159,143,.07));border:1px solid rgba(15,159,143,.2)}.price{font-size:42px;font-weight:900;letter-spacing:-2px}.price small{font-size:14px;font-weight:650;letter-spacing:0;color:var(--muted)}.landing-footer{margin-top:80px;border-top:1px solid var(--line);padding:30px 0;color:var(--muted);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px}

/* auth */
.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--surface)}.auth-art{background:radial-gradient(circle at 20% 20%,rgba(45,212,191,.18),transparent 36%),radial-gradient(circle at 80% 75%,rgba(244,201,93,.12),transparent 32%),var(--navy);color:white;padding:54px;display:flex;flex-direction:column;justify-content:space-between}.auth-art h2{font-size:42px;line-height:1.08;letter-spacing:-1.8px;max-width:540px;margin:0}.auth-art p{color:#9eb1bb;line-height:1.7;max-width:530px}.auth-quote{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);padding:18px;border-radius:16px;max-width:520px}.auth-main{display:grid;place-items:center;padding:28px}.auth-box{width:min(430px,100%)}.auth-box .brand{margin-bottom:42px}.auth-box h1{font-size:32px;letter-spacing:-1.2px;margin:0 0 7px}.auth-box>p{color:var(--muted);margin:0 0 25px}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-sep{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;margin:5px 0}.auth-sep:before,.auth-sep:after{content:"";height:1px;background:var(--line);flex:1}.google-btn{background:var(--surface);border:1px solid var(--line);color:var(--text);justify-content:center;position:relative;min-height:46px}.google-login-main{width:100%;font-weight:760;font-size:14px;box-shadow:0 8px 22px rgba(2,14,23,.08)}.google-login-main:hover{border-color:#aeb8c1;transform:translateY(-1px)}.google-mark{width:20px;height:20px;display:inline-block;position:relative;margin-right:4px;background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0);border-radius:50%;-webkit-mask:radial-gradient(circle at center,transparent 0 38%,#000 40%);mask:radial-gradient(circle at center,transparent 0 38%,#000 40%)}.google-mark:after{content:"";position:absolute;background:var(--surface);width:9px;height:5px;right:-1px;top:7px}.google-setup-hint{font-size:11px;line-height:1.45;color:var(--muted);margin-top:8px;text-align:center}.auth-sep span{white-space:nowrap}.auth-footer{text-align:center;color:var(--muted);font-size:13px;margin-top:20px}.auth-footer a{color:var(--teal);font-weight:750}

/* app */
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--navy);color:#d5e0e5;padding:19px 14px;display:flex;flex-direction:column;z-index:40}.side-brand{padding:3px 8px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.side-brand .brand small{color:#6f8793}.business-chip{margin:14px 4px 12px;padding:11px 12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);border-radius:12px}.business-chip small{display:block;color:#7f96a1;font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.business-chip strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.nav-scroll{overflow:auto;padding:2px 0;flex:1}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#5f7b88;padding:13px 10px 7px;font-weight:850}.nav-item{width:100%;border:0;background:transparent;color:#9fb2bb;padding:10px 10px;border-radius:10px;display:flex;align-items:center;gap:11px;text-align:left;font-size:13px;font-weight:650;margin:1px 0}.nav-item:hover{background:rgba(255,255,255,.05);color:#fff}.nav-item.active{background:rgba(45,212,191,.12);color:#58e2cf}.nav-icon{width:22px;text-align:center;font-size:15px}.side-bottom{padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.side-user{display:flex;align-items:center;gap:10px;padding:8px}.avatar{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--teal),#3864a6);display:grid;place-items:center;color:white;font-weight:900;overflow:hidden;flex:0 0 auto}.avatar img{width:100%;height:100%;object-fit:cover}.side-user div{min-width:0}.side-user strong,.side-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-user strong{font-size:12px}.side-user small{font-size:10px;color:#758f9b;margin-top:2px}.main{margin-left:var(--sidebar);min-height:100vh}.topbar{height:72px;position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px}.top-title h1{font-size:18px;margin:0;letter-spacing:-.4px}.top-title p{font-size:11px;color:var(--muted);margin:3px 0 0}.top-actions{display:flex;align-items:center;gap:8px}.sync{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px;margin-right:4px}.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(22,140,103,.1)}.mobile-menu{display:none}.content{padding:26px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h2{font-size:28px;letter-spacing:-1.1px;margin:0}.page-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.page-actions{display:flex;gap:8px;flex-wrap:wrap}.privacy .money-value{filter:blur(7px);user-select:none}.money-value{transition:filter .18s ease}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{padding:18px;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;width:80px;height:80px;right:-30px;top:-30px;border-radius:50%;background:rgba(15,159,143,.05)}.metric-top{display:flex;align-items:center;justify-content:space-between}.metric-label{font-size:12px;color:var(--muted);font-weight:700}.metric-icon{width:35px;height:35px;border-radius:11px;background:var(--surface-3);display:grid;place-items:center}.metric-value{font-size:25px;font-weight:900;letter-spacing:-1px;margin:15px 0 6px}.metric-foot{font-size:11px;color:var(--muted)}.metric-foot strong{color:var(--green)}.dashboard-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:14px;margin-top:14px}.chart-card{padding:20px}.bar-chart{height:240px;display:flex;align-items:flex-end;gap:12px;padding:24px 0 3px;position:relative;border-bottom:1px solid var(--line)}.bar-group{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;gap:5px;position:relative}.bar{width:min(18px,38%);border-radius:6px 6px 2px 2px;min-height:2px;transition:.2s}.bar.income{background:var(--teal)}.bar.expense{background:#9db0b9}.bar-label{position:absolute;bottom:-22px;font-size:10px;color:var(--muted);white-space:nowrap}.chart-legend{display:flex;gap:14px;margin-top:30px;font-size:11px;color:var(--muted)}.legend-dot{width:8px;height:8px;border-radius:3px;display:inline-block;margin-right:5px}.donut-wrap{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:18px}.donut{width:125px;height:125px;border-radius:50%;position:relative}.donut:after{content:"";position:absolute;inset:24px;border-radius:50%;background:var(--surface)}.donut-center{position:absolute;inset:0;display:grid;place-content:center;text-align:center;z-index:1;font-weight:900}.donut-center small{font-size:10px;color:var(--muted);font-weight:600}.cat-list{display:flex;flex-direction:column;gap:8px}.cat-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;font-size:12px}.cat-name{display:flex;gap:7px;align-items:center;min-width:0}.cat-color{width:8px;height:8px;border-radius:3px}.cat-name span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.quick{border:1px solid var(--line);background:var(--surface-2);padding:15px;border-radius:13px;text-align:left;color:var(--text)}.quick:hover{border-color:rgba(15,159,143,.4);background:rgba(15,159,143,.05)}.quick b{display:block;font-size:12px;margin-top:9px}.quick small{color:var(--muted);font-size:10px}.ai-card{background:linear-gradient(135deg,var(--navy),#103a47);color:white;border-color:rgba(255,255,255,.05);padding:20px}.ai-card .ai-head{display:flex;align-items:center;justify-content:space-between}.ai-orb{width:40px;height:40px;border-radius:13px;background:rgba(244,201,93,.13);color:var(--gold);display:grid;place-items:center;font-size:20px}.ai-card h3{margin:16px 0 7px}.ai-card p{color:#abc0c9;font-size:13px;line-height:1.6;margin:0}.ai-card .btn{margin-top:16px;background:var(--gold);color:#2d250f}.list{display:flex;flex-direction:column}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.list-main{min-width:0;display:flex;align-items:center;gap:11px}.list-icon{width:38px;height:38px;border-radius:11px;background:var(--surface-3);display:grid;place-items:center;flex:0 0 auto}.list-main b,.list-main small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-main b{font-size:12px}.list-main small{font-size:10px;color:var(--muted);margin-top:4px}.list-side{text-align:right}.list-side b,.list-side small{display:block}.list-side b{font-size:12px}.list-side small{font-size:10px;color:var(--muted);margin-top:4px}

/* tables */
.table-card{overflow:hidden}.table-tools{padding:15px 16px;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search{position:relative;min-width:240px}.search input{width:100%;padding:9px 12px 9px 34px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text);outline:none}.search span{position:absolute;left:11px;top:9px;color:var(--muted)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:var(--muted);padding:11px 16px;background:var(--surface-2);border-bottom:1px solid var(--line)}td{padding:13px 16px;border-bottom:1px solid var(--line);font-size:12px}tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-2)}.td-title{font-weight:750}.td-sub{display:block;color:var(--muted);font-size:10px;margin-top:3px}.amount-income{color:var(--green);font-weight:800}.amount-expense{color:var(--red);font-weight:800}.amount-transfer{color:var(--blue);font-weight:800}.table-action{border:0;background:transparent;color:var(--muted);padding:5px 8px;border-radius:7px}.table-action:hover{background:var(--surface-3);color:var(--text)}

/* accounts/goals */
.account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.account-card{padding:19px;min-height:166px;position:relative;overflow:hidden}.account-card:after{content:"";position:absolute;right:-25px;bottom:-35px;width:110px;height:110px;border-radius:50%;background:rgba(15,159,143,.07)}.account-head{display:flex;justify-content:space-between;align-items:flex-start}.account-logo{width:42px;height:42px;border-radius:13px;background:var(--surface-3);display:grid;place-items:center;font-weight:900}.account-card h3{font-size:14px;margin:15px 0 4px}.account-card small{color:var(--muted)}.account-balance{font-size:23px;font-weight:900;letter-spacing:-.8px;margin-top:12px}.goal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.goal{padding:18px}.goal-head{display:flex;justify-content:space-between;gap:12px}.goal h3{margin:0;font-size:14px}.goal small{color:var(--muted)}.progress{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden;margin:18px 0 8px}.progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--teal-2))}.progress.gold>span{background:linear-gradient(90deg,#d5a524,var(--gold))}.goal-values{display:flex;justify-content:space-between;font-size:11px}.goal-values span:last-child{color:var(--muted)}
.budget-list{display:flex;flex-direction:column;gap:12px}.budget-row{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.budget-top{display:flex;justify-content:space-between;gap:12px}.budget-top b{font-size:13px}.budget-top small{color:var(--muted)}

/* AI page */
.ai-hero{padding:26px;background:radial-gradient(circle at 90% 10%,rgba(244,201,93,.12),transparent 26%),linear-gradient(135deg,var(--navy),#0c3344);color:white;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.ai-hero h2{font-size:30px;margin:0 0 10px;letter-spacing:-1.1px}.ai-hero p{color:#a9bec8;line-height:1.65;max-width:720px;margin:0}.ai-orb-big{width:88px;height:88px;border-radius:28px;background:rgba(45,212,191,.11);border:1px solid rgba(45,212,191,.18);display:grid;place-items:center;font-size:35px;box-shadow:0 0 60px rgba(45,212,191,.12)}.insight-box{white-space:pre-wrap;line-height:1.72;font-size:14px}.consent{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.switch{position:relative;width:46px;height:26px;border-radius:999px;background:#b8c3c8;border:0;padding:0;transition:.2s}.switch:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:white;transition:.2s;box-shadow:0 2px 6px rgba(0,0,0,.2)}.switch.on{background:var(--teal)}.switch.on:after{transform:translateX(20px)}

/* integrations/settings */
.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.integration{padding:19px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}.integration-icon{width:44px;height:44px;border-radius:14px;background:var(--surface-3);display:grid;place-items:center;font-size:20px}.integration h3{font-size:13px;margin:0}.integration p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.45}.settings-grid{display:grid;grid-template-columns:240px 1fr;gap:14px}.settings-nav{padding:9px;height:max-content}.settings-tab{display:block;width:100%;text-align:left;padding:10px 11px;border:0;background:transparent;color:var(--muted);border-radius:9px;font-weight:700;font-size:12px}.settings-tab.active{background:var(--surface-3);color:var(--text)}

/* modal/toast */
.modal-backdrop{position:fixed;inset:0;background:rgba(4,14,21,.64);backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;padding:20px;animation:fade .16s ease}.modal{width:min(620px,100%);max-height:min(760px,92vh);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.32);animation:pop .18s ease}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 0}.modal-head h3{margin:0}.modal-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.modal-body{padding:20px}.modal-foot{padding:0 20px 20px;display:flex;justify-content:flex-end;gap:8px}.close-modal{border:0;background:var(--surface-3);color:var(--muted);width:34px;height:34px;border-radius:10px}.toast{position:fixed;right:18px;bottom:18px;z-index:200;background:var(--navy);color:white;padding:13px 15px;border-radius:13px;box-shadow:var(--shadow);display:flex;gap:10px;align-items:center;max-width:360px;animation:slide .2s ease;font-size:13px}.toast.error{background:#7e2929}.toast.success{background:#0d6950}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes pop{from{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:none}}@keyframes slide{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* onboarding */
.onboard{min-height:100vh;background:radial-gradient(circle at 80% 10%,rgba(45,212,191,.12),transparent 26%),var(--bg);display:grid;place-items:center;padding:30px}.onboard-box{width:min(760px,100%)}.onboard-top{text-align:center;margin-bottom:24px}.onboard-top img{width:56px}.onboard-top h1{font-size:31px;letter-spacing:-1.2px;margin:13px 0 7px}.onboard-top p{color:var(--muted);margin:0}.onboard-card{padding:25px}.steps{display:flex;gap:8px;margin-bottom:22px}.steps i{height:5px;flex:1;border-radius:999px;background:var(--surface-3)}.steps i.active{background:var(--teal)}

/* mobile */
@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.account-grid,.goal-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;padding-top:48px}.hero-preview{max-width:650px}.landing{background:linear-gradient(180deg,#071b2b 0,#0a2435 64%,var(--bg) 64%)}}
@media(max-width:820px){:root{--sidebar:0px}.sidebar{transform:translateX(-100%);width:250px;transition:.2s}.sidebar.open{transform:translateX(0);box-shadow:0 0 0 999px rgba(0,0,0,.45)}.main{margin-left:0}.mobile-menu{display:grid}.topbar{padding:0 14px}.top-title p,.sync{display:none}.content{padding:16px}.dashboard-grid,.two-col,.settings-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.integration-grid{grid-template-columns:1fr}.landing-links a:not(.btn){display:none}.price-card{grid-template-columns:1fr;gap:20px}.donut-wrap{grid-template-columns:120px 1fr}}
@media(max-width:580px){.grid-4,.account-grid,.goal-grid,.feature-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.page-head{flex-direction:column}.page-actions{width:100%}.page-actions .btn{flex:1}.hero{padding:38px 18px 80px}.landing-nav,.landing-body{padding-left:18px;padding-right:18px}.hero h1{font-size:45px}.hero-preview{transform:none}.quick-grid{grid-template-columns:repeat(2,1fr)}.ai-hero{grid-template-columns:1fr}.ai-orb-big{display:none}.top-actions .btn-label{display:none}.search{min-width:100%;width:100%}.modal-backdrop{padding:10px}.modal{border-radius:16px}.landing-section{padding-top:58px}}

@media print{.sidebar,.topbar,.page-actions,.no-print,#toast-root,#modal-root{display:none!important}.main{margin:0}.content{padding:0}.card{box-shadow:none}.print-only{display:block!important}body{background:white;color:#111}.money-value{filter:none!important}}
