:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,system-ui,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#2d2d3a;background:#e8e8e8;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}a{font-weight:500;color:#4a7cff;text-decoration:none}a:hover{color:#5d8cff}body{margin:0;min-width:320px;min-height:100vh;background:#e8e8e8}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{line-height:1.2}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}::selection{background:#4a7cff4d;color:#2d2d3a}:root{--bg: #e8e8e8;--sd: #c4c4c4;--sl: #ffffff;--text: #2d2d3a;--text-dim: #6a6a7a;--accent: #4a7cff;--accent-soft: #5d8cff;--accent-glow: rgba(74,124,255,.22);--warn: #c8860a;--warn-bg: #f5c842;--warn-light: rgba(245,200,66,.15);--success: #1a8a4a;--success-light: rgba(26,138,74,.12);--danger: #e74c3c;--danger-light: rgba(231,76,60,.1);--purple: #9b59b6;--purple-light: rgba(155,89,182,.12);--teal: #148f77;--dark-from: #7a7a8e;--dark-mid: #8a8a9e;--dark-to: #9a9aae;--glass-border: rgba(255,255,255,.26);--card-r: 18px;--neu-out: 6px 6px 14px var(--sd), -6px -6px 14px var(--sl);--neu-in: inset 4px 4px 8px var(--sd), inset -4px -4px 8px var(--sl);--neu-sm: 3px 3px 8px var(--sd), -3px -3px 8px var(--sl);--neu-deep: 8px 8px 22px var(--sd), -8px -8px 22px var(--sl);--neu-xs: 2px 2px 5px var(--sd), -2px -2px 5px var(--sl);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer1{0%{transform:translate(0) scale(1)}to{transform:translate(-25px,18px) scale(1.12)}}@keyframes shimmer2{0%{transform:translate(0) scale(1)}to{transform:translate(18px,-12px) scale(1.08)}}@keyframes progressShine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-layout{display:flex;min-height:100vh;max-width:100%;overflow-x:hidden}.app-main{flex:1;min-width:0;margin-left:240px;transition:margin-left .3s ease}@media(max-width:1023px){.app-main{margin-left:0}}.app-container{min-height:100vh;max-width:100%;overflow-x:hidden}.header{padding:24px 24px 18px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 18px;position:sticky;top:0;z-index:50;background:linear-gradient(180deg,var(--bg) 70%,rgba(232,232,232,.85));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header-left,.header-right{display:flex;align-items:center;gap:12px}.hamburger-btn{display:none;border:none;background:#efefef59;border-radius:12px;padding:8px;cursor:pointer;color:var(--text);box-shadow:var(--neu-xs)}.hamburger-btn:active{box-shadow:var(--neu-in)}@media(max-width:1023px){.hamburger-btn{display:flex;align-items:center;justify-content:center}}.settings-gear-btn{border:none;background:#efefef59;border-radius:12px;padding:8px;cursor:pointer;color:var(--text-dim);box-shadow:var(--neu-xs);transition:all .2s}.settings-gear-btn:hover{color:var(--accent);box-shadow:var(--neu-sm)}.header h1{display:inline-flex;align-items:center;gap:10px;background:#f0f0f059;border:1px solid rgba(0,0,0,.06);color:var(--text);border:1px solid rgba(255,255,255,.9);border-radius:14px;padding:10px 18px;font-weight:700;font-size:17px;box-shadow:var(--neu-out);transition:box-shadow .3s,transform .3s;letter-spacing:-.01em;margin:0}.header h1:hover{box-shadow:var(--neu-deep);transform:translateY(-1px)}.header-stats{display:inline-flex;align-items:center;gap:6px;background:#f0f0f059;border:1px solid rgba(0,0,0,.06);color:var(--text-dim);border:1px solid rgba(255,255,255,.9);border-radius:10px;padding:7px 14px;font-size:12px;font-weight:600;box-shadow:var(--neu-sm);letter-spacing:.3px}.net-worth{color:var(--success);font-weight:700;display:flex;align-items:center;gap:6px}.net-worth-change{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:6px}.net-worth-change.positive{color:var(--success);background:var(--success-light)}.net-worth-change.negative{color:var(--danger);background:var(--danger-light)}.progress{color:var(--text-dim)}.stock-ticker-container{display:inline-flex;align-items:center;gap:10px;background:#f0f0f059;border:1px solid rgba(0,0,0,.06);border:1px solid rgba(255,255,255,.9);border-radius:10px;padding:7px 14px;box-shadow:var(--neu-sm)}.disney-logo{height:18px;width:auto;opacity:.7;flex-shrink:0}.stock-ticker-content{display:flex;align-items:center;gap:8px}.stock-price{font-size:.85rem;font-weight:700;color:var(--text)}.stock-change{font-size:.75rem;font-weight:600}.stock-change.stock-up{color:var(--success)}.stock-change.stock-down{color:var(--danger)}.sidebar-overlay{position:fixed;inset:0;background:#00000040;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:199}.sidebar{position:fixed;top:0;left:0;bottom:0;width:240px;background:var(--bg);z-index:200;overflow-y:auto;box-shadow:6px 0 20px #0000000f;display:flex;flex-direction:column}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px 12px;border-bottom:1px solid rgba(0,0,0,.05)}.sidebar-title{font:700 18px/1 -apple-system,system-ui,sans-serif;color:var(--text);letter-spacing:-.3px}.sidebar-close{display:none;border:none;background:none;color:var(--text-dim);cursor:pointer;padding:4px;border-radius:8px}.sidebar-close:hover{background:#0000000d}@media(max-width:1023px){.sidebar-close{display:flex}}.sidebar-nav{flex:1;padding:8px 0 20px;overflow-y:auto}.sidebar-group{margin-bottom:4px}.sidebar-group-label{font:600 10.5px/1 -apple-system,system-ui,sans-serif;color:var(--text-dim);letter-spacing:1.2px;text-transform:uppercase;padding:14px 18px 6px}.sidebar-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 18px;border:none;background:transparent;color:var(--text-dim);font:500 14px/1.2 -apple-system,system-ui,sans-serif;cursor:pointer;transition:all .2s;text-align:left;border-radius:0;position:relative}.sidebar-item:hover{background:#00000009;color:var(--text)}.sidebar-item.active{background:#4a7cff14;color:var(--accent);font-weight:600}.sidebar-item.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.sidebar-active-indicator{margin-left:auto;opacity:.5}@media(max-width:1023px){.sidebar{transform:translate(-100%);transition:transform .3s ease}.sidebar.open{transform:translate(0)}}.tab-button{border:none;outline:none;cursor:pointer;font:600 13.5px/1 -apple-system,system-ui,sans-serif;padding:11px 16px;border-radius:12px;background:transparent;color:var(--text-dim);transition:all .3s ease;white-space:nowrap;letter-spacing:.2px;display:flex;align-items:center;gap:6px}.tab-button.active{background:#4a7cff1a;color:var(--accent);border:1.5px solid rgba(74,124,255,.3)}.main-content{max-width:960px;margin:0 auto;padding:28px 20px 120px}.tab-content{display:flex;flex-direction:column;align-items:stretch}.tab-content>*{width:100%;box-sizing:border-box}.section-hdr{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.8px;color:var(--text-dim);margin:36px 0 16px;display:flex;align-items:center;gap:8px}.section-hdr:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--sd),transparent);opacity:.5}.glass-card{background:#efefef59;border:1px solid rgba(0,0,0,.06);border-radius:var(--card-r);box-shadow:var(--neu-out);padding:22px;margin-bottom:18px;transition:box-shadow .35s,transform .35s;width:100%}.glass-card:hover{box-shadow:var(--neu-deep);transform:translateY(-2px)}.glass-card-clickable{cursor:pointer;transition:box-shadow .35s,transform .35s,border-color .25s}.glass-card-clickable:hover{border-color:#4a7cff26}.glass-card-clickable:active{transform:translateY(0);box-shadow:var(--neu-out)}.glass-card h3{font-size:14px;font-weight:800;margin-bottom:14px;color:var(--text);letter-spacing:-.01em}.hero-wrap{perspective:600px;margin-bottom:20px}.hero-card{position:relative;overflow:hidden;background:#f4f4f466;border:1px solid rgba(0,0,0,.06);color:var(--text);border:1px solid rgba(255,255,255,.9);border-radius:22px;padding:36px 30px 30px;box-shadow:var(--neu-deep),0 10px 40px #0000000f;transform:rotateX(3deg) rotateY(-1.5deg);transform-style:preserve-3d;transition:transform .5s ease}.hero-card:hover{transform:rotateX(1deg) rotateY(0) translateY(-3px);box-shadow:var(--neu-deep),0 0 36px var(--accent-glow)}.hero-card:before,.hero-card:after{content:"";position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.hero-card:before{width:320px;height:320px;top:-100px;right:-60px;background:radial-gradient(circle,rgba(74,124,255,.1),transparent 65%);animation:shimmer1 8s ease-in-out infinite alternate}.hero-card:after{width:260px;height:260px;bottom:-60px;left:-40px;background:radial-gradient(circle,rgba(26,138,74,.08),transparent 65%);animation:shimmer2 10s ease-in-out infinite alternate}.hero-top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.hero-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:var(--text-dim)}.hero-trend{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:8px;background:var(--success-light);color:var(--success)}.hero-amount{font-size:50px;font-weight:800;letter-spacing:-1.5px;line-height:1.05;margin-bottom:8px;color:var(--text)}.hero-sub{font-size:13.5px;color:var(--text-dim)}.hero-accounts{display:flex;gap:20px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(0,0,0,.07);flex-wrap:wrap}.hero-acct{font-size:11px;color:var(--text-dim);line-height:1.5}.hero-acct strong{font-weight:800;color:var(--text);font-size:13px;display:block}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px;margin-bottom:24px;transform:rotateX(3deg) rotateY(-1deg);transform-style:preserve-3d;transition:transform .5s ease}.stats-grid:hover{transform:rotateX(1.5deg) rotateY(0)}.stat-card{text-align:center;padding:20px 12px 18px;position:relative}.stat-card.alert{background:#c8860a0f;border:1px solid rgba(200,134,10,.15);border:1px solid rgba(200,134,10,.14)}.stat-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;box-shadow:var(--neu-in);margin-bottom:12px;color:var(--accent)}.stat-icon svg{width:20px;height:20px}.stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:4px}.stat-value{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.3px}.stat-subtext{font-size:10px;color:var(--text-dim);margin-top:4px;opacity:.6}.alert-icon{position:absolute;top:10px;right:10px;color:var(--warn)}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.chart-card{min-height:280px}.chart-card h3{margin-bottom:8px}.utility-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:4px}.cf-card{padding:22px}.cf-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.cf-title-group{display:flex;flex-direction:column;gap:2px}.cf-card-title{font-size:14px;font-weight:800}.cf-card-sub{font-size:11px;color:var(--text-dim)}.cf-net-badge{font-size:15px;font-weight:800;letter-spacing:-.3px;padding:6px 12px;border-radius:10px;background:var(--danger-light);color:var(--danger)}.cf-net-badge.positive{background:var(--success-light);color:var(--success)}.cf-rows{display:flex;flex-direction:column;gap:8px}.cf-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:10px;background:#00000006}.cf-row-label{font-size:12px;color:var(--text-dim);font-weight:600}.cf-row-val{font-size:13px;font-weight:800;letter-spacing:-.2px}.cf-row-cat{padding:3px 8px}.cf-cat-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.cf-savings-teaser{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 14px;border-radius:10px;background:#2ecc710f;border:1px solid rgba(46,204,113,.15);color:#1a8a4a;font-size:12px;font-weight:700;cursor:pointer;transition:background .2s}.cf-savings-teaser:hover{background:#2ecc711f}.health-card{padding:22px}.health-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.health-score-badge{display:flex;flex-direction:column;align-items:center;width:54px;height:54px;border-radius:14px;box-shadow:var(--neu-in);justify-content:center}.health-score-num{font-size:22px;font-weight:800;color:var(--accent);letter-spacing:-1px}.health-score-denom{font-size:9px;font-weight:700;color:var(--text-dim);letter-spacing:.5px}.health-metric-rows{display:flex;flex-direction:column;gap:9px}.health-metric-row{display:flex;align-items:center;gap:8px}.health-metric-label{font-size:11px;color:var(--text-dim);font-weight:600;min-width:110px}.health-bar-track{flex:1;height:5px;border-radius:3px;background:var(--bg);box-shadow:var(--neu-in);overflow:hidden}.health-bar-fill{height:100%;border-radius:3px;transition:width .8s ease}.health-metric-score{font-size:10px;font-weight:700;color:var(--text-dim);min-width:24px;text-align:right}.accounts-list{display:flex;flex-direction:column;gap:4px}.account-row{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#00000006;border-radius:var(--radius-md);transition:background .2s ease}.account-row:hover{background:#0000000d}.account-row.clickable{cursor:pointer;text-decoration:none}.account-row.clickable:active{background:#00000012;transform:scale(.99)}.account-row.alert{border-left:3px solid var(--warn)}.account-row.total{background:#4a7cff14;font-weight:600;margin-top:4px}.account-name{font-size:.8rem;color:var(--text-dim)}.account-value{font-size:.8rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.acct-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:14px}.acct-card{background:#efefef59;border:1px solid rgba(0,0,0,.06);color:var(--text);border-radius:var(--card-r);padding:20px 16px 18px;box-shadow:var(--neu-out);transition:transform .35s,box-shadow .35s;text-align:center}.acct-card:hover{transform:translateY(-3px);box-shadow:0 0 24px var(--accent-glow),var(--neu-deep)}.acct-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;box-shadow:var(--neu-in);margin-bottom:10px}.acct-label{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-dim);font-weight:700;margin-bottom:6px}.acct-val{font-size:22px;font-weight:800;letter-spacing:-.3px}.acct-sub{font-size:11px;color:var(--text-dim);opacity:.6;margin-top:3px}.decisions-list{display:flex;flex-direction:column;gap:14px}.decision-row{display:flex;gap:14px;padding:22px;background:#efefef59;border:1px solid rgba(0,0,0,.06);border-radius:var(--card-r);box-shadow:var(--neu-out);position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s}.decision-row:hover{transform:translateY(-2px);box-shadow:var(--neu-deep)}.decision-row:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;border-radius:4px 0 0 4px;background:linear-gradient(180deg,var(--warn-bg),var(--warn))}.decision-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:var(--neu-in);color:var(--warn);flex-shrink:0}.decision-title{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}.decision-desc{font-size:12.5px;color:var(--text-dim);line-height:1.55}.todo-list{display:flex;flex-direction:column;gap:6px}.todo-item{display:flex;align-items:center;gap:10px;padding:14px;background:#00000006;border-radius:var(--radius-md);cursor:pointer;transition:background .2s ease,transform .15s ease}.todo-arrow{margin-left:auto;color:var(--text-dim);opacity:.4;flex-shrink:0}.todo-item:hover{background:#0000000d}.todo-item:active{transform:scale(.99)}.todo-item.completed{opacity:.4}.todo-item.completed .todo-title{text-decoration:line-through}.todo-check{color:var(--text-dim);flex-shrink:0;margin-top:2px}.todo-item.completed .todo-check{color:var(--success)}.todo-content{flex:1;min-width:0}.todo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px}.priority-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.priority-badge.high{background:var(--danger-light);color:var(--danger)}.priority-badge.medium{background:var(--warn-light);color:var(--warn)}.priority-badge.low{background:var(--success-light);color:var(--success)}.todo-date{font-size:.7rem;color:var(--text-dim)}.todo-title{font-size:.85rem;color:var(--text);margin-bottom:2px}.todo-amount{font-size:.85rem;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.rules-list{display:flex;flex-direction:column;gap:8px}.rule-item{padding:14px;background:#4a7cff0f;border-radius:var(--radius-md);border-left:3px solid var(--accent)}.rule-title{font-size:.85rem;font-weight:700;color:var(--accent);margin-bottom:2px}.rule-desc{font-size:.75rem;color:var(--text-dim)}.calc-subtitle{font-size:.9rem;color:var(--text-dim);margin-bottom:20px}.comparison-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.comparison-card{padding:20px 16px;border-radius:var(--card-r);text-align:center;background:#efefef59;border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-out);transition:transform .35s,box-shadow .35s}.comparison-card:hover{transform:translateY(-2px);box-shadow:var(--neu-deep)}.comparison-card.mpiphp{border-left:4px solid var(--purple)}.comparison-card.vanguard{border-left:4px solid var(--success)}.comparison-card h4{font-size:.8rem;color:var(--text-dim);margin-bottom:8px;font-weight:600}.comparison-value{font-size:1.15rem;font-weight:800;color:var(--text);word-break:break-word;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.comparison-label{font-size:10px;color:var(--text-dim);margin-top:6px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.difference-callout{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:16px;background:var(--success-light);border-radius:var(--radius-md);text-align:center}.difference-label{font-size:.8rem;color:var(--text-dim)}.difference-value{font-size:1.1rem;font-weight:800;color:var(--success);font-variant-numeric:tabular-nums}.difference-note{font-size:.7rem;color:var(--text-dim);width:100%}.goal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center;margin-top:8px}.goal-stat{display:flex;flex-direction:column;gap:2px;padding:10px 4px;background:#00000006;border-radius:var(--radius-sm)}.goal-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.goal-value{font-size:.8rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.progress-bar-container{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px}.progress-bar{width:100%;height:8px;background:var(--bg);border-radius:4px;box-shadow:var(--neu-in);overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#4a7cff66,#88b4ff40);border-radius:4px;transition:width .6s ease;position:relative}.progress-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 2s ease-in-out infinite}.progress-bar-label{font-size:.8rem;font-weight:700;color:var(--accent)}.age-selector{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.age-selector label{font-size:.85rem;color:var(--text-dim)}.age-select{padding:14px 16px;border-radius:var(--radius-md);border:none;background:#efefef59;border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-in);color:var(--text);font-size:1rem;cursor:pointer;width:100%;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%236a6a7a'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.age-select:focus{outline:none;box-shadow:var(--neu-in),0 0 0 3px var(--accent-glow)}.pension-result{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pension-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px 8px;background:#efefef59;border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-out);border-radius:var(--radius-md);min-height:80px}.pension-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;font-weight:700;letter-spacing:.5px}.pension-value{font-size:1.1rem;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}.pension-details{display:flex;flex-direction:column;gap:8px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:14px;background:#00000006;border-radius:var(--radius-md)}.detail-label{font-size:.8rem;color:var(--text-dim)}.detail-value{font-size:.8rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.ai-advisor{display:flex;flex-direction:column;height:calc(100vh - 180px);min-height:400px;background:#efefef59;border:1px solid rgba(0,0,0,.06);border-radius:var(--card-r);box-shadow:var(--neu-out);overflow:hidden}.ai-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.ai-message{display:flex;gap:10px;max-width:95%}.ai-message.user{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--neu-in)}.ai-message.assistant .message-avatar{color:var(--accent)}.ai-message.user .message-avatar{color:var(--purple)}.message-content{background:#0000000a;padding:10px 14px;border-radius:var(--card-r)}.ai-message.user .message-content{background:#4a7cff14}.message-text{font-size:.85rem;line-height:1.6;color:var(--text)}.ai-message.user .message-text{white-space:pre-wrap}.md-h1{font-size:1.1rem;font-weight:700;margin:12px 0 6px;color:var(--text)}.md-h2{font-size:1rem;font-weight:700;margin:10px 0 5px;color:var(--text)}.md-h3{font-size:.9rem;font-weight:600;margin:8px 0 4px;color:var(--text)}.md-p{margin:4px 0}.md-spacer{height:6px}.md-list{margin:4px 0 4px 16px;padding:0}.md-list li{margin:2px 0}.md-code{background:#0000000f;padding:1px 5px;border-radius:4px;font-family:monospace;font-size:.82rem}.md-table-wrap{overflow-x:auto;margin:8px 0}.md-table{border-collapse:collapse;width:100%;font-size:.82rem}.md-table th{text-align:left;padding:6px 10px;border-bottom:1.5px solid rgba(0,0,0,.12);font-weight:600;color:var(--text)}.md-table td{padding:5px 10px;border-bottom:1px solid rgba(0,0,0,.06)}.md-table tr:hover td{background:#4a7cff0a}.message-text strong{font-weight:700;color:var(--text)}.message-loading{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:.8rem}.spinner{animation:spin 1s linear infinite}.suggested-questions{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px}.suggested-btn{padding:8px 14px;border:none;border-radius:20px;background:#0000000a;box-shadow:var(--neu-xs);color:var(--text-dim);font-size:.7rem;cursor:pointer;transition:all .2s ease}.suggested-btn:hover{background:#4a7cff14;color:var(--accent);box-shadow:var(--neu-sm)}.ai-input-container{display:flex;gap:10px;padding:12px;border-top:1px solid rgba(0,0,0,.06)}.ai-input{flex:1;padding:10px 16px;border:none;border-radius:20px;background:var(--bg);box-shadow:var(--neu-in);color:var(--text);font-size:.85rem;resize:none;outline:none;transition:box-shadow .2s ease}.ai-input:focus{box-shadow:var(--neu-in),0 0 0 3px var(--accent-glow)}.ai-input::placeholder{color:var(--text-dim)}.send-button{width:42px;height:42px;border:1.5px solid rgba(74,124,255,.35);border-radius:50%;background:#4a7cff1a;color:var(--accent);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;box-shadow:var(--neu-sm)}.send-button:hover:not(:disabled){box-shadow:var(--neu-deep);transform:translateY(-1px)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{opacity:.3;cursor:not-allowed}.rich-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:10px 0}.rich-metric{padding:10px 12px;border-radius:12px;text-align:center;display:flex;flex-direction:column;gap:2px}.rich-metric-value{font-size:1.1rem;font-weight:700;letter-spacing:-.02em}.rich-metric-label{font-size:.68rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.rich-progress{margin:8px 0}.rich-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.rich-progress-label{font-size:.78rem;font-weight:600;color:var(--text)}.rich-progress-pct{font-size:.78rem;font-weight:700}.rich-progress-track{height:8px;border-radius:4px;background:#0000000f;overflow:hidden}.rich-progress-fill{height:100%;border-radius:4px;transition:width .6s ease}.rich-actions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.rich-action-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1.5px solid rgba(74,124,255,.3);border-radius:20px;background:#4a7cff0f;color:var(--accent);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.rich-action-btn:hover{background:#4a7cff1f;border-color:#4a7cff80;transform:translateY(-1px);box-shadow:0 2px 8px #4a7cff26}.rich-callout{display:flex;gap:10px;padding:10px 14px;border-radius:10px;border:1px solid;margin:8px 0}.rich-callout-text{font-size:.82rem;line-height:1.5;color:var(--text)}.rich-callout-text p{margin:2px 0}.rich-comparison{border-radius:10px;overflow:hidden;border:1px solid rgba(0,0,0,.08);margin:10px 0}.rich-comp-header{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;background:#4a7cff0f;font-weight:600;font-size:.75rem;color:var(--text)}.rich-comp-row{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;border-top:1px solid rgba(0,0,0,.05)}.rich-comp-row:hover{background:#4a7cff08}.rich-comp-cell{padding:7px 10px;font-size:.78rem;color:var(--text)}.rich-comp-label{font-weight:600;color:var(--text-dim);font-size:.72rem}.recharts-legend-item-text{color:var(--text-dim)!important;font-size:.7rem!important}.recharts-cartesian-axis-tick-value{fill:var(--text-dim)!important;font-size:.65rem!important}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#0003}.future-header-card{text-align:center;background:#4a7cff1a;border:1px solid rgba(74,124,255,.2);border:1px solid rgba(74,124,255,.12)}.future-subtitle{font-size:.8rem;color:var(--text-dim);margin-bottom:16px}.future-stock-note{font-size:.7rem;color:var(--success);margin-top:8px}.future-total{display:flex;flex-direction:column;gap:4px}.future-total-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-weight:700}.future-total-value{font-size:2rem;font-weight:800;letter-spacing:-.03em;color:var(--accent)}.future-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:14px;width:100%}.future-stat-card{display:flex;align-items:center;gap:12px;padding:16px}.future-stat-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--neu-in)}.future-stat-icon.jeffrey{color:var(--accent)}.future-stat-icon.desarey{color:var(--purple)}.future-stat-content{display:flex;flex-direction:column;gap:2px}.future-stat-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.future-stat-value{font-size:1.1rem;font-weight:800;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.income-legend{display:flex;justify-content:center;gap:16px;margin-top:12px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--text-dim)}.legend-dot{width:10px;height:10px;border-radius:3px}.legend-dot.salary{background:#4a7cff80}.legend-dot.bonus{background:#1a8a4a80}.legend-dot.stock{background:#9b59b680}.future-details{display:flex;flex-direction:column;gap:8px}.future-details .detail-row.total{background:#4a7cff14;margin-top:4px}.future-details .detail-row.total .detail-label,.future-details .detail-row.total .detail-value{color:var(--accent);font-weight:700}.notes-card ul.future-notes{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}.future-notes li{font-size:.8rem;color:var(--text-dim);line-height:1.4}.bills-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.bills-header h3{margin-bottom:0}.bills-cal-all-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;cursor:pointer;border:none;background:#efefef59;border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-sm);color:var(--accent);transition:all .2s ease;font-family:inherit;text-transform:uppercase;letter-spacing:.3px}.bills-cal-all-btn:hover{box-shadow:var(--neu-deep);transform:translateY(-1px)}.bills-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.bills-summary-item{display:flex;flex-direction:column;gap:4px;padding:16px 10px;background:#00000006;border-radius:var(--radius-sm);text-align:center}.bills-summary-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-weight:600}.bills-summary-value{font-size:20px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.3px}.bills-paid-value{color:var(--success)}.bills-owed-value{color:var(--danger)}.bills-progress-wrap{margin-top:4px}.bills-progress-header{display:flex;justify-content:space-between;margin-bottom:8px;font-size:11px;color:var(--text-dim);font-weight:600}.bills-progress-bar{height:8px;background:var(--bg);border-radius:4px;box-shadow:var(--neu-in);overflow:hidden}.bills-progress-fill{height:100%;background:linear-gradient(90deg,#4a7cff66,#88b4ff40);border-radius:4px;transition:width .6s ease;position:relative}.bills-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 2s ease-in-out infinite}.bills-next-up{display:flex;justify-content:space-between;align-items:center;background:#4a7cff1a;border:1px solid rgba(74,124,255,.2);border:1px solid rgba(74,124,255,.12)}.bills-next-up.bills-all-paid{background:#1a8a4a1a;border:1px solid rgba(26,138,74,.25);border-color:#1a8a4a26}.bills-next-up.bills-all-paid .bills-next-label{color:var(--success)}.bills-next-label{font-size:10px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:2px}.bills-next-name{font-size:.9rem;font-weight:700;color:var(--text)}.bills-next-sub{font-size:.7rem;color:var(--text-dim);margin-top:2px;display:block}.bills-next-right{text-align:right;flex-shrink:0}.bills-next-amount{font-size:1.1rem;font-weight:800;color:var(--text);display:block;font-variant-numeric:tabular-nums}.bills-next-due{font-size:.7rem;color:var(--text-dim);margin-top:2px;display:block}.bills-list{display:flex;flex-direction:column;gap:10px}.bill-item{display:grid;grid-template-columns:28px 1fr auto auto auto;align-items:center;gap:14px;padding:16px 20px;background:#efefef59;border:1px solid rgba(0,0,0,.06);border-radius:var(--card-r);box-shadow:var(--neu-out);transition:opacity .4s ease,transform .35s,box-shadow .35s}.bill-item:hover{box-shadow:var(--neu-deep);transform:translateY(-1px)}.bill-item.bill-paid{opacity:.42}.bill-check{background:none;border:none;cursor:pointer;padding:0;color:var(--text-dim);display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .15s ease}.bill-check:hover{color:var(--accent)}.bill-check:active{transform:scale(.9)}.bill-check.checked{color:var(--success)}.bill-info-col{display:flex;flex-direction:column;min-width:0}.bill-info-col .bill-name{font-size:14px;font-weight:700;color:var(--text)}.bill-info-col .bill-sub{font-size:11px;color:var(--text-dim);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bill-due-badge{font-size:10px;font-weight:700;padding:4px 10px;border-radius:6px;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.bill-due-badge.urgent{background:var(--warn-light);color:var(--warn)}.bill-due-badge.soon{background:var(--danger-light);color:var(--danger)}.bill-due-badge.upcoming{background:#4a7cff14;color:var(--accent)}.bill-due-badge.later{background:var(--success-light);color:var(--success)}.bill-cal-btn{width:36px;height:36px;border-radius:10px;border:none;background:#efefef59;border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-xs);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-dim);flex-shrink:0}.bill-cal-btn:hover{box-shadow:var(--neu-sm);color:var(--accent)}.bill-amount-col{text-align:right;min-width:90px}.bill-amount-col .bill-amount{font-size:17px;font-weight:800;color:var(--text);display:block;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.bill-status{display:inline-block;font-size:10px;font-weight:700;padding:3px 8px;border-radius:6px;margin-top:3px;text-transform:uppercase;letter-spacing:.3px}.bill-status.status-unpaid{background:var(--warn-light);color:var(--warn)}.bill-status.status-paid{background:var(--success-light);color:var(--success)}.bills-obligations-total{display:flex;align-items:baseline;gap:2px}.bills-obligations-amount{font-size:22px;font-weight:900;color:var(--text);letter-spacing:-.5px}.bills-obligations-per{font-size:13px;color:var(--text-dim);font-weight:600}.bills-obl-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0;align-items:center}.bills-obl-chart{min-height:200px}.bills-obl-cats{display:flex;flex-direction:column;gap:10px}.bills-obl-cat-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.bills-obl-cat-left{display:flex;align-items:center;gap:8px}.bills-obl-cat-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.bills-obl-cat-name{font-size:13px;font-weight:700;color:var(--text)}.bills-obl-cat-right{display:flex;align-items:center;gap:8px}.bills-obl-cat-amount{font-size:13px;font-weight:800;color:var(--text)}.bills-obl-cat-pct{font-size:11px;color:var(--text-dim);font-weight:600;min-width:28px;text-align:right}.bills-obl-items{border-top:1px solid rgba(0,0,0,.06);padding-top:14px;display:flex;flex-direction:column;gap:8px}.bills-obl-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#00000004}.bills-obl-item-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.bills-obl-item-info{flex:1;min-width:0}.bills-obl-item-name{display:block;font-size:13px;font-weight:700;color:var(--text)}.bills-obl-item-note{display:block;font-size:11px;color:var(--text-dim);margin-top:1px}.bills-obl-item-amount{font-size:14px;font-weight:800;color:var(--text);white-space:nowrap}.bills-savings-card{border:1.5px solid rgba(46,204,113,.12)}.bills-savings-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;background:#2ecc7114;color:#1a8a4a;font-size:12px;font-weight:700;white-space:nowrap}.bills-savings-list{display:flex;flex-direction:column;gap:6px;margin-top:16px}.bills-savings-tip{border-radius:12px;background:#00000004;overflow:hidden;transition:background .2s}.bills-savings-tip.expanded{background:#00000008}.bills-savings-tip-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;cursor:pointer;gap:12px}.bills-savings-tip-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.bills-savings-tip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bills-savings-tip-title-group{display:flex;flex-direction:column;gap:2px}.bills-savings-tip-title{font-size:13px;font-weight:700;color:var(--text)}.bills-savings-tip-diff{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.bills-diff-easy{color:#1a8a4a}.bills-diff-medium{color:#f5c842}.bills-diff-hard{color:#e74c3c}.bills-diff-none{color:#9b59b6}.bills-savings-tip-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.bills-savings-tip-amount{font-size:14px;font-weight:800;color:#1a8a4a;white-space:nowrap}.bills-savings-tip-body{padding:0 14px 14px}.bills-savings-tip-note{font-size:13px;color:var(--text-dim);line-height:1.5;margin:0 0 10px}.bills-savings-tip-action{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:#4a7cff0f;border:1px solid rgba(74,124,255,.15);color:var(--accent);font-size:12px;font-weight:700}.bills-toast{position:fixed;bottom:40px;left:50%;transform:translate(-50%);background:#4a7cff1a;color:var(--accent);border:1.5px solid rgba(74,124,255,.3);border-radius:var(--radius-md);padding:10px 20px;font-size:.8rem;font-weight:600;z-index:200;animation:toastIn .3s cubic-bezier(.4,0,.2,1) forwards;box-shadow:var(--neu-deep);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.bills-obl-clickable{cursor:pointer;transition:all .15s;border-radius:10px;padding:12px 8px;margin:0 -8px}.bills-obl-clickable:hover{background:#00000008;box-shadow:var(--neu-xs)}.bills-obl-item-arrow{color:var(--text-dim);opacity:.4;flex-shrink:0;transition:opacity .15s}.bills-obl-clickable:hover .bills-obl-item-arrow{opacity:.8}.obl-modal-overlay{position:fixed;inset:0;z-index:2000;background:#00000059;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.obl-modal{background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:22px;width:100%;max-width:600px;max-height:85vh;overflow-y:auto;padding:0;box-shadow:var(--neu-deep);animation:modalSlide .25s cubic-bezier(.4,0,.2,1)}@keyframes modalSlide{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.obl-modal-header{display:flex;align-items:flex-start;gap:14px;padding:24px 24px 20px;border-bottom:1px solid rgba(0,0,0,.06);position:relative}.obl-modal-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.obl-modal-title-group{flex:1;min-width:0}.obl-modal-name{font-size:18px;font-weight:700;color:var(--text);margin:0;line-height:1.2}.obl-modal-headline{font-size:13px;color:var(--text-dim);margin:4px 0 0;line-height:1.3}.obl-modal-amount-block{text-align:right;flex-shrink:0;padding-right:36px}.obl-modal-amount{font-size:22px;font-weight:700;color:var(--text);display:block;line-height:1.1}.obl-modal-per{font-size:12px;color:var(--text-dim);font-weight:500}.obl-modal-close{position:absolute;top:20px;right:20px;background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim);transition:all .15s;box-shadow:var(--neu-xs)}.obl-modal-close:hover{color:var(--text);box-shadow:var(--neu-sm)}.obl-modal-section{padding:20px 24px;border-bottom:1px solid rgba(0,0,0,.04)}.obl-modal-section:last-child{border-bottom:none}.obl-modal-section-title{font-size:13px;font-weight:700;color:var(--text-dim);letter-spacing:.3px;margin:0 0 14px;display:flex;align-items:center;gap:8px}.obl-modal-details{display:flex;flex-direction:column;gap:10px}.obl-modal-detail-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.obl-modal-detail-label{font-size:13px;color:var(--text-dim);font-weight:500;flex-shrink:0}.obl-modal-detail-value{font-size:14px;color:var(--text);font-weight:600;text-align:right}.obl-modal-doc-count{background:#4a7cff1f;color:var(--accent);font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px}.obl-modal-docs-loading{font-size:13px;color:var(--text-dim);padding:20px 0;text-align:center}.obl-modal-docs-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 0;text-align:center}.obl-modal-docs-empty svg{color:#0000001f}.obl-modal-docs-empty span{font-size:14px;color:var(--text-dim)}.obl-modal-docs-hint{font-size:12px;color:var(--text-dim);opacity:.7}.obl-modal-docs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.obl-modal-doc{cursor:pointer;text-align:center;transition:all .15s;border-radius:12px;padding:8px}.obl-modal-doc:hover{background:#00000008;box-shadow:var(--neu-xs)}.obl-modal-doc-thumb{width:100%;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--bg);border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-xs);margin-bottom:6px;display:flex;align-items:center;justify-content:center}.obl-modal-doc-thumb img{width:100%;height:100%;object-fit:cover}.obl-modal-doc-icon{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-dim)}.obl-modal-doc-ext{font-size:10px;font-weight:700;color:var(--text-dim);opacity:.6}.obl-modal-doc-name{font-size:11px;color:var(--text);font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.obl-modal-tips{display:flex;flex-direction:column;gap:8px}.obl-modal-tip{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--text-dim);line-height:1.4;padding:10px 12px;border-radius:10px;background:#1a8a4a0f;border:1px solid rgba(26,138,74,.12)}.obl-modal-tip svg{color:var(--success);flex-shrink:0;margin-top:2px}@media(max-width:680px){.header{padding:16px 14px 14px}.main-content{padding:20px 14px 30px}.hero-card{padding:28px 22px 24px;transform:none}.hero-card:hover{transform:translateY(-2px)}.hero-amount{font-size:36px}.hero-accounts{flex-direction:column;gap:8px}.stats-grid{transform:none;grid-template-columns:repeat(2,1fr)}.stats-grid:hover{transform:none}.charts-grid,.utility-row{grid-template-columns:1fr}.bills-summary-grid{grid-template-columns:repeat(2,1fr)}.bill-item{grid-template-columns:28px 1fr auto;gap:8px;padding:14px}.bill-due-badge,.bill-cal-btn{display:none}.bill-amount-col{grid-column:2 / -1;text-align:left;display:flex;align-items:center;gap:8px;min-width:0}.bills-next-up{flex-direction:column;align-items:flex-start;gap:8px}.bills-next-right{text-align:left}.bills-obl-layout{grid-template-columns:1fr}.bills-obl-chart{min-height:180px}.bills-savings-badge{font-size:10px;padding:4px 8px}.bills-savings-tip-header{padding:10px 12px}.bills-savings-tip-title{font-size:12px}.bills-savings-tip-amount{font-size:13px}.future-stats-grid,.comparison-grid{grid-template-columns:1fr}.app-container{padding-bottom:0}}@media(min-width:640px)and (max-width:1023px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1024px){.stats-grid{grid-template-columns:repeat(5,1fr)}.tab-button{padding:11px 20px}}.car-todo-card{padding:0!important;overflow:hidden}.car-todo-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.car-todo-header:hover{background:#00000008}.car-todo-header-left{display:flex;align-items:center;gap:10px;color:var(--accent);font-weight:700;font-size:.95rem}.car-todo-title{color:var(--text)}.car-todo-count{background:#4a7cff1a;border:1px solid rgba(74,124,255,.25);color:var(--accent);font-size:.75rem;padding:2px 8px;border-radius:20px;font-weight:600}.car-todo-header-right{display:flex;align-items:center;gap:10px;color:var(--text-dim)}.car-todo-progress-mini{width:80px;height:6px;border-radius:3px;background:#0000000f}.car-todo-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#4a7cff80,#1a8a4a80);transition:width .3s ease}.car-todo-list{padding:0 14px 14px}.car-todo-item{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;border-bottom:1px solid rgba(0,0,0,.04)}.car-todo-item:last-child{border-bottom:none}.car-todo-item:hover{background:#00000006}.car-todo-item.done{opacity:.55}.car-todo-item.done .car-todo-text{text-decoration:line-through}.car-todo-check{flex-shrink:0;margin-top:1px;color:var(--text-dim)}.car-todo-item.done .car-todo-check{color:var(--success)}.car-todo-content{flex:1;min-width:0}.car-todo-text{font-size:.88rem;color:var(--text);line-height:1.35;transition:color .15s}.car-todo-meta{display:flex;align-items:center;gap:8px;margin-top:4px}.car-todo-cat{font-size:.68rem;font-weight:600;padding:1px 7px;border-radius:6px;border:1px solid;text-transform:capitalize}.car-todo-deadline{font-size:.72rem;color:var(--text-dim);font-weight:500}.vs-hero-amount{color:var(--success)}.vs-nav-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:16px}.vs-nav-card{display:flex;align-items:center;gap:16px;width:100%;background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:var(--card-r);padding:20px;cursor:pointer;box-shadow:var(--neu-out);transition:box-shadow .25s ease,transform .25s ease;text-align:left;font-family:inherit}.vs-nav-card:hover{box-shadow:var(--neu-deep);transform:translateY(-2px)}.vs-nav-card:active{transform:translateY(0);box-shadow:var(--neu-in)}.vs-nav-card-icon{flex-shrink:0;width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center}.vs-nav-icon-green{background:#1a8a4a1a;color:#1a8a4a}.vs-nav-icon-blue{background:#4a7cff1a;color:#4a7cff}.vs-nav-icon-amber{background:#c8860a1a;color:#c8860a}.vs-nav-card-body{flex:1;min-width:0}.vs-nav-card-title{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px;letter-spacing:-.01em}.vs-nav-card-desc{font-size:13px;color:var(--text-dim);line-height:1.4}.vs-nav-card-arrow{flex-shrink:0;color:var(--text-dim);opacity:.4;margin-left:auto}.vs-urgency-card{background:#c8860a14;border:1px solid rgba(200,134,10,.2);border:1px solid rgba(200,134,10,.14)}.vs-urgency-header{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:var(--warn);margin-bottom:14px}.vs-timeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:16px}.vs-timeline:before{content:"";position:absolute;left:5px;top:4px;bottom:4px;width:2px;background:#c8860a33;border-radius:1px}.vs-timeline-item{display:flex;align-items:flex-start;gap:12px;padding:8px 0;position:relative}.vs-timeline-dot{width:10px;height:10px;border-radius:50%;background:var(--bg);border:2px solid rgba(200,134,10,.3);flex-shrink:0;margin-top:3px;position:relative;z-index:1}.vs-timeline-item.urgent .vs-timeline-dot{background:var(--warn);border-color:var(--warn)}.vs-timeline-content{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.vs-timeline-date{font-size:11px;font-weight:700;color:var(--warn);min-width:100px}.vs-timeline-event{font-size:13px;color:var(--text)}.vs-timeline-item.urgent .vs-timeline-event{font-weight:700}.vs-flow-row{display:flex;align-items:center;gap:8px;margin-bottom:14px}.vs-flow-card{flex:1;text-align:center;padding:20px 14px;min-width:0}.vs-flow-icon{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--neu-in);margin-bottom:10px}.sell-icon{color:var(--accent)}.buy-icon,.net-icon{color:var(--success)}.vs-flow-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dim);margin-bottom:4px}.vs-flow-vehicle{font-size:13px;font-weight:700;color:var(--text);margin-bottom:6px;line-height:1.3}.vs-flow-amount{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.3px;font-variant-numeric:tabular-nums}.vs-flow-amount.positive{color:var(--success)}.vs-flow-sub{font-size:11px;color:var(--text-dim);margin-top:4px;line-height:1.4}.vs-flow-range{font-size:10px;color:var(--text-dim);margin-top:4px;opacity:.7}.vs-flow-arrow{color:var(--text-dim);opacity:.4;flex-shrink:0}.vs-payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.vs-payment-card{text-align:center;padding:22px 14px;position:relative}.vs-payment-card.recommended{background:#1a8a4a1a;border:1px solid rgba(26,138,74,.25);border:1px solid rgba(26,138,74,.15)}.vs-recommended-badge{position:absolute;top:10px;right:10px;font-size:9px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--success-light);color:var(--success);text-transform:uppercase;letter-spacing:.3px}.vs-payment-label{font-size:12px;font-weight:700;color:var(--text-dim);margin-bottom:8px}.vs-payment-amount{font-size:28px;font-weight:800;color:var(--text);letter-spacing:-.5px;font-variant-numeric:tabular-nums}.vs-payment-per{font-size:13px;font-weight:600;color:var(--text-dim)}.vs-payment-note{font-size:11px;color:var(--text-dim);margin-top:6px}.vs-payment-interest{font-size:11px;font-weight:700;color:var(--danger);margin-top:4px}.vs-cashflow-card{padding:22px}.vs-cf-rows{display:flex;flex-direction:column;gap:6px}.vs-cf-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#00000006;border-radius:var(--radius-sm)}.vs-cf-row.highlight{background:#e74c3c0f}.vs-cf-row.total{background:var(--success-light);margin-top:4px}.vs-cf-label{font-size:12px;color:var(--text-dim);font-weight:600}.vs-cf-val{font-size:13px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.vs-cf-val.positive{color:var(--success)}.vs-cf-val.negative{color:var(--danger)}.vs-cf-val.going-away{color:var(--text-dim);text-decoration:line-through}.vs-cf-explain{font-size:12px;color:var(--text-dim);line-height:1.6;margin-top:14px;padding:12px 14px;background:#00000006;border-radius:var(--radius-sm)}.vs-tax-hero{background:#1a8a4a1a;border:1px solid rgba(26,138,74,.25);border:1px solid rgba(26,138,74,.15)}.vs-tax-hero-row{display:flex;justify-content:space-between;align-items:center}.vs-tax-hero-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:4px}.vs-tax-hero-amount{font-size:2rem;font-weight:800;color:var(--success);letter-spacing:-.03em}.vs-tax-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:8px 14px;border-radius:10px;background:var(--success-light);color:var(--success)}.vs-tax-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.vs-tax-card{padding:22px}.vs-tax-card.federal{border-left:4px solid var(--accent)}.vs-tax-card.california{border-left:4px solid var(--purple)}.vs-tax-detail-rows{display:flex;flex-direction:column;gap:6px}.vs-tax-detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#00000006;border-radius:var(--radius-sm);font-size:11.5px;color:var(--text-dim)}.vs-tax-detail-row.total{background:#0000000d;font-weight:700;color:var(--text)}.vs-tax-detail-row.savings{background:var(--success-light);font-weight:700;color:var(--success)}.vs-tax-detail-val{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.vs-tax-detail-row.savings .vs-tax-detail-val{color:var(--success)}.vs-tax-explain{font-size:11.5px;color:var(--text-dim);line-height:1.6;margin-top:12px;padding:10px 12px;background:#00000006;border-radius:var(--radius-sm)}.vs-why-card{background:#c8860a14;border:1px solid rgba(200,134,10,.2);border:1px solid rgba(200,134,10,.14)}.vs-why-header{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:var(--warn);margin-bottom:14px}.vs-why-content p{font-size:13px;color:var(--text);line-height:1.6;margin:0 0 14px}.vs-why-content p.vs-why-bottom{margin-top:14px;font-size:12px;color:var(--text-dim)}.vs-why-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vs-why-stat{text-align:center;padding:14px 10px;border-radius:var(--radius-md);background:#fff6}.vs-why-stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-bottom:6px}.vs-why-stat-value{font-size:18px;font-weight:800;letter-spacing:-.3px;font-variant-numeric:tabular-nums}.vs-why-stat.danger .vs-why-stat-value{color:var(--danger)}.vs-why-stat.success .vs-why-stat-value{color:var(--success)}.vs-why-stat.accent .vs-why-stat-value{color:var(--accent)}.vs-why-stat-sub{font-size:10px;color:var(--text-dim);margin-top:3px}.vs-fidelity-card{background:#4a7cff1a;border:1px solid rgba(74,124,255,.2);border:1px solid rgba(74,124,255,.12)}.vs-fidelity-hero{display:flex;align-items:center;gap:14px;margin-bottom:14px;color:var(--accent)}.vs-fidelity-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim)}.vs-fidelity-amount{font-size:2rem;font-weight:800;color:var(--accent);letter-spacing:-.03em}.vs-fidelity-explain{font-size:12.5px;color:var(--text);line-height:1.6;margin-bottom:14px}.vs-fidelity-growth-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vs-fidelity-growth{text-align:center;padding:12px 8px;border-radius:var(--radius-sm);background:#fff6}.vs-fidelity-growth-label{font-size:10px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:4px}.vs-fidelity-growth-val{font-size:16px;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}.vs-recommendation{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:12px 14px;background:var(--success-light);border-radius:var(--radius-sm);font-size:12px;color:var(--success);line-height:1.5;font-weight:600}.vs-recommendation svg{flex-shrink:0;margin-top:1px}.vs-requirements{display:flex;flex-direction:column;gap:8px}.vs-requirement-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#00000006;border-radius:var(--radius-sm);font-size:12.5px;color:var(--text);line-height:1.5}.vs-requirement-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:var(--neu-in);color:var(--accent);flex-shrink:0}.irs-divider{display:flex;align-items:center;gap:14px;margin:28px 0 18px}.irs-divider-line{flex:1;height:2px;background:linear-gradient(90deg,transparent,rgba(231,76,60,.2),transparent)}.irs-divider-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--danger);white-space:nowrap}.irs-urgency-card{background:#e74c3c14;border:1px solid rgba(231,76,60,.2);border:1px solid rgba(231,76,60,.15)}.irs-urgency-content p{font-size:13px;color:var(--text);line-height:1.6;margin:0 0 12px}.irs-formula{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;color:var(--text-dim);padding:10px 14px;background:#fff6;border-radius:var(--radius-sm)}.irs-balance-hero{background:#e74c3c14;border:1px solid rgba(231,76,60,.2);border:1px solid rgba(231,76,60,.15)}.irs-balance-amount{font-size:2rem;font-weight:800;color:var(--danger);letter-spacing:-.03em}.irs-history-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:8px 14px;border-radius:10px;background:var(--success-light);color:var(--success)}.irs-history-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.irs-history-item{text-align:center;padding:10px 8px;border-radius:var(--radius-sm);background:#fff6}.irs-history-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);display:block;margin-bottom:4px}.irs-history-val{font-size:14px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.irs-history-val.positive{color:var(--success)}.irs-paydown-card{padding:22px}.irs-paydown-sub{font-size:12.5px;color:var(--text-dim);line-height:1.5;margin:0 0 14px}.irs-paydown-table{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.irs-paydown-header{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim)}.irs-paydown-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:8px;padding:10px 12px;background:#00000006;border-radius:var(--radius-sm);font-size:12px;color:var(--text);align-items:center;font-variant-numeric:tabular-nums}.irs-paydown-row.recommended{background:var(--success-light);font-weight:700}.irs-paydown-extra{display:flex;flex-direction:column;gap:2px}.irs-paydown-label{font-size:9px;font-weight:600;color:var(--text-dim)}.irs-paydown-row.recommended .irs-paydown-label{color:var(--success)}.irs-paydown-monthly{font-weight:700}.irs-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.irs-decision-card{padding:22px}.irs-decision-card.irs-recommended{background:#1a8a4a1a;border:1px solid rgba(26,138,74,.25);border:1px solid rgba(26,138,74,.15)}.irs-decision-header{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:var(--text);margin-bottom:14px}.irs-decision-stats{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.irs-decision-stat{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#00000006;border-radius:var(--radius-sm)}.irs-recommended .irs-decision-stat{background:#fff6}.irs-decision-stat-label{font-size:11px;color:var(--text-dim);font-weight:600}.irs-decision-stat-val{font-size:13px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.irs-decision-stat-val.positive{color:var(--success)}.irs-decision-stat-val.negative{color:var(--danger)}.irs-decision-explain{font-size:11.5px;color:var(--text-dim);line-height:1.6;margin:0}.irs-combined-card{padding:22px}.irs-combined-scenarios{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.irs-combined-col{display:flex;flex-direction:column;gap:4px}.irs-combined-col.recommended{background:#1a8a4a1a;border:1px solid rgba(26,138,74,.25);border:1px solid rgba(26,138,74,.15);border-radius:var(--radius-md);padding:14px}.irs-combined-col-header{font-size:12px;font-weight:800;color:var(--text);margin-bottom:8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.irs-combined-savings{font-size:12px;font-weight:700;color:var(--success);text-align:center;margin-top:8px;padding:8px;background:#fff6;border-radius:var(--radius-sm)}.irs-attorney-card{padding:22px}.irs-attorney-firm{font-size:13px;color:var(--text-dim);margin-bottom:12px}.irs-attorney-contacts{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.irs-attorney-contact{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--accent);font-weight:600}.irs-abatements{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:#00000006;border-radius:var(--radius-sm);font-size:11.5px;color:var(--text-dim);line-height:1.5}@media(max-width:680px){.vs-flow-row{flex-direction:column;gap:6px}.vs-flow-arrow{transform:rotate(90deg)}.vs-flow-card{width:100%}.vs-payment-grid,.vs-tax-grid,.vs-why-stats,.irs-decision-grid,.irs-combined-scenarios,.irs-history-row{grid-template-columns:1fr}.vs-payment-amount{font-size:22px}.vs-tax-hero-amount,.vs-fidelity-amount,.irs-balance-amount{font-size:1.5rem}.irs-paydown-header,.irs-paydown-row{grid-template-columns:1.2fr 1fr 1fr .8fr;font-size:10px;gap:4px;padding:8px}}@supports (padding-bottom: env(safe-area-inset-bottom)){@media(max-width:680px){.tab-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}}}.accounts-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.accounts-header-row h3{margin:0;font-size:1rem;font-weight:700;color:var(--text)}.accounts-header-actions{display:flex;align-items:center;gap:8px}.accounts-refresh-btn{width:36px;height:36px;border-radius:10px;border:none;background:#efefef59;border:1px solid rgba(0,0,0,.06);box-shadow:var(--neu-xs);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-dim);flex-shrink:0}.accounts-refresh-btn:hover{box-shadow:var(--neu-sm);color:var(--accent)}.accounts-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.plaid-tab{max-width:720px;margin:0 auto;padding:0 4px}.plaid-tab .neu-card{border-radius:18px;background:#ffffff80;box-shadow:6px 6px 14px #0000000f,-6px -6px 14px #fffc;padding:20px}.plaid-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:12px}.plaid-header h3{font-size:1.05rem;font-weight:800;color:var(--text);margin:0}.plaid-header-left{display:flex;flex-direction:column;gap:2px}.plaid-account-count{font-size:.72rem;color:var(--text-dim);font-weight:500}.plaid-header-actions{display:flex;align-items:center;gap:8px}.plaid-refresh-btn{width:34px;height:34px;border-radius:10px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:#0000000a;color:var(--text-dim);box-shadow:var(--neu-sm);transition:all .2s ease;font-family:inherit}.plaid-refresh-btn:hover:not(:disabled){box-shadow:var(--neu-out);color:var(--accent)}.plaid-refresh-btn:disabled{opacity:.4;cursor:not-allowed}.plaid-connect-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:12px;font-size:.8rem;font-weight:700;cursor:pointer;border:none;font-family:inherit;transition:all .2s ease}.plaid-connect-btn.header{padding:8px 14px;font-size:.72rem;background:#4a7cff1a;color:var(--accent);border:1px solid rgba(74,124,255,.2);border-radius:10px}.plaid-connect-btn.header:hover:not(:disabled){background:#4a7cff2e}.plaid-connect-btn.primary{background:#4a7cff1f;color:var(--accent);border:1px solid rgba(74,124,255,.25);padding:12px 24px}.plaid-connect-btn.primary:hover:not(:disabled){background:#4a7cff33;transform:translateY(-1px)}.plaid-connect-btn:disabled{opacity:.5;cursor:not-allowed}.plaid-status{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;font-size:.78rem;font-weight:600;margin-top:10px}.plaid-status-info{background:#4a7cff14;color:var(--accent)}.plaid-status-success{background:#1a8a4a1a;color:#1a8a4a}.plaid-status-error{background:#e74c3c1a;color:#e74c3c}.plaid-empty-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 24px;gap:8px}.plaid-empty-icon{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;color:var(--accent);box-shadow:var(--neu-in);margin-bottom:8px}.plaid-empty-card h4{font-size:1.05rem;font-weight:700;color:var(--text);margin:0}.plaid-empty-card p{font-size:.82rem;color:var(--text-dim);margin:0 0 18px;max-width:320px;line-height:1.5}.plaid-loading-card{display:flex;flex-direction:column;align-items:center;padding:60px 24px;gap:12px}.plaid-loading-card p{font-size:.85rem;color:var(--text-dim);margin:0}.pa-overview-card{margin-bottom:16px}.pa-overview-grid{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center}.pa-donut-wrap{position:relative}.pa-donut-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.pa-donut-total{font-size:1.15rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.pa-donut-label{font-size:.6rem;color:var(--text-dim);font-weight:600;text-transform:uppercase;letter-spacing:.8px}.pa-overview-stats{display:flex;flex-direction:column;gap:12px}.pa-overview-total{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--text-dim);font-weight:600}.pa-overview-total-amount{font-size:1.3rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.pa-overview-updated{font-size:.65rem;color:var(--text-dim)}.pa-legend{display:flex;flex-direction:column;gap:6px}.pa-legend-item{display:flex;align-items:center;gap:8px;font-size:.76rem}.pa-legend-dot{width:8px;height:8px;border-radius:3px;flex-shrink:0}.pa-legend-name{flex:1;color:var(--text);font-weight:600}.pa-legend-value{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.pa-chart-tooltip{background:#f0f0f0eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(0,0,0,.06);border-radius:10px;padding:8px 12px;box-shadow:0 4px 16px #00000014}.pa-tooltip-label{font-size:.65rem;color:var(--text-dim);font-weight:600}.pa-tooltip-value{font-size:.85rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.pa-type-card{margin-bottom:16px}.pa-type-header{margin-bottom:14px}.pa-section-label{font-size:.7rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.8px}.pa-type-bars{display:flex;flex-direction:column;gap:10px}.pa-type-bar-row{display:flex;align-items:center;gap:10px}.pa-type-bar-label{display:flex;align-items:center;gap:5px;font-size:.76rem;font-weight:600;color:var(--text);min-width:100px;flex-shrink:0}.pa-type-bar-icon{display:flex;align-items:center}.pa-type-bar-track{flex:1;height:8px;border-radius:4px;background:#0000000a;overflow:hidden}.pa-type-bar-fill{height:100%;border-radius:4px;transition:width .8s ease}.pa-type-bar-value{font-size:.76rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;min-width:60px;text-align:right}.plaid-institution-card{margin-bottom:16px;border:1px solid rgba(0,0,0,.04)}.plaid-inst-header{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid rgba(0,0,0,.05);margin-bottom:14px}.plaid-inst-logo-wrap{width:44px;height:44px;flex-shrink:0}.plaid-inst-logo{width:44px;height:44px;border-radius:12px;object-fit:contain;background:#fff;box-shadow:0 2px 8px #00000014}.plaid-inst-logo-fallback{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.plaid-inst-info{flex:1;min-width:0}.plaid-inst-name{display:block;font-size:.95rem;font-weight:800;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plaid-inst-tagline{display:block;font-size:.7rem;color:var(--text-dim);margin-top:1px}.plaid-inst-total{text-align:right;flex-shrink:0}.plaid-inst-total-value{display:block;font-size:1.15rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.plaid-inst-total-label{display:block;font-size:.65rem;color:var(--text-dim);margin-top:1px}.plaid-accounts-list{display:flex;flex-direction:column;gap:8px}.plaid-account-row{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:#00000006;box-shadow:inset 2px 2px 4px #00000008,inset -2px -2px 4px #ffffffb3;transition:all .2s ease}.plaid-account-row-clickable{cursor:pointer}.plaid-account-row-clickable:hover{background:#0000000d;transform:translateY(-1px);box-shadow:inset 2px 2px 4px #00000005,0 2px 8px #0000000a}.plaid-acct-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.plaid-acct-icon{width:32px;height:32px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.plaid-acct-details{min-width:0;flex:1}.plaid-acct-name{display:block;font-size:.84rem;font-weight:650;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plaid-acct-meta{display:flex;align-items:center;gap:6px;margin-top:3px}.plaid-acct-badge{font-size:9px;font-weight:700;padding:2px 8px;border-radius:6px;text-transform:capitalize;letter-spacing:.3px;flex-shrink:0}.plaid-acct-official{font-size:.68rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plaid-acct-right-enhanced{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:8px}.plaid-acct-balance-col{text-align:right}.plaid-acct-balance{display:block;font-size:.92rem;font-weight:750;color:var(--text);font-variant-numeric:tabular-nums}.plaid-acct-available{display:block;font-size:.62rem;color:var(--text-dim);margin-top:1px}.plaid-acct-chevron{color:var(--text-dim);opacity:.4;flex-shrink:0}.pa-sparkline{flex-shrink:0}.plaid-total-card{background:#4a7cff0f;border:1px solid rgba(74,124,255,.12);margin-top:8px}.plaid-total-row{display:flex;justify-content:space-between;align-items:center}.plaid-total-left{display:flex;flex-direction:column;gap:2px}.plaid-total-label{font-size:.7rem;color:var(--text-dim);font-weight:700;text-transform:uppercase;letter-spacing:.8px}.plaid-total-sub{font-size:.65rem;color:var(--text-dim)}.plaid-total-right{text-align:right}.plaid-total-value{display:block;font-size:1.5rem;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.plaid-total-updated{display:block;font-size:.65rem;color:var(--text-dim);margin-top:2px}.pa-modal-overlay{position:fixed;inset:0;z-index:9999;background:#00000059;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;animation:paOverlayIn .2s ease}@keyframes paOverlayIn{0%{opacity:0}to{opacity:1}}.pa-modal-sheet{width:100%;max-width:540px;max-height:88vh;background:var(--surface, #eaeaea);border-radius:20px 20px 0 0;box-shadow:0 -8px 40px #0000001f;overflow-y:auto;animation:paSheetIn .3s ease;-webkit-overflow-scrolling:touch}@keyframes paSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.pa-modal-handle{width:36px;height:4px;border-radius:2px;background:#00000026;margin:10px auto 4px}.pa-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.pa-modal-header-left{display:flex;align-items:center;gap:12px}.pa-modal-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center}.pa-modal-title{font-size:1rem;font-weight:800;color:var(--text)}.pa-modal-subtitle{font-size:.72rem;color:var(--text-dim);margin-top:1px}.pa-modal-close{width:32px;height:32px;border-radius:10px;border:none;background:#0000000d;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-family:inherit}.pa-modal-close:hover{background:#0000001a}.pa-modal-body{padding:20px}.pa-modal-balance-hero{text-align:center;padding:16px 0 20px;border-bottom:1px solid rgba(0,0,0,.05);margin-bottom:20px}.pa-modal-balance-amount{font-size:2.2rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.03em}.pa-modal-balance-label{font-size:.7rem;color:var(--text-dim);font-weight:600;margin-top:2px}.pa-modal-balance-avail{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:#1a8a4a;font-weight:600;margin-top:6px;background:#1a8a4a14;padding:4px 12px;border-radius:8px}.pa-modal-stats{display:flex;gap:20px;justify-content:center;padding:16px 0;margin-bottom:16px;border-bottom:1px solid rgba(0,0,0,.05)}.pa-modal-stat{display:flex;flex-direction:column;align-items:center;gap:8px}.pa-modal-stat-info{text-align:center}.pa-modal-stat-label{display:block;font-size:.65rem;color:var(--text-dim);font-weight:600}.pa-modal-stat-value{display:block;font-size:.76rem;font-weight:700}.pa-ring-wrap{position:relative}.pa-ring-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center}.pa-ring-label{font-size:.82rem;font-weight:800}.pa-ring-sublabel{font-size:.55rem;color:var(--text-dim)}.pa-modal-section{margin-bottom:20px}.pa-modal-section-header{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px;margin-bottom:12px}.pa-modal-chart-wrap{border-radius:14px;padding:10px 4px;background:#00000005;box-shadow:inset 2px 2px 4px #00000008,inset -2px -2px 4px #fff9}.pa-breakdown-bar{display:flex;height:28px;border-radius:8px;overflow:hidden;margin-bottom:10px}.pa-breakdown-segment{display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;color:#fff;transition:width .6s ease}.pa-breakdown-available{background:#1a8a4a80}.pa-breakdown-held{background:#e74c3c66}.pa-breakdown-legend{display:flex;gap:16px}.pa-breakdown-item{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--text);font-weight:600}.pa-breakdown-dot{width:8px;height:8px;border-radius:3px}.pa-modal-details{border-radius:14px;overflow:hidden;background:#00000005;box-shadow:inset 2px 2px 4px #00000005,inset -2px -2px 4px #ffffff80}.pa-detail-row{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;border-bottom:1px solid rgba(0,0,0,.04)}.pa-detail-row:last-child{border-bottom:none}.pa-detail-label{font-size:.76rem;color:var(--text-dim);font-weight:600}.pa-detail-value{font-size:.78rem;color:var(--text);font-weight:650;text-align:right}@media(max-width:680px){.plaid-header{flex-wrap:wrap}.plaid-inst-header{flex-wrap:wrap;gap:10px}.pa-overview-grid{grid-template-columns:1fr}.pa-donut-wrap{max-width:200px;margin:0 auto}.plaid-account-row{flex-direction:column;align-items:flex-start;gap:8px}.plaid-acct-right-enhanced{margin-left:42px}.plaid-total-row{flex-direction:column;gap:8px;text-align:center}.plaid-total-right{text-align:center}.pa-modal-stats{flex-wrap:wrap}.pa-modal-sheet{max-height:92vh}}.manual-accounts{display:flex;flex-direction:column;gap:14px}.ma-hero{background:#f2f2f259;border:1px solid rgba(0,0,0,.06);border-radius:var(--card-r);padding:24px;box-shadow:var(--neu-deep)}.ma-hero-main{text-align:center;margin-bottom:20px}.ma-hero-label{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-dim);font-weight:700;margin-bottom:4px}.ma-hero-amount{font-size:2.4rem;font-weight:800;color:var(--text);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.ma-hero-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ma-hero-box{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;box-shadow:var(--neu-sm)}.ma-hero-box.ma-assets{background:#1a8a4a14;border:1px solid rgba(26,138,74,.2)}.ma-hero-box.ma-debt{background:#e74c3c0f;border:1px solid rgba(231,76,60,.18)}.ma-box-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.ma-assets .ma-box-icon{background:#2ecc7126;color:var(--success)}.ma-debt .ma-box-icon{background:#e74c3c26;color:var(--danger)}.ma-box-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:var(--text-dim);font-weight:700}.ma-box-value{font-size:1.15rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.ma-quick-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ma-qstat{display:flex;align-items:center;gap:10px;padding:14px;border-radius:var(--card-r);box-shadow:var(--neu-out);background:var(--bg);color:var(--text-dim)}.ma-qstat svg{flex-shrink:0}.ma-qstat-label{font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);font-weight:700}.ma-qstat-value{font-size:.95rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.ma-section-hdr{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:700;color:var(--text);padding:0 4px;margin-top:8px}.ma-add-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:1.5px solid rgba(74,124,255,.3);color:var(--accent);font-size:12px;font-weight:700;padding:6px 14px;border-radius:10px;cursor:pointer;font-family:inherit;transition:background .2s}.ma-add-btn:hover{background:#4a7cff14}.ma-add-form{padding:18px;display:flex;flex-direction:column;gap:12px}.ma-form-row{display:flex;flex-direction:column;gap:4px}.ma-form-row label{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);font-weight:700}.ma-form-row-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ma-input,.ma-select{background:var(--bg);border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:10px 14px;font-size:.85rem;font-family:inherit;color:var(--text);box-shadow:var(--neu-in);outline:none;transition:border-color .2s}.ma-input:focus,.ma-select:focus{border-color:var(--accent)}.ma-form-actions{display:flex;gap:10px;padding-top:4px}.ma-btn-save{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1.5px solid rgba(46,204,113,.4);color:var(--success);font-size:13px;font-weight:700;padding:8px 18px;border-radius:10px;cursor:pointer;font-family:inherit;transition:background .2s}.ma-btn-save:hover{background:#2ecc711a}.ma-btn-cancel{background:transparent;border:1.5px solid rgba(0,0,0,.1);color:var(--text-dim);font-size:13px;font-weight:600;padding:8px 18px;border-radius:10px;cursor:pointer;font-family:inherit;transition:background .2s}.ma-btn-cancel:hover{background:#0000000a}.ma-inst-card{margin-bottom:0}.ma-inst-header{display:flex;align-items:center;gap:10px;cursor:pointer;padding:2px 0;color:var(--text-dim)}.ma-inst-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ma-inst-name{font-size:.9rem;font-weight:700;color:var(--text);flex:1}.ma-inst-count{font-size:10px;font-weight:700;color:var(--text-dim);background:#0000000d;padding:2px 8px;border-radius:8px}.ma-inst-total{font-size:.95rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.ma-inst-total.negative{color:var(--danger)}.ma-acct-list{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.ma-acct-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:var(--radius-sm);background:#00000005;transition:background .15s}.ma-acct-row:hover{background:#0000000a}.ma-acct-info{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.ma-acct-name{font-size:.82rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ma-acct-badge{font-size:9px;font-weight:700;padding:2px 8px;border-radius:6px;border:1px solid;flex-shrink:0;letter-spacing:.3px}.ma-acct-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.ma-acct-balance{font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums}.ma-acct-balance.asset{color:var(--text)}.ma-acct-balance.debt{color:var(--danger)}.ma-acct-updated{font-size:9px;color:var(--text-dim);opacity:.6;white-space:nowrap}.ma-icon-btn{width:28px;height:28px;border-radius:8px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.3;transition:opacity .2s,background .2s;color:var(--text)}.ma-acct-row:hover .ma-icon-btn{opacity:.6}.ma-icon-btn:hover{opacity:1!important;background:#0000000f}.ma-icon-btn.delete:hover{color:var(--danger);background:var(--danger-light)}.ma-icon-btn.save{opacity:1;color:var(--success)}.ma-icon-btn.cancel{opacity:1;color:var(--danger)}.ma-edit-group{display:flex;align-items:center;gap:4px}.ma-edit-input{width:120px;padding:6px 10px;border:1.5px solid var(--accent);border-radius:8px;font-size:.85rem;font-family:inherit;font-weight:700;color:var(--text);background:var(--bg);box-shadow:var(--neu-in);outline:none;font-variant-numeric:tabular-nums}.ma-spending-card{padding:0;overflow:hidden}.ma-spending-header{padding:18px 18px 14px;border-bottom:1px solid rgba(0,0,0,.06)}.ma-spending-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ma-spending-total-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:var(--text-dim);font-weight:700}.ma-spending-total-value{font-size:1.1rem;font-weight:800;color:var(--danger);font-variant-numeric:tabular-nums}.ma-spending-bar-wrap{display:flex;flex-direction:column;gap:6px}.ma-spending-bar{height:8px;border-radius:4px;background:#0000000f;overflow:hidden}.ma-spending-bar-fixed{height:100%;border-radius:4px;background:linear-gradient(90deg,#4a7cff66,#6a9cff40);transition:width .4s ease}.ma-spending-bar-legend{display:flex;gap:16px}.ma-bar-legend-item{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-dim);font-weight:600}.ma-bar-dot{width:8px;height:8px;border-radius:50%}.ma-bar-dot.fixed{background:var(--accent)}.ma-bar-dot.variable{background:#0000001f}.ma-spending-list{display:flex;flex-direction:column}.ma-spend-row{display:flex;justify-content:space-between;align-items:center;padding:11px 18px;border-bottom:1px solid rgba(0,0,0,.04);transition:background .15s}.ma-spend-row:last-child{border-bottom:none}.ma-spend-row:hover{background:#00000005}.ma-spend-info{display:flex;align-items:center;gap:10px}.ma-spend-type-dot{width:8px;height:8px;border-radius:50%}.ma-spend-type-dot.fixed{background:var(--accent)}.ma-spend-type-dot.variable{background:var(--warn)}.ma-spend-cat{font-size:.82rem;font-weight:600;color:var(--text)}.ma-spend-right{display:flex;align-items:center;gap:6px}.ma-spend-amount{font-size:.85rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.ma-bottom-summary{background:#4a7cff1a;border:1px solid rgba(74,124,255,.2);border:1px solid rgba(74,124,255,.12);padding:20px}.ma-summary-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.ma-summary-row.total{padding:10px 0 6px}.ma-summary-label{font-size:.82rem;font-weight:600;color:var(--text-dim)}.ma-summary-row.total .ma-summary-label{font-size:.9rem;font-weight:800;color:var(--text)}.ma-summary-value{font-size:.9rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}.ma-summary-value.asset{color:var(--success)}.ma-summary-value.debt{color:var(--danger)}.ma-summary-value.outflow{color:var(--warn);font-size:.82rem}.ma-summary-row.total .ma-summary-value{font-size:1.2rem;font-weight:800;color:var(--accent)}.ma-summary-divider{height:1px;background:#4a7cff26;margin:6px 0}@media(max-width:680px){.ma-hero-amount{font-size:1.8rem}.ma-hero-split,.ma-quick-stats,.ma-form-row-split{grid-template-columns:1fr}.ma-acct-row{flex-direction:column;align-items:flex-start;gap:8px}.ma-acct-right{align-self:flex-end}.ma-edit-input{width:90px}}.td-back-btn{display:inline-flex;align-items:center;gap:6px;background:#f0f0f059;border:1px solid rgba(0,0,0,.06);border:1px solid rgba(255,255,255,.9);border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;color:var(--text-dim);cursor:pointer;box-shadow:var(--neu-sm);transition:box-shadow .2s,transform .2s;margin-bottom:16px;font-family:inherit}.td-back-btn:hover{box-shadow:var(--neu-out);transform:translateY(-1px)}.td-hero{background:#1a8a4a1f;border:1px solid rgba(26,138,74,.3);border:2px solid var(--success);border-radius:24px;padding:40px 28px 36px;text-align:center;margin-bottom:24px;box-shadow:0 0 24px #1a8a4a26,var(--neu-out);animation:td-glow 3s ease-in-out infinite}@keyframes td-glow{0%{box-shadow:0 0 18px 4px #1a8a4a33,var(--neu-out)}50%{box-shadow:0 0 32px 10px #1a8a4a59,var(--neu-out)}to{box-shadow:0 0 18px 4px #1a8a4a33,var(--neu-out)}}.td-hero-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--success);margin-bottom:14px;font-weight:700}.td-hero-headline{font-size:clamp(24px,5vw,36px);color:#1a3a2a;line-height:1.25;margin-bottom:12px;font-weight:700}.td-hero-sub{color:#4a6a5a;font-size:14px;max-width:480px;margin:0 auto 28px;line-height:1.6;font-weight:400}.td-scoreboard{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:620px;margin:0 auto 28px}.td-score-item{text-align:center;padding:16px 12px!important;background:#ffffffb3!important;border:1px solid rgba(26,138,74,.25)!important}.td-score-highlight{background:#1a8a4a1f!important;border:2px solid var(--success)!important}.td-score-num{font-size:clamp(20px,3vw,28px);font-weight:700;color:var(--success);line-height:1.1;margin-bottom:4px}.td-score-highlight .td-score-num{font-size:clamp(24px,4vw,34px);color:#1a5a35}.td-score-label{font-size:10px;color:#5a8a6a;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.td-score-note{font-size:11px;color:#88aa98;line-height:1.4}.td-hero-pill{display:inline-block;background:#1a8a4a1f;border:2px solid rgba(26,138,74,.4);color:#1e6640;font-size:18px;font-weight:700;padding:14px 36px;border-radius:50px;box-shadow:0 4px 20px #1a8a4a26}.td-calc-section{background:#1c2a3a1f;border:2px solid rgba(37,53,69,.3);border-radius:24px;padding:36px 24px;margin-bottom:24px;box-shadow:var(--neu-out)}.td-calc-section .section-hdr{color:var(--text)}.td-calc-sub{font-size:13px;color:var(--text-dim);line-height:1.6;margin-bottom:28px;max-width:540px}.td-calc-controls{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.td-calc-group{background:#ffffffd9!important;border:1.5px solid rgba(74,124,255,.2)!important;box-shadow:4px 4px 12px #0000000f,-4px -4px 12px #ffffffe6!important;padding:18px 20px!important}.td-calc-group-label{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:4px}.td-calc-group-val{font-size:24px;font-weight:700;color:var(--text);margin-bottom:12px}.td-calc-small{font-size:12px;color:var(--text-dim);font-weight:400;margin-left:6px}.td-slider{-webkit-appearance:none;width:100%;height:8px;border-radius:4px;background:#4a7cff26;outline:none;cursor:pointer}.td-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#48bb7840;border:2px solid rgba(72,187,120,.6);cursor:pointer;box-shadow:0 0 8px #48bb784d}.td-slider-blue::-webkit-slider-thumb{background:#7eb8d440;border:2px solid rgba(126,184,212,.6);box-shadow:0 0 8px #7eb8d44d}.td-calc-ticks{display:flex;justify-content:space-between;margin-top:6px}.td-calc-ticks span{font-size:10px;color:var(--text-dim)}.td-term-btns{display:flex;gap:8px;flex-wrap:wrap}.td-term-btn{padding:9px 18px;border-radius:10px;border:1px solid rgba(0,0,0,.1);background:transparent;color:var(--text-dim);font-size:13px;font-family:inherit;cursor:pointer;transition:all .2s}.td-term-btn.active{background:#48bb7826;border:1.5px solid rgba(72,187,120,.5);color:#48bb78;font-weight:600}.td-bonus-row{display:flex;align-items:center;gap:10px;margin-top:6px}.td-bonus-prefix{font-size:18px;color:var(--text-dim)}.td-bonus-input{background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:10px;padding:10px 14px;color:var(--text);font-size:18px;font-family:inherit;width:160px;outline:none}.td-bonus-input:focus{border-color:#f5c842;box-shadow:0 0 0 2px #f5c84233}.td-calc-outputs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.td-calc-out{background:#00000006!important;border:1px solid rgba(0,0,0,.06)!important;box-shadow:none!important;padding:16px 12px!important;text-align:center}.td-out-green{border-color:#1a8a4a59!important}.td-out-gold{border-color:#f5c84259!important}.td-out-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin-bottom:8px}.td-out-val{font-size:clamp(17px,2.5vw,22px);font-weight:700;color:var(--text);margin-bottom:4px;line-height:1.2}.td-out-green .td-out-val{color:#1a8a4a}.td-out-gold .td-out-val{color:#c8860a}.td-out-note{font-size:10px;color:var(--text-dim);line-height:1.4}.td-net-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.td-net-card{padding:18px 16px!important;box-shadow:none!important}.td-net-invest{background:#1a8a4a1f!important;border:1px solid rgba(26,138,74,.3)!important}.td-net-paydown{background:#7eb8d41a!important;border:1px solid rgba(126,184,212,.25)!important}.td-net-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.td-net-invest .td-net-label{color:#1a8a4a}.td-net-paydown .td-net-label{color:var(--accent)}.td-net-headline{font-size:clamp(18px,3vw,26px);font-weight:700;color:var(--text);margin-bottom:4px;line-height:1.2}.td-net-desc{font-size:12px;color:var(--text-dim);line-height:1.5}.td-verdict-card{background:#1a8a4a1f!important;border:1px solid rgba(26,138,74,.35)!important;box-shadow:none!important;display:flex!important;gap:14px;align-items:flex-start;padding:18px 20px!important}.td-verdict-icon{flex-shrink:0;color:#1a8a4a;margin-top:2px}.td-verdict-text{font-size:14px;color:var(--text);line-height:1.6}.td-verdict-text strong{color:var(--text);font-weight:800}.td-bonus-badge{display:inline-flex;align-items:center;gap:6px;background:#f5c84226;border:1px solid rgba(245,200,66,.35);border-radius:10px;padding:10px 16px;margin-top:10px;font-size:13px;color:#e8cb7a;line-height:1.5}.td-bonus-badge strong{color:#f6e6b4}.td-compare-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.td-compare-col{padding:22px 18px!important}.td-compare-old{background:#c8b48c14!important;border:1px solid rgba(200,180,140,.2)!important;border:1px solid #ddd9d0!important}.td-compare-new{background:#1a8a4a14!important;border:1px solid rgba(26,138,74,.2)!important;border:2px solid #85c4a4!important}.td-compare-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:4px 10px;border-radius:20px;margin-bottom:10px}.td-badge-neutral{background:#0000000f;color:#6b7280;border:1px solid rgba(0,0,0,.1)}.td-badge-good{background:#1a8a4a1a;color:#1e6640;border:1px solid rgba(26,138,74,.25)}.td-compare-title{font-size:16px;font-weight:700;color:var(--text);margin-bottom:16px;line-height:1.3}.td-compare-items{display:flex;flex-direction:column;gap:10px}.td-compare-item{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:#ffffff80}.td-item-good{background:#85c4a426}.td-item-bad{background:#dc645014}.td-compare-item-icon{flex-shrink:0;margin-top:2px;color:var(--text-dim)}.td-item-good .td-compare-item-icon{color:var(--success)}.td-item-bad .td-compare-item-icon{color:var(--danger)}.td-compare-item-label{font-size:10px;color:#888;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.td-compare-item-val{font-size:13px;color:var(--text);font-weight:500;line-height:1.4}.td-bottom-verdict{display:flex!important;align-items:center;gap:20px;background:#4a7cff1a!important;border:1px solid rgba(74,124,255,.25)!important;border:1px solid #c5cfdf!important;padding:20px 22px!important;margin-bottom:24px}.td-bottom-verdict-left{flex:1}.td-bottom-verdict-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#7a90a8;margin-bottom:6px;font-weight:600}.td-bottom-verdict-text{font-size:14px;color:#555;line-height:1.6}.td-bottom-verdict-text strong{color:var(--text)}.td-bottom-verdict-right{text-align:center;flex-shrink:0}.td-bottom-verdict-num{font-size:36px;font-weight:700;color:var(--success);line-height:1}.td-bottom-verdict-numlabel{font-size:11px;color:#888;margin-top:4px}.td-incentive-stack{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.td-inc-row{display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px!important}.td-inc-urgent{border-color:#e74c3c4d!important;background:#e74c3c0a!important}.td-inc-highlight{border-color:#1a8a4a4d!important;background:#1a8a4a0f!important}.td-inc-left{display:flex;align-items:center;gap:12px;flex:1}.td-inc-icon{flex-shrink:0;color:var(--text-dim)}.td-inc-highlight .td-inc-icon{color:var(--success)}.td-inc-urgent .td-inc-icon{color:var(--danger)}.td-inc-label{font-size:14px;color:var(--text);font-weight:500;line-height:1.4}.td-inc-sublabel{font-size:12px;color:#999;margin-top:2px}.td-deadline-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:3px 8px;border-radius:20px;background:#e74c3c1a;color:var(--danger);margin-top:4px}.td-inc-amount{font-size:18px;font-weight:700;color:var(--success);white-space:nowrap;flex-shrink:0}.td-inc-total{display:flex;justify-content:space-between;align-items:center;background:#4a7cff1a;border:1.5px solid rgba(74,124,255,.3);border-radius:var(--card-r);padding:18px 22px;color:var(--accent);font-size:13px;font-weight:500}.td-inc-total-amount{font-size:26px;font-weight:700;color:var(--accent)}.td-insight{display:flex!important;gap:12px;align-items:flex-start;background:#1a8a4a14!important;border:1px solid rgba(26,138,74,.25)!important;margin-bottom:24px}.td-insight-icon{flex-shrink:0;color:var(--success);margin-top:2px}.td-insight p{font-size:13px;color:#1e6640;line-height:1.6;margin:0}.td-insight p strong{font-weight:600}.td-apr-table-wrap{margin-bottom:16px}.td-apr-table{width:100%}.td-apr-header{display:grid;grid-template-columns:1.2fr .6fr 2fr .8fr;gap:12px;padding:10px 14px;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#888;border-bottom:1px solid rgba(0,0,0,.06)}.td-apr-row{display:grid;grid-template-columns:1.2fr .6fr 2fr .8fr;gap:12px;padding:12px 14px;font-size:13px;color:var(--text-dim);border-bottom:1px solid rgba(0,0,0,.04);align-items:center}.td-apr-row:last-child{border-bottom:none}.td-apr-best{background:#1a8a4a14;border-radius:10px}.td-apr-best span:first-child{color:#1e6640;font-weight:600}.td-apr-verdict-best{color:var(--success);font-weight:700}.td-apr-verdict-avoid{color:var(--danger);font-weight:600}.td-payment-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:24px}.td-p-card{text-align:center;padding:22px 16px!important}.td-p-dim{background:#c8b48c14!important;border:1px solid rgba(200,180,140,.18)!important;border:1px solid #ddd9d0!important}.td-p-win{background:linear-gradient(145deg,#6a9ac426,#4a6fa51a)!important;border:2px solid rgba(74,111,165,.35)!important}.td-p-warn{background:#f5c84214!important;border:1px solid rgba(245,200,66,.2)!important;border:1px solid #f0d99a!important}.td-p-tag{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px}.td-p-dim .td-p-tag{color:#999}.td-p-win .td-p-tag{color:var(--accent)}.td-p-warn .td-p-tag{color:#b07a1a}.td-p-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.td-p-dim .td-p-label{color:#999}.td-p-win .td-p-label{color:var(--text-dim)}.td-p-warn .td-p-label{color:#b07a1a}.td-p-amount{font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1;margin-bottom:6px}.td-p-dim .td-p-amount{color:#555}.td-p-win .td-p-amount{color:var(--accent)}.td-p-warn .td-p-amount{color:var(--text)}.td-p-sub{font-size:11px;margin-bottom:14px}.td-p-dim .td-p-sub{color:#aaa}.td-p-win .td-p-sub{color:var(--text-dim)}.td-p-warn .td-p-sub{color:#c09030}.td-p-divider{height:1px;margin-bottom:14px}.td-p-dim .td-p-divider{background:#ddd9d04d}.td-p-win .td-p-divider{background:#4a6fa526}.td-p-warn .td-p-divider{background:#f0d99a33}.td-p-note{font-size:12px;line-height:1.5;text-align:left}.td-p-dim .td-p-note{color:#888}.td-p-win .td-p-note{color:var(--text-dim)}.td-p-warn .td-p-note{color:#9a7020}.td-p-note strong{display:block;font-size:12px;font-weight:600;margin-bottom:2px}.td-p-dim .td-p-note strong{color:#c0392b}.td-p-win .td-p-note strong{color:var(--success)}.td-p-warn .td-p-note strong{color:#b07a1a}.td-swap-flow{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin-bottom:16px}.td-swap-card{padding:20px 16px!important}.td-swap-sell{background:#f5c84214!important;border:1px solid rgba(245,200,66,.2)!important;border:1px solid #f0d99a!important}.td-swap-buy{background:#1a8a4a14!important;border:1px solid rgba(26,138,74,.2)!important;border:1px solid #c3e6d3!important}.td-swap-label{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:8px}.td-swap-sell .td-swap-label{color:#b07a1a}.td-swap-buy .td-swap-label{color:var(--success)}.td-swap-name{font-size:16px;font-weight:700;margin-bottom:4px;color:var(--text)}.td-swap-val{font-size:20px;font-weight:700}.td-val-gold{color:#b07a1a}.td-val-green{color:var(--success)}.td-swap-note{font-size:12px;color:#888;margin-top:4px;line-height:1.4}.td-swap-arrow{color:#ccc;text-align:center}.td-swap-result{text-align:center;background:#4a7cff1a!important;border:1px solid rgba(74,124,255,.25)!important;border:1px solid #c5cfdf!important;margin-bottom:24px;padding:22px!important}.td-swap-result-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#7a90a8;margin-bottom:8px;font-weight:500}.td-swap-result-amount{font-size:36px;font-weight:700;color:var(--success);margin-bottom:4px}.td-swap-result-note{font-size:13px;color:#777;line-height:1.5}.td-fact-card{margin-bottom:24px}.td-fact-list{display:flex;flex-direction:column}.td-fact-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.06);gap:16px}.td-fact-row:last-child{border-bottom:none}.td-fact-q{font-size:13px;color:#555;flex:1}.td-fact-a{font-size:14px;color:var(--text);font-weight:700;text-align:right;white-space:nowrap}.td-fact-a.green{color:var(--success)}.td-fact-a.gold{color:#b07a1a}.td-timeline{position:relative;padding-left:44px;margin-bottom:24px}.td-timeline:before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:2px;background:linear-gradient(to bottom,var(--success),rgba(26,138,74,.1));border-radius:2px}.td-tl-step{position:relative;margin-bottom:18px}.td-tl-step:last-child{margin-bottom:0}.td-tl-dot{position:absolute;left:-36px;top:14px;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg);z-index:1}.td-tl-urgent{background:#e74c3c26;color:var(--danger)}.td-tl-neutral{background:#0000000f;color:var(--text-dim)}.td-tl-success{background:#1a8a4a26;color:var(--success)}.td-tl-body h4{font-size:14px;font-weight:600;color:var(--text);margin-bottom:4px}.td-tl-body p{font-size:13px;color:#777;line-height:1.6;margin:0}.td-tl-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:3px 8px;border-radius:20px;margin-bottom:6px}.td-tl-badge-red{background:#e74c3c1a;color:#922b21}.td-tl-badge-neutral{background:#0000000d;color:#6b7280}.td-tl-badge-good{background:#1a8a4a1a;color:#065f46}.td-bottom-card{background:#1a8a4a1f;border:1px solid rgba(26,138,74,.3);border:2.5px solid #48bb78;border-radius:24px;padding:40px 28px 36px;text-align:center;margin-bottom:24px;box-shadow:0 0 24px #1a8a4a26,var(--neu-out);animation:td-glow 3s ease-in-out infinite}.td-bc-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--success);margin-bottom:14px;font-weight:700}.td-bottom-card h2{font-size:clamp(22px,4vw,34px);color:#1a3a2a;margin-bottom:10px;line-height:1.25}.td-bc-sub{font-size:15px;color:#4a6a5a;line-height:1.7;max-width:480px;margin:0 auto 28px;font-weight:400}.td-bc-points{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px;text-align:left}.td-bc-point{display:flex!important;gap:14px;align-items:flex-start;background:#ffffffb3!important;border:1px solid #c3e6d3!important;padding:16px 18px!important}.td-bc-point-icon{flex-shrink:0;color:var(--success);margin-top:2px}.td-bc-point-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--success);margin-bottom:4px}.td-bc-point-val{font-size:14px;color:var(--text);font-weight:600;line-height:1.4}.td-bc-point-note{font-size:13px;color:#666;margin-top:4px;line-height:1.6}.td-des-card{background:#9b59b614;border:1px solid rgba(155,89,182,.2);border:2px solid #b794f4;border-radius:24px;padding:36px 28px;margin-bottom:24px}.td-des-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#7b5ea7;font-weight:700;margin-bottom:12px}.td-des-card h2{font-size:clamp(20px,4vw,28px);color:#2d1b5e;margin-bottom:10px;line-height:1.3}.td-des-sub{font-size:14px;color:#6b5a8a;line-height:1.7;margin-bottom:24px}.td-des-points{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.td-des-point{display:flex!important;gap:14px;align-items:flex-start;background:#ffffffb3!important;border:1px solid #d6bcfa!important;padding:14px 18px!important}.td-des-point-icon{flex-shrink:0;color:#7b5ea7;margin-top:2px}.td-des-point-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#7b5ea7;margin-bottom:3px}.td-des-point-val{font-size:14px;color:#2d1b5e;font-weight:600;line-height:1.4;margin-bottom:3px}.td-des-point-note{font-size:13px;color:#7a6a9a;line-height:1.5}.td-des-pill{display:inline-block;background:#7b5ea71a;border:2px solid rgba(123,94,167,.35);color:var(--purple);font-size:16px;font-weight:700;padding:14px 32px;border-radius:50px;box-shadow:0 4px 20px #7b5ea71f}.td-fine-print{font-size:11px;color:#aaa;line-height:1.7;padding-top:20px;border-top:1px solid rgba(0,0,0,.06)}@media(max-width:680px){.td-scoreboard,.td-calc-outputs{grid-template-columns:repeat(2,1fr)}.td-net-row,.td-compare-cols,.td-payment-row,.td-swap-flow{grid-template-columns:1fr}.td-swap-arrow{transform:rotate(90deg)}.td-bc-points{grid-template-columns:1fr}.td-bottom-verdict{flex-direction:column;text-align:center}.td-apr-header,.td-apr-row{grid-template-columns:1fr .5fr 1.5fr .7fr;font-size:11px}}.dm-overlay{position:fixed;inset:0;z-index:1000;background:#00000059;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;animation:dmFadeIn .2s ease}@keyframes dmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dmSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.dm-sheet{background:var(--bg);border-radius:20px 20px 0 0;width:100%;max-width:540px;max-height:85vh;box-shadow:0 -8px 40px #00000026;display:flex;flex-direction:column;animation:dmSlideUp .3s cubic-bezier(.22,1,.36,1)}.dm-handle{width:36px;height:4px;border-radius:2px;background:#0000001f;margin:10px auto 0}.dm-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 10px;border-bottom:1px solid rgba(0,0,0,.06)}.dm-header-left{display:flex;align-items:center;gap:12px}.dm-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.dm-title{font-size:1.05rem;font-weight:700;color:var(--text)}.dm-subtitle{font-size:.78rem;color:var(--text-dim);margin-top:1px}.dm-close{width:32px;height:32px;border-radius:50%;border:none;background:#0000000f;color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.dm-close:hover{background:#0000001a}.dm-body{padding:16px 20px 28px;overflow-y:auto;flex:1}.dm-detail-row{display:flex;align-items:baseline;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.04)}.dm-detail-row:last-child{border-bottom:none}.dm-detail-row.bold .dm-detail-label,.dm-detail-row.bold .dm-detail-value{font-weight:700}.dm-detail-label{font-size:.85rem;color:var(--text-dim)}.dm-detail-right{text-align:right}.dm-detail-value{font-size:.9rem;color:var(--text);font-weight:600}.dm-detail-sub{font-size:.72rem;color:var(--text-dim);margin-top:1px}.dm-section{margin-top:16px}.dm-section:first-child{margin-top:0}.dm-section-title{font-size:.78rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid rgba(0,0,0,.06)}.dm-badge{display:inline-block;font-size:.72rem;font-weight:600;padding:2px 9px;border-radius:8px;border:1px solid}.dm-stat{text-align:center;padding:12px 8px;background:#00000006;border-radius:var(--radius-sm)}.dm-stat-value{font-size:1.15rem;font-weight:700;color:var(--text)}.dm-stat-label{font-size:.72rem;color:var(--text-dim);margin-top:2px}.dm-stat-sub{font-size:.68rem;color:var(--text-dim);margin-top:1px}.dm-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;margin-top:8px}.dm-note{background:#4a7cff0f;border:1px solid rgba(74,124,255,.15);border-radius:var(--radius-sm);padding:10px 14px;font-size:.82rem;color:var(--text);line-height:1.4;margin-top:12px}@media(min-width:541px){.dm-sheet{border-radius:20px;margin-bottom:40px}.dm-overlay{align-items:center}}.settings-tab{max-width:640px;margin:0 auto}.settings-section{margin-bottom:16px;padding:20px}.settings-section-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;color:var(--text)}.settings-section-header h3{font-size:1.15rem;font-weight:700;color:var(--text)}.settings-description{font-size:.85rem;color:var(--text-dim);line-height:1.5;margin-bottom:16px}.settings-subscribe-buttons{display:flex;gap:10px;flex-wrap:wrap}.settings-btn{display:flex;align-items:center;gap:6px;padding:10px 18px;border-radius:12px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .2s;font-family:inherit}.settings-btn-primary{background:#4a7cff1f;border-color:#4a7cff4d;color:#4a7cff}.settings-btn-primary:hover{background:#4a7cff33}.settings-btn-secondary{background:#9b59b61f;border-color:#9b59b64d;color:#9b59b6}.settings-btn-secondary:hover{background:#9b59b633}.settings-btn-outline{background:#2d2d3a0d;border-color:#2d2d3a26;color:var(--text)}.settings-btn-outline:hover{background:#2d2d3a1a}.settings-btn-danger{background:#e74c3c1a;border-color:#e74c3c40;color:#e74c3c}.settings-btn-danger:hover{background:#e74c3c2e}.settings-btn:disabled{opacity:.5;cursor:not-allowed}.settings-alert{display:flex;gap:10px;padding:12px 14px;border-radius:12px;font-size:.83rem;line-height:1.4}.settings-alert strong{display:block;margin-bottom:2px}.settings-alert p{color:var(--text-dim);margin:0}.settings-alert-success{background:#1a8a4a14;border:1px solid rgba(26,138,74,.2);color:#1a8a4a}.settings-alert-success p{color:#27ae60}.settings-alert-warning{background:#f5c84214;border:1px solid rgba(245,200,66,.2);color:#f5c842}.settings-alert-warning p{color:#c9a620}.settings-alert-error{background:#e74c3c14;border:1px solid rgba(231,76,60,.2);color:#e74c3c}.settings-devices-info{margin-top:20px;padding-top:16px;border-top:1px solid rgba(45,45,58,.08)}.settings-devices-info h4{font-size:.9rem;font-weight:600;color:var(--text);margin-bottom:12px}.settings-device-row{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid rgba(45,45,58,.05);align-items:flex-start;color:var(--text-dim)}.settings-device-row strong{display:block;color:var(--text);font-size:.85rem;margin-bottom:2px}.settings-device-row p{font-size:.8rem;line-height:1.4;margin:0}.settings-hint{font-size:.8rem;color:var(--text-dim);margin-top:10px;line-height:1.4}.settings-upcoming{margin-top:20px;padding-top:16px;border-top:1px solid rgba(45,45,58,.08)}.settings-upcoming h4{font-size:.9rem;font-weight:600;color:var(--text);margin-bottom:12px}.settings-events-list{display:flex;flex-direction:column;gap:8px}.settings-event-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#2d2d3a08;border-radius:10px;border:1px solid rgba(45,45,58,.06)}.settings-event-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:6px;border:1px solid;white-space:nowrap;min-width:44px;text-align:center}.settings-event-info{flex:1;min-width:0}.settings-event-title{display:block;font-size:.83rem;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-event-amount{font-size:.78rem;color:var(--text-dim)}.settings-event-days{font-size:.8rem;font-weight:600;color:var(--text-dim);white-space:nowrap}.settings-event-days.urgent{color:#e74c3c}.settings-event-days.soon{color:#f5c842}.settings-accountant-card{padding:16px;background:#4a7cff0a;border:1px solid rgba(74,124,255,.12);border-radius:12px}.settings-accountant-name{font-size:1.1rem;font-weight:700;color:var(--text)}.settings-accountant-role{font-size:.82rem;color:var(--text-dim);margin-bottom:10px}.settings-accountant-detail{display:flex;align-items:center;gap:6px;font-size:.83rem;color:var(--text);margin-top:6px}.settings-info-grid{display:flex;flex-direction:column;gap:12px}.settings-info-item{display:flex;flex-direction:column;gap:2px}.settings-info-label{font-size:.75rem;font-weight:600;color:var(--text-dim);text-transform:none}.settings-info-value{font-size:.88rem;color:var(--text)}.settings-subscribed{margin-top:4px}.td-monthly-math{background:#fffffff2;border:1.5px solid rgba(26,138,74,.2);border-radius:22px;padding:28px 22px;margin:24px 0 28px;box-shadow:0 8px 32px #1a8a4a14,6px 6px 18px #0000000a,-6px -6px 18px #fffffff2}.td-mm-title{font-size:19px;font-weight:800;color:var(--text);text-align:center;margin-bottom:3px}.td-mm-subtitle{font-size:13px;color:var(--text-dim);text-align:center;margin-bottom:22px}.td-mm-equation{background:#00000005;border:1px solid rgba(0,0,0,.05);border-radius:16px;padding:16px 18px;margin-bottom:20px}.td-mm-eq-row{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0}.td-mm-eq-label{font-size:14px;color:var(--text)}.td-mm-eq-val{font-size:16px;font-weight:700;white-space:nowrap}.td-mm-eq-cost{color:#c0392b}.td-mm-eq-earn{background:#1a8a4a0a;border-radius:8px;padding:8px 12px;margin:2px -12px}.td-mm-eq-green{color:#1e8449}.td-mm-eq-divider{height:1.5px;background:linear-gradient(90deg,transparent,rgba(26,138,74,.3),transparent);margin:8px 0 4px}.td-mm-eq-total .td-mm-eq-label{font-size:15px;font-weight:800;color:var(--text)}.td-mm-eq-total .td-mm-eq-val{font-size:22px;font-weight:800;color:var(--text)}.td-mm-verdict{border-radius:18px;padding:20px 16px;margin-bottom:20px;text-align:center}.td-mm-verdict-win{background:#1a8a4a0f;border:1.5px solid rgba(26,138,74,.25);box-shadow:0 0 24px #1a8a4a1a,0 0 48px #1a8a4a0d}.td-mm-verdict-close{background:#e67e220f;border:1.5px solid rgba(230,126,34,.25)}.td-mm-verdict-vs{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px}.td-mm-vs-old,.td-mm-vs-new{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}.td-mm-vs-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim)}.td-mm-vs-amount{font-size:22px;font-weight:800;line-height:1.1}.td-mm-vs-dead{color:#bbb;text-decoration:line-through}.td-mm-vs-win{color:#1e8449}.td-mm-vs-tag{font-size:10px;font-weight:600;padding:2px 10px;border-radius:20px}.td-mm-vs-old .td-mm-vs-tag{background:#0000000d;color:#999}.td-mm-vs-new .td-mm-vs-tag{background:#1a8a4a1f;color:#1e8449}.td-mm-vs-arrow{font-size:12px;font-weight:800;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;flex-shrink:0}.td-mm-verdict-bottom{padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.td-mm-verdict-win .td-mm-verdict-num{font-size:34px;font-weight:900;color:#1e8449;text-shadow:0 0 20px rgba(26,138,74,.3);line-height:1}.td-mm-verdict-close .td-mm-verdict-num{font-size:30px;font-weight:900;color:#e67e22;line-height:1}.td-mm-verdict-label{font-size:13px;font-weight:600;color:var(--text-dim);margin-top:2px}.td-fid-section{background:#fffffff5;border:1.5px solid rgba(26,138,74,.18);border-radius:22px;padding:28px 22px;margin-top:20px;box-shadow:0 10px 40px #1a8a4a0f,0 2px 12px #00000008}.td-fid-hero{text-align:center;margin-bottom:24px}.td-fid-hero-label{font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:#1a8a4a;margin-bottom:8px}.td-fid-hero-headline{font-size:clamp(20px,4vw,28px);font-weight:900;color:var(--text);line-height:1.2;margin-bottom:6px}.td-fid-hero-sub{font-size:14px;color:var(--text-dim);line-height:1.5}.td-fid-monthly-earn{display:flex;gap:16px;margin-bottom:24px;background:#1a8a4a0d;border:1px solid rgba(26,138,74,.15);border-radius:16px;padding:18px;align-items:center}.td-fid-me-left{text-align:center;padding-right:16px;border-right:1px solid rgba(26,138,74,.15);min-width:120px}.td-fid-me-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:#1a8a4a;margin-bottom:4px}.td-fid-me-amount{font-size:28px;font-weight:900;color:#1e8449;text-shadow:0 0 16px rgba(26,138,74,.25);line-height:1.1}.td-fid-me-per{font-size:11px;color:var(--text-dim);margin-top:2px}.td-fid-me-right{flex:1;display:flex;flex-direction:column;gap:6px}.td-fid-me-row{display:flex;justify-content:space-between;font-size:13px;color:var(--text);padding:4px 0}.td-fid-me-val{font-weight:700;color:#1e8449}.td-fid-me-row-glow{background:#1a8a4a14;border-radius:8px;padding:6px 8px;margin:0 -8px}.td-fid-me-row-glow .td-fid-me-val{font-size:15px;font-weight:800;text-shadow:0 0 10px rgba(26,138,74,.2)}.td-fid-chart{margin-bottom:24px}.td-fid-chart-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);text-align:center;margin-bottom:16px}.td-fid-bars{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;height:180px;padding:0 4px;margin-bottom:16px}.td-fid-bar-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;height:100%;justify-content:flex-end}.td-fid-bar-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);order:-1}.td-fid-bar-track{width:100%;max-width:48px;flex:1;display:flex;align-items:flex-end}.td-fid-bar-fill{width:100%;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#1a8a4a80,#27ae60a6);transition:height .5s ease;min-height:12px}.td-fid-bar-best .td-fid-bar-fill{background:linear-gradient(180deg,#1a8a4a,#1e8449);box-shadow:0 0 16px #1a8a4a66,0 0 32px #1a8a4a26}.td-fid-bar-amount{font-size:11px;font-weight:800;color:var(--text);white-space:nowrap}.td-fid-bar-best .td-fid-bar-amount{font-size:14px;color:#1e8449;text-shadow:0 0 8px rgba(26,138,74,.2)}.td-fid-bar-gain{font-size:9px;font-weight:700;color:#1a8a4a}.td-fid-bar-best .td-fid-bar-gain{font-size:11px;text-shadow:0 0 6px rgba(26,138,74,.3)}.td-fid-chart-explain{font-size:13px;color:var(--text-dim);line-height:1.6;text-align:center;max-width:500px;margin:0 auto}.td-fid-chart-explain em{font-style:italic;color:var(--text);font-weight:600}.td-fid-nw{background:#00000005;border:1px solid rgba(0,0,0,.05);border-radius:16px;padding:20px 18px;margin-bottom:20px}.td-fid-nw-title{font-size:13px;font-weight:800;color:var(--text);text-align:center;margin-bottom:16px}.td-fid-nw-track{position:relative;margin-bottom:40px}.td-fid-nw-bar-bg{height:14px;border-radius:7px;background:#0000000f;position:relative;overflow:hidden}.td-fid-nw-bar-now{position:absolute;top:0;left:0;height:100%;border-radius:7px;background:linear-gradient(90deg,#c4c4c4,#a0a0a0);z-index:2}.td-fid-nw-bar-future{position:absolute;top:0;left:0;height:100%;border-radius:7px;background:linear-gradient(90deg,#1a8a4a,#27ae60);box-shadow:0 0 12px #1a8a4a4d;z-index:1}.td-fid-nw-markers{position:relative;height:36px}.td-fid-nw-marker{position:absolute;top:6px;transform:translate(-50%);text-align:center}.td-fid-nw-marker-dot{width:10px;height:10px;border-radius:50%;background:#a0a0a066;border:2px solid rgba(255,255,255,.8);margin:0 auto 3px}.td-fid-nw-marker-future .td-fid-nw-marker-dot{background:#1a8a4a80;border-color:#1a8a4a4d;box-shadow:0 0 8px #1a8a4a4d}.td-fid-nw-marker-label{font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-dim)}.td-fid-nw-marker-val{font-size:11px;font-weight:800;color:var(--text);white-space:nowrap}.td-fid-nw-marker-future .td-fid-nw-marker-val{color:#1e8449}.td-fid-nw-target{display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:var(--text-dim);margin-bottom:14px;padding:0 2px}.td-fid-nw-rows{display:flex;flex-direction:column;gap:4px}.td-fid-nw-row{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--text);padding:5px 0}.td-fid-nw-row span:last-child{font-weight:700;white-space:nowrap}.td-fid-nw-green{color:#1e8449!important}.td-fid-nw-row-glow{background:#1a8a4a0f;border-radius:8px;padding:8px 10px;margin:2px -10px}.td-fid-nw-row-glow span:last-child{font-size:16px;font-weight:800;text-shadow:0 0 10px rgba(26,138,74,.2)}.td-fid-kicker{font-size:14px;line-height:1.65;color:var(--text);text-align:center;font-weight:500;padding:0 8px}@media(max-width:600px){.td-fid-monthly-earn{flex-direction:column}.td-fid-me-left{border-right:none;border-bottom:1px solid rgba(26,138,74,.15);padding-right:0;padding-bottom:14px;min-width:0}.td-fid-bars{height:140px;gap:4px}.td-fid-bar-amount{font-size:9px}.td-fid-bar-best .td-fid-bar-amount{font-size:11px}.td-fid-nw-marker-val{font-size:9px}}@media(max-width:600px){.td-mm-verdict-vs{gap:10px}.td-mm-vs-amount{font-size:18px}.td-mm-verdict-win .td-mm-verdict-num{font-size:28px}.td-mm-fid-val{font-size:9px}.td-mm-fid-best .td-mm-fid-val{font-size:10px}}.td-score-clickable{cursor:pointer;position:relative;transition:transform .2s ease,box-shadow .2s ease}.td-score-clickable:hover{transform:translateY(-2px);box-shadow:6px 6px 18px #00000014,-6px -6px 18px #fffffff2!important}.td-score-clickable:active{transform:translateY(0)}.td-score-chevron{position:absolute;top:10px;right:10px;color:#1a8a4a80}.td-score-highlight .td-score-chevron{color:#1a5a3566}.td-out-clickable{position:relative;transition:transform .2s ease,box-shadow .2s ease}.td-out-clickable:hover{transform:translateY(-2px);box-shadow:4px 4px 14px #00000012,-4px -4px 14px #ffffffe6!important}.td-out-clickable:active{transform:translateY(0)}.td-out-chevron{position:absolute;top:8px;right:8px;color:#1a8a4a66}.td-modal-overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:9999;display:flex;align-items:flex-end;justify-content:center;animation:tdModalFadeIn .2s ease}@keyframes tdModalFadeIn{0%{opacity:0}to{opacity:1}}.td-modal-sheet{background:#f0f0f0f7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px 24px 0 0;width:100%;max-width:540px;max-height:85vh;overflow-y:auto;padding:0 0 env(safe-area-inset-bottom,20px);animation:tdModalSlideUp .3s ease;-webkit-overflow-scrolling:touch}@keyframes tdModalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.td-modal-handle{width:36px;height:5px;border-radius:3px;background:#00000026;margin:10px auto 0}.td-modal-header{display:flex;align-items:center;gap:10px;padding:16px 20px 12px;border-bottom:1px solid rgba(0,0,0,.06);position:sticky;top:0;background:#f0f0f0f2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:2}.td-modal-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.td-modal-title{flex:1;font-size:17px;font-weight:700;color:var(--text)}.td-modal-close{width:30px;height:30px;border-radius:50%;background:#0000000f;border:none;display:flex;align-items:center;justify-content:center;color:var(--text-dim);cursor:pointer;flex-shrink:0}.td-modal-close:hover{background:#0000001a}.td-modal-body{padding:4px 20px 24px}.td-modal-section{padding:16px 0;border-bottom:1px solid rgba(0,0,0,.05)}.td-modal-section:last-child{border-bottom:none}.td-modal-section-title{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.td-modal-text{font-size:14px;color:var(--text);line-height:1.7;white-space:pre-line}.td-modal-row{display:flex;justify-content:space-between;align-items:baseline;padding:7px 0;gap:12px}.td-modal-row-bold{padding:10px 0;margin-top:4px;border-top:1px dashed rgba(0,0,0,.08)}.td-modal-row-label{font-size:13px;color:var(--text);flex:1}.td-modal-row-value{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap}.td-modal-row-bold .td-modal-row-label{font-weight:700;font-size:14px}.td-modal-row-bold .td-modal-row-value{font-weight:800;font-size:16px}@media(min-width:600px){.td-modal-overlay{align-items:center}.td-modal-sheet{border-radius:24px;max-height:80vh}}.docs-page{padding-bottom:40px}.docs-hdr{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px}.docs-hdr-title{font-size:28px;font-weight:700;color:var(--text);margin:0;letter-spacing:-.3px}.docs-hdr-count{font-size:15px;color:var(--text-dim);margin:4px 0 0}.docs-add-btn{display:flex;align-items:center;gap:8px;background:#4a7cff1f;border:1.5px solid rgba(74,124,255,.3);color:var(--accent);border-radius:12px;padding:10px 20px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.docs-add-btn:hover{background:#4a7cff33;color:var(--accent)}.docs-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;margin-bottom:18px;font-size:14px;font-weight:500;box-shadow:var(--neu-sm)}.docs-banner button{margin-left:auto;background:none;border:none;cursor:pointer;color:inherit;opacity:.7;padding:2px}.docs-banner-err{background:var(--danger-light);border:1px solid rgba(231,76,60,.25);color:var(--danger)}.docs-banner-ok{background:var(--success-light);border:1px solid rgba(26,138,74,.25);color:#1a9d55}.docs-tab-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.docs-tab{display:flex;align-items:center;gap:7px;padding:8px 16px;border-radius:10px;font-size:14px;font-weight:500;background:var(--bg);border:1.5px solid transparent;color:var(--text-dim);cursor:pointer;transition:all .2s;box-shadow:var(--neu-xs)}.docs-tab:hover{color:var(--text);box-shadow:var(--neu-sm)}.docs-tab-on{background:linear-gradient(145deg,var(--dark-from),var(--dark-to));border-color:var(--glass-border);color:#fff;box-shadow:var(--neu-sm)}.docs-tab-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.docs-tab-count{font-size:12px;font-weight:600;color:var(--text-dim);background:#0000000f;border-radius:6px;padding:1px 7px;margin-left:2px}.docs-tab-on .docs-tab-count{color:#ffffffd9;background:#ffffff26}.docs-overlay{position:fixed;inset:0;z-index:2000;background:#00000059;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:20px}.docs-sheet{background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:22px;width:100%;max-width:540px;padding:28px;box-shadow:var(--neu-deep)}.docs-sheet-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.docs-sheet-bar h3{font-size:20px;font-weight:700;color:var(--text);margin:0}.docs-sheet-x{background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim);transition:all .15s;box-shadow:var(--neu-xs)}.docs-sheet-x:hover{color:var(--text);box-shadow:var(--neu-sm)}.docs-label{display:block;font-size:13px;font-weight:600;color:var(--text-dim);margin:0 0 10px;letter-spacing:.3px}.docs-cat-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.docs-cat-chip{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:9px;font-size:13px;font-weight:500;background:var(--bg);border:1.5px solid rgba(0,0,0,.08);color:var(--text-dim);cursor:pointer;transition:all .15s;box-shadow:var(--neu-xs)}.docs-cat-chip:hover{box-shadow:var(--neu-sm);color:var(--text)}.docs-cat-chip-on{font-weight:600;color:var(--text)}.docs-input{width:100%;padding:12px 16px;border-radius:12px;background:var(--bg);border:1.5px solid rgba(0,0,0,.08);color:var(--text);font-size:15px;outline:none;box-sizing:border-box;margin-bottom:20px;box-shadow:var(--neu-in)}.docs-input::placeholder{color:var(--text-dim);opacity:.6}.docs-input:focus{border-color:#4a7cff80}.docs-dropzone{border:2px dashed rgba(0,0,0,.12);border-radius:18px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--bg)}.docs-dropzone:hover,.docs-dropzone-hover{border-color:#4a7cff80;background:#4a7cff0d}.docs-dropzone-icon{color:var(--text-dim)}.docs-dropzone-title{font-size:16px;font-weight:500;color:var(--text)}.docs-dropzone-hint{font-size:13px;color:var(--text-dim)}.docs-uploading{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--text-dim);font-size:15px}.docs-wizard{max-width:560px;max-height:85vh;overflow-y:auto}.docs-wiz-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:24px;padding:0 20px}.docs-wiz-step{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-dim);font-weight:500;opacity:.5;transition:all .2s}.docs-wiz-step-done{opacity:1;color:var(--text)}.docs-wiz-num{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--bg);border:1.5px solid rgba(0,0,0,.12);box-shadow:var(--neu-xs)}.docs-wiz-step-done .docs-wiz-num{background:#4a7cff1f;border-color:#4a7cff4d;color:#4a7cff}.docs-wiz-line{flex:1;height:2px;margin:0 10px;background:#00000014;border-radius:1px}.docs-wiz-file{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--bg);border:1.5px solid rgba(0,0,0,.06);box-shadow:var(--neu-xs);margin-bottom:20px}.docs-wiz-file-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#4a7cff1a;color:#4a7cff;flex-shrink:0}.docs-wiz-file-info{flex:1;min-width:0}.docs-wiz-file-name{display:block;font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.docs-wiz-file-size{font-size:12px;color:var(--text-dim)}.docs-wiz-file-change{background:transparent;border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;color:var(--text-dim);cursor:pointer;transition:all .15s;flex-shrink:0}.docs-wiz-file-change:hover{color:var(--text);box-shadow:var(--neu-xs)}.docs-cat-list{display:flex;flex-direction:column;gap:6px;margin-bottom:20px;max-height:320px;overflow-y:auto}.docs-cat-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--bg);border:1.5px solid rgba(0,0,0,.06);cursor:pointer;transition:all .15s;text-align:left;width:100%}.docs-cat-row:hover,.docs-cat-row-on{box-shadow:var(--neu-xs)}.docs-cat-row-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.docs-cat-row-text{flex:1;min-width:0}.docs-cat-row-label{display:block;font-size:14px;font-weight:600;color:var(--text)}.docs-cat-row-desc{display:block;font-size:12px;color:var(--text-dim);margin-top:2px;line-height:1.3}.docs-wiz-confirm{width:100%;padding:14px 20px;border-radius:14px;background:transparent;border:1.5px solid rgba(0,0,0,.1);font-size:15px;font-weight:600;color:var(--text-dim);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px}.docs-wiz-confirm:not(:disabled):hover{box-shadow:var(--neu-sm)}.docs-wiz-confirm:disabled{opacity:.5;cursor:not-allowed}.docs-uploading-full{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px}.docs-uploading-text{font-size:16px;color:var(--text-dim);font-weight:500}.docs-center{display:flex;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:var(--text-dim);font-size:15px}.docs-center-empty{flex-direction:column;text-align:center}.docs-center-empty svg{color:#00000026;margin-bottom:8px}.docs-center-empty h3{color:var(--text);font-size:18px;margin:0 0 6px}.docs-center-empty p{color:var(--text-dim);font-size:15px;margin:0}.docs-grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}.doc2{background:var(--bg);border-radius:16px;overflow:hidden;cursor:pointer;transition:all .2s;position:relative;box-shadow:var(--neu-out)}.doc2:hover{transform:translateY(-3px);box-shadow:8px 8px 22px var(--sd),-8px -8px 22px var(--sl)}.doc-thumb{width:100%;aspect-ratio:4 / 3;position:relative;overflow:hidden;background:#d8d8d8}.doc-thumb-img{width:100%;height:100%;object-fit:cover}.doc-thumb-file{display:flex;align-items:center;justify-content:center}.doc-thumb-page{width:52%;aspect-ratio:8.5 / 11;background:#fff;border-radius:4px;position:relative;box-shadow:0 3px 12px #0000001f,0 0 0 .5px #0000000f;padding:12% 10% 10%;overflow:hidden}.doc-thumb-fold{position:absolute;top:0;right:0;width:18%;height:0;padding-top:18%;background:linear-gradient(225deg,#d8d8d8 50%,silver 50%)}.doc-thumb-lines{display:flex;flex-direction:column;gap:3px}.doc-thumb-line{height:2.5px;border-radius:1px;background:#0000001a;width:100%}.doc-thumb-line-title{height:4px;width:65%;margin-bottom:2px;border-radius:1.5px}.doc-thumb-spacer{height:3px}.doc-thumb-ext-badge{position:absolute;bottom:8px;right:8px;padding:3px 8px;border-radius:5px;font-size:10px;font-weight:800;color:#fff;letter-spacing:.5px;line-height:1.3;box-shadow:0 2px 6px #00000040}.doc2-body{padding:14px 16px 16px}.doc2-name{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:8px;line-height:1.3}.doc2-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.doc2-cat{font-size:12px;font-weight:600;padding:3px 10px;border-radius:6px;border:1px solid}.doc2-date{font-size:13px;color:var(--text-dim)}.doc2-size{font-size:13px;color:#0000004d}.doc2-notes{font-size:13px;color:var(--text-dim);margin-top:6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doc2-actions{position:absolute;top:10px;right:10px;display:flex;gap:6px;opacity:0;transition:opacity .15s}.doc2:hover .doc2-actions{opacity:1}.doc2-btn{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.08);color:var(--text-dim);cursor:pointer;transition:all .15s;box-shadow:var(--neu-xs)}.doc2-btn:hover{color:var(--text);box-shadow:var(--neu-sm)}.doc2-btn-del:hover{color:var(--danger)}@media(max-width:540px){.docs-grid2{grid-template-columns:repeat(2,1fr);gap:12px}.doc2-actions{opacity:1}.doc2-name{font-size:13px}.doc2-body{padding:10px 12px 12px}}@media(max-width:380px){.docs-grid2{grid-template-columns:1fr}}.login-screen{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.login-card{width:100%;max-width:420px;text-align:center;background:var(--bg);border-radius:24px;padding:48px 36px;box-shadow:var(--neu-deep)}.login-icon{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;color:var(--accent);background:var(--accent-glow);box-shadow:var(--neu-sm)}.login-title{font-size:28px;font-weight:700;color:var(--text);margin:0 0 8px;letter-spacing:-.3px}.login-subtitle{font-size:16px;color:var(--text-dim);margin:0 0 32px;line-height:1.5}.login-error{display:flex;align-items:center;gap:10px;justify-content:center;padding:12px 16px;border-radius:12px;margin-bottom:24px;background:var(--danger-light);border:1px solid rgba(231,76,60,.25);color:var(--danger);font-size:14px;font-weight:500}.login-btn-wrap{display:flex;justify-content:center;margin-bottom:28px;min-height:44px}.login-not-configured{padding:20px;border-radius:14px;margin-bottom:28px;background:var(--warn-light);border:1px solid rgba(245,200,66,.25);color:var(--text)}.login-not-configured p{margin:0 0 4px;font-size:15px;font-weight:500}.login-hint{font-size:13px;color:var(--text-dim);font-weight:400}.login-footer{font-size:13px;color:var(--text-dim);margin:0;opacity:.7}.header-user{display:flex;align-items:center;gap:10px;margin-left:auto}.header-user-avatar{width:32px;height:32px;border-radius:50%;box-shadow:var(--neu-xs)}.header-user-name{font-size:13px;color:var(--text-dim);font-weight:500}.header-signout{background:#e74c3c14;border:1px solid rgba(231,76,60,.2);color:var(--danger);border-radius:8px;padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.header-signout:hover{background:#e74c3c26}.tw-overlay{position:fixed;inset:0;z-index:2000;background:#00000040;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.tw-modal{background:var(--bg);border-radius:20px;width:100%;max-width:540px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 40px #0000001f,0 2px 8px #0000000f;overflow:hidden;border:1px solid rgba(0,0,0,.06)}.tw-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.tw-title{font-size:20px;font-weight:700;color:var(--text);margin:0 0 4px;line-height:1.3}.tw-amount{font-size:14px;font-weight:600;color:var(--accent)}.tw-close{background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:10px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim);flex-shrink:0;transition:all .15s}.tw-close:hover{color:var(--text);background:#0000000a}.tw-steps-bar{display:flex;align-items:center;gap:28px;padding:18px 28px;position:relative;justify-content:center}.tw-step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--bg);color:var(--text-dim);border:1.5px solid rgba(0,0,0,.1);cursor:pointer;transition:all .2s;z-index:1}.tw-step-active{background:var(--accent);color:#fff;border-color:var(--accent)}.tw-step-done{background:var(--success-light);color:var(--success);border-color:#1a8a4a33}.tw-step-line{position:absolute;top:50%;left:28px;right:28px;height:3px;background:var(--accent);border-radius:2px;transform:translateY(-50%);transition:width .3s ease;z-index:0;opacity:.3}.tw-content{flex:1;overflow-y:auto;padding:28px}.tw-step-icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#4a7cff14;color:var(--accent);margin-bottom:16px}.tw-step-title{font-size:18px;font-weight:700;color:var(--text);margin:0 0 8px}.tw-step-desc{font-size:15px;color:var(--text-dim);line-height:1.6;margin:0 0 20px}.tw-details{background:var(--bg);border-radius:12px;padding:14px 16px;margin-bottom:20px;border:1px solid rgba(0,0,0,.06)}.tw-detail-row{font-size:14px;color:var(--text);line-height:1.6;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.04)}.tw-detail-row:last-child{border-bottom:none}.tw-checklist{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.tw-check-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:10px;background:var(--bg);cursor:pointer;border:1px solid rgba(0,0,0,.05);transition:all .15s;font-size:14px;color:var(--text);line-height:1.5}.tw-check-item input[type=checkbox]{width:18px;height:18px;margin-top:2px;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.tw-check-done{background:var(--success-light);box-shadow:none}.tw-check-done span{text-decoration:line-through;color:var(--text-dim)}.tw-action-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:12px;background:#4a7cff1a;border:1.5px solid rgba(74,124,255,.3);color:var(--accent);font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s}.tw-action-btn:hover{background:#4a7cff2e}.tw-footer{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-top:1px solid rgba(0,0,0,.06)}.tw-step-label{font-size:13px;color:var(--text-dim);font-weight:500}.tw-nav-btn{display:flex;align-items:center;gap:6px;padding:10px 18px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:1.5px solid transparent}.tw-nav-prev{background:var(--bg);color:var(--text-dim);border-color:#00000014}.tw-nav-prev:hover{color:var(--text);background:#00000008}.tw-nav-prev:disabled{opacity:.3;cursor:not-allowed}.tw-nav-next{background:#4a7cff1a;color:var(--accent);border-color:#4a7cff4d}.tw-nav-next:hover{background:#4a7cff2e}.tw-nav-complete{background:#1a8a4a1a;color:#1a9d55;border-color:#1a8a4a4d}.tw-nav-complete:hover{background:#1a8a4a2e}@media(max-width:540px){.tw-modal{max-height:95vh;border-radius:18px}.tw-header{padding:18px 20px 14px}.tw-content{padding:20px}.tw-footer{padding:14px 20px}.tw-steps-bar{gap:16px;padding:14px 20px}}.fr-wrap{padding:16px;max-width:1200px;margin:0 auto}.fr-hdr{text-align:center;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid rgba(0,0,0,.08)}.fr-eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}.fr-h1{font-size:30px;font-weight:700;color:var(--text);margin:0}.fr-h1 em{font-style:italic;color:#c0392b}.fr-hsub{font-size:12px;color:var(--text-dim);margin-top:6px}.fr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}.fr-card{background:var(--bg);border-radius:16px;box-shadow:var(--neu-out);padding:18px;display:flex;flex-direction:column;gap:10px;border-top:3px solid var(--cc);transition:transform .15s,box-shadow .15s}.fr-card:hover{transform:translateY(-2px);box-shadow:8px 8px 20px #0000001a,-4px -4px 12px #fffffff2}.fr-card-full{grid-column:1 / -1}.fr-card-hdr{display:flex;align-items:center;gap:8px}.fr-num{width:22px;height:22px;border-radius:50%;background:var(--cc);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fr-ctitle{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}.fr-blist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.fr-blist li{display:flex;gap:6px;font-size:12px;color:var(--text-dim);line-height:1.4}.fr-blist li span{font-weight:700;flex-shrink:0}.fr-tags{display:flex;flex-wrap:wrap;gap:5px}.fr-tag{border:1.5px solid;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600}.fr-scen{display:flex;gap:7px}.fr-scen-tag{background:#0000000f;border-radius:20px;padding:3px 12px;font-size:11px;font-weight:600;color:var(--text-dim)}.fr-protip{background:#00000008;border-left:3px solid;border-radius:4px;padding:9px 11px}.fr-pt-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:3px}.fr-pt-text{font-size:11.5px;color:var(--text-dim);line-height:1.5;font-style:italic}.fr-btn{margin-top:auto;border:1.5px solid;border-radius:10px;padding:9px 14px;background:transparent;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s,background .15s}.fr-btn:hover{opacity:.85;background:#0000000a}.fr-power-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:600px){.fr-power-grid{grid-template-columns:1fr}}.fr-plabel{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.fr-ptool{display:flex;flex-direction:column;margin-bottom:7px}.fr-ptool strong{font-size:12px;color:var(--text)}.fr-ptool span{font-size:11px;color:var(--text-dim)}.fr-wflow{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:12px}.fr-wstep{background:var(--text);color:#fff;border-radius:8px;padding:4px 10px;font-size:11px;font-weight:600}.fr-kp{background:#0000000a;border-radius:8px;padding:10px}.fr-kp-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:5px}.fr-kp-text{font-size:11.5px;color:var(--text-dim);line-height:1.5;font-style:italic}.fr-disc{margin-top:20px;padding:14px;background:#e74c3c0d;border:1px solid rgba(231,76,60,.15);border-radius:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.fr-disc-hdr{grid-column:1 / -1;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#c0392b}.fr-disc-item{font-size:11px;color:var(--text-dim);line-height:1.5}.fr-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:flex-end;justify-content:center}@media(min-width:640px){.fr-overlay{align-items:center;padding:20px}}.fr-modal{background:var(--bg);border-radius:20px 20px 0 0;width:100%;max-width:680px;height:85vh;display:flex;flex-direction:column;box-shadow:0 -20px 60px #0003;overflow:hidden}@media(min-width:640px){.fr-modal{border-radius:20px;height:75vh}}.fr-mhdr{padding:14px 18px;display:flex;align-items:center;gap:12px;border-bottom:2px solid;background:#ffffffb3;flex-shrink:0}.fr-mnum{width:28px;height:28px;border-radius:50%;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fr-mtitle{font-size:14px;font-weight:700;color:var(--text)}.fr-msub{font-size:11px;color:var(--text-dim)}.fr-mclose{margin-left:auto;background:#00000014;border:none;border-radius:50%;width:30px;height:30px;cursor:pointer;color:var(--text-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fr-mclose:hover{background:#00000024}.fr-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.fr-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:10px;text-align:center;padding:20px}.fr-empty-num{width:48px;height:48px;border-radius:50%;color:#fff;font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center}.fr-empty-text{font-size:13px;color:var(--text-dim)}.fr-chips{display:flex;flex-direction:column;gap:7px;width:100%;max-width:460px}.fr-chip{background:#ffffffb3;border:1px solid rgba(0,0,0,.1);border-radius:10px;padding:9px 13px;font-size:12px;color:var(--text);cursor:pointer;text-align:left;box-shadow:2px 2px 6px #0000000d}.fr-chip:hover{background:#ffffffe6}.fr-chip-feat{background:var(--text);color:#fff;border-color:transparent}.fr-chip-feat:hover{background:#3a3a5e}.fr-msg{display:flex;flex-direction:column;gap:3px;max-width:88%}.fr-msg-user{align-self:flex-end}.fr-msg-assistant{align-self:flex-start}.fr-msg-label{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.fr-msg-user .fr-msg-label{text-align:right}.fr-msg-body{background:#ffffffb3;border-radius:12px;padding:11px 13px;font-size:12.5px;color:var(--text);line-height:1.55;box-shadow:2px 2px 8px #0000000f}.fr-msg-user .fr-msg-body{background:var(--text);color:#fff}.fr-typing{display:flex;gap:4px;align-items:center;padding:11px 13px;background:#ffffffb3;border-radius:12px;box-shadow:2px 2px 8px #0000000f}.fr-typing span{width:6px;height:6px;border-radius:50%;background:#aaa;animation:ftb 1.2s infinite}.fr-typing span:nth-child(2){animation-delay:.2s}.fr-typing span:nth-child(3){animation-delay:.4s}@keyframes ftb{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.fr-input-row{padding:10px 14px;display:flex;gap:8px;align-items:flex-end;background:#ffffffb3;border-top:1px solid rgba(0,0,0,.08);flex-shrink:0}.fr-input{flex:1;border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:9px 13px;font-size:12.5px;resize:none;background:#ffffff80;color:var(--text);outline:none;line-height:1.5}.fr-input:focus{border-color:#0003;background:#fffc}.fr-send{width:38px;height:38px;border-radius:50%;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s}.fr-send:disabled{opacity:.4;cursor:not-allowed}.vd-container{padding-bottom:40px}.vd-back-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(var(--vd-accent-rgb, 255,204,0),.08);border:1px solid rgba(var(--vd-accent-rgb, 255,204,0),.2);color:var(--vd-accent-dark, #b8960a);border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;margin-bottom:16px;transition:all .2s}.vd-back-btn:hover{background:rgba(var(--vd-accent-rgb, 255,204,0),.15);border-color:rgba(var(--vd-accent-rgb, 255,204,0),.35)}.vd-hero{position:relative;border-radius:16px;overflow:hidden;height:340px;margin-bottom:16px;box-shadow:var(--neu-out)}.vd-hero-img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:transform .6s ease}.vd-hero:hover .vd-hero-img{transform:scale(1.03)}.vd-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(20,20,20,.95) 0%,rgba(20,20,20,.3) 50%,transparent 100%);pointer-events:none}.vd-hero-content{position:absolute;bottom:0;left:0;right:0;padding:28px 32px;z-index:2}.vd-hero-badge{display:inline-block;background:var(--vd-accent, #FFCC00);color:#000;font-size:9px;font-weight:800;letter-spacing:3px;text-transform:uppercase;padding:3px 10px;border-radius:3px;margin-bottom:10px}.vd-hero-title{font-size:clamp(32px,6vw,56px);font-weight:900;line-height:.95;letter-spacing:-1px;color:#fff}.vd-accent{color:var(--vd-accent, #FFCC00)}.vd-hero-sub{margin-top:8px;font-size:12px;font-weight:400;color:#ffffff80;letter-spacing:3px;text-transform:uppercase}.vd-hero-stats{display:flex;gap:32px;margin-top:20px}.vd-hero-stat-val{font-size:22px;font-weight:800;color:var(--vd-accent, #FFCC00);letter-spacing:-.5px}.vd-hero-stat-unit{font-size:13px;font-weight:400}.vd-hero-stat-lbl{font-size:9px;color:#ffffff73;letter-spacing:2px;text-transform:uppercase}.vd-section-nav{display:flex;gap:6px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.vd-section-nav-btn{background:#f0f0f066;border:1px solid rgba(0,0,0,.06);border-radius:8px;padding:6px 14px;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);cursor:pointer;white-space:nowrap;transition:all .2s}.vd-section-nav-btn:hover{background:rgba(var(--vd-accent-rgb, 255,204,0),.08);color:var(--vd-accent-dark, #b8960a)}.vd-section-nav-active{background:rgba(var(--vd-accent-rgb, 255,204,0),.12);border-color:rgba(var(--vd-accent-rgb, 255,204,0),.3);color:var(--vd-accent-dark, #b8960a)}.vd-section-card{margin-bottom:16px}.vd-section-header{display:flex;align-items:flex-start;justify-content:space-between;cursor:pointer;padding-bottom:12px}.vd-section-label{font-size:9px;font-weight:700;color:var(--vd-accent, #FFCC00);letter-spacing:4px;text-transform:uppercase;margin-bottom:4px}.vd-section-title{font-size:clamp(20px,3vw,30px);font-weight:900;letter-spacing:-.5px;line-height:1.1;color:var(--text)}.vd-gallery-grid{display:grid;grid-template-columns:2fr 1fr;gap:8px}.vd-gallery-item{border-radius:8px;overflow:hidden;position:relative;cursor:pointer;aspect-ratio:16/10}.vd-gallery-main{grid-row:span 2}.vd-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.vd-gallery-item:hover img{transform:scale(1.04)}.vd-gallery-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000b3);padding:20px 12px 8px;font-size:9px;font-weight:600;color:#ffffffb3;letter-spacing:2px;text-transform:uppercase;opacity:0;transition:opacity .3s}.vd-gallery-item:hover .vd-gallery-caption{opacity:1}.vd-specs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#0000000f;border-radius:10px;overflow:hidden}.vd-spec-cell{background:#f0f0f080;padding:20px 18px}.vd-spec-val{font-size:28px;font-weight:900;color:var(--vd-accent, #FFCC00);letter-spacing:-1px;line-height:1}.vd-spec-unit{font-size:14px;font-weight:400}.vd-spec-lbl{font-size:10px;color:var(--text-dim);margin-top:4px;letter-spacing:2px;text-transform:uppercase}.vd-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2px;background:#0000000f;border-radius:10px;overflow:hidden}.vd-info-card{background:#f0f0f080;padding:18px 16px}.vd-info-label{font-size:9px;color:var(--text-dim);letter-spacing:2px;text-transform:uppercase;margin-bottom:4px}.vd-info-value{font-size:15px;font-weight:700;color:var(--text)}.vd-info-highlight{color:var(--vd-accent, #FFCC00)}.vd-info-green{color:#1a8a4a}.vd-service-summary{display:flex;gap:24px;margin-bottom:16px;padding:14px 18px;background:rgba(var(--vd-accent-rgb, 255,204,0),.06);border:1px solid rgba(var(--vd-accent-rgb, 255,204,0),.15);border-radius:10px}.vd-service-stat{text-align:center;flex:1}.vd-service-stat-val{font-size:22px;font-weight:800;color:var(--vd-accent, #FFCC00);display:block}.vd-service-stat-lbl{font-size:9px;color:var(--text-dim);letter-spacing:1.5px;text-transform:uppercase}.vd-service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.vd-svc-card{background:#f0f0f059;border:1px solid rgba(0,0,0,.06);border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .2s,transform .2s}.vd-svc-card:hover{border-color:rgba(var(--vd-accent-rgb, 255,204,0),.4);transform:translateY(-2px)}.vd-svc-top{padding:12px 14px 0}.vd-svc-badge{display:inline-block;font-size:8px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:2px 8px;border-radius:3px}.vd-svc-completed{background:#1a8a4a1f;color:#1a8a4a;border:1px solid rgba(26,138,74,.25)}.vd-svc-scheduled{background:rgba(var(--vd-accent-rgb, 255,204,0),.12);color:var(--vd-accent-dark, #b8960a);border:1px solid rgba(var(--vd-accent-rgb, 255,204,0),.3)}.vd-svc-body{padding:8px 14px}.vd-svc-date{font-size:10px;color:var(--text-dim);letter-spacing:1px;margin-bottom:2px}.vd-svc-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:4px}.vd-svc-items{font-size:11px;color:var(--text-dim);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vd-svc-footer{padding:8px 14px 12px;display:flex;justify-content:space-between;align-items:center}.vd-svc-cost{font-size:14px;font-weight:700;color:var(--vd-accent, #FFCC00)}.vd-svc-link{font-size:9px;color:var(--vd-accent, #FFCC00);letter-spacing:1px;text-transform:uppercase;font-weight:600}.vd-docs-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.vd-docs-count{font-size:12px;color:var(--text-dim);font-weight:500}.vd-upload-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(var(--vd-accent-rgb, 255,204,0),.1);border:1px solid rgba(var(--vd-accent-rgb, 255,204,0),.25);color:var(--vd-accent-dark, #b8960a);border-radius:8px;padding:7px 14px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.vd-upload-btn:hover{background:rgba(var(--vd-accent-rgb, 255,204,0),.18);border-color:rgba(var(--vd-accent-rgb, 255,204,0),.4)}.vd-docs-grid{display:grid;grid-template-columns:1fr;gap:8px}.vd-doc-card{display:flex;align-items:center;gap:12px;background:#f0f0f059;border:1px solid rgba(0,0,0,.06);border-radius:10px;padding:12px 14px;transition:border-color .2s}.vd-doc-card:hover{border-color:rgba(var(--vd-accent-rgb, 255,204,0),.3)}.vd-doc-icon-wrap{width:44px;height:44px;border-radius:10px;background:rgba(var(--vd-accent-rgb, 255,204,0),.08);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--vd-accent, #FFCC00)}.vd-doc-body{flex:1;min-width:0}.vd-doc-name{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vd-doc-meta{font-size:11px;color:var(--text-dim);margin-top:1px}.vd-doc-dl-btn{background:rgba(var(--vd-accent-rgb, 255,204,0),.1);border:1px solid rgba(var(--vd-accent-rgb, 255,204,0),.2);color:var(--vd-accent-dark, #b8960a);width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .2s}.vd-doc-dl-btn:hover{background:rgba(var(--vd-accent-rgb, 255,204,0),.2)}.vd-docs-empty{text-align:center;padding:32px 16px;color:var(--text-dim);font-size:12px;line-height:1.6}.vd-lightbox{position:fixed;inset:0;z-index:2000;background:#000000f2;display:flex;align-items:center;justify-content:center;cursor:pointer}.vd-lightbox img{max-width:95vw;max-height:92vh;object-fit:contain;border-radius:6px}.vd-lightbox-close{position:fixed;top:18px;right:22px;background:none;border:none;color:#fff9;cursor:pointer;transition:color .2s;z-index:2001}.vd-lightbox-close:hover{color:var(--vd-accent, #FFCC00)}.vd-lightbox-caption{position:fixed;bottom:20px;left:50%;transform:translate(-50%);font-size:10px;color:#fff6;letter-spacing:2px;text-transform:uppercase}.vd-modal-overlay{position:fixed;inset:0;z-index:1500;background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.vd-modal{background:var(--bg);border:1px solid rgba(0,0,0,.08);border-radius:16px;width:100%;max-width:560px;max-height:85vh;overflow-y:auto;box-shadow:var(--neu-deep)}.vd-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 24px 12px}.vd-modal-close-btn{background:#0000000f;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim);transition:all .2s;flex-shrink:0}.vd-modal-close-btn:hover{background:var(--vd-accent, #FFCC00);color:#000}.vd-modal-title{font-size:22px;font-weight:900;color:var(--text);letter-spacing:-.5px;margin-top:8px}.vd-modal-sub{font-size:11px;color:var(--text-dim);letter-spacing:1px;margin-top:2px}.vd-modal-body{padding:0 24px 24px}.vd-modal-section-label{font-size:9px;font-weight:700;color:var(--vd-accent, #FFCC00);letter-spacing:3px;text-transform:uppercase;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid rgba(0,0,0,.06)}.vd-modal-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.04)}.vd-modal-item:last-child{border-bottom:none}.vd-modal-item-icon{width:28px;height:28px;background:rgba(var(--vd-accent-rgb, 255,204,0),.1);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--vd-accent, #FFCC00)}.vd-modal-item-body{flex:1}.vd-modal-item-name{font-size:13px;font-weight:600;color:var(--text)}.vd-modal-item-detail{font-size:11px;color:var(--text-dim);margin-top:1px}.vd-modal-item-cost{font-size:13px;font-weight:700;color:var(--vd-accent, #FFCC00);white-space:nowrap}.vd-modal-total{margin-top:12px;padding:12px 14px;background:rgba(var(--vd-accent-rgb, 255,204,0),.06);border:1px solid rgba(var(--vd-accent-rgb, 255,204,0),.12);border-radius:8px;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.vd-modal-total-val{font-size:18px;font-weight:900;color:var(--vd-accent, #FFCC00)}.vd-modal-notes{font-size:12px;color:var(--text-dim);line-height:1.7}@media(max-width:640px){.vd-hero{height:260px}.vd-hero-content{padding:20px}.vd-hero-title{font-size:32px}.vd-hero-stats{gap:16px;flex-wrap:wrap}.vd-hero-stat-val{font-size:18px}.vd-gallery-grid{grid-template-columns:1fr}.vd-gallery-main{grid-row:span 1}.vd-specs-grid{grid-template-columns:repeat(2,1fr)}.vd-info-grid,.vd-service-grid{grid-template-columns:1fr}.vd-service-summary{flex-direction:column;gap:10px}.vd-section-nav{gap:4px}.vd-section-nav-btn{padding:5px 10px;font-size:10px}.vd-vehicle-selector{grid-template-columns:1fr}}.vd-vehicle-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.vd-vehicle-card{border-radius:14px;overflow:hidden;cursor:pointer;background:#f0f0f059;border:1px solid rgba(0,0,0,.06);transition:transform .2s,border-color .2s}.vd-vehicle-card:hover{transform:translateY(-3px);border-color:rgba(var(--vd-accent-rgb, 200,200,200),.4)}.vd-vehicle-card-img{position:relative;height:160px;overflow:hidden}.vd-vehicle-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.vd-vehicle-card:hover .vd-vehicle-card-img img{transform:scale(1.04)}.vd-vehicle-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 60%)}.vd-vehicle-card-body{padding:14px 16px}.vd-vehicle-card-badge{display:inline-block;font-size:8px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:2px 8px;border-radius:3px;color:#000;margin-bottom:6px}.vd-vehicle-card-title{font-size:20px;font-weight:900;letter-spacing:-.5px;color:var(--text);line-height:1.1}.vd-vehicle-card-sub{font-size:11px;color:var(--text-dim);margin-top:3px;letter-spacing:1px}.hm-card{padding:20px}.hm-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:12px}.hm-header-left{display:flex;align-items:center;gap:12px}.hm-icon-badge{width:40px;height:40px;border-radius:12px;background:#ffb43226;color:#c97d00;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--neu-sm)}.hm-title-group{display:flex;flex-direction:column;gap:2px}.hm-title{font-size:15px;font-weight:700;color:var(--text);margin:0}.hm-subtitle{font-size:11px;color:var(--text-dim)}.hm-header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.hm-amount-block{display:flex;flex-direction:column;align-items:flex-end}.hm-negotiated{font-size:17px;font-weight:800;color:var(--text)}.hm-original{font-size:11px;color:var(--text-dim);text-decoration:line-through}.hm-chevron{color:var(--text-dim)}.hm-progress-row{display:flex;align-items:center;gap:10px;margin:14px 0 0}.hm-progress-bar-wrap{flex:1;height:6px;border-radius:3px;background:var(--neu-in, rgba(0,0,0,.08));overflow:hidden}.hm-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#4a7cff,#1abc9c);transition:width .4s ease}.hm-progress-label{font-size:11px;color:var(--text-dim);white-space:nowrap}.hm-stats-row{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.hm-stat{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-dim);background:#0000000a;padding:5px 10px;border-radius:20px;box-shadow:var(--neu-sm)}.hm-stat strong{color:var(--text);font-weight:700}.hm-stat-savings{color:#1a8a4a;background:#1a8a4a14}.hm-stat-savings strong{color:#1a8a4a}.hm-items{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.hm-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:#00000008;box-shadow:var(--neu-sm);cursor:pointer;transition:opacity .2s,background .2s}.hm-item:hover{background:#0000000d}.hm-item-done{opacity:.55}.hm-item-done .hm-item-title{text-decoration:line-through}.hm-check{background:none;border:none;padding:0;cursor:pointer;color:var(--text-dim);margin-top:1px;flex-shrink:0;transition:color .2s}.hm-checked{color:#1a8a4a!important}.hm-item-body{flex:1;min-width:0}.hm-item-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.hm-item-title{font-size:13px;font-weight:700;color:var(--text)}.hm-item-cat{font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:2px 7px;border-radius:4px}.hm-cat-drywall--paint{background:#4a7cff1f;color:#4a7cff}.hm-cat-caulking{background:#1abc9c1f;color:#0d8f74}.hm-cat-install{background:#9b59b61f;color:#7d3faa}.hm-item-desc{font-size:11.5px;color:var(--text-dim);line-height:1.5;margin:0}.hm-item-note{display:block;font-size:11px;color:#c97d00;margin-top:4px}.hm-item-amount{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;min-width:52px}.hm-item-price{font-size:14px;font-weight:700;color:var(--text)}.hm-item-free{font-size:12px;font-weight:800;color:#1a8a4a}.hm-item-free-note{font-size:9px;color:var(--text-dim);text-align:right;line-height:1.3;margin-top:2px}.hm-disclaimer{display:flex;align-items:flex-start;gap:7px;font-size:11px;color:var(--text-dim);background:#e74c3c0f;border-radius:8px;padding:10px 12px;margin-bottom:16px;line-height:1.5}.hm-disclaimer svg{flex-shrink:0;color:#c0392b;margin-top:1px}.hm-footer{border-top:1px solid rgba(0,0,0,.07);padding-top:14px;display:flex;flex-direction:column;gap:6px}.hm-footer-row{display:flex;justify-content:space-between;align-items:center}.hm-footer-label{font-size:13px;color:var(--text-dim)}.hm-footer-original{font-size:13px;color:var(--text-dim);text-decoration:line-through}.hm-footer-save{font-size:13px;font-weight:700;color:#1a8a4a}.hm-footer-total-row{background:#4a7cff12;border-radius:8px;padding:10px 12px;margin-top:4px}.hm-footer-total-row .hm-footer-label{font-size:14px;font-weight:700;color:var(--text)}.hm-footer-total{font-size:20px;font-weight:900;color:var(--text)}.hm-timestamp{font-size:10px;color:var(--text-dim);letter-spacing:.3px;opacity:.8}.hm-footer-ts-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px;margin-top:6px;padding-top:8px;border-top:1px solid rgba(0,0,0,.05)}.hm-footer-ts{font-size:10px;color:var(--text-dim);opacity:.75;letter-spacing:.2px}.advisor-topic-pills{display:flex;gap:8px;padding:0 0 16px;flex-wrap:wrap}.advisor-pill{border:1.5px solid rgba(0,0,0,.08);background:#efefef59;color:var(--text-dim);font:600 13px/1 -apple-system,system-ui,sans-serif;padding:9px 18px;border-radius:20px;cursor:pointer;transition:all .2s;box-shadow:var(--neu-xs)}.advisor-pill:hover{background:#0000000a;color:var(--text)}.advisor-pill.active{background:#4a7cff1a;color:var(--accent);border-color:#4a7cff4d;box-shadow:0 2px 8px #4a7cff1a}.cal-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:10px}.cal-view-toggle{display:flex;gap:4px;background:#efefef59;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:3px;box-shadow:var(--neu-in)}.cal-view-btn{border:none;background:transparent;color:var(--text-dim);font:600 13px/1 -apple-system,system-ui,sans-serif;padding:8px 16px;border-radius:10px;cursor:pointer;transition:all .2s}.cal-view-btn.active{background:#4a7cff1a;color:var(--accent);box-shadow:0 2px 8px #4a7cff14}.cal-download-btn{display:flex;align-items:center;gap:6px;border:1.5px solid rgba(74,124,255,.25);background:#4a7cff0f;color:var(--accent);font:600 13px/1 -apple-system,system-ui,sans-serif;padding:9px 16px;border-radius:12px;cursor:pointer;transition:all .2s}.cal-download-btn:hover{background:#4a7cff1f}.cal-month-nav{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.cal-nav-btn{border:none;background:#efefef59;border-radius:10px;padding:8px;cursor:pointer;color:var(--text-dim);box-shadow:var(--neu-xs);transition:all .2s}.cal-nav-btn:hover{color:var(--text);box-shadow:var(--neu-sm)}.cal-month-label{font:700 17px/1 -apple-system,system-ui,sans-serif;color:var(--text)}.cal-grid-card{padding:16px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day-header{text-align:center;font:600 11px/1 -apple-system,system-ui,sans-serif;color:var(--text-dim);padding:6px 0 10px;letter-spacing:.5px}.cal-cell{min-height:52px;padding:4px;border-radius:8px;position:relative;transition:background .2s}.cal-cell:not(.empty):hover{background:#00000008}.cal-cell.today{background:#4a7cff14;border:1px solid rgba(74,124,255,.2)}.cal-cell.empty{opacity:0}.cal-day-num{font:600 12px/1 -apple-system,system-ui,sans-serif;color:var(--text);display:block;margin-bottom:4px}.cal-cell.today .cal-day-num{color:var(--accent);font-weight:700}.cal-cell-events{display:flex;gap:3px;flex-wrap:wrap}.cal-event-dot{width:6px;height:6px;border-radius:50%}.cal-event-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.cal-event-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#efefef40;border:1px solid rgba(0,0,0,.04)}.cal-event-badge{font:600 11px/1 -apple-system,system-ui,sans-serif;padding:5px 10px;border-radius:8px;white-space:nowrap;flex-shrink:0}.cal-event-info{flex:1;min-width:0}.cal-event-title{font:600 13px/1.3 -apple-system,system-ui,sans-serif;color:var(--text)}.cal-event-date{font:400 12px/1.3 -apple-system,system-ui,sans-serif;color:var(--text-dim);margin-top:2px}.cal-event-countdown{font:700 13px/1 -apple-system,system-ui,sans-serif;color:var(--text-dim);white-space:nowrap;flex-shrink:0}.cal-event-countdown.urgent{color:var(--danger)}.cal-empty{text-align:center;color:var(--text-dim);padding:24px;font-size:14px}.cal-sub-card{margin-top:8px}.cal-sub-row{display:flex;align-items:flex-start;gap:12px;padding:4px}.cal-sub-row svg{color:var(--accent);flex-shrink:0;margin-top:2px}.cal-sub-title{font:600 14px/1.3 -apple-system,system-ui,sans-serif;color:var(--text)}.cal-sub-desc{font:400 13px/1.4 -apple-system,system-ui,sans-serif;color:var(--text-dim);margin-top:2px}.prop-hero{display:flex;align-items:center;gap:16px;padding:20px}.prop-hero-icon{width:56px;height:56px;border-radius:16px;background:#1a8a4a14;display:flex;align-items:center;justify-content:center;color:#1a8a4a;flex-shrink:0;box-shadow:var(--neu-xs)}.prop-hero-content h3{font-size:15px;font-weight:600;color:var(--text);margin-bottom:4px}.prop-hero-value{font:900 28px/1 -apple-system,system-ui,sans-serif;color:var(--text);letter-spacing:-.5px}.prop-hero-sub{font:400 13px/1 -apple-system,system-ui,sans-serif;color:var(--text-dim);margin-top:4px}.prop-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}.prop-stat{padding:16px;text-align:center}.prop-stat-label{font:500 12px/1 -apple-system,system-ui,sans-serif;color:var(--text-dim);margin-bottom:6px}.prop-stat-value{font:800 20px/1 -apple-system,system-ui,sans-serif;color:var(--text);letter-spacing:-.3px}.prop-stat-sub{font:400 11px/1 -apple-system,system-ui,sans-serif;color:var(--text-dim);margin-top:4px}@media(max-width:480px){.prop-stats-grid{grid-template-columns:1fr}.cal-grid{gap:1px}.cal-cell{min-height:42px;padding:3px}}.pa-two-col{display:grid;grid-template-columns:1fr 320px;gap:18px;margin-top:20px}@media(max-width:768px){.pa-two-col{grid-template-columns:1fr}}@media(max-width:1100px){.pa-three-col{grid-template-columns:1fr!important}}.aws-refresh-btn{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border:none;border-radius:10px;padding:8px 16px;font-size:13px;color:var(--text);cursor:pointer;box-shadow:var(--neu-sm);transition:box-shadow .2s}.aws-refresh-btn:hover{box-shadow:var(--neu-out)}.aws-refresh-btn:active{box-shadow:var(--neu-in)}.aws-refresh-btn:disabled{opacity:.5;cursor:default}@keyframes aws-spin{to{transform:rotate(360deg)}}.aws-spin{animation:aws-spin .8s linear infinite}.aws-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:800px){.aws-two-col{grid-template-columns:1fr}}.aws-bar-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.aws-bar-label{width:130px;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.aws-bar-track{flex:1;height:20px;background:var(--bg);border-radius:6px;box-shadow:var(--neu-in);overflow:hidden}.aws-bar-fill{height:100%;border-radius:6px;transition:width .6s cubic-bezier(.16,1,.3,1);min-width:2px}.aws-bar-amount{width:70px;text-align:right;font-size:12px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.aws-project-list{display:flex;flex-direction:column;gap:2px}.aws-project-item{border-radius:10px;overflow:hidden}.aws-project-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;cursor:pointer;border-radius:10px;transition:background .15s}.aws-project-header:hover{background:#00000008}.aws-project-name{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text)}.aws-project-decom .aws-project-name{opacity:.5}.aws-decom-badge{font-size:10px;font-weight:500;color:var(--danger);background:var(--danger-light);padding:2px 8px;border-radius:6px}.aws-project-counts{display:flex;align-items:center;gap:8px;color:var(--text-dim)}.aws-resource-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;background:var(--bg);padding:3px 8px;border-radius:8px;box-shadow:var(--neu-xs);font-variant-numeric:tabular-nums}.aws-resource-total{font-size:11px;color:var(--text-dim);margin-left:4px}.aws-project-resources{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px}.aws-resource-group-label{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.aws-resource-name{font-size:12px;color:var(--text);padding:4px 0;border-bottom:1px solid rgba(0,0,0,.04);word-break:break-all}.aws-resource-name:last-child{border-bottom:none}
