:root{--bg-dark:#050510;--card:#ffffff0a;--input-bg:#ffffff0f;--border:#ffffff14;--text-main:#fff;--text-dim:#88a;--text-muted:#666;--cyan:#00f3ff;--purple:#bc13fe;--green:#22c55e;--accent:#22c55e;--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;--cyan:#0e7490;--purple:#7c3aed;--green:#15803d;--accent:#15803d}*,: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(--green)}.bc-sep{opacity:.4}.calc-hero{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.hero-icon-wrap{background:#22c55e1a;border:1px solid #22c55e33;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:#15803d1a;border-color:#15803d33}.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:#22c55e;font-size:1.3rem;font-weight:700;display:block}[data-theme=light] .hero-stat-val{color:#15803d}.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:#22c55e}.tab-btn.active{color:#22c55e;background:#22c55e1f;border-color:#22c55e;font-weight:600}[data-theme=light] .tab-btn{background:#f0f4f9}[data-theme=light] .tab-btn.active{color:#15803d;background:#15803d1a;border-color:#15803d}.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 #22c55e}.result-card{border-left:3px solid var(--purple)}[data-theme=light] .input-card{border-left-color:#15803d}[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}.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:#22c55e}.glass-input::placeholder{color:var(--text-muted)}[data-theme=light] .glass-input{background:#edf2f9}[data-theme=light] .glass-input::placeholder{color:#00000059}.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{color:var(--text-main);border-color:#22c55e}.chip.active{color:#22c55e;background:#22c55e26;border-color:#22c55e;font-weight:600}[data-theme=light] .chip{background:#edf2f9}[data-theme=light] .chip.active{color:#15803d;background:#15803d1a;border-color:#15803d}.result-hero{align-items:baseline;gap:.5rem;margin:.5rem 0 1rem;display:flex}.result-big{font-family:var(--font-mono);color:#22c55e;font-size:3rem;font-weight:800;line-height:1}[data-theme=light] .result-big{color:#15803d}.result-unit{color:var(--text-dim);font-size:.95rem}.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;border-color:#0000001a}.stat-val{font-family:var(--font-mono);color:var(--text-main);font-size:1.05rem;font-weight:700;display:block}.stat-lbl{color:var(--text-dim);font-size:.7rem}.cost-compare-box{border:1px solid var(--border);background:#ffffff08;border-radius:10px;margin-bottom:1rem;padding:.85rem 1rem}[data-theme=light] .cost-compare-box{background:#edf2f9;border-color:#0000001a}.cc-row{justify-content:space-between;align-items:center;padding:.3rem 0;display:flex}.cc-row+.cc-row{border-top:1px solid var(--border)}[data-theme=light] .cc-row+.cc-row{border-color:#00000014}.cc-label{color:var(--text-dim);font-size:.82rem}.cc-val{font-family:var(--font-mono);color:var(--text-main);font-size:1rem;font-weight:700}.cc-diy{color:#22c55e}.cc-pro{color:var(--cyan)}[data-theme=light] .cc-diy{color:#15803d}[data-theme=light] .cc-pro{color:#0e7490}.cc-savings-row{margin-top:.2rem}.cc-savings-row .cc-val{color:#f59e0b}[data-theme=light] .cc-savings-row .cc-val{color:#a16207}.chart-section{margin-top:.75rem}.chart-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:.6rem;font-size:.78rem;font-weight:600}.cost-analysis-wrap{flex-direction:column;gap:1.5rem;display:flex}.cost-chart-card,.cost-table-card,.cost-per-sqft-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.4rem}[data-theme=light] .cost-chart-card,[data-theme=light] .cost-table-card,[data-theme=light] .cost-per-sqft-card{background:#fff;box-shadow:0 2px 8px #00000012}.section-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:1rem;font-size:.88rem;font-weight:700}.cost-table{border-collapse:collapse;width:100%;font-size:.84rem}.cost-table th{color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border);background:#22c55e14;padding:.55rem .75rem;font-weight:700}[data-theme=light] .cost-table th{color:#334155;background:#15803d12}.cost-table td{border-bottom:1px solid var(--border);color:var(--text-dim);padding:.5rem .75rem}.cost-table tr:last-child td{border-bottom:none}.cost-table tr:hover td{background:#ffffff05}[data-theme=light] .cost-table tr:hover td{background:#f0f4f9}.cost-table td:first-child{color:var(--text-main);font-weight:600}.cost-table .td-diy{color:#22c55e;font-family:var(--font-mono);font-weight:700}.cost-table .td-pro{color:var(--cyan);font-family:var(--font-mono);font-weight:700}[data-theme=light] .cost-table .td-diy{color:#15803d}[data-theme=light] .cost-table .td-pro{color:#0e7490}.cpf-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width<=500px){.cpf-grid{grid-template-columns:1fr}}.cpf-card{border:1px solid var(--border);text-align:center;background:#ffffff08;border-radius:10px;padding:.9rem 1rem}[data-theme=light] .cpf-card{background:#edf2f9;border-color:#0000001a}.cpf-label{color:var(--text-dim);margin-bottom:.4rem;font-size:.75rem}.cpf-val{font-family:var(--font-mono);font-size:1.6rem;font-weight:800}.cpf-val.diy{color:#22c55e}.cpf-val.pro{color:var(--cyan)}[data-theme=light] .cpf-val.diy{color:#15803d}[data-theme=light] .cpf-val.pro{color:#0e7490}.cpf-sub{color:var(--text-muted);margin-top:.2rem;font-size:.72rem}.compare-intro{background:var(--card);border:1px solid var(--border);color:var(--text-dim);border-radius:10px;margin-bottom:1.2rem;padding:1rem 1.2rem;font-size:.88rem}[data-theme=light] .compare-intro{color:#334155;background:#eff9fb;border-color:#0e749033}.compare-table-wrap{margin-bottom:1.5rem;overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;min-width:520px;font-size:.84rem}.compare-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-dim);background:#ffffff08;padding:.65rem .9rem;font-weight:700}[data-theme=light] .compare-table th{color:#334155;background:#edf2f9}.compare-table th.col-open{color:#22c55e}.compare-table th.col-closed{color:var(--cyan)}[data-theme=light] .compare-table th.col-open{color:#15803d}[data-theme=light] .compare-table th.col-closed{color:#0e7490}.compare-table td{border-bottom:1px solid var(--border);color:var(--text-dim);padding:.55rem .9rem}.compare-table tr:last-child td{border-bottom:none}.compare-table tr:hover td{background:#ffffff05}[data-theme=light] .compare-table tr:hover td{background:#f0f4f9}.compare-table td:first-child{color:var(--text-main);font-weight:600}.val-yes{color:#22c55e;font-weight:600}.val-no{color:#f87171}[data-theme=light] .val-yes{color:#15803d}[data-theme=light] .val-no{color:#dc2626}.use-case-grid{grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1rem;display:grid}@media (width<=700px){.use-case-grid{grid-template-columns:1fr}}.use-case-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.1rem 1.2rem}[data-theme=light] .use-case-card{background:#fff;box-shadow:0 1px 6px #00000012}.oc-card{border-left:3px solid #22c55e}.cc-card{border-left:3px solid var(--cyan)}[data-theme=light] .oc-card{border-left-color:#15803d}[data-theme=light] .cc-card{border-left-color:#0e7490}.uc-header{text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem;font-size:.82rem;font-weight:700}.oc-card .uc-header{color:#22c55e}.cc-card .uc-header{color:var(--cyan)}[data-theme=light] .oc-card .uc-header{color:#15803d}[data-theme=light] .cc-card .uc-header{color:#0e7490}.uc-list{flex-direction:column;gap:.4rem;padding-left:1.1rem;display:flex}.uc-list li{color:var(--text-dim);font-size:.84rem}.guide-grid{grid-template-columns:repeat(3,1fr);gap:1.2rem;display:grid}@media (width<=1000px){.guide-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.guide-grid{grid-template-columns:1fr}}.guide-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.2rem}[data-theme=light] .guide-card{background:#fff;box-shadow:0 1px 8px #00000012}.guide-icon{margin-bottom:.6rem;font-size:1.8rem}.guide-card-title{color:#22c55e;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.88rem;font-weight:700}[data-theme=light] .guide-card-title{color:#15803d}.guide-list{flex-direction:column;gap:.5rem;padding-left:1.1rem;display:flex}.guide-list li{color:var(--text-dim);font-size:.82rem;line-height:1.6}.guide-list strong{color:var(--text-main)}.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:#22c55e0f;border:1px solid #22c55e26;border-radius:8px;flex-direction:column;gap:.15rem;padding:.55rem .9rem;display:flex}[data-theme=light] .fp2-pill{background:#15803d0d;border-color:#15803d26}.fp2-name{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.fp2-eq{font-family:var(--font-mono);color:#22c55e;font-size:.85rem;font-weight:600}[data-theme=light] .fp2-eq{color:#15803d}.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:#22c55e}.faq-item__question:hover{color:#22c55e}.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:#15803d4d}[data-theme=light] .faq-item[open]{border-color:#15803d66 #15803d66 #15803d66 #15803d;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:#15803d}[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{color:#22c55e;border-color:#22c55e}[data-theme=light] .related-card{background:#fff;box-shadow:0 1px 4px #0000000f}[data-theme=light] .related-card:hover{color:#15803d;border-color:#15803d}.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);align-items:flex-start;gap:1rem;font-size:.9rem;line-height:1.7;display:flex}.how-num{background:var(--cyan);color:#050510;font-family:var(--font-mono);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)}.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);border:1px solid var(--border);color:var(--text-dim);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)}@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}