
:root{--bg:#070b14;--bg2:#0f172a;--card:#0f172acc;--line:rgba(255,255,255,.1);--text:#ecf3ff;--muted:#9fb0cc;--accent:#5eead4;--shadow:0 20px 60px rgba(0,0,0,.45)}
*{box-sizing:border-box}html,body{margin:0;padding:0;background:radial-gradient(circle at top,#13203f 0%,#09101d 45%,#05070c 100%);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;min-height:100%}a{color:inherit;text-decoration:none}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom, rgba(0,0,0,.35), transparent 80%)}
body.modal-open{overflow:hidden}
.container{width:min(1200px,calc(100% - 24px));margin:0 auto}.hero{padding:24px 0 20px}.hero-shell{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:24px;padding:24px;background:linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.03));backdrop-filter:blur(14px);box-shadow:var(--shadow)}
.hero-shell::after{content:"";position:absolute;inset:auto -120px -140px auto;width:320px;height:320px;background:radial-gradient(circle, rgba(94,234,212,.26), transparent 65%)}.kicker{display:inline-flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#b9c6dd;background:rgba(255,255,255,.06);border:1px solid var(--line);padding:9px 12px;border-radius:999px}
.hero h1{font-size:clamp(42px,14vw,88px);line-height:.95;margin:18px 0 10px;max-width:9ch}.hero p{max-width:760px;color:var(--muted);font-size:16px;line-height:1.6;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);font-weight:700;transition:.2s transform,.2s background,.2s border-color;text-align:center}.btn:hover{transform:translateY(-2px);background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.22)}.btn-primary{background:linear-gradient(135deg, #5eead4, #38bdf8);color:#06111f;border:0}
.stats{display:grid;grid-template-columns:1fr;gap:12px;margin-top:22px}.stat{background:rgba(255,255,255,.05);border:1px solid var(--line);padding:16px;border-radius:18px}.stat strong{display:block;font-size:28px}.stat span{color:var(--muted);font-size:14px}
.section-head{display:flex;justify-content:space-between;gap:16px;align-items:end;padding:18px 0}.section-head h2{margin:0;font-size:30px}.section-head p{margin:6px 0 0;color:var(--muted)}.grid{display:grid;grid-template-columns:1fr;gap:16px;padding-bottom:30px}
.card{position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));border:1px solid var(--line);box-shadow:var(--shadow)}.card-media{aspect-ratio:16/10;overflow:hidden;background:#0b1020}.card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.card:hover .card-media img{transform:scale(1.04)}
.card-body{padding:16px}.badge{display:inline-flex;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line);color:#d8e2f4;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card h3{font-size:24px;margin:12px 0 8px}.card p{margin:0;color:var(--muted);line-height:1.55;min-height:auto}.meta{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 16px}.pill{padding:8px 10px;border-radius:999px;background:#09101d;border:1px solid var(--line);color:#c5d2ea;font-size:13px}.card-actions{display:flex;gap:10px;flex-wrap:wrap}.card-actions .btn{flex:1 1 180px}
.footer{padding:20px 0 42px;color:var(--muted)}.topbar{position:sticky;top:0;z-index:20;background:rgba(7,11,20,.68);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}.topbar .inner{display:flex;justify-content:space-between;align-items:center;padding:12px 0;gap:12px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.02em}.brand-logo{width:40px;height:40px;border-radius:14px;display:block;box-shadow:0 10px 25px rgba(56,189,248,.25)}.nav{display:flex;gap:6px;flex-wrap:wrap}.nav a{padding:10px 12px;border-radius:999px;color:#c9d8ef}.nav a:hover{background:rgba(255,255,255,.06)}
.player-page,.verified-page{padding:16px 0 32px}.player-shell{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.panel{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.05);box-shadow:var(--shadow);overflow:hidden}.panel .pad{padding:18px}.cover{aspect-ratio:16/10;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover;display:block}.frame-wrap{border:1px solid var(--line);border-radius:24px;background:#02050b;overflow:hidden;box-shadow:var(--shadow);min-height:320px;display:flex}.game-frame{width:100%;height:min(70vh,920px);border:0;display:block;background:#000}.note{font-size:14px;color:var(--muted);line-height:1.55}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.quick{padding:14px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.quick strong{display:block;font-size:14px;color:#dbe7fb}.quick span{display:block;margin-top:5px;font-size:14px;color:var(--muted)}
.frame-locked{background:linear-gradient(180deg,#08101d,#03070d)}.locked-state,.verified-shell{width:min(720px,100%);margin:auto;padding:28px 20px;text-align:center}.locked-logo,.verified-logo{width:88px;height:88px;border-radius:24px;display:block;margin:0 auto 18px}.locked-state h2,.verified-shell h1{margin:14px 0 10px;font-size:clamp(28px,7vw,52px)}.locked-state p,.verified-shell p{margin:0 auto;max-width:42ch;color:var(--muted);line-height:1.65}.locked-cta{margin-top:20px}
.modal{position:fixed;inset:0;display:none;z-index:60}.modal.is-open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(2,6,12,.72);backdrop-filter:blur(10px)}.modal-card{position:relative;z-index:1;width:min(680px,calc(100% - 24px));margin:6vh auto 0;padding:22px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(13,20,38,.98), rgba(8,12,23,.96));box-shadow:var(--shadow)}.modal-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.05);color:var(--text);font-size:26px;line-height:1;cursor:pointer}.modal-copy h2{margin:12px 0 8px;font-size:clamp(28px,6vw,42px)}.modal-note{margin-bottom:18px}
.gate-form{display:grid;gap:14px}.gate-form label{display:grid;gap:8px}.gate-form span{font-weight:700}.gate-form em{font-style:normal;color:#5eead4}.gate-form input{width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:var(--text);font:inherit}.gate-form input::placeholder{color:#8ca0c0}.gate-form input:focus{outline:2px solid rgba(94,234,212,.35);border-color:rgba(94,234,212,.45)}.form-grid{display:grid;grid-template-columns:1fr;gap:14px}.form-submit{width:100%}.form-submit:disabled{opacity:.7;cursor:wait}.gate-status{min-height:24px;margin:0;color:#b8c7df;line-height:1.5}
@media (min-width: 700px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:40px 0 26px}.hero-shell{padding:38px}.container{width:min(1200px,calc(100% - 32px))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width: 920px){.player-shell{grid-template-columns:330px minmax(0,1fr)}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.game-frame{height:78vh}}
.hero-grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}.hero-note{margin:18px 0 0;color:#c6d4ea;max-width:52ch;line-height:1.6}.auth-panel{border:1px solid var(--line);border-radius:24px;padding:18px;background:rgba(255,255,255,.05);box-shadow:var(--shadow);position:relative;min-height:260px}.auth-panel h2{font-size:28px;margin:12px 0 8px}.auth-actions,.auth-summary{margin-top:14px}.auth-status{margin-top:14px}.google-button-wrap{min-height:42px;display:flex;align-items:center;justify-content:flex-start}.provider-placeholder{padding:14px 16px;border-radius:16px;border:1px dashed rgba(255,255,255,.16);background:rgba(255,255,255,.03);color:var(--muted);line-height:1.5}.signed-chip{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:18px;background:rgba(94,234,212,.10);border:1px solid rgba(94,234,212,.24)}.signed-chip strong{font-size:16px}.signed-chip span{font-size:13px;color:#d8e7f8}.site-footer{border-top:1px solid rgba(255,255,255,.08);padding:22px 0 38px;background:rgba(2,6,12,.3)}.footer-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.footer-grid p{margin:6px 0 0;color:var(--muted)}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.footer-links a{color:#d6e2f4}.footer-copy{padding:4px 0 30px;color:var(--muted)}.divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px;margin:16px 0}.divider::before,.divider::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.1)}.social-lockup{display:flex;flex-direction:column;gap:10px}.loading-shell{position:relative}.loading-inline{display:none;align-items:center;gap:10px;font-size:14px;color:#d6e2f4;margin-top:12px}.loading-shell.is-loading .loading-inline{display:flex}.spinner{width:18px;height:18px;border-radius:999px;border:2px solid rgba(255,255,255,.18);border-top-color:#5eead4;animation:spin .8s linear infinite}.gate-status[data-tone="error"],.auth-status[data-tone="error"]{color:#fecaca}.gate-status[data-tone="success"],.auth-status[data-tone="success"]{color:#a7f3d0}.legal-page{padding:24px 0 40px}.legal-shell{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.05);padding:22px;box-shadow:var(--shadow)}.legal-shell h1{margin:14px 0 8px;font-size:40px}.legal-shell h2{margin:22px 0 8px;font-size:22px}.legal-shell p{margin:0;color:var(--muted);line-height:1.7}.modal-card .google-button-wrap{justify-content:center}@keyframes spin{to{transform:rotate(360deg)}}
@media (min-width: 920px){.hero-grid{grid-template-columns:minmax(0,1.2fr) 380px}.footer-grid{grid-template-columns:1fr auto;align-items:center}}
