.ai-page{display:grid;gap:14px}.ai-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;background:radial-gradient(circle at 80% 0,rgba(119,92,255,.28),transparent 42%),linear-gradient(145deg,#1e2a49f5,#0e1425fa)}.ai-hero-copy{max-width:760px}.ai-hero h2{margin:13px 0 10px;font-size:clamp(26px,4vw,40px)}.ai-hero p{color:#a2aec4;line-height:1.65}.ai-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(133,111,255,.38);border-radius:999px;color:#c2b8ff;background:#6951de24;font-size:12px;font-weight:750}.ai-model{display:flex;align-items:center;gap:10px;margin-top:20px;color:#9fb0ff}.ai-model div{min-width:0}.ai-model strong,.ai-model span{display:block}.ai-model strong{overflow:hidden;text-overflow:ellipsis;font-size:13px}.ai-model span{margin-top:4px;color:#7f8da8;font-size:11px}.ai-actions{display:grid;gap:9px;flex:0 0 auto}.ai-run{min-width:230px}.ai-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.ai-metrics article{display:grid;gap:5px;padding:18px}.ai-metrics span,.ai-metrics small{color:#8390a8}.ai-metrics span{font-size:12px;font-weight:700}.ai-metrics strong{font-size:27px}.ai-metrics small{font-size:10px}.ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.insight-list{display:grid;gap:12px}.insight-list div{display:flex;align-items:flex-start;gap:10px;padding:13px;border-radius:12px;color:#c8d0df;background:#111a2d;line-height:1.45}.insight-list svg{flex:0 0 auto;margin-top:2px;color:#9c87ff}.ai-status{margin-bottom:16px;color:#dce3f1}.privacy-box,.ai-error{display:flex;gap:10px;padding:14px;border-radius:12px;font-size:12px;line-height:1.5}.privacy-box{border:1px solid rgba(62,197,137,.25);color:#9fb5ad;background:#23825b17}.privacy-box svg{flex:0 0 auto;color:#57d99c}.ai-error{align-items:center;margin-bottom:12px;border:1px solid rgba(244,172,71,.32);color:#e8c99a;background:#965b191f}.ai-error button{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:inherit}.ai-results{max-width:none}.ai-results-header{align-items:flex-end;gap:18px}.ai-filter{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:#7f8da8}.ai-filter button{padding:6px 9px;border:1px solid #29354d;border-radius:999px;color:#8996ad;font-size:10px}.ai-filter button.active{border-color:#7e67ffa6;color:#c8beff;background:#6f55e629}.ai-result-list{display:grid;gap:10px}.ai-result{display:grid;grid-template-columns:minmax(150px,1fr) minmax(165px,.85fr) auto minmax(210px,1.35fr) auto;align-items:center;gap:14px;padding:15px;border:1px solid #263149;border-radius:14px;background:#0c1220b3}.ai-result.review-required{border-color:#f4ac4759}.ai-result-main strong,.ai-result-main span,.ai-prediction b,.ai-prediction span{display:block}.ai-result-main span,.ai-prediction span,.ai-waiting{margin-top:4px;color:#7f8da8;font-size:11px}.ai-prediction b{color:#aebcff}.ai-prediction em{display:inline-block;margin-top:6px;color:#71809b;font-size:9px;font-style:normal;text-transform:uppercase;letter-spacing:.08em}.ai-scores{display:grid;gap:5px;color:#91a0bb;font-size:11px}.ai-scores .warning{color:#f0b96c}.ai-explanation p{margin:0;color:#9ca8bd;font-size:11px;line-height:1.45}.ai-alternatives{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;color:#71809a;font-size:9px}.ai-alternatives span{padding:3px 6px;border-radius:999px;background:#151f34}.ai-decision{display:grid;justify-items:end;gap:8px}.ai-result .secondary{padding:8px 10px;font-size:11px;white-space:nowrap}.review-badge,.trusted-badge{padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.review-badge{color:#eec185;background:#a0631c29}.trusted-badge{color:#76dca8;background:#28956424}.ai-empty{padding:26px;text-align:center;color:#7f8da8}.spin{animation:ai-spin .9s linear infinite}@keyframes ai-spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.ai-metrics{grid-template-columns:repeat(3,1fr)}.ai-result{grid-template-columns:1fr 1fr}.ai-explanation{grid-column:1 / -1}.ai-decision{justify-items:start}}@media(max-width:760px){nav{grid-template-columns:repeat(5,1fr)}.ai-hero{display:grid;padding:22px}.ai-actions,.ai-run{width:100%}.ai-metrics{grid-template-columns:1fr 1fr}.ai-grid{grid-template-columns:1fr}.ai-results-header{align-items:flex-start}.ai-result{grid-template-columns:1fr}.ai-explanation{grid-column:auto}.ai-decision{justify-items:stretch}.ai-decision .secondary{justify-content:center}}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e8edf8;background:#080c18;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 75% -20%,#24335f 0,transparent 36%),#080c18}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;border-right:1px solid #1d263d;background:#080c18e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand-mark,.account-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#5d7cff,#875cff)}.brand strong{display:block;font-size:15px}.brand span,.privacy-note span,.account-row span,.goal-item span,.transaction-row span,.big-goal>span{display:block;color:#8995ad;font-size:12px;margin-top:3px}nav{display:grid;gap:6px}nav button{display:flex;gap:11px;align-items:center;width:100%;border:0;border-radius:12px;padding:11px 14px;color:#9ca9c1;background:transparent;text-align:left}nav button:hover,nav button.active{color:#fff;background:#151d31}.privacy-note{margin-top:auto;padding:16px;border-radius:14px;background:#10182b;border:1px solid #1d2943}main{padding:32px clamp(20px,4vw,56px) 64px;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:16px}h1,h2,p{margin:0}h1{font-size:clamp(28px,4vw,40px);letter-spacing:-.04em}h2{font-size:20px;letter-spacing:-.02em}.eyebrow{color:#7f8da9;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:750;margin-bottom:7px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:11px 16px;font-weight:700}.primary{color:#fff;background:linear-gradient(135deg,#5878ff,#825cff);box-shadow:0 12px 34px #5c67ff42}.secondary{color:#d8dfef;background:#1c263d}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.stat-card,.panel{border:1px solid #202a40;background:linear-gradient(160deg,#192237eb,#0d1322f5);box-shadow:0 18px 50px #00000029}.stat-card{border-radius:17px;padding:20px}.stat-card>span{color:#8d99b1;font-size:13px}.stat-card strong{display:block;margin:12px 0 10px;font-size:25px;letter-spacing:-.03em}.stat-card small{display:flex;align-items:center;gap:5px;color:#5fe0a0}.stat-card small.negative{color:#ff8b96}.stat-card.highlight{background:linear-gradient(135deg,#4654b46b,#351f6e80)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:14px;margin-bottom:14px}.dashboard-grid.lower{grid-template-columns:1fr 1fr}.panel{border-radius:18px;padding:22px}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:7px 10px;background:#202a43;color:#aeb9cf;font-size:11px;white-space:nowrap}.chart{color:#718bff}.recharts-cartesian-grid line{stroke:#263149}.recharts-text{fill:#77849e;font-size:11px}.donut-layout{display:grid;align-items:center}.category-list{display:grid;gap:9px}.category-list div{display:flex;justify-content:space-between;color:#99a5bb;font-size:12px}.category-list span{display:flex;align-items:center;gap:7px}.category-list strong{color:#e8edf8}.category-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.account-list,.goal-list,.transaction-list{display:grid}.account-row,.transaction-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #222c43}.account-row:last-child,.transaction-row:last-child{border-bottom:0}.account-row .account-icon{width:37px;height:37px;border-radius:11px;background:#212c46;color:#95aaff}.goal-item{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 0}.progress{grid-column:1 / -1;height:7px;overflow:hidden;border-radius:999px;background:#222c43}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5b7cff,#8a62ff)}.progress.large{height:10px;margin:18px 0 12px}.table-panel{max-width:1100px}.transaction-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px}.transaction-icon.income{color:#55dc9b;background:#29a46f21}.transaction-icon.expense{color:#ff8795;background:#c63f5321}.positive-text{color:#58dfa0}.negative-text{color:#ff8a96}.goal-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;max-width:1200px}.big-goal{min-height:280px;display:flex;flex-direction:column;align-items:flex-start}.big-goal>strong{display:block;margin-top:24px;font-size:34px}.goal-hero-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:24px;border-radius:14px;color:#a8b6ff;background:#222e4e}.data-action{margin-top:auto}.danger-card{border-color:#ff75844d}.status-message{margin-top:16px;padding:12px 14px;border-radius:12px;font-size:13px}.success-message{color:#7ce7ad;background:#2a9c6724}.error-message{color:#ff9ba5;background:#be3b4e29}.fatal-error{display:grid;place-items:center;min-height:100vh;padding:24px}.fatal-error .panel{max-width:650px}.fatal-error p:not(.eyebrow){margin:18px 0;color:#aab5ca;line-height:1.6}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10041;display:grid;place-items:center;padding:18px;background:#02050dbf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{width:min(100%,470px);max-height:92vh;overflow-y:auto;padding:24px;border:1px solid #2b3650;border-radius:20px;color:#e8edf8;background:#11182a;box-shadow:0 30px 90px #0009}.modal label{display:grid;gap:7px;margin:14px 0;color:#aeb9cf;font-size:12px;font-weight:650}.modal input,.modal select{width:100%;border:1px solid #2a354f;border-radius:11px;padding:11px 12px;color:#eef2fb;background:#0c1221;outline:none}.modal input:focus,.modal select:focus{border-color:#667fff}.modal .checkbox{display:flex;align-items:center}.modal .checkbox input{width:auto}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:12px;background:#0b1120}.segmented button{border:0;border-radius:9px;padding:9px;color:#8995ad;background:transparent}.segmented button.active{color:#fff;background:#222d46}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.vault-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.vault-card{width:min(100%,580px)}.vault-card>.muted{margin-top:16px;line-height:1.65;color:#aab5ca}.vault-form{display:grid;gap:14px;margin-top:24px}.vault-form label{display:grid;gap:7px;color:#aeb9cf;font-size:12px;font-weight:650}.vault-form input{width:100%;border:1px solid #2a354f;border-radius:11px;padding:12px;color:#eef2fb;background:#0c1221;outline:none}.vault-form input:focus{border-color:#667fff}.vault-warning{margin-top:22px;padding:14px;border-radius:12px;color:#ffccd1;background:#be3b4e1f;line-height:1.5;font-size:13px}.vault-lock-button{position:fixed;z-index:10042;right:18px;bottom:18px;display:inline-flex;align-items:center;gap:7px;border:1px solid #2b3650;border-radius:999px;padding:10px 14px;color:#dbe3f4;background:#0c1221eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.dashboard-grid.lower{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:10;left:0;right:0;bottom:0;top:auto;height:auto;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #202a40;border-right:0;overflow-x:auto}.brand,.privacy-note{display:none}nav{display:flex;min-width:max-content}nav button{width:58px;justify-content:center;padding:10px;font-size:0}main{padding:22px 15px 95px}.topbar{align-items:flex-start;flex-wrap:wrap}.topbar .primary{width:100%;justify-content:center}.primary{padding:11px 13px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:15px}.stat-card strong{font-size:20px}.transaction-row{grid-template-columns:auto 1fr auto}.transaction-row .pill{display:none}.vault-lock-button{bottom:78px}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}h1{font-size:28px}}.assistant-page,.ai-page{display:grid;gap:14px}.assistant-hero,.ai-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.assistant-hero p,.ai-hero p,.muted{color:#8995ad;line-height:1.55;margin-top:8px}.assistant-grid,.ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.assistant-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:18px;padding:5px;border-radius:13px;background:#0b1120}.assistant-modes button{display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:9px;padding:10px;color:#8995ad;background:transparent}.assistant-modes button.active{color:#fff;background:#222d46}.assistant-page label{display:grid;gap:8px;color:#aeb9cf;font-size:12px;font-weight:650}.assistant-page textarea{width:100%;resize:vertical;border:1px solid #2a354f;border-radius:12px;padding:12px;color:#eef2fb;background:#0c1221;outline:none;margin-bottom:14px}.assistant-page textarea:focus{border-color:#667fff}.ai-model{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #293650;border-radius:13px;background:#10182b;min-width:260px}.ai-model span{display:block;color:#8995ad;font-size:11px;margin-top:4px}.learning-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.learning-stats div{padding:15px;border-radius:13px;background:#10182b;text-align:center}.learning-stats strong{display:block;font-size:25px}.learning-stats span{color:#8995ad;font-size:11px}.smart-briefing-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.smart-briefing-item{display:flex;align-items:flex-start;gap:11px;padding:14px;border:1px solid #293650;border-radius:14px;background:#10182b}.smart-briefing-item svg{flex:0 0 auto;margin-top:2px}.smart-briefing-item strong{display:block}.smart-briefing-item p{margin:5px 0 0;color:#9da9bf;font-size:13px;line-height:1.45}.smart-briefing-item.attention{border-color:#6b4828}.smart-briefing-item.attention svg{color:#f3b35b}.smart-briefing-item.positive{border-color:#285b4e}.smart-briefing-item.positive svg{color:#65d6ad}.smart-briefing-item.neutral svg{color:#8ca4ff}.assistant-answer{min-height:220px}.answer-text{white-space:pre-wrap;line-height:1.7;color:#dbe3f3}.ai-badge{display:inline-flex;align-items:center;gap:6px;color:#a8b6ff}.ai-result-list,.insight-list{display:grid;gap:10px}.ai-result{display:grid;grid-template-columns:minmax(170px,1fr) minmax(150px,.8fr) auto minmax(170px,1.2fr) auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #222c43}.ai-result-main span,.ai-prediction span,.ai-waiting{display:block;color:#8995ad;font-size:12px;margin-top:4px}.ai-scores{display:grid;gap:4px;color:#aeb9cf;font-size:11px}.ai-result p{color:#9da9bf;font-size:12px;line-height:1.45}.insight-list div,.privacy-box{display:flex;align-items:flex-start;gap:9px;color:#aeb9cf;line-height:1.45}.privacy-box{padding:13px;border-radius:12px;background:#10182b}.ai-status{color:#dbe3f3;margin-bottom:14px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.assistant-grid,.ai-grid{grid-template-columns:1fr}.assistant-hero,.ai-hero{align-items:flex-start;flex-direction:column}.ai-model{width:100%}.ai-result{grid-template-columns:auto 1fr}.ai-result>p,.ai-result>.secondary,.ai-scores{grid-column:2}}@media(max-width:760px){nav{grid-template-columns:repeat(6,1fr)!important}.assistant-modes{grid-template-columns:repeat(3,1fr);position:sticky;top:0;z-index:2}.learning-stats{grid-template-columns:repeat(3,minmax(0,1fr));overflow-x:auto}.learning-stats div{min-width:92px;padding:12px 8px}.learning-stats strong{font-size:21px}.smart-briefing-list{grid-template-columns:1fr}.smart-briefing-item{min-height:76px}.assistant-page .panel{padding:16px}.assistant-page textarea{min-height:120px}.assistant-page .primary{width:100%}}.row-actions{display:inline-flex;gap:6px}.row-actions button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #2a354f;border-radius:9px;color:#aab6cc;background:#151d30}.row-actions button:hover{color:#fff;border-color:#536baf}.row-actions button:last-child:hover{color:#ff9ba5;border-color:#ff75848c}.undo-toast{position:fixed;z-index:10040;right:24px;bottom:24px;display:flex;align-items:center;gap:16px;max-width:min(440px,calc(100vw - 32px));padding:13px 15px;border:1px solid #33405e;border-radius:14px;color:#e8edf8;background:#141d31;box-shadow:0 20px 60px #0008}.undo-toast button{display:inline-flex;align-items:center;gap:7px;border:0;color:#aebdff;background:transparent;font-weight:750}.security-form-panel{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr);gap:24px;margin-bottom:14px;max-width:1200px}.security-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.security-fields label,.backup-password-panel label{display:grid;gap:7px;color:#aeb9cf;font-size:12px;font-weight:650}.security-fields input,.backup-password-panel input{width:100%;border:1px solid #2a354f;border-radius:11px;padding:11px 12px;color:#eef2fb;background:#0c1221;outline:none}.security-fields input:focus,.backup-password-panel input:focus{border-color:#667fff}.security-fields button{min-height:43px}@media(max-width:900px){.security-form-panel{grid-template-columns:1fr}}@media(max-width:760px){.row-actions{grid-column:2 / -1;justify-self:end}.undo-toast{right:16px;bottom:88px;left:16px}.security-fields{grid-template-columns:1fr}}.connections-page{display:grid;gap:14px;max-width:1200px}.connector-config{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:14px}.connector-config label{display:grid;gap:7px;color:#aeb9cf;font-size:12px;font-weight:650}.connector-config input{width:100%;border:1px solid #2a354f;border-radius:11px;padding:12px;color:#eef2fb;background:#0c1221;outline:none}.connector-config input:focus{border-color:#667fff}.connector-config .muted{grid-column:1 / -1;color:#8995ad;font-size:13px;line-height:1.5}.connector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.connector-card{min-height:270px;display:flex;flex-direction:column;align-items:flex-start}.connector-card>span{color:#8995ad;line-height:1.55;font-size:13px}.sync-preview .muted,.statement-import .muted{margin:14px 0 18px;color:#8995ad;line-height:1.55}.stats-grid.compact{margin-bottom:0}.statement-import{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px}.file-button{cursor:pointer;white-space:nowrap}.file-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.rollback-button{justify-self:start}@media(max-width:980px){.connector-grid{grid-template-columns:1fr}}@media(max-width:680px){.connector-config,.statement-import{grid-template-columns:1fr}.connector-config .muted{grid-column:auto}.file-button{justify-self:start}}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px)}html{min-height:100%;background:#080c18;overscroll-behavior-y:none;text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{min-height:100dvh;margin:0;padding-left:var(--safe-left);padding-right:var(--safe-right);padding-bottom:var(--safe-bottom);touch-action:manipulation}button,input,select,textarea,a{touch-action:manipulation}button,[role=button],input,select{min-height:44px}input,select,textarea{font-size:max(16px,1rem)}.mobile-runtime{position:fixed;z-index:10000;inset:var(--safe-top) var(--safe-right) auto var(--safe-left);pointer-events:none}.mobile-runtime__banner{width:100%;box-sizing:border-box;padding:.7rem 1rem;color:#f8fafc;background:#7f1d1df5;box-shadow:0 8px 24px #00000040;font-size:.9rem;text-align:center;pointer-events:auto}.mobile-runtime__banner--action{display:flex;align-items:center;justify-content:center;gap:.75rem;background:#0f172af7}.mobile-runtime__banner button,.mobile-install-card button{border:0;border-radius:.75rem;padding:.65rem .9rem;font:inherit;font-weight:700;cursor:pointer}.mobile-runtime__banner button,.mobile-install-card__actions>button:last-child{color:#07111f;background:#7dd3fc}.mobile-install-card{position:fixed;left:max(1rem,var(--safe-left));right:max(1rem,var(--safe-right));bottom:max(1rem,calc(var(--safe-bottom) + .5rem));display:grid;gap:1rem;max-width:34rem;margin-inline:auto;padding:1rem;color:#e2e8f0;background:#0f172afa;border:1px solid rgba(148,163,184,.35);border-radius:1rem;box-shadow:0 20px 50px #00000073;pointer-events:auto}.mobile-install-card p{margin:.35rem 0 0;color:#cbd5e1;line-height:1.45}.mobile-install-card__actions{display:flex;justify-content:flex-end;gap:.6rem}.mobile-install-card__secondary{color:#e2e8f0;background:transparent;border:1px solid rgba(148,163,184,.45)!important}.mobile-standalone body{padding-top:var(--safe-top);user-select:none;-webkit-user-select:none}.mobile-standalone input,.mobile-standalone textarea{user-select:text;-webkit-user-select:text}.mobile-privacy-shielded body>*{visibility:hidden!important}.mobile-privacy-shielded body:before{content:"Finance Planner ist gesperrt";position:fixed;z-index:2147483647;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;visibility:visible;padding:2rem;color:#e2e8f0;background:#080c18;font-weight:700;text-align:center}@media(max-width:720px){body{overflow-x:hidden}.mobile-runtime__banner--action{justify-content:space-between;text-align:left}.mobile-install-card__actions{display:grid;grid-template-columns:1fr 1fr}}@media(display-mode:standalone){body{min-height:100dvh}}.mobile-connectivity-status{position:fixed;z-index:10001;top:max(.75rem,calc(env(safe-area-inset-top,0px) + .5rem));left:max(.75rem,env(safe-area-inset-left,0px));right:max(.75rem,env(safe-area-inset-right,0px));display:flex;align-items:center;justify-content:center;gap:.75rem;max-width:44rem;margin-inline:auto;padding:.75rem 1rem;color:#f8fafc;background:#78350ff7;border:1px solid rgba(251,191,36,.55);border-radius:.9rem;box-shadow:0 12px 32px #00000059;font-size:.9rem}.mobile-connectivity-status button{min-height:44px;flex:0 0 auto;border:0;border-radius:.7rem;padding:.6rem .85rem;color:#1c1917;background:#fde68a;font:inherit;font-weight:700;cursor:pointer}.mobile-connectivity-status button:disabled{cursor:wait;opacity:.7}@media(max-width:640px){.mobile-connectivity-status{align-items:stretch;flex-direction:column}.mobile-connectivity-status button{width:100%}}:root{--mobile-safe-top: env(safe-area-inset-top, 0px);--mobile-safe-right: env(safe-area-inset-right, 0px);--mobile-safe-bottom: env(safe-area-inset-bottom, 0px);--mobile-safe-left: env(safe-area-inset-left, 0px)}html,body,#root{min-height:100%}body{padding-left:var(--mobile-safe-left);padding-right:var(--mobile-safe-right);padding-bottom:var(--mobile-safe-bottom);overscroll-behavior-y:contain}button,[role=button],a[href],input,select,textarea{touch-action:manipulation}button,[role=button]{min-width:44px;min-height:44px}:focus-visible{outline:3px solid currentColor;outline-offset:3px}.mobile-pull-indicator{position:fixed;z-index:10020;top:calc(var(--mobile-safe-top) + .5rem);left:50%;display:flex;align-items:center;gap:.45rem;min-height:44px;padding:.55rem .85rem;border:1px solid rgba(148,163,184,.45);border-radius:999px;background:#0f172af0;color:#f8fafc;box-shadow:0 10px 28px #00000047;font-size:.875rem;font-weight:700;pointer-events:none;transform:translate(-50%,-100%);transition:transform .12s ease-out}.mobile-pull-indicator__spinner{display:inline-block;animation:mobile-spin .7s linear infinite}.mobile-boot-skeleton{position:fixed;z-index:10015;top:0;right:0;bottom:0;left:0;padding:calc(var(--mobile-safe-top) + 1rem) calc(var(--mobile-safe-right) + 1rem) calc(var(--mobile-safe-bottom) + 1rem) calc(var(--mobile-safe-left) + 1rem);background:Canvas;color:CanvasText;pointer-events:none;opacity:1;animation:mobile-skeleton-exit .18s ease-out .36s forwards}.mobile-boot-skeleton__bar,.mobile-boot-skeleton__card{border-radius:.8rem;background:linear-gradient(90deg,color-mix(in srgb,CanvasText 8%,Canvas),color-mix(in srgb,CanvasText 14%,Canvas),color-mix(in srgb,CanvasText 8%,Canvas));background-size:200% 100%;animation:mobile-shimmer 1.2s linear infinite}.mobile-boot-skeleton__bar{width:55%;height:2.4rem;margin-bottom:1.25rem}.mobile-boot-skeleton__card{width:100%;height:8rem;margin-bottom:1rem}.mobile-boot-skeleton__card--short{height:5rem}@keyframes mobile-spin{to{transform:rotate(360deg)}}@keyframes mobile-shimmer{to{background-position:-200% 0}}@keyframes mobile-skeleton-exit{to{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.mobile-pull-indicator,.mobile-pull-indicator__spinner,.mobile-boot-skeleton,.mobile-boot-skeleton__bar,.mobile-boot-skeleton__card{animation:none;transition:none}}@media(min-width:769px)and (pointer:fine){.mobile-boot-skeleton{display:none}}:root{--mobile-keyboard-height: 0px;--mobile-nav-height: 72px}.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}.mobile-bottom-nav,.mobile-sheet-backdrop{display:none}@media(max-width:768px){body{padding-bottom:calc(var(--mobile-nav-height) + var(--safe-bottom) + var(--mobile-keyboard-height))}.app-shell,main,.panel,.table-panel,.transaction-list,.dashboard-grid,.stats-grid{min-width:0;max-width:100%}main{overflow-x:clip}.sidebar{display:none!important}.topbar{position:sticky;z-index:20;top:var(--safe-top);gap:.75rem;padding-top:max(.75rem,var(--safe-top));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar h1{font-size:clamp(1.35rem,7vw,2rem)}.topbar .primary{flex:0 0 auto;min-width:48px;padding-inline:.8rem}.mobile-bottom-nav{position:fixed;z-index:10010;right:var(--safe-right);bottom:0;left:var(--safe-left);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:calc(var(--mobile-nav-height) + var(--safe-bottom));padding:.45rem .35rem calc(.45rem + var(--safe-bottom));border-top:1px solid rgba(148,163,184,.25);background:color-mix(in srgb,Canvas 92%,transparent);box-shadow:0 -12px 30px #00000040;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.mobile-bottom-nav button{display:grid;place-items:center;align-content:center;gap:.2rem;min-width:0;min-height:54px;padding:.25rem;border:0;border-radius:.8rem;color:color-mix(in srgb,CanvasText 65%,transparent);background:transparent;font:inherit}.mobile-bottom-nav button span{width:100%;overflow:hidden;font-size:.68rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.mobile-bottom-nav button.active{color:CanvasText;background:color-mix(in srgb,CanvasText 10%,transparent)}.mobile-sheet-backdrop{position:fixed;z-index:10030;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:1rem max(.75rem,var(--safe-right)) calc(var(--mobile-nav-height) + var(--safe-bottom) + .5rem) max(.75rem,var(--safe-left));background:#0206178c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-bottom-sheet{width:min(100%,34rem);max-height:min(75dvh,36rem);overflow:auto;overscroll-behavior:contain;padding:.6rem 1rem calc(1rem + var(--safe-bottom));border:1px solid rgba(148,163,184,.28);border-radius:1.35rem;background:Canvas;color:CanvasText;box-shadow:0 24px 70px #00000073;animation:mobile-sheet-in .18s ease-out}.mobile-bottom-sheet__handle{width:3rem;height:.3rem;margin:0 auto .75rem;border-radius:999px;background:color-mix(in srgb,CanvasText 25%,transparent)}.mobile-bottom-sheet h2{margin:0 0 1rem;font-size:1.15rem}.mobile-bottom-sheet__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.mobile-bottom-sheet__grid button{display:flex;align-items:center;gap:.7rem;min-height:58px;padding:.85rem;border:1px solid color-mix(in srgb,CanvasText 14%,transparent);border-radius:1rem;background:color-mix(in srgb,CanvasText 6%,Canvas);color:inherit;font:inherit;font-weight:700;text-align:left}.transaction-row{content-visibility:auto;contain-intrinsic-size:72px}.chart,.recharts-responsive-container{max-width:100%;overflow:hidden}.modal{max-height:calc(100dvh - var(--safe-top) - var(--mobile-keyboard-height) - 1rem);overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:calc(var(--mobile-keyboard-height) + 2rem)}input:focus,textarea:focus,select:focus{scroll-margin-block:7rem}}@media(max-width:390px){.mobile-bottom-nav button span{font-size:.61rem}.mobile-bottom-sheet__grid,.stats-grid,.goal-card-grid{grid-template-columns:1fr}}@media(orientation:landscape)and (max-height:520px){:root{--mobile-nav-height: 58px}.mobile-bottom-nav{padding-top:.2rem}.mobile-bottom-nav button{min-height:44px}.mobile-bottom-nav button span{display:none}.mobile-bottom-sheet{max-height:70dvh}}@media(min-width:600px)and (max-width:900px)and (horizontal-viewport-segments:2){.dashboard-grid,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes mobile-sheet-in{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.mobile-bottom-sheet{animation:none}}@media(prefers-contrast:more){.mobile-bottom-nav,.mobile-bottom-sheet,.mobile-bottom-sheet__grid button{border-width:2px}}.skip-link{position:fixed;top:max(.75rem,env(safe-area-inset-top));left:max(.75rem,env(safe-area-inset-left));z-index:10000;transform:translateY(-180%);padding:.75rem 1rem;border-radius:.75rem;background:Canvas;color:CanvasText;box-shadow:0 .5rem 2rem #0000003d;font-weight:700;text-decoration:none;transition:transform .14s ease}.skip-link:focus{transform:translateY(0);outline:3px solid Highlight;outline-offset:3px}:focus-visible{outline:3px solid Highlight;outline-offset:3px}main:focus{outline:none}button,a,input,select,textarea{touch-action:manipulation}@media(pointer:coarse){button,a,input,select{min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(forced-colors:active){.active,.primary,.pill,.mobile-bottom-nav button{border:1px solid ButtonText}}html{min-width:320px;text-size-adjust:100%;-webkit-text-size-adjust:100%;overscroll-behavior-y:none}body,.app-shell{min-height:100vh;min-height:100dvh}main{min-width:0;padding-bottom:max(2rem,env(safe-area-inset-bottom))}.panel,.stat-card,.big-goal{min-width:0}.transaction-row,.account-row,.goal-item{contain:layout paint}.transaction-list,.account-list,.goal-list{content-visibility:auto;contain-intrinsic-size:auto 480px}.modal-backdrop{padding-top:max(1rem,env(safe-area-inset-top));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom));padding-left:max(1rem,env(safe-area-inset-left))}.modal{max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;scroll-padding-bottom:7rem}.modal input,.modal select,.modal textarea{font-size:max(1rem,16px)}.recharts-responsive-container[role=img]:focus-visible{outline:3px solid Highlight;outline-offset:4px}@media(max-width:720px){.topbar{align-items:flex-start;gap:.75rem}.topbar .primary{width:100%;justify-content:center}.transaction-row{grid-template-columns:auto minmax(0,1fr) auto}.transaction-row>b{grid-column:2 / 4;justify-self:start}.transaction-row .pill{grid-column:2 / 4;justify-self:start}.row-actions{grid-column:3;grid-row:1 / span 2;align-self:center}.modal-actions{position:sticky;bottom:0;margin:1rem -1rem -1rem;padding:1rem;background:inherit;border-top:1px solid color-mix(in srgb,currentColor 14%,transparent)}}@media(max-width:420px){.stats-grid,.dashboard-grid,.goal-card-grid{grid-template-columns:minmax(0,1fr)}.panel,.stat-card,.big-goal{border-radius:1rem}}.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:max(1.25rem,var(--safe-top)) max(1rem,var(--safe-right)) max(1.25rem,var(--safe-bottom)) max(1rem,var(--safe-left));background:#080c18}.auth-card{width:min(100%,30rem);display:grid;gap:1rem}.auth-card h1,.auth-card p{margin-block:0}.auth-card label{display:grid;gap:.45rem}.auth-google{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;border:1px solid rgba(148,163,184,.45);border-radius:.8rem;color:#e2e8f0;background:#111827;font:inherit;font-weight:700}.auth-divider{display:flex;align-items:center;gap:.8rem;color:#94a3b8}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#94a3b84d}.passkey-enrolment{position:fixed;z-index:9999;left:max(1rem,var(--safe-left));right:max(1rem,var(--safe-right));bottom:max(1rem,var(--safe-bottom));display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:42rem;margin-inline:auto;padding:1rem;border:1px solid rgba(125,211,252,.4);border-radius:1rem;color:#e2e8f0;background:#0f172afa;box-shadow:0 20px 50px #00000073}.passkey-enrolment button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:0;border-radius:.75rem;padding:.7rem .9rem;color:#07111f;background:#7dd3fc;font:inherit;font-weight:700}@media(max-width:560px){.passkey-enrolment{align-items:stretch;flex-direction:column}}
