
:root{
  --bg:#070a10;--panel:#111722;--panel2:#0c111a;--line:#26344a;
  --green:#73ff78;--cyan:#22d9ff;--gold:#ffd35c;--red:#ff5963;--text:#edf5ff;--muted:#91a1b6
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:
 radial-gradient(circle at 20% 0,#18253d 0,transparent 34%),
 radial-gradient(circle at 90% 10%,#16292a 0,transparent 28%),var(--bg);
 color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}
button,input,select{font:inherit}
button,.file-button{border:1px solid #3b4e68;background:#182231;color:#fff;border-radius:10px;padding:.78rem 1rem;cursor:pointer;font-weight:800}
button:hover,.file-button:hover{filter:brightness(1.15)}
button:disabled{opacity:.38;cursor:not-allowed}
button.primary{background:linear-gradient(135deg,#2c8d49,#1a6635);border-color:#6bed87}
button.launch{width:100%;padding:1rem;background:linear-gradient(135deg,#ef4e3b,#9e2222);font-size:1.18rem;border:2px solid #ff9a75}
.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:.8rem clamp(1rem,4vw,3rem);background:rgba(5,8,13,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.8rem}.brand strong{display:block;font-size:1.08rem}.brand small{display:block;color:var(--muted)}
.alien-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#111;color:var(--green);border:2px solid var(--green);box-shadow:0 0 20px #4dff7270;font-size:1.25rem;font-weight:1000}
.admin-link{color:var(--cyan);text-decoration:none;font-weight:800}
.studio{width:min(1180px,94vw);margin:1.5rem auto 3rem;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.panel{background:linear-gradient(160deg,rgba(19,27,40,.96),rgba(10,15,24,.96));border:1px solid var(--line);border-radius:18px;padding:1.1rem;box-shadow:0 18px 50px #0007}
.games-panel,.consent-panel{grid-column:1/-1}
.step-title{display:flex;align-items:center;gap:.65rem;font-weight:900;font-size:1.05rem;margin-bottom:1rem}
.step-title span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--green);color:#051008}
.camera-stage{position:relative;aspect-ratio:1/1;max-height:520px;margin:auto;background:#030508;border:1px solid #30445d;border-radius:16px;overflow:hidden}
.camera-stage video,.camera-stage canvas{position:absolute;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.camera-stage canvas{display:none}.camera-message{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:2rem;color:var(--muted)}
.face-guide{position:absolute;left:24%;top:13%;width:52%;height:62%;border:2px dashed #fff8;border-radius:46%;pointer-events:none;box-shadow:0 0 0 999px #0002}
.button-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.8rem}.file-button input{display:none}
.privacy-note{font-size:.84rem;color:var(--muted)}
.avatar-layout{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:1rem;align-items:start}
#avatarCanvas{width:100%;max-width:240px;aspect-ratio:3/4;background:linear-gradient(#1b2840,#090e17);border:1px solid #3e5471;border-radius:14px;image-rendering:pixelated}
.controls{display:grid;gap:.8rem}.controls label{display:grid;gap:.35rem;color:#bdcbe0;font-weight:700}
.controls input,.controls select{width:100%;padding:.7rem;background:#090f18;color:white;border:1px solid #34465e;border-radius:8px}
.game-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
.game-card{position:relative;min-height:135px;border:2px solid #29384e;border-radius:14px;padding:.75rem;background:linear-gradient(145deg,#151f2e,#090d15);cursor:pointer;overflow:hidden}
.game-card::before{content:"";position:absolute;inset:auto -30px -45px auto;width:120px;height:120px;border-radius:50%;background:var(--accent);opacity:.12;filter:blur(4px)}
.game-card.selected{border-color:var(--accent);box-shadow:0 0 24px color-mix(in srgb,var(--accent) 55%,transparent)}
.game-card strong{display:block;font-size:1rem}.game-card small{color:var(--muted)}.game-icon{font-size:2rem;margin-bottom:.5rem}
.title-preview{margin-top:1rem;padding:.8rem;border:1px solid #2c3b50;border-radius:10px;background:#080d15}
.disclaimer{padding:1rem;border:1px solid #3b4b60;border-radius:12px;background:#080d14}.disclaimer p{color:#b8c4d5;line-height:1.5}
.consent-check{display:flex;gap:.6rem;align-items:flex-start;font-weight:800}
.status{min-height:1.5rem;margin-top:.7rem;color:var(--gold)}
footer{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;padding:1.4rem;border-top:1px solid var(--line);color:var(--muted)}
footer a{color:var(--cyan)}
@media(max-width:850px){.studio{grid-template-columns:1fr}.games-panel,.consent-panel{grid-column:auto}.game-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.avatar-layout{grid-template-columns:1fr}.game-grid{grid-template-columns:1fr}.button-row>*{flex:1}.brand small{display:none}}

.purchase-summary{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem;margin-bottom:.8rem;border:1px solid #5b4b25;border-radius:12px;background:#17130a;color:#ffd35c}.purchase-summary span{color:#d6c8a8}
