.main-container{max-width:1100px;margin:0 auto;padding:40px 20px 64px}.page-title{font-family:var(--calc-font-headline);color:var(--calc-text-primary);letter-spacing:-.01em;margin:0 0 .5rem;font-size:clamp(1.7rem,4vw,2.5rem);font-weight:800}.page-subtitle{color:var(--calc-text-faded);max-width:70ch;margin:0 0 1.75rem;font-size:1.02rem;line-height:1.55}.action-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.action-btn{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);font-family:var(--calc-font-headline);cursor:pointer;padding:.5rem .9rem;font-size:.85rem;font-weight:600;transition:border-color .15s,background .15s,transform .1s}.action-btn:hover{border-color:var(--calc-cyan);color:var(--calc-cyan)}.action-btn:active{transform:translateY(1px)}.action-btn--reset{margin-left:auto}.mode-tabs{border-bottom:1px solid var(--calc-border-subtle);flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;padding-bottom:.25rem;display:flex}.mode-tab{border-radius:var(--calc-radius-md) var(--calc-radius-md) 0 0;color:var(--calc-text-faded);font-family:var(--calc-font-headline);cursor:pointer;background:0 0;border:1px solid #0000;padding:.6rem 1.1rem;font-size:.92rem;font-weight:600;transition:color .15s,background .15s,border-color .15s}.mode-tab:hover{color:var(--calc-text-primary)}.mode-tab.active{color:var(--calc-cyan);background:var(--calc-bg-card);border-color:var(--calc-border-default);border-bottom-color:#0000}.calc-panel{display:none}.calc-panel.active{display:block}.input-card,.steps-card,.chart-card{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);margin-bottom:1.25rem;padding:1.25rem 1.5rem}.card-title{font-family:var(--calc-font-headline);color:var(--calc-text-primary);margin:0 0 1rem;font-size:1rem;font-weight:700}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--calc-text-faded);font-size:.9rem;font-weight:600}.form-group input{background:var(--calc-bg-input);border:1px solid var(--calc-border-strong);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);font-family:var(--calc-font-mono);width:100%;padding:.7rem .9rem;font-size:1.1rem;transition:border-color .15s,box-shadow .15s}.form-group input:focus{border-color:var(--calc-cyan);outline:none;box-shadow:0 0 0 3px #22d3ee26}.input-hint{color:var(--calc-text-dim);font-size:.82rem;line-height:1.45}.preset-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;display:flex}.preset-label{color:var(--calc-text-dim);font-size:.82rem;font-weight:600}.preset-chip{background:var(--calc-bg-glass);border:1px solid var(--calc-border-default);color:var(--calc-text-faded);font-family:var(--calc-font-mono);cursor:pointer;border-radius:999px;padding:.35rem .85rem;font-size:.82rem;transition:border-color .15s,color .15s,background .15s}.preset-chip:hover{border-color:var(--calc-cyan);color:var(--calc-cyan)}.result-cards{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.stat-result-card{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);text-align:center;padding:1.25rem 1.5rem}.stat-result-label{font-family:var(--calc-font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--calc-text-dim);margin-bottom:.5rem;font-size:.78rem}.stat-result-value{font-family:var(--calc-font-mono);color:var(--calc-cyan);word-break:break-all;font-size:clamp(2rem,6vw,3rem);font-weight:700;line-height:1.05}.stat-result-value.result-value--partial,.stat-result-value.result-value--idle{color:var(--calc-text-dim)}.stat-result-sub{color:var(--calc-text-faded);margin-top:.5rem;font-size:.85rem;line-height:1.4}.interpretation{background:var(--calc-bg-glass);border:1px solid var(--calc-border-subtle);border-left:3px solid var(--calc-cyan);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);margin:0 0 1rem;padding:.85rem 1.1rem;font-size:.95rem;line-height:1.55}.calc-warnings{border-radius:var(--calc-radius-md);color:var(--calc-text-primary);background:#f59e0b1a;border:1px solid #f59e0b59;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem;line-height:1.5}.chart-help{color:var(--calc-text-dim);margin:-.5rem 0 1rem;font-size:.85rem;line-height:1.45}.steps-help{color:var(--calc-text-faded);margin:-.5rem 0 1rem;font-size:.9rem;line-height:1.55}.factor-list{flex-direction:column;gap:.5rem;display:flex}.factor-row{font-family:var(--calc-font-mono);border-bottom:1px solid var(--calc-border-subtle);align-items:baseline;gap:.6rem;padding:.4rem .2rem;font-size:1.05rem;display:flex}.factor-n{color:var(--calc-text-faded);text-align:right;min-width:5.5ch;font-weight:600}.factor-body{color:var(--calc-cyan);font-weight:600}.table-scroll{overflow-x:auto}.pp-table{border-collapse:collapse;width:100%;font-family:var(--calc-font-mono);min-width:360px;font-size:.95rem}.pp-table th,.pp-table td{text-align:center;border-bottom:1px solid var(--calc-border-subtle);padding:.55rem .7rem}.pp-table th{color:var(--calc-text-faded);background:var(--calc-bg-glass);font-size:.82rem;font-weight:700}.pp-table td{color:var(--calc-text-primary)}.pp-table .pp-prime{color:var(--calc-text-faded);font-weight:700}.pp-table .pp-zero{color:var(--calc-text-dim)}.pp-table th.pp-gcf,.pp-table td.pp-gcf{color:var(--calc-emerald);background:#34d3991f;font-weight:700}.pp-table th.pp-lcm,.pp-table td.pp-lcm{color:var(--calc-cyan);background:#22d3ee1f;font-weight:700}.pp-empty{color:var(--calc-text-dim);font-style:italic}.pp-summary{font-family:var(--calc-font-mono);color:var(--calc-text-primary);margin-top:1rem;font-size:.95rem;line-height:1.7}.euclid-trace{flex-direction:column;gap:1rem;display:flex}.euclid-block{border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-md);background:var(--calc-bg-glass);padding:.85rem 1rem}.euclid-head{font-family:var(--calc-font-mono);color:var(--calc-cyan);margin:0 0 .5rem;font-weight:700}.euclid-table{border-collapse:collapse;width:100%}.euclid-table td{font-family:var(--calc-font-mono);color:var(--calc-text-primary);padding:.3rem .2rem;font-size:.95rem}.euclid-table strong{color:var(--calc-cyan)}.euclid-note{color:var(--calc-text-dim);margin:0;font-size:.9rem}.fraction-inputs{align-items:flex-end;gap:1rem;display:flex}.fraction-inputs .form-group{flex:1}.frac-divider{font-family:var(--calc-font-mono);color:var(--calc-text-dim);padding-bottom:.4rem;font-size:2rem}.frac-result-card{margin-top:1.25rem}.frac-result-value{color:var(--calc-purple)}.frac-steps{flex-direction:column;gap:.4rem;margin-top:1rem;display:flex}.frac-step{font-family:var(--calc-font-mono);color:var(--calc-text-faded);background:var(--calc-bg-glass);border-radius:var(--calc-radius-sm,8px);padding:.35rem .6rem;font-size:.98rem}.frac-step strong{color:var(--calc-purple)}.page-sections-outer{max-width:1100px;margin:0 auto;padding:0 1.5rem 3rem}.faq-item__question{cursor:pointer;color:var(--calc-text-primary);user-select:none;justify-content:space-between;align-items:center;padding:14px 4px;font-size:.92rem;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);color:var(--calc-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(--calc-cyan)}.faq-item__question:hover{color:var(--calc-cyan)}.faq-item__answer{color:var(--calc-text-faded);padding:0 4px 14px;font-size:.88rem;line-height:1.75}@media (width<=640px){.result-cards{grid-template-columns:1fr}.fraction-inputs{flex-direction:column;align-items:stretch}.frac-divider{display:none}.action-btn--reset{margin-left:0}}[data-theme=light] .action-btn,[data-theme=light] .input-card,[data-theme=light] .steps-card,[data-theme=light] .chart-card,[data-theme=light] .stat-result-card{background:#fff;border-color:#0000001f;box-shadow:0 1px 4px #0000000f}[data-theme=light] .action-btn:hover{color:#0891b2;border-color:#0891b2}[data-theme=light] .form-group input{background:#f0f4f9;border-color:#00000026}[data-theme=light] .form-group input:focus{border-color:#0891b2;box-shadow:0 0 0 3px #0891b226}[data-theme=light] .mode-tab.active{color:#0891b2;background:#fff;border-color:#0000001f #0000001f #0000}[data-theme=light] .stat-result-value{color:#0891b2}[data-theme=light] .frac-result-value{color:#7c3aed}[data-theme=light] .factor-body,[data-theme=light] .euclid-head,[data-theme=light] .euclid-table strong{color:#0891b2}[data-theme=light] .frac-step strong{color:#7c3aed}[data-theme=light] .preset-chip{color:#334155;background:#eef2f8;border-color:#0000001f}[data-theme=light] .preset-chip:hover{color:#0891b2;border-color:#0891b2}[data-theme=light] .interpretation{color:#0f172a;background:#eff9fb;border-color:#00000014 #00000014 #00000014 #0891b2}[data-theme=light] .calc-warnings{color:#78350f;background:#fffbeb;border-color:#d9770659}[data-theme=light] .euclid-block,[data-theme=light] .frac-step{background:#f0f4f9}[data-theme=light] .pp-table th{color:#334155;background:#eef2f8}[data-theme=light] .pp-table td{color:#0f172a}[data-theme=light] .pp-table .pp-prime{color:#334155}[data-theme=light] .pp-table .pp-zero{color:#94a3b8}[data-theme=light] .pp-table th.pp-gcf,[data-theme=light] .pp-table td.pp-gcf{color:#047857;background:#ecfdf5}[data-theme=light] .pp-table th.pp-lcm,[data-theme=light] .pp-table td.pp-lcm{color:#0891b2;background:#ecfeff}[data-theme=light] .faq-item__question{color:#0f172a}[data-theme=light] .faq-item__question:hover,[data-theme=light] .faq-item[open] .faq-item__question:after{color:#0891b2}[data-theme=light] .faq-item__answer{color:#475569}