/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--shadow-xs:var(--shadow-xs);--shadow-sm:var(--shadow-sm);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--ease-in:cubic-bezier(.4, 0, 1, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono);--color-bg:var(--bg);--color-surface:var(--surface);--color-surface-2:var(--surface-2);--color-surface-3:var(--surface-3);--color-border:var(--hair);--color-border-2:var(--hair-2);--font-num:var(--font-num)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.select-all{-webkit-user-select:all;user-select:all}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.num{font-family:var(--font-num);font-feature-settings:"tnum" 1;letter-spacing:-.02em}button{font-family:inherit}::selection{background:var(--accent-soft)}.app{background:var(--bg);background-image:var(--canvas);grid-template-columns:var(--rail) 1fr;min-height:100vh;display:grid}.rail{border-right:1px solid var(--glass-border);background:var(--nav-bg);-webkit-backdrop-filter:blur(18px)saturate(1.5);scrollbar-width:thin;flex-direction:column;height:100vh;max-height:100dvh;padding:22px 16px;display:flex;position:sticky;top:0;overflow:hidden auto}.brand{align-items:center;gap:11px;padding:6px 10px 22px;display:flex}.brand-mark{background:linear-gradient(150deg, var(--accent), var(--accent-2));width:34px;height:34px;color:var(--on-accent);box-shadow:0 6px 16px -6px var(--glow);border-radius:11px;flex:none;place-items:center;display:grid}.brand-name{letter-spacing:-.02em;font-size:18px;font-weight:800}.brand-name span{color:var(--accent)}.rail-nav{flex-direction:column;gap:3px;min-height:0;display:flex}.rail-group{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);padding:14px 12px 6px;font-size:10.5px;font-weight:800}.rail-link{border-radius:var(--r-sm);cursor:pointer;width:100%;color:var(--ink-3);text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:11px 12px;font-size:14.5px;font-weight:700;transition:background .15s,color .15s;display:flex}.rail-link svg{flex:none;width:20px;height:20px}.rail-link:hover{background:var(--chip-bg);color:var(--ink)}.rail-link.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs)}.rail-link.on svg{color:var(--accent)}.rail-spacer{flex:1}.rail-card{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--hair);box-shadow:var(--shadow-xs);flex:none;margin-top:14px;padding:14px}.rail-user{align-items:center;gap:11px;display:flex}@media (height<=760px) and (width>=861px){.rail{padding-top:16px;padding-bottom:12px}.brand{padding-bottom:14px}.rail-group{padding-top:10px}.rail-link{padding-top:9px;padding-bottom:9px}.rail-card{margin-top:10px;padding:12px}}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:30;background:var(--nav-bg);-webkit-backdrop-filter:blur(18px)saturate(1.5);border-bottom:1px solid var(--glass-border);align-items:center;gap:14px;padding:16px clamp(18px,4vw,40px);display:flex;position:sticky;top:0}.topbar .tb-title{flex-direction:column;gap:2px;min-width:0;display:flex}.topbar .tb-hi{color:var(--ink-3);font-size:12.5px;font-weight:700}.topbar .tb-name{letter-spacing:-.02em;font-size:19px;font-weight:800}.tb-grow{flex:1}.tb-actions{align-items:center;gap:10px;display:flex}.content{padding:clamp(18px,3vw,34px) clamp(16px,4vw,40px) 64px}.wrap{width:100%;max-width:1180px;margin:0 auto}.icon-btn{border-radius:var(--r-pill);border:1px solid var(--hair);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;place-items:center;transition:background .15s,border-color .15s,transform .12s;display:grid}.icon-btn svg{width:19px;height:19px}.icon-btn:hover{background:var(--surface-2);border-color:var(--hair-2)}.icon-btn:active{transform:scale(.93)}.avatar{border-radius:var(--r-pill);background:linear-gradient(150deg, var(--accent), var(--accent-2));width:40px;height:40px;color:var(--on-accent);font-size:15px;font-weight:800;font-family:var(--font-num);box-shadow:0 5px 14px -5px var(--glow);cursor:pointer;flex:none;place-items:center;display:grid}.btn-accent{border-radius:var(--r-pill);cursor:pointer;background:linear-gradient(135deg, var(--accent), var(--accent-2));color:var(--on-accent);box-shadow:0 8px 20px -8px var(--glow);border:none;align-items:center;gap:7px;padding:10px 16px;font-size:14px;font-weight:800;transition:transform .12s,filter .15s;display:inline-flex}.btn-accent:hover{filter:brightness(1.04)}.btn-accent:active{transform:scale(.97)}.btn-ghost{border-radius:var(--r-pill);border:1px solid var(--hair-2);background:var(--surface);color:var(--ink);cursor:pointer;align-items:center;gap:7px;padding:10px 16px;font-size:14px;font-weight:700;transition:background .15s;display:inline-flex}.btn-ghost:hover{background:var(--surface-2)}.botnav{display:none}.card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);transition:box-shadow .2s,border-color .2s,transform .18s}.card:hover{box-shadow:var(--shadow-md);border-color:var(--hair-2)}.pad{padding:20px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:800}.eyebrow.mono{font-family:var(--font-num);letter-spacing:.18em}.sec-head{justify-content:space-between;align-items:center;margin:30px 2px 14px;display:flex}.sec-head:first-child{margin-top:4px}.sec-head h3{letter-spacing:-.015em;white-space:nowrap;font-size:17px;font-weight:800}.more-link{color:var(--accent);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:700}.delta{align-items:center;gap:3px;font-size:12.5px;font-weight:800;display:inline-flex}.delta.up{color:var(--neg)}.delta.down,.delta.good{color:var(--pos)}.delta svg{width:13px;height:13px}.chip{border-radius:var(--r-pill);background:var(--chip-bg);color:var(--ink-2);border:1px solid #0000;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.chip.accent{background:var(--accent-soft);color:var(--accent)}.chip.gold{background:var(--warn-soft);color:var(--warn)}.chip.pos{background:var(--pos-soft);color:var(--pos)}.chip.neg{background:var(--neg-soft);color:var(--neg)}.txn-list{flex-direction:column;display:flex}.txn{border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:13px;padding:12px 10px;transition:background .15s;display:flex}.txn:hover{background:var(--surface-2)}.txn+.txn{border-top:1px solid var(--hair);border-radius:0}.txn-ico{background:var(--surface-2);border:1px solid var(--hair);border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.txn-mid{flex:1;min-width:0}.txn-name{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:700;overflow:hidden}.txn-meta{color:var(--ink-3);align-items:center;gap:6px;margin-top:2px;font-size:12px;font-weight:600;display:flex}.txn-amt{font-family:var(--font-num);letter-spacing:-.02em;text-align:right;flex:none;font-size:15px;font-weight:700}.txn-amt.income{color:var(--pos)}.catbar+.catbar{margin-top:16px}.catbar-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.catbar-name{align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.catbar-name .ce{font-size:16px}.catbar-val{font-family:var(--font-num);color:var(--ink-2);white-space:nowrap;font-size:13px;font-weight:700}.catbar-track{border-radius:var(--r-pill);background:var(--surface-3);height:9px;overflow:hidden}.catbar-fill{border-radius:var(--r-pill);height:100%;transition:width .7s cubic-bezier(.4,0,.2,1)}.bill{align-items:center;gap:13px;padding:13px 8px;display:flex}.bill+.bill{border-top:1px solid var(--hair)}.bill-date{text-align:center;background:var(--surface-2);border:1px solid var(--hair);border-radius:12px;flex:none;width:48px;padding:7px 0}.bill-date .bd-day{font-family:var(--font-num);font-size:18px;font-weight:700;line-height:1}.bill-date .bd-mon{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:10px;font-weight:800}.bill-mid{flex:1}.bill-name{font-size:14px;font-weight:700}.bill-sub{color:var(--ink-3);margin-top:1px;font-size:12px;font-weight:600}.bill-amt{font-family:var(--font-num);font-size:15px;font-weight:700}.ring-wrap{flex:none;width:130px;height:130px;position:relative}.ring-svg{width:100%;height:100%}.ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-center .rc-pct{font-family:var(--font-num);letter-spacing:-.03em;font-size:26px;font-weight:700}.ring-center .rc-cap{color:var(--ink-3);text-transform:uppercase;letter-spacing:.09em;margin-top:2px;font-size:10px;font-weight:800}@media (width<=480px){.ring-wrap{width:96px;height:96px}.ring-center .rc-pct{font-size:20px}}.ins-card{border-radius:var(--r-md);border:1px solid var(--hair);background:var(--surface);box-shadow:var(--shadow-sm);padding:17px;position:relative;overflow:hidden}.ins-tag{letter-spacing:.03em;border-radius:var(--r-pill);align-items:center;gap:6px;margin-bottom:11px;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.ins-tag.good{background:var(--pos-soft);color:var(--pos)}.ins-tag.warn{background:var(--neg-soft);color:var(--neg)}.ins-tag.tip{background:var(--warn-soft);color:var(--warn)}.ins-title{letter-spacing:-.01em;font-size:14.5px;font-weight:800;line-height:1.32}.ins-body{color:var(--ink-2);margin-top:7px;font-size:12.5px;font-weight:500;line-height:1.55}.toast{z-index:200;background:var(--ink);color:var(--bg);border-radius:var(--r-pill);box-shadow:var(--shadow-lg);align-items:center;gap:9px;padding:12px 20px;font-size:14px;font-weight:800;animation:.3s cubic-bezier(.2,.8,.2,1) toastIn;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}@keyframes rise{0%{transform:translateY(13px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.rise{animation:rise .5s var(--d,0s) both cubic-bezier(.2,.7,.2,1)}}@media (width<=920px){.app{grid-template-columns:1fr}.rail{display:none}.content{padding-bottom:110px}.botnav{z-index:60;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--nav-bg);-webkit-backdrop-filter:blur(20px)saturate(1.5);border-top:1px solid var(--glass-border);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.botnav button{cursor:pointer;color:var(--ink-3);background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:4px 8px;display:flex}.botnav button svg{width:22px;height:22px}.botnav button .bn-label{font-size:10.5px;font-weight:700}.botnav button.on{color:var(--accent)}.topbar .tb-name{font-size:17px}}@media (width<=560px){.topbar{padding:13px 16px}.content{padding-left:16px;padding-right:16px}.tb-search,.tb-bell{display:none}}.loading-screen{min-height:100vh;color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.dash{width:100%}.grid-2{grid-template-columns:1.3fr 1fr;gap:18px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=760px){.grid-2,.grid-3{grid-template-columns:1fr}}.hero{color:#fffffff5;border-radius:var(--r-lg);background:linear-gradient(150deg, color-mix(in oklab, var(--accent) 60%, #0b0e13) 0%, color-mix(in oklab, var(--accent) 26%, #0a0d12) 50%, #0a0c11 100%);border:1px solid #ffffff1a;padding:26px 28px;position:relative;overflow:hidden;box-shadow:0 30px 60px -30px #0009}.hero:after{content:"";pointer-events:none;background:radial-gradient(60% 80% at 88% -10%, color-mix(in oklab, var(--accent) 55%, transparent), transparent 60%);position:absolute;inset:0}.hero-top{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.hero-label{letter-spacing:.1em;text-transform:uppercase;color:#ffffffa8;white-space:nowrap;font-size:12px;font-weight:800}.hero-pill{white-space:nowrap;border-radius:var(--r-pill);color:#fffffff2;background:#ffffff24;border:1px solid #ffffff2e;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.hero-pill:focus-visible{outline-offset:2px;outline:2px solid #ffffffe6}.hero-bal{font-family:var(--font-num);letter-spacing:-.035em;z-index:1;align-items:baseline;gap:3px;margin:16px 0 4px;font-size:clamp(40px,6vw,58px);font-weight:700;display:flex;position:relative}.hero-bal .cur{opacity:.8;font-size:.55em;font-weight:600}.hero-sub{color:#ffffffad;z-index:1;font-size:13.5px;font-weight:600;position:relative}.hero-splits{z-index:1;flex-wrap:wrap;gap:12px;margin-top:22px;display:flex;position:relative}.hero-split{background:#ffffff14;border:1px solid #ffffff1a;border-radius:15px;flex:1;min-width:80px;padding:13px 15px}.hero-split .hs-label{color:#fff9;white-space:nowrap;align-items:center;gap:6px;font-size:11.5px;font-weight:700;display:flex}.hero-split .hs-val{font-family:var(--font-num);letter-spacing:-.02em;margin-top:5px;font-size:19px;font-weight:700}.hero-actions{z-index:1;flex-wrap:wrap;gap:10px;margin-top:22px;display:flex;position:relative}.hero-actions .ha{border-radius:var(--r-pill);cursor:pointer;color:#eafff6;background:#ffffff24;border:1px solid #ffffff29;flex:1;justify-content:center;align-items:center;gap:7px;min-width:80px;padding:11px;font-size:13.5px;font-weight:800;transition:background .15s;display:inline-flex}.hero-actions .ha:hover{background:#ffffff38}.hero-actions .ha.solid{color:#14181f;background:#fff;border-color:#fff}.hero-actions .ha svg{width:16px;height:16px}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot.in{background:#6ff0c4}.dot.out{background:#ffb4a6}.dot.save{background:#ffe39a}.ring-card{align-items:center;gap:22px;display:flex}.ring-facts{flex-direction:column;flex:1;gap:16px;display:flex}.ring-fact{flex-direction:column;gap:3px;display:flex}.ring-fact .rf-label{color:var(--ink-3);font-size:12px;font-weight:700}.ring-fact .rf-val{font-family:var(--font-num);letter-spacing:-.02em;margin-top:2px;font-size:18px;font-weight:700}.ring-fact .rf-val small{font-size:12px;font-weight:600}.insights-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.insights-head h3{letter-spacing:-.015em;font-size:17px;font-weight:800}.ai-chip{background:var(--accent-soft);color:var(--accent);border-radius:var(--r-pill);letter-spacing:.03em;padding:3px 9px;font-size:11px;font-weight:800}@media (width<=560px){.hero{padding:22px 20px}.hero-splits{gap:8px}.hero-split{padding:10px 12px}.ring-card{gap:16px}}.inv-row{border-top:1px solid var(--hair);align-items:center;gap:14px;padding:13px 0;display:flex}.inv-row:first-of-type{border-top:none}.inv-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.inv-sub{color:var(--ink-3);margin-top:2px;font-size:11.5px;font-weight:600}.inv-cap{color:var(--ink-4);text-transform:uppercase;letter-spacing:.05em;margin-top:1px;font-size:10px;font-weight:700}.inv-pl{font-family:var(--font-num);margin-top:1px;font-size:11.5px;font-weight:700}.inv-pl.pos{color:var(--pos)}.inv-pl.neg{color:var(--neg)}.mini-select{font-family:var(--font-body);color:var(--ink);background:var(--surface-2);border:1px solid var(--hair);border-radius:var(--r-pill);cursor:pointer;outline:none;padding:7px 12px;font-size:13px;font-weight:700}.mini-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.dropzone{text-align:center;cursor:pointer;background:linear-gradient(var(--surface), var(--surface)) padding-box, repeating-linear-gradient(135deg, var(--hair-2) 0 8px, transparent 8px 16px);border-radius:var(--r-md);border:2px dashed #0000;flex-direction:column;align-items:center;padding:40px 24px;transition:background .2s;display:flex}.dropzone:hover{background:var(--surface-2)}.dz-ico{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:18px;place-items:center;margin-bottom:14px;display:grid}.set-row{border-top:1px solid var(--hair);cursor:pointer;align-items:center;gap:13px;padding:12px 0;display:flex}.set-row:first-of-type{border-top:none}.set-ico{background:var(--surface-2);border:1px solid var(--hair);width:38px;height:38px;color:var(--ink-2);border-radius:11px;flex:none;place-items:center;display:grid}.set-label{font-size:14px;font-weight:700}.set-sub{color:var(--ink-3);margin-top:1px;font-size:12px;font-weight:600}.set-val{color:var(--ink-2);font-size:13.5px;font-weight:700}.set-arrow{color:var(--ink-4);margin-left:auto}.more-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.more-cell{text-align:left;background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);cursor:pointer;padding:18px;transition:transform .15s,border-color .15s}.more-cell:hover{border-color:var(--hair-2);transform:translateY(-2px)}.more-ico{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.more-name{margin-top:14px;font-size:15px;font-weight:800}.more-sub{color:var(--ink-3);margin-top:3px;font-size:12px;font-weight:600;line-height:1.4}.sheet-backdrop{z-index:150;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080a0e80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{z-index:151;background:var(--surface);border:1px solid var(--hair-2);width:100%;max-width:460px;box-shadow:var(--shadow-lg);padding:10px 22px calc(24px + env(safe-area-inset-bottom));scrollbar-width:none;border-bottom:none;border-radius:28px 28px 0 0;max-height:min(92dvh,720px);margin-inline:auto;animation:.3s cubic-bezier(.2,.8,.2,1) sheetUp;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.sheet::-webkit-scrollbar{display:none}@media (width>=921px){.sheet{border-bottom:1px solid var(--hair-2);border-radius:28px;max-width:520px;bottom:24px}.sheet-backdrop{align-items:center}}.cat-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}@media (width>=640px){.cat-grid{grid-template-columns:repeat(4,1fr)}}.sheet-grip{background:var(--hair-2);border-radius:99px;width:40px;height:5px;margin:4px auto 14px}.sheet-amt{text-align:center;font-family:var(--font-num);letter-spacing:-.04em;padding:16px 0 10px;font-size:46px;font-weight:700}.sheet-amt .cur{color:var(--ink-3);font-size:28px}.field-label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin:14px 0 9px;font-size:11px;font-weight:800}.seg{background:var(--surface-2);border:1px solid var(--hair);border-radius:var(--r-pill);gap:4px;padding:4px;display:flex}.seg button{color:var(--ink-3);font-family:var(--font-body);border-radius:var(--r-pill);cursor:pointer;background:0 0;border:none;flex:1;padding:9px;font-size:13.5px;font-weight:700;transition:color .15s}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs)}.cat-chips{flex-wrap:wrap;gap:8px;display:flex}.cat-choice{border-radius:var(--r-pill);border:1px solid var(--hair);background:var(--surface-2);cursor:pointer;color:var(--ink-2);font-size:13px;font-weight:700;font-family:var(--font-body);align-items:center;gap:6px;padding:9px 13px;transition:all .15s;display:inline-flex}.cat-choice.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.keypad{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.key{border:1px solid var(--hair);background:var(--surface-2);font-family:var(--font-num);color:var(--ink);cursor:pointer;border-radius:15px;padding:15px;font-size:21px;font-weight:600;transition:background .12s,transform .1s}.key:active{background:var(--surface-3);transform:scale(.96)}@keyframes sheetUp{0%{transform:translateY(44px)}to{transform:translateY(0)}}.goals-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (width<=560px){.goals-grid{grid-template-columns:1fr}}.goal-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);cursor:pointer;padding:20px;transition:transform .18s,box-shadow .2s}.goal-card:hover{box-shadow:var(--shadow-md)}.goal-emoji-tile{background:var(--surface-2);border:1px solid var(--hair);border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:14px;font-size:24px;display:grid}.goal-name{letter-spacing:-.01em;font-size:15px;font-weight:800}.goal-sub{color:var(--ink-3);margin-top:3px;font-size:12px;font-weight:600}.goal-amounts{align-items:baseline;gap:4px;margin:14px 0 12px;display:flex}.goal-current{font-family:var(--font-num);letter-spacing:-.02em;font-size:20px;font-weight:700}.goal-target{font-family:var(--font-num);color:var(--ink-3);font-size:13px;font-weight:600}.goal-bar{border-radius:var(--r-pill);background:var(--surface-3);height:7px;margin-bottom:12px;overflow:hidden}.goal-bar-fill{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%;transition:width .7s cubic-bezier(.4,0,.2,1)}.goal-stats{flex-wrap:wrap;gap:12px;display:flex}.goal-stat{color:var(--ink-3);font-size:11.5px;font-weight:700}.goal-stat span{color:var(--ink-2)}.goal-new-card{border:2px dashed var(--hair-2);border-radius:var(--r-md);cursor:pointer;min-height:160px;color:var(--ink-3);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;transition:border-color .15s,color .15s;display:flex}.goal-new-card:hover{border-color:var(--accent);color:var(--accent)}.nw-hero{background:linear-gradient(150deg, color-mix(in oklab, var(--accent) 60%, #0b0e13) 0%, #0a0c11 100%);color:#fff;border-radius:var(--r-lg);border:1px solid #ffffff1a;padding:28px}.nw-hero-amt{font-family:var(--font-num);letter-spacing:-.03em;margin:12px 0 6px;font-size:clamp(36px,5vw,52px);font-weight:700}.nw-splits{flex-wrap:wrap;gap:24px;margin-top:18px;display:flex}.nw-split .ns-label{color:#fff9;font-size:12px;font-weight:700}.nw-split .ns-val{font-family:var(--font-num);margin-top:4px;font-size:18px;font-weight:700}.nw-cols{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (width<=640px){.nw-cols{grid-template-columns:1fr}}.nw-row{border-top:1px solid var(--hair);align-items:center;gap:13px;padding:13px 0;display:flex}.nw-row:first-of-type{border-top:none}.nw-ico{background:var(--surface-2);border:1px solid var(--hair);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.nw-name{font-size:14px;font-weight:700}.nw-sub{color:var(--ink-3);margin-top:1px;font-size:12px;font-weight:600}.nw-amt{font-family:var(--font-num);margin-left:auto;font-size:15px;font-weight:700}.nw-amt.neg{color:var(--neg)}.events-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (width<=560px){.events-grid{grid-template-columns:1fr}}.event-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);cursor:pointer;padding:20px;transition:transform .18s,box-shadow .2s}.event-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.event-new-card{border:2px dashed var(--hair-2);border-radius:var(--r-md);cursor:pointer;min-height:160px;color:var(--ink-3);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;transition:border-color .15s,color .15s;display:flex}.event-new-card:hover{border-color:var(--accent);color:var(--accent)}.tax-section-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);margin-bottom:14px;overflow:hidden}.tax-section-head{border-bottom:1px solid var(--hair);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.tax-section-title{font-size:15px;font-weight:800}.tax-section-sub{color:var(--ink-3);margin-top:2px;font-size:12px;font-weight:600}.tax-limit-bar{border-radius:var(--r-pill);background:var(--surface-3);height:6px;margin:0 20px 16px;overflow:hidden}.tax-limit-fill{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%}.tax-limit-fill.over{background:var(--neg)}.tax-item{border-top:1px solid var(--hair);justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.tax-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin-right:12px;font-size:13.5px;font-weight:700;overflow:hidden}.tax-item-amt{font-family:var(--font-num);white-space:nowrap;font-size:13.5px;font-weight:700}.filter-chips{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-chips::-webkit-scrollbar{display:none}.filter-chip{border-radius:var(--r-pill);border:1px solid var(--hair);background:var(--surface);color:var(--ink-2);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;transition:all .15s;display:inline-flex}.filter-chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.txn-group{margin-bottom:8px}.txn-group-header{justify-content:space-between;align-items:center;padding:8px 4px;display:flex}.txn-group-date{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:800}.txn-group-total{font-family:var(--font-num);color:var(--ink-3);font-size:13px;font-weight:700}.coach-layout{grid-template-columns:1.15fr 1fr;align-items:start;gap:20px;display:grid}.coach-layout>div{min-width:0}@media (width<=900px){.coach-layout{grid-template-columns:1fr}}.score-hero{border-radius:var(--r-lg);background:linear-gradient(150deg, color-mix(in oklab, var(--accent) 60%, #0b0e13) 0%, #0a0c11 100%);color:#fff;border:1px solid #ffffff1a;padding:28px}.score-big{font-family:var(--font-num);letter-spacing:-.04em;font-size:64px;font-weight:700;line-height:1}.score-denom{opacity:.5;font-size:28px;font-weight:600}.score-splits{flex-wrap:wrap;gap:20px;margin-top:18px;display:flex}.score-split .ss-label{color:#fff9;font-size:11.5px;font-weight:700}.score-split .ss-val{font-family:var(--font-num);margin-top:3px;font-size:17px;font-weight:700}.chat-panel{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);flex-direction:column;max-height:600px;display:flex;position:sticky;top:90px}.chat-header{border-bottom:1px solid var(--hair);align-items:center;gap:12px;padding:16px 20px;display:flex}.chat-header-title{font-size:15px;font-weight:800}.chat-header-sub{color:var(--ink-3);margin-top:1px;font-size:12px;font-weight:600}.chat-messages{scrollbar-width:thin;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.chat-bubble{border-radius:18px;max-width:85%;padding:12px 16px;font-size:13.5px;font-weight:500;line-height:1.55}.chat-bubble.user{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:var(--on-accent);border-bottom-right-radius:5px;align-self:flex-end}.chat-bubble.ai{background:var(--surface-2);color:var(--ink);border-bottom-left-radius:5px;align-self:flex-start}.chat-typing{background:var(--surface-2);border-radius:18px 18px 18px 5px;align-self:flex-start;align-items:center;gap:5px;padding:12px 16px;display:flex}.chat-typing span{background:var(--ink-3);border-radius:50%;width:7px;height:7px;animation:1.2s infinite typing}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.chat-suggestions{border-top:1px solid var(--hair);scrollbar-width:none;gap:8px;padding:12px 16px;display:flex;overflow-x:auto}.chat-suggestions::-webkit-scrollbar{display:none}.chat-suggestion{white-space:nowrap;border-radius:var(--r-pill);border:1px solid var(--hair);background:var(--surface-2);color:var(--ink-2);cursor:pointer;padding:7px 13px;font-size:12.5px;font-weight:700;transition:all .15s}.chat-suggestion:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.chat-input-row{border-top:1px solid var(--hair);align-items:center;gap:10px;padding:14px 16px;display:flex}.chat-input{border:1px solid var(--hair);background:var(--surface-2);border-radius:var(--r-pill);font-size:14px;font-family:var(--font-body);color:var(--ink);outline:none;flex:1;padding:11px 16px;transition:border-color .15s}.chat-input:focus{border-color:var(--accent)}.ai-story-grid{grid-template-columns:1fr;gap:12px;display:grid}.ai-story-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:16px;display:flex}.ai-story-title{color:var(--ink);font-size:14px;font-weight:850}.ai-story-sub{color:var(--ink-3);margin-top:3px;font-size:12.5px;font-weight:650;line-height:1.45}.ai-story-result{white-space:pre-wrap;border-top:1px solid var(--hair);color:var(--ink-2);padding-top:12px;font-size:13.5px;font-weight:600;line-height:1.65}@media (width>=720px) and (width<=1200px){.ai-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.invest-hero{border-radius:var(--r-lg);background:linear-gradient(150deg, color-mix(in oklab, var(--accent) 60%, #0b0e13) 0%, #0a0c11 100%);color:#fff;border:1px solid #ffffff1a;margin-bottom:20px;padding:28px}.invest-hero-amt{font-family:var(--font-num);letter-spacing:-.03em;margin:12px 0 6px;font-size:clamp(36px,5vw,52px);font-weight:700}.invest-splits{flex-wrap:wrap;gap:24px;margin-top:18px;display:flex}.invest-split .is-label{color:#fff9;font-size:12px;font-weight:700}.invest-split .is-val{font-family:var(--font-num);margin-top:4px;font-size:18px;font-weight:700}.inv-type-group{margin-bottom:8px}.inv-type-head{justify-content:space-between;align-items:center;padding:10px 0;display:flex}.inv-type-label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:800}.activity-summary{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;display:grid}@media (width<=560px){.activity-summary{grid-template-columns:1fr}}.activity-summary-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-sm);padding:20px}.summary-amt{font-family:var(--font-num);letter-spacing:-.025em;margin:8px 0 4px;font-size:26px;font-weight:700}.summary-amt.pos{color:var(--pos)}.import-preview-item{border-top:1px solid var(--hair);align-items:center;gap:13px;padding:12px 0;display:flex}.import-preview-item:first-of-type{border-top:none}.import-match{color:var(--pos);font-size:12px;font-weight:700}.bg-grad-accent{background:var(--accent-grad)}.surf{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.btn-lift{transition:transform .15s,box-shadow .15s}.btn-lift:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-lift:active{transform:translateY(0)}:root{--glass-border:#181c221f}[data-theme=dark]{--glass-border:#ffffff1f}.header-bar{background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border)}.tilt-layer{transform-style:preserve-3d}.tilt-layer .sheen{pointer-events:none;opacity:0;border-radius:inherit;background:linear-gradient(115deg,#0000 35%,#ffffff2e 50%,#0000 65%);transition:opacity .25s;position:absolute;inset:0}.tilt-layer:hover .sheen{opacity:1}.card-locked{filter:grayscale(.15);opacity:.7;cursor:not-allowed}@keyframes tab-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.tab-enter{animation:.22s ease-out tab-enter}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.anim-fadeIn{animation:.3s ease-out fadeIn}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.anim-fadeUp{animation:.35s ease-out fadeUp}@keyframes riseIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:none}}.anim-riseIn{animation:.4s cubic-bezier(.2,.7,.2,1) riseIn}@keyframes dropIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}.anim-dropIn{animation:.3s ease-out dropIn}@keyframes cardReveal{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:none}}.anim-cardReveal{animation:.45s cubic-bezier(.2,.7,.2,1) both cardReveal}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:none}}.anim-slideInLeft{animation:.3s ease-out both slideInLeft}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.anim-slideInRight{animation:.3s ease-out both slideInRight}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.anim-shimmer{background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-3) 50%, var(--surface-2) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-10vh)rotate(0)}to{opacity:0;transform:translateY(110vh)rotate(360deg)}}@keyframes float1{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes float2{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes float3{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.anim-float1{animation:4.5s ease-in-out infinite float1}.anim-float2{animation:5.5s ease-in-out infinite float2}.anim-float3{animation:3.8s ease-in-out infinite float3}@keyframes breathe{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.03)}}.anim-breathe{animation:3s ease-in-out infinite breathe}@keyframes badge-pulse{0%,to{box-shadow:0 0 0 0 var(--glow)}50%{box-shadow:0 0 0 6px var(--glow)}}.anim-badge-pulse{animation:2s ease-in-out infinite badge-pulse}@keyframes barGrow{0%{width:0}}.anim-barGrow{animation:.7s cubic-bezier(.4,0,.2,1) both barGrow}@keyframes ringGrow{0%{stroke-dashoffset:var(--ring-circumference,0)}}.anim-ringGrow{animation:.9s cubic-bezier(.4,0,.2,1) both ringGrow}[data-reveal]{opacity:0;transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1);transform:translateY(16px)}[data-reveal].visible{opacity:1;transform:none}:root,[data-theme=light]{--bg:#f4f2ec;--bg-soft:#faf8f3;--canvas:radial-gradient(120% 90% at 50% -8%, #fbfaf6 0%, #f1efe8 62%);--surface:#fff;--surface-2:#f7f5ef;--surface-3:#ece9e0;--hair:#181c2214;--hair-2:#181c2221;--ink:#14181f;--ink-2:#565d68;--ink-3:#8a909b;--ink-4:#aab0ba;--pos:#0a9d72;--pos-soft:#0a9d721f;--neg:#cf4338;--neg-soft:#cf43381a;--warn:#c77700;--warn-soft:#c777001f;--shadow-xs:0 1px 2px #181c220d;--shadow-sm:0 1px 2px #181c220d, 0 4px 12px -8px #181c222e;--shadow-md:0 2px 6px #181c220d, 0 14px 30px -18px #181c2247;--shadow-lg:0 30px 70px -28px #181c2266;--nav-bg:#ffffffd1;--chip-bg:#181c220b;--on-accent:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f4f2ec;--color-surface:#fff;--color-surface-2:#f7f5ef;--color-surface-3:#ece9e0;--color-text:#14181f;--color-text-2:#565d68;--color-text-3:#8a909b;--color-text-muted:#565d68;--color-border:#181c2214;--color-border-2:#181c2221;--color-primary:#0a9d72;--color-brand:#0a9d72;--color-brand-bg:#0a9d721f;--color-brand-text:#0a9d72;--color-success:#0a9d72;--color-success-bg:#0a9d721f;--color-success-text:#0a9d72;--color-danger:#cf4338;--color-danger-bg:#cf43381a;--color-danger-border:#cf4338;--color-danger-text:#cf4338;--color-warning:#c77700;--color-warning-bg:#c777001f;--color-warning-border:#c77700;--color-warning-text:#c77700}[data-theme=dark]{--bg:#0a0c10;--bg-soft:#14181f;--canvas:radial-gradient(120% 90% at 50% -8%, #131a23 0%, #0a0c10 58%);--surface:#14181f;--surface-2:#1a1f28;--surface-3:#232b36;--hair:#ffffff12;--hair-2:#ffffff21;--ink:#eef1f5;--ink-2:#a6afbd;--ink-3:#6c7683;--ink-4:#515a67;--pos:#34e0a8;--pos-soft:#34e0a824;--neg:#ff7d7d;--neg-soft:#ff7d7d21;--warn:#f2b53b;--warn-soft:#f2b53b24;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 2px 8px -2px #0009;--shadow-md:0 10px 26px -14px #000000b3;--shadow-lg:0 36px 80px -30px #000000d9;--nav-bg:#10141ac7;--chip-bg:#ffffff0f;--on-accent:#04130d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0a0c10;--color-surface:#14181f;--color-surface-2:#1a1f28;--color-surface-3:#232b36;--color-text:#eef1f5;--color-text-2:#a6afbd;--color-text-3:#6c7683;--color-text-muted:#a6afbd;--color-border:#ffffff12;--color-border-2:#ffffff21;--color-primary:#34e0a8;--color-brand:#34e0a8;--color-brand-bg:#34e0a824;--color-brand-text:#34e0a8;--color-success:#34e0a8;--color-success-bg:#34e0a824;--color-success-text:#34e0a8;--color-danger:#ff7d7d;--color-danger-bg:#ff7d7d21;--color-danger-border:#ff7d7d;--color-danger-text:#ff7d7d;--color-warning:#f2b53b;--color-warning-bg:#f2b53b24;--color-warning-border:#f2b53b;--color-warning-text:#f2b53b}[data-accent=green]{--accent:#0a9d72;--accent-2:#0a8a86;--accent-soft:#0a9d721f;--glow:#0a9d7238;--on-accent:#fff}[data-theme=dark][data-accent=green]{--accent:#34e0a8;--accent-2:#19b9c9;--accent-soft:#34e0a826;--glow:#34e0a852;--on-accent:#04130d}:root{--accent:#0a9d72;--accent-2:#0a8a86;--accent-soft:#0a9d721f;--glow:#0a9d7238;--on-accent:#fff}:root,[data-theme=dark]{--accent-grad:linear-gradient(135deg, var(--accent), var(--accent-2))}:root{--font-body:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-num:"Space Grotesk", var(--font-body);--r-xs:10px;--r-sm:14px;--r-md:18px;--r-lg:24px;--r-xl:30px;--r-pill:999px;--rail:248px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:9999px;--transition-fast:.15s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-body,"Manrope", sans-serif);background:var(--bg,#f4f2ec);color:var(--ink,#181c22);-webkit-font-smoothing:antialiased}.main-content{flex:1;padding-bottom:72px;overflow:hidden auto}.loading-screen{height:100%;color:var(--color-text-3);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-brand);border-radius:50%;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page{padding:16px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.page-header h2{font-size:22px;font-weight:700}.page-sub{color:var(--color-text-3);margin-top:2px;font-size:13px}.empty-state{color:var(--color-text-3);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 16px;display:flex}.empty-sub{color:var(--color-text-muted);font-size:13px}.empty-icon{font-size:48px}.top-bar{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:10;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.app-title{color:var(--color-text);font-size:18px;font-weight:700}.top-bar-actions{align-items:center;gap:8px;display:flex}.btn-theme-toggle{background:var(--color-surface-2);border:1px solid var(--color-border);cursor:pointer;border-radius:20px;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;transition:background .2s;display:flex}.btn-theme-toggle:hover{background:var(--color-surface-3)}.tab-bar{background:var(--color-surface);border-top:1px solid var(--color-border);z-index:10;scrollbar-width:none;-webkit-overflow-scrolling:touch;width:100%;max-width:480px;display:flex;position:fixed;bottom:0;left:50%;overflow-x:auto;transform:translate(-50%)}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;flex-direction:column;flex:0 0 72px;align-items:center;gap:2px;padding:8px 4px;transition:color .15s;display:flex}.tab-btn.active{color:var(--color-brand)}.tab-icon{font-size:20px}.tab-label{font-size:10px;font-weight:500}.modal-backdrop{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--color-surface);border-radius:20px;width:100%;max-width:480px;max-height:min(90vh,720px);overflow-y:auto;box-shadow:0 18px 60px #00000047}.modal-header{border-bottom:1px solid var(--color-border-2);background:var(--color-surface);justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex;position:sticky;top:0}.modal-header h3{font-size:17px;font-weight:700}.modal-close{background:var(--color-surface-2);cursor:pointer;width:32px;height:32px;color:var(--color-text);border:none;border-radius:20px;font-size:14px}.modal-body{padding:16px 20px 24px}@media (width<=640px){.modal-backdrop{padding:12px;padding-top:max(12px, env(safe-area-inset-top));align-items:flex-start}.modal{border-radius:18px;max-height:calc(100dvh - 24px)}}.toast-container{z-index:200;pointer-events:none;flex-direction:column;gap:8px;width:calc(100% - 32px);max-width:448px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{text-align:center;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:500;animation:.2s slideDown}.toast-success{background:var(--color-success-bg);color:var(--color-success-text)}.toast-error{background:var(--color-danger-bg);color:var(--color-danger-text)}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.btn-primary{background:var(--color-brand);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px 20px;font-size:15px;font-weight:600;transition:opacity .15s}.btn-primary.btn-sm{border-radius:8px;width:auto;padding:8px 14px;font-size:13px}.btn-secondary{background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:500}.btn-secondary:disabled{opacity:.5}.btn-secondary.btn-sm{padding:6px 12px;font-size:12px}.btn-add{background:var(--color-brand);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:8px 18px;font-size:14px;font-weight:600}.btn-icon{cursor:pointer;opacity:.6;color:var(--color-text);background:0 0;border:none;padding:4px;font-size:16px}.btn-icon:hover{opacity:1}.btn-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border);cursor:pointer;border-radius:10px;width:100%;margin-top:16px;padding:12px 20px;font-size:15px;font-weight:600}.form-group{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:10px;width:100%;padding:10px 12px;font-size:15px}.form-group input:focus,.form-group select:focus{border-color:var(--color-brand);outline:none}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row--center{align-items:center;gap:12px;display:flex}.inline-form{align-items:flex-end;gap:8px;display:flex}.inline-form input{border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:10px;flex:1;padding:10px 12px;font-size:15px}.badge{border-radius:12px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.filter-row{gap:8px;margin-bottom:12px;display:flex}.search-input{border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:10px;flex:1;padding:10px 12px;font-size:14px}.filter-select{border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:10px;padding:10px 12px;font-size:14px}.focus-ring:focus-visible{outline:2px solid var(--accent);outline-offset:1px}[data-theme=dark] .recharts-default-tooltip{background:var(--color-surface-2)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=dark] .recharts-legend-item-text{color:var(--color-text-3)!important}[data-theme=dark] .recharts-cartesian-axis-tick-value{fill:var(--color-text-muted)}[data-theme=dark] .recharts-tooltip-label{color:var(--color-text)!important}.section-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-md);margin-bottom:16px;padding:16px}.section-card h4{color:var(--ink-2);margin-bottom:12px;font-size:14px;font-weight:700}.section-badge{background:var(--accent);color:var(--on-accent);border-radius:var(--r-pill);padding:3px 10px;font-size:12px;font-weight:700}.budget-alert-wrap{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.budget-alert{background:var(--neg-soft);border:1.5px solid var(--neg);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.budget-alert-icon{flex-shrink:0;font-size:18px}.budget-alert-text{color:var(--ink);font-size:13px;line-height:1.4}.salary-card{background:var(--surface);border:1px solid var(--hair);box-shadow:var(--shadow-sm);border-radius:14px;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.salary-card--today{border-color:var(--pos);background:var(--pos-soft)}.salary-icon{flex-shrink:0;font-size:28px}.salary-text{flex-direction:column;gap:2px;display:flex}.salary-text strong{color:var(--ink);font-size:15px;font-weight:700}.salary-text span{color:var(--ink-3);font-size:12px}.streak-badge{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border-radius:14px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;display:flex}.streak-icon{flex-shrink:0;font-size:26px}.streak-text{flex-direction:column;gap:1px;display:flex}.streak-text strong{color:#fff;font-size:15px;font-weight:700}.streak-text span{color:#fffc;font-size:12px}.emi-row{margin-bottom:14px}.emi-row:last-child{margin-bottom:0}.emi-header{justify-content:space-between;gap:8px;margin-bottom:6px;display:flex}.emi-name{color:var(--ink);font-size:13px;font-weight:700}.emi-emi{color:var(--accent);white-space:nowrap;font-size:13px;font-weight:700}.emi-bar-bg{background:var(--surface-3);border-radius:4px;height:6px;margin-bottom:4px;overflow:hidden}.emi-bar-fill{background:linear-gradient(150deg, var(--accent), var(--accent-2));border-radius:4px;height:100%;transition:width .6s}.emi-meta{color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:4px;font-size:11px;display:flex}.cashback-card{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border-radius:14px;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.cashback-icon{flex-shrink:0;font-size:28px}.cashback-info{flex:1;min-width:0}.cashback-title{color:#ffffffd9;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:700}.cashback-row{color:#ffffffeb;justify-content:space-between;gap:8px;font-size:13px;display:flex}.cashback-row strong{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}@media (width<=480px){.salary-card,.streak-badge,.cashback-card{gap:10px;padding:10px 12px}.salary-icon,.streak-icon,.cashback-icon{font-size:22px}}.expense-list{flex-direction:column;gap:8px;display:flex}.expense-item{background:var(--color-surface);border:1px solid var(--color-border-2);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.expense-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.expense-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.expense-icon--lg{border-radius:14px;width:46px;height:46px;font-size:22px}.expense-info{flex:1;min-width:0}.expense-note{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.expense-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.expense-date{color:var(--color-text-muted);font-size:11px}.expense-mode{font-size:14px}.expense-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.expense-amount{color:var(--color-danger);font-variant-numeric:tabular-nums;letter-spacing:-.3px;font-size:15px;font-weight:800}.expense-actions{gap:4px;display:flex}.expense-summary{color:var(--color-text-3);font-size:13px}.expense-form{flex-direction:column;display:flex}.amount-input{text-align:center;color:var(--color-brand);border:2px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:16px;font-size:32px;font-weight:700}.amount-input:focus{border-color:var(--color-brand);outline:none}.category-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.cat-btn{border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;color:var(--color-text);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;font-size:12px;transition:all .1s;display:flex}.cat-btn.selected{background:var(--color-brand-bg);border-color:var(--color-brand);color:var(--color-brand-text);font-weight:600}.cat-btn span:first-child{font-size:22px}.payment-modes{flex-wrap:wrap;gap:8px;display:flex}.mode-btn{border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;color:var(--color-text);border-radius:10px;padding:8px 14px;font-size:13px;font-weight:500}.mode-btn.selected{border-color:var(--color-brand);background:var(--color-brand-bg);color:var(--color-brand-text);font-weight:600}.type-toggle{border:1.5px solid var(--color-border);border-radius:12px;gap:0;margin-bottom:16px;display:flex;overflow:hidden}.type-btn{background:var(--color-surface-2);cursor:pointer;color:var(--color-text-muted);transition:all var(--transition-fast);border:none;flex:1;padding:10px;font-size:13px;font-weight:600}.type-btn--expense.active{color:#ef4444;background:#ef444422}.type-btn--income.active{color:#10b981;background:#10b98122}.exp-summary-strip{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:14px;justify-content:space-around;margin-bottom:12px;padding:12px 8px;display:flex}.exp-summary-item{text-align:center}.exp-summary-val{font-variant-numeric:tabular-nums;color:var(--color-text);font-size:15px;font-weight:800}.exp-summary-val--out{color:var(--color-danger)}.exp-summary-val--in{color:var(--color-success)}.exp-summary-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;margin-top:2px;font-size:10px}.expense-badge{border-radius:20px;padding:2px 7px;font-size:10px;font-weight:700}.expense-badge--income{color:#10b981;background:#10b98122}.expense-cashback{color:#f59e0b;font-size:10px;font-weight:600}.expense-item-wrap{border-radius:14px;margin-bottom:8px;position:relative;overflow:hidden}.expense-item{transition:transform .2s}.expense-item--swiped{transform:translate(-80px)}.swipe-delete-btn{background:var(--color-danger);color:#fff;cursor:pointer;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:80px;font-size:13px;font-weight:700;display:flex;position:absolute;top:0;bottom:0;right:0}.section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.section-desc{color:var(--color-text-muted);margin-bottom:10px;font-size:12px}.cat-list{flex-direction:column;gap:6px;display:flex}.cat-item{border-bottom:1px solid var(--color-bg);justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;display:flex}.budget-label-col{min-width:120px}.budget-summary-row{border-bottom:1px solid var(--color-bg);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.recurring-list{flex-direction:column;gap:8px;display:flex}.recurring-item{background:var(--color-surface-2);border-radius:8px;justify-content:space-between;align-items:center;padding:8px;display:flex}.recurring-meta{color:var(--color-text-muted);margin-top:2px;font-size:11px;display:block}.recurring-actions{align-items:center;gap:8px;display:flex}.toggle{width:36px;height:20px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{background:var(--color-border);cursor:pointer;border-radius:20px;transition:all .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:all .2s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-slider{background:var(--color-brand)}.toggle input:checked+.toggle-slider:before{transform:translate(16px)}.color-picker{flex-wrap:wrap;gap:8px;display:flex}.color-dot{cursor:pointer;border:3px solid #0000;border-radius:50%;width:28px;height:28px}.color-dot.selected{border-color:var(--color-text)}.empty-hint{color:var(--color-text-muted);font-size:13px;font-style:italic}.suggested-cats-grid{-webkit-overflow-scrolling:touch;grid-template-columns:repeat(3,1fr);gap:8px;max-height:55vh;padding:4px 0;display:grid;overflow-y:auto}.suggested-cat-btn{border:1.5px solid var(--color-border);background:var(--color-surface-2);cursor:pointer;transition:all var(--transition-fast);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;display:flex}.suggested-cat-btn.selected{border-width:2px}.suggested-cat-btn.disabled{opacity:.35;cursor:not-allowed}.suggested-cats-list{-webkit-overflow-scrolling:touch;flex-direction:column;gap:6px;max-height:60vh;padding:2px 0;display:flex;overflow-y:auto}.suggested-cat-row{border:1.5px solid var(--color-border);background:var(--color-surface-2);cursor:pointer;text-align:left;transition:all var(--transition-fast);border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.suggested-cat-row.selected{border-width:2px}.suggested-cat-row.disabled{opacity:.4;cursor:not-allowed}.suggested-cat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:20px;display:flex}.suggested-cat-info{flex:1;min-width:0}.suggested-cat-name{color:var(--color-text);align-items:center;gap:6px;margin-bottom:2px;font-size:14px;font-weight:600;display:flex}.suggested-cat-added{color:var(--color-success);font-size:10px;font-weight:600}.suggested-cat-desc{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.4;overflow:hidden}.suggested-cat-check{flex-shrink:0;font-size:18px;font-weight:700}.budget-edit-list{-webkit-overflow-scrolling:touch;flex-direction:column;gap:8px;max-height:58vh;padding:2px 0;display:flex;overflow-y:auto}.budget-edit-row{border:1.5px solid var(--color-border);background:var(--color-surface-2);transition:all var(--transition-fast);border-radius:14px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.budget-edit-row:focus-within{border-color:var(--color-brand)!important}.budget-edit-row--filled{border-width:2px}.budget-edit-left{align-items:center;gap:10px;display:flex}.budget-edit-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.budget-edit-name-wrap{flex-direction:column;gap:2px;display:flex}.budget-edit-name{color:var(--color-text);font-size:14px;font-weight:600}.budget-edit-hint{color:var(--color-text-muted);font-size:11px;line-height:1.3}.budget-edit-right{align-items:center;gap:4px;display:flex}.budget-edit-rupee{color:var(--color-text-muted);font-size:14px;font-weight:600}.budget-edit-input{width:90px;color:var(--color-text);text-align:right;font-variant-numeric:tabular-nums;font-size:14px;font-weight:600;font-family:var(--font-num);background:0 0;border:none;outline:none}.budget-edit-input::placeholder{color:var(--color-text-muted);font-weight:400}.budget-edit-total{text-align:center;color:var(--color-text-muted);background:var(--color-surface-2);border-radius:10px;margin-top:12px;padding:10px;font-size:13px}.auth-page{background:var(--canvas,#f4f2ec);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.auth-card{background:var(--surface,#fff);width:100%;max-width:400px;box-shadow:var(--shadow-md,0 4px 24px #181c221a);border:1px solid var(--hair,#181c2214);border-radius:20px;padding:36px 28px}.auth-logo{text-align:center;background:linear-gradient(135deg,#0a9d72,#0a8a86);border-radius:14px;place-items:center;width:52px;height:52px;margin:0 auto 16px;font-size:26px;display:grid}.auth-icon-lg{font-size:48px}.auth-card h1{text-align:center;color:var(--ink,#181c22);margin-bottom:4px;font-size:22px;font-weight:800}.auth-subtitle{text-align:center;color:var(--ink-3,#8a909b);margin:0 0 24px;font-size:13.5px}.auth-tabs{background:var(--surface-2,#f0ede6);border-radius:10px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.auth-tabs button{cursor:pointer;color:var(--ink-3,#8a909b);font-size:13px;font-weight:600;font-family:var(--font-body,"Manrope", sans-serif);background:0 0;border:none;border-radius:8px;flex:1;padding:8px;transition:all .15s}.auth-tabs button.active{background:var(--surface,#fff);color:var(--accent,#0a9d72);font-weight:700;box-shadow:0 1px 4px #00000014}.auth-form{flex-direction:column;gap:12px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--ink-2,#565d68);font-size:13px;font-weight:700}.form-group input{border-radius:var(--r-md,10px);border:1.5px solid var(--hair,#181c221a);background:var(--surface,#fff);color:var(--ink,#181c22);font-size:14px;font-family:var(--font-body,"Manrope", sans-serif);outline:none;padding:11px 14px;transition:border-color .15s}.form-group input:focus{border-color:var(--accent,#0a9d72)}.btn-primary{border-radius:var(--r-pill,999px);background:var(--accent,#0a9d72);color:#fff;width:100%;font-size:15px;font-weight:800;font-family:var(--font-body,"Manrope", sans-serif);cursor:pointer;border:none;margin-top:8px;padding:13px;transition:opacity .15s,transform .1s}.btn-primary:hover{opacity:.92}.btn-primary:active{transform:scale(.97)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{border-radius:var(--r-pill,999px);border:1.5px solid var(--hair,#181c221a);background:var(--surface,#fff);color:var(--ink,#181c22);font-size:14px;font-weight:700;font-family:var(--font-body,"Manrope", sans-serif);cursor:pointer;padding:10px 20px}.magic-sent{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:20px 0;display:flex}.ai-card{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:16px;margin-bottom:16px;padding:16px}.ai-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ai-card-title{align-items:center;gap:8px;display:flex}.ai-card-title h3{font-size:16px;font-weight:700}.ai-icon{font-size:22px}.ai-empty{text-align:center;color:var(--color-text-3);flex-direction:column;align-items:center;gap:10px;padding:20px 0;display:flex}.ai-empty p{font-size:13px}.ai-loading{color:var(--color-text-3);flex-direction:column;align-items:center;gap:10px;padding:24px;font-size:13px;display:flex}.ai-error{background:var(--color-danger-bg);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.ai-error p{color:var(--color-danger-text);font-size:13px}.ai-notice{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning-text);border-radius:10px;margin-bottom:12px;padding:12px;font-size:13px}.ai-response{font-size:14px;line-height:1.6}.ai-bullet{gap:8px;margin-bottom:8px;display:flex}.ai-bullet-dot{color:var(--color-brand);flex-shrink:0;min-width:16px;font-weight:700}.ai-para{margin-bottom:8px}.ai-h1{margin:12px 0 6px;font-size:16px;font-weight:700}.ai-h2{color:var(--color-text-2);margin:10px 0 6px;font-size:15px;font-weight:700}.ai-response strong{color:var(--color-text)}.ai-response code{background:var(--color-surface-2);border-radius:4px;padding:1px 5px;font-size:13px}
