@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;800;900&family=Space+Mono:wght@400;700&display=swap');
.topbar .eyebrow{font-size:12px;color:#eadfff;text-shadow:0 0 12px #b55cff88}footer strong{margin-top:9px;color:#d8c8eb;font-size:14px;text-shadow:0 0 14px #b55cff66}
.topbar .eyebrow{font-size:clamp(16px,4.7vw,24px);line-height:1.05;letter-spacing:.12em;text-align:center}footer strong{font-size:clamp(22px,6vw,28px);letter-spacing:.04em}.home:after{content:"";position:absolute;z-index:-1;left:-18vw;right:-18vw;bottom:0;height:48%;background:linear-gradient(180deg,transparent 0,#07040f22 25%,#07040f99 100%),url('lobby-cosmos.png') center bottom/cover no-repeat;opacity:.78;pointer-events:none;filter:saturate(1.12)}.music-gate{position:fixed;z-index:50;inset:0;width:100%;border:0;background:radial-gradient(circle at 50% 45%,#391269ee,#07040ff8 65%);color:#fff;display:grid;place-content:center;justify-items:center;gap:10px;font-family:Montserrat,sans-serif;cursor:pointer;transition:opacity .45s,visibility .45s}.music-gate span{font-size:54px;color:#20e8ff;text-shadow:0 0 24px #20e8ff}.music-gate strong{font-size:clamp(20px,6vw,32px);letter-spacing:.13em;text-shadow:0 0 22px #ff2f92}.music-gate small{font:700 11px Space Mono;letter-spacing:.18em;color:#cab7df}.music-gate.gone{opacity:0;visibility:hidden}
.language-select{width:48px;height:42px;border:1px solid #745b9b;border-radius:21px;background:#100824dd;color:#fff;text-align:center;font:700 11px Space Mono;cursor:pointer;appearance:none}.language-select:focus{outline:2px solid #20e8ff;outline-offset:2px}
footer strong{font-size:clamp(16px,4.7vw,24px)}
.music-gate label{display:grid;gap:8px;margin-top:12px;color:#d8c8eb;font:700 11px Space Mono;letter-spacing:.14em}.music-gate select{width:220px;padding:13px;border:1px solid #8c63b9;border-radius:8px;background:#100824;color:#fff;font:700 14px Montserrat}.welcome-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(90vw,360px);margin-top:10px}.welcome-choices button{min-height:56px;border:1px solid #8c63b9;border-radius:8px;background:#140a2a;color:#fff;font:800 12px Montserrat;letter-spacing:.06em}.welcome-choices #musicYes{border:0;background:linear-gradient(100deg,#722cff,#e12b9c);box-shadow:0 0 24px #c22cff55}
.topbar .eyebrow,footer strong{font-size:clamp(16px,4.7vw,24px)!important;line-height:1.05}.music-gate{overflow:hidden;isolation:isolate;background:#07040f}.music-gate:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(180deg,#07040f88,#18072acc 56%,#07040f88),url('lobby-cosmos.png') center/cover no-repeat;filter:saturate(1.25);animation:cosmos-pulse 8s ease-in-out infinite alternate}.music-gate:after{content:"";position:absolute;z-index:-1;width:78vmin;height:78vmin;border:1px solid #ff2f9277;border-radius:50%;box-shadow:0 0 60px #8d4dff66,inset 0 0 50px #20e8ff22;animation:cosmos-orbit 16s linear infinite}.music-gate>*{position:relative;z-index:1}.welcome-kicker{order:-1;color:#20e8ff;font:700 10px Space Mono;letter-spacing:.42em;text-shadow:0 0 14px #20e8ff}.welcome-credit{position:absolute!important;bottom:max(20px,env(safe-area-inset-bottom));left:0;right:0;display:grid;gap:4px;text-align:center}.welcome-credit>span{font:700 8px Space Mono;letter-spacing:.3em;color:#ad9cbd}.welcome-credit>strong{font:800 clamp(18px,5vw,25px) Montserrat;letter-spacing:.04em;text-shadow:0 0 18px #ff2f9299}.welcome-credit>em{color:#c9b7d8;font:700 10px Space Mono;letter-spacing:.12em;font-style:normal}@keyframes cosmos-pulse{to{transform:scale(1.06);filter:saturate(1.5) brightness(1.12)}}@keyframes cosmos-orbit{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.music-gate:before,.music-gate:after{animation:none}}
:root{color-scheme:dark;--ink:#07040f;--violet:#8d4dff;--pink:#ff2f92;--cyan:#20e8ff;--gold:#ffd95a;--muted:#aaa0bc}
.welcome-profiles{width:min(90vw,360px);display:grid;gap:9px;margin-top:4px}.welcome-profiles label{margin:0}.welcome-profiles select{width:100%}.profile-create{display:grid;grid-template-columns:1fr auto;gap:8px}.profile-create input{min-width:0;padding:12px;border:1px solid #8c63b9;border-radius:8px;background:#100824;color:#fff;font:700 13px Montserrat;outline:none}.profile-create input:focus{border-color:#20e8ff;box-shadow:0 0 16px #20e8ff33}.profile-create button,.profile-manage button{border:1px solid #a760dc;border-radius:8px;background:#1a0c32;color:#fff;font:800 11px Montserrat;letter-spacing:.06em;padding:0 14px}.profile-manage{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-manage button{padding:8px 10px;color:#ff91c7;border-color:#ff2f9266;background:#210b25}.profile-manage button:disabled{opacity:.4}.profile-manage output{min-height:12px;color:#20e8ff;text-align:right;font:700 9px Space Mono}.music-gate:has(.welcome-profiles){gap:7px}.music-gate:has(.welcome-profiles)>span{font-size:40px}.music-gate:has(.welcome-profiles) .welcome-credit{bottom:max(10px,env(safe-area-inset-bottom))}@media(max-height:760px){.music-gate:has(.welcome-profiles)>span{display:none}.music-gate:has(.welcome-profiles) .welcome-credit{position:relative!important;bottom:auto;margin-top:2px}.music-gate:has(.welcome-profiles) .welcome-credit>span{display:none}.music-gate:has(.welcome-profiles) .welcome-credit>strong{font-size:15px}.music-gate:has(.welcome-profiles) .welcome-credit>em{font-size:8px}}
*{box-sizing:border-box}body{margin:0;min-height:100svh;background:radial-gradient(circle at 50% 28%,#2c1055 0,#120729 31%,#07040f 70%);color:#fff;font-family:Montserrat,sans-serif;overflow-x:hidden}.stars{position:fixed;inset:0;pointer-events:none;opacity:.6;background-image:radial-gradient(#fff 1px,transparent 1px),radial-gradient(#b7a1ff 1px,transparent 1px);background-size:53px 53px,89px 89px;background-position:0 0,17px 31px;mask-image:linear-gradient(#fff,transparent 92%)}.home{position:relative;z-index:1;width:min(100%,520px);min-height:100svh;margin:auto;padding:18px 24px 22px;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between}.eyebrow{font:700 10px/1 Space Mono;letter-spacing:.25em;color:#c8b8df}.icon-button{width:42px;height:42px;border:1px solid #745b9b;border-radius:50%;background:#100824aa;color:#fff;font-size:18px}.hero{position:relative;height:360px;display:grid;place-items:center}.title-wrap{text-align:center;z-index:2;margin-top:148px;text-shadow:0 0 24px #d74bff66}.overline{font:700 15px Space Mono;letter-spacing:.68em;color:#d5c7e8;padding-left:.68em}h1{margin:-6px 0 0;font-size:clamp(58px,17vw,84px);font-weight:900;letter-spacing:-.065em;background:linear-gradient(95deg,#fff 5%,#d7cbff 35%,#fff 62%,#a89bdd);-webkit-background-clip:text;color:transparent}.tagline{margin:4px 0;color:#afa4c2;font:12px Space Mono;letter-spacing:.08em}.prism{position:absolute;top:12px;left:50%;width:240px;height:180px;transform:translateX(-50%);filter:drop-shadow(0 0 18px #8c55ff)}.triangle{position:absolute;left:73px;top:28px;width:0;height:0;border-left:48px solid transparent;border-right:48px solid transparent;border-bottom:88px solid #b99cff18;transform:rotate(7deg);filter:drop-shadow(0 0 2px #fff)}.triangle:after{content:"";position:absolute;left:-45px;top:4px;border-left:45px solid transparent;border-right:45px solid transparent;border-bottom:82px solid var(--ink)}.beam{position:absolute;height:2px;transform-origin:left}.beam-in{width:110px;left:-10px;top:92px;background:linear-gradient(90deg,transparent,#fff);transform:rotate(-7deg);box-shadow:0 0 9px #fff}.rainbow{position:absolute;left:148px;top:83px;width:125px;height:35px;background:linear-gradient(#ff304f 0 16%,#ff9c2d 16% 32%,#ffe62e 32% 48%,#38ef8d 48% 64%,#36c9ff 64% 80%,#a45cff 80%);clip-path:polygon(0 44%,100% 0,100% 58%,0 61%);filter:drop-shadow(0 0 10px #fff6)}.orbit{position:absolute;border:1px solid #bd6dff55;border-radius:50%;transform:rotate(-15deg)}.orbit-one{width:330px;height:115px;top:48px}.orbit-two{width:285px;height:94px;top:65px;transform:rotate(18deg);border-color:#25dfff44}.actions{display:grid;gap:12px}.actions button{font-family:inherit;color:#fff;cursor:pointer}.primary{height:64px;border:0;border-radius:6px;background:linear-gradient(100deg,#722cff,#e12b9c);font-weight:900;letter-spacing:.13em;font-size:14px;box-shadow:0 12px 38px #a12cff44,0 0 0 1px #e9b8ff55 inset}.primary span{font-size:22px;margin-left:16px}.secondary{height:54px;border:1px solid #66517f;border-radius:6px;background:#100921b8;font-size:12px;font-weight:800;letter-spacing:.09em;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.save{color:#81758f;font-size:9px;font-weight:600}.mini-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-actions button{height:62px;border:1px solid #47355f;border-radius:6px;background:#0e081dbd;color:#d8c9ea;font-size:18px}.mini-actions span{display:block;margin-top:5px;font-size:8px;letter-spacing:.07em}footer{margin-top:auto;padding-top:28px;text-align:center;color:#6e617d;font:8px Space Mono;letter-spacing:.16em}footer strong{display:block;margin-top:7px;color:#9f8db4;font-size:9px}footer i{color:var(--pink);font-style:normal;margin:0 5px}dialog{width:min(calc(100% - 32px),480px);border:1px solid #a269e5;border-radius:14px;background:linear-gradient(145deg,#1c0d35,#090512);color:#fff;padding:0;box-shadow:0 0 80px #ad40ff66}dialog::backdrop{background:#030107d9;backdrop-filter:blur(7px)}dialog form{padding:30px}dialog h2{margin:7px 0 25px;font-size:35px}.close{position:absolute;right:14px;top:10px;border:0;background:none;color:#fff;font-size:32px}.picker-grid{display:grid;gap:15px}.picker-grid label{color:#b9abc9;font-size:10px;font-weight:800;letter-spacing:.12em}.picker-grid select{width:100%;margin-top:7px;padding:14px;border:1px solid #624382;border-radius:6px;background:#0d071a;color:#fff;font:600 13px Montserrat}.launch{width:100%;margin-top:24px}@media(max-height:720px){.hero{height:310px}.title-wrap{margin-top:130px}.prism{transform:translateX(-50%) scale(.85)}}
