:root{--espp-gain:#34d399;--espp-loss:#fb7185}[data-theme=light]{--espp-gain:#047857;--espp-loss:#e11d48}.page-sections-outer{max-width:1600px;margin:0 auto;padding:0 1.5rem 3rem}.calc-grid{grid-template-columns:minmax(320px,1fr) minmax(360px,1.4fr);gap:24px;max-width:1400px;margin:0 auto;padding:0 1.5rem;display:grid}@media (width<=1024px){.calc-grid{grid-template-columns:1fr}}.card{background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;padding:22px}.card h2{color:var(--calc-text-primary,#f8fafc);margin:0 0 14px;font-size:1.1rem}.section-divider{border-top:1px solid #ffffff14;margin:18px 0}.optional-label{color:var(--calc-text-faded,#88a);font-size:.85em;font-weight:400}.form-group{margin-bottom:14px}.form-group label{color:var(--calc-text-faded,#88a);margin-bottom:6px;font-size:.82rem;font-weight:500;display:block}.form-hint{color:var(--calc-text-faded,#88a);margin-top:4px;font-size:.75rem;display:block}.input-with-unit{background:#ffffff05;border:1px solid #ffffff1a;border-radius:10px;align-items:stretch;display:flex;overflow:hidden}.input-with-unit .input-prefix{color:var(--calc-text-faded,#88a);font-family:var(--calc-font-mono,monospace);background:#ffffff08;align-items:center;padding:0 12px;display:flex}.input-with-unit .glass-input{background:0 0;border:none;border-radius:0;flex:1}.glass-input{width:100%;color:var(--calc-text-primary,#f8fafc);font-family:var(--calc-font-mono,monospace);background:#ffffff05;border:1px solid #ffffff1a;border-radius:10px;padding:10px 12px;font-size:.95rem;transition:border-color .15s,background .15s}.glass-input:focus{border-color:var(--calc-cyan,#22d3ee);background:#22d3ee0d;outline:none}select.glass-input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--calc-text-faded,#88a) 50%), linear-gradient(135deg, var(--calc-text-faded,#88a) 50%, transparent 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:32px}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip{color:var(--calc-text-faded,#88a);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:999px;padding:6px 12px;font-size:.82rem;transition:all .15s}.chip:hover{color:var(--calc-text-primary,#f8fafc);border-color:var(--calc-cyan,#22d3ee)}.chip.active{background:var(--calc-cyan,#22d3ee);color:#0d1117;border-color:var(--calc-cyan,#22d3ee);font-weight:600}.card-result{background:linear-gradient(135deg,#22d3ee0a,#a855f705);border-color:#22d3ee26}.result-hero{text-align:center;border-bottom:1px solid #ffffff0f;margin-bottom:14px;padding:18px 12px 22px}.result-hero .label{text-transform:uppercase;letter-spacing:.1em;color:var(--calc-text-faded,#88a);margin-bottom:8px;font-size:.75rem}.result-hero .value{font-family:var(--calc-font-mono,monospace);color:var(--calc-cyan,#22d3ee);font-size:2.4rem;font-weight:700;line-height:1}.result-hero .sub{color:var(--calc-text-faded,#88a);margin-top:6px;font-size:.78rem}.stat-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.stat-cell{background:#ffffff06;border:1px solid #ffffff0d;border-radius:10px;padding:10px 12px}.stat-cell .s-label{color:var(--calc-text-faded,#88a);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.7rem}.stat-cell .s-value{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc);font-size:1rem;font-weight:600}.stat-cell .s-value.red{color:#fb7185}.stat-cell .s-value.gold{color:#fbbf24}.stat-cell .s-value.green{color:#34d399}.stat-cell .s-detail{color:var(--calc-text-faded,#88a);margin-top:2px;font-size:.7rem}.s-info{cursor:help;color:var(--calc-text-faded,#88a);font-size:.7em}@media (width<=540px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.formula-strip{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.formula-pill{color:var(--calc-cyan,#22d3ee);font-family:var(--calc-font-mono,monospace);background:#22d3ee14;border:1px solid #22d3ee33;border-radius:6px;padding:4px 10px;font-size:.74rem}.alert-stack{flex-direction:column;gap:8px;margin:14px 0;display:flex}.alert-item{border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:.84rem;line-height:1.45;display:none}.alert-item.visible{display:flex}.alert-item .alert-icon{flex-shrink:0;font-size:1.05rem}.alert-gold{color:#fcd34d;background:#fbbf2414;border:1px solid #fbbf2440}.alert-blue{color:#93c5fd;background:#60a5fa14;border:1px solid #60a5fa40}.alert-green{color:#6ee7b7;background:#34d39914;border:1px solid #34d39940}.action-bar{border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;display:flex}.btn-action{min-width:110px;color:var(--calc-text-primary,#f8fafc);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;flex:1;padding:8px 14px;font-size:.82rem;transition:all .15s}.btn-action:hover{border-color:var(--calc-cyan,#22d3ee);color:var(--calc-cyan,#22d3ee);background:#22d3ee1a}.tab-panel{display:none}.tab-panel.active{display:block}.full-panel{max-width:1400px;margin:0 auto;padding:0 1.5rem}.section-title{color:var(--calc-text-primary,#f8fafc);margin:6px 0 4px;font-size:1.15rem}.section-subtitle{color:var(--calc-text-faded,#88a);margin:0 0 16px;font-size:.88rem}.scenario-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=768px){.scenario-grid{grid-template-columns:1fr}}.scenario-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;padding:20px}.scenario-card.base{border-color:#34d3994d}.scenario-card.bull{border-color:#60a5fa4d}.scenario-card .sc-label{text-transform:uppercase;letter-spacing:.08em;color:var(--calc-text-faded,#88a);margin-bottom:6px;font-size:.78rem}.scenario-card .sc-salary{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc);margin-bottom:12px;font-size:1.2rem}.scenario-card .sc-row{color:var(--calc-text-faded,#88a);border-bottom:1px dashed #ffffff0f;justify-content:space-between;padding:4px 0;font-size:.85rem;display:flex}.scenario-card .sc-row span:last-child{color:var(--calc-text-primary,#f8fafc);font-family:var(--calc-font-mono,monospace)}.scenario-card .sc-net{font-family:var(--calc-font-mono,monospace);color:#60a5fa;margin-top:12px;font-size:1.5rem;font-weight:700}.scenario-card.base .sc-net{color:#34d399}.scenario-card .sc-eff{color:var(--calc-text-faded,#88a);margin-top:2px;font-size:.78rem}.winner-banner{color:#fcd34d;background:#fbbf2414;border:1px solid #fbbf2440;border-radius:10px;align-items:center;gap:10px;margin:16px 0;padding:12px 16px;font-size:.9rem;display:flex}.winner-banner .winner-icon{font-size:1.1rem}.gap-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=768px){.gap-grid{grid-template-columns:1fr}}.card-gap{background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;padding:20px}.gap-card-title{color:var(--calc-text-primary,#f8fafc);margin:0 0 10px;font-size:1rem}.gap-card-body{color:var(--calc-text-faded,#88a);margin:0 0 14px;font-size:.85rem;line-height:1.5}.gap-row{color:var(--calc-text-faded,#88a);border-bottom:1px dashed #ffffff0f;justify-content:space-between;padding:8px 0;font-size:.88rem;display:flex}.gap-row span:last-child{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc)}.gap-row--total{border-top:1px solid #ffffff1a;margin-top:4px;padding-top:10px;font-weight:600}.gap-row--total span:last-child{color:var(--calc-text-primary,#f8fafc);font-size:1rem}.gap-row--gap{border-bottom:none;padding-top:12px;font-weight:700}.gap-row--gap span:last-child{color:var(--espp-gain);font-size:1.25rem}.tab-bar.outer-tabs{flex-wrap:wrap;gap:6px;max-width:1400px;margin:0 auto;padding:12px 1.5rem 16px;display:flex}.tab-btn{color:var(--calc-text-faded,#88a);cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;padding:10px 18px;font-size:.92rem;transition:all .15s}.tab-btn:hover{color:var(--calc-text-primary,#f8fafc);border-color:var(--calc-cyan,#22d3ee)}.tab-btn.active{background:var(--calc-cyan,#22d3ee);color:#0d1117;border-color:var(--calc-cyan,#22d3ee);font-weight:600}.calc-hero{max-width:1400px;margin:0 auto;padding:32px 1.5rem 18px}.calc-hero h1{color:var(--calc-text-primary,#f8fafc);margin:0 0 10px;font-size:clamp(1.6rem,3vw,2.2rem)}.calc-hero p{color:var(--calc-text-faded,#88a);max-width:820px;margin:0;font-size:.96rem;line-height:1.55}[data-theme=light] .card{background:#fff;border-color:#0000001f;box-shadow:0 2px 10px #0000000f}[data-theme=light] .card-result{background:linear-gradient(135deg,#0891b20a,#7c3aed05);border-color:#0891b233}[data-theme=light] .card h2,[data-theme=light] .section-title,[data-theme=light] .scenario-card .sc-salary,[data-theme=light] .scenario-card .sc-row span:last-child,[data-theme=light] .stat-cell .s-value,[data-theme=light] .gap-row span:last-child,[data-theme=light] .calc-hero h1{color:#0f172a}[data-theme=light] .form-group label,[data-theme=light] .form-hint,[data-theme=light] .optional-label,[data-theme=light] .stat-cell .s-label,[data-theme=light] .scenario-card .sc-label,[data-theme=light] .scenario-card .sc-row,[data-theme=light] .scenario-card .sc-eff,[data-theme=light] .section-subtitle,[data-theme=light] .calc-hero p,[data-theme=light] .gap-row,[data-theme=light] .gap-card-body,[data-theme=light] .result-hero .label,[data-theme=light] .result-hero .sub,[data-theme=light] .stat-cell .s-detail{color:#475569}[data-theme=light] .glass-input,[data-theme=light] .input-with-unit,[data-theme=light] .stat-cell,[data-theme=light] .card-gap,[data-theme=light] .scenario-card{color:#0f172a;background:#f0f4f9;border-color:#0000001f}[data-theme=light] .glass-input{color:#0f172a}[data-theme=light] .input-with-unit .glass-input{background:0 0;border:none}[data-theme=light] .input-with-unit .input-prefix{color:#64748b;background:#0000000a}[data-theme=light] .glass-input:focus{background:#0891b20d;border-color:#0891b2}[data-theme=light] .chip{color:#475569;background:#edf2f9;border-color:#0000001f}[data-theme=light] .chip:hover{color:#0f172a;border-color:#0891b2}[data-theme=light] .chip.active{color:#fff;background:#0891b2;border-color:#0891b2}[data-theme=light] .tab-btn{color:#475569;background:#edf2f9;border-color:#0000001f}[data-theme=light] .tab-btn:hover{color:#0f172a;border-color:#0891b2}[data-theme=light] .tab-btn.active{color:#fff;background:#0891b2;border-color:#0891b2}[data-theme=light] .result-hero{border-bottom-color:#0000000f}[data-theme=light] .result-hero .value{color:#0891b2}[data-theme=light] .stat-cell .s-value.red{color:#e11d48}[data-theme=light] .stat-cell .s-value.gold{color:#b45309}[data-theme=light] .stat-cell .s-value.green{color:#047857}[data-theme=light] .formula-pill{color:#0891b2;background:#0891b21a;border-color:#0891b240}[data-theme=light] .alert-gold{color:#78350f;background:#fffbeb;border-color:#d9770659}[data-theme=light] .alert-blue{color:#1e3a5f;background:#eff6ff;border-color:#3b82f659}[data-theme=light] .alert-green{color:#14532d;background:#f0fdf4;border-color:#16a34a59}[data-theme=light] .winner-banner{color:#78350f;background:#fffbeb;border-color:#d9770659}[data-theme=light] .btn-action{color:#0f172a;background:#edf2f9;border-color:#0000001f}[data-theme=light] .btn-action:hover{color:#0891b2;background:#0891b214;border-color:#0891b2}[data-theme=light] .section-divider{border-top-color:#0000001a}[data-theme=light] .action-bar{border-top-color:#00000014}[data-theme=light] .gap-row,[data-theme=light] .scenario-card .sc-row{border-bottom-color:#0000000f}[data-theme=light] .gap-row--total{border-top-color:#0000001f}[data-theme=light] .scenario-card.base{border-color:#0478574d}[data-theme=light] .scenario-card.bull{border-color:#2563eb4d}[data-theme=light] .scenario-card .sc-net{color:#2563eb}[data-theme=light] .scenario-card.base .sc-net{color:#047857}[data-theme=light] select.glass-input{background-image:linear-gradient(45deg,#0000 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,#0000 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid #ffffff0f}.faq-item__question{cursor:pointer;color:var(--calc-text-primary,#f8fafc);user-select:none;justify-content:space-between;align-items:center;padding:14px 4px;font-size:.9rem;font-weight:600;list-style:none;transition:color .2s;display:flex}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question:after{content:"+";font-family:var(--calc-font-mono,monospace);color:var(--calc-text-faded,#88a);flex-shrink:0;margin-left:16px;font-size:1.1rem;transition:color .2s}.faq-item[open] .faq-item__question:after{content:"−";color:var(--calc-cyan,#22d3ee)}.faq-item__question:hover{color:var(--calc-cyan,#22d3ee)}.faq-item__answer{color:var(--calc-text-faded,#88a);padding:0 4px 14px;font-size:.85rem;line-height:1.75}[data-theme=light] .faq-list{gap:8px}[data-theme=light] .faq-item{background:#fff;border:1px solid #0000001a;border-radius:10px;transition:box-shadow .2s,border-color .2s;overflow:hidden;box-shadow:0 1px 4px #0000000f}[data-theme=light] .faq-item:hover{border-color:#0891b259;box-shadow:0 2px 10px #0891b214}[data-theme=light] .faq-item[open]{border-color:#0891b266 #0891b266 #0891b266 #0891b2;border-left-style:solid;border-left-width:3px;box-shadow:0 2px 12px #0891b21a}[data-theme=light] .faq-item__question{color:#0f172a;padding:14px 16px}[data-theme=light] .faq-item__question:after{color:#64748b}[data-theme=light] .faq-item[open] .faq-item__question:after,[data-theme=light] .faq-item__question:hover{color:#0891b2}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}.toast-container{z-index:9999;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.toast{color:#f8fafc;background:#0f172af2;border:1px solid #ffffff1a;border-radius:10px;padding:12px 18px;font-size:.88rem;animation:.2s ease-out toastIn;box-shadow:0 6px 20px #0000004d}.toast-success{border-left:3px solid #34d399}.toast-warn{border-left:3px solid #fbbf24}.toast-error{border-left:3px solid #fb7185}.toast-info{border-left:3px solid #60a5fa}[data-theme=light] .toast{color:#0f172a;background:#fff;border-color:#0000001f;box-shadow:0 6px 20px #00000026}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}