:root{--bg-dark:#050510;--card:#ffffff08;--input-bg:#ffffff0d;--cyan:#00f3ff;--purple:#bc13fe;--text-main:#fff;--text-dim:#88a;--text-muted:#666;--border:#ffffff14;--accent:#a855f7;--gold:#f59e0b;--font-main:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace}[data-theme=light]{--bg-dark:#e8edf5;--card:#fffffff2;--input-bg:#e8eef4;--text-main:#0f172a;--text-dim:#334155;--text-muted:#64748b;--border:#0000001a;--accent:#7c3aed}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-main);background:var(--bg-dark);color:var(--text-main);margin:0;line-height:1.6}a{color:inherit;text-decoration:none}.dashboard-container{max-width:1600px;margin:0 auto;padding:0 1.5rem 2rem}.calc-hero{padding:2rem 0 1.5rem}.breadcrumb{color:var(--text-muted);margin-bottom:.75rem;font-size:.78rem}.breadcrumb a{color:var(--text-muted)}.breadcrumb a:hover{color:var(--accent)}.bc-sep{margin:0 6px}.calc-title{margin:0 0 .4rem;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800}.calc-subtitle{color:var(--text-dim);margin:0;font-size:1rem}.outer-tabs{background:#ffffff0a;border-radius:12px;flex-wrap:wrap;gap:4px;width:fit-content;margin-bottom:1.5rem;padding:4px;display:flex}[data-theme=light] .outer-tabs{background:#e8eef4}.outer-tab{color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:8px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.outer-tab.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #a855f74d}.outer-tab:hover:not(.active){color:var(--text-main);background:#ffffff0f}[data-theme=light] .outer-tab:hover:not(.active){background:#edf2f9}.tab-panel{display:none}.tab-panel.active{display:block}.calc-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}@media (width<=900px){.calc-grid{grid-template-columns:minmax(0,1fr);overflow:hidden}}.input-card,.result-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:1.5rem}.input-card{border-left:3px solid var(--accent)}.result-card{border-left:3px solid var(--purple)}[data-theme=light] .input-card,[data-theme=light] .result-card{box-shadow:0 2px 12px #00000017}.card-title{align-items:center;gap:8px;margin:0 0 1.25rem;font-size:1rem;font-weight:600;display:flex}.card-icon{font-size:1.1rem}.input-group{margin-bottom:1.25rem}.input-group label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.glass-input{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-main);font-family:var(--font-main);border-radius:8px;outline:none;padding:10px 14px;font-size:.95rem;transition:border-color .2s}.glass-input:focus{border-color:var(--accent)}[data-theme=light] .glass-input{background:#e8eef4;border-color:#00000026}.glass-input::placeholder{color:var(--text-muted)}[data-theme=light] .glass-input::placeholder{color:#00000059}.input-with-adornment{position:relative}.input-with-adornment .glass-input{padding-right:52px}.adornment-right{color:var(--text-muted);pointer-events:none;font-size:.75rem;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.two-col-inputs{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=480px){.two-col-inputs{grid-template-columns:minmax(0,1fr);overflow:hidden}}.preset-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}@media (width<=600px){.preset-grid{grid-template-columns:repeat(2,1fr)}}.preset-card{border:1px solid var(--border);background:var(--input-bg);color:var(--text-dim);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:10px 8px;line-height:1.3;transition:all .2s;display:flex}.preset-card:hover,.preset-card.active{border-color:var(--accent);color:var(--accent);background:#a855f71a;transform:translateY(-1px);box-shadow:0 4px 12px #a855f733}.preset-icon{font-size:1.35rem;line-height:1}.preset-name{color:inherit;font-size:.75rem;font-weight:600}.preset-meta{color:var(--text-muted);font-size:.63rem}.preset-card.active .preset-meta{color:var(--accent);opacity:.75}[data-theme=light] .preset-card{background:#f0f4f9;border-color:#0000001f}[data-theme=light] .preset-card:hover,[data-theme=light] .preset-card.active{color:#7c3aed;background:#7c3aed14;border-color:#7c3aed}.pace-chips{flex-wrap:wrap;gap:6px;display:flex}.pace-chip{border:1px solid var(--border);background:var(--input-bg);min-width:70px;color:var(--text-dim);cursor:pointer;text-align:center;border-radius:8px;flex:1;padding:8px 6px;font-size:.78rem;font-weight:600;line-height:1.3;transition:all .2s}.pace-chip small{color:var(--text-muted);margin-top:2px;font-size:.65rem;font-weight:400;display:block}.pace-chip.active{border-color:var(--accent);color:var(--accent);background:#a855f71f;box-shadow:0 2px 8px #a855f733}.pace-chip:hover:not(.active){border-color:var(--accent);color:var(--text-main)}[data-theme=light] .pace-chip{background:#f0f4f9;border-color:#0000001f}[data-theme=light] .pace-chip.active{color:#7c3aed;background:#7c3aed14;border-color:#7c3aed}[data-theme=light] .pace-chip small{color:#94a3b8}.hero-result{text-align:center;margin:.75rem 0 1rem}.hero-value{font-family:var(--font-mono);color:var(--accent);font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1}.hero-label{color:var(--text-dim);margin-top:4px;font-size:.85rem}.hero-sublabel{color:var(--accent);opacity:.8;margin-top:3px;font-size:.78rem;font-weight:600}[data-theme=light] .hero-value,[data-theme=light] .hero-sublabel{color:#7c3aed}.intensity-wrap{margin-bottom:1.25rem}.intensity-header{justify-content:space-between;align-items:center;margin-bottom:7px;display:flex}.intensity-label-text{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:600}.intensity-track{background:#ffffff0f;border-radius:99px;height:8px;overflow:hidden}[data-theme=light] .intensity-track{background:#e2e8f0}.intensity-bar{border-radius:99px;width:0%;height:100%;transition:width .4s,background .4s}.bar-lite{background:linear-gradient(90deg,#22c55e,#4ade80)}.bar-easy{background:linear-gradient(90deg,#22c55e,#86efac)}.bar-moderate{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.bar-intense{background:linear-gradient(90deg,#f97316,#fb923c)}.bar-epic{background:linear-gradient(90deg,#ef4444,#f87171)}.intensity-badge{letter-spacing:.3px;border-radius:99px;padding:3px 10px;font-size:.7rem;font-weight:700}.badge-lite{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d}.badge-easy{color:#16a34a;background:#22c55e26;border:1px solid #22c55e4d}.badge-moderate{color:#d97706;background:#f59e0b26;border:1px solid #f59e0b4d}.badge-intense{color:#ea580c;background:#f9731626;border:1px solid #f973164d}.badge-epic{color:#dc2626;background:#ef444426;border:1px solid #ef44444d}.stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1.25rem;display:grid}.stat-cell{border:1px solid var(--border);text-align:center;background:#ffffff08;border-radius:10px;padding:10px 8px}[data-theme=light] .stat-cell{background:#edf2f9;border-color:#0000001a}.stat-icon{margin-bottom:2px;font-size:1rem;line-height:1}.stat-val{font-family:var(--font-mono);color:var(--text-main);font-size:.95rem;font-weight:700;line-height:1.2}.stat-lbl{color:var(--text-muted);margin-top:3px;font-size:.68rem}.formula-strip{flex-wrap:wrap;gap:8px;margin-bottom:1rem;display:flex}.formula-pill{color:var(--accent);font-family:var(--font-mono);background:#a855f71a;border:1px solid #a855f740;border-radius:20px;padding:5px 14px;font-size:.75rem}[data-theme=light] .formula-pill{color:#7c3aed;background:#7c3aed14;border-color:#7c3aed33}.alert-stack{flex-direction:column;gap:6px;margin-bottom:1rem;display:flex}.alert{border-radius:8px;padding:8px 14px;font-size:.8rem}.alert-info{color:var(--text-dim);background:#a855f714;border:1px solid #a855f733}.alert-success{color:#4ade80;background:#22c55e14;border:1px solid #22c55e33}.alert-warn{color:#fbbf24;background:#f59e0b1a;border:1px solid #f59e0b40}[data-theme=light] .alert-info{color:#4c1d95;background:#f5f3ff;border-color:#7c3aed33}[data-theme=light] .alert-success{color:#166534;background:#f0fdf4;border-color:#22c55e4d}[data-theme=light] .alert-warn{color:#92400e;background:#fffbeb;border-color:#f59e0b4d}.action-bar{gap:8px;margin-top:1rem;display:flex}.action-btn{border:1px solid var(--border);background:var(--input-bg);color:var(--text-dim);cursor:pointer;border-radius:8px;flex:1;padding:9px 6px;font-size:.78rem;transition:all .2s}.action-btn:hover{border-color:var(--accent);color:var(--accent);background:#a855f714}[data-theme=light] .action-btn{background:#f0f4f9;border-color:#0000001f}[data-theme=light] .action-btn:hover{color:#7c3aed;background:#f5f3ff;border-color:#7c3aed}.chart-outer{background:var(--card);border:1px solid var(--border);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}[data-theme=light] .chart-outer{background:#fffffff2;box-shadow:0 2px 12px #0000000f}.section-title{margin:0 0 1rem;font-size:.9rem;font-weight:600}.schedule-section{background:var(--card);border:1px solid var(--border);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}[data-theme=light] .schedule-section{background:#fffffff2;box-shadow:0 2px 12px #0000000f}.schedule-header{flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:1rem;display:flex}.schedule-note{color:var(--text-muted);margin:0;font-size:.8rem}.schedule-note strong{color:var(--accent)}[data-theme=light] .schedule-note strong{color:#7c3aed}.schedule-table-wrap{overflow-x:auto}.sched-table{border-collapse:collapse;width:100%;font-size:.85rem}.sched-table th{color:var(--text-dim);text-transform:uppercase;text-align:left;white-space:nowrap;background:#a855f71a;padding:8px 12px;font-size:.72rem}.sched-table td{border-bottom:1px solid var(--border);color:var(--text-main);padding:8px 12px}.sched-table tr:last-child td{border-bottom:none}.sched-table tr.sched-today td:first-child{color:var(--accent);font-weight:700}.sched-table tr.sched-today td{background:#a855f70d}.sched-table tr.sched-more td{color:var(--text-muted);text-align:center;padding:6px;font-size:.8rem}[data-theme=light] .sched-table th{color:#475569;background:#edf2f9}[data-theme=light] .sched-table td{border-color:#0000000f}[data-theme=light] .sched-table tr.sched-today td{background:#7c3aed0a}[data-theme=light] .sched-table tr.sched-today td:first-child{color:#7c3aed}.compare-controls{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:1.25rem;padding:10px 16px;display:flex}[data-theme=light] .compare-controls{background:#fffc}.compare-label{color:var(--text-muted);white-space:nowrap;font-size:.78rem}.compare-break-chips{flex-wrap:wrap;gap:6px;display:flex}.cbchip{border:1px solid var(--border);background:var(--input-bg);color:var(--text-dim);cursor:pointer;border-radius:99px;padding:5px 12px;font-size:.75rem;font-weight:600;transition:all .2s}.cbchip.active{border-color:var(--accent);color:var(--accent);background:#a855f71a}.cbchip:hover:not(.active){border-color:var(--accent);color:var(--text-main)}[data-theme=light] .cbchip{background:#f0f4f9;border-color:#0000001f}[data-theme=light] .cbchip.active{color:#7c3aed;background:#7c3aed14;border-color:#7c3aed}.compare-hint{color:var(--text-muted);margin-left:auto;font-size:.75rem;font-style:italic}@media (width<=700px){.compare-hint{display:none}}.section-box{background:var(--card);border:1px solid var(--border);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}[data-theme=light] .section-box{background:#fffffff2;box-shadow:0 2px 12px #0000000f}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:500px;font-size:.85rem}.data-table th{color:var(--text-dim);text-transform:uppercase;text-align:left;white-space:nowrap;background:#a855f71a;padding:10px 12px;font-size:.72rem}.data-table td{border-bottom:1px solid var(--border);color:var(--text-main);padding:9px 12px}.data-table tr:hover td{background:#a855f70a}.data-table tr:last-child td{border-bottom:none}[data-theme=light] .data-table th{color:#475569;background:#edf2f9}[data-theme=light] .data-table td{border-color:#0000000f}[data-theme=light] .data-table tr:hover td{background:#7c3aed0a}.franchise-row{cursor:pointer;transition:background .15s}.difficulty-badge{letter-spacing:.3px;border-radius:99px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-block}.diff-easy{color:#22c55e;background:#22c55e26}.diff-moderate{color:#a855f7;background:#a855f726}.diff-hard{color:#f59e0b;background:#f59e0b26}.diff-epic{color:#ef4444;background:#ef444426}[data-theme=light] .diff-easy{color:#16a34a;background:#f0fdf4}[data-theme=light] .diff-moderate{color:#7c3aed;background:#f5f3ff}[data-theme=light] .diff-hard{color:#d97706;background:#fffbeb}[data-theme=light] .diff-epic{color:#dc2626;background:#fff1f2}.planner-header{margin-bottom:1.5rem}.planner-header h3{margin:0 0 .4rem;font-size:1.1rem;font-weight:700}.plan-subtitle{color:var(--text-dim);margin:0;font-size:.875rem}.planner-add{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:1.25rem;display:flex}.planner-add .glass-input{flex:1;min-width:120px}.input-mins{flex-shrink:0;width:140px}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:10px 20px;font-weight:600;transition:opacity .2s}.btn-primary:hover{opacity:.85}.empty-state{background:var(--card);border:1px dashed var(--border);color:var(--text-muted);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin-bottom:1.5rem;padding:3rem 2rem;display:flex}[data-theme=light] .empty-state{background:#f8fafc}.empty-icon{opacity:.5;font-size:2.5rem}.empty-state p{margin:0;font-size:.875rem}.book-list{flex-direction:column;gap:8px;margin-bottom:1.5rem;display:flex}.book-item{background:var(--card);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;transition:border-color .2s;display:flex}.book-item:hover{border-color:var(--accent)}[data-theme=light] .book-item{background:#fffffff2;box-shadow:0 1px 4px #0000000f}[data-theme=light] .book-item:hover{border-color:#7c3aed}.book-num{width:24px;height:24px;color:var(--accent);background:#a855f726;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex}[data-theme=light] .book-num{color:#7c3aed;background:#f5f3ff}.book-info{flex:1;min-width:0}.book-name{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.book-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.book-time{font-family:var(--font-mono);color:var(--accent);white-space:nowrap;font-size:.82rem}[data-theme=light] .book-time{color:#7c3aed}.book-reorder{gap:2px;display:flex}.reorder-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:2px 5px;font-size:.9rem;line-height:1;transition:all .15s}.reorder-btn:not([disabled]):hover{border-color:var(--accent);color:var(--accent)}.reorder-btn[disabled]{opacity:.3;cursor:not-allowed}[data-theme=light] .reorder-btn{border-color:#0000001f}.book-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:.85rem;transition:color .15s}.book-remove:hover{color:#ef4444}.planner-summary{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:1.5rem}[data-theme=light] .planner-summary{background:#fffffff2;box-shadow:0 2px 12px #0000000f}.plan-stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:1.25rem;display:grid}@media (width<=600px){.plan-stat-grid{grid-template-columns:repeat(2,1fr)}}.plan-stat{text-align:center;border:1px solid var(--border);background:#ffffff08;border-radius:10px;padding:12px}[data-theme=light] .plan-stat{background:#edf2f9}.plan-val{font-family:var(--font-mono);color:var(--accent);font-size:1.15rem;font-weight:700}[data-theme=light] .plan-val{color:#7c3aed}.plan-lbl{color:var(--text-muted);margin-top:2px;font-size:.7rem}.btn-load-calc{background:linear-gradient(135deg, var(--accent), #7c3aed);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:11px;font-size:.9rem;font-weight:700;transition:opacity .2s;box-shadow:0 4px 14px #a855f74d}.btn-load-calc:hover{opacity:.88}.page-sections-outer{max-width:1600px;margin:0 auto;padding:0 1.5rem 3rem}.section-h2{margin:0 0 1.25rem;font-family:Plus Jakarta Sans,sans-serif;font-size:1.4rem;font-weight:700}.how-section{margin-bottom:3rem}.how-steps{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;display:grid}.how-step{background:var(--card);border:1px solid var(--border);border-radius:14px;align-items:flex-start;gap:16px;padding:1.25rem;display:flex}[data-theme=light] .how-step{background:#fff;box-shadow:0 1px 4px #0000000f}.step-num{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:flex}.step-body strong{margin-bottom:4px;display:block}.step-body p{color:var(--text-dim);margin:0;font-size:.85rem}.formula-pills2{margin-bottom:3rem}.pill-row{flex-wrap:wrap;gap:10px;display:flex}.fpill{color:var(--accent);font-family:var(--font-mono);background:#a855f714;border:1px solid #a855f733;border-radius:30px;padding:8px 18px;font-size:.8rem}[data-theme=light] .fpill{color:#7c3aed;background:#7c3aed0f;border-color:#7c3aed2e}.faq-section{margin-bottom:3rem}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid #ffffff0f}.faq-item__question{cursor:pointer;color:var(--text-main);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(--font-mono);color:var(--text-dim);flex-shrink:0;margin-left:16px;font-size:1.1rem;transition:color .2s}.faq-item[open] .faq-item__question:after{content:"−";color:var(--accent)}.faq-item__question:hover{color:var(--accent)}.faq-item__answer{color:var(--text-dim);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;overflow:hidden;box-shadow:0 1px 4px #0000000f}[data-theme=light] .faq-item[open]{border-color:#7c3aed66 #7c3aed66 #7c3aed66 #7c3aed;border-left-style:solid;border-left-width:3px}[data-theme=light] .faq-item__question{color:#0f172a;padding:14px 16px}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}.calc-related{margin-bottom:2rem}.related-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.related-card{background:var(--card);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;padding:12px 16px;font-size:.85rem;transition:all .2s;display:flex}.related-card:hover{border-color:var(--accent);background:#a855f70f}[data-theme=light] .related-card{background:#fff}[data-theme=light] .related-card:hover{background:#f5f3ff;border-color:#7c3aed}.rel-icon{font-size:1.2rem}.calc-page-footer{border-top:1px solid var(--border);padding:2rem 0 1rem}.calc-page-footer__inner{max-width:1600px;margin:0 auto;padding:0 1.5rem}.calc-page-footer .footer-grid{grid-template-columns:2fr 1fr 1fr;gap:2rem;margin-bottom:2rem;display:grid}@media (width<=700px){.calc-page-footer .footer-grid{grid-template-columns:1fr 1fr}}.footer-logo{height:32px}.footer-brand-name{letter-spacing:1.5px;margin-top:6px;font-size:.85rem;font-weight:700;display:block}.footer-tagline{color:var(--text-muted);margin:4px 0 0;font-size:.78rem}.footer-col-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:8px;font-size:.75rem;display:block}.footer-link{color:var(--text-dim);margin-bottom:5px;font-size:.82rem;display:block}.footer-link:hover{color:var(--accent)}.footer-bottom{color:var(--text-muted);border-top:1px solid var(--border);padding-top:1rem;font-size:.75rem}.back-to-top{z-index:900;border:1px solid var(--border);background:var(--card);width:40px;height:40px;color:var(--text-dim);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:all .2s;display:none;position:fixed;bottom:24px;right:24px}.back-to-top:hover{border-color:var(--accent);color:var(--accent)}.back-to-top.visible{display:flex}.toast{z-index:9999;white-space:nowrap;border-radius:8px;padding:10px 20px;font-size:.875rem;animation:.3s fadeInUp;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast-success{color:#34d399;background:#1e293b;border:1px solid #10b98166}.toast-warn{color:#fbbf24;background:#1e293b;border:1px solid #f59e0b66}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.skip-link{position:absolute;left:-9999px}.skip-link:focus{position:static}