/* ═══════════════════════════════════════════════
   SolarSizer — Stylesheet
   Light mode (default) + dark mode via [data-theme="dark"]
   ═══════════════════════════════════════════════ */

:root {
  --sun:#F5A623;--sun-light:#FEF3DC;--sun-dark:#C17D0A;
  --panel:#1A2E4A;--panel-mid:#2C4A6E;--panel-light:#E8EFF7;
  --green:#2D7A4F;--green-light:#E4F4EB;
  --red:#C0392B;--red-light:#FDECEA;
  --text:#1A1A1A;--text-muted:#666;--text-light:#999;
  --border:#E2E8F0;--bg:#F7F8FA;--white:#FFFFFF;
  --card-bg:#FFFFFF;--input-bg:#FFFFFF;
  --shadow:0 2px 12px rgba(0,0,0,0.08);--shadow-lg:0 8px 32px rgba(0,0,0,0.12);
  --radius:12px;--radius-sm:8px;--radius-lg:20px;
}

[data-theme="dark"] {
  --sun:#F5A623;--sun-light:rgba(245,166,35,0.15);--sun-dark:#D4891A;
  --panel:#0D1B2E;--panel-mid:#1A3050;--panel-light:#1E2D40;
  --green:#3FB950;--green-light:rgba(63,185,80,0.15);
  --red:#F85149;--red-light:rgba(248,81,73,0.15);
  --text:#E6EDF3;--text-muted:#8B949E;--text-light:#484F58;
  --border:#30363D;--bg:#0D1117;--white:#161B22;
  --card-bg:#161B22;--input-bg:#1C2333;
  --shadow:0 2px 12px rgba(0,0,0,0.4);--shadow-lg:0 8px 32px rgba(0,0,0,0.5);
}

*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;font-size:15px;line-height:1.6;transition:background .2s,color .2s}

/* HEADER */
header{background:var(--panel);color:white;padding:0 1.5rem;position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:56px;box-shadow:0 2px 16px rgba(0,0,0,0.25)}
.logo{display:flex;align-items:center;gap:10px;font-family:'Syne',sans-serif;font-weight:800;font-size:1.2rem;letter-spacing:-0.03em;flex-shrink:0}
.logo-sun{width:28px;height:28px;background:var(--sun);border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-sun::before{content:'';position:absolute;width:40px;height:40px;border-radius:50%;border:2px solid rgba(245,166,35,0.35)}
.logo span{color:var(--sun)}
nav{display:flex;gap:4px;align-items:center;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-left:auto}
nav::-webkit-scrollbar{display:none}
nav button{background:none;border:none;color:rgba(255,255,255,0.65);font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;padding:6px 10px;border-radius:6px;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}
nav button:hover{color:white;background:rgba(255,255,255,0.08)}
nav button.active{color:white;background:rgba(245,166,35,0.2)}
.unit-toggle{display:flex;background:rgba(255,255,255,0.1);border-radius:6px;overflow:hidden;margin-left:6px;flex-shrink:0}
.unit-toggle button{background:none;border:none;color:rgba(255,255,255,0.6);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;padding:5px 8px;cursor:pointer;transition:all .2s;white-space:nowrap}
.unit-toggle button.active{background:var(--sun);color:white}
.dark-toggle{background:none;border:none;color:rgba(255,255,255,0.7);font-size:16px;cursor:pointer;padding:6px 8px;border-radius:6px;transition:all .2s;flex-shrink:0;margin-left:4px;line-height:1}
.dark-toggle:hover{background:rgba(255,255,255,0.1);color:white}

/* LAYOUT */
main{max-width:1200px;margin:0 auto;padding:1.5rem 1rem}
.page{display:none}.page.active{display:block}
.step-content{display:none}.step-content.active{display:block}

/* WIZARD */
.wizard-header{display:flex;align-items:center;margin-bottom:1.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.25rem;overflow-x:auto;gap:0}
.wizard-step{flex:1;min-width:0;display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);transition:background .2s}
.wizard-step:hover{background:var(--bg)}
.step-num{width:26px;height:26px;border-radius:50%;background:var(--border);color:var(--text-muted);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s}
.wizard-step.active .step-num{background:var(--sun);color:white}
.wizard-step.done .step-num{background:var(--green);color:white}
.step-label{font-size:12px;color:var(--text-muted);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wizard-step.active .step-label{color:var(--text)}
.step-divider{flex:0 0 16px;height:1px;background:var(--border);margin:0 2px}

/* CARDS */
.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}
.card-title{font-family:'Syne',sans-serif;font-size:1rem;font-weight:700;color:var(--panel);margin-bottom:1rem;display:flex;align-items:center;gap:8px}
[data-theme="dark"] .card-title{color:var(--text)}
.card-title .icon{width:26px;height:26px;background:var(--sun-light);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}

/* FORMS */
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1rem}
.form-group{display:flex;flex-direction:column;gap:5px}
label{font-size:13px;font-weight:500;color:var(--text-muted)}
input[type="number"],select,input[type="text"]{height:40px;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:0 12px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--text);background:var(--input-bg);transition:border-color .2s,background .2s;width:100%}
input:focus,select:focus{outline:none;border-color:var(--sun)}
select option{background:var(--input-bg);color:var(--text)}
input[type="range"]{width:100%;height:4px;accent-color:var(--sun);cursor:pointer;margin-top:4px}

/* SYSTEM TYPES */
.system-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:1.25rem}
.sys-type{border:2px solid var(--border);border-radius:var(--radius);padding:.9rem;cursor:pointer;text-align:center;transition:all .2s;background:var(--card-bg)}
.sys-type:hover,.sys-type.selected{border-color:var(--sun);background:var(--sun-light)}
.sys-type .type-icon{font-size:24px;margin-bottom:6px;display:block}
.sys-type .type-name{font-family:'Syne',sans-serif;font-size:12px;font-weight:700;color:var(--panel)}
[data-theme="dark"] .sys-type .type-name{color:var(--text)}
.sys-type .type-desc{font-size:10px;color:var(--text-muted);margin-top:3px}

/* APPLIANCE TABLE */
.appliance-table{width:100%;border-collapse:collapse}
.appliance-table th{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1.5px solid var(--border);padding:7px 8px;text-align:left}
.appliance-table td{padding:6px 7px;border-bottom:1px solid var(--bg);vertical-align:middle}
.appliance-table th:nth-child(3),.appliance-table td:nth-child(3){min-width:70px}
.appliance-table td:nth-child(3) input{min-width:58px}
.appliance-table td:nth-child(6) input{min-width:62px}
.appliance-table tr:hover td{background:var(--bg)}
.appliance-table input{height:32px;font-size:12px}
.btn-add-row{display:flex;align-items:center;gap:6px;background:none;border:1.5px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:'DM Sans',sans-serif;font-size:13px;cursor:pointer;padding:8px 14px;margin-top:8px;width:100%;justify-content:center;transition:all .2s}
.btn-add-row:hover{border-color:var(--sun);color:var(--sun)}
.btn-del{background:none;border:none;color:var(--text-light);cursor:pointer;font-size:18px;padding:2px 5px;border-radius:4px;transition:all .2s;line-height:1}
.btn-del:hover{color:var(--red);background:var(--red-light)}

/* PRESET CHIPS */
.preset-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:1rem}
.preset-chip{background:var(--panel-light);border:1px solid var(--border);border-radius:20px;padding:4px 11px;font-size:12px;font-weight:500;color:var(--panel-mid);cursor:pointer;transition:all .2s}
[data-theme="dark"] .preset-chip{color:var(--text-muted)}
.preset-chip:hover{background:var(--sun-light);border-color:var(--sun);color:var(--sun-dark)}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:var(--radius-sm);font-family:'DM Sans',sans-serif;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}
.btn-primary{background:var(--sun);color:white}
.btn-primary:hover{background:var(--sun-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(245,166,35,0.4)}
.btn-secondary{background:var(--card-bg);color:var(--text);border:1.5px solid var(--border)}
.btn-secondary:hover{border-color:var(--text-muted)}
.btn-panel{background:var(--panel);color:white}
.btn-panel:hover{background:var(--panel-mid)}
.btn-row{display:flex;gap:10px;justify-content:flex-end;margin-top:1.5rem;align-items:center;flex-wrap:wrap}

/* RESULTS */
.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:1.5rem}
.result-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem;text-align:center}
.result-card.highlight{border-color:var(--sun);background:var(--sun-light)}
.result-card .r-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.result-card .r-value{font-family:'Syne',sans-serif;font-size:1.7rem;font-weight:800;color:var(--panel);line-height:1.1}
[data-theme="dark"] .result-card .r-value{color:var(--text)}
.result-card .r-unit{font-size:11px;color:var(--text-muted);margin-top:3px}
.result-card.highlight .r-value{color:var(--sun-dark)}
.dual-unit{font-size:10px;color:var(--text-light);margin-top:2px}

/* WIRING DIAGRAM */
.diagram-wrap{background:var(--panel);border-radius:var(--radius);padding:1.25rem;margin-bottom:0;overflow-x:auto}

/* PRODUCT CARDS */
.component-section{margin-bottom:1.75rem}
.component-section-title{font-family:'Syne',sans-serif;font-size:.85rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.9rem;padding-bottom:7px;border-bottom:1.5px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}
.spec-badge{background:var(--panel-light);color:var(--panel-mid);font-size:11px;padding:2px 9px;border-radius:20px;font-weight:500;letter-spacing:0;text-transform:none;font-family:'DM Sans',sans-serif}
[data-theme="dark"] .spec-badge{color:var(--text-muted)}
.product-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.product-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:all .2s;position:relative}
.product-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.product-card.recommended{border-color:var(--sun)}
.product-card.recommended::before{content:'★ Recommended';position:absolute;top:10px;right:10px;background:var(--sun);color:white;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;letter-spacing:.05em;z-index:1}
.product-card.recommended .product-body{padding-top:2.1rem}
.product-card.recommended:has(.product-tier) .product-body{padding-top:.9rem}
.product-tier{padding:5px 12px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.tier-budget{background:var(--green-light);color:var(--green)}
.tier-mid{background:var(--sun-light);color:var(--sun-dark)}
.tier-premium{background:var(--panel-light);color:var(--panel)}
[data-theme="dark"] .tier-premium{color:var(--text-muted)}
.product-body{padding:.9rem 1rem}
.product-name{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;color:var(--panel);margin-bottom:4px}
[data-theme="dark"] .product-name{color:var(--text)}
.product-specs{font-size:12px;color:var(--text-muted);margin-bottom:9px;line-height:1.5}
.product-price{font-size:1.05rem;font-weight:700;color:var(--text);margin-bottom:11px}
.product-price span{font-size:12px;font-weight:400;color:var(--text-muted)}
.affiliate-btn{display:block;text-align:center;background:var(--panel);color:white;text-decoration:none;border-radius:var(--radius-sm);padding:7px 14px;font-size:13px;font-weight:500;transition:all .2s;font-family:'DM Sans',sans-serif}
.affiliate-btn:hover{background:var(--sun);transform:translateY(-1px)}
.affiliate-note{font-size:10px;color:var(--text-light);text-align:center;margin-top:5px}
.spec-table{width:100%;border-collapse:collapse;font-size:12px;margin:6px 0 9px}
.spec-table td{padding:3px 0;border-bottom:1px solid var(--bg);vertical-align:top}
.spec-table td:first-child{color:var(--text-muted);width:48%;padding-right:6px}
.spec-table td:last-child{font-weight:500;color:var(--panel)}
[data-theme="dark"] .spec-table td:last-child{color:var(--text)}

/* TABLES */
.wire-table{width:100%;border-collapse:collapse}
.wire-table th{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-weight:600;padding:8px 10px;border-bottom:1.5px solid var(--border);text-align:left;background:var(--bg)}
.wire-table td{padding:7px 10px;border-bottom:1px solid var(--border);font-size:13px}
.wire-table tr:hover td{background:var(--bg)}
.awg{font-family:'DM Mono','Courier New',monospace;font-weight:600;color:var(--panel);background:var(--panel-light);padding:2px 8px;border-radius:4px;font-size:12px}
[data-theme="dark"] .awg{color:var(--text)}
.mm2{font-family:'DM Mono','Courier New',monospace;font-weight:600;color:var(--panel);background:var(--panel-light);padding:2px 8px;border-radius:4px;font-size:12px;margin-left:4px}
[data-theme="dark"] .mm2{color:var(--text)}

/* CHECKLIST */
.checklist{list-style:none}
.checklist li{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--border);font-size:13px}
.check-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;margin-top:1px}
.check-icon.yes{background:var(--green-light);color:var(--green);font-weight:700}
.check-icon.warn{background:#FFF3CD;color:#856404;font-weight:700}
[data-theme="dark"] .check-icon.warn{background:rgba(133,100,4,0.2);color:#D4A017}

/* TABS */
.tabs{display:flex;gap:2px;border-bottom:1.5px solid var(--border);margin-bottom:1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{background:none;border:none;padding:9px 14px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1.5px;transition:all .2s;white-space:nowrap}
.tab:hover{color:var(--text)}
.tab.active{color:var(--panel);border-bottom-color:var(--sun)}
[data-theme="dark"] .tab.active{color:var(--text)}
.tab-panel{display:none}.tab-panel.active{display:block}

/* INFO / WARN BOXES */
.info-box{background:var(--panel-light);border:1px solid rgba(26,46,74,.15);border-radius:var(--radius-sm);padding:11px 13px;font-size:13px;color:var(--panel-mid);margin-bottom:1rem;display:flex;gap:8px;align-items:flex-start}
[data-theme="dark"] .info-box{color:var(--text-muted);border-color:var(--border)}
.warn-box{background:#FFF8E7;border:1px solid #F5C842;border-radius:var(--radius-sm);padding:11px 13px;font-size:13px;color:#7A5C00;margin-bottom:1rem;display:flex;gap:8px;align-items:flex-start}
[data-theme="dark"] .warn-box{background:rgba(245,200,66,0.1);border-color:rgba(245,200,66,0.4);color:#D4A017}

/* HERO */
.hero{background:var(--panel);border-radius:var(--radius-lg);padding:2.5rem 2rem;margin-bottom:1.5rem;color:white;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-40px;right:-40px;width:200px;height:200px;border-radius:50%;background:rgba(245,166,35,.15)}
.hero::after{content:'';position:absolute;bottom:-60px;right:60px;width:150px;height:150px;border-radius:50%;background:rgba(245,166,35,.08)}
.hero h1{font-family:'Syne',sans-serif;font-size:2rem;font-weight:800;line-height:1.15;margin-bottom:.9rem;position:relative;z-index:1}
.hero h1 span{color:var(--sun)}
.hero p{font-size:14px;color:rgba(255,255,255,.75);max-width:560px;margin-bottom:1.25rem;position:relative;z-index:1}
.hero-features{display:flex;gap:1.25rem;flex-wrap:wrap;position:relative;z-index:1}
.hero-feat{display:flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,.8)}
.feat-dot{width:5px;height:5px;background:var(--sun);border-radius:50%;flex-shrink:0}

/* LOAD SUMMARY */
.load-summary{background:var(--panel);color:white;border-radius:var(--radius);padding:.9rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.9rem;flex-wrap:wrap}
.load-stat{text-align:center}
.load-stat .ls-val{font-family:'Syne',sans-serif;font-size:1.4rem;font-weight:800;color:var(--sun)}
.load-stat .ls-lbl{font-size:10px;color:rgba(255,255,255,.6);margin-top:2px}

/* RANGE ROW */
.range-row{display:flex;align-items:center;gap:12px}
.range-row input[type="range"]{flex:1}
.range-val{min-width:44px;text-align:right;font-weight:600;font-size:14px;color:var(--panel)}
[data-theme="dark"] .range-val{color:var(--text)}

/* VOLTAGE BUTTONS */
.volt-btns{display:flex;gap:8px}
.volt-btn{flex:1;border:2px solid var(--border);background:var(--card-bg);border-radius:var(--radius-sm);padding:8px 6px;cursor:pointer;text-align:center;font-family:'Syne',sans-serif;font-weight:700;font-size:1rem;color:var(--text-muted);transition:all .2s}
.volt-btn:hover{border-color:var(--sun);color:var(--sun)}
.volt-btn.selected{border-color:var(--sun);background:var(--sun-light);color:var(--sun-dark)}
.volt-btn small{display:block;font-size:10px;font-weight:400;font-family:'DM Sans',sans-serif;margin-top:2px;color:var(--text-muted)}

/* SHARE PANEL */
.share-panel{background:var(--green-light);border:1px solid rgba(45,122,79,.2);border-radius:var(--radius);padding:1.1rem 1.25rem;display:flex;align-items:center;gap:1rem;justify-content:space-between;flex-wrap:wrap}
.share-panel p{font-size:13px;color:var(--green);font-weight:500}

/* AFFILIATE DISCLOSURE */
.affiliate-disclosure{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:11px 14px;font-size:12px;color:var(--text-muted);margin-bottom:1.25rem;line-height:1.6}

/* DB TAG */
.db-tag{font-size:10px;background:var(--green-light);color:var(--green);padding:2px 7px;border-radius:20px;font-weight:600;margin-left:6px;vertical-align:middle}

/* MARKET SELECTOR */
.market-btns{display:flex;gap:8px;flex-wrap:wrap}
.market-btn{flex:1;min-width:130px;border:2px solid var(--border);border-radius:var(--radius);padding:.85rem;cursor:pointer;text-align:center;transition:all .2s;background:var(--card-bg)}
.market-btn:hover,.market-btn.selected{border-color:var(--sun);background:var(--sun-light)}
.market-flag{font-size:1.3rem;margin-bottom:5px}
.market-name{font-family:'Syne',sans-serif;font-size:13px;font-weight:700;color:var(--panel)}
[data-theme="dark"] .market-name{color:var(--text)}
.market-desc{font-size:11px;color:var(--text-muted);margin-top:2px}

/* AVAILABILITY BADGE */
.avail-badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:10px;background:var(--panel-light);color:var(--panel-mid);white-space:nowrap}
[data-theme="dark"] .avail-badge{color:var(--text-muted)}
.avail-global{background:var(--green-light);color:var(--green)}

/* SEASON BUTTONS */
.season-btn{border:1.5px solid var(--border);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .2s;white-space:nowrap;background:var(--card-bg)}
.season-btn:hover,.season-btn.selected{border-color:var(--sun);color:var(--sun-dark);background:var(--sun-light)}
.season-btn.selected{font-weight:600}

/* FOOTER */
footer{text-align:center;padding:2.5rem 1.5rem 2rem;color:var(--text-light);font-size:12px}
footer a{color:var(--text-muted)}

/* MISC */
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.card,.result-card,.product-card{animation:fadeIn .3s ease-out}

/* ═══════════════════════════════════════════════
   MOBILE — ≤640px
   ═══════════════════════════════════════════════ */
@media(max-width:640px){
  header{height:52px;padding:0 .75rem}
  .logo{font-size:1rem}
  .logo-sun{width:24px;height:24px}
  .logo-sun::before{width:34px;height:34px}
  nav{margin-left:6px;gap:2px}
  nav button{font-size:12px;padding:5px 8px}
  .unit-toggle button{font-size:10px;padding:4px 6px}
  .nav-labels{display:none}
  main{padding:.75rem}
  .hero{padding:1.5rem 1.1rem;border-radius:var(--radius);margin-bottom:1rem}
  .hero h1{font-size:1.35rem}
  .hero p{font-size:12px;margin-bottom:.9rem}
  .hero-features{gap:.6rem}
  .hero-feat{font-size:11px}
  .wizard-header{padding:.75rem 1rem;border-radius:var(--radius);margin-bottom:.9rem}
  .step-label{display:none}
  .step-divider{flex:0 0 10px}
  .card{padding:.9rem}
  .card-title{font-size:.9rem;margin-bottom:.75rem}
  .system-types{grid-template-columns:repeat(3,1fr);gap:7px}
  .sys-type{padding:.65rem .4rem}
  .sys-type .type-icon{font-size:20px;margin-bottom:4px}
  .sys-type .type-name{font-size:11px}
  .sys-type .type-desc{display:none}
  .volt-btn{font-size:.85rem;padding:7px 4px}
  .volt-btn small{font-size:9px}
  .market-btns{gap:6px}
  .market-btn{min-width:90px;padding:.6rem}
  .market-flag{font-size:1.1rem}
  .market-name{font-size:11px}
  .form-row{grid-template-columns:1fr;gap:.75rem}
  .appliance-table th:nth-child(6),.appliance-table td:nth-child(6){display:none}
  .results-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .result-card{padding:.85rem .7rem}
  .result-card .r-value{font-size:1.45rem}
  .product-cards{grid-template-columns:1fr}
  .tabs{gap:0}
  .tab{padding:8px 11px;font-size:12px}
  .btn-row{justify-content:stretch}
  .btn-row .btn{flex:1;justify-content:center;font-size:13px;padding:9px 12px}
  .load-summary{gap:.5rem;padding:.75rem 1rem}
  .load-stat .ls-val{font-size:1.2rem}
  .wire-table{font-size:12px}
  .wire-table th,.wire-table td{padding:6px 7px}
  .share-panel{flex-direction:column;gap:.75rem}
  .share-panel .btn{width:100%;justify-content:center}
  .season-btn{padding:4px 9px;font-size:11px}
}

/* ═══════════════════════════════════════════════
   TABLET — 641–900px
   ═══════════════════════════════════════════════ */
@media(min-width:641px) and (max-width:900px){
  .system-types{grid-template-columns:repeat(3,1fr)}
  .product-cards{grid-template-columns:repeat(2,1fr)}
  .results-grid{grid-template-columns:repeat(3,1fr)}
  nav button{font-size:12px;padding:5px 9px}
  .unit-toggle button{font-size:11px;padding:5px 7px}
}

/* HV selected battery highlight */
.product-card.hv-selected,
.product-card[style*="outline"] {
  box-shadow: 0 0 0 3px var(--sun);
}

/* PV config selector buttons */
.pv-cfg-btn { transition: border-color .15s, background .15s; }
.pv-cfg-btn.selected { border-color: var(--sun) !important; background: var(--sun-dim) !important; font-weight: 600; }
