:root {
  --bg:#050a08;--surface:#0b1410;--surface2:#101e18;
  --border:rgba(52,211,153,.15);--border-hi:rgba(52,211,153,.45);
  --text:#e2efe8;--muted:#6f8d7d;--green:#34d399;--green2:#10b981;
  --yellow:#fbbf24;--blue:#38bdf8;
}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:'Exo 2',sans-serif;min-height:100vh;overflow-x:hidden}
body::before{content:'';position:fixed;inset:0;background-image:linear-gradient(rgba(52,211,153,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(52,211,153,.04) 1px,transparent 1px);background-size:32px 32px;z-index:0;pointer-events:none}
a{color:inherit;text-decoration:none}
.sun-glow{position:fixed;top:-180px;left:50%;transform:translateX(-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(251,191,36,.12) 0%,rgba(52,211,153,.04) 40%,transparent 70%);z-index:0;animation:breathe 6s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.7;transform:translateX(-50%) scale(1)}50%{opacity:1;transform:translateX(-50%) scale(1.08)}}
.wrap{position:relative;z-index:1;max-width:980px;margin:0 auto;padding:22px 20px 72px}
.narrow{max-width:720px}
.header,.stats-bar,.install-card,.footer{max-width:640px;margin-left:auto;margin-right:auto}
.header{text-align:center;margin-bottom:26px;animation:fadeDown .7s ease both}
.logo-ring{display:none}
.logo-ring svg{width:100%;height:100%;animation:spin 20s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.badge{display:inline-flex;align-items:center;gap:8px;background:rgba(52,211,153,.08);border:1px solid var(--border-hi);border-radius:999px;padding:4px 16px;font-family:'Share Tech Mono',monospace;font-size:.72rem;color:var(--green);letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px}
.dot{width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 8px var(--green);animation:blink 1.5s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
h1{font-size:clamp(1.9rem,5vw,2.8rem);font-weight:800;line-height:1.1;letter-spacing:0;margin-bottom:10px}
h1 .y{color:var(--yellow)}h1 .g{color:var(--green)}
.tagline{color:var(--muted);font-size:.92rem;font-weight:300;line-height:1.65}
.stats-bar{display:flex;gap:1px;background:var(--border);border-radius:12px;overflow:hidden;margin-bottom:20px;animation:fadeUp .6s ease .1s both}
.stat{flex:1;background:var(--surface);padding:14px 10px;text-align:center}
.stat-val{font-family:'Share Tech Mono',monospace;font-size:.95rem;color:var(--green);margin-bottom:2px}
.stat-lbl{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;margin-bottom:14px;transition:border-color .3s,box-shadow .3s;animation:fadeUp .6s ease both;position:relative;overflow:hidden}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--green2),transparent);opacity:0;transition:opacity .3s}
.card:hover{border-color:var(--border-hi);box-shadow:0 0 24px rgba(52,211,153,.06)}.card:hover::before{opacity:1}
.card-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.card-ico{width:34px;height:34px;background:rgba(52,211,153,.1);border:1px solid var(--border);border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'Share Tech Mono',monospace;font-size:.8rem;color:var(--green);flex-shrink:0}
.card-title h2{font-size:.78rem;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.1em}
.language-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;animation:fadeUp .6s ease .2s both}
.language-card{min-height:148px;display:flex;flex-direction:column;justify-content:space-between;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px;transition:border-color .25s,transform .25s,box-shadow .25s}
.language-card:hover,.language-card:focus-visible{border-color:var(--border-hi);transform:translateY(-3px);box-shadow:0 0 24px rgba(52,211,153,.08);outline:none}
.language-flag{margin-bottom:8px}
.flag{display:inline-block;width:34px;height:24px;border:1px solid rgba(226,239,232,.28);border-radius:4px;box-shadow:0 0 10px rgba(52,211,153,.08);overflow:hidden;flex-shrink:0}
.flag-fr{background:linear-gradient(90deg,#0055a4 0 33.33%,#fff 33.33% 66.66%,#ef4135 66.66% 100%)}
.flag-es{background:linear-gradient(180deg,#aa151b 0 25%,#f1bf00 25% 75%,#aa151b 75% 100%)}
.flag-it{background:linear-gradient(90deg,#009246 0 33.33%,#fff 33.33% 66.66%,#ce2b37 66.66% 100%)}
.flag-de{background:linear-gradient(180deg,#000 0 33.33%,#dd0000 33.33% 66.66%,#ffce00 66.66% 100%)}
.flag-gb{background:linear-gradient(0deg,transparent 44%,#c8102e 44% 56%,transparent 56%),linear-gradient(90deg,transparent 44%,#c8102e 44% 56%,transparent 56%),linear-gradient(27deg,transparent 47%,#c8102e 47% 53%,transparent 53%),linear-gradient(-27deg,transparent 47%,#c8102e 47% 53%,transparent 53%),linear-gradient(0deg,transparent 38%,#fff 38% 62%,transparent 62%),linear-gradient(90deg,transparent 38%,#fff 38% 62%,transparent 62%),linear-gradient(27deg,transparent 42%,#fff 42% 58%,transparent 58%),linear-gradient(-27deg,transparent 42%,#fff 42% 58%,transparent 58%),#012169}
.language-code{font-family:'Share Tech Mono',monospace;color:var(--green);font-size:.82rem}
.language-name{font-size:1.05rem;font-weight:700;color:var(--text);line-height:1.2}
.language-hint{font-size:.75rem;color:var(--muted);line-height:1.35}
.page-nav{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:-16px auto 22px;animation:fadeUp .6s ease .12s both}
.page-nav a{display:inline-flex;align-items:center;gap:6px;font-family:'Share Tech Mono',monospace;font-size:.72rem;color:var(--muted);border:1px solid var(--border);border-radius:8px;padding:6px 10px;background:rgba(16,30,24,.46)}
.page-nav a.active,.page-nav a:hover{color:var(--green);border-color:var(--border-hi);background:rgba(52,211,153,.08)}
.nav-flag{width:22px;height:15px;border-radius:3px}
.guide-card{max-width:760px;margin-left:auto;margin-right:auto}
.guide-table{width:100%;border-collapse:collapse;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:rgba(16,30,24,.42)}
.guide-table th,.guide-table td{border-bottom:1px solid var(--border);padding:12px;text-align:left;vertical-align:top;font-size:.88rem;line-height:1.55}
.guide-table th{width:118px;color:var(--green);font-family:'Share Tech Mono',monospace;font-weight:400;background:rgba(52,211,153,.06)}
.guide-table td{color:var(--muted)}
.guide-table tr:last-child th,.guide-table tr:last-child td{border-bottom:0}
.network-name,.local-url,.chip{display:inline-flex;align-items:center;background:rgba(52,211,153,.08);border:1px solid var(--border-hi);border-radius:8px;padding:4px 8px;font-family:'Share Tech Mono',monospace;color:var(--green);font-size:.78rem;margin:3px 0}
.chip{border-color:rgba(56,189,248,.25);background:rgba(56,189,248,.08);color:var(--blue);padding:1px 8px}
.install-card{background:linear-gradient(135deg,#0d1c14 0%,#0a1510 100%);border:1px solid var(--border-hi);border-radius:16px;padding:36px 24px;text-align:center;margin-bottom:14px;animation:fadeUp .6s ease .35s both;position:relative;overflow:hidden}
.install-card::after{content:'';position:absolute;bottom:-60px;right:-60px;width:180px;height:180px;background:radial-gradient(circle,rgba(251,191,36,.08) 0%,transparent 70%);pointer-events:none}
.install-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--yellow),var(--green),transparent)}
.install-card h2{font-size:1.2rem;font-weight:700;color:var(--text);margin-bottom:8px}
.install-card p{color:var(--muted);font-size:.85rem;line-height:1.6;margin-bottom:28px}
esp-web-install-button{--esp-tools-button-color:#050a08;--esp-tools-button-background:#34d399;--esp-tools-button-border-radius:10px}
.secure-note{margin-top:18px;font-family:'Share Tech Mono',monospace;font-size:.68rem;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px}
.footer{text-align:center;margin-top:36px;animation:fadeUp .6s ease .5s both}
.footer-line{height:1px;background:linear-gradient(90deg,transparent,var(--border-hi),transparent);margin-bottom:20px}
.footer p{font-family:'Share Tech Mono',monospace;font-size:.7rem;color:var(--muted);line-height:1.8}
.footer .g{color:var(--green)}.footer .y{color:var(--yellow)}
@keyframes fadeDown{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:880px){.language-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wrap{max-width:720px}}
@media (max-width:560px){.language-grid{grid-template-columns:1fr}.stats-bar{display:grid;grid-template-columns:repeat(2,1fr)}.guide-table th,.guide-table td{display:block;width:100%}.guide-table th{border-bottom:0;padding-bottom:4px}.guide-table td{padding-top:4px}}
