:root{--primary:#1e3a5f;--primary-dark:#152a45;--primary-light:#2d4a6f;--accent:#3b82f6;--accent-dark:#2563eb;--success:#10b981;--warning:#f59e0b;--warning-dark:#d97706;--danger:#dc2626;--danger-dark:#b91c1c;--info:#3b82f6;--purple:#a855f7;--gold:gold;--bg-light:#f8fafc;--bg-white:#fff;--bg-primary:#fff;--bg-secondary:#f1f5f9;--bg-tertiary:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#475569;--text-tertiary:var(--text-muted);--text-on-color:white;--border:#e2e8f0;--border-color:var(--border);--chip-bg:var(--bg-white);--chip-border:var(--border-color);--chip-active-bg:#1e3a5f1a;--chip-active-border:var(--primary);--chip-active-glow:0 0 6px #1e3a5f26;--status-success-text:#047857;--status-success-bg:#10b9811a;--status-warning-text:#b45309;--status-warning-text-soft:var(--status-warning-text);--status-warning-bg:#fbbf241a;--status-warning-border:#fbbf244d;--status-error-text:#b91c1c;--status-error-bg:#ef44441a;--status-error-border:#ef44444d;--primary-alpha-5:#1e3a5f0d;--primary-alpha-8:#1e3a5f14;--primary-alpha-10:#1e3a5f1a;--primary-alpha-15:#1e3a5f26;--primary-alpha-20:#1e3a5f33;--primary-alpha-25:#1e3a5f40;--primary-alpha-30:#1e3a5f4d;--primary-rgb:30, 58, 95;--accent-alpha-10:#3b82f61a;--accent-alpha-20:#3b82f633;--accent-alpha-30:#3b82f64d;--accent-rgb:59, 130, 246;--focus-ring:0 0 0 3px var(--accent-alpha-10);--focus-ring-error:0 0 0 3px #dc262626;--focus-ring-success:0 0 0 3px #10b98126;--overlay:#00000080;--overlay-dark:#000000b3;--overlay-light:#ffffffb3;--alert-success-bg:#10b9811a;--alert-success-border:#10b9814d;--alert-error-bg:#ef44441a;--alert-error-border:#ef44444d;--alert-warning-bg:#fbbf241a;--alert-warning-border:#fbbf244d;--success-alpha-10:#10b9811a;--danger-alpha-10:#ef44441a;--info-alpha-10:#3b82f61a;--purple-alpha-10:#a855f71a;--warning-alpha-10:#f59e0b1a;--success-alpha-15:#10b98126;--danger-alpha-15:#dc262626;--warning-alpha-12:#f59e0b1f;--warning-alpha-15:#f59e0b26;--accent-alpha-15:#3b82f626;--purple-alpha-15:#a855f726;--teal:#14b8a6;--teal-alpha-15:#14b8a626;--badge-crypto-bg:#fff3e0;--badge-crypto-text:#e65100;--table-stripe:#00000005;--table-hover:var(--primary-alpha-5);--subscription-bg:linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);--subscription-border:#f59e0b;--subscription-icon:#d97706;--subscription-text:#92400e;--radius-pill:20px;--z-popover:50;--z-sticky:90;--z-landing-backdrop:98;--z-landing-menu:99;--z-nav:100;--z-dropdown:200;--z-mobile-backdrop:998;--z-mobile-menu:999;--z-modal:1000;--z-floating:9998;--z-toast:9999;--z-skip-link:10000;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-medium:.3s ease;--transition-slow:.5s ease-out;--transition-reveal:.8s cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out-quart:cubic-bezier(.76, 0, .24, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--space-xs:clamp(3px, .5vw, 4px);--space-sm:clamp(6px, 1vw, 8px);--space-md:clamp(12px, 2vw, 16px);--space-lg:clamp(16px, 3vw, 24px);--space-xl:clamp(20px, 4vw, 32px);--space-2xl:clamp(32px, 6vw, 48px);--font-xxs:clamp(.5625rem, .5rem + .15vw, .625rem);--font-xs:clamp(.6875rem, .65rem + .2vw, .75rem);--font-sm:clamp(.8125rem, .75rem + .3vw, .875rem);--font-base:clamp(.875rem, .8rem + .4vw, 1rem);--font-lg:clamp(1rem, .9rem + .5vw, 1.125rem);--font-xl:clamp(1.125rem, 1rem + .6vw, 1.25rem);--font-2xl:clamp(1.25rem, 1.1rem + .8vw, 1.5rem);--font-3xl:clamp(1.5rem, 1.3rem + 1vw, 1.875rem);--font-4xl:clamp(1.75rem, 1.5rem + 1.2vw, 2.25rem);--font-stat:clamp(1.125rem, 1rem + 2vw, 1.75rem);--font-mono:"SF Mono", "Cascadia Code", "Fira Code", monospace;--shadow-xs:0 1px 2px #00000008;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #00000026;--shadow-card:0 1px 3px #0f172a0d, 0 8px 24px #0f172a14;--shadow-card-hover:0 4px 12px #0f172a14, 0 24px 48px #0f172a1f, 0 0 0 1px #1e3a5f1f;--radius-sm:clamp(3px, .5vw, 4px);--radius-md:clamp(4px, .75vw, 6px);--radius-lg:clamp(6px, 1vw, 8px);--radius-xl:clamp(8px, 1.5vw, 12px);--container-max:min(1200px, 95vw);--container-padding:clamp(8px, 2vw, 16px);--hero-clip-depth:60px;--font-hero:clamp(2.5rem, 2rem + 4vw, 4.5rem);--font-hero-subtitle:clamp(1.125rem, 1rem + .5vw, 1.375rem);--section-padding:clamp(80px, 10vw, 140px);--section-inner-max:min(1100px, 90vw);--glass-bg:#fffc;--glass-border:#fff3;--glass-blur:12px;--glow-primary:#1e3a5f26;--glow-accent:#3b82f61f;--dark-bg-deepest:#080f1e;--dark-bg-deep:#0c1929;--dark-bg-base:#152a45;--dark-bg-mid:#1a2f4a;--dark-bg-subtle:#0a1628;--dark-bg-text:#fff9;--dark-bg-text-muted:#fff6;--dark-bg-border:#ffffff14;--dark-bg-border-light:#ffffff26;--dark-bg-text-bright:#fffffff2;--dark-bg-text-dim:#ffffff8c;--dark-bg-glass:#ffffff0f;--dark-bg-glass-highlight:#ffffff1a;--dark-bg-glass-strong:#ffffff1f;--dark-bg-text-body:#ffffffb3;--dark-bg-text-heading:#fffc;--dark-bg-text-emphasis:#ffffffe6;--dark-bg-border-medium:#fff3;--dark-bg-border-strong:#ffffff40;--app-bg-gradient:linear-gradient(180deg, var(--bg-light) 0%, #3b82f608 50%, var(--bg-light) 100%);--title-gradient:linear-gradient(135deg, var(--text-primary) 0%, var(--primary) 100%);--card-hover-glow:0 4px 20px #1e3a5f1f;--btn-primary-glow:0 0 12px #1e3a5f26;--btn-primary-hover-glow:0 0 20px #1e3a5f33, 0 4px 12px #1e3a5f26;--btn-primary-bg:linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);--btn-primary-hover-bg:linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);--btn-danger-bg:var(--danger);--btn-danger-hover-bg:var(--danger-dark);--stat-border-gradient-cgt:linear-gradient(90deg, var(--primary), var(--accent));--stat-border-gradient-exit:linear-gradient(90deg, var(--danger), #f97316);--stat-border-gradient-dirt:linear-gradient(90deg, var(--warning), #f59e0b);--stat-border-gradient-total:linear-gradient(90deg, var(--primary), var(--purple));--stat-border-gradient-crypto:linear-gradient(90deg, #f97316, #ea580c);--stat-card-bg-cgt:radial-gradient(ellipse at top right, #3b82f60a, transparent 70%);--stat-card-bg-exit:radial-gradient(ellipse at top right, #dc26260a, transparent 70%);--stat-card-bg-dirt:radial-gradient(ellipse at top right, #f59e0b0a, transparent 70%);--stat-card-bg-total:radial-gradient(ellipse at top right, #a855f70a, transparent 70%);--stat-card-bg-crypto:radial-gradient(ellipse at top right, #f973160a, transparent 70%);--stat-card-glow-total:0 0 24px #1e3a5f14, 0 0 48px #a855f70a;--landing-cta-bg:linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--landing-hero-shimmer:linear-gradient(90deg, #94a3b8 0%, #fff 25%, #fff 50%, #94a3b8 75%, #94a3b8 100%)}*{box-sizing:border-box}#root{flex-direction:column;min-height:100vh;display:flex}html{background-color:var(--bg-light)}body{background:var(--app-bg-gradient);color:var(--text-primary);background-attachment:fixed;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}h1{margin-bottom:var(--space-xl);align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}@media print{.nav,.print-hide,button,select,input{display:none!important}body{color:#000!important;background:#fff!important;font-size:12pt!important}.container{max-width:100%!important;padding:0!important}.card{box-shadow:none!important;page-break-inside:avoid!important;border:1px solid #ccc!important;margin-bottom:12pt!important}.stat-grid{grid-template-columns:repeat(4,1fr)!important;gap:8pt!important;display:grid!important}.stat-card{border:1px solid #ccc!important;padding:8pt!important}.stat-value{font-size:14pt!important}.stat-value.negative{color:#c00!important}.tax-section{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#f5f5f5!important}.table th{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#eee!important}.tax-rate-badge{color:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#333!important}.alert{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#f9f9f9!important;border:1px solid #999!important}h1{page-break-before:avoid!important}.tax-section-title{page-break-after:avoid!important}h1:after{content:" - Tax Summary";color:#666;font-size:14pt;font-weight:400}}[data-theme=dark]{--primary:#818cf8;--primary-dark:#6366f1;--primary-light:#a5b4fc;--accent:#818cf8;--accent-dark:#6366f1;--info:#818cf8;--accent-alpha-10:#818cf81a;--accent-alpha-20:#818cf833;--accent-alpha-30:#818cf84d;--accent-rgb:129, 140, 248;--primary-rgb:129, 140, 248;--success:#34d399;--warning:#fbbf24;--danger:#f87171;--purple-light:#c084fc;--teal-light:#2dd4bf;--bg-light:#0a0b10;--bg-white:#1c1d26;--bg-primary:#1c1d26;--bg-secondary:#282a36;--bg-tertiary:#32343f;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#64748b;--text-tertiary:#94a3b8;--border:#ffffff14;--border-color:var(--border);--chip-bg:var(--bg-secondary);--chip-border:#ffffff26;--chip-active-bg:#818cf840;--chip-active-border:#818cf8;--chip-active-glow:0 0 10px #818cf866;--status-success-text:#34d399;--status-success-bg:#34d39926;--status-warning-text:#fbbf24;--status-warning-text-soft:#fef3c7;--status-warning-bg:#fbbf2438;--status-warning-border:#fbbf2480;--status-error-text:#f87171;--status-error-bg:#f8717126;--status-error-border:#f871714d;--primary-alpha-5:#818cf80d;--primary-alpha-8:#818cf814;--primary-alpha-10:#818cf81a;--primary-alpha-15:#818cf833;--primary-alpha-20:#818cf833;--primary-alpha-25:#818cf840;--primary-alpha-30:#818cf84d;--table-stripe:#ffffff05;--table-hover:#ffffff0a;--alert-success-bg:#34d39926;--alert-success-border:#34d3994d;--alert-error-bg:#f8717126;--alert-error-border:#f871714d;--alert-warning-bg:#fbbf2438;--alert-warning-border:#fbbf2480;--success-alpha-10:var(--success-alpha-15);--danger-alpha-10:var(--danger-alpha-15);--info-alpha-10:var(--accent-alpha-15);--purple-alpha-10:var(--purple-alpha-15);--warning-alpha-10:var(--warning-alpha-15);--success-alpha-15:#34d39933;--danger-alpha-15:#f8717133;--warning-alpha-12:#fbbf242b;--warning-alpha-15:#fbbf2433;--accent-alpha-15:#818cf833;--purple-alpha-15:#c084fc33;--teal-alpha-15:#2dd4bf33;--overlay-light:#0a0b10b3;--badge-crypto-bg:#3e2723;--badge-crypto-text:#ffab40;--subscription-bg:linear-gradient(135deg, var(--warning-alpha-15) 0%, #fbbf241a 100%);--subscription-border:#fbbf2466;--subscription-icon:#fbbf24;--subscription-text:#fde68a;--focus-ring-error:0 0 0 3px #f8717133;--focus-ring-success:0 0 0 3px #34d39933;--glass-bg:#1c1d26d9;--glass-bg-nav:#0a0b10f2;--glass-bg-card:#1c1d2680;--glass-border:#ffffff14;--glow-primary:#818cf81a;--glow-accent:#818cf814;--stat-card-bg-cgt:radial-gradient(ellipse at top right, #818cf80f, transparent 70%);--stat-card-bg-exit:radial-gradient(ellipse at top right, #f871710f, transparent 70%);--stat-card-bg-dirt:radial-gradient(ellipse at top right, #fbbf240f, transparent 70%);--stat-card-bg-total:radial-gradient(ellipse at top right, #c084fc0f, transparent 70%);--stat-card-bg-crypto:radial-gradient(ellipse at top right, #f973160f, transparent 70%);--stat-card-glow-total:0 0 24px #818cf80f, 0 0 48px #c084fc0a;--stat-border-gradient-cgt:linear-gradient(90deg, #818cf8, #a78bfa);--stat-border-gradient-total:linear-gradient(90deg, #818cf8, #34d399);--dark-bg-deepest:#050608;--dark-bg-deep:#08090e;--dark-bg-base:#0c0d13;--dark-bg-mid:#14151c;--dark-bg-subtle:#070810;--title-gradient:linear-gradient(135deg, var(--text-primary) 0%, var(--primary) 100%);--card-hover-glow:0 4px 20px var(--accent-alpha-15);--btn-primary-glow:0 0 12px #818cf81f;--btn-primary-hover-glow:0 0 20px #818cf833, 0 4px 12px var(--accent-alpha-15);--btn-primary-bg:linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);--btn-primary-hover-bg:linear-gradient(135deg, #818cf8 0%, #6366f1 100%);--btn-danger-bg:#ef4444;--btn-danger-hover-bg:#dc2626;--app-bg-gradient:var(--bg-light);--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 8px #0000004d;--shadow-lg:0 10px 20px #0000004d;--shadow-xl:0 20px 30px #0006;--shadow-card:0 2px 6px #0006, 0 12px 32px #00000080;--shadow-card-hover:0 4px 12px #00000080, 0 24px 48px #0009, 0 0 0 1px #818cf833}[data-theme=dark] body{background:var(--app-bg-gradient);background-attachment:fixed}.page-enter{animation:.2s ease-out page-fade-in}@keyframes page-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}[data-app-reveal]{opacity:0;transition:opacity var(--transition-slow), transform var(--transition-slow);transform:translateY(12px)}[data-app-reveal].app-revealed{opacity:1;transform:translateY(0)}[data-app-reveal-delay="1"]{transition-delay:50ms}[data-app-reveal-delay="2"]{transition-delay:.1s}[data-app-reveal-delay="3"]{transition-delay:.15s}@media (prefers-reduced-motion:reduce){[data-app-reveal]{opacity:1;transition:none;transform:none}}@media (hover:none){.card:hover,.stat-card:hover{transform:none}}.skip-to-content{top:-40px;left:var(--space-sm);z-index:var(--z-skip-link);padding:var(--space-xs) var(--space-md);background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--accent);border-radius:var(--radius-md);transition:top var(--transition-fast);font-weight:600;text-decoration:none;position:absolute}.skip-to-content:focus,.skip-to-content:focus-visible{top:var(--space-sm);box-shadow:var(--focus-ring);outline:none}.text-xs{font-size:var(--font-xs);line-height:1.4}.text-sm{font-size:var(--font-sm);line-height:1.4}.text-base{font-size:var(--font-base);line-height:1.5}.text-lg{font-size:var(--font-lg);line-height:1.5}.text-xl{font-size:var(--font-xl);line-height:1.4}.text-2xl{font-size:var(--font-2xl);line-height:1.3}.text-3xl{font-size:var(--font-3xl);line-height:1.2}.text-4xl{font-size:var(--font-4xl);line-height:1.2}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-capitalize{text-transform:capitalize}.text-uppercase{text-transform:uppercase}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-success{color:var(--success)}.text-warning{color:var(--status-warning-text)}.text-danger{color:var(--danger)}.text-muted{font-size:var(--font-xs);color:var(--text-secondary)}.loading-page{justify-content:center;align-items:center;gap:var(--space-md);min-height:50vh;color:var(--text-secondary);font-size:var(--font-lg);flex-direction:column;display:flex}.loading-spinner{border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}@media (width<=640px){.form-input,.form-select,select,input,button,.btn,.mobile-nav-link,.nav-link,.card p,.card span,.card div,.table td,.table th{font-size:max(14px, var(--font-sm))!important}.badge,.pill,.text-xs{font-size:var(--font-sm)!important}.form-input,.form-select,select,input[type=text],input[type=number],input[type=email],input[type=password]{min-width:0!important;max-width:100%!important}.form-row-mobile-stack{flex-direction:column!important;align-items:stretch!important}.form-row-mobile-stack>*{width:100%!important;max-width:none!important}.mobile-padding-reduce{padding:12px!important}}.page-header{font-size:var(--font-3xl);letter-spacing:-.01em;background:var(--title-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.page-header .page-header-suffix{-webkit-text-fill-color:currentColor;background:0 0}.container{max-width:var(--container-max);width:100%;padding:var(--container-padding);flex:1;margin:0 auto}.stat-grid{gap:var(--space-sm);grid-template-columns:repeat(4,1fr);display:grid}@media screen and (width<=900px){.stat-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (width<=420px){.stat-grid{gap:var(--space-sm);grid-template-columns:1fr}}.stat-grid--5col{grid-template-columns:repeat(5,1fr)}@media screen and (width<=1100px){.stat-grid--5col{grid-template-columns:repeat(2,1fr)}.stat-grid--5col>:last-child:nth-child(odd){grid-column:1/-1}}@media screen and (width<=420px){.stat-grid--5col{grid-template-columns:1fr}}.stat-card{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border);transition:border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal);flex-direction:column;min-width:0;padding:clamp(16px,2.5vw,20px);display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;opacity:.5;height:3px;transition:opacity var(--transition-normal);position:absolute;top:0;left:0;right:0}.stat-card:hover:before{opacity:1}.stat-card--cgt:before{background:var(--stat-border-gradient-cgt)}.stat-card--exit:before{background:var(--stat-border-gradient-exit)}.stat-card--dirt:before{background:var(--stat-border-gradient-dirt)}.stat-card--total:before{background:var(--stat-border-gradient-total)}.stat-card--cgt{background:var(--bg-white);background-image:var(--stat-card-bg-cgt)}.stat-card--exit{background:var(--bg-white);background-image:var(--stat-card-bg-exit)}.stat-card--dirt{background:var(--bg-white);background-image:var(--stat-card-bg-dirt)}.stat-card--total{background:var(--bg-secondary);background-image:var(--stat-card-bg-total);box-shadow:var(--stat-card-glow-total)}.stat-card--crypto-income:before{background:var(--stat-border-gradient-crypto)}.stat-card--crypto-income{background:var(--bg-white);background-image:var(--stat-card-bg-crypto)}.chart-card{position:relative;overflow:hidden}.chart-card:before{content:"";background:linear-gradient(90deg, var(--primary-alpha-15), var(--accent-alpha-20), var(--primary-alpha-15));border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:2px;position:absolute;top:0;left:0;right:0}.stat-label{font-size:var(--font-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-xs);text-overflow:ellipsis;text-align:center;justify-content:center;align-items:center;gap:var(--space-sm);font-weight:500;display:flex;overflow:hidden}.stat-value{font-size:var(--font-stat);letter-spacing:-.02em;text-align:center;font-weight:700;line-height:1.2}.stat-footer{padding-top:var(--space-xs);font-size:var(--font-sm);color:var(--text-secondary);text-align:center;margin-top:auto}.stat-subtitle{font-size:var(--font-xs);color:var(--text-muted);text-align:center;margin-top:2px}@media screen and (width<=480px){.stat-value{font-size:clamp(18px,5vw,24px)}.stat-label{font-size:var(--font-xs)}.grid-2-cols{grid-template-columns:1fr}}.stat-value.positive{color:var(--success)}.stat-value.negative{color:var(--danger)}.stat-trend{margin-left:var(--space-xs);vertical-align:middle;white-space:nowrap;font-weight:500}.nav{background:var(--bg-white);border-bottom:1px solid var(--border);z-index:var(--z-nav);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.nav-inner{max-width:var(--container-max);padding:0 var(--container-padding);align-items:center;gap:clamp(12px,3vw,32px);margin:0 auto;display:flex}.nav-inner .theme-toggle{margin-left:auto}.nav-brand{color:var(--primary);letter-spacing:-.01em;white-space:nowrap;padding:clamp(12px,2vw,16px) 0;font-size:clamp(14px,2vw,18px);font-weight:600}.nav-links{gap:var(--space-xs);display:flex}.nav-link{color:var(--text-secondary);border-radius:var(--radius-md);transition:background var(--transition-fast), color var(--transition-fast);font-size:var(--font-sm);white-space:nowrap;align-items:center;gap:clamp(4px,.75vw,6px);padding:clamp(8px,1.5vw,12px) clamp(8px,1.5vw,14px);font-weight:500;text-decoration:none;display:flex;position:relative}.nav-link:after{content:"";background:var(--primary);width:0;height:2px;transition:width var(--transition-normal), left var(--transition-normal);border-radius:1px;position:absolute;bottom:2px;left:50%}.nav-link:hover:after,.nav-link.active:after{width:60%;left:20%}.nav-link:hover{color:var(--text-primary);background:var(--bg-secondary)}.nav-link.active{color:var(--primary);background:var(--primary-alpha-8)}.nav-more-container{align-items:center;display:none;position:relative}.nav-more-btn{cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-md);font-size:var(--font-sm);white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;align-items:center;gap:clamp(4px,.75vw,6px);padding:clamp(8px,1.5vw,12px) clamp(8px,1.5vw,14px);font-weight:500;display:flex}.nav-more-btn:hover{color:var(--text-primary);background:var(--bg-secondary)}.nav-more-btn.active{color:var(--primary);background:var(--primary-alpha-8)}.nav-more-icon{transition:transform var(--transition-normal)}.nav-more-icon.rotated{transform:rotate(180deg)}.nav-more-dropdown{border-radius:var(--radius-lg);min-width:200px;max-width:calc(100vw - 32px);z-index:var(--z-dropdown);top:calc(100% + 4px);left:0}.nav-more-item{align-items:center;gap:var(--space-sm);min-height:44px;color:var(--text-secondary);font-size:var(--font-sm);font-weight:500;text-decoration:none;display:flex}.nav-more-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.nav-more-item.active{color:var(--primary);background:var(--primary-alpha-8)}[data-theme=dark] .nav-more-dropdown{background:var(--bg-primary)}.user-dropdown-container{position:relative}.user-avatar-btn{align-items:center;gap:var(--space-xs);padding:var(--space-sm);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);display:flex}.user-avatar-btn:hover,.user-avatar-btn.active{border-color:var(--primary);background:var(--bg-white)}.user-dropdown-icon{transition:transform var(--transition-normal);color:var(--text-secondary)}.user-dropdown-icon.rotated{transform:rotate(180deg)}.user-dropdown{border-radius:var(--radius-lg);min-width:220px;max-width:calc(100vw - 32px);z-index:var(--z-dropdown);top:calc(100% + 4px);right:0}.user-dropdown-header{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);color:var(--text-secondary);display:flex}.user-dropdown-email{font-size:var(--font-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.user-dropdown-divider{background:var(--border);height:1px;margin:var(--space-xs) 0}.user-dropdown-item{align-items:center;gap:var(--space-sm);width:100%;min-height:44px;color:var(--text-secondary);font-size:var(--font-sm);text-align:left;background:0 0;border:none;font-weight:500;text-decoration:none;display:flex}.user-dropdown-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.user-dropdown-logout:hover{color:var(--danger)}[data-theme=dark] .user-dropdown{background:var(--bg-primary)}[data-theme=dark] .user-avatar-btn{background:var(--bg-secondary)}[data-theme=dark] .user-avatar-btn:hover,[data-theme=dark] .user-avatar-btn.active{background:var(--bg-primary)}.nav-actions{align-items:center;gap:var(--space-sm);margin-left:auto;display:flex}.user-email{align-items:center;gap:var(--space-xs);font-size:var(--font-sm);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:clamp(80px,15vw,120px);display:flex;overflow:hidden}.mobile-menu-footer{padding-top:var(--space-lg);border-top:1px solid var(--border);gap:var(--space-md);flex-direction:column;margin-top:auto;display:flex}.mobile-user-info{gap:var(--space-md);flex-direction:column;display:flex}.mobile-user-info .user-email{font-size:var(--font-sm);color:var(--text-secondary);align-items:center;gap:var(--space-sm);display:flex}[data-theme=dark] .nav{background:var(--glass-bg-nav);-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom-color:var(--dark-bg-glass)}[data-theme=dark] .nav-link.active{background:var(--primary-alpha-15)}[data-theme=dark] .stat-card:before{opacity:.75}[data-theme=dark] .stat-card:hover:before{opacity:1}[data-theme=dark] .stat-card:hover,[data-theme=dark] .card:hover{border-color:var(--primary-alpha-25);box-shadow:var(--card-hover-glow)}.grid-2-cols{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.table-responsive{overflow-x:auto}.table-responsive .table{min-width:500px}.table-responsive .tax-section .table,.tax-section .table-responsive .table{min-width:0}@media screen and (width<=650px){.table-responsive .table,.table:not(.table-mobile-cards){min-width:0!important}}.hamburger-btn{padding:var(--space-sm);cursor:pointer;color:var(--text-primary);background:0 0;border:none;min-width:44px;min-height:44px;display:none}.desktop-only{display:flex}.mobile-menu-backdrop,.mobile-menu{display:none}@media screen and (width<=1100px){.nav-link-secondary{display:none}.nav-more-container{display:flex}}@media screen and (width<=500px){.tab-label{display:none}}@media screen and (width<=768px){.hamburger-btn{justify-content:center;align-items:center;margin-left:auto;display:flex}.desktop-only{display:none!important}.mobile-menu-backdrop{background:var(--overlay);z-index:var(--z-mobile-backdrop);display:block;position:fixed;inset:0}.mobile-menu{overscroll-behavior:contain;background:var(--bg-white);width:min(280px,75vw);height:100dvh;z-index:var(--z-mobile-menu);padding:60px var(--space-md) var(--space-md);padding-top:calc(60px + env(safe-area-inset-top,0px));padding-bottom:calc(var(--space-md) + env(safe-area-inset-bottom,0px));transition:right var(--transition-medium);box-shadow:var(--shadow-xl);flex-direction:column;display:flex;position:fixed;top:0;right:-280px;overflow-y:auto}.mobile-menu.open{right:0}.mobile-menu-links{gap:var(--space-xs);flex-direction:column;flex:1;display:flex}.mobile-nav-link{align-items:center;gap:var(--space-sm);padding:var(--space-md);min-height:44px;color:var(--text-primary);border-radius:var(--radius-md);font-size:var(--font-base);transition:background var(--transition-normal);text-decoration:none;display:flex}.mobile-nav-link:hover{background:var(--bg-secondary)}.mobile-nav-link.active{background:var(--primary);color:var(--text-on-color)}.mobile-theme-toggle{justify-content:center;width:100%;margin-top:auto}.table-wrapper{margin:0 calc(var(--container-padding) * -1);padding:0 var(--container-padding);overflow-x:auto}.table:not(.table-mobile-cards){min-width:500px}.tax-section .table{width:100%;min-width:0!important}}.nav-more-dropdown,.user-dropdown,.api-dropdown-menu,.asset-autocomplete-dropdown,.broker-combobox-dropdown,.custom-select-dropdown{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-lg);padding:var(--space-xs);position:absolute}.nav-more-item,.user-dropdown-item,.api-dropdown-item,.asset-autocomplete-option,.broker-combobox-option,.custom-select-option{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast)}.card{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:var(--space-lg);margin-bottom:var(--space-md);transition:box-shadow var(--transition-normal), border-color var(--transition-normal), transform var(--transition-normal)}.card:hover,.stat-card:hover{box-shadow:var(--card-hover-glow);border-color:var(--primary-alpha-25);transform:translateY(-1px)}.card-title{align-items:center;gap:var(--space-sm);font-size:var(--font-2xl);margin-bottom:var(--space-md);color:var(--text-primary);letter-spacing:-.01em;font-weight:700;display:flex}.card-actions{gap:var(--space-sm);margin-left:auto;display:flex}@media screen and (width<=900px){.card-actions{justify-content:flex-end;width:100%}}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);border:none;min-height:44px;padding:clamp(8px,1.2vw,10px) clamp(14px,2.5vw,20px);font-weight:500;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn-primary{background:var(--btn-primary-bg);color:var(--text-on-color);box-shadow:var(--btn-primary-glow)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover-bg);box-shadow:var(--btn-primary-hover-glow)}.btn-secondary{background:var(--bg-white);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--primary)}.btn-danger{background:var(--btn-danger-bg);color:var(--text-on-color)}.btn-danger:hover:not(:disabled){background:var(--btn-danger-hover-bg)}.btn-table-action{padding:var(--space-xs) var(--space-sm);font-size:var(--font-xs)}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);font-size:var(--font-sm);padding:clamp(8px,1.5vw,14px) clamp(6px,1.2vw,12px)}.table th{background:var(--primary-alpha-5);color:var(--text-secondary);font-weight:600;font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em}.table th.th-with-icon>span{align-items:center;gap:var(--space-xs);display:inline-flex}.th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.th-sortable:hover{color:var(--text-primary)}.th-sortable-inner{align-items:center;gap:var(--space-xs);display:inline-flex}.th-sortable-icon{color:var(--text-muted);transition:color var(--transition-fast), transform var(--transition-fast);flex-shrink:0}.th-sortable.sorted .th-sortable-icon{color:var(--primary)}.tr-expandable{cursor:pointer}.tr-expandable:hover td{background:var(--primary-alpha-5)}.tr-expand-icon{transition:transform var(--transition-fast);color:var(--text-muted)}.tr-expand-icon.expanded{transform:rotate(90deg)}.tr-expanded-content td{padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border)}.table th.th-actions{text-align:right;width:100px}.table th.th-right,.table td.td-right{text-align:right}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:nth-child(2n){background:var(--bg-secondary)}.table tbody tr:hover{background:var(--primary-alpha-5)}[data-theme=dark] .table tbody tr:nth-child(2n){background:var(--table-stripe)}[data-theme=dark] .table tbody tr:hover{background:var(--table-hover)}.table tbody tr[tabindex]{cursor:pointer}.table tbody tr[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;box-shadow:inset 0 0 0 2px var(--primary-alpha-10)}[data-theme=dark] .table tbody tr[tabindex]:focus-visible{outline-color:var(--primary-light);box-shadow:inset 0 0 0 2px var(--accent-alpha-20)}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:border-color var(--transition-normal), background var(--transition-normal), transform var(--transition-normal), box-shadow var(--transition-normal);background:var(--bg-secondary);padding:clamp(24px,5vw,48px) clamp(16px,4vw,40px);position:relative}.upload-zone:hover{border-color:var(--primary);background:var(--primary-alpha-5)}.upload-zone:hover .upload-zone-icon{color:var(--primary);transform:translateY(-2px)}.upload-zone-icon{color:var(--text-secondary);transition:color var(--transition-fast), transform var(--transition-fast)}.upload-zone:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.upload-zone.active{border-color:var(--primary);background:var(--primary-alpha-10);box-shadow:0 0 0 4px var(--primary-alpha-15);border-style:solid;animation:1.5s ease-in-out infinite upload-zone-pulse;transform:scale(1.01)}@keyframes upload-zone-pulse{0%,to{box-shadow:0 0 0 4px var(--primary-alpha-15)}50%{box-shadow:0 0 0 8px var(--primary-alpha-8)}}.upload-zone.disabled{opacity:.6;pointer-events:none}.upload-zone.disabled:hover{border-color:var(--border);background:var(--bg-secondary)}.upload-zone.upload-zone--compact{padding:var(--space-lg) var(--space-xl)}.upload-zone .upload-zone-default{transition:opacity var(--transition-fast)}.upload-zone .upload-zone-active{display:none}.upload-zone.active .upload-zone-default{opacity:0;pointer-events:none;position:absolute}.upload-zone.active .upload-zone-active{align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.upload-zone.active .upload-zone-active-icon{color:var(--primary);animation:.6s ease-in-out infinite alternate upload-bounce}@keyframes upload-bounce{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.alert{border-radius:var(--radius-md);margin-bottom:var(--space-md);font-size:var(--font-sm);padding:clamp(10px,1.5vw,14px) clamp(12px,2vw,16px);display:block}.alert-success{background:var(--alert-success-bg);color:var(--status-success-text);border:1px solid var(--alert-success-border)}.alert-error{background:var(--alert-error-bg);color:var(--danger-dark);border:1px solid var(--alert-error-border)}.alert-info{background:var(--primary-alpha-8);color:var(--primary);border:1px solid var(--primary-alpha-20)}input[type=file]{display:none}.form-group{margin-bottom:var(--space-md)}.form-label{margin-bottom:var(--space-xs);font-weight:500;font-size:var(--font-sm);color:var(--text-primary);display:block}.form-input{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:max(16px, var(--font-sm));background:var(--bg-white);color:var(--text-primary);transition:border-color var(--transition-normal), box-shadow var(--transition-normal);padding:clamp(10px,1.5vw,12px) clamp(10px,1.5vw,14px)}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha-10), 0 0 12px var(--primary-alpha-8);outline:none}.form-input:focus-visible,.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.filter-toggle{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-lg);border:2px solid var(--border);background:var(--bg-white);cursor:pointer;min-height:44px;transition:border-color var(--transition-normal), background var(--transition-normal), transform var(--transition-normal);font-size:var(--font-sm);display:flex}.filter-toggle:hover{border-color:var(--primary);background:var(--primary-alpha-5)}.filter-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.filter-toggle:active{transform:scale(.97)}.filter-toggle.active{border-color:var(--primary);background:var(--primary-alpha-10);font-weight:600}[data-theme=dark] .filter-toggle:hover{background:var(--primary-alpha-10)}[data-theme=dark] .filter-toggle.active{background:var(--primary-alpha-15)}.form-input:disabled{background:var(--bg-light);cursor:not-allowed;opacity:.7}.form-input::placeholder{color:var(--text-secondary);opacity:.8}[data-theme=dark] .form-input::placeholder{opacity:.9}select.form-input{cursor:pointer;appearance:none;padding-right:calc(var(--space-sm) + 16px + var(--space-sm));background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px}input[type=number].form-input{appearance:textfield}input[type=number].form-input::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number].form-input::-webkit-inner-spin-button{appearance:none;margin:0}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;filter:grayscale(30%)}.btn-primary:disabled{background:var(--text-secondary);border-color:var(--text-secondary)}.btn-secondary:disabled{background:var(--bg-secondary);color:var(--text-muted)}[data-theme=dark] .card{box-shadow:var(--shadow-sm);border-color:var(--border)}[data-theme=dark] .btn-secondary{background:var(--bg-secondary);border-color:var(--dark-bg-glass-highlight)}[data-theme=dark] .btn-secondary:hover:not(:disabled){border-color:var(--primary-alpha-30);background:#ffffff0f}[data-theme=dark] .form-input{background-color:var(--primary-alpha-20);border-color:var(--dark-bg-glass-highlight)}[data-theme=dark] .form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha-15), 0 0 12px var(--primary-alpha-10)}[data-theme=dark] .upload-zone:hover{background:var(--primary-alpha-10)}[data-theme=dark] .upload-zone.active{background:var(--primary-alpha-15)}[data-theme=dark] .alert-success{color:var(--success)}[data-theme=dark] .alert-error{color:var(--danger)}[data-theme=dark] .alert-info{color:var(--primary)}[data-theme=dark] select.form-input{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%239aa0a6' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e")}[data-theme=dark] select.form-input option{background-color:var(--bg-secondary);color:var(--text-primary)}.theme-toggle{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);min-height:44px;color:var(--text-secondary);cursor:pointer;align-items:center;gap:var(--space-sm);font-size:var(--font-sm);transition:background var(--transition-normal), color var(--transition-normal);background:0 0;display:flex}.theme-toggle:hover{background:var(--bg-secondary);color:var(--text-primary)}.theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tabs{gap:var(--space-xs);border-bottom:1px solid var(--border);margin-bottom:var(--space-lg);flex-wrap:wrap;padding-bottom:0;display:flex}.tab{align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--font-sm);color:var(--text-secondary);min-height:44px;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:clamp(10px,1.5vw,12px) clamp(12px,2.5vw,20px);font-weight:500;display:inline-flex}.tab:hover{color:var(--text-primary);background:var(--primary-alpha-5)}.tab:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.tab:active{background:var(--primary-alpha-10)}.tab.active{color:var(--primary);border-bottom-color:var(--primary);background:0 0;font-weight:600}.tab-badge{font-size:var(--font-xs);color:var(--text-muted);text-align:center;min-width:20px;font-weight:600}.tab.active .tab-badge{color:var(--primary)}.tab-upload-count{border-radius:var(--radius-pill);background:var(--primary);min-width:18px;height:18px;color:var(--text-on-color);font-size:var(--font-xs);justify-content:center;align-items:center;padding:0 5px;font-weight:700;line-height:1;animation:2s ease-in-out infinite tab-upload-pulse;display:inline-flex}@keyframes tab-upload-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes tab-panel-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tab-panel,.section-reveal{animation:.2s ease-out tab-panel-enter}@media (prefers-reduced-motion:reduce){.tab-panel,.section-reveal{animation:none}}.table-container{container:table-container/inline-size}@supports not (container-type:inline-size){@media screen and (width<=1024px){.table-container .table-mobile-cards thead{display:none}.table-container .table-mobile-cards,.table-container .table-mobile-cards tbody{width:100%;display:block}.table-container .table-mobile-cards tbody tr{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow-xs);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}}}@container table-container (width<=950px){.table-mobile-cards thead,.table-mobile-cards tfoot{display:none}.table-mobile-cards,.table-mobile-cards tbody{width:100%;display:block}.table-mobile-cards tbody tr{align-items:start;gap:var(--space-sm) var(--space-md);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-sm);padding:var(--space-md);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);grid-template-rows:auto auto;grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(70px,1fr)) auto;display:grid}.table-mobile-cards tbody tr:hover{border-color:var(--primary-alpha-30,var(--border));box-shadow:var(--shadow-md)}[data-theme=dark] .table-mobile-cards tbody tr{background:var(--bg-primary)}.table-mobile-cards tbody tr:nth-child(2n){background:var(--bg-white)}[data-theme=dark] .table-mobile-cards tbody tr:nth-child(2n){background:var(--bg-primary)}.table-mobile-cards tbody tr[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.table-mobile-cards td{border:none;padding:0;display:block}.table-mobile-cards td:before,.table-mobile-cards .desktop-value{display:none}.table-mobile-cards td.td-primary{align-items:flex-start;gap:var(--space-sm);grid-area:1/1/3;align-self:center;min-width:0;display:flex}.table-mobile-cards td.td-primary>div{flex:1;min-width:0}.table-mobile-cards td.td-primary .font-medium{font-size:var(--font-sm);color:var(--text-primary);font-weight:600;line-height:1.3}.table-mobile-cards td.td-primary .text-muted{font-size:var(--font-xs);color:var(--text-muted);margin-top:2px}.table-mobile-cards .td-metrics-row{gap:var(--space-lg);grid-area:1/2/auto/5;display:flex}.table-mobile-cards .mobile-header,.table-mobile-cards .mobile-header-actions,.table-mobile-cards .mobile-metric-placeholder{display:none}.table-mobile-cards .mobile-metric{flex-direction:column;flex:1;min-width:0;display:flex}.table-mobile-cards .mobile-value-primary,.table-mobile-cards .mobile-label,.table-mobile-cards .mobile-gain-positive,.table-mobile-cards .mobile-gain-negative,.table-mobile-cards .mobile-type-buy,.table-mobile-cards .mobile-type-sell{display:block}.table-mobile-cards .mobile-value-primary{font-size:var(--font-sm);color:var(--text-primary);font-weight:600}.table-mobile-cards .mobile-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;margin-top:2px}.table-mobile-cards td.td-actions{align-items:flex-end;gap:var(--space-xs);flex-direction:column;grid-area:1/5/3;justify-content:center;align-self:center;display:flex}.mobile-status-badge{margin-bottom:var(--space-xs);display:inline-flex}.table-mobile-cards td[data-label=Status],.table-mobile-cards td[data-label=Tax]{display:none}.table-mobile-cards .td-details-row{gap:var(--space-lg);grid-area:2/2/auto/5;display:flex}.table-mobile-cards .mobile-detail{flex-direction:column;flex:1;min-width:0;display:flex}.table-mobile-cards .mobile-detail-value{font-size:var(--font-xs);color:var(--text-secondary);font-weight:500}.table-mobile-cards .mobile-detail-label{font-size:var(--font-xs);color:var(--text-muted);margin-top:1px}.table-mobile-cards td[data-label=Type],.table-mobile-cards td[data-label=Quantity],.table-mobile-cards td[data-label=Avg\ Cost],.table-mobile-cards td[data-label=Price],.table-mobile-cards td[data-label=Date],.table-mobile-cards td[data-label=Gross],.table-mobile-cards td[data-label=Withheld],.table-mobile-cards td[data-label=Acquisition],.table-mobile-cards td[data-label=DD\ Date],.table-mobile-cards td[data-label=Person],.table-mobile-cards td[data-label=Cost\ Basis],.table-mobile-cards td[data-label=Unit\ Price],.table-mobile-cards td[data-label=Exit\ Tax],.table-mobile-cards td[data-label=Amount],.table-mobile-cards td[data-label=Gain\/Loss]{display:none}.table-mobile-cards .mobile-gain-positive{color:var(--success);font-size:var(--font-sm);font-weight:600}.table-mobile-cards .mobile-gain-negative{color:var(--danger);font-size:var(--font-sm);font-weight:600}.table-mobile-cards .mobile-type-buy{color:var(--success);font-weight:600;font-size:var(--font-xs)}.table-mobile-cards .mobile-type-sell{color:var(--danger);font-weight:600;font-size:var(--font-xs)}.table-responsive .table-mobile-cards{min-width:unset}.mobile-expand-icon{color:var(--text-muted);display:block}.table-mobile-cards tbody tr:has(.td-expanded-content){cursor:pointer}.table-mobile-cards .td-expanded-content{padding-top:var(--space-sm);margin-top:var(--space-sm);border-top:1px solid var(--border);grid-area:3/1/auto/-1;display:none}.table-mobile-cards .td-expanded-content.expanded{display:block}.expanded-grid{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.expanded-item{flex-direction:column;gap:2px;display:flex}.expanded-label{font-size:var(--font-xs);color:var(--text-muted)}.expanded-value{font-size:var(--font-sm);font-weight:600}.table-mobile-cards tbody tr.mobile-expanded{background:var(--bg-secondary)}}@container table-container (width<=700px){.table-mobile-cards tbody tr{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--space-sm);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast), border-color var(--transition-fast);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.table-mobile-cards tbody tr:hover{border-color:var(--primary-alpha-30);box-shadow:var(--shadow-md)}.table-mobile-cards tbody tr:nth-child(2n){background:var(--bg-white)}.table-mobile-cards tbody tr[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;box-shadow:0 0 0 4px var(--primary-alpha-20)}.table-mobile-cards td{border:none;padding:0;display:block}.table-mobile-cards td:before,.table-mobile-cards .desktop-value{display:none}.table-mobile-cards td.td-primary{--td-primary-action-offset:110px;padding:var(--space-md) var(--space-md) var(--space-sm);padding-right:var(--td-primary-action-offset);justify-content:flex-start;align-items:flex-start;gap:var(--space-sm);order:1;display:flex}.table-mobile-cards td.td-primary>div{flex:1;min-width:0}.table-mobile-cards td.td-primary .font-medium{font-size:var(--font-base);color:var(--text-primary);white-space:normal;text-align:left;font-weight:600;line-height:1.3}.table-mobile-cards td.td-primary .text-muted{font-size:var(--font-xs);color:var(--text-muted);text-align:left;margin-top:2px;font-weight:400;line-height:1.4}.table-mobile-cards .mobile-expand-icon{color:var(--text-muted);flex-shrink:0;display:block}.table-mobile-cards td.td-actions{top:var(--space-md);right:var(--space-md);align-items:flex-end;gap:var(--space-sm);flex-direction:column;display:flex;position:absolute}.table-mobile-cards .mobile-status-badge{display:inline-flex}.table-mobile-cards td.td-actions .btn{min-height:44px;padding:var(--space-sm) var(--space-md);font-size:var(--font-sm)}.table-mobile-cards .td-metrics-row{gap:var(--space-sm) var(--space-md);padding:var(--space-md);order:1;grid-template-rows:auto auto auto;grid-template-columns:repeat(3,1fr);width:100%;display:grid}.table-mobile-cards .mobile-header{text-align:center;flex-direction:column;align-items:center;display:flex}.table-mobile-cards .mobile-header .font-medium{font-size:var(--font-base);color:var(--text-primary);font-weight:600;line-height:1.3}.table-mobile-cards .mobile-header .text-muted{font-size:var(--font-xs);color:var(--text-muted);margin-top:2px}.table-mobile-cards .mobile-header-actions{--_btn-compact-h:10px;align-items:center;gap:var(--space-xs);flex-direction:column;display:flex}.table-mobile-cards .mobile-header-actions .btn-sm{padding:var(--space-sm) var(--_btn-compact-h);font-size:var(--font-xs);min-height:36px}.table-mobile-cards td.td-primary,.table-mobile-cards td.td-actions{display:none}.table-mobile-cards .mobile-metric{flex-direction:column;align-items:center;min-width:0;display:flex}.table-mobile-cards .mobile-metric-hero{padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.table-mobile-cards .mobile-metric-hero .mobile-value-primary{font-size:var(--font-3xl);letter-spacing:-.02em;font-weight:700}.table-mobile-cards .mobile-metric-placeholder{display:block}.table-mobile-cards .mobile-metric-placeholder:nth-child(5),.table-mobile-cards .mobile-metric-placeholder:nth-child(6){padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.table-mobile-cards .mobile-value-primary{font-size:var(--font-base);color:var(--text-primary);font-weight:600;line-height:1.2}.table-mobile-cards .mobile-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--space-xs);font-weight:500}.table-mobile-cards .mobile-value-primary,.table-mobile-cards .mobile-label,.table-mobile-cards .mobile-gain-positive,.table-mobile-cards .mobile-gain-negative{display:block}.table-mobile-cards .td-details-row{display:none}.table-mobile-cards .mobile-detail{flex-direction:column;gap:1px;display:flex}.table-mobile-cards .mobile-detail-value{font-size:var(--font-sm);color:var(--text-secondary);font-weight:500}.table-mobile-cards .mobile-detail-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.table-mobile-cards .td-expanded-content{padding:var(--space-md);background:var(--bg-secondary);border-top:1px solid var(--border);order:10;display:none}.table-mobile-cards .td-expanded-content.expanded{display:block}.expanded-grid{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.expanded-item{flex-direction:column;gap:2px;display:flex}.expanded-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.expanded-value{font-size:var(--font-sm);font-weight:600}.table-mobile-cards tbody tr.mobile-expanded{background:var(--primary-alpha-5)}.table-mobile-cards td[data-label=Status]{display:none}[data-theme=dark] .table-mobile-cards tbody tr{background:var(--bg-primary);box-shadow:var(--shadow-sm)}[data-theme=dark] .table-mobile-cards tbody tr:nth-child(2n){background:var(--bg-primary)}[data-theme=dark] .table-mobile-cards tbody tr[tabindex]:focus-visible{outline-color:var(--primary-light);box-shadow:0 0 0 4px var(--accent-alpha-30)}[data-theme=dark] .table-mobile-cards .td-expanded-content{background:#00000026}[data-theme=dark] .table-mobile-cards tbody tr.mobile-expanded{background:var(--primary-alpha-10)}}.td-details-row,.td-metrics-row,.mobile-value-primary,.mobile-label,.mobile-gain-positive,.mobile-gain-negative,.mobile-type-buy,.mobile-type-sell,.mobile-status-badge{display:none}.desktop-value,.btn-label-desktop{display:inline}@media screen and (width<=768px){.btn-label-desktop{display:none}}.year-comparison-cards{display:none}@media screen and (width<=768px){.year-comparison-table{display:none}.year-comparison-cards{gap:var(--space-md);flex-direction:column;display:flex}.year-card{--_year-card-h:14px;--_year-card-footer-v:10px;background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.year-card.current{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.year-card-header{padding:var(--space-md) var(--_year-card-h);background:var(--bg-secondary);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.year-card-year{font-size:var(--font-lg);color:var(--text-primary);font-weight:700}.year-card-badge{font-size:var(--font-xs);border-radius:var(--radius-xl);background:var(--primary);color:var(--text-on-color);text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;font-weight:600}.year-card-total{font-size:var(--font-xl);color:var(--danger);font-weight:700}.year-card-total.zero{color:var(--success)}.year-card-body{padding:var(--space-md) var(--_year-card-h)}.year-card-row{padding:var(--space-sm) 0;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.year-card-row:last-child{border-bottom:none}.year-card-label{font-size:var(--font-sm);color:var(--text-secondary)}.year-card-value{font-size:var(--font-sm);color:var(--text-primary);font-weight:600}.year-card-value.danger{color:var(--danger)}.year-card-value.success{color:var(--success)}.year-card-value.muted{color:var(--text-muted);font-weight:400}.year-card-footer{padding:var(--_year-card-footer-v) var(--_year-card-h);background:var(--bg-secondary);border-top:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.year-card-change{font-size:var(--font-sm)}.year-card-change.up{color:var(--danger)}.year-card-change.down{color:var(--success)}.year-card.summary{background:var(--bg-secondary)}.year-card.summary .year-card-header{background:var(--primary)}.year-card.summary .year-card-year{color:var(--text-on-color)}[data-theme=dark] .year-card{background:var(--bg-primary)}[data-theme=dark] .year-card-header{background:#0003}[data-theme=dark] .year-card-footer{background:#00000026}}.skeleton{background:var(--bg-secondary);animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton-line{margin-bottom:0}.skeleton-title{margin-bottom:var(--space-lg)}.skeleton-label{margin-bottom:var(--space-sm)}.skeleton-value{margin-top:var(--space-xs)}.skeleton-footer{padding-top:var(--space-xs);margin-top:auto}@media (prefers-reduced-motion:reduce){.skeleton{opacity:.5;animation:none}}.skeleton-row td{padding:var(--space-md) var(--space-sm)}.loading{padding:var(--space-2xl);color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--primary);width:clamp(20px,3vw,24px);height:clamp(20px,3vw,24px);margin-right:var(--space-sm);border-radius:50%;animation:1s linear infinite spin}.spin{animation:1s linear infinite spin}.chart-container{content-visibility:auto;width:100%;height:clamp(220px,45vw,320px)}.chart-container-sm{content-visibility:auto;width:100%;height:clamp(180px,35vw,220px)}.chart-state-content{justify-content:center;align-items:center;display:flex}.alert-warning{background:var(--alert-warning-bg);color:var(--status-warning-text);border:1px solid var(--alert-warning-border)}[data-theme=dark] .alert-warning{color:var(--warning)}.status-alert{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-sm);line-height:1.5;display:flex}.status-alert-icon{flex-shrink:0;margin-top:1px}.status-alert-icon svg{width:18px;height:18px}.status-alert-success{background:var(--alert-success-bg);color:var(--status-success-text)}.status-alert-warning{background:var(--alert-warning-bg);color:var(--status-warning-text)}[data-theme=dark] .status-alert-success{color:var(--success)}[data-theme=dark] .status-alert-warning{color:var(--status-warning-text-soft)}@media screen and (width<=480px){.status-alert{--_alert-mobile-v:10px;font-size:var(--font-xs);padding:var(--_alert-mobile-v) var(--space-md);gap:var(--space-sm)}.status-alert-icon svg{width:16px;height:16px}.status-alert strong{margin-bottom:2px;display:block}}.status-alert-summary{justify-content:space-between;align-items:center;gap:var(--space-md);cursor:pointer;width:100%;display:flex}.status-alert-toggle{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.status-alert-toggle:hover{opacity:1}.status-alert-details{margin-top:var(--space-md);gap:var(--space-md);flex-direction:column;display:flex}.status-alert-subsection{padding-left:var(--space-md);opacity:.85;border-left:2px solid}.status-alert-subsection-header{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);display:flex}.toast-container{bottom:var(--space-lg);right:var(--space-lg);left:var(--space-lg);z-index:var(--z-toast);gap:var(--space-sm);max-width:min(400px, calc(100vw - var(--space-lg) * 2));flex-direction:column-reverse;margin-left:auto;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-sm);background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border-left:4px solid var(--primary);padding:clamp(10px,1.5vw,12px) clamp(12px,2vw,16px);animation:.3s ease-out toast-enter;display:flex}.toast-exit{animation:.3s ease-in forwards toast-exit}@keyframes toast-enter{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-exit{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-success{border-left-color:var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-error .toast-icon{color:var(--danger)}.toast-warning{border-left-color:var(--warning)}.toast-warning .toast-icon{color:var(--status-warning-text)}.toast-info{border-left-color:var(--primary)}.toast-info .toast-icon{color:var(--primary)}.toast-icon{flex-shrink:0}.toast-message{font-size:var(--font-sm);color:var(--text-primary);flex:1}.toast-dismiss{padding:var(--space-xs);cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:0 0;border:none;flex-shrink:0}.toast-dismiss:hover{background:var(--bg-secondary)}[data-theme=dark] .toast{background:var(--bg-primary);box-shadow:var(--shadow-lg)}[data-theme=dark] .toast-warning .toast-icon{color:var(--warning)}.form-input.input-error{border-color:var(--danger);animation:.4s input-shake}.form-input.input-error:focus{box-shadow:var(--focus-ring-error)}.form-input.input-success{border-color:var(--success)}.form-input.input-success:focus{box-shadow:var(--focus-ring-success)}@keyframes input-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{width:100%}.delete-account-form{gap:var(--space-md);margin-top:var(--space-md);flex-direction:column;display:flex}.password-toggle-btn{cursor:pointer;color:var(--text-secondary);padding:var(--space-sm);border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.password-toggle-btn:hover{color:var(--text-primary)}.password-toggle-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.password-requirements{margin:var(--space-xs) 0 0;gap:var(--space-xs) var(--space-md);font-size:var(--font-xs);flex-wrap:wrap;padding:0;list-style:none;display:flex}.password-requirements li{align-items:center;gap:var(--space-xs);transition:color var(--transition-fast);display:flex}.requirement-met{color:var(--success)}.requirement-unmet{color:var(--text-secondary)}.form-error-text{color:var(--danger);font-size:var(--font-xs);margin-top:var(--space-xs);animation:error-fade-in var(--transition-normal)}@keyframes error-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.btn-loading{pointer-events:none;position:relative}.btn-loading:after{content:"";border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;position:absolute}.empty-state{text-align:center;padding:clamp(24px, 5vw, 48px) var(--space-lg);min-height:200px;animation:empty-state-fade-in .3s var(--ease-out-expo);flex-direction:column;justify-content:center;align-items:center;display:flex}@keyframes empty-state-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.empty-state,.form-input.input-error{animation:none}}.empty-state-icon{color:var(--text-secondary);opacity:.6;margin-bottom:var(--space-lg);background:var(--primary-alpha-5);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex}.empty-state-title{font-size:var(--font-xl);color:var(--text-primary);margin:0 0 var(--space-sm);font-weight:600}.empty-state-description{font-size:var(--font-sm);color:var(--text-secondary);margin:0 0 var(--space-lg);max-width:min(300px,90%)}.empty-state-action{margin-top:var(--space-sm)}.btn-full{width:100%}.link-btn{color:var(--primary);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.link-btn:hover{color:var(--primary-dark)}.custom-select{width:clamp(160px,25vw,220px);position:relative}.custom-select-trigger{width:100%;padding:var(--space-sm) var(--space-sm);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-sm);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.custom-select-trigger:hover{border-color:var(--primary)}.custom-select-trigger:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--accent-alpha-10);outline:none}.custom-select-trigger:active:not(.custom-select-disabled){transform:scale(.98)}.custom-select-value{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.custom-select-icon{margin-left:var(--space-sm);color:var(--text-secondary);flex-shrink:0}.custom-select-dropdown{top:calc(100% + var(--space-xs));border-radius:var(--radius-md);max-height:300px;z-index:var(--z-nav);margin:0;list-style:none;left:0;right:0;overflow-y:auto}.custom-select-option{padding:var(--space-sm);border-radius:var(--radius-sm);flex-direction:column;display:flex}.custom-select-option:hover,.custom-select-option.focused{background:var(--bg-secondary)}.custom-select-option.selected{background:var(--accent-alpha-10)}.custom-select-option.focused.selected{background:var(--accent-alpha-20)}.custom-select-option-label{font-size:var(--font-sm);color:var(--text-primary);white-space:nowrap;font-weight:500}.custom-select-option.selected .custom-select-option-label{color:var(--primary)}.custom-select-option-desc{font-size:var(--font-xs);color:var(--text-secondary);margin-top:2px}[data-theme=dark] .custom-select-trigger{background:var(--bg-primary)}[data-theme=dark] .custom-select-dropdown{background:var(--bg-primary);border-color:var(--border)}[data-theme=dark] .custom-select-option:hover,[data-theme=dark] .custom-select-option.focused{background:var(--bg-secondary)}[data-theme=dark] .custom-select-option.selected{background:var(--primary-alpha-20)}[data-theme=dark] .custom-select-option.focused.selected{background:var(--primary-alpha-30)}[data-theme=dark] .custom-select-option.selected .custom-select-option-label{color:var(--primary)}.custom-select-trigger.custom-select-error{border-color:var(--danger)}.custom-select-trigger.custom-select-error:focus{border-color:var(--danger);box-shadow:var(--focus-ring-error)}.custom-select-error-message{margin-top:var(--space-xs);color:var(--danger);font-size:var(--font-xs);display:block}.custom-select-trigger.custom-select-disabled{opacity:.5;cursor:not-allowed;background:var(--bg-secondary)}.custom-select-trigger.custom-select-disabled:hover{border-color:var(--border)}.custom-select-year{width:clamp(100px,18vw,140px)}.custom-select-compact{width:clamp(70px,12vw,90px)}.custom-select-full{width:100%}.text-truncate{text-overflow:ellipsis;white-space:nowrap;cursor:help;max-width:200px;overflow:hidden}.text-truncate[title]:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.mobile-expand-icon,.td-expanded-content{display:none}@media screen and (width<=768px){.mobile-expand-icon{color:var(--text-muted);display:block}.table-mobile-cards tbody tr:has(.td-expanded-content){cursor:pointer}.table-mobile-cards .td-expanded-content{border-top:1px solid var(--border);width:100%;margin-top:var(--space-sm);padding:0 14px 14px;padding-top:var(--space-md);order:20;display:none}.table-mobile-cards .td-expanded-content.expanded{display:block}.expanded-grid{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.expanded-item{flex-direction:column;gap:2px;display:flex}.expanded-label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.expanded-value{font-size:var(--font-sm);font-weight:600}.expanded-message{font-size:var(--font-sm);color:var(--text-secondary);font-style:italic}.table-mobile-cards tbody tr.mobile-expanded{background:var(--bg-secondary)}}.error-boundary-container{text-align:center;background:var(--bg-white);border-radius:var(--radius-lg);max-width:min(600px,100vw - 32px);box-shadow:var(--shadow-md);margin:clamp(16px,4vw,40px) auto;padding:clamp(20px,5vw,40px)}.error-boundary-icon{margin-bottom:var(--space-md);font-size:clamp(32px,8vw,48px)}.error-boundary-title{margin-bottom:var(--space-md);color:var(--text-primary);font-size:clamp(18px,4vw,24px)}.error-boundary-message{color:var(--text-secondary);margin-bottom:var(--space-lg);font-size:var(--font-sm)}.error-boundary-details{margin-bottom:var(--space-lg);text-align:left;padding:var(--space-sm);background:var(--bg-secondary);border-radius:var(--radius-md)}.error-boundary-details summary{cursor:pointer;margin-bottom:var(--space-sm);font-weight:500}.error-boundary-details pre{font-size:var(--font-xs);white-space:pre-wrap;word-break:break-word;color:var(--danger);margin:0}.error-boundary-actions{gap:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}@media screen and (width<=400px){.error-boundary-actions{flex-direction:column}.error-boundary-actions .btn{width:100%}}.modal-backdrop{background:var(--overlay);z-index:var(--z-modal);padding:var(--space-md);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:min(500px,100vw - 32px);max-height:calc(100vh - 32px);padding:clamp(16px,4vw,24px);overflow-y:auto}[data-theme=dark] .modal-backdrop{background:var(--overlay-dark)}[data-theme=dark] .modal{background:var(--bg-primary);border:1px solid var(--border)}@media screen and (width<=480px){.modal-backdrop{padding:var(--space-sm);padding-bottom:env(safe-area-inset-bottom,0px);align-items:flex-end}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%;max-height:calc(100vh - 48px);padding-bottom:calc(clamp(16px, 4vw, 24px) + env(safe-area-inset-bottom,0px));margin-bottom:0}}.modal-close{top:var(--space-sm);right:var(--space-sm);cursor:pointer;color:var(--text-secondary);padding:var(--space-sm);border-radius:var(--radius-sm);min-width:44px;min-height:44px;transition:color var(--transition-normal), background var(--transition-normal);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.modal-close:hover{color:var(--text-primary);background:var(--bg-secondary)}.btn-sm{--_btn-sm-h:10px;padding:var(--space-xs) var(--_btn-sm-h);font-size:var(--font-xs);border-radius:var(--radius-sm);min-height:36px}.icon-action-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-white);min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-action-btn:hover,.icon-action-btn:focus-visible{border-color:var(--primary);color:var(--primary);background:var(--primary-alpha-5)}.icon-action-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.icon-action-btn:active{transform:scale(.92)}.icon-action-btn--danger:hover,.icon-action-btn--danger:focus-visible{border-color:var(--danger);color:var(--danger);background:var(--danger-alpha-10,#dc26261a)}.icon-action-btn--danger:focus-visible{outline-color:var(--danger)}.icon-action-btn:disabled{opacity:.5;cursor:not-allowed}.icon-action-btn:disabled:hover{border-color:var(--border);color:var(--text-secondary);background:var(--bg-white)}.confirm-dialog-overlay{background:var(--overlay);z-index:var(--z-toast);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog-overlay.dialog-enter{animation:overlay-enter .2s var(--ease-out-expo)}.confirm-dialog-overlay.dialog-exit{animation:overlay-exit .2s var(--ease-out-expo) forwards;pointer-events:none}.dialog-enter .confirm-dialog{animation:dialog-enter .2s var(--ease-spring)}.dialog-exit .confirm-dialog{animation:dialog-exit .2s var(--ease-out-expo) forwards}@keyframes overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes overlay-exit{0%{opacity:1}to{opacity:0}}@keyframes dialog-enter{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes dialog-exit{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.95)translateY(8px)}}@media (prefers-reduced-motion:reduce){.confirm-dialog-overlay.dialog-enter,.confirm-dialog-overlay.dialog-exit,.dialog-enter .confirm-dialog,.dialog-exit .confirm-dialog{animation:none}}.confirm-dialog{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-lg);width:90%;max-width:440px;box-shadow:var(--shadow-xl);border:1px solid var(--border)}.confirm-dialog h2{margin:0 0 var(--space-md) 0;font-size:var(--font-lg);font-weight:600}.confirm-dialog--danger h2{color:var(--danger)}.confirm-dialog--warning h2{color:var(--warning)}.confirm-dialog p{margin:0 0 var(--space-xl) 0;color:var(--text-secondary);white-space:pre-line;line-height:1.5}.confirm-dialog-actions{gap:var(--space-md);flex-wrap:wrap;justify-content:flex-end;display:flex}.confirm-dialog-actions button{padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-size:var(--font-sm);cursor:pointer;transition:background var(--transition-normal)}.confirm-dialog-actions .btn-cancel{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-weight:500}.confirm-dialog-actions .btn-confirm-danger{border:1px solid var(--danger-dark);background:var(--danger);color:var(--text-on-color);font-weight:600}.confirm-dialog-actions .btn-confirm-danger:hover{background:var(--danger-dark)}.confirm-dialog-actions .btn-confirm-warning{border:1px solid var(--warning-dark);background:var(--warning);color:var(--text-on-color);font-weight:600}.confirm-dialog-actions .btn-confirm-warning:hover{background:var(--warning-dark)}.confirm-dialog-actions .btn-extra{border:1px solid var(--status-success-text);background:var(--status-success-text);color:var(--text-on-color);font-weight:600}.confirm-dialog-actions .btn-loading{opacity:.7;cursor:not-allowed}.demo-banner{padding:var(--space-sm) var(--space-lg);background:var(--accent);color:var(--text-on-color);font-size:var(--font-sm);z-index:var(--z-sticky,100);justify-content:space-between;align-items:center;display:flex}.demo-banner-content{align-items:center;gap:var(--space-sm);flex-wrap:wrap;flex:1;justify-content:center;display:flex}.demo-banner-cta{color:var(--text-on-color);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-md);font-size:var(--font-sm);cursor:pointer;transition:background var(--transition-fast);background:#fff3;border:1px solid #fff6;font-weight:600}.demo-banner-cta:hover{background:#ffffff4d}.demo-banner-close{color:#ffffffb3;cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.demo-banner-close:hover{color:var(--text-on-color)}.welcome-screen{max-width:640px;padding:clamp(24px, 5vw, 48px) var(--space-md);margin:0 auto;animation:.4s ease-out welcome-fade-in}@keyframes welcome-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.welcome-header{text-align:center;margin-bottom:clamp(24px,4vw,40px)}.welcome-title{color:var(--text-primary);margin:0 0 var(--space-md);font-size:clamp(28px,5vw,36px);font-weight:700;line-height:1.2}.welcome-subtitle{font-size:var(--font-lg);color:var(--text-secondary);margin:0;line-height:1.6}.welcome-features{gap:var(--space-sm);flex-direction:column;margin-bottom:clamp(24px,4vw,40px);display:flex}.welcome-feature{align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-md);transition:background var(--transition-normal);display:flex}.welcome-feature:hover{background:var(--primary-alpha-8)}.welcome-feature-icon{color:var(--accent);flex-shrink:0;margin-top:2px}.welcome-feature-title{font-size:var(--font-base);color:var(--text-primary);margin:0 0 2px;font-weight:600}.welcome-feature-desc{font-size:var(--font-sm);color:var(--text-secondary);margin:0;line-height:1.5}.welcome-actions{align-items:center;gap:var(--space-sm);flex-direction:column;margin-bottom:clamp(24px,4vw,32px);display:flex}.welcome-action-primary{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-size:var(--font-base);justify-content:center;width:100%;max-width:340px;font-weight:600;display:inline-flex}.welcome-action-secondary{justify-content:center;width:100%;max-width:340px}.welcome-brokers{text-align:center}.welcome-brokers-label{font-size:var(--font-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-sm)}.welcome-brokers-list{justify-content:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.welcome-broker-tag{padding:var(--space-xs) var(--space-md);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--font-xs);color:var(--text-secondary);display:inline-block}.empty-state-dashboard{padding:clamp(32px, 6vw, 64px) var(--space-lg)}.empty-state-dashboard .empty-state{min-height:240px}.empty-state-dashboard .empty-state-icon{color:var(--accent);opacity:.7}.empty-state-dashboard .empty-state-description{max-width:min(420px,90%)}[data-theme=dark] .welcome-feature{background:var(--bg-secondary)}[data-theme=dark] .welcome-feature:hover{background:var(--primary-alpha-10)}[data-theme=dark] .welcome-broker-tag{background:var(--bg-secondary)}@media (width<=480px){.welcome-action-primary{padding:var(--space-sm) var(--space-md);font-size:var(--font-sm)}}@media (prefers-reduced-motion:reduce){.welcome-screen{animation:none}.welcome-feature{transition:none}}.page-header-row{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.person-filter-row{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.person-chip{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);border:2px solid var(--chip-border);background:var(--chip-bg);color:var(--text-primary);cursor:pointer;transition:box-shadow var(--transition-normal);font-size:var(--font-sm);font-family:inherit;display:flex}.person-chip--active{box-shadow:var(--chip-active-glow)}.person-chip:hover{box-shadow:var(--shadow-sm)}.person-chip-avatar{width:24px;height:24px;color:var(--text-on-color);font-size:var(--font-sm);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.add-spouse-hint{align-items:center;gap:var(--space-xs);color:var(--text-secondary);font-size:var(--font-sm);transition:color var(--transition-normal);white-space:nowrap;text-decoration:none;display:inline-flex}.add-spouse-hint:hover{color:var(--primary);text-decoration:underline}.color-picker-popover{top:calc(100% + var(--space-xs));gap:var(--space-xs);padding:var(--space-sm);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:var(--z-popover);display:flex;position:absolute;left:50%;transform:translate(-50%)}.api-integrations-grid{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}@media screen and (width<=640px){.api-integrations-grid{grid-template-columns:1fr}}.api-summary-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);cursor:pointer;transition:border-color var(--transition-normal), box-shadow var(--transition-normal);text-align:left;font-family:inherit;font-size:inherit;color:inherit;width:100%}.api-summary-card:hover:not(:disabled){border-color:var(--primary);box-shadow:var(--shadow-sm)}.api-summary-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.api-summary-card.active{border-color:var(--primary);background:var(--primary-alpha-5)}.api-summary-card.connected{border-left:3px solid var(--success)}.api-summary-card.coming-soon{opacity:.6;cursor:default}.api-summary-card:disabled{cursor:default}.api-person-section{margin-bottom:var(--space-xl)}.api-person-section-heading{font-weight:600;font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-md);padding-left:var(--space-sm);border-left:3px solid}.api-detail-panel{margin-top:var(--space-lg);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border)}.api-connected-compact{gap:var(--space-sm);flex-direction:column;display:flex}.api-connected-row{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.api-connected-info{align-items:center;gap:var(--space-md);font-size:var(--font-xs);color:var(--text-secondary);flex-wrap:wrap;min-width:0;display:flex}.api-connected-key{color:var(--text-muted);white-space:nowrap;font-family:monospace}.api-connected-sync{align-items:center;gap:var(--space-xs);white-space:nowrap;display:inline-flex}.api-connected-actions{align-items:center;gap:var(--space-xs);flex-shrink:0;display:flex}.api-sync-btn{gap:var(--space-xs)}.api-more-wrapper{position:relative}.api-more-btn{padding:var(--space-sm);color:var(--text-muted);justify-content:center;align-items:center;min-width:44px;min-height:44px;line-height:1;display:flex}.api-more-btn:hover:not(:disabled){color:var(--text-primary)}.api-dropdown-menu{border-radius:var(--radius-md);min-width:180px;max-width:calc(100vw - 32px);padding:var(--space-xs) 0;z-index:var(--z-popover);animation:.15s dropdownFadeIn;top:calc(100% + 4px);right:0}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.api-dropdown-item{align-items:center;gap:var(--space-sm);width:100%;min-height:44px;font-size:var(--font-xs);color:var(--text-secondary);text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:0;display:flex}.api-dropdown-item:hover:not(:disabled){background:var(--primary-alpha-5);color:var(--text-primary)}.api-dropdown-item:disabled{opacity:.5;cursor:not-allowed}.api-dropdown-item-danger{color:var(--danger)}.api-dropdown-item-danger:hover:not(:disabled){background:var(--status-error-bg);color:var(--danger)}.api-dropdown-divider{background:var(--border);height:1px;margin:var(--space-xs) 0}.api-connected-error{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--status-error-bg);color:var(--status-error-text);border-radius:var(--radius-md);font-size:var(--font-xs);display:flex}.api-sync-progress{align-items:center;gap:var(--space-sm);font-size:var(--font-xs);color:var(--primary);display:flex}.api-csv-hint{align-items:center;gap:var(--space-xs);font-size:var(--font-xs);color:var(--text-muted);display:flex}@media screen and (width<=640px){.api-connected-row{flex-direction:column;align-items:flex-start}.api-connected-actions{width:100%}.api-sync-btn{flex:1}.api-dropdown-menu{left:auto;right:0}}.api-status-badge{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border-radius:var(--radius-xl);font-size:var(--font-xs);font-weight:600;display:inline-flex}.api-status-badge--connected{background:var(--status-success-bg);color:var(--status-success-text)}.api-status-badge--syncing{background:var(--primary-alpha-10);color:var(--primary)}.api-status-badge--error{background:var(--status-error-bg);color:var(--status-error-text)}.api-status-badge--disconnected{background:var(--bg-secondary);color:var(--text-secondary)}.api-status-badge--coming-soon{background:var(--bg-secondary);color:var(--text-muted);font-style:italic;font-weight:500}[data-theme=dark] .api-summary-card{background:var(--glass-bg-card);border-color:var(--dark-bg-border)}[data-theme=dark] .api-summary-card:hover:not(:disabled){border-color:var(--primary)}[data-theme=dark] .api-summary-card.active{background:var(--primary-alpha-10)}[data-theme=dark] .api-detail-panel{background:var(--glass-bg-card);border-color:var(--dark-bg-border)}[data-theme=dark] .api-dropdown-menu{background:var(--bg-primary);border-color:var(--dark-bg-glass-highlight);box-shadow:var(--shadow-xl)}[data-theme=dark] .api-dropdown-item:hover:not(:disabled){background:var(--dark-bg-glass)}[data-theme=dark] .api-dropdown-divider,[data-theme=dark] .api-setup-steps:before{background:var(--dark-bg-border)}[data-theme=dark] .color-picker-popover{background:var(--bg-secondary);border-color:var(--dark-bg-glass-highlight)}.api-setup-guide{padding:var(--space-sm) 0}.api-setup-steps{flex-direction:column;display:flex;position:relative}.api-setup-steps:before{content:"";background:var(--border);border-radius:1px;width:2px;position:absolute;top:16px;bottom:16px;left:15px}.api-setup-step{gap:var(--space-md);z-index:1;padding:var(--space-sm) 0;align-items:flex-start;display:flex;position:relative}.api-setup-step-number{background:var(--primary-alpha-10);width:32px;min-width:32px;height:32px;color:var(--primary);font-size:var(--font-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.api-setup-step-content{flex:1;min-width:0}.api-setup-step-title{font-size:var(--font-sm);color:var(--text-primary);margin-bottom:var(--space-xs);align-items:center;gap:var(--space-xs);font-weight:600;display:flex}.api-setup-step-text{font-size:var(--font-xs);color:var(--text-secondary);line-height:1.5}.api-permissions-checklist{gap:var(--space-xs);margin:var(--space-sm) 0;flex-direction:column;display:flex}.api-permissions-group{align-items:center;gap:var(--space-sm);display:flex}.api-permissions-group-label{font-size:var(--font-xxs);color:var(--text-tertiary);text-align:right;min-width:110px}.api-permission-item{font-size:var(--font-xs);padding:2px var(--space-sm);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary)}.api-permission-item.enabled{background:var(--status-success-bg);color:var(--status-success-text);font-weight:500}.api-permission-item.enabled:before{content:"✓"}.api-setup-link{align-items:center;gap:var(--space-xs);color:var(--primary);font-size:var(--font-xs);margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--primary-alpha-5);border-radius:var(--radius-md);transition:background var(--transition-fast);font-weight:500;text-decoration:none;display:inline-flex}.api-setup-link:hover{background:var(--primary-alpha-10);text-decoration:none}.api-setup-security{align-items:center;gap:var(--space-md);margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--status-success-bg);border-radius:var(--radius-md);font-size:var(--font-xs);color:var(--status-success-text);flex-wrap:wrap;display:flex}.api-setup-security-item{align-items:center;gap:var(--space-xs);white-space:nowrap;display:inline-flex}.api-setup-cta{margin-top:var(--space-lg)}@media screen and (width<=640px){.api-setup-security{align-items:flex-start;gap:var(--space-sm);flex-direction:column}}.sync-progress-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.note-edit-btn{cursor:pointer;padding:2px var(--space-xs);border-radius:var(--radius-sm);font-size:var(--font-sm);opacity:.5;transition:opacity var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;line-height:1;display:inline-flex}.note-edit-btn:hover,.note-edit-btn:focus-visible,.note-edit-btn.has-note{opacity:1}.reference-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:0;list-style:none;display:flex}.reference-summary::-webkit-details-marker{display:none}.reference-summary::marker{content:""}.reference-summary-hint{font-size:var(--font-sm);color:var(--text-secondary);transition:opacity var(--transition-normal)}details[open]>.reference-summary .reference-summary-hint{opacity:0}@media screen and (width<=768px){.broker-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (width<=480px){.broker-grid{grid-template-columns:1fr}}@media screen and (width<=600px){.tax-info-grid{grid-template-columns:1fr}}@media screen and (width<=1200px) and (width>=901px){.tax-controls{padding-right:0}.tax-control-actions{margin-left:auto;margin-top:calc(var(--font-xs) * 1.5 + var(--space-sm));position:static}.tax-control-actions .btn-label-desktop{display:none}.tax-control-actions .btn{padding:0 12px}}@media screen and (width<=995px) and (width>=901px){.tax-control-group:first-child{min-width:0}.year-selector .custom-select{flex:auto;min-width:100px}.year-selector .custom-select-trigger{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}@media screen and (width<=900px){.tax-controls{flex-direction:column;padding-right:0}.tax-control-group{width:100%}.year-selector{justify-content:center;width:100%}.losses-formula{grid-template-columns:1fr auto 1fr auto 1fr;width:100%}.losses-formula-value{min-width:0;font-size:var(--font-sm)}.losses-formula-operator{padding:0 2px}.tax-control-actions{width:100%;position:static}.tax-control-actions .btn{flex:1}.tax-control-actions .btn-label-desktop{display:inline}}@media screen and (width<=400px){.losses-formula-value{font-size:var(--font-sm);height:40px;padding:0 8px}.losses-formula-label{font-size:var(--font-xs)}}.collapsible-card{padding:0;overflow:hidden}.collapsible-header{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-lg);cursor:pointer;font-family:inherit;font-size:var(--font-sm);color:var(--text-primary);text-align:left;transition:background var(--transition-normal);background:0 0;border:none;display:flex}.collapsible-header:hover{background:var(--bg-secondary)}.collapsible-header:disabled{cursor:default}.tax-profile-attention .collapsible-header,.tax-profile-attention .collapsible-header:hover{background:var(--alert-warning-bg)}.collapsible-header-left{align-items:center;gap:var(--space-sm);font-weight:600;display:flex}.collapsible-header-title{white-space:nowrap}.collapsible-header-right{align-items:center;gap:var(--space-md);color:var(--text-secondary);display:flex}.collapsible-header-summary{font-size:var(--font-xs);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:400px;overflow:hidden}@media screen and (width<=600px){.collapsible-header-summary{display:none}.collapsible-header-title{white-space:normal;font-size:var(--font-xs)}}.tax-section{margin-bottom:var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border);padding:clamp(12px,3vw,24px)}.tax-section .table{width:100%;min-width:0}.tax-section .table td:first-child{width:100%}.tax-section .table td:last-child{white-space:nowrap;text-align:right;padding-left:var(--space-md)}@media screen and (width<=480px){.tax-section .table td{padding:var(--space-sm) var(--space-xs);font-size:var(--font-sm)}.tax-section .table td:first-child{word-break:break-word}.tax-section .table td:last-child{white-space:nowrap;text-align:right}.tax-section-title{font-size:var(--font-sm)}.tax-section p{font-size:var(--font-xs)}.alert{font-size:var(--font-xs);padding:var(--space-md)}.tax-rate-badge{font-size:var(--font-xs);padding:2px 6px}}.tax-section-title{font-size:var(--font-base);margin-bottom:var(--space-md);color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:clamp(6px,1.2vw,10px);font-weight:600;display:flex}.tax-rate-badge{font-size:var(--font-xs);border-radius:var(--radius-pill);background:var(--primary);color:var(--text-on-color);letter-spacing:.02em;white-space:nowrap;padding:clamp(3px,.5vw,4px) clamp(6px,1.2vw,10px);font-weight:600}.tax-rate-badge.warning{background:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.tax-rate-badge.danger{background:var(--status-error-bg);color:var(--status-error-text);border:1px solid var(--status-error-border)}.tax-rate-badge.primary{background:var(--primary-alpha-15);color:var(--primary);border:1px solid var(--primary-alpha-30)}.lot-badge{margin-left:var(--space-sm);padding:2px var(--space-sm);font-size:var(--font-xs);background:var(--bg-secondary);color:var(--text-secondary);border-radius:var(--radius-sm);font-weight:500;display:inline-block}.deadline-item{background:var(--bg-white);border-radius:var(--radius-md);border:1px solid var(--border);border-left:4px solid var(--warning);transition:border-color var(--transition-normal);justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:clamp(8px,1.2vw,10px);padding:clamp(10px,2vw,16px);display:flex}.deadline-item:hover{border-left-color:var(--primary)}.deadline-date{color:var(--text-primary);font-weight:600;font-size:var(--font-sm)}.deadline-amount{color:var(--danger);font-size:clamp(1rem,1rem + 1vw,1.25rem);font-weight:700}.tax-controls{gap:var(--space-lg);padding-right:calc(220px + var(--space-lg));align-items:flex-start;display:flex;position:relative}.tax-control-group{gap:var(--space-sm);flex-direction:column;flex-shrink:0;display:flex}.tax-control-group:first-child{flex-shrink:1;min-width:min-content}.tax-control-label{align-items:center;gap:var(--space-sm);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600;display:flex}.tax-control-label .auto-badge{font-size:var(--font-xs);color:var(--success);text-transform:lowercase;letter-spacing:normal;font-weight:500}.year-selector{align-items:center;gap:var(--space-xs);background:var(--bg-secondary);padding:var(--space-xs);border-radius:var(--radius-md);display:flex}.year-selector .btn-icon{width:44px;height:44px;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.year-selector .btn-icon:hover:not(:disabled){background:var(--bg-white);color:var(--text-primary)}.year-selector .btn-icon:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.year-selector .btn-icon:active:not(:disabled){transform:scale(.92)}.year-selector .btn-icon:disabled{opacity:.3;cursor:not-allowed}.year-selector .custom-select{width:clamp(100px,18vw,180px)}.year-selector .custom-select-trigger{background:var(--bg-white);font-weight:600;font-size:var(--font-base);border:none}.losses-formula{justify-content:start;align-items:center;column-gap:var(--space-sm);row-gap:var(--space-xs);grid-template-rows:auto auto;grid-template-columns:auto auto auto auto auto;display:grid}.losses-formula-item{display:contents}.losses-formula-value{background:var(--bg-secondary);border-radius:var(--radius-md);min-width:90px;height:40px;font-size:var(--font-base);font-weight:600;font-family:var(--font-mono);grid-row:1;justify-content:center;align-items:center;padding:0 12px;display:flex}.losses-formula-value.editable{background:var(--bg-white);border:1px solid var(--border)}.losses-formula-value.editable input{text-align:center;width:100%;height:100%;font-size:inherit;font-weight:inherit;color:var(--text-primary);background:0 0;border:none;font-family:inherit}.losses-formula-value.editable:focus-within{border-color:var(--primary);box-shadow:var(--focus-ring)}.losses-formula-value.editable input:focus{outline:none}.losses-formula-value.total{background:var(--primary);color:var(--text-on-color);min-width:100px}.losses-formula-label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);text-align:center;grid-row:2;font-weight:500}.losses-formula-operator{font-size:var(--font-lg);color:var(--text-secondary);grid-row:1;padding:0 4px;font-weight:500}.losses-formula-item:first-child .losses-formula-value,.losses-formula-item:first-child .losses-formula-label{grid-column:1}.losses-formula>.losses-formula-operator:first-of-type{grid-column:2}.losses-formula-item:nth-child(3) .losses-formula-value,.losses-formula-item:nth-child(3) .losses-formula-label{grid-column:3}.losses-formula>.losses-formula-operator:nth-of-type(2){grid-column:4}.losses-formula-item:nth-child(5) .losses-formula-value,.losses-formula-item:nth-child(5) .losses-formula-label{grid-column:5}.tax-control-actions{top:calc(var(--font-xs) * 1.5 + var(--space-sm));gap:var(--space-sm);display:flex;position:absolute;right:0}.tax-control-actions .btn{height:40px;font-size:var(--font-sm);padding:0 16px;font-weight:600}@media screen and (width<=1200px) and (width>=901px){.tax-controls{padding-right:0}.tax-control-actions{margin-left:auto;margin-top:calc(var(--font-xs) * 1.5 + var(--space-sm));position:static}.tax-control-actions .btn-label-desktop{display:none}.tax-control-actions .btn{padding:0 12px}}@media screen and (width<=995px) and (width>=901px){.tax-control-group:first-child{min-width:0}.year-selector .custom-select{flex:auto;min-width:100px}.year-selector .custom-select-trigger{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}@media screen and (width<=900px){.tax-controls{flex-direction:column;padding-right:0}.tax-control-group{width:100%}.year-selector{justify-content:center;width:100%}.losses-formula{grid-template-columns:1fr auto 1fr auto 1fr;width:100%}.losses-formula-value{min-width:0;font-size:var(--font-sm)}.losses-formula-operator{padding:0 2px}.tax-control-actions{width:100%;position:static}.tax-control-actions .btn{flex:1}.tax-control-actions .btn-label-desktop{display:inline}}@media screen and (width<=400px){.losses-formula-value{font-size:var(--font-sm);height:40px;padding:0 8px}.losses-formula-label{font-size:var(--font-xs)}}.tax-profile-inline{transition:border-color var(--transition-normal);border-left:3px solid var(--success);padding:0;overflow:hidden}.tax-profile-inline.tax-profile-attention{border-left-color:var(--warning)}.tax-profile-icon-success{color:var(--success);flex-shrink:0}.tax-profile-icon-warning{color:var(--warning-dark);flex-shrink:0}.tax-profile-hint{padding:0 var(--space-lg) var(--space-sm);font-size:var(--font-sm);color:var(--text-secondary);margin:0}.tax-profile-fields{gap:var(--space-md);padding:var(--space-sm) var(--space-lg) var(--space-lg);flex-direction:column;display:flex}.tax-profile-field-row{gap:var(--space-xs);flex-direction:column;display:flex}.tax-profile-field-label{align-items:center;gap:var(--space-xs);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600;display:flex}.tax-profile-field-label-sm{align-items:center;gap:var(--space-xs);font-size:var(--font-xs);color:var(--text-secondary);margin-bottom:2px;display:flex}.tax-profile-income-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.tax-profile-income-input{align-items:center;gap:var(--space-xs);display:flex}.tax-profile-income-input .form-input{min-width:80px;max-width:120px;padding:var(--space-xs) var(--space-sm)}.tax-profile-currency{color:var(--text-secondary);font-size:var(--font-sm)}.tax-profile-or{color:var(--text-tertiary);font-size:var(--font-xs)}.tax-profile-brackets{gap:var(--space-xs);flex-wrap:wrap;display:flex}.tax-profile-bracket-chip{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--bg-white);min-height:32px;color:var(--text-secondary);cursor:pointer;font-size:var(--font-xs);white-space:nowrap;transition:border-color var(--transition-normal), background var(--transition-normal), color var(--transition-normal);font-family:inherit;font-weight:500;display:flex}.tax-profile-bracket-chip:hover{border-color:var(--primary)}.tax-profile-bracket-chip.selected{border:2px solid var(--primary);background:var(--primary);color:var(--text-on-color)}.tax-profile-bracket-chip:disabled{cursor:wait}.tax-profile-rate{align-items:center;gap:var(--space-xs);font-size:var(--font-sm);justify-content:flex-end;min-width:55px;font-weight:500;display:flex}.tax-profile-rate.exact{color:var(--success)}.tax-profile-rate.bracket{color:var(--warning-dark)}.tax-profile-rate.unknown{color:var(--text-tertiary)}.tax-profile-marital-row{align-items:flex-end;gap:var(--space-lg);flex-wrap:wrap;display:flex}.tax-profile-marital-select{flex-direction:column;display:flex}.tax-profile-marital-select .form-input{padding:var(--space-xs) var(--space-sm);font-size:var(--font-sm)}.tax-profile-spouse-input{flex-direction:column;display:flex}.tax-profile-spouse-input .form-input{min-width:80px;max-width:120px;padding:var(--space-xs) var(--space-sm)}@media screen and (width<=600px){.tax-profile-income-row{gap:var(--space-xs)}.tax-profile-marital-row{align-items:stretch;gap:var(--space-sm);flex-direction:column}}.broker-grid{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}@media screen and (width<=768px){.broker-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (width<=480px){.broker-grid{grid-template-columns:1fr}}.broker-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md);transition:border-color var(--transition-normal), box-shadow var(--transition-normal)}.broker-card:hover{border-color:var(--primary-alpha-25);box-shadow:var(--shadow-sm)}.broker-card-header{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.broker-card-name{font-weight:600;font-size:var(--font-base);color:var(--text-primary)}.broker-card-format{font-size:var(--font-xs);padding:2px var(--space-md);border-radius:var(--radius-pill);white-space:nowrap;letter-spacing:.03em;font-weight:600}.broker-card-format--pdf{background:var(--warning-alpha-12);color:var(--status-warning-text)}.broker-card-format--csv{background:var(--success-alpha-10);color:var(--status-success-text)}.broker-card-format--json{background:var(--accent-alpha-10);color:var(--accent)}.broker-card-data{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.5}.broker-card-data span+span:before{content:" · ";color:var(--text-muted)}.broker-card-link{margin-top:var(--space-xs);font-size:var(--font-xs);color:var(--accent);transition:color var(--transition-fast);text-decoration:none;display:inline-block}.broker-card-link:hover{color:var(--primary);text-decoration:underline}.broker-card-export-link{align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);font-size:var(--font-xs);color:var(--primary);transition:color var(--transition-fast);text-decoration:none;display:inline-flex}.broker-card-export-link:hover{text-decoration:underline}.broker-export-guide{margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg);background:var(--primary-alpha-5);border:1px solid var(--primary-alpha-15);border-radius:var(--radius-lg);animation:.2s ease-out tab-panel-enter}.broker-export-header{font-size:var(--font-sm);color:var(--text-primary);margin-bottom:var(--space-sm);font-weight:600}.broker-export-steps{padding-left:var(--space-lg);gap:var(--space-xs);flex-direction:column;margin:0;list-style-type:decimal;display:flex}.broker-export-step{font-size:var(--font-sm);color:var(--text-primary);padding-left:var(--space-xs);line-height:1.5}.broker-export-step::marker{color:var(--primary);font-weight:600}.broker-export-footer{align-items:center;gap:var(--space-lg);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.broker-export-file-hint{align-items:center;gap:var(--space-xs);font-size:var(--font-xs);color:var(--text-secondary);display:flex}.broker-export-file-hint code{background:var(--bg-secondary);padding:1px var(--space-xs);border-radius:var(--radius-sm);font-size:var(--font-xs);color:var(--text-primary);font-family:monospace}.broker-export-link{align-items:center;gap:var(--space-xs);color:var(--primary);font-size:var(--font-xs);transition:opacity var(--transition-fast);font-weight:500;text-decoration:none;display:inline-flex}.broker-export-link:hover{opacity:.8;text-decoration:none}.broker-export-api-hint{align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);font-size:var(--font-xs);color:var(--text-secondary);padding-top:var(--space-sm);border-top:1px solid var(--primary-alpha-10);display:flex}[data-theme=dark] .broker-export-guide{background:var(--primary-alpha-10);border-color:var(--primary-alpha-20)}[data-theme=dark] .broker-export-file-hint code{background:var(--primary-alpha-15)}.tax-info-grid{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}@media screen and (width<=600px){.tax-info-grid{grid-template-columns:1fr}}.tax-info-item{padding:var(--space-sm) var(--space-md);border-left:3px solid var(--border);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--bg-secondary);transition:border-color var(--transition-fast)}.tax-info-item:hover{border-left-color:var(--primary)}.tax-info-item--cgt{border-left-color:var(--primary-alpha-30)}.tax-info-item--exit{border-left-color:var(--accent-alpha-30)}.tax-info-item--income{border-left-color:var(--alert-success-border)}.tax-info-item-type{font-weight:600;font-size:var(--font-sm);color:var(--text-primary);margin-bottom:2px}.tax-info-item-treatment{font-size:var(--font-sm);color:var(--text-secondary)}[data-theme=dark] .broker-card{background:var(--bg-secondary)}[data-theme=dark] .broker-card:hover{border-color:var(--primary-alpha-30)}[data-theme=dark] .broker-card-format--pdf{background:var(--warning-alpha-15);color:var(--status-warning-text)}[data-theme=dark] .broker-card-format--csv{background:var(--success-alpha-15);color:var(--status-success-text)}[data-theme=dark] .broker-card-format--json{background:var(--accent-alpha-20);color:var(--accent)}[data-theme=dark] .tax-info-item{background:var(--bg-secondary)}[data-theme=dark] .tax-info-item--cgt{border-left-color:var(--primary-alpha-30)}[data-theme=dark] .tax-info-item--exit{border-left-color:var(--accent-alpha-30)}[data-theme=dark] .tax-info-item--income{border-left-color:var(--alert-success-border)}.upload-status-cards-wrapper{margin-top:var(--space-md)}.upload-status-cards-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.upload-dismiss-all{color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none}.upload-dismiss-all:hover{color:var(--text-primary)}.upload-dismiss-all:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.upload-status-card{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-white);transition:background var(--transition-normal), border-color var(--transition-normal);animation:.3s ease-out upload-card-enter}@keyframes upload-card-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.upload-status-card--active{border-left:4px solid var(--primary)}.upload-status-card--success{border-left:4px solid var(--success);background:var(--success-alpha-10);animation:.3s ease-out upload-card-enter,.8s ease-out upload-success-flash}@keyframes upload-success-flash{0%{background:var(--success-alpha-15)}to{background:var(--success-alpha-10)}}.upload-status-card--error{border-left:4px solid var(--danger);background:var(--danger-alpha-10)}.upload-status-card--duplicates{border-left:4px solid var(--text-muted);background:var(--bg-secondary)}.upload-status-icon--duplicates{color:var(--text-muted);flex-shrink:0}.upload-status-header{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.upload-status-info{align-items:center;gap:var(--space-sm);flex-wrap:wrap;min-width:0;display:flex}.upload-status-broker{font-weight:600;font-size:var(--font-base);white-space:nowrap}.upload-status-filename{color:var(--text-secondary);font-size:var(--font-sm);text-overflow:ellipsis;white-space:nowrap;max-width:min(300px,40vw);overflow:hidden}.upload-status-year{background:var(--primary);color:var(--text-on-color);padding:2px var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:500}.upload-status-dupes{color:var(--warning);font-size:var(--font-sm)}.upload-status-cancel{color:var(--text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}.upload-status-cancel:hover{color:var(--text-primary);background:var(--bg-secondary)}.upload-status-cancel:focus-visible,.floating-upload-item:focus-visible,.floating-upload-clear:focus-visible,.modal-close:focus-visible{box-shadow:var(--focus-ring);outline:none}.upload-status-icon--success{color:var(--success);flex-shrink:0}.upload-status-icon--error{color:var(--danger);flex-shrink:0}.upload-progress-bar{background:var(--bg-secondary);border-radius:var(--radius-md);height:8px;margin:var(--space-sm) 0;overflow:hidden}.upload-progress-fill{background:linear-gradient(90deg, var(--primary) 0%, var(--primary-alpha-30) 50%, var(--primary) 100%);border-radius:var(--radius-sm);height:100%;transition:width var(--transition-slow);background-size:200% 100%;animation:1.5s ease-in-out infinite upload-progress-shimmer}@keyframes upload-progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.upload-progress-fill--indeterminate{width:40%;animation:1.5s ease-in-out infinite indeterminate-progress}.upload-status-footer{justify-content:space-between;align-items:center;display:flex}.upload-phase-label{font-size:var(--font-sm);color:var(--text-secondary);align-items:center;gap:var(--space-xs);display:flex}.upload-phase-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite upload-phase-pulse}@keyframes upload-phase-pulse{0%,to{opacity:1}50%{opacity:.3}}.upload-elapsed-time{font-size:var(--font-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums}.upload-queue-position{font-size:var(--font-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;padding:0 var(--space-xs);background:var(--bg-secondary);border-radius:var(--radius-sm);margin-left:var(--space-xs)}.upload-progress-percent{font-size:var(--font-sm);color:var(--primary);text-align:right;min-width:36px;font-weight:600}.upload-error-message{color:var(--danger);font-size:var(--font-sm);margin:var(--space-sm) 0 0 0}.upload-spinner{animation:1s linear infinite spin}.upload-error-details{margin:var(--space-sm) 0 0 0}.upload-error-details>summary{cursor:pointer;list-style:none}.upload-error-details>summary::marker{display:none}.upload-error-details>summary::-webkit-details-marker{display:none}.upload-error-details>summary:after{content:" Show more";color:var(--text-secondary);text-underline-offset:2px;font-weight:500;text-decoration:underline}.upload-error-details[open]>summary:after{content:""}.upload-error-full{color:var(--danger);font-size:var(--font-sm);margin:var(--space-xs) 0 0 0;padding:var(--space-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word}.upload-summary-badges{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.tx-badge{padding:3px var(--space-sm);border-radius:var(--radius-xl);font-size:var(--font-sm);align-items:center;gap:var(--space-xs);font-weight:500;display:inline-flex}.tx-badge--buy{background:var(--success-alpha-10);color:var(--success)}.tx-badge--sell{background:var(--danger-alpha-10);color:var(--danger)}.tx-badge--interest{background:var(--info-alpha-10);color:var(--info)}.tx-badge--dividends{background:var(--purple-alpha-10);color:var(--purple)}.tx-badge--learn,.tx-badge--staking,.tx-badge--rewards{background:var(--warning-alpha-10);color:var(--warning)}.delete-file-btn{color:var(--text-secondary);cursor:pointer;padding:var(--space-xs) var(--space-sm);font-size:var(--font-sm);border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}.delete-file-btn:hover,.delete-file-btn:focus-visible{color:var(--danger)}.data-source-list{gap:var(--space-md);flex-direction:column;display:flex}.data-source-group{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.data-source-header{padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.data-source-header-info{align-items:center;gap:var(--space-sm);display:flex}.data-source-broker-name{font-weight:600;font-size:var(--font-base)}.data-source-year-badge{background:var(--primary);color:var(--text-on-color);padding:2px var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:500}.data-source-file-count{color:var(--text-secondary);font-size:var(--font-xs)}.data-source-delete-all{border:1px solid var(--border);color:var(--danger);cursor:pointer;padding:2px var(--space-md);font-size:var(--font-xs);border-radius:var(--radius-sm);transition:background var(--transition-fast), border-color var(--transition-fast);background:0 0;font-weight:500}.data-source-delete-all:hover,.data-source-delete-all:focus-visible{background:var(--danger-alpha-10);border-color:var(--danger)}.data-source-row{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);grid-template-columns:1fr auto auto auto;display:grid}.data-source-row:last-of-type{border-bottom:none}.data-source-file{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.data-source-filename{font-weight:500;font-size:var(--font-sm);white-space:nowrap;text-overflow:ellipsis;max-width:min(350px,35vw);overflow:hidden}.data-source-note{font-size:var(--font-xs);color:var(--text-secondary);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;max-width:150px;padding:2px var(--space-xs);border-radius:var(--radius-sm);transition:background var(--transition-fast);overflow:hidden}.data-source-note:hover{background:var(--bg-secondary)}.data-source-date{color:var(--text-secondary);font-size:var(--font-xs);white-space:nowrap}.data-source-stats{align-items:center;gap:var(--space-xs);flex-shrink:0;display:flex}.data-source-records{color:var(--text-secondary);font-size:var(--font-xs)}.data-source-actions{flex-shrink:0;align-items:center;gap:0;display:flex}.data-source-note-edit{gap:var(--space-xs);padding-bottom:var(--space-xs);grid-column:1/-1;align-items:center;display:flex}.data-source-note-input{padding:var(--space-xs) var(--space-sm);font-size:var(--font-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-white);outline:none;flex:1}.data-source-note-input:focus{border-color:var(--primary);box-shadow:var(--focus-ring)}.data-source-note-save{background:var(--primary);color:var(--text-on-color);cursor:pointer;padding:var(--space-xs) var(--space-sm);font-size:var(--font-sm);border-radius:var(--radius-sm);border:none;font-weight:500}.data-source-note-cancel{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;padding:var(--space-xs) var(--space-sm);font-size:var(--font-sm);border-radius:var(--radius-sm);background:0 0}.data-source-footer{margin-top:var(--space-sm);font-size:var(--font-xs);color:var(--text-secondary)}.data-source-stats .tx-badge{padding:2px var(--space-xs);font-size:var(--font-xs)}@media screen and (width<=768px){.data-source-row{gap:var(--space-xs) var(--space-sm);grid-template-columns:1fr auto}.data-source-file{grid-column:1}.data-source-actions{grid-area:1/2}.data-source-date{display:none}.data-source-stats{grid-column:1/-1}.data-source-filename{max-width:60vw}.data-source-note-edit{grid-column:1/-1}}.backup-action-bar{justify-content:space-between;align-items:center;display:flex}.backup-toggle-btn{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);font-weight:500;display:flex}.backup-toggle-btn:hover{background:var(--primary-alpha-5);color:var(--text-primary)}.backup-toggle-btn.expanded{background:var(--primary-alpha-5);color:var(--text-primary);border-color:var(--primary)}.backup-toggle-chevron{font-size:var(--font-xs);transition:transform var(--transition-fast);display:inline-block}.backup-toggle-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.backup-toggle-btn.expanded .backup-toggle-chevron{transform:rotate(180deg)}.backup-delete-all-btn{padding:var(--space-xs) var(--space-sm);border:1px solid var(--danger);border-radius:var(--radius-md);color:var(--danger);font-size:var(--font-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;font-weight:500}.backup-delete-all-btn:hover{background:var(--danger);color:var(--text-on-color)}.backup-delete-all-btn:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.backup-panel{margin-top:var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-secondary);overflow:hidden}.backup-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);grid-template-columns:auto auto 1fr auto;display:grid}.backup-item:last-of-type{border-bottom:none}.backup-item-date{font-size:var(--font-sm);color:var(--text-primary);white-space:nowrap;font-weight:500}.backup-trigger-badge{padding:1px var(--space-xs);border-radius:var(--radius-sm);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.02em;font-weight:600;display:inline-block}.backup-trigger-badge--auto_clear{background:var(--accent-alpha-10);color:var(--primary)}.backup-trigger-badge--manual{background:var(--success-alpha-10);color:var(--status-success-text)}.backup-item-counts{font-size:var(--font-xs);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.backup-item-actions{gap:var(--space-xs);align-items:center;display:flex}.backup-restore-btn{padding:2px var(--space-sm);border:1px solid var(--primary);border-radius:var(--radius-sm);color:var(--primary);font-size:var(--font-xs);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;font-weight:500}.backup-restore-btn:hover{background:var(--primary);color:var(--text-on-color)}.backup-restore-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.backup-delete-btn{padding:2px var(--space-xs);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--font-sm);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none}.backup-delete-btn:hover{color:var(--danger)}.backup-delete-btn:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.backup-panel-footer{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);background:var(--bg-primary);justify-content:space-between;align-items:center;display:flex}.backup-create-btn{padding:var(--space-xs) var(--space-sm);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);background:0 0}.backup-create-btn:hover{border-color:var(--primary);color:var(--primary)}.backup-create-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.backup-create-btn:disabled{opacity:.6;cursor:not-allowed}.backup-slots-label{font-size:var(--font-xs);color:var(--text-muted)}.backup-empty{padding:var(--space-md);text-align:center;color:var(--text-muted);font-size:var(--font-sm)}.backup-restoring-overlay{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-2xl) var(--space-lg);color:var(--text-secondary);font-size:var(--font-base);flex-direction:column;display:flex}.backup-restoring-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@media screen and (width<=768px){.backup-item{gap:var(--space-xs);grid-template-columns:1fr auto}.backup-item-counts{grid-column:1/-1}.backup-panel-footer{gap:var(--space-xs);flex-direction:column}}.floating-upload-indicator{bottom:calc(var(--space-lg) + 80px);right:var(--space-lg);z-index:var(--z-floating);width:min(300px, calc(100vw - var(--space-lg) * 2));background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);animation:.2s ease-out floating-indicator-slide-in;position:fixed;overflow:hidden}@keyframes floating-indicator-slide-in{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.floating-upload-header{padding:var(--space-sm) var(--space-md);background:var(--primary);color:var(--text-on-color);font-size:var(--font-sm);justify-content:space-between;align-items:center;font-weight:600;display:flex}.floating-upload-header-toggle{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;min-width:0;padding:0;display:flex}.floating-upload-header-toggle:focus-visible{outline-offset:2px;border-radius:var(--radius-sm);outline:2px solid #fff}.floating-upload-header-actions{align-items:center;gap:var(--space-xs);flex-shrink:0;display:flex}.floating-upload-close{color:inherit;cursor:pointer;border-radius:var(--radius-sm);opacity:.7;transition:opacity var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.floating-upload-close:hover{opacity:1}.floating-upload-close:focus-visible{outline-offset:1px;outline:2px solid #fff}.floating-upload-body{padding:var(--space-sm) var(--space-md)}.floating-upload-item{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;font-size:var(--font-sm);cursor:pointer;text-align:left;width:100%;color:var(--text-primary);border-radius:var(--radius-sm);background:0 0;border:none;display:flex}.floating-upload-item:hover{background:var(--bg-secondary)}.floating-upload-item-info{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.floating-upload-item-label{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.floating-upload-item-filename{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-xs);color:var(--text-secondary);font-weight:400;overflow:hidden}.floating-upload-item-progress{align-items:center;gap:var(--space-xs);flex-shrink:0;display:flex}.floating-upload-mini-bar{background:var(--bg-secondary);border-radius:2px;width:48px;height:4px;overflow:hidden}.floating-upload-mini-fill{background:var(--primary);height:100%;transition:width var(--transition-slow);border-radius:2px}.floating-upload-mini-fill--indeterminate{width:40%;animation:1.5s ease-in-out infinite indeterminate-progress}@keyframes indeterminate-progress{0%{transform:translate(-100%)}to{transform:translate(220%)}}.floating-upload-item-percent{font-size:var(--font-xs);color:var(--text-secondary);text-align:right;min-width:28px}.floating-upload-item-status{font-size:var(--font-xs);color:var(--text-secondary);flex-shrink:0}.floating-upload-spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:1s linear infinite spin}.floating-upload-phase{font-size:var(--font-xs);color:var(--text-secondary);padding:2px 0 var(--space-xs) 0;border-top:1px solid var(--border);margin-top:var(--space-xs)}.floating-upload-clear{justify-content:center;align-items:center;gap:var(--space-xs);width:100%;padding:var(--space-xs) 0;margin-top:var(--space-xs);border:none;border-top:1px solid var(--border);color:var(--text-secondary);font-size:var(--font-xs);cursor:pointer;transition:color var(--transition-fast);background:0 0;display:flex}.floating-upload-clear:hover{color:var(--text-primary)}@media (width<=480px){.floating-upload-indicator{left:0;right:0;bottom:calc(var(--space-lg) + 60px);border-radius:var(--radius-lg);width:100%;max-height:50vh}.floating-upload-body{overflow-y:auto}.floating-upload-header{padding:var(--space-md)}}@media (prefers-reduced-motion:reduce){.upload-spinner,.floating-upload-spinner,.upload-zone.active,.upload-zone-active-icon,.upload-phase-dot,.tab-upload-count,.upload-status-card,.floating-upload-indicator,.floating-upload-mini-fill--indeterminate,.upload-progress-fill--indeterminate{animation:none}.upload-progress-fill,.floating-upload-mini-fill{transition:none}.floating-upload-mini-fill--indeterminate,.upload-progress-fill--indeterminate{width:100%;transform:none}.upload-zone.active{transform:none}}[data-reveal]{opacity:0;transition:opacity var(--transition-reveal), transform var(--transition-reveal);transform:translateY(32px)}[data-reveal].revealed{opacity:1;transform:translateY(0)}[data-reveal-delay="1"]{transition-delay:.12s}[data-reveal-delay="2"]{transition-delay:.24s}[data-reveal-delay="3"]{transition-delay:.36s}[data-reveal-delay="4"]{transition-delay:.48s}[data-reveal=left]{opacity:0;transition:opacity var(--transition-reveal), transform var(--transition-reveal);transform:translate(-48px)}[data-reveal=left].revealed{opacity:1;transform:translate(0)}[data-reveal=right]{opacity:0;transition:opacity var(--transition-reveal), transform var(--transition-reveal);transform:translate(48px)}[data-reveal=right].revealed{opacity:1;transform:translate(0)}[data-reveal=scale]{opacity:0;filter:blur(6px);transition:opacity var(--transition-reveal), transform var(--transition-reveal), filter var(--transition-reveal);transform:scale(.88)}[data-reveal=scale].revealed{opacity:1;filter:blur();transform:scale(1)}[data-reveal=blur]{opacity:0;filter:blur(12px);transition:opacity 1s var(--ease-out-expo), filter 1s var(--ease-out-expo)}[data-reveal=blur].revealed{opacity:1;filter:blur()}[data-reveal=left][data-reveal-delay="1"],[data-reveal=right][data-reveal-delay="1"],[data-reveal=scale][data-reveal-delay="1"],[data-reveal=blur][data-reveal-delay="1"]{transition-delay:.12s}[data-reveal=left][data-reveal-delay="2"],[data-reveal=right][data-reveal-delay="2"],[data-reveal=scale][data-reveal-delay="2"],[data-reveal=blur][data-reveal-delay="2"]{transition-delay:.24s}@media (prefers-reduced-motion:reduce){[data-reveal],[data-reveal=left],[data-reveal=right],[data-reveal=scale],[data-reveal=blur]{opacity:1;filter:none;transition:none;transform:none}.landing-hero,.landing-hero-orb{animation:none}.landing-hero-title,.landing-hero-subtitle,.landing-hero-actions,.landing-hero-note,.landing-hero-trust{opacity:1;filter:none;animation:none;transform:none}.landing-hero-btn-primary:after{animation:none;display:none}.landing-hero-trust-dot,.landing-calc-card:hover:before,.landing-pricing-card-featured,.landing-pain-icon{animation:none}.landing-sticky-cta,.landing-example-step{transition:none}.landing-example-step:hover{transform:none}}.container:has(.landing-page){max-width:none;margin:0;padding:0}.landing-page{width:100%;overflow-x:hidden}.landing-header{z-index:var(--z-nav);padding:var(--space-sm) var(--container-padding);padding-top:calc(var(--space-sm) + env(safe-area-inset-top,0px));transition:background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal);will-change:backdrop-filter;background:0 0;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.landing-header-scrolled{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom-color:var(--glass-border);box-shadow:var(--shadow-sm)}.landing-header-inner{max-width:var(--container-max);justify-content:space-between;align-items:center;gap:var(--space-md);margin:0 auto;display:flex}.landing-header-brand{align-items:center;gap:var(--space-sm);font-weight:700;font-size:var(--font-lg);color:var(--text-on-color);transition:color .3s var(--ease-out-expo);display:flex}.landing-header-scrolled .landing-header-brand{color:var(--text-primary)}.landing-header-nav{align-items:center;gap:var(--space-xl);display:none}.landing-header-navlink{padding:var(--space-xs) 0;font-size:var(--font-sm);color:var(--dark-bg-text-body);cursor:pointer;transition:color .2s var(--ease-out-expo);background:0 0;border:none;font-weight:500;position:relative}.landing-header-navlink:after{content:"";transform-origin:50%;width:100%;height:2px;transition:transform .25s var(--ease-spring);background:currentColor;border-radius:1px;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.landing-header-navlink:hover{color:var(--text-on-color)}.landing-header-navlink:hover:after{transform:scaleX(1)}.landing-header-navlink-active{color:var(--text-on-color)}.landing-header-navlink-active:after{background:var(--accent);transform:scaleX(1)}.landing-header-scrolled .landing-header-navlink{color:var(--text-secondary)}.landing-header-scrolled .landing-header-navlink:hover{color:var(--primary)}.landing-header-scrolled .landing-header-navlink:hover:after{background:var(--primary)}.landing-header-scrolled .landing-header-navlink-active{color:var(--primary)}.landing-header-scrolled .landing-header-navlink-active:after{background:var(--primary)}.landing-header-actions{align-items:center;gap:var(--space-sm);display:flex}.landing-header-btn{border-radius:var(--radius-md);font-size:var(--font-sm);cursor:pointer;transition:background .2s var(--ease-out-expo), border-color .2s var(--ease-out-expo), color .2s var(--ease-out-expo), box-shadow .2s var(--ease-out-expo), transform .25s var(--ease-spring);justify-content:center;align-items:center;padding:clamp(8px,1.2vw,10px) clamp(14px,2.5vw,20px);font-weight:500;display:inline-flex}.landing-header-btn:hover{transform:translateY(-1px)}.landing-header-btn:active{transition-duration:.1s;transform:translateY(0)}.landing-header-btn-login{background:var(--dark-bg-glass-strong);border:1px solid var(--dark-bg-border-strong);color:var(--text-on-color)}.landing-header-btn-login:hover{border-color:var(--dark-bg-text-muted);background:#ffffff38}.landing-header-scrolled .landing-header-btn-login{background:var(--bg-secondary);border-color:var(--border);color:var(--text-primary)}.landing-header-scrolled .landing-header-btn-login:hover{background:var(--bg-secondary);border-color:var(--primary);color:var(--primary)}.landing-header-btn-signup{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);color:var(--text-on-color);box-shadow:0 0 12px var(--accent-alpha-30), 0 1px 2px #0000001a;border:1px solid #0000}.landing-header-btn-signup:hover{box-shadow:0 0 20px var(--accent-alpha-30), 0 4px 12px var(--accent-alpha-20)}.landing-header-btn-demo{color:var(--dark-bg-text-emphasis);border:1px solid var(--dark-bg-border-medium);background:0 0}.landing-header-btn-demo:hover{background:var(--dark-bg-glass);border-color:var(--accent-alpha-30)}.landing-header-btn-demo:disabled{opacity:.6;cursor:wait}.landing-header-scrolled .landing-header-btn-demo{border-color:var(--border);color:var(--text-primary);background:0 0}.landing-header-scrolled .landing-header-btn-demo:hover{background:var(--bg-secondary);border-color:var(--primary);color:var(--primary)}.landing-theme-toggle{border:1px solid var(--dark-bg-border-medium);background:var(--dark-bg-glass);width:44px;height:44px;color:var(--dark-bg-text-heading);cursor:pointer;transition:background .2s var(--ease-out-expo), border-color .2s var(--ease-out-expo), color .2s var(--ease-out-expo), transform .25s var(--ease-spring);border-radius:50%;justify-content:center;align-items:center;display:flex}.landing-theme-toggle:hover{background:var(--dark-bg-border-light);color:var(--text-on-color);transform:scale(1.05)}.landing-header-scrolled .landing-theme-toggle{border-color:var(--border);background:var(--bg-secondary);color:var(--text-secondary)}.landing-header-scrolled .landing-theme-toggle:hover{color:var(--primary);border-color:var(--primary)}.landing-header-navlink:focus-visible,.landing-header-btn:focus-visible,.landing-theme-toggle:focus-visible,.landing-hamburger-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.landing-header-scrolled .landing-header-navlink:focus-visible,.landing-header-scrolled .landing-header-btn:focus-visible,.landing-header-scrolled .landing-theme-toggle:focus-visible,.landing-header-scrolled .landing-hamburger-btn:focus-visible{outline-color:var(--primary)}.landing-hamburger-btn{padding:var(--space-sm);cursor:pointer;color:var(--text-on-color);min-width:44px;min-height:44px;transition:color var(--transition-normal);background:0 0;border:none;display:none}.landing-header-scrolled .landing-hamburger-btn{color:var(--text-primary)}.landing-mobile-backdrop{background:var(--overlay);z-index:var(--z-landing-backdrop);position:fixed;inset:0}.landing-mobile-menu{z-index:var(--z-landing-menu);background:linear-gradient(180deg, var(--dark-bg-deep) 0%, var(--dark-bg-base) 100%);padding:70px var(--container-padding) var(--space-xl);transition:transform var(--transition-medium);position:fixed;top:0;left:0;right:0;transform:translateY(-100%);box-shadow:0 4px 20px #0000004d}.landing-mobile-menu-open{transform:translateY(0)}.landing-mobile-nav{gap:var(--space-xs);margin-bottom:var(--space-lg);flex-direction:column;display:flex}.landing-mobile-link{text-align:left;width:100%;padding:var(--space-md);min-height:44px;color:var(--dark-bg-text-heading);font-size:var(--font-lg);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-normal), color var(--transition-normal), border-color var(--transition-normal);background:0 0;border:none;border-left:3px solid #0000;font-weight:500;display:block}.landing-mobile-link:hover{background:var(--dark-bg-border);color:var(--text-on-color)}.landing-mobile-link-active{color:var(--text-on-color);background:var(--accent-alpha-15);border-left-color:var(--accent)}.landing-mobile-actions{gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--dark-bg-glass-highlight);flex-direction:column;display:flex}.landing-mobile-full-width{width:100%}.landing-hero{background-image:radial-gradient(circle at center, #ffffff08 1px, transparent 1px), radial-gradient(ellipse 80% 60% at 50% 40%, rgba(var(--accent-rgb), .08) 0%, transparent 70%), linear-gradient(145deg, var(--dark-bg-deep) 0%, var(--dark-bg-mid) 40%, var(--dark-bg-base) 100%);color:var(--text-on-color);padding:clamp(140px, calc(10vw + 60px), 220px) var(--container-padding) calc(clamp(60px, 8vw, 100px) + var(--hero-clip-depth));text-align:center;clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--hero-clip-depth)), 0 100%);margin-bottom:calc(var(--hero-clip-depth) * -1);background-size:24px 24px,200% 200%,200% 200%;justify-content:center;align-items:center;animation:12s ease-in-out infinite hero-gradient-shift;display:flex;position:relative;overflow:hidden}.landing-hero-glow{background:radial-gradient(ellipse, rgba(var(--accent-rgb), .1) 0%, transparent 70%);pointer-events:none;width:600px;height:400px;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}.landing-hero-orb{pointer-events:none;opacity:.07;filter:blur(60px);border-radius:50%;animation:20s ease-in-out infinite hero-orb-float;position:absolute}.landing-hero-orb--1{background:var(--info);width:300px;height:300px;animation-duration:18s;top:10%;left:10%}.landing-hero-orb--2{background:var(--purple);width:200px;height:200px;animation-duration:22s;animation-delay:-5s;top:60%;right:15%}.landing-hero-orb--3{background:var(--success);width:250px;height:250px;animation-duration:25s;animation-delay:-10s;bottom:10%;left:40%}.landing-hero-content{z-index:1;width:100%;max-width:760px;position:relative}.landing-hero-title{font-size:var(--font-hero);letter-spacing:-.035em;background:var(--landing-hero-shimmer);-webkit-text-fill-color:transparent;animation:hero-text-reveal 1s var(--ease-out-expo) both, hero-title-shimmer 6s linear 2s infinite;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;margin-bottom:clamp(16px,3vw,28px);font-weight:800;line-height:1.05}.landing-hero-subtitle{font-size:var(--font-hero-subtitle);color:var(--dark-bg-text-body);max-width:600px;animation:hero-text-reveal 1s var(--ease-out-expo) .15s both;margin-bottom:clamp(24px,4vw,40px);margin-left:auto;margin-right:auto;line-height:1.7}.landing-hero-actions{gap:var(--space-md);animation:hero-text-reveal 1s var(--ease-out-expo) .3s both;flex-direction:column;justify-content:center;align-items:center;margin-bottom:clamp(20px,3vw,32px);display:flex}.landing-hero-btn-primary{min-height:52px;padding:var(--space-md) clamp(32px, 5vw, 48px);font-size:var(--font-lg);color:var(--text-on-color);background:var(--landing-cta-bg);border-radius:var(--radius-xl);cursor:pointer;letter-spacing:-.01em;box-shadow:0 0 20px rgba(var(--accent-rgb), .3), 0 4px 12px rgba(var(--accent-rgb), .2);transition:transform .25s var(--ease-spring), box-shadow .3s var(--ease-out-expo), background-position .4s var(--ease-out-expo);background-position:0%;background-size:200% 200%;border:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.landing-hero-btn-primary:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--dark-bg-border-light) 50%, transparent 100%);pointer-events:none;width:50%;height:100%;animation:3s ease-in-out 2s infinite btn-shimmer;position:absolute;top:0;left:0;transform:translate(-200%)}.landing-hero-btn-primary:hover{box-shadow:0 0 40px rgba(var(--accent-rgb), .4), 0 8px 24px rgba(var(--accent-rgb), .3);background-position:100%;transform:translateY(-2px)}.landing-hero-btn-primary:active{transition-duration:.1s;transform:translateY(0)}.landing-hero-btn-demo{min-height:52px;padding:var(--space-md) clamp(32px, 5vw, 48px);font-size:var(--font-lg);color:var(--dark-bg-text-emphasis);border:2px solid var(--dark-bg-border-medium);border-radius:var(--radius-xl);cursor:pointer;letter-spacing:-.01em;transition:background .25s var(--ease-out-expo), border-color .25s var(--ease-out-expo), transform .25s var(--ease-spring);background:0 0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.landing-hero-btn-demo:hover{background:var(--dark-bg-glass);border-color:var(--accent-alpha-30);transform:translateY(-2px)}.landing-hero-btn-demo:active{transition-duration:.1s;transform:translateY(0)}.landing-hero-btn-demo:disabled{opacity:.6;cursor:wait}.landing-hero-btn-secondary{min-height:52px;padding:var(--space-md) clamp(32px, 5vw, 48px);font-size:var(--font-lg);color:var(--dark-bg-text-emphasis);background:var(--dark-bg-glass);border:1px solid var(--dark-bg-border-medium);border-radius:var(--radius-xl);cursor:pointer;letter-spacing:-.01em;transition:background .25s var(--ease-out-expo), border-color .25s var(--ease-out-expo), transform .25s var(--ease-spring);justify-content:center;align-items:center;font-weight:500;display:inline-flex}.landing-hero-btn-secondary:hover{background:var(--dark-bg-glass-strong);border-color:#ffffff59;transform:translateY(-2px)}.landing-hero-btn-secondary:active{transition-duration:.1s;transform:translateY(0)}.landing-hero-note{font-size:var(--font-sm);color:var(--dark-bg-text);animation:hero-text-reveal .8s var(--ease-out-expo) .5s both;margin-bottom:clamp(24px,4vw,40px)}.landing-hero-trust{justify-content:center;align-items:center;gap:var(--space-sm) var(--space-lg);font-size:var(--font-sm);color:#ffffff73;letter-spacing:.02em;text-transform:uppercase;animation:hero-text-reveal .8s var(--ease-out-expo) .6s both;flex-wrap:wrap;font-weight:500;display:flex}.landing-hero-trust-dot{background:#ffffff4d;border-radius:50%;width:4px;height:4px;animation:2.5s ease-in-out infinite trust-dot-pulse}.landing-hero-trust-dot:nth-child(4){animation-delay:.8s}.landing-section{padding:var(--section-padding) var(--container-padding);width:100%;scroll-margin-top:72px;position:relative}.landing-section+.landing-section:not(.landing-calculators):before{content:"";background:linear-gradient(90deg, transparent 0%, var(--border) 30%, var(--border) 70%, transparent 100%);pointer-events:none;height:1px;position:absolute;top:0;left:10%;right:10%}.landing-section-inner{max-width:var(--section-inner-max);z-index:1;margin:0 auto;position:relative}.landing-section-title{text-align:center;margin-bottom:var(--space-lg);letter-spacing:-.025em;background:var(--title-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.75rem,1.5rem + 1.5vw,2.5rem);font-weight:700;line-height:1.15}.landing-section-subtitle{text-align:center;font-size:var(--font-lg);color:var(--text-secondary);max-width:560px;margin:0 auto clamp(40px,6vw,64px);line-height:1.7}.landing-pain-points{background:var(--bg-white)}.landing-pain-list{flex-direction:column;gap:clamp(12px,2vw,20px);max-width:680px;margin:0 auto;display:flex}.landing-pain-item{gap:var(--space-lg);padding:var(--space-lg);border-radius:var(--radius-xl);transition:background .3s var(--ease-out-expo);align-items:flex-start;display:flex}.landing-pain-item:hover{background:var(--primary-alpha-5)}.landing-pain-icon{border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;margin-top:2px;animation:3s ease-in-out infinite icon-subtle-pulse;display:flex}.landing-pain-item:nth-child(2) .landing-pain-icon{animation-delay:.5s}.landing-pain-item:nth-child(3) .landing-pain-icon{animation-delay:1s}.landing-pain-item:nth-child(4) .landing-pain-icon{animation-delay:1.5s}.landing-pain-icon--danger{background-color:var(--danger-alpha-10);color:var(--danger)}.landing-pain-icon--warning{background-color:var(--warning-alpha-10);color:var(--warning)}.landing-pain-icon--accent{background-color:var(--accent-alpha-10);color:var(--accent)}.landing-pain-icon--purple{background-color:var(--purple-alpha-10);color:var(--purple)}.landing-pain-title{font-size:var(--font-base);margin-bottom:var(--space-xs);color:var(--text-primary);font-weight:600}.landing-pain-text{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.6}.landing-how-it-works{background:radial-gradient(ellipse 50% 40% at 50% 60%, var(--primary-alpha-5) 0%, transparent 70%), var(--bg-white)}.landing-steps{gap:var(--space-2xl);flex-direction:column;max-width:900px;margin:0 auto;padding-left:44px;display:flex;position:relative}.landing-steps:before{content:"";background:linear-gradient(180deg, var(--primary), var(--accent));border-radius:1px;width:2px;position:absolute;top:28px;bottom:28px;left:28px}.landing-step{text-align:left;z-index:1;padding:var(--space-md);border-radius:var(--radius-xl);transition:background .3s var(--ease-out-expo);position:relative}.landing-step:hover{background:var(--primary-alpha-5)}.landing-step-number{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);width:56px;height:56px;color:var(--text-on-color);font-size:var(--font-2xl);margin:0 0 var(--space-md);box-shadow:0 4px 16px rgba(var(--primary-rgb), .25), 0 0 0 4px rgba(var(--accent-rgb), .1);transition:transform .3s var(--ease-spring), box-shadow .3s var(--ease-out-expo);border-radius:50%;justify-content:center;align-items:center;margin-right:-44px;font-weight:700;display:flex;position:relative;left:-44px}.landing-step:hover .landing-step-number{box-shadow:0 6px 20px rgba(var(--primary-rgb), .3), 0 0 0 6px rgba(var(--accent-rgb), .15);transform:scale(1.08)}.landing-step-title{font-size:var(--font-xl);margin-bottom:var(--space-sm);color:var(--text-primary);font-weight:600}.landing-step-text{font-size:var(--font-base);color:var(--text-secondary);line-height:1.6}.landing-calculators{background:radial-gradient(ellipse 60% 40% at 50% 30%, rgba(var(--accent-rgb), .06) 0%, transparent 70%), linear-gradient(145deg, var(--dark-bg-deep) 0%, var(--dark-bg-mid) 50%, var(--dark-bg-base) 100%);padding-bottom:calc(var(--section-padding) + var(--hero-clip-depth));clip-path:polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--hero-clip-depth)));margin-bottom:calc(var(--hero-clip-depth) * -1);position:relative;overflow:hidden}.landing-dark-title{background:linear-gradient(135deg, white 0%, var(--text-tertiary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-dark-subtitle{color:var(--dark-bg-text)}.landing-hero:after,.landing-cta:after,.landing-calculators:after,.landing-footer:after{content:"";opacity:.03;pointer-events:none;mix-blend-mode:overlay;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:256px 256px;position:absolute;inset:0}.landing-hero:before,.landing-calculators:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(70% 60%,#0000 40%,#00000040 100%);position:absolute;inset:0}.landing-calc-grid{gap:var(--space-lg);grid-template-columns:1fr;display:grid}.landing-calc-card{-webkit-backdrop-filter:blur(8px);border:1px solid var(--dark-bg-border);border-radius:var(--radius-xl);transition:transform .35s var(--ease-spring), background .3s var(--ease-out-expo), border-color .3s var(--ease-out-expo);background:#ffffff0d;padding:clamp(20px,3vw,32px);position:relative}.landing-calc-card:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;opacity:0;transition:opacity var(--transition-medium);background:0 0;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.landing-calc-card:hover{background:#ffffff14;border-color:#0000;transform:translateY(-4px)}.landing-calc-card:hover:before{opacity:1;background:conic-gradient(from var(--border-angle,0deg), rgba(var(--accent-rgb), .6), #a855f799, #10b98199, rgba(var(--accent-rgb), .6));animation:3s linear infinite border-gradient-rotate}.landing-calc-rate{width:64px;height:64px;margin-bottom:var(--space-md);border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.landing-calc-rate--green{background-color:var(--success-alpha-15);color:var(--success);box-shadow:0 0 12px var(--success-alpha-15)}.landing-calc-rate--amber{background-color:var(--warning-alpha-15);color:var(--warning);box-shadow:0 0 12px var(--warning-alpha-15)}.landing-calc-rate--blue{background-color:var(--accent-alpha-15);color:var(--accent);box-shadow:0 0 12px var(--accent-alpha-15)}.landing-calc-rate--purple{background-color:var(--purple-alpha-15);color:var(--purple-light);box-shadow:0 0 12px var(--purple-alpha-15)}.landing-calc-rate--teal{background-color:var(--teal-alpha-15);color:var(--teal-light);box-shadow:0 0 12px var(--teal-alpha-15)}.landing-calc-title{font-size:var(--font-lg);margin-bottom:var(--space-sm);color:var(--text-on-color);font-weight:600}.landing-calc-text{font-size:var(--font-base);color:var(--dark-bg-text);margin-bottom:var(--space-md);line-height:1.6}.landing-calc-tag{font-size:var(--font-xs);color:var(--dark-bg-text-heading);background:var(--dark-bg-glass-highlight);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-pill);border:1px solid var(--dark-bg-border);letter-spacing:.01em;font-weight:600;display:inline-block}.landing-features{background:radial-gradient(ellipse 60% 40% at 30% 30%, var(--primary-alpha-5) 0%, transparent 70%), var(--bg-white)}.landing-bento-grid{gap:var(--space-lg);grid-template-columns:1fr;display:grid}.landing-bento-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-xl);transition:transform .35s var(--ease-spring), box-shadow .35s var(--ease-out-expo), border-color .35s var(--ease-out-expo);padding:clamp(20px,3vw,32px)}.landing-bento-card:hover{box-shadow:0 16px 40px rgba(var(--primary-rgb), .12), 0 0 0 1px var(--primary-alpha-20);border-color:var(--primary-alpha-30);transform:translateY(-4px)}.landing-bento-card--wide{background:linear-gradient(135deg, var(--bg-white) 0%, var(--bg-secondary) 100%);border-color:var(--primary-alpha-15);box-shadow:0 2px 8px var(--primary-alpha-5)}.landing-feature-icon{background:var(--primary-alpha-10);border-radius:var(--radius-lg);width:48px;height:48px;margin-bottom:var(--space-lg);color:var(--primary);transition:transform .4s var(--ease-spring), background .4s var(--ease-out-expo);justify-content:center;align-items:center;display:flex}.landing-bento-card:hover .landing-feature-icon{background:var(--primary-alpha-20);transform:scale(1.1)rotate(-3deg)}.landing-feature-title{font-size:var(--font-lg);margin-bottom:var(--space-sm);color:var(--text-primary);font-weight:600}.landing-feature-text{font-size:var(--font-base);color:var(--text-secondary);line-height:1.6}.landing-scope{background:var(--bg-white)}.landing-scope-grid{gap:var(--space-lg);grid-template-columns:1fr;max-width:1100px;margin:0 auto;display:grid}.landing-scope-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-xl);gap:var(--space-lg);box-shadow:var(--shadow-card);flex-direction:column;padding:clamp(20px,3vw,32px);display:flex}.landing-scope-card-header{align-items:center;gap:var(--space-sm);padding-bottom:var(--space-md);border-bottom:1px solid var(--border);display:flex}.landing-scope-card-icon{border-radius:50%;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;display:flex}.landing-scope-card-icon--success{background-color:var(--success-alpha-10);color:var(--success)}.landing-scope-card-icon--muted{background-color:var(--bg-secondary);color:var(--text-muted)}.landing-scope-card-label{font-size:var(--font-lg);color:var(--text-primary);font-weight:600}.landing-scope-card-excluded .landing-scope-card-label{color:var(--text-muted)}.landing-scope-list{gap:var(--space-md);flex-direction:column;display:flex}.landing-scope-item{align-items:flex-start;gap:var(--space-sm);display:flex}.landing-scope-item-icon{margin-top:var(--space-xs);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.landing-scope-item-icon--success{color:var(--success)}.landing-scope-item-icon--muted{color:var(--text-muted);opacity:.5}.landing-scope-item-content{flex:1;min-width:0}.landing-scope-item-title{font-size:var(--font-base);color:var(--text-primary);margin-bottom:var(--space-xs);font-weight:600}.landing-scope-item-description{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.5}.landing-brokers{background:radial-gradient(ellipse 50% 50% at 50% 50%, var(--primary-alpha-5) 0%, transparent 70%), var(--bg-white)}.landing-broker-strip{justify-content:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.landing-broker-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-white);color:var(--text-secondary);cursor:default;transition:transform .3s var(--ease-spring), border-color .3s var(--ease-out-expo), box-shadow .3s var(--ease-out-expo), background .3s var(--ease-out-expo);display:flex}.landing-broker-item:hover{border-color:var(--primary-alpha-30);box-shadow:0 4px 16px var(--primary-alpha-10), 0 0 0 1px var(--primary-alpha-10);background:var(--primary-alpha-5);transform:translateY(-2px)}.landing-broker-item:hover .landing-broker-name{color:var(--primary)}.landing-broker-name{font-weight:600;font-size:var(--font-sm);color:var(--text-primary);transition:color .2s var(--ease-out-expo)}.landing-broker-format{font-size:var(--font-xs);color:var(--text-muted);background:var(--bg-secondary);padding:2px var(--space-sm);border-radius:var(--radius-pill);font-weight:600}.landing-broker-note{text-align:center;font-size:var(--font-sm);color:var(--text-muted)}.landing-pricing{background:radial-gradient(ellipse 60% 40% at 70% 50%, var(--accent-alpha-10) 0%, transparent 70%), var(--bg-white)}.landing-pricing-grid{gap:var(--space-lg);grid-template-columns:1fr;max-width:800px;margin:0 auto;display:grid}.landing-pricing-card{background:var(--bg-white);border:2px solid var(--border);border-radius:var(--radius-xl);transition:transform .4s var(--ease-spring), box-shadow .4s var(--ease-out-expo), border-color .4s var(--ease-out-expo);flex-direction:column;padding:clamp(24px,4vw,40px);display:flex;position:relative}.landing-pricing-card:hover{box-shadow:0 20px 48px rgba(var(--primary-rgb), .14);border-color:var(--primary-alpha-30);transform:translateY(-6px)}.landing-pricing-card-featured{box-shadow:var(--shadow-md), 0 0 24px var(--glow-accent);border-color:#0000;animation:3s ease-in-out infinite pricing-glow-pulse}.landing-pricing-card-featured:after{content:"";background:linear-gradient(90deg, var(--primary), var(--accent));border-radius:var(--radius-xl) var(--radius-xl) 0 0;height:4px;position:absolute;top:0;left:0;right:0}.landing-pricing-badge{background:linear-gradient(90deg, var(--primary), var(--accent));color:var(--text-on-color);padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-pill);font-size:var(--font-sm);white-space:nowrap;z-index:1;font-weight:600;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.landing-pricing-tier{font-size:var(--font-xl);margin-bottom:var(--space-md);color:var(--text-primary);text-align:center;font-weight:700}.landing-pricing-price{text-align:center;margin-bottom:var(--space-sm)}.landing-pricing-amount{color:var(--primary);letter-spacing:-.03em;font-size:clamp(2rem,1.5rem + 2.5vw,3rem);font-weight:800}.landing-pricing-period{font-size:var(--font-base);color:var(--text-secondary);margin-left:var(--space-xs)}.landing-pricing-value{text-align:center;font-size:var(--font-sm);color:var(--text-muted);margin-bottom:var(--space-xl)}.landing-pricing-features{margin:0 0 var(--space-xl) 0;flex-grow:1;padding:0;list-style:none}.landing-pricing-features li{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) 0;font-size:var(--font-base);color:var(--text-primary);display:flex}.landing-pricing-features li svg{color:var(--success);flex-shrink:0;margin-top:2px}.landing-pricing-feature-muted{color:var(--text-muted);opacity:.8}.landing-pricing-feature-muted svg{color:var(--text-muted)!important}.landing-pricing-btn{width:100%;min-height:48px}.landing-faq{background:radial-gradient(ellipse 60% 40% at 30% 50%, var(--primary-alpha-5) 0%, transparent 70%), var(--bg-light)}.landing-faq-list{max-width:800px;margin:0 auto}.landing-faq-item{border-bottom:1px solid var(--border);transition:border-color .3s var(--ease-out-expo), background .3s var(--ease-out-expo);border-left:3px solid #0000}.landing-faq-item:hover:not(.landing-faq-item-active){background:var(--primary-alpha-5)}.landing-faq-item-active{border-left-color:var(--primary);background:var(--primary-alpha-8);box-shadow:inset 0 1px 0 var(--primary-alpha-10)}.landing-faq-question{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-lg) var(--space-md);font-size:var(--font-base);color:var(--text-primary);text-align:left;cursor:pointer;min-height:48px;transition:color .2s var(--ease-out-expo);background:0 0;border:none;font-weight:600;display:flex}.landing-faq-question:hover{color:var(--primary)}.landing-faq-icon{transition:transform .35s var(--ease-spring);color:var(--primary);flex-shrink:0}.landing-faq-icon-open{transform:rotate(180deg)}.landing-faq-answer{max-height:0;transition:max-height .4s var(--ease-out-expo);overflow:hidden}.landing-faq-answer-inner{padding:0 var(--space-md) var(--space-lg);font-size:var(--font-base);color:var(--text-secondary);line-height:1.6}.landing-cta{background-image:radial-gradient(circle at center, #ffffff08 1px, transparent 1px), radial-gradient(ellipse 80% 60% at 50% 50%, rgba(var(--accent-rgb), .08) 0%, transparent 70%), linear-gradient(145deg, var(--dark-bg-deep) 0%, var(--dark-bg-mid) 40%, var(--dark-bg-base) 100%);padding:var(--section-padding) var(--container-padding);text-align:center;color:var(--text-on-color);background-size:24px 24px,100% 100%,100% 100%;position:relative;overflow:hidden}.landing-cta-glow{background:radial-gradient(ellipse, rgba(var(--accent-rgb), .12) 0%, #a855f70a 50%, transparent 70%);pointer-events:none;width:600px;height:400px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-cta-title{margin-bottom:var(--space-md);letter-spacing:-.025em;background:linear-gradient(135deg, white 0%, var(--text-tertiary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.5rem,1.2rem + 1.5vw,2.25rem);font-weight:700;position:relative}.landing-cta-subtitle{font-size:var(--font-lg);color:var(--dark-bg-text);margin-bottom:clamp(24px,4vw,40px);line-height:1.7;position:relative}.landing-cta-btn{margin-bottom:var(--space-md);position:relative}.landing-cta-note{font-size:var(--font-sm);color:var(--dark-bg-text-muted);position:relative}.landing-footer{background-image:radial-gradient(circle at center, #ffffff08 1px, transparent 1px), linear-gradient(180deg, var(--dark-bg-deep) 0%, var(--dark-bg-subtle) 30%, var(--dark-bg-deepest) 100%);color:var(--dark-bg-text-bright);padding:0 var(--container-padding) var(--space-lg);background-size:24px 24px,100% 100%;margin-right:calc(-100vw + 100%);position:relative;overflow:hidden}.landing-footer-accent{background:linear-gradient(90deg, transparent 0%, rgba(var(--accent-rgb), .3) 20%, rgba(var(--accent-rgb), .6) 50%, rgba(var(--accent-rgb), .3) 80%, transparent 100%);height:2px;margin-bottom:var(--space-xl);box-shadow:0 1px 12px var(--accent-alpha-15), 0 0 40px rgba(var(--accent-rgb), .05)}.landing-footer-orb{background:radial-gradient(ellipse, rgba(var(--accent-rgb), .06) 0%, transparent 70%);pointer-events:none;filter:blur(40px);z-index:0;width:400px;height:250px;position:absolute;bottom:-50px;right:-100px}.landing-footer-inner{max-width:var(--container-max);z-index:1;margin:0 auto;position:relative}.landing-footer-top{gap:var(--space-xl);padding-bottom:var(--space-xl);flex-direction:column;display:flex;position:relative}.landing-footer-top:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--dark-bg-border-light) 20%, var(--dark-bg-border-light) 80%, transparent 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.landing-footer-brand{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.landing-footer-brand img{opacity:1;filter:drop-shadow(0 0 6px var(--accent-alpha-30))}.landing-footer-brand-name{font-size:var(--font-lg);background:linear-gradient(135deg, white 0%, var(--text-tertiary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-weight:700}.landing-footer-tagline{width:100%;font-size:var(--font-sm);color:var(--dark-bg-text);margin:0}.landing-footer-columns{gap:var(--space-lg) var(--space-2xl);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.landing-footer-col{gap:var(--space-xs);flex-direction:column;display:flex}.landing-footer-col-title{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--dark-bg-text);margin:0 0 var(--space-xs) 0;font-weight:600}.landing-footer-link{color:var(--dark-bg-text);font-size:var(--font-sm);cursor:pointer;min-height:36px;transition:color var(--transition-fast);text-align:left;background:0 0;border:none;align-items:center;padding:0;text-decoration:none;display:flex;position:relative}.landing-footer-link:after{content:"";background:linear-gradient(90deg, var(--accent), #a855f799);width:0;height:1px;transition:width .3s var(--ease-standard);position:absolute;bottom:50%;left:0;transform:translateY(calc(50% + 10px))}.landing-footer-link:hover{color:var(--dark-bg-text-bright)}.landing-footer-link:hover:after{width:100%}.landing-footer-bottom{padding-top:var(--space-sm);gap:var(--space-xs);font-size:var(--font-xs);color:var(--dark-bg-text-muted);text-align:center;flex-direction:column;display:flex}.landing-footer-bottom p{margin:0}.landing-footer-disclaimer{justify-content:center;align-items:center;gap:var(--space-xs);display:flex}.landing-footer-disclaimer svg{color:var(--warning);opacity:.7;flex-shrink:0}.landing-footer-trust{justify-content:center;gap:var(--space-sm) var(--space-md);padding:var(--space-md) 0;flex-wrap:wrap;display:flex}.landing-footer-trust-badge{align-items:center;gap:var(--space-xs);font-size:var(--font-xs);color:var(--dark-bg-text);background:var(--dark-bg-glass);border:1px solid var(--dark-bg-border);border-radius:var(--radius-pill);padding:var(--space-xs) var(--space-sm);white-space:nowrap;display:flex}.landing-footer-trust-badge svg{opacity:.85;color:var(--accent);flex-shrink:0}.app-footer{border-top:1px solid var(--border);padding:0 var(--container-padding)}.app-footer-inner{max-width:var(--container-max);padding:var(--space-sm) 0;justify-content:space-between;align-items:center;gap:var(--space-md);margin:0 auto;display:flex}.app-footer-copy{color:var(--text-muted);font-size:var(--font-xs);white-space:nowrap}.app-footer-links{align-items:center;gap:var(--space-md);display:flex}.app-footer-link{color:var(--text-muted);font-size:var(--font-xs);transition:color var(--transition-fast);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none}.app-footer-link:hover{color:var(--text-primary)}.app-footer-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}@media screen and (width<=640px){.app-footer-inner{gap:var(--space-xs);padding:var(--space-sm) 0;flex-direction:column}.app-footer-links{justify-content:center;gap:var(--space-sm);flex-wrap:wrap}}.landing-tax-example{background:var(--bg-light)}.landing-example-persona{align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl);padding:var(--space-md) var(--space-lg);background:var(--bg-white);border:1px solid var(--primary-alpha-15);border-radius:var(--radius-xl);max-width:420px;box-shadow:0 2px 12px var(--primary-alpha-10);margin-left:auto;margin-right:auto;display:flex}.landing-example-avatar{background:linear-gradient(135deg, var(--primary), var(--accent));width:48px;height:48px;color:var(--text-on-color);font-weight:700;font-size:var(--font-xl);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.landing-example-name{font-weight:600;font-size:var(--font-lg);color:var(--text-primary)}.landing-example-role{font-size:var(--font-sm);color:var(--text-secondary)}.landing-example-portfolio{gap:var(--space-sm);margin-bottom:var(--space-xl);grid-template-columns:repeat(2,1fr);max-width:700px;margin-left:auto;margin-right:auto;display:grid}.landing-example-holding{padding:var(--space-md);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;transition:transform .3s var(--ease-spring), border-color .3s var(--ease-out-expo), box-shadow .3s var(--ease-out-expo)}.landing-example-holding:hover{border-color:var(--primary-alpha-20);box-shadow:0 4px 12px var(--primary-alpha-10);transform:translateY(-2px)}.landing-example-holding-name{font-weight:600;font-size:var(--font-base);color:var(--text-primary)}.landing-example-holding-desc{font-size:var(--font-xs);color:var(--text-muted);margin-top:2px}.landing-example-holding-detail{font-size:var(--font-xs);color:var(--text-muted)}.landing-example-holding-value{font-weight:600;font-size:var(--font-lg);color:var(--text-primary);margin-top:var(--space-xs)}.landing-example-steps{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:1fr;display:grid}.landing-example-step{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);transition:transform .35s var(--ease-spring), box-shadow .35s var(--ease-out-expo);padding:clamp(20px,3vw,32px)}.landing-example-step:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.landing-example-step-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.landing-example-step-type{font-weight:600;font-size:var(--font-lg);color:var(--text-primary)}.landing-example-step-asset{font-size:var(--font-sm);color:var(--text-secondary)}.landing-example-step-desc{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-md);line-height:1.5}.landing-example-step-calc{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.landing-example-step-calc-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.landing-example-step-calc code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:var(--font-sm);color:var(--text-primary);font-weight:500}.landing-example-step-result{margin-bottom:var(--space-md);justify-content:space-between;align-items:baseline;display:flex}.landing-example-step-amount{font-size:var(--font-2xl);color:var(--text-primary);font-weight:700}.landing-example-step-deadline{font-size:var(--font-sm);color:var(--text-muted)}.landing-example-step-highlight{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--alert-warning-bg);border-left:3px solid var(--warning);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--font-sm);color:var(--text-secondary);line-height:1.5;display:flex}.landing-example-step-highlight svg{color:var(--warning);flex-shrink:0;margin-top:2px}.landing-example-total{background:var(--bg-white);border:2px solid var(--primary);border-radius:var(--radius-xl);text-align:center;box-shadow:0 8px 32px var(--primary-alpha-10), 0 0 0 1px var(--primary-alpha-5);padding:clamp(24px,4vw,40px);position:relative;overflow:hidden}.landing-example-total:after{content:"";background:linear-gradient(90deg, var(--primary), var(--accent));height:3px;position:absolute;top:0;left:0;right:0}.landing-example-total-stats{justify-content:center;gap:var(--space-2xl);margin-bottom:var(--space-lg);display:flex}.landing-example-total-stat{flex-direction:column;align-items:center;display:flex}.landing-example-total-value{font-size:var(--font-3xl);color:var(--primary);font-weight:700}.landing-example-total-label{font-size:var(--font-sm);color:var(--text-muted);margin-top:var(--space-xs)}.landing-example-total-cta{font-size:var(--font-lg);color:var(--text-secondary);margin:0}.landing-example-total-cta strong{color:var(--text-primary)}.landing-compare{background:var(--bg-light);overflow:hidden}.landing-compare-table-wrap{margin:0 calc(-1 * var(--container-padding));padding:0 var(--container-padding);-webkit-mask-image:linear-gradient(90deg, transparent 0, black var(--container-padding), black calc(100% - 24px), transparent 100%);mask-image:linear-gradient(90deg, transparent 0, black var(--container-padding), black calc(100% - 24px), transparent 100%);-webkit-mask-image:linear-gradient(90deg, transparent 0, black var(--container-padding), black calc(100% - 24px), transparent 100%);overflow-x:auto}.landing-compare-table{border-collapse:collapse;width:100%;min-width:700px;font-size:var(--font-sm)}.landing-compare-table tbody tr{transition:background .2s var(--ease-out-expo)}.landing-compare-table tbody tr:hover{background:var(--primary-alpha-5)}.landing-compare-table th,.landing-compare-table td{padding:var(--space-sm) var(--space-md);text-align:center;border-bottom:1px solid var(--border)}.landing-compare-table thead th{font-weight:600;font-size:var(--font-sm);color:var(--text-primary);padding-top:var(--space-md);padding-bottom:var(--space-md);white-space:nowrap}.landing-compare-feature-col{background:var(--bg-white);z-index:2;min-width:180px;position:sticky;left:0;text-align:left!important}[data-theme=dark] .landing-compare-feature-col{background:var(--bg-primary)}.landing-compare-feature-col:after{content:"";background:linear-gradient(90deg, var(--bg-white), transparent);pointer-events:none;width:8px;position:absolute;top:0;bottom:0;right:-8px}[data-theme=dark] .landing-compare-feature-col:after{background:linear-gradient(90deg, var(--bg-primary), transparent)}.landing-compare-feature-name{color:var(--text-primary);font-weight:500}.landing-compare-feature-desc{font-size:var(--font-xs);color:var(--text-muted);margin-top:2px}.landing-compare-col-highlight{background:var(--primary-alpha-5);position:relative}thead .landing-compare-col-highlight{background:var(--primary-alpha-10);color:var(--primary);border-top:2px solid var(--primary);box-shadow:0 -4px 12px var(--primary-alpha-10);font-weight:700}.landing-compare-yes{color:var(--success);filter:drop-shadow(0 0 4px var(--success-alpha-15))}.landing-compare-no{color:var(--text-muted);opacity:.3}.landing-compare-partial{border-radius:var(--radius-pill);background:var(--alert-warning-bg);width:24px;height:24px;color:var(--warning);font-weight:700;font-size:var(--font-sm);justify-content:center;align-items:center;display:inline-flex}.landing-compare-text{color:var(--text-primary);white-space:nowrap;font-weight:500}.landing-sticky-cta{z-index:var(--z-sticky);background:var(--dark-bg-deep);border-top:1px solid var(--dark-bg-border-light);padding:var(--space-sm) var(--space-md);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom,0px));transition:transform var(--transition-medium);display:none;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.landing-sticky-cta-visible{transform:translateY(0)}.landing-sticky-cta-inner{justify-content:center;align-items:center;gap:var(--space-md);max-width:var(--container-max);margin:0 auto;display:flex}.landing-sticky-cta-text{color:var(--dark-bg-text);font-size:var(--font-sm);white-space:nowrap;font-weight:500}.landing-sticky-cta-btn{background:var(--primary);color:var(--text-on-color);border-radius:var(--radius-pill);padding:var(--space-sm) var(--space-lg);font-size:var(--font-sm);cursor:pointer;white-space:nowrap;transition:background .2s var(--ease-out-expo), transform .2s var(--ease-spring), box-shadow .2s var(--ease-out-expo);border:none;font-weight:600}.landing-sticky-cta-btn:hover{background:var(--accent-dark);box-shadow:0 4px 12px rgba(var(--accent-rgb), .3);transform:translateY(-1px)}.landing-sticky-cta-btn:active{transform:translateY(0)}.landing-sticky-cta-btn-demo{background:0 0;border:1px solid #ffffff4d}.landing-sticky-cta-btn-demo:hover{background:#ffffff1a}.landing-sticky-cta-close{color:var(--dark-bg-text-muted);cursor:pointer;padding:var(--space-xs);transition:color var(--transition-fast);background:0 0;border:none;align-items:center;display:flex}.landing-sticky-cta-close:hover{color:var(--text-on-color)}@media screen and (width<=479px){.landing-sticky-cta-text{display:none}.landing-example-total-stats{gap:var(--space-md);flex-direction:column}}.landing-back-to-top{bottom:var(--space-xl);right:var(--space-xl);border:1px solid var(--dark-bg-border-light);width:44px;height:44px;-webkit-backdrop-filter:blur(var(--glass-blur));will-change:opacity, transform, backdrop-filter;color:var(--dark-bg-text-body);cursor:pointer;opacity:0;transition:opacity .3s var(--ease-out-expo), transform .3s var(--ease-spring), background .2s var(--ease-out-expo), border-color .2s var(--ease-out-expo);pointer-events:none;z-index:var(--z-popover);background:#0c1929d9;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;transform:translateY(16px)}.landing-back-to-top-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.landing-back-to-top:hover{border-color:rgba(var(--accent-rgb), .4);color:var(--text-on-color);background:#0c1929f2;transform:translateY(-2px)}.landing-back-to-top:active{transform:translateY(0)}@media screen and (width>=768px){.landing-hero-actions{flex-direction:row}.landing-steps{gap:var(--space-lg);flex-direction:row;align-items:flex-start;padding-left:0}.landing-steps:before{content:"";background:linear-gradient(90deg, var(--primary), var(--accent));border-radius:1px;width:auto;height:2px;position:absolute;inset:28px calc(16.67% + 28px) auto}[data-theme=dark] .landing-steps:before{background:linear-gradient(90deg, var(--info), var(--accent))}.landing-step{text-align:center;flex:1}.landing-step-number{margin-right:0;margin:0 auto var(--space-md);left:0}.landing-calc-grid{grid-template-columns:repeat(2,1fr)}.landing-bento-grid{grid-template-columns:repeat(3,1fr)}.landing-bento-card--wide{grid-column:span 2}.landing-pricing-grid,.landing-scope-grid{grid-template-columns:repeat(2,1fr)}.landing-cta-title{font-size:var(--font-3xl)}.landing-footer-top{flex-direction:row;justify-content:space-between;align-items:flex-start}.landing-footer-brand{flex:0 0 35%;max-width:360px}.landing-footer-columns{justify-content:flex-end;gap:var(--space-2xl);flex:0 0 55%;display:flex}.landing-footer-link{min-height:unset}.landing-example-steps{grid-template-columns:repeat(2,1fr)}.landing-example-portfolio{grid-template-columns:repeat(4,1fr)}.landing-compare-table{min-width:0}.landing-compare-table-wrap{margin:0;padding:0;-webkit-mask-image:none;mask-image:none}.landing-compare-feature-col:after{display:none}.landing-footer-bottom{text-align:left;flex-direction:row;justify-content:space-between;align-items:flex-start}}@media screen and (width<=480px){.landing-footer-columns{gap:var(--space-md);grid-template-columns:repeat(2,1fr)}.landing-footer-trust{gap:var(--space-xs)}.landing-footer-trust-badge{font-size:var(--font-xs);padding:2px var(--space-xs)}}@media screen and (width<=1023px){.landing-hamburger-btn{justify-content:center;align-items:center;display:flex}.landing-header-actions{margin-left:auto}.landing-header-actions .landing-header-btn{display:none}.landing-sticky-cta{display:block}.landing-page{padding-bottom:64px}.landing-back-to-top{bottom:calc(var(--space-xl) + 60px)}}@media screen and (width>=1024px){.landing-header-nav{display:flex}.landing-calc-grid{grid-template-columns:repeat(6,1fr)}.landing-calc-card:first-child,.landing-calc-card:nth-child(2),.landing-calc-card:nth-child(3){grid-column:span 2}.landing-calc-card:nth-child(4){grid-column:2/4}.landing-calc-card:nth-child(5){grid-column:4/6}.landing-section-title{font-size:clamp(2rem,1.5rem + 2vw,2.75rem)}}@keyframes btn-shimmer{0%{transform:translate(-200%)}to{transform:translate(400%)}}@keyframes trust-dot-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.7;transform:scale(1.5)}}@keyframes hero-gradient-shift{0%,to{background-position:24px 24px,0 0,0 0}50%{background-position:24px 24px,100% 100%,100% 100%}}@keyframes hero-orb-float{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.05)}66%{transform:translate(-20px,15px)scale(.95)}}@keyframes hero-text-reveal{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-title-shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pricing-glow-pulse{0%,to{box-shadow:var(--shadow-md), 0 0 24px var(--glow-accent)}50%{box-shadow:var(--shadow-md), 0 0 40px var(--glow-accent), 0 0 60px rgba(var(--accent-rgb), .05)}}@keyframes icon-subtle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@property --border-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes border-gradient-rotate{0%{--border-angle:0deg}to{--border-angle:360deg}}[data-theme=dark] .landing-header-scrolled{border-bottom-color:var(--dark-bg-glass);background:#0a0b10e6;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .landing-mobile-menu{background:linear-gradient(180deg, var(--dark-bg-deepest) 0%, var(--dark-bg-deep) 100%)}[data-theme=dark] .landing-mobile-link-active{background:var(--accent-alpha-15)}[data-theme=dark] .auth-modal{background:var(--bg-primary);border:1px solid var(--border)}[data-theme=dark] .landing-pain-points{background:var(--bg-primary)}[data-theme=dark] .landing-pricing-card{background:var(--bg-secondary);border-color:var(--dark-bg-glass-highlight);box-shadow:var(--shadow-md)}[data-theme=dark] .landing-how-it-works,[data-theme=dark] .landing-pricing{background:var(--bg-primary)}[data-theme=dark] .landing-faq{background:radial-gradient(ellipse 60% 40% at 30% 50%, var(--accent-alpha-10) 0%, transparent 70%), var(--bg-light)}[data-theme=dark] .landing-faq-item{border-bottom-color:var(--border)}[data-theme=dark] .landing-footer{background-image:radial-gradient(circle at center, #ffffff05 1px, transparent 1px), linear-gradient(180deg, var(--dark-bg-deepest) 0%, var(--dark-bg-subtle) 30%, var(--dark-bg-deepest) 100%);background-size:24px 24px,100% 100%}[data-theme=dark] .landing-footer-accent{background:linear-gradient(90deg, transparent 0%, rgba(var(--accent-rgb), .2) 20%, rgba(var(--accent-rgb), .4) 50%, rgba(var(--accent-rgb), .2) 80%, transparent 100%)}[data-theme=dark] .landing-feature-icon{background:var(--primary-alpha-15);color:var(--primary)}[data-theme=dark] .landing-pain-icon--danger{background-color:var(--danger-alpha-15)}[data-theme=dark] .landing-pain-icon--warning{background-color:var(--warning-alpha-15)}[data-theme=dark] .landing-pain-icon--accent{background-color:var(--accent-alpha-15)}[data-theme=dark] .landing-pain-icon--purple{background-color:var(--purple-alpha-15)}[data-theme=dark] .landing-steps:before{background:linear-gradient(180deg, var(--info), var(--accent))}[data-theme=dark] .landing-step-number{background:linear-gradient(135deg, var(--info) 0%, var(--accent) 100%);box-shadow:0 4px 12px rgba(var(--accent-rgb), .3)}[data-theme=dark] .landing-calculators{background:radial-gradient(ellipse 60% 40% at 50% 30%, rgba(var(--accent-rgb), .08) 0%, transparent 70%), linear-gradient(145deg, var(--dark-bg-deepest) 0%, var(--dark-bg-mid) 50%, var(--dark-bg-deep) 100%)}[data-theme=dark] .landing-calc-card{border-color:var(--dark-bg-glass);box-shadow:var(--shadow-md);background:#ffffff0a}[data-theme=dark] .landing-calc-rate--green{background-color:var(--success-alpha-15);color:var(--success)}[data-theme=dark] .landing-calc-rate--amber{background-color:var(--warning-alpha-15);color:var(--warning)}[data-theme=dark] .landing-calc-rate--blue{background-color:var(--primary-alpha-15);color:var(--primary)}[data-theme=dark] .landing-calc-rate--purple{background-color:var(--purple-alpha-15);color:var(--purple-light)}[data-theme=dark] .landing-calc-rate--teal{background-color:var(--teal-alpha-15);color:var(--teal-light)}[data-theme=dark] .landing-calc-tag{background:var(--primary-alpha-15);color:var(--primary)}[data-theme=dark] .landing-features{background:var(--bg-primary)}[data-theme=dark] .landing-bento-card{background:var(--bg-secondary);border-color:var(--dark-bg-border)}[data-theme=dark] .landing-bento-card--wide{background:linear-gradient(135deg, var(--bg-secondary) 0%, #252736b3 100%);border-color:var(--primary-alpha-20)}[data-theme=dark] .landing-brokers,[data-theme=dark] .landing-scope{background:var(--bg-primary)}[data-theme=dark] .landing-scope-card{background:var(--bg-secondary)}[data-theme=dark] .landing-scope-card-icon--muted{background-color:var(--dark-bg-glass)}[data-theme=dark] .landing-broker-item{background:var(--bg-secondary);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-pill);border:1px solid var(--dark-bg-glass)}[data-theme=dark] .landing-broker-format{background:var(--accent-alpha-15);color:var(--primary)}[data-theme=dark] .landing-pricing{background:radial-gradient(ellipse 60% 40% at 70% 50%, var(--accent-alpha-10) 0%, transparent 70%), var(--bg-primary)}[data-theme=dark] .landing-pricing-card-featured:after,[data-theme=dark] .landing-pricing-badge{background:linear-gradient(90deg, var(--info), var(--accent))}[data-theme=dark] .landing-tax-example,[data-theme=dark] .landing-compare{background:radial-gradient(ellipse 60% 40% at 50% 50%, var(--accent-alpha-10) 0%, transparent 70%), var(--bg-light)}[data-theme=dark] .landing-cta{border-top:1px solid var(--dark-bg-glass)}.auth-modal{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-width:min(420px,95vw);max-height:calc(100vh - 32px);box-shadow:var(--shadow-xl);padding:clamp(16px,4vw,32px);position:relative;overflow-y:auto}.auth-modal-close{top:var(--space-sm);right:var(--space-sm);cursor:pointer;color:var(--text-secondary);padding:var(--space-sm);border-radius:var(--radius-sm);min-width:44px;min-height:44px;transition:color var(--transition-normal), background var(--transition-normal);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.auth-modal-close:hover{color:var(--text-primary);background:var(--bg-secondary)}.auth-modal-close:focus-visible{box-shadow:var(--focus-ring);outline:none}@media screen and (width<=480px){.auth-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%;max-height:calc(100vh - 48px)}}.auth-page{min-height:calc(100vh - 80px);padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.auth-container{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-width:min(420px,95vw);box-shadow:var(--shadow-lg);padding:clamp(16px,4vw,32px)}.auth-header{text-align:center;margin-bottom:var(--space-xl)}.auth-header h1,.auth-header h2{font-size:var(--font-2xl);color:var(--primary);margin:0 0 var(--space-sm);font-weight:700}.auth-header p{color:var(--text-secondary);margin:0}.auth-title{font-size:var(--font-lg);color:var(--text-primary);margin:var(--space-md) 0 0;text-align:center;font-weight:600}.google-signin-container{margin-top:var(--space-md)}.google-button-wrapper{justify-content:center;display:flex}.auth-divider{text-align:center;margin:var(--space-lg) 0;color:var(--text-secondary);font-size:var(--font-sm);align-items:center;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border);flex:1}.auth-divider span{padding:0 var(--space-md)}.auth-form{margin-top:var(--space-md)}.auth-form .form-group{margin-bottom:var(--space-lg)}.auth-form .form-label{align-items:center;gap:var(--space-xs);display:flex}.auth-form .form-hint{margin-top:var(--space-xs);color:var(--text-secondary);font-size:var(--font-xs);display:block}.chart-skeleton{gap:var(--space-sm);padding:var(--space-lg) 0;flex-direction:column;display:flex}.chart-skeleton-bar{background:var(--bg-secondary);border-radius:var(--radius-sm);height:20px;animation:1.5s ease-in-out infinite skeleton-pulse}.chart-skeleton-bar:first-child{width:60%}.chart-skeleton-bar:nth-child(2){width:80%}.chart-skeleton-bar:nth-child(3){width:45%}.chart-skeleton-bar:nth-child(4){width:70%}.chart-skeleton-bar:nth-child(5){width:55%}@media (prefers-reduced-motion:reduce){.chart-skeleton-bar{opacity:.5;animation:none}}.edit-transaction-modal{max-width:min(520px,100vw - 32px);position:relative}.edit-transaction-title{margin:0 0 var(--space-lg) 0;font-size:var(--font-xl);color:var(--text-primary);font-weight:600}.modal-asset-context{padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-lg)}.modal-asset-context-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);display:flex}.modal-asset-name{color:var(--text-primary);font-weight:600;font-size:var(--font-base)}.modal-asset-meta{font-size:var(--font-sm);color:var(--text-muted);padding-left:calc(var(--space-sm) + 36px)}.transaction-type-badge{min-width:32px;padding:2px var(--space-sm);border-radius:var(--radius-pill);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.5px;justify-content:center;align-items:center;font-weight:700;line-height:1.4;display:inline-flex}.transaction-type-badge--buy{background:var(--alert-success-bg);color:var(--status-success-text)}.transaction-type-badge--sell{background:var(--alert-error-bg);color:var(--danger)}.edit-transaction-field{margin-bottom:var(--space-md)}.edit-transaction-field .form-input{width:100%}.edit-transaction-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.edit-transaction-preview{align-items:center;gap:var(--space-lg);padding:var(--space-md);background:var(--accent-alpha-10);border-radius:var(--radius-lg);margin-bottom:var(--space-md);font-size:var(--font-sm);color:var(--text-primary);display:flex}.edit-transaction-actions{justify-content:flex-end;gap:var(--space-sm);padding-top:var(--space-sm);display:flex}@media screen and (width<=480px){.edit-transaction-grid{grid-template-columns:1fr}.modal-asset-meta{padding-left:0}.edit-transaction-preview{align-items:flex-start;gap:var(--space-xs);flex-direction:column}.edit-transaction-actions{flex-direction:column-reverse}.edit-transaction-actions .btn{width:100%}.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-actions button{width:100%}}@keyframes addEntryBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes addEntrySlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.add-entry-backdrop{background:var(--overlay);z-index:var(--z-modal);padding:var(--space-md);justify-content:center;align-items:center;animation:.2s ease-out addEntryBackdropFadeIn;display:flex;position:fixed;inset:0}.add-entry-modal{max-width:min(580px,100vw - 32px);max-height:90vh;animation:.25s ease-out addEntrySlideUp;position:relative;overflow-y:auto}.add-entry-title{margin:0 0 var(--space-md) 0;font-size:var(--font-xl);color:var(--text-primary);font-weight:600}.add-entry-mode-toggle{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-xs);margin-bottom:var(--space-lg);gap:var(--space-xs);display:flex}.add-entry-mode-btn{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);background:0 0;border:none;flex:1;font-weight:500}.add-entry-mode-btn:hover:not(.active):not(:disabled){color:var(--text-primary);background:var(--primary-alpha-5)}.add-entry-mode-btn.active{background:var(--primary);color:var(--text-on-color);box-shadow:var(--shadow-sm)}.add-entry-mode-btn:disabled{opacity:.6;cursor:not-allowed}.add-entry-field{margin-bottom:var(--space-md)}.add-entry-field .form-input{width:100%}.add-entry-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.add-entry-tax-info{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-xs);margin-bottom:var(--space-md);border-left:3px solid}.add-entry-tax-info--cgt{background:var(--alert-success-bg);border-color:var(--status-success-text);color:var(--status-success-text)}.add-entry-tax-info--dirt{background:var(--accent-alpha-10);border-color:var(--accent);color:var(--accent)}.add-entry-tax-info--income{background:var(--alert-warning-bg);border-color:var(--alert-warning-border);color:var(--text-primary)}.add-entry-preview{align-items:center;gap:var(--space-lg);padding:var(--space-md);background:var(--accent-alpha-10);border-radius:var(--radius-lg);margin-bottom:var(--space-md);font-size:var(--font-sm);color:var(--text-primary);display:flex}.add-entry-actions{justify-content:flex-end;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--border);margin-top:var(--space-sm);background:var(--bg-white);padding-bottom:var(--space-xs);display:flex;position:sticky;bottom:0}.add-entry-toggle-notes{align-items:center;gap:var(--space-xs);color:var(--accent);font-size:var(--font-sm);cursor:pointer;margin-bottom:var(--space-md);background:0 0;border:none;padding:0;display:inline-flex}.add-entry-toggle-notes:hover{color:var(--primary)}.field-hint{font-size:var(--font-xs);color:var(--text-muted);margin-top:var(--space-xs);display:block}.field-hint-error{font-size:var(--font-xs);color:var(--danger);margin-top:var(--space-xs);display:block}.form-input.field-error{border-color:var(--danger)}.form-input.field-error:focus{box-shadow:var(--focus-ring-error)}.asset-autocomplete,.asset-autocomplete-input-wrap{position:relative}.asset-autocomplete-input.asset-autocomplete-locked{background:var(--bg-secondary);font-weight:500}.asset-autocomplete-clear{right:var(--space-sm);color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;padding:2px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.asset-autocomplete-clear:hover{color:var(--danger);background:var(--alert-error-bg)}.asset-autocomplete-dropdown{z-index:10;margin-top:var(--space-xs);border-radius:var(--radius-lg);max-height:320px;margin-bottom:0;list-style:none;top:100%;left:0;right:0;overflow-y:auto}.asset-autocomplete-option:hover,.asset-autocomplete-option.focused{background:var(--bg-secondary)}.asset-autocomplete-option-main{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.asset-autocomplete-option-name{font-size:var(--font-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.asset-autocomplete-option-isin{font-size:var(--font-xs);color:var(--text-muted);margin-top:1px}.asset-autocomplete-match{color:var(--primary);font-weight:700}.asset-badge{padding:1px var(--space-xs);border-radius:var(--radius-pill);font-size:var(--font-xxs);letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;flex-shrink:0;align-items:center;font-weight:600;display:inline-flex}.asset-badge--stock{background:var(--accent-alpha-10);color:var(--accent)}.asset-badge--etf{background:var(--alert-success-bg);color:var(--status-success-text)}.asset-badge--fund{background:var(--alert-warning-bg);color:var(--alert-warning-border)}.asset-badge--crypto{background:var(--badge-crypto-bg);color:var(--badge-crypto-text)}.asset-badge--bond,.asset-badge--cash{background:var(--bg-secondary);color:var(--text-muted)}.broker-combobox,.broker-combobox-input-wrap{position:relative}.broker-combobox-clear{right:var(--space-sm);color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;padding:2px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.broker-combobox-clear:hover{color:var(--danger);background:var(--alert-error-bg)}.broker-combobox-clear:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.broker-combobox-dropdown{z-index:10;margin-top:var(--space-xs);border-radius:var(--radius-lg);max-height:240px;margin-bottom:0;list-style:none;top:100%;left:0;right:0;overflow-y:auto}.broker-combobox-option{font-size:var(--font-sm);color:var(--text-primary)}.broker-combobox-option:hover,.broker-combobox-option.focused{background:var(--bg-secondary)}.broker-combobox-option:focus-visible{background:var(--bg-secondary);outline:none}.broker-combobox-option.selected{color:var(--primary);font-weight:600}@media screen and (width<=480px){.add-entry-backdrop{align-items:flex-end;padding:0}.add-entry-modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-width:100%;max-height:92vh;padding-bottom:calc(var(--space-lg) + env(safe-area-inset-bottom,0px))}.add-entry-grid{grid-template-columns:1fr}.add-entry-preview{align-items:flex-start;gap:var(--space-xs);flex-direction:column}.add-entry-actions{flex-direction:column-reverse}.add-entry-actions .btn{width:100%}}[data-theme=dark] .add-entry-actions{background:var(--bg-primary)}[data-theme=dark] .asset-autocomplete-dropdown,[data-theme=dark] .broker-combobox-dropdown{background:var(--bg-secondary);border-color:var(--border)}[data-theme=dark] .asset-autocomplete-option:hover,[data-theme=dark] .asset-autocomplete-option.focused,[data-theme=dark] .broker-combobox-option:hover,[data-theme=dark] .broker-combobox-option.focused{background:var(--bg-primary)}.subscription-banner{border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.subscription-banner-loading{background:var(--bg-secondary);height:60px;padding:var(--space-md) var(--space-lg);align-items:center;display:flex}.subscription-banner-active{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);color:var(--text-on-color)}.subscription-banner-content{align-items:center;gap:var(--space-md);display:flex}.subscription-icon{color:var(--gold)}.subscription-plan-name{font-weight:600;font-size:var(--font-base)}.subscription-status{align-items:center;gap:var(--space-xs);opacity:.9;font-size:var(--font-sm);display:flex}.subscription-banner-upgrade{background:linear-gradient(135deg, var(--bg-white) 0%, var(--primary-alpha-8) 100%);border:2px solid var(--primary)}.subscription-banner-header{align-items:center;gap:var(--space-md);display:flex}.subscription-banner-icon-wrap{background:var(--primary);width:40px;height:40px;color:var(--text-on-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.subscription-title{font-size:var(--font-lg);color:var(--text-primary);margin:0 0 var(--space-xs);font-weight:700}.subscription-banner-features{gap:var(--space-sm);flex-wrap:wrap;margin:0;display:flex}.subscription-banner-feature-item{align-items:center;gap:var(--space-xs);font-size:var(--font-xs);color:var(--text-secondary);display:flex}.subscription-banner-feature-item svg{color:var(--accent);flex-shrink:0}.subscription-plans{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(clamp(180px,30vw,220px),1fr));display:grid}.subscription-plan-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);transition:border-color var(--transition-normal), box-shadow var(--transition-normal)}.subscription-plan-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.plan-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:baseline;display:flex}.plan-name{color:var(--text-primary);font-weight:600}.plan-price{font-size:var(--font-2xl);color:var(--primary);font-weight:700}.plan-period{font-size:var(--font-sm);color:var(--text-secondary);font-weight:400}.plan-features{margin:0 0 var(--space-lg);padding:0;list-style:none}.plan-features li{align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;font-size:var(--font-sm);color:var(--text-secondary);display:flex}.feature-check{color:var(--success);flex-shrink:0}.plan-button{width:100%}.paywall-container{position:relative}.paywall-content-blur{filter:blur(4px);opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.paywall-overlay{background:var(--bg-white);border:2px solid var(--primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:10;max-width:min(400px,90vw);position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.paywall-inline-promo{background:var(--bg-white);border:2px solid var(--primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);max-width:420px;margin:var(--space-lg) auto;overflow:hidden}.paywall-header{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-lg) var(--space-xl);justify-content:center;align-items:center;display:flex}.paywall-icon-wrap{width:44px;height:44px;color:var(--text-on-color);background:#ffffff26;border-radius:50%;justify-content:center;align-items:center;display:flex}.paywall-body{padding:var(--space-lg) var(--space-xl) var(--space-xl)}.paywall-title{font-size:var(--font-xl);color:var(--text-primary);margin:0 0 var(--space-xs);font-weight:700}.paywall-lead{color:var(--text-secondary);font-size:var(--font-sm);margin:0 0 var(--space-md)}.paywall-benefits{margin:0 0 var(--space-lg);gap:var(--space-sm);flex-direction:column;padding:0;list-style:none;display:flex}.paywall-benefits li{align-items:center;gap:var(--space-sm);font-size:var(--font-sm);color:var(--text-secondary);display:flex}.paywall-benefits svg{color:var(--accent);flex-shrink:0}.paywall-cta{text-align:center;width:100%;display:block}.paywall-floating-card{background:var(--bg-white);border:2px solid var(--primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:150;opacity:0;pointer-events:none;max-width:min(400px,90vw);transition:opacity var(--transition-normal), transform var(--transition-normal);position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-48%)}.paywall-floating-card--visible{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.paywall-floating-card{transition:opacity var(--transition-fast);transform:translate(-50%,-50%)}}.value-locked{filter:blur(8px);-webkit-user-select:none;user-select:none;cursor:pointer}.container:has(.legal-page){max-width:none;margin:0;padding:0}.legal-page{--legal-content-max:1060px;width:100%}.legal-page-hero{padding:clamp(110px, calc(8vw + 60px), 180px) var(--container-padding) calc(clamp(50px, 6vw, 80px) + var(--hero-clip-depth));color:var(--text-on-color);background-image:radial-gradient(circle at center, #ffffff08 1px, transparent 1px), radial-gradient(ellipse 80% 60% at 50% 40%, rgba(var(--accent-rgb), .08) 0%, transparent 70%), linear-gradient(145deg, var(--dark-bg-deep) 0%, var(--dark-bg-mid) 40%, var(--dark-bg-base) 100%);clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--hero-clip-depth)), 0 100%);margin-bottom:calc(var(--hero-clip-depth) * -1);background-size:24px 24px,200% 200%,200% 200%;animation:12s ease-in-out infinite hero-gradient-shift;position:relative;overflow:hidden}.legal-page-body{background:linear-gradient(180deg, var(--bg-white) 0%, var(--bg-secondary) 100%);padding:calc(var(--space-xl) + var(--hero-clip-depth)) var(--container-padding) var(--space-2xl);z-index:2;position:relative}[data-theme=dark] .legal-page-body{background:var(--bg-light)}.legal-section-inner{max-width:var(--legal-content-max);z-index:1;width:100%;margin:0 auto;position:relative}html.brand-dark-page:has(.legal-page) .app-footer{background:var(--bg-secondary);border-top-color:var(--border)}[data-theme=dark] html.brand-dark-page:has(.legal-page) .app-footer{background:var(--bg-light)}@media (prefers-reduced-motion:reduce){.legal-page-hero{animation:none}}.legal-back-link{align-items:center;gap:var(--space-xs);font-size:var(--font-sm);color:var(--dark-bg-text-muted);margin-bottom:var(--space-sm);transition:color var(--transition-fast);text-decoration:none;display:inline-flex}.legal-back-link:hover{color:var(--dark-bg-text-emphasis)}.legal-page-nav{gap:var(--space-xs);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.legal-page-nav a{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);font-size:var(--font-sm);color:var(--dark-bg-text-body);border:1px solid var(--dark-bg-border-light);transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);font-weight:500;text-decoration:none}.legal-page-nav a:hover{color:var(--dark-bg-text-emphasis);background:var(--dark-bg-glass-highlight);border-color:var(--dark-bg-border-medium)}.legal-page-nav a.legal-page-nav-active{color:var(--dark-bg-text-emphasis);background:var(--dark-bg-glass-strong);border-color:var(--accent);pointer-events:none;font-weight:600}.legal-header{margin-bottom:var(--space-md)}.legal-header-content{align-items:flex-start;gap:var(--space-md);display:flex}.legal-icon-badge{border-radius:var(--radius-md);background:var(--dark-bg-glass-strong);border:1px solid var(--dark-bg-border-light);width:40px;height:40px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.legal-title{font-size:var(--font-3xl);color:var(--dark-bg-text-emphasis);margin:0 0 2px;font-weight:700;line-height:1.2}.legal-meta{font-size:var(--font-sm);color:var(--text-muted);margin:0}.legal-page-hero .legal-meta{color:var(--dark-bg-text-muted)}.legal-highlights{background:var(--dark-bg-glass);border:1px solid var(--dark-bg-border-light);border-radius:var(--radius-lg);padding:var(--space-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.legal-highlights-title{align-items:center;gap:var(--space-xs);font-size:var(--font-base);color:var(--dark-bg-text-emphasis);margin:0 0 var(--space-sm);font-weight:600;display:flex}.legal-highlights-title svg{color:var(--warning)}.legal-highlights-grid{gap:var(--space-sm) var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.legal-highlight-item{align-items:flex-start;gap:var(--space-sm);display:flex}.legal-highlight-item svg{color:var(--accent);flex-shrink:0;margin-top:2px}.legal-highlight-item>div{flex:1;min-width:0}.legal-highlight-item strong{font-size:var(--font-xs);color:var(--dark-bg-text-emphasis);margin-bottom:1px;font-weight:600;display:block}.legal-highlight-item p{font-size:var(--font-xs);color:var(--dark-bg-text-body);margin:0;line-height:1.4}.legal-layout{gap:var(--space-lg);grid-template-columns:200px 1fr;display:grid}.legal-toc-inner{max-height:calc(100vh - 88px);padding-right:var(--space-xs);position:sticky;top:76px;overflow-y:auto}.legal-toc-title{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 var(--space-sm);padding-bottom:var(--space-xs);border-bottom:1px solid var(--border);font-weight:700}.legal-toc-list{margin:0;padding:0;list-style:none}.legal-toc-list li{margin-bottom:1px}.legal-toc-link{padding:3px var(--space-xs);font-size:var(--font-xs);color:var(--text-secondary);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast), border-left-color var(--transition-fast);border-left:2px solid #0000;line-height:1.4;text-decoration:none;display:block}.legal-toc-link:hover{color:var(--text-primary);background:var(--primary-alpha-5)}.legal-toc-link.active{color:var(--primary);border-left-color:var(--accent);background:var(--primary-alpha-8);font-weight:600}.legal-main{min-width:0}.legal-section{margin-bottom:var(--space-xl);scroll-margin-top:64px}.legal-section h2{font-size:var(--font-xl);color:var(--text-primary);margin:0 0 var(--space-sm);padding-bottom:var(--space-xs);border-bottom:2px solid var(--primary-alpha-15);font-weight:700}.legal-section h3{font-size:var(--font-base);color:var(--text-primary);margin-top:var(--space-md);margin-bottom:var(--space-xs);font-weight:600}.legal-section p{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-sm);line-height:1.65}.legal-section ul{margin-bottom:var(--space-sm);padding-left:0;list-style:none}.legal-section ul ul{margin-top:var(--space-xs)}.legal-section li{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-xs);padding-left:var(--space-md);line-height:1.6;position:relative}.legal-section ul li:before{content:"";left:var(--space-xs);background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:8px}.legal-section ul ul li:before{background:var(--border);width:4px;height:4px}.legal-section ol{counter-reset:legal-ol;margin-bottom:var(--space-sm);padding-left:0;list-style:none}.legal-section ol li{counter-increment:legal-ol;padding-left:var(--space-lg)}.legal-section ol li:before{content:counter(legal-ol) ".";left:var(--space-xs);color:var(--accent);font-weight:600;position:absolute;top:0}.legal-section a{color:var(--accent);text-underline-offset:2px;transition:color var(--transition-fast);text-decoration:underline}.legal-section a:hover{color:var(--primary)}.legal-callout{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);margin:var(--space-md) 0;border:1px solid;display:flex}.legal-callout-icon{flex-shrink:0;margin-top:2px}.legal-callout-content{flex:1;min-width:0}.legal-callout-content p{margin-bottom:var(--space-xs)}.legal-callout-content p:last-child{margin-bottom:0}.legal-callout-content .legal-callout-title{font-weight:600;font-size:var(--font-sm);margin-bottom:2px}.legal-callout-info{background:var(--primary-alpha-5);border-color:var(--primary-alpha-20)}.legal-callout-info .legal-callout-icon{color:var(--accent)}.legal-callout-info .legal-callout-title{color:var(--primary)}.legal-callout-warning{background:var(--alert-warning-bg);border-color:var(--alert-warning-border)}.legal-callout-warning .legal-callout-icon{color:var(--warning)}.legal-callout-warning .legal-callout-title{color:var(--status-warning-text)}.legal-callout-success{background:var(--alert-success-bg);border-color:var(--alert-success-border)}.legal-callout-success .legal-callout-icon{color:var(--success)}.legal-callout-success .legal-callout-title{color:var(--status-success-text)}.legal-contact-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);align-items:center;gap:var(--space-md);margin-top:var(--space-xl);display:flex}.legal-contact-icon{background:var(--primary-alpha-10);width:40px;height:40px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.legal-contact-card h3{font-size:var(--font-base);color:var(--text-primary);margin:0 0 2px;font-weight:600}.legal-contact-card p{font-size:var(--font-xs);color:var(--text-secondary);margin:0 0 var(--space-xs)}.legal-contact-card a{color:var(--accent);font-weight:500;text-decoration:none}.legal-contact-card a:hover{text-decoration:underline}.legal-cross-nav-footer{margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--border);text-align:center}.legal-cross-nav-footer a{align-items:center;gap:var(--space-xs);font-size:var(--font-sm);color:var(--accent);padding:var(--space-xs) var(--space-md);border:1px solid var(--accent-alpha-30);border-radius:var(--radius-md);transition:background var(--transition-fast), border-color var(--transition-fast);font-weight:500;text-decoration:none;display:inline-flex}.legal-cross-nav-footer a:hover{background:var(--primary-alpha-5);border-color:var(--accent)}.legal-page a:focus-visible,.legal-page button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media (width<=768px){.legal-page-hero{padding:clamp(72px, 18vw, 110px) var(--space-md) calc(var(--space-lg) + var(--hero-clip-depth))}.legal-page-body{padding:calc(var(--space-lg) + var(--hero-clip-depth)) var(--space-md) var(--space-xl)}.legal-layout{grid-template-columns:1fr}.legal-toc{display:none}.legal-highlights-grid{grid-template-columns:1fr}.legal-header-content{gap:var(--space-sm);flex-direction:column}.legal-icon-badge{width:36px;height:36px}}@media (width<=480px){.legal-contact-card{text-align:center;flex-direction:column}.legal-callout{gap:var(--space-sm);flex-direction:column}}@media print{.legal-page,.legal-page-hero,.legal-page-body{clip-path:none!important;border-radius:0!important;margin-bottom:0!important;padding:0!important}.legal-page-hero,.legal-page-body,.legal-highlights,.legal-callout,.legal-contact-card{box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:1px solid #ccc!important}.legal-page,.legal-page *{color:#000!important}.legal-toc,.legal-back-link,.legal-page-nav,.legal-cross-nav-footer{display:none!important}.legal-layout{grid-template-columns:1fr!important}.legal-section,.legal-highlights,.legal-callout,.legal-contact-card{page-break-inside:avoid!important}}.cookie-consent-overlay{z-index:var(--z-toast);background:var(--bg-primary);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0}.cookie-consent-bar{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--container-padding);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom,0px));font-size:var(--font-sm);max-width:var(--container-max);flex-wrap:wrap;margin:0 auto;display:flex}.cookie-consent-message{min-width:0;color:var(--text-secondary);flex:280px;margin:0;line-height:1.4}.cookie-consent-message strong{color:var(--text-primary);font-weight:600}.cookie-consent-link{color:var(--primary);white-space:nowrap;text-decoration:underline}.cookie-consent-link:hover{color:var(--primary)}.cookie-consent-controls{align-items:center;gap:var(--space-md);flex:none;display:flex}.cookie-consent-control{align-items:center;gap:var(--space-xs);color:var(--text-primary);display:inline-flex}.cookie-consent-control-label{font-weight:500}.cookie-consent-always-on{font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap;font-style:italic}.cookie-consent-toggle{background:var(--bg-tertiary);border-radius:var(--radius-pill);cursor:pointer;width:32px;height:18px;margin:var(--space-sm) 0;transition:background-color var(--transition-fast);border:0;flex-shrink:0;padding:0;display:inline-block;position:relative}.cookie-consent-toggle:before{content:"";background:var(--bg-white);width:14px;height:14px;transition:transform var(--transition-fast);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.cookie-consent-toggle[aria-checked=true]{background:var(--accent)}.cookie-consent-toggle[aria-checked=true]:before{transform:translate(14px)}.cookie-consent-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cookie-consent-actions{gap:var(--space-xs);flex:none;display:flex}.cookie-consent-actions>.cookie-consent-btn{white-space:nowrap;padding:var(--space-xs) var(--space-md);font-size:var(--font-sm);min-width:0}@media (width<=768px){.cookie-consent-bar{align-items:stretch;gap:var(--space-sm);flex-direction:column}.cookie-consent-message{flex:0 auto}.cookie-consent-controls{flex-wrap:wrap;justify-content:space-between}.cookie-consent-actions{flex-wrap:wrap;width:100%}.cookie-consent-actions>.cookie-consent-btn{flex:112px;min-height:44px}}@media (width<=360px){.cookie-consent-actions>.cookie-consent-btn{flex-basis:100%}}[data-theme=dark] .cookie-consent-toggle:before{background:var(--bg-light)}@media (prefers-reduced-motion:reduce){.cookie-consent-toggle,.cookie-consent-toggle:before{transition:none}}.tax-planning-holding-info{padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);font-size:var(--font-sm)}.tax-planning-holding-row{margin-bottom:var(--space-sm);justify-content:space-between;display:flex}.tax-planning-holding-row:last-child{margin-bottom:0}.tax-planning-presets{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.tax-planning-presets .btn{padding:var(--space-sm) var(--space-lg);font-size:var(--font-xs);min-height:36px}.tax-planning-flow{align-items:stretch;gap:var(--space-sm);margin-bottom:var(--space-lg);display:flex}.tax-planning-flow-step{padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);text-align:center;flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.tax-planning-flow-step-label{font-size:var(--font-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-xs);font-weight:500}.tax-planning-flow-step-value{font-size:var(--font-xl);font-weight:700;line-height:1.2}.tax-planning-flow-arrow{color:var(--text-muted);font-size:var(--font-lg);flex-shrink:0;align-items:center;display:flex}.tax-planning-flow-step.gain{border-left:4px solid var(--success);background:var(--alert-success-bg)}.tax-planning-flow-step.gain .tax-planning-flow-step-value{color:var(--status-success-text)}.tax-planning-flow-step.loss{border-left:4px solid var(--danger);background:var(--alert-error-bg)}.tax-planning-flow-step.loss .tax-planning-flow-step-value{color:var(--danger)}.tax-planning-flow-step.tax{border:2px solid var(--primary);background:var(--bg-white)}.tax-planning-flow-step.tax .tax-planning-flow-step-value{color:var(--primary)}.tax-planning-net-callout{padding:var(--space-lg);background:var(--alert-success-bg);border:1px solid var(--alert-success-border);border-radius:var(--radius-xl);text-align:center;margin:var(--space-lg) 0}.tax-planning-net-callout.loss-result{background:var(--alert-error-bg);border-color:var(--alert-error-border)}.tax-planning-net-callout-label{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.tax-planning-net-callout-value{font-size:var(--font-3xl);color:var(--status-success-text);font-weight:700}.tax-planning-net-callout.loss-result .tax-planning-net-callout-value{color:var(--danger)}.tax-planning-comparison{margin-top:var(--space-xl)}.tax-planning-comparison-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.tax-planning-comparison-header h3{margin:0}.tax-planning-timeline{gap:var(--space-sm);margin-bottom:var(--space-lg);flex-direction:column;display:flex}.tax-planning-timeline-lot{align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;grid-template-columns:32px 1fr auto;display:grid}.tax-planning-timeline-priority{background:var(--primary);width:28px;height:28px;color:var(--text-on-color);font-size:var(--font-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.tax-planning-timeline-bar-container{background:var(--bg-secondary);border-radius:var(--radius-md);height:36px;position:relative;overflow:hidden}.tax-planning-timeline-bar{background:var(--primary-alpha-20);border-left:4px solid var(--primary);border-radius:var(--radius-md);height:100%;padding:0 var(--space-sm);min-width:fit-content;transition:width var(--transition-normal);align-items:center;display:flex}.tax-planning-timeline-bar-text{font-size:var(--font-xs);white-space:nowrap;color:var(--text-primary);font-weight:500}.tax-planning-timeline-detail{font-size:var(--font-xs);color:var(--text-secondary);text-align:right;white-space:nowrap}.tax-planning-timeline-detail strong{color:var(--text-primary)}.tax-planning-badge{padding:2px var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-xs);white-space:nowrap;font-weight:500;display:inline-block}.tax-planning-badge-cgt{background:var(--accent-alpha-20);color:var(--primary)}.tax-planning-badge-exit{background:var(--alert-warning-bg);color:var(--status-warning-text)}.tax-planning-dd-list{gap:var(--space-sm);flex-direction:column;display:flex}.tax-planning-dd-item{align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);transition:background var(--transition-fast);display:flex}.tax-planning-dd-item:hover{background:var(--primary-alpha-5)}.tax-planning-urgency-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.tax-planning-urgency-dot.urgent{background:var(--danger)}.tax-planning-urgency-dot.soon{background:var(--warning)}.tax-planning-urgency-dot.safe{background:var(--success)}.tax-planning-dd-info{flex:1;min-width:0}.tax-planning-dd-name{font-weight:600;font-size:var(--font-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tax-planning-dd-meta{font-size:var(--font-xs);color:var(--text-secondary);margin-top:2px}.tax-planning-dd-days{font-size:var(--font-sm);white-space:nowrap;text-align:right;font-weight:600}.tax-planning-group{margin-bottom:var(--space-xl)}.tax-planning-group-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.tax-planning-group-title{font-size:var(--font-base);margin:0;font-weight:600}.tax-planning-group-hint{font-size:var(--font-xs);color:var(--text-secondary)}.tax-planning-section-title{font-size:var(--font-base);margin:0 0 var(--space-md) 0;align-items:center;font-weight:600;display:flex}.tax-planning-note{padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);font-size:var(--font-sm);margin-top:var(--space-lg)}.tax-planning-note.warning{background:var(--alert-warning-bg);color:var(--status-warning-text)}.tax-planning-cta{padding:var(--space-md) var(--space-lg);background:var(--primary-alpha-5);border:1px solid var(--primary-alpha-15);border-radius:var(--radius-lg);margin-top:var(--space-lg);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.tax-planning-cta-text{font-size:var(--font-sm);color:var(--text-secondary)}.tax-planning-form{gap:var(--space-md);max-width:500px;display:grid}.tax-planning-description{color:var(--text-secondary);margin-bottom:var(--space-lg)}@media screen and (width<=700px){.tax-planning-flow{flex-direction:column}.tax-planning-flow-arrow{justify-content:center;transform:rotate(90deg)}.tax-planning-flow-step-value{font-size:var(--font-lg)}.tax-planning-timeline-lot{gap:var(--space-sm);grid-template-columns:28px 1fr}.tax-planning-timeline-detail{text-align:left;padding-left:var(--space-2xl);grid-column:1/-1}.tax-planning-cta{text-align:center;flex-direction:column}.tax-planning-dd-item{flex-wrap:wrap}}@media (width<=768px){.tax-profile-row{gap:var(--space-md)!important;flex-direction:column!important}.tax-profile-row>*{width:100%!important}.tax-profile-indent{padding-left:var(--space-md)!important}}.feedback-form{gap:var(--space-md);flex-direction:column;display:flex}.feedback-form-row{gap:var(--space-xs);flex-direction:column;display:flex}.feedback-label{font-weight:500;font-size:var(--font-sm);color:var(--text-primary);align-items:center;display:flex}.feedback-input{padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-sm);transition:border-color var(--transition-fast)}.feedback-input:focus,.feedback-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-alpha-10);outline:none}.feedback-textarea{padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-sm);resize:vertical;min-height:80px;transition:border-color var(--transition-fast);font-family:inherit}.feedback-char-count{text-align:right;font-size:var(--font-xs);color:var(--text-muted)}.feedback-file-input{font-size:var(--font-sm);color:var(--text-secondary)}.feedback-file-badge{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);background:var(--primary-alpha-10);color:var(--text-primary);border-radius:var(--radius-md);font-size:var(--font-xs);margin-top:var(--space-sm);display:inline-flex}.feedback-file-remove{color:var(--text-muted);cursor:pointer;font-size:var(--font-lg);background:0 0;border:none;padding:0 2px;line-height:1}.feedback-file-remove:hover{color:var(--danger)}.feedback-list{gap:var(--space-xs);flex-direction:column;display:flex}.feedback-item{padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast)}.feedback-item:hover{background:var(--bg-secondary)}.feedback-item-expanded{border-color:var(--primary);background:var(--bg-secondary)}.feedback-item-header{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.feedback-item-meta{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.feedback-item-subject{font-weight:500;font-size:var(--font-sm);color:var(--text-primary);margin-top:var(--space-xs)}.feedback-item-details{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border)}.feedback-item-message{font-size:var(--font-sm);color:var(--text-secondary);white-space:pre-wrap;line-height:1.6}.feedback-status-badge{padding:2px var(--space-sm);border-radius:var(--radius-pill);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.03em;font-weight:600;display:inline-block}.feedback-status-new{background:var(--primary-alpha-10);color:var(--primary)}.feedback-status-progress{background:var(--alert-warning-bg);color:var(--status-warning-text)}.feedback-status-resolved{background:var(--alert-success-bg);color:var(--status-success-text)}.feedback-status-closed{background:var(--bg-secondary);color:var(--text-muted)}.feedback-category-badge{padding:2px var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-xs);background:var(--bg-secondary);color:var(--text-secondary);font-weight:500;display:inline-block}.feedback-attachment-info{align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);font-size:var(--font-xs);color:var(--text-secondary);display:flex}.feedback-download-link{align-items:center;gap:var(--space-xs);color:var(--primary);margin-left:var(--space-sm);font-weight:500;text-decoration:none;display:inline-flex}.feedback-download-link:hover{text-decoration:underline}.feedback-admin-controls{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--border)}@media screen and (width<=480px){.tax-planning-flow{flex-direction:column}.tax-planning-flow-arrow{justify-content:center;transform:rotate(90deg)}.tax-planning-timeline-lot{gap:var(--space-sm);grid-template-columns:24px 1fr auto}.subscription-banner-header{flex-direction:column;align-items:flex-start}.subscription-banner-header .btn{text-align:center;width:100%}.tax-year-row-secondary{padding-left:var(--space-md)!important}.person-chip span[title]{max-width:80px!important}}.dd-info-grid{gap:var(--space-md);margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border);grid-template-columns:repeat(2,1fr);display:grid}.dd-info-item{gap:var(--space-sm);align-items:flex-start;display:flex}.dd-info-icon{background:var(--primary-alpha-10);border-radius:var(--radius-md);width:36px;min-width:36px;height:36px;color:var(--primary);justify-content:center;align-items:center;display:flex}.dd-info-title{font-size:var(--font-sm);color:var(--text-primary);margin-bottom:2px;font-weight:600}.dd-info-text{font-size:var(--font-xs);color:var(--text-secondary);line-height:1.5}@media screen and (width<=500px){.dd-info-grid{grid-template-columns:1fr}}.urgency-item{padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-sm);transition:box-shadow var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.urgency-item:last-child{margin-bottom:0}.urgency-item:hover{filter:brightness(.97)}.urgency-critical{background:var(--alert-error-bg);border-left:4px solid var(--danger)}.urgency-warning{background:var(--alert-warning-bg);border-left:4px solid var(--warning)}.urgency-info{background:var(--bg-secondary);border-left:4px solid #0000}.urgency-badge{padding:2px var(--space-sm);border-radius:var(--radius-xl);font-size:var(--font-sm);font-weight:600;display:inline-block}.urgency-badge-critical{background:var(--danger);color:var(--text-on-color)}.urgency-badge-warning{background:var(--warning);color:var(--text-on-color)}.urgency-badge-info{background:var(--alert-warning-border);color:var(--text-primary)}.urgency-label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;margin-right:var(--space-xs);font-weight:700}.urgency-label-critical{color:var(--danger)}.urgency-label-warning{color:var(--status-warning-text)}[data-theme=dark] .urgency-label-warning{color:var(--warning)}.urgency-progress{background:var(--primary-alpha-8);border-radius:var(--radius-sm);height:3px;margin-top:var(--space-sm);overflow:hidden}.urgency-progress-bar{border-radius:var(--radius-sm);height:100%;transition:width var(--transition-medium)}.urgency-progress-critical{background:var(--danger)}.urgency-progress-warning{background:var(--warning)}.urgency-progress-info{background:var(--primary)}@media screen and (width<=480px){.urgency-item{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.deadline-date{flex-wrap:wrap}.deadline-item{flex-direction:column;align-items:flex-start}}.admin-date-range{gap:var(--space-xs);display:flex}.admin-date-range .btn{min-width:64px;padding:var(--space-xs) var(--space-md);font-size:var(--font-sm);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast)}.admin-date-range .btn:hover{background:var(--bg-secondary)}.admin-date-range .btn.active{background:var(--primary);color:var(--text-on-color);border-color:var(--primary)}.admin-header-row{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.admin-charts-row{gap:var(--space-lg);margin-top:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}@media (width<=900px){.admin-charts-row{grid-template-columns:1fr}}.admin-provider-grid{gap:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}@media (width<=900px){.admin-provider-grid{grid-template-columns:1fr}}.admin-provider-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.admin-provider-name{font-weight:600;font-size:var(--font-lg);text-transform:capitalize}.admin-provider-meta{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.admin-progress-bar{background:var(--bg-secondary);border-radius:var(--radius-pill);width:100%;height:8px;overflow:hidden}.admin-progress-bar-fill{border-radius:var(--radius-pill);height:100%;transition:width var(--transition-normal)}.admin-progress-bar-fill--ok{background:var(--success)}.admin-progress-bar-fill--warning{background:var(--warning)}.admin-progress-bar-fill--critical{background:var(--danger)}.admin-progress-row{align-items:center;gap:var(--space-sm);font-size:var(--font-sm);display:flex}.admin-progress-label{min-width:80px;color:var(--text-secondary)}.admin-progress-value{text-align:right;min-width:100px;color:var(--text-primary);font-variant-numeric:tabular-nums}.admin-badge{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border-radius:var(--radius-pill);font-size:var(--font-sm);font-weight:500;line-height:1.4;display:inline-flex}.admin-badge--paid{background:var(--status-success-bg);color:var(--status-success-text)}.admin-badge--free{background:var(--bg-secondary);color:var(--text-secondary)}.admin-badge--ok{background:var(--status-success-bg);color:var(--status-success-text)}.admin-badge--warning{background:var(--status-warning-bg);color:var(--status-warning-text)}.admin-badge--error{background:var(--status-error-bg);color:var(--status-error-text)}.admin-badge--no-limit{background:var(--bg-secondary);color:var(--text-muted)}.admin-circuit-breaker{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--status-error-bg);color:var(--status-error-text);border-radius:var(--radius-md);font-size:var(--font-sm);margin-top:var(--space-sm);font-weight:500;display:flex}.admin-diagnostics-grid{gap:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}@media (width<=900px){.admin-diagnostics-grid{grid-template-columns:1fr}}.admin-controls-bar{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.admin-search-input{min-width:200px;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-base);transition:border-color var(--transition-fast);flex:1}.admin-search-input:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.admin-search-input::placeholder{color:var(--text-muted)}.admin-failed-count{color:var(--status-error-text);font-weight:600}.admin-rate--good{color:var(--status-success-text)}.admin-rate--moderate{color:var(--status-warning-text)}.admin-rate--bad{color:var(--status-error-text);font-weight:600}.admin-fill-rate-stat{font-size:var(--font-2xl);color:var(--text-primary);margin-bottom:var(--space-md);font-weight:700}.admin-refresh-bar{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.admin-refresh-hint{font-size:var(--font-sm);color:var(--text-muted)}.admin-chart-card{min-height:300px}.admin-empty-state{padding:var(--space-2xl);color:var(--text-muted);text-align:center;justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.admin-error-block{align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--status-error-bg);border-radius:var(--radius-md);color:var(--status-error-text);display:flex}.admin-sort-header{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.admin-sort-header:hover{color:var(--accent)}.admin-error-cell{text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.admin-response-time{font-size:var(--font-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}.admin-usage-status{align-items:center;gap:var(--space-sm);display:flex}
