:root,[data-theme=dark]{--bg-primary:#0a0e14;--bg-secondary:#0f1419;--bg-tertiary:#151b23;--card-bg:#141a22;--card-bg-hover:#1a2230;--card-border:#ffffff1f;--accent:#00d4aa;--accent-light:#00ffc8;--accent-dark:#00a080;--accent-bg:#00d4aa1a;--accent-border:#00d4aa4d;--text-primary:#f0f4f8;--text-secondary:#a8b5c4;--text-muted:#5c6b7e;--success:#10b981;--success-bg:#10b9811a;--warning:#f59e0b;--warning-bg:#f59e0b1a;--danger:#ef4444;--danger-bg-legacy:#ef44441a;--chart-1:#00d4aa;--chart-2:#6366f1;--chart-3:#f59e0b;--chart-4:#ec4899;--chart-5:#8b5cf6;--border:#ffffff14;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 30px #00d4aa26;--sidebar-width:260px;--radius-legacy-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--card-bg:#fff;--card-bg-hover:#f8fafc;--card-border:#0000001f;--accent:#0d9488;--accent-light:#14b8a6;--accent-dark:#0f766e;--accent-bg:#0d948814;--accent-border:#0d948833;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--success:#059669;--warning:#d97706;--danger:#dc2626;--border:#00000014;--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001f;--shadow-glow:0 0 30px #0d94881a}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0000;color:#f0f4f8;color:var(--text-primary);font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;min-height:100vh;overflow-x:hidden;overflow-y:auto}code{font-family:JetBrains Mono,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.logo-icon{align-items:center;background:linear-gradient(135deg,#00d4aa,#00a080);background:linear-gradient(135deg,var(--accent),var(--accent-dark));border-radius:12px;border-radius:var(--radius-md);box-shadow:0 0 30px #00d4aa26;box-shadow:var(--shadow-glow);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.logo-icon svg{color:#0a0e14;color:var(--bg-primary);height:22px;width:22px}.logo-text{color:var(--text);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.02em}.logo-text .accent,.sidebar-action-btn.active{color:#00d4aa;color:var(--accent)}.lang-btn,.theme-btn{align-items:center;background:#151b23;background:var(--bg-tertiary);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);color:#a8b5c4;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;gap:8px;justify-content:flex-start;padding:10px 14px;transition:all .2s ease;width:100%}.lang-btn:hover,.theme-btn:hover{background:#1a2230;background:var(--card-bg-hover);border-color:#00d4aa4d;border-color:var(--accent-border);color:#f0f4f8;color:var(--text-primary)}.lang-btn svg,.theme-btn svg{height:18px;width:18px}[data-theme=dark] .sun-icon,[data-theme=light] .moon-icon{display:none}[data-theme=dark] .moon-icon,[data-theme=light] .sun-icon{display:block}@keyframes blob-float-1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(120px,-150px) scale(1.2)}66%{transform:translate(-80px,100px) scale(.85)}}@keyframes blob-float-2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-150px,120px) scale(.9)}66%{transform:translate(180px,-100px) scale(1.3)}}@keyframes blob-float-3{0%,to{transform:translate(0) scale(1)}33%{transform:translate(100px,160px) scale(1.15)}66%{transform:translate(-120px,-80px) scale(.8)}}@keyframes blob-float-4{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-100px,-140px) scale(1.25)}66%{transform:translate(140px,100px) scale(.9)}}@keyframes blob-float-5{0%,to{transform:translate(0) scale(1)}33%{transform:translate(160px,80px) scale(.85)}66%{transform:translate(-90px,-160px) scale(1.35)}}@keyframes blob-float-6{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-140px,180px) scale(1.3)}66%{transform:translate(110px,-90px) scale(.75)}}.blob{border-radius:50%;filter:blur(60px);opacity:.5;position:absolute;will-change:transform}[data-theme=light] .blob{opacity:.35}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.snapshot-create-form{align-items:flex-end;display:flex;gap:8px;width:100%}.snapshot-create-form .form-input{width:100%}.snapshot-create-form .btn{flex-shrink:0}@media (min-width:769px){.snapshot-create-form .form-input{max-width:12rem}}@media (max-width:768px){.snapshot-create-form{align-items:stretch;flex-direction:column}.snapshot-create-form .btn{width:100%}}.full-width{justify-content:center;width:100%}.toggle-group:has(.toggle-btn.active){background:#00d4aa1a;background:var(--accent-bg);border-color:#00d4aa4d;border-color:var(--accent-border);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow-sm)}.toggle-btn.active{background:#00d4aa;background:var(--accent);border:1px solid #00d4aa4d;border:1px solid var(--accent-border);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow-sm);color:#0a0e14;color:var(--bg-primary);font-weight:600}.toggle-group .info-btn{align-items:center;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:0;pointer-events:auto;position:relative;width:24px;z-index:10}.toggle-btn>svg,.toggle-group .info-btn svg{display:block;flex-shrink:0;height:14px;width:14px}.toggle-group .info-btn:hover{background:#00d4aa1a;background:var(--accent-bg);color:#00d4aa;color:var(--accent)}.toggle-group:has(.toggle-btn.active) .info-btn{background:#0000;color:#f0f4f8;color:var(--text-primary)}.toggle-group:has(.toggle-btn.active) .info-btn:hover{background:#ffffff1a}.toggle-btn:hover:not(.active){color:#a8b5c4;color:var(--text-secondary)}.metric-card.clickable{cursor:pointer}.metric-icon.liquid{background:linear-gradient(135deg,#6366f133,#6366f10d);color:#6366f1}.metric-icon.portfolio{background:linear-gradient(135deg,#00d4aa33,#00d4aa0d);color:#00d4aa;color:var(--accent)}.metric-icon.cashflow{background:linear-gradient(135deg,#10b98133,#10b9810d);color:#10b981;color:var(--success)}.metric-icon.appreciation{background:linear-gradient(135deg,#f59e0b33,#f59e0b0d);color:#f59e0b;color:var(--warning)}.metric-icon.equity{background:linear-gradient(135deg,#ec489933,#ec48990d);color:#ec4899}.metric-icon.income{background:linear-gradient(135deg,#8b5cf633,#8b5cf60d);color:#8b5cf6}.metric-value{color:#f0f4f8;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.metric-value.positive{color:#10b981;color:var(--success)}.metric-value.negative{color:#ef4444;color:var(--danger)}.metric-subtitle.positive{color:#10b981;color:var(--success)}.metric-subtitle.muted{color:#5c6b7e;color:var(--text-muted)}.chart-card.large{grid-column:1/-1}.fire-hero.clickable{cursor:pointer}.fire-hero.clickable:hover{border-color:#8b5cf673;box-shadow:0 4px 16px #0006;box-shadow:var(--shadow-md);transform:translateY(-2px)}.sankey-container{display:flex;justify-content:center}.timeline-event-card{background:#141a22;background:var(--card-bg);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:8px;min-width:140px;padding:16px 20px;pointer-events:auto;transition:all .2s ease}.event-name.inactive{color:#5c6b7e;color:var(--text-muted);text-decoration:line-through}.timeline-event-card:hover{border-color:#00d4aa4d;border-color:var(--accent-border);box-shadow:0 4px 16px #0006;box-shadow:var(--shadow-md)}.timeline-event-card.selected{border-color:#00d4aa;border-color:var(--accent);box-shadow:0 0 30px #00d4aa26;box-shadow:var(--shadow-glow)}.timeline-event-card-name.inactive{color:#5c6b7e;color:var(--text-muted);text-decoration:line-through}.timeline-action-panel button.danger:hover{background:#ef44441a;background:var(--danger-bg-legacy);color:#ef4444;color:var(--danger)}.timeline-action-panel button.success:hover{background:#10b9811a;background:var(--success-bg);color:#10b981;color:var(--success)}.event-card.selected{border-color:#00d4aa;border-color:var(--accent);box-shadow:0 0 30px #00d4aa26;box-shadow:var(--shadow-glow)}.range-labels{color:#5c6b7e;color:var(--text-muted);font-size:.75rem}.range-value{color:#00d4aa;color:var(--accent)}.asset-list{border:1px solid #ffffff14;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);max-height:200px;padding:8px}.chart-card.full-height{display:flex;flex-direction:column;height:100%}.chart-card.full-height .chart-body{align-items:center;display:flex;flex:1 1;justify-content:center}.stat.positive .stat-value{color:#10b981;color:var(--success)}.stat.negative .stat-value{color:#ef4444;color:var(--danger)}.form-label{color:#a8b5c4;color:var(--text-secondary);display:block;font-size:.875rem;font-weight:600;margin-bottom:10px;margin-top:0}.form-group{display:flex;flex-direction:column;margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group--reduced-margin{margin-bottom:10px}.form-input{background:#151b23;background:var(--bg-tertiary);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);color:#f0f4f8;color:var(--text-primary);font-family:inherit;font-size:.9375rem;padding:14px 16px;transition:all .3s ease;width:100%}.form-input:focus{background:#141a22;background:var(--card-bg);border-color:#00d4aa;border-color:var(--accent);box-shadow:0 0 0 3px #00d4aa1a;box-shadow:0 0 0 3px var(--accent-bg);outline:none}.form-input::placeholder{color:#5c6b7e;color:var(--text-muted)}.form-input.error{border-color:#ef4444;box-shadow:0 0 0 1px #ef4444}.form-input.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}input[type=date]{appearance:none}input[type=date]::-webkit-calendar-picker-indicator{display:none}.input-with-prefix,.input-with-suffix{align-items:center;display:flex;position:relative}.input-prefix,.input-suffix{color:#5c6b7e;color:var(--text-muted);font-size:.9375rem;pointer-events:none;position:absolute}.input-prefix{left:14px}.input-suffix{right:14px}.input-with-prefix .form-input{padding-left:32px}.input-with-suffix .form-input{padding-right:32px}.snapshot-card{background:#141a22;background:var(--card-bg);border:1px solid #ffffff1f;border:1px solid var(--card-border);border-radius:12px;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:12px;padding:16px}.snapshot-card--active{background:linear-gradient(0deg,#10b98114,#10b98114),#141a22;background:linear-gradient(0deg,var(--success-soft,#10b98114),var(--success-soft,#10b98114)),var(--card-bg);border-color:#10b981;border-color:var(--success);box-shadow:0 0 0 1px #10b9811f,0 0 0 2px #10b98152;box-shadow:0 0 0 1px var(--success-soft,#10b9811f),0 0 0 2px #10b98152}.snapshot-meta-row{align-items:center;color:#5c6b7e;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:.75rem;gap:8px;justify-content:space-between}.snapshot-date,.snapshot-updated{align-items:center;display:inline-flex;gap:4px}.snapshot-pill.snapshot-pill--active{background:#10b9811f;background:var(--success-soft,#10b9811f);border-radius:999px;color:#10b981;color:var(--success);font-size:.75rem;font-weight:600;padding:2px 10px;vertical-align:middle;white-space:nowrap}@media (max-width:768px){.sidebar{box-shadow:4px 0 24px #0006;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:300px;z-index:250}.sidebar.open{transform:translateX(0)}.page{padding:30px 12px calc(20px + env(safe-area-inset-bottom, 0))}.page.active{animation:mobileSlideIn .3s ease;padding-top:30px}@keyframes mobileSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-actions{align-items:center;display:flex;flex:0 0 auto;flex-wrap:nowrap;gap:8px;min-width:0;order:2}.page-actions .btn{flex:0 0 auto;font-size:.875rem;min-width:auto;padding:10px 16px;white-space:nowrap}.page-actions .btn span,.page-actions .btn-ghost span{display:none}.page-actions .btn svg{height:18px;width:18px}.metric-value{font-size:1.5rem}.page{box-sizing:border-box;max-width:100vw;overflow-x:hidden;width:100%}.chart-card.full-height .chart-body{height:500px!important}.stat{flex:1 1;min-width:80px}.nav-menu{padding:12px 8px}.lang-btn,.theme-btn{font-size:.8125rem;padding:12px}.form-input{font-size:16px;min-height:48px}}@media (max-width:375px){.page{padding:0 12px calc(20px + env(safe-area-inset-bottom, 0))}.metric-value{font-size:1.375rem}.page-actions{gap:6px}.page-actions .btn{font-size:.8125rem;padding:8px 14px}}.promo-section .blob{opacity:.55}[data-theme=light] .promo-section .blob{opacity:.3}.promo-tagline .highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#00d4aa,#6366f1);background:linear-gradient(135deg,var(--accent),var(--chart-2));-webkit-background-clip:text;background-clip:text}.feature-icon.portfolio{background:linear-gradient(135deg,#00d4aa40,#00d4aa1a);box-shadow:0 4px 12px #00d4aa33;color:#00d4aa;color:var(--accent)}.feature-icon.simulation{background:linear-gradient(135deg,#6366f140,#6366f11a);box-shadow:0 4px 12px #6366f133;color:#6366f1}.feature-icon.timeline{background:linear-gradient(135deg,#f59e0b40,#f59e0b1a);box-shadow:0 4px 12px #f59e0b33;color:#f59e0b;color:var(--warning)}.feature-icon.analytics{background:linear-gradient(135deg,#ec489940,#ec48991a);box-shadow:0 4px 12px #ec489933;color:#ec4899}.feature-icon.freedom{background:linear-gradient(135deg,#8b5cf640,#8b5cf61a);box-shadow:0 4px 12px #8b5cf633;color:#8b5cf6}.feature-icon.calculator{background:linear-gradient(135deg,#3b82f640,#3b82f61a);box-shadow:0 4px 12px #3b82f633;color:#3b82f6}.auth-tab.active{background:#141a22;background:var(--card-bg);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow-sm);color:#f0f4f8;color:var(--text-primary);font-weight:600}[data-theme=dark] .auth-tab.active{background:#10b9811a;background:var(--success-bg);border:1px solid #10b981;border:1px solid var(--success);box-shadow:0 0 0 1px #10b9811a,0 2px 8px #0000004d;box-shadow:0 0 0 1px var(--success-bg),var(--shadow-sm);color:#10b981;color:var(--success)}.auth-tab:hover:not(.active){color:#f0f4f8;color:var(--text-primary)}.auth-form.active{display:flex}.input-with-icon{position:relative}.input-with-icon .form-input{background:#151b23;background:var(--bg-tertiary);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);padding-left:48px;padding-right:48px;transition:all .3s ease}[data-theme=dark] .input-with-icon .form-input{background:#ffffff0d;border-color:#ffffff26}.input-with-icon .form-input:focus{background:#141a22;background:var(--card-bg);border-color:#00d4aa;border-color:var(--accent);box-shadow:0 0 0 3px #00d4aa1a;box-shadow:0 0 0 3px var(--accent-bg)}[data-theme=dark] .input-with-icon .form-input:focus{background:#ffffff14;box-shadow:0 0 0 3px #00d4aa26}.input-icon{color:#5c6b7e;color:var(--text-muted);left:16px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:color .3s ease;z-index:1}[data-theme=light] .input-icon{color:#6b7280;opacity:1}.input-with-icon:focus-within .input-icon{color:#00d4aa;color:var(--accent)}.input-icon svg{height:18px;width:18px}.checkbox-label{align-items:center;color:#a8b5c4;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:10px}.checkbox-label input{accent-color:#00d4aa;accent-color:var(--accent);height:18px;width:18px}.divider{align-items:center;display:flex;gap:16px;margin:8px 0}.divider:after,.divider:before{background:#ffffff14;background:var(--border);content:"";flex:1 1;height:1px}.divider span{color:#a8b5c4;color:var(--text-secondary);font-size:.8125rem;font-weight:500}.strength-bar.active.weak{background:#ef4444;background:var(--danger)}.strength-bar.active.medium{background:#f59e0b;background:var(--warning)}.strength-bar.active.strong{background:#10b981;background:var(--success)}.strength-text{color:#a8b5c4;color:var(--text-secondary);font-size:.75rem;font-weight:500;margin-top:4px}body.modal-drawer-open,html.modal-drawer-open{height:100%;overflow:hidden!important;position:fixed;width:100%}@media (max-width:768px){body.modal-drawer-open .main-content,body.modal-drawer-open .page{-webkit-overflow-scrolling:none;overflow:hidden!important;overscroll-behavior:none;touch-action:none}body.modal-drawer-open{-webkit-overflow-scrolling:none;overscroll-behavior:none}}.snapshot-badge{background:#00d4aa1a;background:var(--accent-bg);border:1px solid #00d4aa4d;border:1px solid var(--accent-border);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow-sm);color:#00d4aa;color:var(--accent);font-size:.8125rem;font-weight:500;gap:6px;margin-left:12px;padding:6px 12px;transition:all .2s ease;vertical-align:middle}.snapshot-badge:hover{background:#00d4aa;background:var(--accent);border-color:#00d4aa;border-color:var(--accent);box-shadow:0 4px 16px #0006;box-shadow:var(--shadow-md);color:#0a0e14;color:var(--bg-primary);transform:translateY(-1px)}.snapshot-badge.not-now{animation:pulse-warning 2s infinite;background:#f59e0b26;border-color:#f59e0b66;box-shadow:0 2px 8px #f59e0b33;color:#f59e0b;color:var(--warning);font-weight:600}.snapshot-badge.not-now:hover{background:#f59e0b;background:var(--warning);border-color:#f59e0b;border-color:var(--warning);box-shadow:0 4px 12px #f59e0b4d;color:#0a0e14;color:var(--bg-primary);transform:translateY(-2px)}.snapshot-badge svg{height:14px;width:14px}.snapshot-badge.not-now svg:not(.snapshot-close-btn svg){animation:rotate-history 3s linear infinite}.snapshot-close-btn{align-items:center;background:none;border:none;border-radius:3px;color:inherit;cursor:pointer;display:inline-flex;justify-content:center;margin-left:4px;padding:2px;transition:background-color .2s ease,color .2s ease}.snapshot-close-btn:hover{background-color:#0000001a;color:#0a0e14;color:var(--bg-primary)}.snapshot-close-btn:active{transform:scale(.95)}@keyframes rotate-history{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.6}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-history{0%,to{opacity:1}50%{opacity:.6}}body.snapshot-mode{position:relative}body.snapshot-mode:before{background:linear-gradient(90deg,#f59e0b,#f59e0bcc 50%,#f59e0b);background:linear-gradient(90deg,var(--warning) 0,#f59e0bcc 50%,var(--warning) 100%);box-shadow:0 2px 8px #f59e0b4d;content:"";height:4px;left:0;position:fixed;right:0;top:0;z-index:9999}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0a0e14;background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff14;background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#5c6b7e;background:var(--text-muted)}:focus-visible{outline:2px solid #00d4aa;outline:2px solid var(--accent);outline-offset:2px}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #00d4aa;outline:2px solid var(--accent);outline-offset:2px}:root{--brand-radius:20px;--brand-radius-chip:12px;--brand-gradient:linear-gradient(135deg,#00d4aa,#6366f1);--brand-surface:#171f29;--brand-shadow-soft:0 4px 18px #00000040;--chip-income-fg:#34d399;--chip-income-bg:#10b98129;--chip-expense-fg:#f87171;--chip-expense-bg:#ef444424;--chip-realestate-fg:#60a5fa;--chip-realestate-bg:#3b82f626;--chip-investment-fg:#4ade80;--chip-investment-bg:#22c55e24;--chip-cash-fg:#22d3ee;--chip-cash-bg:#06b6d424}[data-theme=light]{--brand-surface:#fff;--brand-shadow-soft:0 4px 18px #0f172a12;--chip-income-fg:#059669;--chip-income-bg:#0596691a;--chip-expense-fg:#dc2626;--chip-expense-bg:#dc262617;--chip-realestate-fg:#2563eb;--chip-realestate-bg:#2563eb1a;--chip-investment-fg:#16a34a;--chip-investment-bg:#16a34a1a;--chip-cash-fg:#0891b2;--chip-cash-bg:#0891b21a}.brand-card{background:#171f29;background:var(--brand-surface);border:1px solid var(--border);border-radius:20px;border-radius:var(--brand-radius);box-shadow:0 4px 18px #00000040;box-shadow:var(--brand-shadow-soft);padding:24px}.brand-chip{align-items:center;border-radius:12px;border-radius:var(--brand-radius-chip);display:inline-flex;height:40px;justify-content:center;width:40px}.brand-chip svg{height:20px;width:20px}.brand-gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#00d4aa,#6366f1);background:var(--brand-gradient);-webkit-background-clip:text;background-clip:text;color:#0000}.brand-btn-gradient{background:linear-gradient(135deg,#00d4aa,#6366f1);background:var(--brand-gradient);border:none;border-radius:999px;box-shadow:0 4px 16px #00d4aa40;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 28px;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.brand-btn-gradient:hover{filter:brightness(1.06);transform:translateY(-1px)}.brand-btn-gradient:active{transform:translateY(0)}.brand-btn-gradient:disabled{cursor:not-allowed;opacity:.5;transform:none}@media (prefers-reduced-motion:reduce){.brand-btn-gradient{transition:none}}@font-face{font-display:block;font-family:Outfit;font-style:normal;font-weight:400 700;src:url(/static/media/Outfit-latin.b2192fd47f27741a2c06.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:block;font-family:Outfit;font-style:normal;font-weight:400 700;src:url(/static/media/Outfit-latin-ext.7c255b9acafc833be695.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:block;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/JetBrainsMono-latin.fd315cf2d3cfd413ff75.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:block;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/JetBrainsMono-latin-ext.1782f3c597348d84ff1e.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}:root{--bg:#0b0f1e;--surface:#161d31;--surface-2:#1b2338;--sidebar:#0e1326;--text:#f2f5fd;--text-soft:#aab3cf;--text-faint:#7580a1;--line:#ffffff14;--line-strong:#ffffff24;--fill:#ffffff0f;--fill-2:#ffffff1a;--hover:#ffffff0a;--track:#ffffff1f;--grid:#ffffff17;--teal:#00d4aa;--sky:#38bdf8;--violet:#8b5cf6;--pink:#ec4899;--green:#10b981;--amber:#f5a962;--rose:#fb7185;--orange:#ff6b35;--pro:#a855f7;--pro-bg:#a855f724;--pro-border:#a855f766;--warn-text:#fbbf24;--warn-bg:#f59e0b1f;--warn-border:#f59e0b61;--danger-text:#fb7185;--danger-bg:#fb71851f;--danger-border:#fb718557;--ok-text:#4ade9d;--grad:linear-gradient(90deg,#00d4aa,#8b5cf6);--grad-vivid:linear-gradient(105deg,#00d4aa,#38bdf8 32%,#8b5cf6 66%,#ec4899);--shadow:0 24px 60px -30px #000000a6;--shadow-soft:0 12px 30px -20px #0009;--fs-2xs:10px;--fs-xs:11.5px;--fs-sm:13px;--fs-md:14px;--fs-lg:15.5px;--fs-xl:19px;--fs-2xl:26px;--fs-num-sm:18px;--fs-num:22px;--fs-num-lg:30px;--radius:20px;--radius-sm:13px;--h:40px;--h-sm:32px;--h-lg:46px}:root[data-theme=light]{--bg:#eef1f8;--surface:#fff;--surface-2:#fff;--sidebar:#fff;--text:#1b2338;--text-soft:#58607e;--text-faint:#949cb8;--line:#1b233817;--line-strong:#1b233829;--fill:#1b23380d;--fill-2:#1b233817;--hover:#1b23380a;--track:#1b23381f;--grid:#1b233817;--teal:#0a9e83;--rose:#ef4363;--pro:#9333ea;--pro-bg:#9333ea14;--pro-border:#9333ea47;--warn-text:#b45309;--danger-text:#d92d4c;--danger-bg:#d92d4c14;--danger-border:#d92d4c42;--ok-text:#0c9366;--shadow:0 16px 40px -22px #1b233842;--shadow-soft:0 10px 26px -20px #1b23384d}html{-webkit-text-size-adjust:100%;background-attachment:fixed;background-color:var(--bg);background-image:radial-gradient(60% 42% at 64% -6%,#8b5cf633,#0000 62%),radial-gradient(48% 40% at 16% 106%,#ec489929,#0000 62%),radial-gradient(44% 46% at 106% 40%,#38bdf826,#0000 62%),radial-gradient(52% 34% at 80% 110%,#00d4aa21,#0000 62%),radial-gradient(38% 34% at -6% 52%,#6366f124,#0000 62%),radial-gradient(32% 28% at 12% 6%,#00d4aa1a,#0000 62%);background-repeat:no-repeat;scrollbar-color:var(--track) #0000;scrollbar-gutter:stable;scrollbar-width:thin}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--track);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--line-strong);background-clip:content-box}::-webkit-scrollbar-corner{background:#0000}.bg{contain:layout paint;inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:0}.bg:after{background:radial-gradient(140% 90% at 50% 0,#0000 45%,#00000059 100%);content:"";inset:0;position:absolute}:root[data-theme=light] .bg:after{background:radial-gradient(140% 90% at 50% 0,#0000 50%,#1b233812 100%)}.aurora{border-radius:50%;filter:blur(80px);opacity:.34;position:absolute;will-change:transform}:root[data-theme=light] .aurora{opacity:.18}.aurora.a1{animation:drift 34s ease-in-out infinite;background:#8b5cf642;height:520px;left:46%;top:-26%;width:700px}.aurora.a2{animation:drift 44s ease-in-out infinite reverse;background:#ec489952;bottom:-22%;height:480px;left:14%;width:560px}.aurora.a3{animation:drift 38s ease-in-out infinite;background:#38bdf84d;height:520px;right:-14%;top:30%;width:520px}.aurora.a4{animation:drift 50s ease-in-out infinite reverse;background:#00d4aa42;bottom:-18%;height:420px;right:22%;width:620px}.aurora.a5{animation:drift 56s ease-in-out infinite;background:#6366f147;height:400px;left:-10%;top:46%;width:460px}.aurora.a6{animation:drift 42s ease-in-out infinite reverse;background:#00d4aa33;height:340px;left:8%;top:4%;width:380px}@keyframes drift{0%,to{transform:translateZ(0) scale(1)}33%{transform:translate3d(70px,-46px,0) scale(1.09)}66%{transform:translate3d(-52px,58px,0) scale(.94)}}.bg-ribbons{animation:sway 30s ease-in-out infinite alternate;filter:blur(12px);height:118%;left:-12%;opacity:.5;position:absolute;top:-8%;width:124%;will-change:transform}:root[data-theme=light] .bg-ribbons{opacity:.3}.bg-ribbons path{fill:none;stroke-linecap:round}.bg-ribbons .rb1{stroke-width:2.5}.bg-ribbons .rb2{stroke-width:1.6}.bg-ribbons .rb3{stroke-width:1.1}.bg-ribbons.two{animation:sway-b 46s ease-in-out infinite alternate;filter:blur(18px);opacity:.38}:root[data-theme=light] .bg-ribbons.two{opacity:.22}@keyframes sway-b{0%{transform:translateZ(0) rotate(0deg)}to{transform:translate3d(34px,-26px,0) rotate(1.2deg)}}@keyframes sway{0%{transform:translateZ(0)}to{transform:translate3d(-28px,32px,0)}}.mote{border-radius:50%;height:4px;opacity:.55;position:absolute;width:4px;will-change:transform,translate,opacity}.mote.m1{animation:pulse 9s ease-in-out infinite;background:var(--teal);box-shadow:0 0 14px 2px var(--teal);left:18%;top:22%}.mote.m2{animation:pulse 13s ease-in-out 2s infinite;background:var(--violet);box-shadow:0 0 16px 3px var(--violet);left:72%;top:64%}.mote.m3{animation:pulse 11s ease-in-out 4s infinite;background:var(--pink);box-shadow:0 0 12px 2px var(--pink);left:88%;top:40%}.mote.m4{animation:pulse 15s ease-in-out 1s infinite;background:var(--sky);box-shadow:0 0 13px 2px var(--sky);left:34%;top:78%}.mote.m5{animation:pulse 17s ease-in-out 6s infinite;background:var(--teal);box-shadow:0 0 10px 2px var(--teal);left:62%;top:12%}.mote.m5,.mote.m6{height:3px;width:3px}.mote.m6{animation:pulse 12s ease-in-out 3s infinite;background:var(--violet);box-shadow:0 0 10px 2px var(--violet);left:8%;top:52%}.mote.drifter{animation:pulse 14s ease-in-out infinite,travel 70s linear infinite}.mote.d1{background:var(--teal);box-shadow:0 0 12px 2px var(--teal);left:6%;top:30%}.mote.d2{animation-delay:0s,-34s;background:var(--pink);box-shadow:0 0 12px 2px var(--pink);left:20%;top:70%}@keyframes pulse{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:.75;transform:scale(1.25)}}@keyframes travel{0%{translate:0 0}50%{translate:60vw -22vh}to{translate:0 0}}@media (prefers-reduced-motion:reduce){.bg .aurora,.bg .bg-ribbons,.bg .mote{animation:none!important}}@media (max-width:900px){.bg .aurora,.bg .bg-ribbons,.bg .mote{animation:none!important}.bg .bg-ribbons{opacity:.3}}svg{flex-shrink:0}button,input,optgroup,select,svg text,textarea{font-family:inherit}a{color:inherit}a.btn,a.icon-btn,a.nav-item,a.side-item,a.tab{text-decoration:none}[hidden]{display:none!important}svg[width="100%"]{display:block;height:auto}img,svg,table{max-width:100%}.alloc-body>*,.card,.dens-picker>*,.duo>*,.metric,.metric-grid>*,.ob-entry>*,.ob-teasers>*,.p-card,.p-grid>*,.plan-grid>*,.row-2>*,.row-3>*,.rv-row>*,.set-row>*,.sim-layout>*,.spec-grid>*,.tiles>*,.tl-body,.tl-card,.type-picker>*{min-width:0}.btn{align-items:center;border:1px solid #0000;border-radius:999px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-sm);font-weight:600;gap:8px;height:var(--h);justify-content:center;line-height:1;max-width:100%;padding:0 18px;transition:transform .14s,filter .14s,color .18s,background .18s,border-color .18s;white-space:nowrap}.btn svg{stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.btn:disabled{cursor:not-allowed;opacity:.45;transform:none}.btn-sm{font-size:var(--fs-sm);gap:6px;height:var(--h-sm);padding:0 13px}.btn-sm svg{height:14px;width:14px}.btn-lg{font-size:var(--fs-md);height:var(--h-lg);padding:0 24px}.btn-block{width:100%}.btn-grad{background:var(--grad);box-shadow:0 8px 20px -12px #00d4aa80;color:#fff}.btn-grad:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-ghost{background:var(--fill);border-color:var(--line);color:var(--text-soft)}.btn-ghost:hover{border-color:var(--line-strong);color:var(--text)}.btn-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}.btn-danger:hover{filter:brightness(1.1)}.icon-btn{background:var(--fill);border:1px solid #0000;border-radius:11px;color:var(--text-soft);cursor:pointer;display:inline-grid;height:36px;place-items:center;transition:color .2s,background .2s;width:36px}.icon-btn:hover{background:var(--fill-2);color:var(--text)}.icon-btn svg{stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.icon-btn.sm{border-radius:9px;height:30px;width:30px}.icon-btn.sm svg{height:14px;width:14px}.icon-btn.on{background:#00d4aa1f;color:var(--teal)}.icon-btn.danger:hover{background:var(--danger-bg);color:var(--danger-text)}.pro-pill{background:var(--pro-bg);border:1px solid var(--pro-border);border-radius:999px;color:var(--pro);letter-spacing:.1em}.pro-pill,.soon{font-size:var(--fs-2xs);font-weight:700;padding:2px 7px;text-transform:uppercase;white-space:nowrap}.soon{background:#6366f11a;border:1px solid #6366f159;border-radius:999px;color:#a5b4fc;letter-spacing:.07em}:root[data-theme=light] .soon{color:#4f46e5}.seg{background:var(--fill);border-radius:999px;display:inline-flex;gap:4px;max-width:100%;overflow-x:auto;padding:4px;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{background:#0000;border:none;border-radius:999px;color:var(--text-soft);cursor:pointer;font-family:inherit;font-size:var(--fs-xs);font-weight:500;padding:6px 14px;transition:color .2s;white-space:nowrap}.seg button.on{background:var(--grad);color:#fff;font-weight:600}.seg.quiet button.on{background:var(--surface);box-shadow:var(--shadow-soft);color:var(--teal)}.btn-group{display:flex;flex-wrap:wrap;gap:6px}.btn-group button{background:var(--fill);border:1px solid #0000;border-radius:10px;color:var(--text-soft);cursor:pointer;font-family:inherit;font-size:var(--fs-sm);font-weight:600;height:var(--h-sm);padding:0 13px;transition:color .2s,background .2s}.btn-group button.active{background:var(--grad);color:#fff}.snapshot-badge{align-items:center;background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:999px;color:var(--warn-text);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-xs);font-weight:600;gap:7px;height:var(--h-sm);padding:0 12px;white-space:nowrap}.snapshot-badge svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:13px;width:13px}.snapshot-badge .x{font-size:var(--fs-xs);font-style:normal;opacity:.7}.snapshot-badge.now{background:#00d4aa14;border-color:#00d4aa4d;color:var(--teal);font-weight:500}.snapshot-badge.now .x{display:none}.status-pill{align-items:center;background:#10b98121;border-radius:999px;color:var(--ok-text);display:inline-flex;font-size:var(--fs-2xs);font-weight:700;gap:7px;letter-spacing:.12em;margin-bottom:10px;padding:5px 12px;text-transform:uppercase}.status-pill i{background:currentColor;border-radius:50%;height:6px;width:6px}.chip-plain{background:var(--fill);border:1px solid var(--line);border-radius:999px;color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.09em;padding:3px 9px;text-transform:uppercase;white-space:nowrap}.chip-plain.accent{background:#00d4aa1f;border-color:#00d4aa4d;color:var(--teal)}.chip-plain.pro{background:var(--pro-bg);border-color:var(--pro-border);color:var(--pro)}.brand-chip{border-radius:var(--radius-sm);display:grid;flex-shrink:0;height:42px;place-items:center;width:42px}.brand-chip svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:19px;width:19px}.chip-estate{background:#8b5cf624;color:var(--violet)}.chip-invest{background:#00d4aa1f;color:var(--teal)}.chip-income{background:#10b98121;color:var(--green)}.chip-expense{background:#ec489921;color:var(--pink)}.chip-loan{background:#f5a96221;color:var(--amber)}.chip-cash{background:#38bdf821;color:var(--sky)}.chip-neutral{background:var(--fill);color:var(--text-soft)}.chip-explain{background:#6366f11f;color:#a5b4fc}.chip-pro{background:var(--pro-bg);color:var(--pro)}.chip-warn{background:#f59e0b24;color:var(--warn-text)}.chip-sm{border-radius:11px;height:34px;width:34px}.chip-sm svg{height:16px;width:16px}.chip-lg{border-radius:17px;height:54px;width:54px}.chip-lg svg{height:24px;width:24px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:22px;padding:24px}.card-head{align-items:center;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-bottom:18px}.card-head h3{font-size:var(--fs-lg);font-weight:600}.card-head .sub{color:var(--text-faint);font-size:var(--fs-sm);margin-top:2px}.duo{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1.35fr 1fr}.metric-grid{--card:280px;grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(var(--card),100%),1fr));grid-template-columns:repeat(var(--cols,auto-fit),minmax(min(var(--card),100%),1fr));margin-bottom:24px}body[data-cards=compact] .metric-grid{--card:240px;gap:12px}.metric{grid-column-gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);column-gap:12px;display:grid;grid-template-areas:"icon  ico2  edit" "label label label" "value value value" "sub   sub   sub";grid-template-columns:auto 1fr auto;max-width:none;max-width:var(--cap,none);padding:22px}.m-icon{border-radius:var(--radius-sm);display:grid;grid-area:icon;height:42px;margin-bottom:15px;place-items:center;width:42px}.m-icon svg{fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.m-icon.cash{background:#38bdf821}.m-icon.cash svg{stroke:var(--sky)}.m-icon.worth{background:#8b5cf624}.m-icon.worth svg{stroke:var(--violet)}.m-icon.income{background:#10b98121}.m-icon.income svg{stroke:var(--green)}.m-icon.growth{background:#f5a96221}.m-icon.growth svg{stroke:var(--amber)}.m-icon.ratio{background:#00d4aa1f}.m-icon.ratio svg{stroke:var(--teal)}.m-icon.pinkc{background:#ec489921}.m-icon.pinkc svg{stroke:var(--pink)}.m-icon.expense{background:#ec489921}.m-icon.expense svg{stroke:var(--pink)}.m-icon.coast{background:#10b98121}.m-icon.coast svg{stroke:var(--green)}.m-icon.rate{background:#f5a96221}.m-icon.rate svg{stroke:var(--amber)}.m-edit{align-self:start;background:none;border:none;border-radius:8px;color:var(--text-faint);cursor:pointer;display:grid;grid-area:edit;height:26px;justify-self:end;place-items:center;transition:color .2s,background .2s;width:26px}.m-edit:hover{background:var(--fill);color:var(--text)}.m-edit svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:15px;width:15px}.m-label{color:var(--text-soft);font-size:var(--fs-sm);grid-area:label}.m-value{font-size:var(--fs-num);font-weight:600;grid-area:value;letter-spacing:-.01em;margin:3px 0;white-space:nowrap}.m-value.pos{color:var(--green)}.m-value.ok{color:var(--ok-text)}.m-sub{color:var(--text-faint);font-size:var(--fs-sm);grid-area:sub;line-height:1.5}.m-sub b{color:var(--teal);font-weight:600}.m-sub.pos{color:var(--green)}.m-bar{align-self:center;background:var(--track);border-radius:999px;grid-area:sub;height:5px;margin-top:9px;overflow:hidden}.m-bar i{background:var(--grad);border-radius:inherit;display:block;height:100%;width:63%}body[data-cards=compact] .metric{align-items:center;column-gap:13px;grid-template-areas:"icon label edit" "icon value edit";grid-template-columns:auto 1fr auto;padding:13px 15px}body[data-cards=compact] .m-icon{align-self:center;border-radius:11px;height:36px;margin-bottom:0;width:36px}body[data-cards=compact] .m-icon svg{height:16px;width:16px}body[data-cards=compact] .m-edit{align-self:center}body[data-cards=compact] .m-label{font-size:var(--fs-xs)}body[data-cards=compact] .m-value{font-size:var(--fs-xl);margin:1px 0 0}body[data-cards=compact] .m-bar,body[data-cards=compact] .m-sub{display:none}.hero{background:linear-gradient(120deg,#00d4aa14,#38bdf80a 35%,#8b5cf617 70%,#ec489912),var(--surface);border:1px solid #8b5cf638;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;overflow:hidden;padding:26px 28px;position:relative}.hero:before{background:var(--grad-vivid);content:"";height:3px;left:0;position:absolute;right:0;top:0}.hero.row{align-items:center;display:flex;gap:22px}.hero-tag{background:var(--grad-vivid);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:var(--fs-xs);font-weight:700;letter-spacing:.18em;margin-bottom:6px;text-transform:uppercase}.hero h2{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;line-height:1.35;margin-bottom:3px}.hero p{color:var(--text-soft);font-size:var(--fs-sm)}.hero-right{flex-shrink:0;margin-left:auto;text-align:right}.hero-pct{background:var(--grad-vivid);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:var(--fs-num-lg);font-weight:700;letter-spacing:-.02em}.hero-bar{background:var(--track);border-radius:999px;height:6px;margin:8px 0 7px;width:160px}.hero-bar i{background:var(--grad);border-radius:inherit;box-shadow:0 0 12px #00d4aa80;display:block;height:100%;width:42%}.hero-eta{color:var(--text-faint);font-size:var(--fs-xs)}.hero-eta a{color:var(--teal);font-weight:600;text-decoration:none}.explain{align-items:flex-start;background:#6366f112;border:1px solid #6366f152;border-radius:var(--radius);display:flex;gap:13px;margin-bottom:20px;padding:15px 16px}.explain-body{flex:1 1;min-width:0}.explain h4{font-size:var(--fs-md);font-weight:600;margin-bottom:3px}.explain p{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.6}.explain-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.link{background:none;border:none;color:#a5b4fc;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:600;padding:0;text-decoration:none}:root[data-theme=light] .link{color:#4f46e5}.explain-banner{align-items:center;background:#6366f112;border:1px solid #6366f14d;border-radius:999px;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:11px;line-height:1.45;margin-bottom:18px;padding:8px 10px 8px 14px}.explain-banner .ico{color:#a5b4fc;display:grid;place-items:center}.explain-banner .ico svg{stroke:currentColor;fill:none;stroke-width:1.9;height:15px;width:15px}.explain-banner .txt{flex:1 1;min-width:0}.explain-banner strong{color:var(--text);font-weight:600}.banner{align-items:center;background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:13px;margin-bottom:20px;padding:13px 16px}.banner p{color:var(--text);flex:1 1;font-size:var(--fs-sm);font-weight:500;min-width:180px}.banner .btn-ghost{border-color:var(--warn-border);color:var(--warn-text)}.banner .btn-ghost:hover{background:color-mix(in srgb,var(--amber) 14%,#0000);border-color:var(--warn-text);color:var(--warn-text)}.note{font-size:var(--fs-sm);line-height:1.6}.assumptions,.note{color:var(--text-faint)}.assumptions{font-size:var(--fs-xs);margin-top:20px;text-align:center}.info-banner{align-items:flex-start;background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:11px;line-height:1.55;padding:12px 14px}.info-banner svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;height:16px;margin-top:1px;width:16px}.info-banner b{color:var(--text);font-weight:600}.info-banner .ico{color:var(--text-faint)}.info-banner.info{background:#38bdf817;border-color:#38bdf84d}.info-banner.info .ico{color:var(--sky)}.info-banner.warn{background:var(--warn-bg);border-color:var(--warn-border)}.info-banner.warn .ico{color:var(--warn-text)}.info-banner.error{background:var(--danger-bg);border-color:var(--danger-border)}.info-banner.error .ico{color:var(--danger-text)}.info-banner.ok{background:#10b9811a;border-color:#10b98152}.info-banner.ok .ico{color:var(--green)}.info-banner.sm{font-size:var(--fs-xs);padding:9px 11px}.field{display:block;margin-bottom:16px}.field-label,.field>span:first-of-type{color:var(--text);display:block;font-size:var(--fs-sm);font-weight:600;margin-bottom:7px}.input{align-items:center;background:var(--fill);border:1.5px solid #0000;border-radius:var(--radius-sm);display:flex;min-height:var(--h);padding:0 13px}.input:focus-within{background:#00d4aa0a;border-color:var(--teal)}.input input,.input textarea{background:#0000;border:none;color:var(--text);font-family:inherit;font-size:var(--fs-md);font-weight:500;min-width:0;outline:none;padding:10px 0;resize:vertical;width:100%}.input i{color:var(--text-faint);flex-shrink:0;font-size:var(--fs-sm);font-style:normal;font-weight:600;margin-left:8px}.input.has-seg i{margin-right:9px}.input.narrow{max-width:220px}.hint{color:var(--text-faint);line-height:1.55;margin-top:6px}.hint,.select{font-size:var(--fs-sm)}.select{appearance:none;background:var(--fill);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237580a1' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:15px;border:1.5px solid #0000;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-family:inherit;font-weight:500;height:var(--h);max-width:100%;outline:none;padding:0 34px 0 13px}.select:focus{border-color:var(--teal)}.row-2{grid-gap:13px;grid-template-columns:1fr 1fr}.row-2,.row-3{display:grid;gap:13px}.row-3{grid-gap:13px;grid-template-columns:repeat(3,1fr)}.sw{background:var(--track);border-radius:999px;cursor:pointer;display:inline-block;flex-shrink:0;height:21px;position:relative;transition:background .2s;width:38px}.sw:after{background:#fff;border-radius:50%;content:"";height:16px;left:2.5px;position:absolute;top:2.5px;transition:left .2s;width:16px}.sw.on{background:var(--grad)}.sw.on:after{left:19.5px}.check-row{align-items:center;color:var(--text);display:flex;font-size:var(--fs-md);gap:12px;padding:11px 0}.check-row .sw{margin-left:auto}.check-line{font-size:var(--fs-md);font-weight:500;margin:16px 0 8px}.check-item,.check-line{align-items:center;cursor:pointer;display:flex;gap:11px}.check-item{border-radius:9px;color:var(--text-soft);font-size:var(--fs-sm);padding:8px 4px}.check-item:hover{background:var(--hover)}.check-item .box{border:1.5px solid var(--track);border-radius:6px;display:grid;flex-shrink:0;height:17px;place-items:center;transition:background .15s,border-color .15s;width:17px}.check-item .box svg{stroke:#fff;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;height:11px;opacity:0;width:11px}.check-item.on{color:var(--text)}.check-item.on .box{background:var(--grad);background-origin:border-box;border-color:#0000}.check-item.on .box svg{opacity:1}.check-item .tag{color:var(--text-faint);font-size:var(--fs-2xs)}.check-item .tag.warn{color:var(--warn-text)}.check-item .tag.pinkish{color:var(--pink)}input[type=range]{appearance:none;background:var(--track);border-radius:999px;cursor:pointer;height:5px;outline:none;width:100%}input[type=range]::-webkit-slider-thumb{appearance:none;background:#fff;border:3px solid var(--teal);border-radius:50%;box-shadow:0 2px 8px #00d4aa66;cursor:pointer;height:17px;width:17px}input[type=range]::-moz-range-thumb{background:#fff;border:3px solid var(--teal);border-radius:50%;cursor:pointer;height:15px;width:15px}.range-labels{align-items:baseline;color:var(--text-faint);display:flex;font-size:var(--fs-xs);justify-content:space-between;margin-top:8px}.range-value{color:var(--text);font-size:var(--fs-md);font-weight:600}.chips{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 15px}.chips-label{color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.1em;margin-right:2px;text-transform:uppercase}.chip{align-items:center;background:var(--fill);border:1px solid var(--line);border-radius:999px;color:var(--text-soft);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-xs);font-weight:600;gap:5px;padding:4px 6px 4px 11px;transition:border-color .15s,color .15s,background .15s}.chip:hover{background:#00d4aa1a;border-color:#00d4aa6b;color:var(--teal)}.chip .chip-info{border-radius:50%;color:var(--text-faint);display:grid;height:16px;place-items:center;width:16px}.chip .chip-info:hover{color:var(--teal)}.chip .chip-info svg{stroke:currentColor;fill:none;stroke-width:2;height:13px;width:13px}.input.has-seg{padding-right:6px}.freq-seg{background:var(--fill);border-radius:999px;display:inline-flex;flex-shrink:0;gap:1px;margin-left:auto;padding:2px}.freq-seg button{background:none;border:0;border-radius:999px;color:var(--text-faint);cursor:pointer;font:inherit;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.04em;padding:3px 9px;text-transform:uppercase;transition:background .15s,color .15s}.freq-seg button.on{background:var(--surface-2);color:var(--teal)}.freq-seg button:hover:not(.on){color:var(--text)}.input.is-computed{background:#0000;border-color:var(--line-strong);border-style:dashed}.input.is-computed input{color:var(--text-soft);cursor:default}.field-hint{color:var(--text-faint);display:block;font-size:var(--fs-2xs);line-height:1.5;margin-top:5px}.form-preview{align-items:center;background:var(--fill);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:16px;padding:12px 24px}.form-preview-label{color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.form-preview-figs{display:flex;flex-wrap:wrap;gap:6px 20px}.form-preview-figs span{display:flex;flex-direction:column;gap:1px}.form-preview-figs em{color:var(--text-faint);font-size:var(--fs-2xs);font-style:normal}.form-preview-figs b{font-size:var(--fs-sm);font-weight:600}.form-preview-figs b.pos{color:var(--green)}@media (max-width:900px){.form-preview{padding:11px 18px}}.toast{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;bottom:calc(26px + env(safe-area-inset-bottom));box-shadow:0 22px 50px -22px #000c;color:var(--text-soft);font-size:var(--fs-sm);font-weight:500;left:50%;max-width:calc(100vw - 32px);opacity:0;padding:10px 18px;position:fixed;transform:translate(-50%,12px);transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s;visibility:hidden;white-space:nowrap;z-index:400}.toast.open{opacity:1;transform:translate(-50%);transition-delay:0s;visibility:visible}@media (max-width:900px){.toast{bottom:calc(84px + env(safe-area-inset-bottom))}}.cookie{background:var(--surface);border:1px solid var(--line-strong);border-radius:18px;bottom:22px;box-shadow:0 30px 64px -26px #000000d9;color:var(--text-soft);font-size:var(--fs-sm);left:22px;line-height:1.6;padding:16px 18px;position:fixed;width:min(380px,calc(100vw - 32px));z-index:380}.cookie-actions{display:flex;gap:8px;margin-top:12px}.cookie-actions .btn{flex:1 1}@media (max-width:900px){.cookie{bottom:calc(84px + env(safe-area-inset-bottom));left:12px;right:12px;width:auto}}.page-footer{border-top:1px solid var(--line);color:var(--text-faint);font-size:var(--fs-xs);line-height:1.65;margin-top:40px;padding-top:18px}.page-footer .links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:8px}.page-footer a{color:var(--text-soft)}.page-footer a:hover{color:var(--text)}.demo-banner{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(90deg,#00d4aa1f,#8b5cf624);background-origin:border-box;border-bottom:1px solid var(--line);color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:16px;justify-content:center;padding:10px 20px;position:sticky;top:0;z-index:60}.demo-banner b{color:var(--text);font-weight:600}.demo-banner svg{stroke:var(--teal);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;height:16px;width:16px}.demo-banner .txt{align-items:center;display:inline-flex;gap:8px;min-width:0}.demo-banner .btn{flex-shrink:0}@media (max-width:900px){.demo-banner{gap:10px;justify-content:space-between;padding:8px 14px}.demo-banner .sub{display:none}}body.demo .demo-off{opacity:.45;pointer-events:none}.boot{grid-gap:16px;align-content:center;background:var(--bg);display:grid;gap:16px;inset:0;place-items:center;justify-items:center;opacity:0;position:fixed;transition:opacity .3s ease,visibility 0s linear .3s;visibility:hidden;z-index:600}.boot.open{opacity:1;transition-delay:0s;visibility:visible}.boot .logo-mark{height:46px;width:46px}.boot p{color:var(--text-faint);font-size:var(--fs-sm)}.spinner{animation:spin .7s linear infinite;border:2px solid #ffffff40;border-radius:50%;border-top-color:initial;display:inline-block;flex-shrink:0;height:18px;width:18px}.spinner.lg{border-width:3px;height:34px;width:34px}@keyframes spin{to{transform:rotate(1turn)}}.btn .spinner{margin-right:-2px}.tgl{align-items:center;background:none;border:0;border-radius:999px;color:var(--text-soft);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-sm);font-weight:600;gap:7px;height:28px;padding:0 13px;transition:color .15s;white-space:nowrap}.tgl:hover{color:var(--text)}.tgl.active{color:var(--teal)}.tgl svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:14px;width:14px}.tgl em{font-size:var(--fs-2xs);font-style:normal;font-weight:600;opacity:.75}.tgl-group{align-items:center;background:var(--fill);border:1px solid #0000;border-radius:999px;display:inline-flex;gap:1px;padding:3px;transition:background .15s,border-color .15s}.tgl-group:has(.tgl.active){background:#00d4aa1a;border-color:#00d4aa66}.suspense{grid-gap:14px;color:var(--text-faint);display:grid;gap:14px;min-height:46vh;place-items:center}.field.error .input{background:var(--danger-bg);border-color:var(--danger-border)}.field-error,.field.error>span{color:var(--danger-text)}.field-error{align-items:center;display:flex;font-size:var(--fs-xs);gap:6px;margin-top:6px}.field-error svg{stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;height:13px;width:13px}.info-btn{background:none;border:0;border-radius:50%;color:var(--text-faint);cursor:pointer;display:grid;height:26px;place-items:center;transition:color .15s,background .15s;width:26px}.info-btn:hover{background:var(--hover);color:var(--text)}.info-btn.sm{display:inline-grid;height:20px;margin-left:4px;vertical-align:-4px;width:20px}.info-btn.sm svg{height:13px;width:13px}.info-btn svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:15px;width:15px}.page-fallback{align-items:center;animation:page-fallback-in .4s ease-out;color:var(--text-faint);display:flex;flex-direction:column;gap:14px;justify-content:center;min-height:min(60vh,420px);width:100%}.page-fallback p{color:var(--text-faint);font-size:var(--fs-sm);margin:0}@keyframes page-fallback-in{0%,45%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.page-fallback{animation-timing-function:step-end}}.app{display:grid;grid-template-columns:244px 1fr;min-height:100vh;position:relative;z-index:1}.app>.col{min-width:0}#takeover{position:relative;z-index:1}#takeover:empty,body.takeover .app,body.takeover .tabbar{display:none}.sidebar{background:var(--sidebar);box-shadow:8px 0 40px -20px #0009;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:30px 18px 24px;position:sticky;top:0;z-index:2}@media (min-width:901px){.app{transition:grid-template-columns .26s cubic-bezier(.22,1,.36,1)}body.nav-collapsed .app{grid-template-columns:72px 1fr}body.nav-collapsed .sidebar{align-items:center;padding:30px 12px 20px}body.nav-collapsed .sidebar-head{flex-direction:column;gap:10px;margin-bottom:22px}body.nav-collapsed .sidebar .logo{gap:0;margin:0;padding:0}body.nav-collapsed .copyright,body.nav-collapsed .logo-name,body.nav-collapsed .nav-group,body.nav-collapsed .nav-item .nav-count,body.nav-collapsed .nav-item>span,body.nav-collapsed .user-row .who{display:none}body.nav-collapsed .nav-item{justify-content:center;padding:11px 0;width:48px}body.nav-collapsed .nav-item.active:before{left:-12px}body.nav-collapsed .nav-item[data-count]{position:relative}body.nav-collapsed .nav-item[data-count]:after{background:var(--warn-text);border-radius:50%;box-shadow:0 0 0 2px var(--sidebar);content:"";height:7px;position:absolute;right:9px;top:7px;width:7px}body.nav-collapsed .foot-actions{align-items:center;flex-direction:column;gap:8px}body.nav-collapsed .foot-actions .icon-btn{border-radius:12px;flex:0 0 auto;height:40px;width:40px}body.nav-collapsed .foot-actions .icon-btn svg{height:17px;width:17px}body.nav-collapsed .user-row{justify-content:center;padding:12px 0 0}body.nav-collapsed .user-row .icon-btn{display:none}body.nav-collapsed .sidebar-foot{width:100%}.rail-toggle{flex-shrink:0;margin-left:auto;transition:transform .26s cubic-bezier(.22,1,.36,1)}body.nav-collapsed .sidebar-head{justify-content:center}body.nav-collapsed .sidebar-head .rail-toggle{display:none}body.nav-collapsed .rail-tab{background:var(--sidebar);border:none;border-radius:0 12px 12px 0;box-shadow:7px 0 18px -8px #000000bf;color:var(--text-faint);cursor:pointer;display:grid;height:40px;left:60px;padding:0;place-items:center;position:fixed;top:50%;transform:translateY(-50%);transition:color .18s,width .18s;width:26px;z-index:3}body.nav-collapsed .rail-tab:hover{color:var(--text);width:30px}body.nav-collapsed .rail-tab svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:15px;transform:rotate(180deg);width:15px}}.rail-tab{display:none}.sidebar-head{align-items:center;display:flex;gap:8px;margin-bottom:34px}.sidebar-head .logo{margin-bottom:0}.logo{align-items:center;display:flex;gap:12px;margin-bottom:34px;padding:0 8px;text-decoration:none}.logo-mark{background:linear-gradient(135deg,var(--teal),#6366f1);border-radius:12px;box-shadow:0 8px 24px -8px #00d4aa8c;display:grid;flex-shrink:0;height:40px;place-items:center;width:40px}.logo-mark svg{fill:none;stroke:#06121f;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:22px;width:22px}:root[data-theme=light] .logo-mark svg{stroke:#fff}.logo-name{color:var(--text);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.02em}.logo-mark.sm{border-radius:10px;height:32px;width:32px}.logo-mark.sm svg{height:18px;width:18px}.nav-group{color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.16em;padding:20px 12px 6px;text-transform:uppercase}.nav-item{align-items:center;border-radius:var(--radius-sm);color:var(--text-soft);display:flex;font-size:var(--fs-md);font-weight:500;gap:13px;margin:2px 0;padding:11px 12px;position:relative;text-decoration:none;transition:color .2s,background .2s}.nav-item svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.active{background:#8b5cf61f;color:var(--text)}.nav-item.active:before{background:var(--grad);border-radius:0 4px 4px 0;bottom:9px;content:"";left:-18px;position:absolute;top:9px;width:3px}.side-panel .nav-item.active:before{left:-16px}.nav-count{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:999px;color:var(--warn-text);display:grid;font-size:var(--fs-2xs);font-weight:700;height:19px;margin-left:auto;min-width:19px;padding:0 6px;place-items:center}.sidebar-foot{margin-top:auto;padding-top:18px}.foot-actions{display:flex;gap:6px;margin-bottom:14px}.foot-actions .icon-btn{flex:1 1}.user-row{align-items:center;border-top:1px solid var(--line);display:flex;gap:11px;padding:12px 8px 0}.avatar{background:var(--grad-vivid);border-radius:12px;color:#fff;display:grid;flex-shrink:0;font-size:var(--fs-sm);font-weight:600;height:36px;place-items:center;width:36px}.user-row .who{flex:1 1;min-width:0}.user-row b{display:block;font-size:var(--fs-sm);font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-row span{color:var(--text-faint);display:block;font-size:var(--fs-xs);line-height:1.3}.copyright{color:var(--text-faint);font-size:var(--fs-2xs);margin-top:12px;padding:0 8px}.main{margin-inline:auto;max-width:1220px;min-width:0;padding:36px clamp(18px,4vw,56px) 64px}.main.narrow{max-width:940px}@media (min-width:1500px){.main{max-width:1400px}}@media (min-width:1750px){.main{max-width:1560px}}.mobile-top{align-items:center;background:var(--bg);border-bottom:1px solid var(--line);display:none;gap:10px;padding:10px 14px;position:sticky;top:0;z-index:40}.mobile-top .spacer{flex:1 1}.tabbar{background:var(--sidebar);border-top:1px solid var(--line);bottom:0;display:none;left:0;padding:5px 2px calc(5px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:45}.tabbar-inner{display:grid;grid-template-columns:repeat(6,1fr)}.tab{align-items:center;background:none;border:none;color:var(--text-faint);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;font-size:var(--fs-2xs);font-weight:600;gap:3px;min-width:0;padding:6px 1px;position:relative;text-decoration:none}.tab span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;height:20px;width:20px}.tab.active{color:var(--text)}.tab.active svg{stroke:url(#tabGrad)}.tab.active:after{background:var(--grad);border-radius:0 0 3px 3px;content:"";height:3px;left:50%;position:absolute;top:-5px;transform:translateX(-50%);width:24px}.tab-dot{background:var(--amber);border-radius:50%;height:7px;position:absolute;right:calc(50% - 15px);top:3px;width:7px}.side-wrap{inset:0;position:fixed;transition:visibility 0s linear .32s;visibility:hidden;z-index:95}.side-wrap.open{transition-delay:0s;visibility:visible}.side-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0406108c;inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.side-wrap.open .side-backdrop{opacity:1}.side-panel{background:var(--sidebar);border-right:1px solid var(--line);bottom:0;box-shadow:30px 0 70px -40px #000c;display:flex;flex-direction:column;left:0;max-width:84vw;overflow-y:auto;padding:22px 16px calc(20px + env(safe-area-inset-bottom));position:absolute;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.22,1,.36,1);width:282px}.side-wrap.open .side-panel{transform:none}.side-close{position:absolute;right:14px;top:16px}.pagehead{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:26px}.pagehead-main{flex:1 1;min-width:0}.pagehead h1{align-items:center;display:flex;flex-wrap:wrap;font-size:var(--fs-2xl);font-weight:600;gap:12px;letter-spacing:-.01em}.page-sub{color:var(--text-faint);font-size:var(--fs-md);line-height:1.55;margin-top:5px;max-width:720px}.pagehead-actions{align-items:center;display:flex;flex-shrink:0;gap:9px}.page-back{align-items:center;color:var(--text-faint);display:inline-flex;font-size:var(--fs-sm);font-weight:500;gap:7px;margin-bottom:12px;text-decoration:none}.page-back svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:14px;width:14px}.page-back:hover{color:var(--text-soft)}.section-title{color:var(--text-faint);font-size:var(--fs-xs);font-weight:700;letter-spacing:.16em;margin:32px 0 12px;text-transform:uppercase}.section-title.danger{color:var(--danger-text)}:root[data-theme=light] .sidebar{border-right:1px solid var(--line);box-shadow:6px 0 28px -22px #1b233880}.drawer-wrap{inset:0;position:fixed;transition:visibility 0s linear .4s;visibility:hidden;z-index:390}.drawer-wrap.open{transition-delay:0s;visibility:visible}.drawer-backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#0406109e;inset:0;opacity:0;position:absolute;transition:opacity .34s ease}:root[data-theme=light] .drawer-backdrop{background:#1b233859}.drawer-wrap.open .drawer-backdrop{opacity:1}.drawer{background:var(--surface);border:none;border-radius:26px;bottom:16px;box-shadow:0 60px 120px -40px #000000d9,0 0 0 1px #ffffff0f,0 0 90px -30px #8b5cf659;display:flex;flex-direction:column;max-width:calc(100vw - 32px);opacity:0;overflow:hidden;position:absolute;right:16px;top:16px;transform:translateX(52px) scale(.985);transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .28s ease;width:600px}:root[data-theme=light] .drawer{box-shadow:0 50px 110px -40px #1b233861,0 0 0 1px #1b233812}.drawer:before{background:var(--grad-vivid);content:"";height:3px;left:0;position:absolute;right:0;top:0;z-index:3}.drawer:after{background:radial-gradient(circle,#8b5cf64d,#0000 68%);border-radius:50%;content:"";height:280px;pointer-events:none;position:absolute;right:-70px;top:-70px;width:280px;z-index:0}.drawer>*{position:relative;z-index:1}.drawer-wrap.open .drawer{opacity:1;transform:none}.drawer.wide{width:760px}.drawer-head{align-items:flex-start;border-bottom:1px solid var(--line);display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:24px 26px 16px}.drawer-head h3{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em}.drawer-head .sub{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.5;margin-top:4px}.drawer-head-actions{align-items:center;display:flex;gap:8px}.drawer-body{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:22px 26px}.drawer-foot{border-top:1px solid var(--line);display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:15px 26px calc(18px + env(safe-area-inset-bottom))}.drawer-foot .left{margin-right:auto}.dialog-wrap{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#040610a6;display:grid;inset:0;opacity:0;padding:18px;place-items:center;position:fixed;transition:opacity .22s ease,visibility .22s;visibility:hidden;z-index:395}.dialog-wrap.open{opacity:1;visibility:visible}.dialog{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 40px 90px -25px #000c;max-height:90vh;max-width:420px;overflow:auto;padding:24px;transform:translateY(14px) scale(.97);transition:transform .22s ease;width:100%}.dialog-wrap.open .dialog{transform:none}.dialog h3{font-size:var(--fs-xl);font-weight:600;margin-bottom:8px}.dialog-foot{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:20px}#dlg-checkout .dialog-foot,#dlg-soon .dialog-foot{justify-content:center}.bd-row{align-items:center;background:var(--fill);border-radius:12px;display:flex;flex-wrap:wrap;font-size:var(--fs-sm);gap:2px 12px;justify-content:space-between;margin-bottom:8px;padding:10px 14px}.bd-row span{color:var(--text-soft);flex:1 1 130px}.bd-row b{font-weight:600;margin-left:auto;white-space:nowrap}.bd-row.total{background:#0000;border-radius:0;border-top:1.5px solid var(--line);margin-top:12px;padding-top:13px}.bd-row.total span{color:var(--text);font-weight:600}.type-picker{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(5,1fr);margin-bottom:18px}.type-opt{align-items:center;background:var(--fill);border:1.5px solid #0000;border-radius:var(--radius-sm);color:var(--text-faint);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;font-size:var(--fs-2xs);font-weight:600;gap:6px;padding:11px 4px;text-align:center;transition:color .18s,border-color .18s,background .18s}.type-opt svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:19px;width:19px}.type-opt:hover{color:var(--text-soft)}.type-opt.on{background:#00d4aa14;border-color:var(--teal);color:var(--text)}.dens-picker{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:10px}.dens{background:var(--fill);border:1.5px solid #0000;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-family:inherit;padding:11px 12px 12px;position:relative;text-align:left;transition:border-color .18s,background .18s}.dens:hover{border-color:var(--line-strong)}.dens.on{background:#00d4aa14;border-color:var(--teal)}.dens b{display:block;font-size:var(--fs-sm);font-weight:600;margin-bottom:8px}.dens p{color:var(--text-faint);font-size:var(--fs-xs);line-height:1.45;margin-top:8px}.dens svg{display:block;height:auto;width:100%}.dens-tick{border:1.5px solid var(--track);border-radius:50%;display:grid;height:16px;place-items:center;position:absolute;right:10px;top:10px;width:16px}.dens.on .dens-tick{background:var(--grad);background-origin:border-box;border-color:#0000}.dens-tick svg{stroke:#fff;fill:none;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;height:9px;opacity:0;width:9px}.dens.on .dens-tick svg{opacity:1}.tog-group+.tog-group{margin-top:18px}.tog-group-title{align-items:center;color:var(--text-faint);display:flex;font-size:var(--fs-2xs);font-weight:700;gap:9px;letter-spacing:.13em;margin-bottom:4px;text-transform:uppercase}.tog-group-title svg{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:14px;width:14px}.tog-group-title .rule{background:var(--line);flex:1 1;height:1px}.ob-teasers{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-top:24px}.ob-teaser{align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);color:var(--text);cursor:pointer;display:flex;font-family:inherit;gap:13px;padding:16px;text-align:left;transition:transform .16s,border-color .2s}.ob-teaser:hover{border-color:var(--line-strong);transform:translateY(-2px)}.ob-teaser .who{flex:1 1;min-width:0}.ob-teaser b{display:block;font-size:var(--fs-md);font-weight:600;margin-bottom:3px}.ob-teaser p{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.5}.ob-teaser .go{align-items:center;color:var(--teal);display:inline-flex;font-size:var(--fs-xs);font-weight:600;gap:5px;margin-top:9px}.ob-teaser .go svg{stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;height:12px;width:12px}.snap-create{background:#00d4aa12;border:1px solid #00d4aa47;border-radius:var(--radius);margin-bottom:20px;padding:16px}.snap-create h4{font-size:var(--fs-md);font-weight:600;margin-bottom:12px}.snap-card{align-items:center;background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px;padding:13px 15px}.snap-card--active{background:#00d4aa12;border-color:#00d4aa73}.snap-card .who{flex:1 1;min-width:140px}.snap-card b{flex-wrap:wrap;font-size:var(--fs-lg);font-weight:600;gap:8px}.snap-card .when,.snap-card b{align-items:center;display:flex}.snap-card .when{color:var(--text-faint);font-size:var(--fs-xs);gap:6px;margin-top:4px}.snap-card .when svg{stroke:currentColor;fill:none;stroke-width:1.9;height:13px;width:13px}.snap-actions{gap:6px}.snap-actions,.snap-hint{align-items:center;display:flex}.snap-hint{background:var(--pro-bg);border:1px solid var(--pro-border);border-radius:var(--radius-sm);color:var(--text-soft);flex-wrap:wrap;font-size:var(--fs-sm);gap:12px;margin-bottom:18px;padding:12px 14px}.snap-hint span{flex:1 1;min-width:160px}.sheet-wrap{inset:0;position:fixed;transition:visibility 0s linear .3s;visibility:hidden;z-index:385}.sheet-wrap.open{transition-delay:0s;visibility:visible}.sheet-backdrop{background:#04060e8c;inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.sheet-wrap.open .sheet-backdrop{opacity:1}.sheet{background:var(--surface);border-radius:24px 24px 0 0;bottom:0;box-shadow:0 -24px 60px -20px #000c;left:0;margin:0 auto;max-width:768px;padding:18px 20px calc(20px + env(safe-area-inset-bottom));position:absolute;right:0;transform:translateY(100%);transition:transform .3s cubic-bezier(.22,1,.36,1)}.sheet-wrap.open .sheet{transform:none}.sheet:before{background:var(--track);border-radius:2px;content:"";height:4px;left:50%;position:absolute;top:8px;transform:translateX(-50%);width:38px}.sheet-head{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:6px 0 12px}.sheet-head h3{font-size:var(--fs-lg);font-weight:600}.sheet-body{color:var(--text-soft);font-size:var(--fs-md);line-height:1.65;max-height:50vh;overflow-y:auto}.set-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.set-card.danger{border-color:var(--danger-border)}.set-row{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:15px;padding:16px 20px}.set-row:last-child{border-bottom:none}.set-text{flex:1 1;min-width:0}.set-text b{align-items:center;display:flex;flex-wrap:wrap;font-size:var(--fs-md);font-weight:600;gap:9px;margin-bottom:3px}.set-text p{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.55;max-width:78ch}.set-text .link{color:var(--teal)}.set-control{flex-shrink:0}.filters{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);flex-wrap:wrap;gap:18px;margin-bottom:22px;padding:14px 18px}.filter-block,.filters{align-items:center;display:flex}.filter-block{gap:10px;max-width:100%;min-width:0}.filter-label{color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.filter-group{display:flex;flex-wrap:wrap;gap:6px}.filter-btn{align-items:center;background:var(--fill);border:1px solid #0000;border-radius:999px;color:var(--text-soft);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-sm);font-weight:500;gap:0;height:var(--h-sm);padding:0 10px;transition:color .2s,border-color .2s,background .2s;white-space:nowrap}.filter-btn svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:15px;width:15px}.filter-btn:hover{color:var(--text)}.filter-btn.active{background:#8b5cf61f;border-color:#8b5cf659;color:var(--text)}.filter-btn.active.invest{background:#00d4aa1a;border-color:#00d4aa59}.filter-btn.active.income{background:#10b9811f;border-color:#10b98159}.filter-btn.active.expense{background:#ec48991f;border-color:#ec489959}.filter-btn.active.loan{background:#f5a9621f;border-color:#f5a96259}.filter-btn .t{margin-left:7px}.filter-types .filter-btn .t{margin-left:0;max-width:0;opacity:0;overflow:hidden;transition:max-width .28s ease,opacity .22s ease,margin-left .28s ease}.filter-types .filter-btn.active .t,.filter-types .filter-btn.all .t{margin-left:7px;max-width:160px;opacity:1}.bulk-toggle{margin-left:auto}.bulk-toggle .chev{transition:transform .22s ease}.bulk-toggle.active .chev{transform:rotate(180deg)}.drawer-row{border-top:1px solid var(--line);display:flex;flex-basis:100%;flex-wrap:wrap;gap:8px;margin-top:4px;padding-top:14px}.filters-head,.filters-summary{display:none}.filter-sum{display:flex;flex:1 1;flex-direction:column;gap:5px;min-width:0}.filter-sum-item{align-items:center;display:flex;font-size:var(--fs-sm);gap:6px;min-width:0}.filter-sum-item .k{color:var(--text-faint);white-space:nowrap}.filter-sum-item .v{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-sum-badges{display:flex;flex-wrap:wrap;gap:6px}.filter-sum-badge{align-items:center;background:#00d4aa1a;border:1px solid #00d4aa47;border-radius:999px;color:var(--teal);display:inline-flex;font-size:var(--fs-2xs);font-weight:600;gap:5px;padding:3px 9px}.filter-sum-badge svg{fill:none;stroke:currentColor;stroke-width:2;height:11px;width:11px}@media (min-width:901px){.filters .filter-label{display:none}}@media (max-width:900px){.filters{align-items:stretch;flex-direction:column;gap:16px}.filters.collapsed{padding:12px 14px}.filters.collapsed .filters-summary{align-items:center;display:flex;gap:12px}.filters.collapsed .bulk-toggle,.filters.collapsed .drawer-row,.filters.collapsed .filter-block{display:none}.filters:not(.collapsed) .filters-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.filters-head b{font-size:var(--fs-md);font-weight:600}.filters .filter-block{align-items:flex-start;flex-direction:column;gap:8px}.filters .filter-block>.select{width:100%}.filter-types .filter-btn{justify-content:center;padding:0;width:40px}.filter-types .filter-btn .t,.filter-types .filter-btn.active .t,.filter-types .filter-btn.all .t{display:none}.bulk-toggle{align-self:flex-start;margin-left:0}}@media (max-width:360px){.filter-types .filter-btn{width:36px}.filter-types .filter-group{gap:5px}}.p-section-head{align-items:center;display:flex;gap:10px;margin:24px 0 13px}.p-section-head h3{align-items:center;display:flex;font-size:var(--fs-md);font-weight:600;gap:9px;white-space:nowrap}.p-section-head svg{fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:17px;width:17px}.p-section-head .count{color:var(--text-faint);font-size:var(--fs-xs);white-space:nowrap}.p-section-head .rule{background:var(--line);flex:1 1;height:1px}.p-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));margin-bottom:20px}.p-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;transition:transform .16s,border-color .2s}.p-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.p-card.inactive{opacity:.52}.p-card-head{align-items:center;display:flex;gap:12px;margin-bottom:14px}.p-card-title{flex:1 1;min-width:0}.p-card-title b{display:block;font-size:var(--fs-lg);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-card-title span{color:var(--text-faint);font-size:var(--fs-xs)}.p-card-actions{display:flex;gap:4px}.p-metrics{grid-gap:10px;display:grid;gap:10px}.p-metric{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.p-metric .k{color:var(--text-faint);font-size:var(--fs-sm)}.p-metric .v{font-size:var(--fs-lg);font-weight:600;margin-left:auto}.p-metric .v.pos{color:var(--green)}.p-metric .v.neg{color:var(--rose)}.rv-hint{align-items:center;background:none;border:none;color:var(--warn-text);cursor:pointer;display:inline-flex;flex-basis:100%;font-family:inherit;font-size:var(--fs-xs);font-weight:600;gap:4px;margin-top:-3px;padding:0}.rv-hint svg{stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;height:12px;width:12px}.empty{align-items:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--text-faint);display:flex;flex-direction:column;gap:8px;padding:40px 24px;text-align:center}.empty h2{color:var(--text);font-size:var(--fs-xl);font-weight:600}.empty p{font-size:var(--fs-sm);line-height:1.6;max-width:420px}.empty .brand-chip{margin-bottom:6px}.empty .btn{margin-top:10px}.scenario-bar{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);display:flex;flex-wrap:wrap;gap:13px;margin-bottom:22px;padding:13px 16px}.scenario-bar .lbl{font-size:var(--fs-md);font-weight:500}.scenario-bar .state{color:var(--text-faint);font-size:var(--fs-xs)}.scenario-bar .spacer{flex:1 1}.rail{padding-left:30px;position:relative}.rail:before{background:linear-gradient(180deg,var(--teal),var(--violet),var(--pink));border-radius:2px;bottom:4px;left:9px;top:4px;width:2px}.rail:after,.rail:before{content:"";opacity:.5;position:absolute}.rail:after{border-left:7px solid #0000;border-right:7px solid #0000;border-top:9px solid var(--pink);bottom:-8px;height:0;left:3px;width:0}.tl-year{align-items:center;display:flex;gap:10px;margin:22px 0 16px;position:relative}.tl-year b{color:var(--orange);font-size:var(--fs-md);font-weight:700;letter-spacing:.02em}.tl-year i{border-top:2px dashed var(--orange);flex:1 1;height:0;opacity:.55}.tl-year:before{background:var(--orange);border-radius:50%;content:"";height:8px;left:-24px;opacity:.8;position:absolute;width:8px}.tl-item{margin-bottom:14px;position:relative}.tl-dot{background:var(--bg);border:3px solid var(--violet);border-radius:50%;box-shadow:0 0 0 3px var(--bg);height:14px;left:-27px;position:absolute;top:26px;width:14px}.tl-dot.add{border-color:var(--teal)}.tl-dot.update{border-color:var(--sky)}.tl-dot.remove{border-color:var(--rose)}.tl-dot.once{border-color:var(--amber)}.tl-dot.mile{border-color:var(--green)}.tl-card{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);column-gap:20px;display:flex;flex-wrap:wrap;padding:16px 18px;row-gap:10px}.tl-date{color:var(--text-faint);flex:0 0 116px;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.1em;line-height:1.4;text-transform:uppercase}.tl-body{flex:1 1 240px;min-width:0}.tl-foot{align-items:center;display:flex;flex:0 0 auto;gap:16px;margin-left:auto}.tl-card.disabled{opacity:.52}.tl-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.tl-title b{font-size:var(--fs-lg);font-weight:600}.tl-meta{color:var(--text-faint);font-size:var(--fs-xs);line-height:1.5;overflow-wrap:anywhere}.tl-kind{background:#8b5cf621;border-radius:999px;color:var(--violet);flex:0 0 auto;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.08em;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.tl-kind.add{background:#00d4aa1f;color:var(--teal)}.tl-kind.update{background:#38bdf821;color:var(--sky)}.tl-kind.remove{background:var(--danger-bg);color:var(--danger-text)}.tl-kind.once{background:#f5a96221;color:var(--amber)}.tl-kind.mile{background:#10b98121;color:var(--ok-text)}.tl-val{font-size:var(--fs-num-sm);font-weight:600;text-align:right;white-space:nowrap}.tl-val.pos{color:var(--green)}.tl-val.neg{color:var(--rose)}.tl-actions,.tl-panel{display:flex;gap:4px}.tl-panel{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:14px;box-shadow:var(--shadow);opacity:0;padding:5px;pointer-events:none;position:fixed;transform:translateY(4px) scale(.96);transition:opacity .16s,transform .16s;z-index:60}.tl-panel.on{opacity:1;pointer-events:auto;transform:none}.tl-panel:after{background:var(--surface-2);border-bottom:1px solid var(--line-strong);border-right:1px solid var(--line-strong);bottom:-5px;content:"";height:9px;left:50%;left:var(--arrow-x,50%);margin-left:-4.5px;position:absolute;transform:rotate(45deg);width:9px}.tl-panel button{background:none;border:0;border-radius:10px;color:var(--text-soft);cursor:pointer;display:grid;height:34px;place-items:center;transition:background .15s,color .15s;width:34px}.tl-panel button svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.tl-panel button:hover{background:var(--fill-2);color:var(--text)}.tl-panel button.success{color:var(--teal)}.tl-panel button.danger:hover{background:var(--danger-bg);color:var(--danger-text)}.tl-dot.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--orange) 55%,#0000);transform:scale(1.25)}button.tl-dot{cursor:pointer;padding:0}.wiz{display:flex;flex-wrap:wrap;gap:10px;padding:12px 24px 0}.wiz,.wiz-step{align-items:center}.wiz-step{background:none;border:1px solid #0000;border-radius:999px;color:var(--text-faint);cursor:pointer;display:inline-flex;font-size:var(--fs-sm);font-weight:600;gap:8px;padding:5px 12px 5px 5px;transition:color .18s,background .18s,border-color .18s}.wiz-step i{background:var(--fill);border-radius:50%;display:grid;font-size:var(--fs-2xs);font-style:normal;height:22px;place-items:center;width:22px}.wiz-step.on{background:var(--fill);border-color:var(--line);color:var(--text)}.wiz-step.on i{background:var(--grad);background-origin:border-box;color:#06121f}.wiz-step.done i{background:color-mix(in srgb,var(--teal) 30%,#0000);color:var(--teal)}.wiz-step[disabled]{cursor:not-allowed;opacity:.45}.wiz-sep{border-top:1px dashed var(--line-strong);flex:1 1 20px;height:0;max-width:60px}.ev-head-edit{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px;min-width:0}.ev-head-edit h3{min-width:0;overflow-wrap:anywhere}.ev-head-date{color:var(--text-faint);font-size:var(--fs-sm);white-space:nowrap}.ev-rename{background:#38bdf814;border:1px solid #38bdf852;border-radius:var(--radius-sm);margin-bottom:18px;padding:14px}.ev-confirm{align-items:flex-start;display:flex;gap:14px;padding:4px 0 8px}.ev-confirm-ico{background:var(--danger-bg);border-radius:12px;color:var(--danger-text);display:grid;flex-shrink:0;height:38px;place-items:center;width:38px}.ev-confirm-ico svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.ev-confirm b{display:block;font-size:var(--fs-lg);font-weight:600;margin-bottom:6px}.ev-confirm p{color:var(--text-soft);font-size:var(--fs-sm)}.input.has-cal{padding-right:4px}.input.has-cal input::-webkit-calendar-picker-indicator{display:none}.cal-btn{background:none;border:0;border-radius:9px;color:var(--text-faint);cursor:pointer;display:grid;flex-shrink:0;height:30px;place-items:center;transition:color .15s,background .15s;width:30px}.cal-btn:hover{background:var(--hover);color:var(--text)}.cal-btn svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.chart-scroll{margin:0 -4px;max-width:100%;overflow-x:auto;padding:0 4px;scrollbar-color:var(--track) #0000;scrollbar-width:thin}.chart-scroll::-webkit-scrollbar{height:6px}.chart-scroll::-webkit-scrollbar-track{background:#0000}.chart-scroll::-webkit-scrollbar-thumb{background:var(--track);border-radius:999px}.sim-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:296px 1fr}.sim-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;position:sticky;top:22px}.sim-block{margin-bottom:22px}.sim-block h4{color:var(--text-faint);font-size:var(--fs-xs);font-weight:700;letter-spacing:.13em;margin-bottom:10px;text-transform:uppercase}.asset-list{max-height:220px;overflow-y:auto;padding-right:4px;scrollbar-width:thin}.unlock-hint{align-items:center;background:var(--pro-bg);border:1px solid var(--pro-border);border-radius:999px;color:var(--pro);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-xs);font-weight:600;gap:7px;height:var(--h-sm);margin-top:11px;padding:0 13px}.unlock-hint svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:12px;width:12px}.sim-stats{display:flex;flex-wrap:wrap;gap:20px}.stat{display:flex;flex-direction:column;gap:2px}.stat .k{color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.stat .v{font-size:var(--fs-lg);font-weight:600}.stat.pos .v{color:var(--green)}.stat.neg .v{color:var(--rose)}.chart-wrap{position:relative}.lock-note{align-items:center;background:var(--surface-2);border:1px solid var(--pro-border);border-radius:var(--radius);display:flex;gap:14px;margin-top:14px;padding:14px 16px}.lock-note .brand-chip{flex-shrink:0}.lock-note-text{flex:1 1;min-width:0}.lock-note-text b{display:block;font-size:var(--fs-md);font-weight:600}.lock-note-text p{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.55;margin:2px 0 0}.lock-note .btn{flex-shrink:0}@media (max-width:720px){.lock-note{align-items:flex-start;flex-direction:column;gap:10px}.lock-note .btn{justify-content:center;width:100%}}.sim-state{grid-gap:12px;align-content:center;background:var(--hover);border:1px dashed var(--line);border-radius:var(--radius-sm);display:grid;gap:12px;justify-items:center;min-height:300px;padding:30px 20px;text-align:center}.sim-state b{font-size:var(--fs-lg);font-weight:600}.sim-state p{color:var(--text-soft);font-size:var(--fs-sm);max-width:42ch}.sim-state-ico{border-radius:14px;display:grid;height:46px;place-items:center;width:46px}.sim-state-ico svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;height:24px;width:24px}.sim-state-ico.warn{background:var(--warn-bg);color:var(--warn-text)}.sim-stop{background:var(--fill-2);border:1px solid var(--line-strong);color:var(--text);overflow:hidden;position:relative}.sim-stop:hover{background:var(--fill)}.sim-stop svg{animation:sim-pulse 1s ease-in-out infinite}@keyframes sim-pulse{50%{opacity:.35;transform:scale(.9)}}.sim-bar{background:var(--track);bottom:0;height:3px;left:0;position:absolute;right:0}.sim-bar i{background:var(--grad);background-origin:border-box;display:block;height:100%;transition:width .2s linear;width:0}@media (prefers-reduced-motion:reduce){.sim-stop svg{animation:none}}.sim-panel.busy{opacity:.55;pointer-events:none}.sim-panel.busy .check-item,.sim-panel.busy button{cursor:not-allowed}[data-sim-runs] path{transition:opacity .3s}[data-sim-runs] path.pending{opacity:0}.chart-foot{align-items:flex-start;border-top:1px solid var(--line);color:var(--text-faint);display:flex;font-size:var(--fs-sm);gap:9px;margin-top:14px;padding-top:13px}.chart-foot svg{stroke:currentColor;fill:none;stroke-width:1.9;height:14px;margin-top:2px;width:14px}.controls-row{align-items:center;gap:12px;justify-content:space-between;margin-bottom:22px}.controls-row,.hero-top{display:flex;flex-wrap:wrap}.hero-top{align-items:flex-start;gap:22px;margin-bottom:18px}.hero-top h2{line-height:1.45;max-width:470px}.hero-num{flex-shrink:0;margin-left:auto;text-align:right}.hero-num b{background:var(--grad-vivid);-webkit-background-clip:text;background-clip:text;color:#0000;display:block;font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.01em}.hero-num span{color:var(--text-faint);font-size:var(--fs-xs)}.miles{margin:4px 0 32px;max-width:660px;position:relative}.miles-track{background:var(--track);border-radius:999px;height:7px}.miles-track i{background:var(--grad);border-radius:inherit;box-shadow:0 0 12px #00d4aa80;display:block;height:100%;width:28%}.miles .mile{background:var(--track);border-radius:2px;height:15px;position:absolute;top:-4px;width:2.5px}.miles .mile span{color:var(--text-faint);font-size:var(--fs-2xs);left:50%;position:absolute;top:18px;transform:translateX(-50%);white-space:nowrap}.hero-foot{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.hero-foot .gap{color:var(--text-soft);font-size:var(--fs-sm);margin-right:auto}.method-btn{background:var(--fill);border:none;border-radius:999px;color:var(--text-soft);cursor:pointer;font-family:inherit;font-size:var(--fs-xs);font-weight:500;height:var(--h-sm);padding:0 16px}.method-btn.on{background:var(--grad);color:#fff;font-weight:600}.chart-toggles{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.tgl-group .info-btn{height:24px;width:24px}.tgl-group .info-btn+.info-btn{margin-left:-2px}.tgl-group .tgl+.info-btn{border-left:1px solid var(--line);border-radius:0 999px 999px 0;margin-left:2px;width:26px}.tgl-group:has(.tgl.active) .info-btn{color:var(--text-soft)}.tgl-group .info-btn:hover{background:#00d4aa1f;color:var(--teal)}.tooltip{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);box-shadow:0 24px 50px -20px #000c;color:var(--text-soft);font-size:var(--fs-sm);line-height:1.55;max-width:320px;opacity:0;padding:11px 14px;position:fixed;text-align:left;transform:translateY(3px);transition:opacity .13s ease,transform .13s ease,visibility 0s linear .13s;visibility:hidden;z-index:400}.tooltip.open{opacity:1;transform:none;transition-delay:0s;visibility:visible}.tooltip b{color:var(--text);display:block;font-weight:600;margin-bottom:3px}.tooltip:after{border:6px solid #0000;border-top:6px solid var(--line-strong);content:"";left:50%;left:var(--arrow-x,50%);margin-left:-6px;position:absolute;top:100%}.tooltip.below:after{border-bottom-color:var(--line-strong);border-top-color:#0000;bottom:100%;top:auto}.item-flag .sw{height:15px;width:26px}.item-flag .sw:after{height:11px;left:2px;top:2px;width:11px}.item-flag .sw.on:after{left:13px}.item-row{align-items:center;display:flex;flex-wrap:wrap;gap:13px;padding:12px 0}.item-row+.item-row{border-top:1px solid var(--line)}.item-row .item-body{flex:1 1 190px;min-width:0}.item-name{font-size:var(--fs-md);font-weight:500}.item-meta{color:var(--text-faint);font-size:var(--fs-xs);margin-top:2px}.item-val{font-size:var(--fs-md);font-weight:600;margin-left:auto;white-space:nowrap}.item-val.neg{color:var(--rose)}.item-flag{align-items:center;color:var(--text-soft);display:inline-flex;font-size:var(--fs-2xs);gap:6px;margin-left:10px}.item-row.inactive .item-name,.item-row.inactive .item-val{opacity:.4}.fi-strip{display:none}.fi-strip>div{display:flex;flex:1 1 44%;flex-direction:column;gap:3px;min-width:0}.fi-strip span{align-items:center;color:var(--text-soft);display:flex;font-size:var(--fs-xs);gap:7px}.fi-strip em{color:var(--text-faint);font-style:normal}.fi-strip i{border-radius:3px;flex-shrink:0;height:10px;width:10px}.fi-strip b{font-feature-settings:"tnum";font-size:var(--fs-num-sm);font-variant-numeric:tabular-nums;font-weight:600}@media (max-width:768px){.fi-strip{background:var(--hover);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:14px 20px;margin-top:10px;padding:13px}.card:has(.fi-strip) .legend{display:none}}.fi-note{align-items:flex-start;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:9px;margin-top:12px}.fi-note svg{fill:none;stroke:var(--teal);stroke-width:1.9;stroke-linecap:round;flex-shrink:0;height:15px;margin-top:2px;width:15px}.fi-note b{color:var(--text);font-weight:600}.fi-math{background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);margin-top:4px;padding:14px}.fi-math-label{color:var(--text-faint);display:block;font-size:var(--fs-2xs);font-weight:600;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.fi-math-row{align-items:baseline;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:12px;padding:5px 0}.fi-math-row em{color:var(--text-faint);display:block;font-size:var(--fs-2xs);font-style:normal}.fi-math-row b{font-feature-settings:"tnum";color:var(--text);font-variant-numeric:tabular-nums;margin-left:auto;white-space:nowrap}.fi-math-row.total{border-top:1px solid var(--line);color:var(--text);font-weight:600;margin-top:4px;padding-top:9px}.fi-math-row.total b{color:var(--teal)}.plan-grid{grid-gap:18px;align-items:stretch;display:grid;gap:18px;grid-template-columns:1fr 1.15fr .95fr}.pcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:13px;height:100%;padding:22px;position:relative}.pcard.pro{background:radial-gradient(130% 90% at 100% 0,#00d4aa17,#0000 58%),var(--surface);background-origin:border-box;border-color:#00d4aa4d;box-shadow:var(--shadow)}.pc-top{align-items:center;display:flex;gap:10px;justify-content:space-between}.pc-name{font-size:var(--fs-lg);font-weight:700}.pc-price{font-size:var(--fs-num-lg);font-weight:700;letter-spacing:-.03em;line-height:1}.pc-note{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.45;margin-top:5px}.pc-inc{border-top:1px solid var(--line);color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.12em;padding-top:12px;text-transform:uppercase}.pc-list{display:flex;flex-direction:column;gap:9px;list-style:none}.pc-list li{align-items:flex-start;display:flex;font-size:var(--fs-md);gap:9px;line-height:1.45}.pc-list li>svg{stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;height:15px;margin-top:3px;width:15px}.pc-list .ok{stroke:var(--teal)}.pc-list .dim{stroke:var(--text-faint)}.pc-list .muted{color:var(--text-soft)}.pc-cta,.pc-fill{margin-top:auto}.pc-fill{border-top:1px solid var(--line);color:var(--text-faint);font-size:var(--fs-sm);line-height:1.5;padding-top:13px}.pc-fill b{color:var(--text-soft);font-weight:600}.pc-fill+.pc-cta{margin-top:12px}.pcard .pw-unconfigured,.pcard .pw-vat{flex:0 0 auto}.pcard .pw-demo,.pcard .pw-vat{margin-top:auto}.pcard .pw-vat+.pc-cta{margin-top:12px}.pcard .pc-cta,.pcard .pw-demo .btn{flex-shrink:0}.plan-aside{display:flex;flex-direction:column;gap:14px}.plan-aside .card{margin:0}.faq{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.faq:first-of-type{border-top:none;margin-top:0;padding-top:0}.faq b{display:block;font-weight:600;margin-bottom:4px}.faq b,.faq p{font-size:var(--fs-sm)}.faq p{color:var(--text-faint);line-height:1.55}.gradient-text{-webkit-text-fill-color:#0000;background:var(--grad-vivid);-webkit-background-clip:text;background-clip:text;color:#0000}.f-tag{align-items:center;background:linear-gradient(135deg,#a855f747,#a855f71f);background-origin:border-box;border:1px solid var(--pro-border);border-radius:999px;color:var(--pro);display:inline-flex;font-size:var(--fs-2xs);font-weight:700;gap:5px;letter-spacing:.08em;overflow:hidden;padding:2px 9px;position:relative;text-transform:uppercase;white-space:nowrap}.f-tag:after{animation:shim 5s ease-in-out 1.4s infinite;background:linear-gradient(105deg,#0000 32%,#ffffff73 50%,#0000 68%);content:"";inset:0;position:absolute;transform:translateX(-130%)}@keyframes shim{0%{transform:translateX(-130%)}20%,to{transform:translateX(230%)}}.was{color:var(--text-faint);font-size:var(--fs-sm);font-weight:500;text-decoration:line-through}.save{background:#00d4aa1a;border:1px solid #00d4aa4d;border-radius:999px;color:var(--teal);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.05em;padding:2px 8px;text-transform:uppercase;white-space:nowrap}.seal{align-items:center;background:radial-gradient(circle at 30% 25%,#a855f7f2,#6366f1e6);background-origin:border-box;border:2px solid #ffffff38;border-radius:50%;box-shadow:0 6px 18px #6366f166;color:#fff;display:flex;flex-direction:column;gap:1px;height:70px;justify-content:center;position:absolute;right:16px;top:-12px;transform:rotate(-9deg);width:70px;z-index:2}.seal:after{border:1px dashed #ffffff80;border-radius:50%;content:"";inset:5px;position:absolute}.seal-k{font-size:8px;font-weight:700;letter-spacing:.12em;opacity:.9;text-transform:uppercase}.seal-n{font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px;font-weight:500;line-height:1}.meter{display:flex;flex-direction:column;gap:6px}.meter-top{align-items:baseline;color:var(--text-faint);display:flex;font-size:var(--fs-sm);gap:10px;justify-content:space-between}.meter-top b{color:var(--pro);font-size:var(--fs-lg);font-weight:700}.meter-bar{background:var(--track);border-radius:999px;height:6px;overflow:hidden}.meter-bar i{animation:meter-grow .9s cubic-bezier(.22,1,.36,1) both;background:linear-gradient(90deg,var(--pro),#6366f1);border-radius:999px;display:block;height:100%;transform-origin:left center;width:38%;width:var(--fill-w,38%)}@keyframes meter-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.tiles{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(168px,100%),1fr))}.tile{background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:6px;padding:13px;text-align:left;transition:border-color .15s,background .15s}.tile:hover{border-color:#00d4aa59}.tile.on{background:#00d4aa14;border-color:var(--teal)}.tile.on.tile-f{background:var(--pro-bg);border-color:var(--pro)}.tile-top{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.tile-radio{border:1.5px solid var(--text-faint);border-radius:50%;display:grid;flex-shrink:0;height:16px;place-items:center;width:16px}.tile.on .tile-radio{background:var(--teal);border-color:var(--teal)}.tile.on.tile-f .tile-radio{background:var(--pro);border-color:var(--pro)}.tile.on .tile-radio:after{background:#fff;border-radius:50%;content:"";height:5px;width:5px}.tile-name{font-size:var(--fs-md);font-weight:700}.tile-num{font-size:var(--fs-num);font-weight:700;letter-spacing:-.03em;line-height:1}.tile-num span{-webkit-text-fill-color:var(--text-faint);color:var(--text-faint);font-size:var(--fs-xs);font-weight:500}.tile-anchor{align-items:center;display:flex;flex-wrap:wrap;gap:7px;min-height:20px}.tile-sub{color:var(--text-soft);font-size:var(--fs-xs);line-height:1.4;margin-top:auto}.tile-locks{display:flex;flex-direction:column;gap:5px;list-style:none;margin-top:2px}.tile-locks li{align-items:flex-start;color:var(--text-soft);display:flex;font-size:var(--fs-xs);gap:7px;line-height:1.35}.tile-locks li svg{stroke:var(--pro);fill:none;stroke-width:2;flex-shrink:0;height:11px;margin-top:3px;width:11px}.plan-foot{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.6;margin-top:18px;text-align:center}.plan-foot a{text-decoration:underline}.plan-price{color:var(--pro);display:block;font-size:var(--fs-xs);font-weight:600;margin-top:5px}.plan-issue{align-items:flex-start;background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:10px;color:var(--warn-text);display:flex;font-size:var(--fs-xs);gap:8px;margin-top:8px;padding:8px 10px}.plan-issue svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;flex-shrink:0;height:14px;margin-top:1px;width:14px}[data-plan-cta][aria-disabled=true]{opacity:.7;pointer-events:none}.btn.busy{pointer-events:none}.pw-from{align-items:center;background:var(--pro-bg);border:1px solid var(--pro-border);border-radius:12px;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:9px;margin-bottom:16px;padding:9px 12px}.pw-from span b{color:var(--text);font-weight:600}.pw-features{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}.pw-features li{align-items:center;border-bottom:1px solid var(--line);color:var(--text);display:flex;font-size:var(--fs-md);gap:11px;line-height:1.45;padding:10px 0}.pw-features li:last-child{border-bottom:0}.pw-features .ico{background:var(--pro-bg);border-radius:10px;color:var(--pro);display:grid;flex-shrink:0;height:30px;place-items:center;width:30px}.pw-features .ico svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.pw-soon{background:var(--fill);border:1px solid var(--line);border-radius:999px;color:var(--text-faint);flex-shrink:0;font-size:var(--fs-2xs);font-style:normal;font-weight:600;letter-spacing:.06em;margin-left:auto;padding:2px 8px;text-transform:uppercase}.pw-plans{display:flex;flex-wrap:wrap;gap:12px}.pw-plan{align-items:flex-start;background:var(--fill);border:1.5px solid var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;display:flex;flex:1 1 190px;flex-direction:column;gap:6px;padding:15px;text-align:left;transition:border-color .18s,background .18s,transform .18s}.pw-plan:hover{transform:translateY(-1px)}.pw-plan.primary,.pw-plan:hover{background:var(--pro-bg);border-color:var(--pro-border)}.pw-badge{background:var(--pro);border-radius:999px;color:#fff;font-size:var(--fs-2xs);font-weight:600;padding:2px 8px}.pw-price{font-size:var(--fs-num);font-weight:700}.pw-price em{color:var(--text-faint);font-size:var(--fs-sm);font-style:normal;font-weight:500;margin-left:4px}.pw-note{color:var(--text-soft);font-size:var(--fs-xs);line-height:1.5}.pw-plans.off .pw-plan{opacity:.5;pointer-events:none}.pw-vat{color:var(--text-faint);flex:1 1 100%;font-size:var(--fs-2xs);margin:4px 0 0}.pw-unconfigured{color:var(--warn-text);flex:1 1 100%;font-size:var(--fs-sm)}.pw-demo{grid-gap:12px;display:grid;gap:12px}.pw-demo-note{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.55}.pw-smallprint{color:var(--text-faint);font-size:var(--fs-xs);line-height:1.6;margin-top:16px}.pw-smallprint a{color:var(--text-soft)}.co-ico{background:var(--fill);border-radius:16px;color:var(--text-soft);display:grid;height:52px;margin:0 auto 14px;place-items:center;width:52px}.co-ico svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:26px;width:26px}.co-ico.ok{background:#10b98124;color:var(--ok-text)}.co-ico.soon{background:var(--pro-bg);color:var(--pro)}#dlg-checkout .dialog,#dlg-soon .dialog{text-align:center}#dlg-checkout h3,#dlg-soon h3{margin-bottom:8px}.snap-card.editing{background:var(--fill);border-color:var(--line-strong)}.snap-edit-fields{display:flex;flex-wrap:wrap;gap:12px}.snap-edit-fields .field{flex:1 1 170px;margin-bottom:0}.snap-edit-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.snap-empty{grid-gap:10px;border:1px dashed var(--line);border-radius:var(--radius-sm);color:var(--text-soft);display:grid;gap:10px;justify-items:center;padding:30px 18px;text-align:center}.snap-empty svg{fill:none;stroke:var(--text-faint);stroke-width:1.6;stroke-linecap:round;height:26px;width:26px}.snap-empty p{font-size:var(--fs-sm);max-width:36ch}.snap-empty b{color:var(--text);display:block;font-weight:600}.drawer-body.is-empty .snap-card,.drawer-body.is-empty .snap-hint{display:none}.ob-root{display:flex;flex-direction:column;min-height:100vh;position:relative;z-index:1}.ob-head{align-items:center;display:flex;gap:16px;padding:22px clamp(18px,5vw,46px) 0}.ob-progress{display:flex;flex:1 1;gap:7px}.ob-dot{background:var(--track);border-radius:999px;height:4px;transition:background .3s;width:26px}.ob-dot.done{background:#00d4aa73}.ob-dot.active{background:var(--grad);width:40px}.ob-main{display:grid;flex:1 1;padding:26px clamp(18px,5vw,46px);place-items:center}.ob-inner{animation:ob-in .45s cubic-bezier(.22,1,.36,1) both;max-width:880px;width:100%}@keyframes ob-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.ob-title{font-size:clamp(24px,3.6vw,34px);font-weight:600;letter-spacing:-.02em;line-height:1.2;margin-bottom:10px}.ob-title.ob-hero{font-size:clamp(30px,5.2vw,48px);font-weight:700}.ob-body{color:var(--text-soft);font-size:var(--fs-lg);line-height:1.6;max-width:560px}.ob-welcome{align-items:center;display:flex;flex-direction:column;gap:18px;text-align:center}.ob-welcome .ob-body{font-size:var(--fs-lg)}.ob-promise{color:var(--text-faint);font-size:var(--fs-sm)}.ob-foot{align-items:center;border-top:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;padding:16px clamp(18px,5vw,46px) calc(24px + env(safe-area-inset-bottom))}.ob-step-of{color:var(--text-faint);font-size:var(--fs-sm)}.ob-entry{grid-gap:26px;align-items:start;display:grid;gap:26px;grid-template-columns:1fr 1fr;margin-top:24px}.ob-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.ob-choice-row{display:flex;flex-wrap:wrap;gap:9px}.ob-choice{align-items:center;background:var(--fill);border:1.5px solid #0000;border-radius:999px;color:var(--text-soft);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--fs-md);font-weight:500;gap:8px;height:var(--h);padding:0 18px}.ob-choice.on{background:#00d4aa14;border-color:var(--teal);color:var(--text)}.ob-loc-label{align-items:center;color:var(--text-faint);display:flex;font-size:var(--fs-xs);font-weight:700;gap:8px;letter-spacing:.13em;margin-bottom:10px;text-transform:uppercase}.ob-loc-label svg{stroke:currentColor;fill:none;stroke-width:1.9;height:14px;width:14px}.ob-kinds{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.ob-kind{align-items:flex-start;background:var(--fill);border:1.5px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:8px;padding:14px;text-align:left;transition:border-color .18s,background .18s}.ob-kind b{color:var(--text);font-size:var(--fs-md);font-weight:600}.ob-kind span{color:var(--text-faint);font-size:var(--fs-xs)}.ob-kind.on{background:#00d4aa14;border-color:var(--teal)}.ob-chips{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.ob-chips-label{color:var(--text-faint);font-size:var(--fs-xs)}.ob-chip{align-items:center;animation:ob-pop .3s cubic-bezier(.22,1,.36,1) both;background:#00d4aa1a;border:1px solid #00d4aa4d;border-radius:999px;color:var(--teal);display:inline-flex;font-size:var(--fs-sm);font-weight:500;gap:7px;padding:5px 12px}@keyframes ob-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}.ob-chip svg{stroke:currentColor;fill:none;stroke-width:2.6;height:12px;width:12px}.ob-chip-x{background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;display:grid;height:18px;margin:-2px -6px -2px 1px;opacity:.6;place-items:center;transition:opacity .15s,background .15s,color .15s;width:18px}.ob-chip-x:hover{background:var(--danger-bg);color:var(--danger-text);opacity:1}.ob-chip-x svg{stroke-width:2.4;height:11px;width:11px}.ob-chip.going{opacity:0;transform:scale(.9);transition:opacity .15s,transform .15s}.ob-celebrate{align-items:center;display:flex;flex-direction:column;gap:16px;text-align:center}.ob-celebrate .ob-summary{--card:150px;align-self:stretch;margin:10px 0 4px;text-align:left}.confetti{inset:0;overflow:hidden;pointer-events:none;position:absolute}.confetti i{animation:fall 3.4s linear infinite;border-radius:2px;height:14px;opacity:.9;position:absolute;top:-12px;width:8px}@keyframes fall{to{transform:translateY(110vh) rotate(540deg)}}.ob-readout{background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);padding:15px}.ob-readout-label{color:var(--text-faint);display:block;font-size:var(--fs-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.ob-readout-label b{color:var(--text-soft);font-weight:600}.ob-readout>b{display:block;font-size:var(--fs-num-lg);font-weight:700;margin:4px 0 12px}.ob-readout-rows{display:flex;flex-direction:column;gap:6px}.ob-readout-rows div{align-items:baseline;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:10px}.ob-readout-rows b{font-feature-settings:"tnum";color:var(--text);font-variant-numeric:tabular-nums;margin-left:auto}.ob-readout-bar{background:var(--track);border-radius:999px;height:6px;margin-top:12px;overflow:hidden}.ob-readout-bar i{background:var(--grad);background-origin:border-box;display:block;height:100%}.ob-saved{align-items:flex-start;animation:ob-flash .3s ease-out;background:#10b9811f;border:1px solid #10b98157;border-radius:12px;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:9px;margin:4px 0 14px;padding:10px 12px}.ob-saved svg{fill:none;stroke:var(--ok-text);stroke-width:2.4;stroke-linecap:round;flex-shrink:0;height:15px;margin-top:2px;width:15px}.ob-saved b{color:var(--text);font-weight:600}@keyframes ob-flash{0%{opacity:0;transform:translateY(-4px)}}.ob-future-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px 30px;margin-bottom:16px}.ob-future-num{display:block;font-size:var(--fs-num-lg);font-weight:700;margin-top:4px}.ob-future-side{margin-left:auto;text-align:right}.ob-future-side b{color:var(--teal);display:block;font-size:var(--fs-num);font-weight:600;margin-top:4px}.ob-range{align-items:center;display:flex;gap:12px;margin:16px 0 10px}.ob-range input[type=range]{flex:1 1;min-width:0}.ob-range-cap{color:var(--text-faint);flex-shrink:0;font-size:var(--fs-xs)}@media (max-width:700px){.ob-future-side{margin-left:0;text-align:left}}.aw-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}.aw-variant{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;padding:20px}.aw-head{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.aw-tag{background:var(--fill-2);border-radius:9px;color:var(--text-soft);display:grid;flex-shrink:0;font-size:var(--fs-xs);font-weight:700;height:26px;place-items:center;width:26px}.aw-head h3{font-size:var(--fs-md);font-weight:600}.aw-thesis{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.6}.aw-stage{align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);display:grid;min-height:96px;padding:14px}.aw-foot{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.aw-cost{color:var(--text-faint);font-size:var(--fs-xs)}.aw-figure{color:var(--green);font-size:var(--fs-num-lg);font-weight:700;letter-spacing:-.02em;white-space:nowrap}.aw-figure.neg{color:var(--rose)}.aw-window{color:var(--text-faint);font-size:var(--fs-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase}.aw-window b{color:var(--text);font-weight:700}.aw-rows{display:flex;flex-direction:column;gap:2px;margin-top:10px;text-align:left}.aw-row{align-items:center;border-bottom:1px solid var(--line);display:flex;font-size:var(--fs-sm);gap:12px;justify-content:space-between;padding:7px 0}.aw-row:last-child{border-bottom:none}.aw-row span{color:var(--text-soft)}.aw-row b{font-weight:600;white-space:nowrap}.aw-row b.pos{color:var(--green)}.aw-row b.neg{color:var(--rose)}.aw-note{font-size:var(--fs-xs);line-height:1.55}.aw-hint,.aw-note{color:var(--text-faint)}.aw-banner,.aw-hint{font-size:var(--fs-sm)}.aw-banner{align-items:flex-start;background:#10b98117;border:1px solid #10b98152;border-radius:var(--radius-sm);display:flex;gap:11px;padding:12px 14px}.aw-banner.neg{background:var(--danger-bg);border-color:var(--danger-border)}.aw-banner .ico{color:var(--green);flex-shrink:0;margin-top:1px}.aw-banner.neg .ico{color:var(--rose)}.aw-banner svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.aw-banner .txt{flex:1 1 180px;line-height:1.5}.aw-banner b{font-weight:600}.aw-over{display:grid;inset:0;padding:20px;place-items:center;position:fixed;transition:visibility 0s linear .35s;visibility:hidden;z-index:340}.aw-over.open{transition-delay:0s;visibility:visible}.aw-scrim{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#06091494;inset:0;opacity:0;position:absolute;transition:opacity .35s ease}.aw-over.open .aw-scrim{opacity:1}.aw-card{background:var(--surface);border-radius:28px;box-shadow:0 50px 110px -40px #000000e6,0 0 0 1px #ffffff0f;max-height:calc(100vh - 40px);opacity:0;overflow-y:auto;padding:30px 28px 24px;position:relative;text-align:center;transform:translateY(14px) scale(.96);transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .3s ease;width:min(520px,100%)}.aw-over.open .aw-card{opacity:1;transform:none}.aw-card .aw-figure{display:block;font-size:clamp(32px,8.5vw,50px);margin:6px 0 2px}.aw-card .brand-chip{margin:0 auto 14px}.aw-card h2{font-size:var(--fs-xl);font-weight:600;margin-bottom:6px}.aw-card .aw-sub{color:var(--text-soft);font-size:var(--fs-md);line-height:1.55}.aw-card-foot{display:flex;flex-direction:column;gap:8px;margin-top:20px}.aw-more{background:none;border:0;color:var(--text-faint);cursor:pointer;font:inherit;font-size:var(--fs-sm);padding:4px}.aw-more:hover{color:var(--text)}.aw-x{right:16px;top:16px}.aw-burst,.aw-x{position:absolute}.aw-burst{inset:0;overflow:hidden;pointer-events:none;z-index:2}.aw-burst canvas{display:block;height:100%;width:100%}@media (max-width:560px){.aw-card{border-radius:22px;padding:26px 18px 20px}}.aw-side{background:var(--surface);border:1px solid var(--line-strong);border-radius:20px;bottom:22px;box-shadow:0 34px 70px -28px #000000d9;opacity:0;overflow:hidden;padding:15px 18px 17px;position:fixed;right:22px;transform:translateY(18px);transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .3s ease,visibility 0s linear .42s;visibility:hidden;width:min(340px,calc(100vw - 32px));z-index:330}.aw-side.open{opacity:1;transform:none;transition-delay:0s;visibility:visible}.aw-clock{background:linear-gradient(90deg,var(--rose),#fb718540);height:2px;left:0;position:absolute;right:0;top:0;transform:scaleX(1);transform-origin:left center}.aw-side.held .aw-clock{opacity:0;transition:opacity .3s ease}.aw-side-head{align-items:center;display:flex;gap:9px;margin-bottom:8px}.aw-side-head .aw-window{flex:1 1}.aw-side .aw-figure{display:block;font-size:var(--fs-num-md);margin-bottom:6px}.aw-side .aw-note{font-size:var(--fs-sm);line-height:1.6}.aw-side .aw-detail{max-height:44vh;overflow-y:auto}.aw-detail{margin-top:10px;text-align:left}.aw-sidegroup+.aw-sidegroup{margin-top:2px}.aw-siderow{align-items:center;background:none;border:0;border-bottom:1px solid var(--line);color:var(--text-soft);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-sm);gap:8px;padding:9px 0;text-align:left;width:100%}.aw-siderow:hover{color:var(--text)}.aw-siderow span{flex:1 1;font-weight:600}.aw-siderow b{font-weight:700;white-space:nowrap}.aw-caret{stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;height:14px;transition:transform .2s;width:14px}.aw-siderow.open .aw-caret{transform:rotate(90deg)}.aw-items{padding:6px 0 8px 22px}.aw-itemrow{grid-gap:2px 10px;display:grid;font-size:var(--fs-xs);gap:2px 10px;grid-template-columns:1fr auto;padding:5px 0}.aw-itemname{color:var(--text-soft);min-width:0}.aw-itemrow>b{font-weight:600;white-space:nowrap}.aw-parts{display:flex;flex-wrap:wrap;gap:3px 12px;grid-column:1/-1;margin-top:1px}.aw-part{color:var(--text-faint);font-size:var(--fs-2xs);white-space:nowrap}.aw-part b{font-weight:600}.aw-detail .pos{color:var(--green)}.aw-detail .neg{color:var(--rose)}.aw-foot-note{color:var(--text-faint);font-size:var(--fs-2xs);line-height:1.55;margin-top:12px}@media (max-width:700px){.aw-side{bottom:calc(74px + env(safe-area-inset-bottom));left:12px;right:12px;width:auto}.aw-side .aw-detail{max-height:38vh}}.exp-page-wrap{inset:0;position:fixed;transition:visibility 0s linear .3s;visibility:hidden;z-index:392}.exp-page-wrap.open{transition-delay:0s;visibility:visible}.exp-page{background:radial-gradient(900px 600px at 80% -10%,#8b5cf61a,#0000 60%),radial-gradient(800px 600px at -10% 30%,#00d4aa12,#0000 55%),var(--bg);inset:0;opacity:0;overflow-y:auto;position:absolute;transform:translateY(18px);transition:opacity .28s ease,transform .28s cubic-bezier(.22,1,.36,1)}.exp-page-wrap.open .exp-page{opacity:1;transform:none}.exp-inner{margin:0 auto;max-width:720px;padding:26px clamp(18px,5vw,40px) 70px}.exp-top{gap:14px;justify-content:space-between;margin-bottom:26px}.exp-eyebrow,.exp-top{align-items:center;display:flex}.exp-eyebrow{color:var(--text-faint);font-size:var(--fs-xs);font-weight:700;gap:9px;letter-spacing:.14em;text-transform:uppercase}.exp-eyebrow svg{stroke:var(--teal);fill:none;stroke-width:1.9;height:15px;width:15px}.exp-title{font-size:clamp(24px,3.6vw,32px);font-weight:600;letter-spacing:-.02em;line-height:1.25;margin-bottom:10px}.exp-sub{color:var(--text-soft);font-size:var(--fs-lg);line-height:1.65;margin-bottom:26px}.exp-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:22px;padding:20px}.exp-stage{animation:ob-in .5s cubic-bezier(.22,1,.36,1) both;animation-delay:.09s;animation-delay:calc(var(--stage, 1)*.09s)}.exp-methods{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:22px}.exp-method{background:var(--fill);border-radius:var(--radius-sm);padding:15px}.exp-method b{display:block;font-size:var(--fs-sm);font-weight:700;margin-bottom:5px}.exp-method.fire b{color:var(--teal)}.exp-method.income b{color:var(--sky)}.exp-method p{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.55}.exp-story{color:var(--text-soft);font-size:var(--fs-md);line-height:1.75}.exp-formula{align-items:center;background:var(--fill);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;font-size:var(--fs-sm);gap:14px;justify-content:center;margin-bottom:22px;padding:16px}.exp-formula .op{color:var(--text-faint);font-size:var(--fs-xl)}.exp-formula .term{text-align:center}.exp-formula .term b{display:block;font-size:var(--fs-lg);font-weight:700}.exp-formula .term span{color:var(--text-faint);font-size:var(--fs-xs)}.spec-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.spec{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:18px}.spec h4{color:var(--text-faint);font-size:var(--fs-sm);font-weight:700;letter-spacing:.1em;margin-bottom:12px;text-transform:uppercase}.spec .note{margin-top:12px}.exp-events{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.exp-event{grid-gap:14px;align-items:center;background:var(--fill);border-left:3px solid var(--teal);border-radius:var(--radius-sm);display:grid;gap:14px;grid-template-columns:auto 1fr auto;padding:12px 14px}.exp-event.b{border-left-color:var(--sky)}.exp-event.c{border-left-color:var(--amber)}.exp-event .when{color:var(--text-faint);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.exp-event b{display:block;font-size:var(--fs-md);font-weight:600}.exp-event p{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.45}.exp-event .delta{font-size:var(--fs-md);font-weight:600;white-space:nowrap}.exp-event .delta.pos{color:var(--green)}.exp-steps{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.exp-step{background:var(--fill);border-radius:var(--radius-sm);padding:12px;text-align:center}.exp-step svg{display:block;height:auto;margin-bottom:8px;width:100%}.exp-step b{color:var(--text);display:block;font-size:var(--fs-sm);font-weight:700}.exp-step span{color:var(--text-faint);font-size:var(--fs-2xs)}.exp-step .n{background:var(--grad);border-radius:50%;color:#fff;display:inline-grid;font-size:10px;font-weight:700;height:18px;margin-bottom:6px;place-items:center;width:18px}.exp-ladder{display:flex;flex-direction:column;gap:0;margin-bottom:20px}.exp-rung{grid-gap:12px;align-items:center;border-bottom:1px dashed var(--line);display:grid;gap:12px;grid-template-columns:58px 1fr auto;padding:9px 0}.exp-rung:last-child{border-bottom:none}.exp-rung .p{color:var(--text-faint);font-size:var(--fs-sm);font-weight:700}.exp-rung .bar{background:var(--track);border-radius:999px;height:8px;overflow:hidden}.exp-rung .bar i{background:linear-gradient(90deg,var(--violet),#6366f1);border-radius:inherit;display:block;height:100%}.exp-rung.mid .bar i{background:#fde047}.exp-rung .v{font-size:var(--fs-md);font-weight:600;white-space:nowrap}.exp-strip{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:repeat(3,1fr) auto;margin-bottom:20px}.exp-frame{background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;text-align:center}.exp-frame svg{display:block;height:auto;width:100%}.exp-frame span{color:var(--text-faint);display:block;font-size:var(--fs-2xs);margin-top:6px}.exp-strip .arrow{color:var(--text-faint);font-size:20px}.exp-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.exp-chip{background:var(--fill);border:1px solid var(--line);border-radius:999px;color:var(--text-soft);font-size:var(--fs-sm);padding:5px 12px}.exp-chip.no{color:var(--text-faint);opacity:.7;text-decoration:line-through}@media (max-width:700px){.exp-steps,.exp-strip{grid-template-columns:1fr}.exp-strip .arrow{display:none}.exp-event{grid-template-columns:1fr auto}.exp-event .when{grid-column:1/-1}}.rv-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.rv-row{align-items:center;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 14px;padding:16px 20px}.rv-row:last-child{border-bottom:none}.rv-row.done{opacity:.55}.rv-row>.brand-chip{flex:0 0 auto;overflow:visible;position:relative}.rv-text{display:flex;flex:1 1 210px;flex-direction:column;gap:2px;min-width:0}.rv-text b{font-size:var(--fs-md);font-weight:600}.rv-meta,.rv-note{color:var(--text-faint);font-size:var(--fs-xs)}.rv-note{opacity:.8}.rv-badge{background:var(--amber);border-radius:50%;bottom:-6px;box-shadow:0 0 0 2px var(--surface);color:#16110a;display:grid;height:21px;place-items:center;position:absolute;right:-6px;width:21px}.rv-badge svg{stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;height:14px;width:14px}.rv-actions,.rv-values{flex:0 0 auto;margin-left:auto}.rv-values{align-items:center;display:flex;font-size:var(--fs-md);gap:9px;white-space:nowrap}.rv-was{color:var(--text-faint)}.rv-was.plain{color:var(--text-soft);font-weight:600}.rv-arrow{color:var(--text-faint)}.rv-edit{align-items:center;background:none;border:0;border-bottom:1px dashed var(--line-strong);color:var(--text);cursor:pointer;display:inline-flex;font:inherit;font-weight:600;gap:6px;padding:0 0 2px;transition:color .15s,border-color .15s}.rv-edit.est{color:var(--amber)}.rv-pencil{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:12px;opacity:.45;width:12px}.rv-edit:hover{border-bottom-color:var(--amber)}.rv-edit:hover .rv-pencil{color:var(--amber);opacity:1}.rv-input{background:var(--bg);border:1px solid var(--amber);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-weight:600;padding:5px 9px;text-align:right;width:8.5em}.rv-input:focus{box-shadow:0 0 0 3px #f5a9622e;outline:none}.rv-drift{background:#10b98121;border-radius:999px;color:var(--ok-text);font-size:var(--fs-xs);font-weight:700;padding:2px 8px}.rv-drift.neg{background:var(--danger-bg);color:var(--danger-text)}.rv-actions{align-items:center;display:flex;gap:7px}.rv-bulk{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:16px}.rv-clear{color:var(--text-faint);font-size:var(--fs-sm);margin:18px 0 4px;text-align:center}.rv-drawer{margin-top:16px}.rv-drawer.muted{opacity:.6}.rv-drawer-toggle{align-items:center;background:none;border:0;color:var(--text-soft);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-sm);font-weight:600;gap:7px;padding:9px 4px;width:100%}.rv-drawer-toggle:hover{color:var(--text)}.rv-caret{stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;height:16px;transform:rotate(-90deg);transition:transform .18s;width:16px}.rv-drawer-toggle[aria-expanded=true] .rv-caret{transform:rotate(0)}.rv-offer{align-items:center;background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius);color:var(--text-soft);display:flex;flex-wrap:wrap;font-size:var(--fs-sm);gap:12px;line-height:1.5;margin-bottom:18px;padding:13px 14px 13px 16px}.rv-offer .ico{color:var(--warn-text);display:grid;flex-shrink:0;place-items:center}.rv-offer .ico svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;height:17px;width:17px}.rv-offer .txt{flex:1 1 260px;min-width:0}.rv-offer strong{color:var(--text);font-weight:600}.rv-offer .quota{color:var(--text-faint);display:block;font-size:var(--fs-xs);margin-top:3px}.rv-offer .quota b{color:var(--warn-text);font-weight:600}.rv-offer.full .quota b{color:var(--danger-text)}.rv-demo-note{align-items:flex-start;color:var(--text-faint);display:flex;font-size:var(--fs-sm);gap:9px;margin:-6px 0 18px}.rv-demo-note svg{fill:none;stroke:currentColor;stroke-width:1.9;flex-shrink:0;height:15px;margin-top:2px;width:15px}.legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px}.legend button,.legend span{align-items:center;color:var(--text-soft);display:flex;font-size:var(--fs-sm);gap:8px}.legend i{border-radius:50%;flex-shrink:0;height:8px;width:8px}.legend em{color:var(--text-faint);font-size:var(--fs-2xs);font-style:normal}.legend.interactive{gap:8px 14px}.legend.interactive button{background:none;border:1px solid #0000;border-radius:999px;cursor:pointer;padding:5px 10px;transition:background .18s,border-color .18s,opacity .18s}.legend.interactive button:hover{background:var(--fill);border-color:var(--line)}.legend.interactive button.off{opacity:.45}.legend.interactive button.off i{background:var(--text-faint)!important}.legend.interactive button.off,.legend.interactive button.off span{text-decoration:line-through}.chart-badge{align-items:center;background:var(--fill);border:1px solid var(--line);border-radius:999px;color:var(--text-soft);display:inline-flex;font-size:var(--fs-2xs);font-weight:600;gap:6px;letter-spacing:.02em;margin-left:auto;margin-right:10px;padding:4px 10px;text-decoration:none;white-space:nowrap}.chart-badge svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;height:12px;width:12px}.chart-badge.scenario{background:color-mix(in srgb,var(--amber) 12%,#0000);border-color:color-mix(in srgb,var(--amber) 34%,#0000);color:var(--amber)}.chart-badge.scenario:hover{background:color-mix(in srgb,var(--amber) 20%,#0000)}.chart-empty{grid-gap:10px;background:var(--hover);border:1px dashed var(--line);border-radius:var(--radius-sm);display:grid;gap:10px;justify-items:center;padding:40px 20px;text-align:center}.chart-empty svg{fill:none;stroke:var(--text-faint);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;height:30px;width:30px}.chart-empty p{color:var(--text-soft);font-size:var(--fs-sm);max-width:34ch}.chart-empty b{color:var(--text);display:block;font-weight:600}.chart-tip,.rc-tip{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);font-size:var(--fs-xs);min-width:150px;padding:10px 12px;pointer-events:none}.chart-tip{opacity:0;position:fixed;transform:translateY(4px);transition:opacity .18s,transform .18s;z-index:400}.chart-tip.on{opacity:1;transform:none}.chart-tip-x{font-weight:600;margin-bottom:6px}.chart-tip-row{align-items:center;color:var(--text-soft);display:flex;gap:8px}.chart-tip-row i{border-radius:50%;flex-shrink:0;height:8px;width:8px}.chart-tip-row b{font-feature-settings:"tnum";color:var(--text);font-variant-numeric:tabular-nums;margin-left:auto}.chart-cursor{pointer-events:none}.alloc-body{align-items:center;display:flex;flex-wrap:wrap;gap:26px;justify-content:center}.alloc-list{display:flex;flex:1 1 200px;flex-direction:column;gap:11px;min-width:0}.alloc-row{align-items:center;color:var(--text-soft);display:flex;flex-wrap:wrap;font-size:var(--fs-sm);gap:2px 10px}.alloc-row i{border-radius:3px;flex-shrink:0;height:9px;width:9px}.alloc-row b{color:var(--text);font-weight:600;margin-left:auto}.btn-grad,.btn-group button.active,.hero,.seg button.on{background-origin:border-box}@media (max-width:1180px){.sim-layout{grid-template-columns:264px minmax(0,1fr)}.plan-grid{grid-template-columns:1fr 1.1fr}.plan-aside{flex-direction:row;grid-column:1/-1}.plan-aside>*{flex:1 1}}@media (max-width:1080px){.duo{grid-template-columns:repeat(2,1fr)}.ob-entry{grid-template-columns:1fr}}@media (max-width:1040px){.sim-layout{grid-template-columns:minmax(0,1fr)}.sim-panel{position:static}}@media (max-width:900px){.app{grid-template-columns:1fr}.sidebar{display:none}.mobile-top{display:flex}.tabbar{display:block}.main{max-width:none;padding:18px 14px 92px}.pagehead{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:18px}.pagehead h1{font-size:var(--fs-xl);gap:9px}.page-sub{font-size:var(--fs-sm)}.pagehead-actions{gap:8px;overflow-x:auto;padding-bottom:2px;padding-top:2px;scrollbar-width:none}.pagehead-actions::-webkit-scrollbar{display:none}.pagehead-actions .btn{flex-shrink:0;font-size:var(--fs-sm);height:var(--h-sm);padding:0 13px;white-space:nowrap}.pagehead-actions .btn svg{height:14px;width:14px}.explain-banner{align-items:flex-start;border-radius:var(--radius);padding:11px 13px}.explain-banner .ico{margin-top:2px}.duo,.metric-grid{gap:12px}.duo{grid-template-columns:1fr}.metric{padding:15px 16px}.m-icon{border-radius:11px;height:34px;margin-bottom:8px;width:34px}.m-icon svg{height:16px;width:16px}.m-label{font-size:var(--fs-xs)}.m-value{font-size:var(--fs-xl);margin:2px 0 1px}.m-sub{font-size:var(--fs-xs)}.m-bar{margin-top:7px}.card{border-radius:17px;margin-bottom:16px;padding:17px 15px}.card-head{gap:10px;margin-bottom:14px}.card-head h3{font-size:var(--fs-lg)}.card-head>.seg{width:100%}.card-head>.seg>button{flex:1 1}.chart-toggles{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr}.chart-toggles>.tgl,.chart-toggles>.tgl-group{width:100%}.tgl-group>.tgl{flex:1 1;justify-content:flex-start}.tgl-group>.info-btn{flex:0 0 auto}.tgl em{margin-left:auto;padding-left:10px}.hero{padding:20px 17px}.hero.row{flex-wrap:wrap;gap:16px}.hero-right{margin-left:0;text-align:left;width:100%}.hero-bar{width:100%}.hero-top{gap:14px}.hero-num{margin-left:0;text-align:left}.miles{margin-bottom:34px}.hero-foot .gap{margin:0 0 4px;width:100%}.sim-panel{padding:17px 15px}.filters{gap:14px;padding:15px}.filters .filter-block{width:100%}.filter-group{flex-wrap:nowrap;min-width:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.filter-group::-webkit-scrollbar{display:none}.p-grid{gap:12px;grid-template-columns:1fr}.rail{padding-left:22px}.rail:before{left:5px}.rail:after{left:-1px}.tl-dot{border-width:3px;height:12px;left:-22px;top:20px;width:12px}.tl-year:before{left:-20px}.tl-card{padding:14px 15px;row-gap:10px}.tl-body,.tl-date,.tl-foot{flex:1 0 100%;margin-left:0}.tl-title b{font-size:var(--fs-md)}.tl-foot{justify-content:space-between}.tl-val{font-size:var(--fs-lg);text-align:left}.rv-row{padding:15px;row-gap:12px}.rv-text{flex:1 1 170px}.rv-actions,.rv-values{flex:1 0 100%;margin-left:0}.rv-values{font-size:var(--fs-sm)}.rv-actions{flex-wrap:wrap;justify-content:flex-end}.rv-bulk{flex-direction:column-reverse}.rv-bulk .btn{width:100%}.set-row{flex-wrap:wrap;gap:12px;padding:15px}.set-control,.set-control .btn,.set-control .select{width:100%}.set-row .sw{margin-left:auto}.set-control:has(.sw){width:auto}.plan-grid{grid-template-columns:1fr}.plan-aside{flex-direction:column}.pcard.pro{order:-1}.tiles{grid-template-columns:1fr}.alloc-body{align-items:stretch;flex-direction:column;gap:18px}.donut{margin:0 auto}.alloc-list{flex:0 0 auto}.type-picker{grid-template-columns:repeat(3,1fr)}.row-2,.row-3{grid-template-columns:1fr}.drawer{border-radius:0;inset:0;max-width:none;transform:translateX(100%) scale(1);width:100%}.drawer:after{display:none}.drawer-head{padding:18px 18px 14px}.drawer-head h3{font-size:var(--fs-xl)}.drawer-body{padding:18px}.drawer-foot{padding:13px 18px calc(16px + env(safe-area-inset-bottom))}.ob-entry{gap:18px}.ob-kinds,.ob-teasers{grid-template-columns:1fr}.dens-picker{gap:8px;grid-template-columns:1fr 1fr}.dens{padding:10px 10px 11px}.dens b{font-size:var(--fs-xs);margin-bottom:6px}.dens svg{max-height:40px}.dens p{display:none}.dens-tick{height:15px;right:8px;top:8px;width:15px}.exp-methods{grid-template-columns:1fr}}@media (max-width:420px){.tabbar-inner{grid-template-columns:repeat(6,1fr)}.tab{font-size:var(--fs-2xs)}.tab svg{height:18px;width:18px}.metric-grid{gap:10px}.rv-values{flex-wrap:wrap}.btn,.rv-values{white-space:normal}.btn{height:auto;line-height:1.25;min-height:var(--h);padding-bottom:7px;padding-top:7px}.btn-sm{min-height:var(--h-sm)}.btn-lg{min-height:var(--h-lg)}}@media (max-width:768px){:root{--h:48px;--h-sm:40px;--h-lg:52px}}.dialog-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.dialog-head h3{flex:1 1;min-width:0}.dialog-body{font-size:var(--fs-md);line-height:1.6;overflow-y:auto}.dialog--wide{max-width:760px}.dialog-wrap.items-start{padding-top:8vh;place-items:start center}.drawer-title{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em}.app-root{min-height:100vh}button.nav-item{font-family:inherit;width:100%}.user-row-open,button.nav-item{background:none;border:0;cursor:pointer;text-align:left}.user-row-open{align-items:center;border-radius:var(--radius-sm);color:inherit;display:flex;flex:1 1;font:inherit;gap:11px;margin:-5px;min-width:0;padding:5px;transition:background .15s}.user-row-open:hover{background:var(--hover)}.user-row-open:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.user-row .who span.is-pro{color:var(--pro);font-weight:600}body.nav-collapsed .user-row-open{flex:0 0 auto;justify-content:center}.itemform-title{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.01em}@media (max-width:900px){.pagehead{align-items:flex-start;flex-direction:row;flex-wrap:nowrap}.pagehead:has(.pagehead-actions>:nth-child(2)){flex-wrap:wrap}.pagehead:has(.pagehead-actions>:nth-child(2)) .pagehead-main{flex:1 0 100%}.pagehead-actions{overflow-x:auto;scrollbar-width:none}.pagehead-actions::-webkit-scrollbar{display:none}.pagehead-actions .btn{flex-shrink:0;height:var(--h-sm);padding:0 12px}.pagehead-actions{margin:-14px -14px -20px;padding:14px 14px 20px}.pagehead-actions .btn.label-optional>span{display:none}.pagehead-actions .btn.label-optional{aspect-ratio:1;justify-content:center;padding:0}.pagehead-actions .btn svg{height:16px;width:16px}.banner:has(>.icon-btn){padding-right:48px;position:relative}.banner>.icon-btn{position:absolute;right:10px;top:10px}.scenario-bar>.spacer{display:none}.scenario-bar>.btn{flex:1 0 100%;justify-content:center}.scenario-bar>div:not(.spacer){flex:1 1;min-width:0}.alloc-body>.donut-wrap{margin-left:auto;margin-right:auto}}@media (max-width:480px){.fi-strip>div{flex:1 1 100%}.fi-strip span{flex-wrap:wrap}}.sw-label{align-items:center;cursor:pointer;display:inline-flex}.sw-input{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sw-input:checked+.sw{background:var(--grad)}.sw-input:checked+.sw:after{left:19.5px}.sw-input:focus-visible+.sw{outline:2px solid var(--teal);outline-offset:2px}.check-item .sw-input:checked~.box{background:var(--grad);background-origin:border-box;border-color:#0000}.check-item .sw-input:checked~.box svg{opacity:1}.check-item .sw-input:focus-visible~.box{outline:2px solid var(--teal);outline-offset:2px}.check-item.consent{cursor:auto}.check-item.consent:hover{background:none}.check-item.consent>.box{cursor:pointer}.check-item.consent>.box:hover{border-color:var(--line-strong)}.check-item.consent>.box{position:relative}.check-item.consent>.box:before{border-radius:9px;content:"";inset:-6px;position:absolute}.p-metric>.rv-hint{margin-top:-8px}.cf-list{flex:1 1 auto}.cf-list .alloc-row b.pos{color:var(--green)}.cf-list .alloc-row b.neg{color:var(--rose)}button.chart-badge{cursor:pointer;font-family:inherit}.hero-link{color:var(--teal);font-weight:600;white-space:nowrap}.hero.clickable{cursor:pointer}.select:focus-visible{box-shadow:0 0 0 3px #00d4aa33;outline:none}.chip .chip-text{flex:0 0 auto}.logo-mark.brand{box-shadow:0 5px 14px -8px #00d4aa8c}.rv-list .btn-grad.btn-sm{box-shadow:0 4px 12px -10px #00d4aa80}.page-footer .links>.link{color:var(--text-soft);font-weight:inherit}.page-footer .links>.link:hover{color:var(--text)}.page-footer .links>a{text-decoration:none}.page-footer .links>a:hover{text-decoration:underline}.logo-mark.brand{background:none;display:block;height:40px;object-fit:contain;width:40px}.logo-mark.brand.sm{height:32px;width:32px}.boot .logo-mark.brand{height:46px;width:46px}.set-section+.set-section{margin-top:8px}.set-section .section-title:first-child{margin-top:28px}.set-section:first-of-type .section-title{margin-top:0}.donut-wrap{flex-shrink:0;position:relative}.donut-total{color:var(--text);display:grid;font-size:var(--fs-md);font-weight:600;inset:0;padding:0 18px;place-items:center;pointer-events:none;position:absolute;text-align:center}.recharts-tooltip-wrapper{outline:none;z-index:400}.recharts-default-tooltip{display:none}.mc-block{background:color-mix(in srgb,var(--violet) 9%,#0000);border:1.5px solid color-mix(in srgb,var(--violet) 26%,#0000);border-radius:var(--radius-sm);margin-bottom:16px;padding:12px 14px;transition:border-color .2s}.mc-block:hover{border-color:color-mix(in srgb,var(--violet) 44%,#0000)}.mc-block>.check-row{padding:0}.mc-block>.field-label{color:var(--violet)}.mc-block>.mc-title{align-items:center;display:flex;gap:7px}.mc-block>.mc-title>svg{flex-shrink:0;height:15px;width:15px}.mc-block>.row-3>.field,.mc-block>.row-3>.field:last-child{margin-bottom:0}.check-row.sep{border-top:1px solid var(--line);margin-top:2px;padding-top:14px}label.check-row{cursor:pointer}label.check-row>svg{color:var(--violet);height:16px;width:16px}.drawer-body form>.form-preview{background-color:var(--surface);background-image:linear-gradient(var(--fill),var(--fill));bottom:-22px;margin:22px -26px -22px;padding-left:26px;padding-right:26px;position:sticky;z-index:2}@media (max-width:900px){.drawer-body form>.form-preview{bottom:-18px;margin:18px -18px -18px;padding-left:18px;padding-right:18px}}.itemform-standalone{margin:0 auto;max-width:680px;padding:24px}.itemform-foot{border-top:1px solid var(--line);display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px}.sw-input:disabled+.sw{cursor:not-allowed;opacity:.45}.sw-label:has(.sw-input:disabled){cursor:not-allowed}:root{--fi-zone:#10b9811f}:root[data-theme=light]{--fi-zone:#10b9811a}.chart-wrap:has(>canvas){height:400px}@media (max-width:900px){.chart-wrap:has(>canvas){height:320px}}.sim-block .btn-group.periods{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(5,1fr)}.sim-block .btn-group.periods button{padding:0}.confetti i{animation-fill-mode:forwards;animation-iteration-count:1}@media (prefers-reduced-motion:reduce){.confetti{display:none}}@media (max-width:420px){.mobile-top>.btn{white-space:nowrap}}@media (max-width:360px){.mobile-top:has(>.btn)>.logo-name{display:none}}button.page-back{background:none;border:0;cursor:pointer;font-family:inherit;padding:0}.input>.ico{color:var(--text-faint);display:grid;flex-shrink:0;margin-right:9px;place-items:center}.input:focus-within>.ico{color:var(--teal)}.strength{display:flex;gap:4px;margin-top:8px}.strength i{background:var(--track);border-radius:999px;flex:1 1;height:3px;transition:background .2s}.strength.weak i.on{background:var(--rose)}.strength.medium i.on{background:var(--amber)}.strength.strong i.on{background:var(--teal)}.or{align-items:center;color:var(--text-faint);display:flex;font-size:var(--fs-xs);gap:12px;margin:18px 0}.or:after,.or:before{background:var(--line);content:"";flex:1 1;height:1px}.auth-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-bottom:4px}.how-it-works-btn{align-self:center;aspect-ratio:1;justify-content:center;padding:0}.how-it-works-btn svg{display:block}.explain-card{align-items:flex-start;animation:explain-enter .25s ease both;background:#6366f112;border:1px solid #6366f147;border-left:none;border-radius:var(--radius-sm);display:flex;gap:16px;margin-bottom:20px;overflow:hidden;padding:16px 44px 16px 18px;position:relative}.explain-card:before{background:var(--grad);bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.explain-card-content{min-width:0}.explain-card-title{color:var(--text);font-size:var(--fs-md);font-weight:600;margin:2px 0 6px}.explain-card-body{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.55;margin:0}.explain-card-actions{align-items:center;display:flex;gap:16px;margin-top:12px}.explain-card>.icon-btn{position:absolute;right:8px;top:8px}.explain-leaving{animation:explain-exit .18s ease both}.explain-modal-illustration{background:linear-gradient(135deg,#00d4aa14,#8b5cf614);border-radius:var(--radius-sm);margin-bottom:16px;padding:16px}.explain-modal-illustration svg{display:block;height:auto;width:100%}.explain-modal-body{color:var(--text-soft);font-size:var(--fs-md);line-height:1.65;margin:0;white-space:pre-line}.explain-draw{stroke-dasharray:600;stroke-dashoffset:600;animation:explain-draw 1.2s ease-out forwards}.explain-draw-slow{animation-duration:1.8s}.explain-pop{animation:explain-pop .35s ease-out forwards;opacity:0;transform-box:fill-box;transform-origin:center}.explain-fade{animation:explain-fade .6s ease-out forwards;opacity:0}@keyframes explain-enter{0%{opacity:0;transform:translateY(6px)}}@keyframes explain-exit{to{opacity:0;transform:scale(.97)}}@keyframes explain-draw{to{stroke-dashoffset:0}}@keyframes explain-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes explain-fade{to{opacity:1}}.exp-hero svg{display:block;height:auto;margin:0 auto;max-height:28vh;width:100%}.exp-hero .explain-draw,.exp-hero .explain-draw-slow{animation-delay:.5s;animation-fill-mode:both}.exp-hero .explain-fade,.exp-hero .explain-pop{animation-fill-mode:both}.exp-top .brand-chip{border-radius:10px;height:30px;width:30px}.exp-top .brand-chip svg{height:16px;width:16px}.exp-page-close{background:var(--fill);border:1px solid var(--line);border-radius:50%;color:var(--text-soft);cursor:pointer;display:grid;height:38px;place-items:center;position:absolute;right:14px;top:14px;transition:color .15s,background .15s;width:38px;z-index:2}.exp-page-close:hover{background:var(--fill-2);color:var(--text)}.exp-page-cta{margin-top:26px}.exp-legend,.exp-page-cta{display:flex;justify-content:center}.exp-legend{flex-wrap:wrap;gap:20px;margin-top:10px}.exp-legend-item{align-items:center;color:var(--text-soft);display:inline-flex;font-size:var(--fs-xs);gap:7px}.exp-legend-line{border-radius:2px;display:inline-block;height:3px;width:18px}.exp-legend-line--dashed{background:none;border-top:2px dashed var(--text-faint);height:0}.exp-beats{display:flex;flex-direction:column;gap:13px;list-style:none;margin:0 auto 22px;max-width:560px;padding:0}.exp-beat{align-items:flex-start;display:flex;gap:16px}.exp-beat-num{background:var(--grad);background-origin:border-box;border-radius:50%;color:#fff;display:inline-grid;flex-shrink:0;font-size:var(--fs-sm);font-weight:700;height:30px;place-items:center;width:30px}.exp-beat strong{color:var(--text);display:block;font-size:var(--fs-md);margin-bottom:2px}.exp-beat p{color:var(--text-soft);font-size:var(--fs-sm);line-height:1.55;margin:0}@media (max-width:768px){.exp-page-close{height:34px;right:10px;top:10px;width:34px}.exp-methods{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.explain-banner,.explain-card,.explain-leaving{animation:none}.explain-draw,.explain-draw-slow{stroke-dashoffset:0;animation:none}.explain-fade,.explain-pop{animation:none;opacity:1}.exp-hero .explain-draw,.exp-hero .explain-draw-slow{stroke-dashoffset:0;animation:none}.exp-page-close{transition:none}}
/*# sourceMappingURL=main.b53a28c8.css.map*/