/* SolarLife24 - mobile-first tabbed luxury portal. Pure ASCII. */
:root{
  --black:#0A0A0A;--near:#121212;--surface:#1A1A1A;--surface2:#242424;
  --pearl:#FAFAFA;--muted:#a49f95;--line:#2b2b2b;--gold:#C4A052;--gold-dim:rgba(196,160,82,.4);
}
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
body{margin:0;background:var(--black);color:var(--pearl);font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.14;font-weight:600}
a{color:var(--gold);text-decoration:none}a:active{opacity:.6}
.label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600}
.muted{color:var(--muted)}
/* top bar */
.lx-head{position:sticky;top:0;z-index:60;display:flex;justify-content:space-between;align-items:center;
  padding:14px 18px;background:rgba(10,10,10,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.lx-brand{font-family:'Playfair Display',serif;font-size:19px;display:inline-flex;align-items:center;gap:9px}.lx-brand b{color:var(--gold)}
.lx-logo{display:block;width:30px;height:30px;border-radius:5px;flex:0 0 auto}
.lx-head a.out{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:7px 11px;border-radius:3px}
/* pill tab bar - horizontal scroll on mobile, sticky under header */
.lx-tabs{position:sticky;top:49px;z-index:55;display:flex;gap:8px;overflow-x:auto;padding:12px 14px;
  background:rgba(10,10,10,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);
  -webkit-overflow-scrolling:touch;scrollbar-width:none}
.lx-tabs::-webkit-scrollbar{display:none}
.pill{flex:0 0 auto;white-space:nowrap;font-size:13px;padding:9px 15px;border-radius:999px;border:1px solid var(--line);
  color:var(--muted);background:var(--near);cursor:pointer;transition:all .25s ease;letter-spacing:.01em}
.pill:hover{color:var(--pearl)}
.pill.on{background:var(--gold);color:#0A0A0A;border-color:var(--gold);font-weight:600}
.pill .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:6px;vertical-align:middle}
.pill.on .dot{background:#0A0A0A}
/* panels */
.wrap{max-width:760px;margin:0 auto;padding:22px 18px 90px}
.panel{display:none;animation:fade .4s ease}
.panel.on{display:block}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ptitle{font-size:26px;margin:.1em 0 .1em}
.pkicker{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.pri-badge{display:inline-block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#0A0A0A;background:var(--gold);padding:3px 8px;border-radius:3px;margin-left:8px;vertical-align:middle;font-weight:700}
.item{margin:20px 0;padding:16px;background:var(--near);border:1px solid var(--line);border-radius:10px}
.item h3{font-size:18px;margin:0 0 8px;color:var(--pearl)}
.plain{font-size:16px;line-height:1.62;color:#ededea}
.techbtn{margin-top:12px;display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--gold);background:none;border:1px solid var(--gold-dim);border-radius:999px;padding:7px 13px;cursor:pointer}
.techbtn .arw{transition:transform .3s ease}.techbtn.open .arw{transform:rotate(90deg)}
.tech{display:none;margin-top:12px;padding:13px 15px;border-left:2px solid var(--gold-dim);background:#0d0d0d;
  font-size:13.5px;line-height:1.66;font-style:italic;color:var(--muted);border-radius:0 8px 8px 0}
.tech.open{display:block;animation:fade .35s ease}
.reslink{display:block;margin-top:10px;font-size:14px;color:var(--gold);word-break:break-all}
.reslink:before{content:"\2197 ";}
/* prev/next */
.pnav{display:flex;justify-content:space-between;gap:10px;margin-top:26px}
.pnav button{flex:1;padding:13px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--pearl);font-size:13px;cursor:pointer}
.pnav button:disabled{opacity:.35}
.pnav button.next{background:var(--gold);color:#0A0A0A;border-color:var(--gold);font-weight:600}
/* stats cards + tables reused */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:18px 0}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px;text-align:center}
.stat .n{font-family:'Playfair Display',serif;font-size:30px;color:var(--gold);line-height:1}
.stat .l{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:6px}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}
th{color:var(--gold);font-size:10px;letter-spacing:.1em;text-transform:uppercase}
footer.lx{padding:24px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;text-align:center}
@media(min-width:760px){.ptitle{font-size:32px}.pill{font-size:14px}
  /* desktop has no touch + hidden scrollbar -> let the pills WRAP so every tab is reachable (mobile keeps its horizontal scroll) */
  .lx-tabs{flex-wrap:wrap;overflow-x:visible;justify-content:center;row-gap:8px;padding:12px 22px}}

/* back-to-top */
#lx-top{position:fixed;right:18px;bottom:18px;z-index:60;width:46px;height:46px;border-radius:50%;background:rgba(10,10,10,.92);border:1px solid var(--gold);color:var(--gold);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);box-shadow:0 4px 16px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease,background .2s ease,color .2s ease}
#lx-top.show{opacity:1;visibility:visible;transform:none}
#lx-top:hover{background:var(--gold);color:#0A0A0A}
