:root{--bg-dark:#050510;--card:#ffffff0a;--input-bg:#ffffff0f;--border:#ffffff14;--text-main:#fff;--text-dim:#88a;--text-muted:#666;--cyan:#00f3ff;--purple:#bc13fe;--amber:#f59e0b;--accent:#f59e0b;--font-mono:"JetBrains Mono", monospace}[data-theme=light]{--bg-dark:#e8edf5;--card:#fffffff2;--input-bg:#edf2f9;--border:#0000001f;--text-main:#0f172a;--text-dim:#334155;--text-muted:#64748b;--amber:#a16207;--accent:#a16207}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-dark);color:var(--text-main);min-height:100vh;font-family:Inter,sans-serif;font-size:15px;line-height:1.6}.calc-shell{max-width:1200px;margin:0 auto;padding:1.5rem 1.5rem 3rem}.breadcrumb{color:var(--text-dim);align-items:center;gap:.4rem;margin-bottom:1.2rem;font-size:.8rem;display:flex}.breadcrumb a{color:var(--text-dim);text-decoration:none}.breadcrumb a:hover{color:var(--amber)}.bc-sep{opacity:.4}.calc-hero{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.hero-icon-wrap{background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:2.4rem;display:flex}[data-theme=light] .hero-icon-wrap{background:#a1620714;border-color:#a1620733}.hero-text h1{font-size:1.6rem;font-weight:700}.hero-sub{color:var(--text-dim);margin-top:.2rem;font-size:.9rem}.hero-stat-row{grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}@media (width<=700px){.hero-stat-row{grid-template-columns:repeat(2,1fr)}}.hero-stat-card{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:10px;padding:.85rem 1rem}[data-theme=light] .hero-stat-card{background:#fff;box-shadow:0 1px 4px #00000014}.hero-stat-val{font-family:var(--font-mono);color:var(--amber);font-size:1.4rem;font-weight:700;display:block}.hero-stat-lbl{color:var(--text-dim);font-size:.72rem}.tab-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem;display:flex}.tab-btn{border:1px solid var(--border);background:var(--card);color:var(--text-dim);cursor:pointer;border-radius:8px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500;transition:all .2s}.tab-btn:hover{color:var(--text-main);border-color:var(--amber)}.tab-btn.active{border-color:var(--amber);color:var(--amber);background:#f59e0b1f;font-weight:600}[data-theme=light] .tab-btn.active{color:#a16207;background:#a162071a;border-color:#a16207}.tab-panel{display:none}.tab-panel.active{display:block}.panel-grid{grid-template-columns:1fr 1fr;gap:1.2rem;display:grid}@media (width<=900px){.panel-grid{grid-template-columns:1fr}}.input-card,.result-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.4rem}.input-card{border-left:3px solid var(--amber)}.result-card{border-left:3px solid var(--purple)}[data-theme=light] .input-card,[data-theme=light] .result-card{background:#fff;box-shadow:0 2px 12px #00000012}.card-title{letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);margin-bottom:1rem;font-size:.82rem;font-weight:700}.input-group{margin-bottom:1rem}.input-label{color:var(--text-dim);margin-bottom:.35rem;font-size:.8rem;display:block}.input-hint{color:var(--text-muted);margin-top:.25rem;font-size:.72rem;display:block}.glass-input{background:var(--input-bg);border:1px solid var(--border);width:100%;color:var(--text-main);border-radius:8px;outline:none;padding:.55rem .9rem;font-size:.95rem;transition:border-color .2s}.glass-input:focus{border-color:var(--amber)}.glass-input::placeholder{color:var(--text-muted)}[data-theme=light] .glass-input{background:#edf2f9}[data-theme=light] .glass-input::placeholder{color:#00000059}.glass-select{background:var(--input-bg);border:1px solid var(--border);width:100%;color:var(--text-main);cursor:pointer;border-radius:8px;outline:none;padding:.55rem .9rem;font-size:.9rem}.glass-select:focus{border-color:var(--amber)}[data-theme=light] .glass-select{background:#edf2f9}[data-theme=light] .glass-select option{color:#0f172a;background:#fff}.input-with-unit{align-items:center;gap:.5rem;display:flex}.input-with-unit .glass-input{flex:1}.unit-badge{background:var(--input-bg);border:1px solid var(--border);color:var(--text-dim);white-space:nowrap;font-size:.8rem;font-family:var(--font-mono);border-radius:6px;padding:.5rem .7rem}[data-theme=light] .unit-badge{background:#edf2f9}.chip-row{flex-wrap:wrap;gap:.5rem;display:flex}.chip{border:1px solid var(--border);background:var(--input-bg);color:var(--text-dim);cursor:pointer;border-radius:20px;padding:.4rem .85rem;font-size:.8rem;transition:all .2s}.chip:hover{border-color:var(--amber);color:var(--text-main)}.chip.active{border-color:var(--amber);color:var(--amber);background:#f59e0b26;font-weight:600}[data-theme=light] .chip{background:#edf2f9}[data-theme=light] .chip.active{color:#a16207;background:#a162071a;border-color:#a16207}.result-hero{align-items:baseline;gap:.5rem;margin:.5rem 0 1rem;display:flex}.result-big{font-family:var(--font-mono);color:var(--amber);font-size:3rem;font-weight:800;line-height:1}.result-unit{color:var(--text-dim);font-size:.95rem}.span-status-box{border:1px solid var(--border);background:var(--input-bg);border-radius:8px;margin-bottom:1rem;padding:.7rem 1rem}[data-theme=light] .span-status-box{background:#edf2f9}.span-status-box.pass{background:#10b98114;border-color:#10b9814d}.span-status-box.fail{background:#ef444414;border-color:#ef44444d}.span-status-box.warn{background:#f59e0b14;border-color:#f59e0b4d}[data-theme=light] .span-status-box.pass{background:#f0fdf4;border-color:#10b98166}[data-theme=light] .span-status-box.fail{background:#fff1f2;border-color:#ef444466}[data-theme=light] .span-status-box.warn{background:#fffbeb;border-color:#f59e0b66}.span-status-val{font-size:.95rem;font-weight:700}.span-status-box.pass .span-status-val{color:#10b981}.span-status-box.fail .span-status-val{color:#ef4444}.span-status-box.warn .span-status-val{color:#f59e0b}.span-status-desc{color:var(--text-dim);margin-top:.2rem;font-size:.78rem}.stat-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem;display:grid}@media (width<=500px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.stat-cell{border:1px solid var(--border);text-align:center;background:#ffffff08;border-radius:8px;padding:.65rem .5rem}[data-theme=light] .stat-cell{background:#edf2f9}.stat-val{font-family:var(--font-mono);color:var(--text-main);font-size:1.1rem;font-weight:700;display:block}.stat-lbl{color:var(--text-dim);font-size:.7rem}.chart-section{margin-top:1rem}.chart-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:.6rem;font-size:.78rem;font-weight:600}.framing-plan-section{margin-top:1.25rem}.framing-plan-svg{border:1px solid var(--border);background:#ffffff05;border-radius:8px;width:100%;height:auto;display:block;overflow:visible}[data-theme=light] .framing-plan-svg{background:#edf2f9}.ref-two-col{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=800px){.ref-two-col{grid-template-columns:1fr}}.ref-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:.75rem;font-size:.85rem;font-weight:700}.ref-table{border-collapse:collapse;width:100%;font-size:.82rem}.ref-table th{color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border);background:#f59e0b14;padding:.55rem .75rem;font-weight:700}[data-theme=light] .ref-table th{color:#334155;background:#a1620712}.ref-table td{border-bottom:1px solid var(--border);color:var(--text-dim);padding:.5rem .75rem}.ref-table tr:last-child td{border-bottom:none}.ref-table tr:hover td{background:#ffffff05}[data-theme=light] .ref-table tr:hover td{background:#f0f4f9}.ref-table td:first-child{color:var(--text-main);font-family:var(--font-mono);font-weight:600}.span-table td{text-align:center}.span-table td:first-child{text-align:left}.table-note{color:var(--text-muted);margin-top:.75rem;font-size:.78rem;font-style:italic}.info-box{color:var(--text-dim);background:#f59e0b0d;border:1px solid #f59e0b26;border-radius:8px;padding:.85rem;font-size:.8rem;line-height:1.7}[data-theme=light] .info-box{background:#fffbeb;border-color:#a1620733}.page-sections-outer{max-width:1200px;margin:0 auto;padding:0 1.5rem 3rem}.formula-pills2{margin-bottom:2rem}.fp2-title{margin-bottom:1rem;font-size:1.1rem;font-weight:700}.fp2-grid{flex-wrap:wrap;gap:.6rem;display:flex}.fp2-pill{background:#f59e0b0f;border:1px solid #f59e0b26;border-radius:8px;flex-direction:column;gap:.15rem;padding:.55rem .9rem;display:flex}[data-theme=light] .fp2-pill{background:#a162070d;border-color:#a1620726}.fp2-name{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.fp2-eq{font-family:var(--font-mono);color:var(--amber);font-size:.85rem;font-weight:600}.faq-section{margin-bottom:2.5rem}.faq-title{margin-bottom:1rem;font-size:1.1rem;font-weight:700}.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(--amber)}.faq-item__question:hover{color:var(--amber)}.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:hover{border-color:#a162074d}[data-theme=light] .faq-item[open]{border-color:#a1620766 #a1620766 #a1620766 #a16207;border-left-style:solid;border-left-width:3px}[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:#a16207}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}.calc-related{margin-bottom:2rem}.related-title{margin-bottom:1rem;font-size:1.1rem;font-weight:700}.related-grid{flex-wrap:wrap;gap:.75rem;display:flex}.related-card{background:var(--card);border:1px solid var(--border);color:var(--text-main);border-radius:10px;align-items:center;gap:.6rem;padding:.65rem 1rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.related-card:hover{border-color:var(--amber);color:var(--amber)}[data-theme=light] .related-card{background:#fff;box-shadow:0 1px 4px #0000000f}[data-theme=light] .related-card:hover{color:#a16207;border-color:#a16207}.related-icon{font-size:1.1rem}.how-title{margin-bottom:1.5rem;font-size:1.25rem;font-weight:700}.how-steps{flex-direction:column;gap:1rem;list-style:none;display:flex}.how-step{color:var(--text-dim,#88a);align-items:flex-start;gap:1rem;font-size:.9rem;line-height:1.7;display:flex}.how-num{background:var(--cyan,#00f3ff);color:#050510;font-family:var(--font-mono,monospace);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:28px;height:28px;font-size:.85rem;font-weight:700;display:flex}[data-theme=light] .how-num{color:#fff;background:#0e7490}.how-step strong{color:var(--text-main,#fff)}.gloss-section2{margin-bottom:3rem}.gs2-title{margin-bottom:1rem;font-size:1.1rem;font-weight:700}.gs2-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width<=700px){.gs2-grid{grid-template-columns:1fr}}.gs2-item{background:var(--card,#ffffff0a);border:1px solid var(--border,#ffffff1a);color:var(--text-dim,#88a);border-radius:10px;padding:1rem;font-size:.83rem;line-height:1.7}[data-theme=light] .gs2-item{background:#fff;border-color:#0000001a;box-shadow:0 1px 3px #0000000d}.gs2-item strong{color:var(--text-main,#fff)}@media print{.glass-navbar,.calc-page-footer,.calc-back-to-top,.tab-nav,.tabs-outer,.outer-tab-nav,.tab-btn,.act-row,.act-row2,.action-bar,.btn-copy,.btn-share,.btn-csv,.btn-pdf,.btn-export-pdf,.share-btn,.copy-btn,.print-btn,.how-section,.formula-pills2,.gloss-section2,.ex-section2,.faq-section,.faq-section-extra,.calc-related,.page-sections-outer{display:none!important}body{color:#000;background:#fff}.result-card,.stat-card,.card,.glass-card,.result-panel{box-shadow:none;page-break-inside:avoid;color:#000;background:#fff;border:1px solid #ccc}.stat-value,.stat-label,.result-value,h1,h2,h3{color:#000;text-shadow:none}.tab-panel{display:block!important}}.toast{color:#fff;z-index:9999;pointer-events:none;border-radius:10px;padding:.75rem 1.25rem;font-size:.85rem;animation:.3s toastIn;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 20px #0006}.toast-success{background:#00c896f2}.toast-warn{background:#f59e0bf2}.toast-error{background:#dc2626f2}.toast-info{background:#00a0c8f2}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.act-row{flex-wrap:wrap;gap:.5rem;display:flex}.act-btn{color:#00f3ff;cursor:pointer;background:#00f3ff14;border:1px solid #00f3ff4d;border-radius:8px;padding:.45rem 1rem;font-size:.8rem;transition:background .2s,border-color .2s}.act-btn:hover{background:#00f3ff2e;border-color:#00f3ff}[data-theme=light] .act-btn{color:#0e7490;background:#0e749014;border-color:#0e74904d}[data-theme=light] .act-btn:hover{background:#0e749026}