/* ======== v5: BRIGHTER + FUNNER. Candy neon (hot pink, cyan, sunny orange, lime), glossy toy materials, puffy-sticker energy. ======== */
:root{--pink:#ff4fb0;--cyan:#36d6ff;--sun:#ffb21e;--lime:#7dff6a;--grape:#7b3cff;--cream:#fff6e8;--ink:#2a1450;
  --mars:#ff6b3d;--moon:#c9d2ff;--earth:#36c9ff;--candy:linear-gradient(180deg,#ff7cc6 0%,#ff4fb0 55%,#e6359a 100%);--sunny:linear-gradient(180deg,#ffe066 0%,#ffb21e 60%,#ff9500 100%);--aqua:linear-gradient(180deg,#8ff0ff 0%,#36d6ff 55%,#1aa8e6 100%)}
body{background:linear-gradient(180deg,#3b1d8f 0%,#7b3cff 45%,#ff4fb0 100%)}
.win.solid{background:radial-gradient(120% 60% at 50% 0%,#5a2fd0 0%,transparent 70%),radial-gradient(120% 70% at 50% 100%,#ff5fb8 0%,#3b1d8f 75%)}
/* glossy candy buttons with a playful squish */
.vbtn{background:var(--candy);border:2px solid rgba(255,255,255,.55);color:#fff;text-shadow:0 1px 0 rgba(120,0,60,.35);box-shadow:0 5px 0 #b3237a,0 10px 18px rgba(80,0,60,.35),inset 0 2px 0 rgba(255,255,255,.55);border-radius:18px;font-family:Archivo,Inter,system-ui;font-weight:900;letter-spacing:.01em;transition:transform .14s cubic-bezier(.3,1.6,.5,1),box-shadow .14s}
.vbtn.gold{background:var(--sunny);color:#4a2400;text-shadow:0 1px 0 rgba(255,255,255,.4);box-shadow:0 5px 0 #c26a00,0 10px 18px rgba(120,60,0,.35),inset 0 2px 0 rgba(255,255,255,.65)}
.vbtn.down,.vbtn:active{transform:translateY(4px) scale(.97);box-shadow:0 1px 0 #b3237a,0 4px 8px rgba(80,0,60,.3),inset 0 2px 0 rgba(255,255,255,.4)}
.vbtn.gold.down,.vbtn.gold:active{box-shadow:0 1px 0 #c26a00,0 4px 8px rgba(120,60,0,.3)}

@keyframes pop5{0%{transform:scale(.94)}60%{transform:scale(1.03)}100%{transform:scale(1)}}
/* dock + radio: bright glossy candy glass */
.radio,.dock{background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,.08) 45%),linear-gradient(180deg,#8a4dff,#5b2ad6);border:2px solid rgba(255,255,255,.45);box-shadow:0 10px 24px rgba(60,0,90,.45),inset 0 2px 0 rgba(255,255,255,.5)}
.dock button{color:#fff}
.cmd-panel{background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.06)),linear-gradient(180deg,#7b3cff,#ff4fb0);border:2px solid rgba(255,255,255,.4);box-shadow:0 -6px 24px rgba(255,79,176,.35)}
.tile{border-radius:18px;box-shadow:0 6px 0 rgba(60,0,90,.5),0 12px 20px rgba(60,0,90,.35)}
.btn-3d{background:var(--aqua);color:#06304a;text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:0 5px 0 #127fb0,0 10px 18px rgba(0,60,120,.35),inset 0 2px 0 rgba(255,255,255,.6)}
/* quarters: lift the murk, warmer + more saturated */
.room{filter:saturate(1.28) brightness(1.16) contrast(1.02)}
.room .grade{background:radial-gradient(80% 50% at 50% 30%,rgba(255,200,140,.12),transparent)}
.room .vignette{background:radial-gradient(130% 95% at 50% 42%,transparent 65%,rgba(60,10,90,.28))}
/* holder pfps with tier rings (Mars / Moon / Earth) */
.pfp{--s:44px;--ring:#c9d2ff;position:relative;flex:none;display:inline-grid;place-items:center;width:var(--s);height:var(--s);border-radius:50%;background:linear-gradient(135deg,#7b3cff,#ff4fb0);box-shadow:0 0 0 3px var(--ring),0 0 0 5px rgba(255,255,255,.9),0 4px 10px rgba(40,0,70,.35);overflow:hidden}
.pfp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.pfp i{font:900 calc(var(--s)*.36)/1 Archivo,system-ui;font-style:normal;color:#fff;letter-spacing:.02em}
.pfp.pt-penthouse{--ring:var(--mars)}.pfp.pt-lobby{--ring:var(--moon)}.pfp.pt-basement{--ring:var(--earth)}.pfp.pt-bridge{--ring:#b38cff}.pfp.pt-deck{--ring:#ffffff}
/* the Twenty: a bright candy board instead of the dark amber CRT */
.win-crew .amber{background:linear-gradient(180deg,#fff6e8,#ffe1f1);color:#2a1450;box-shadow:0 0 0 4px #fff,0 0 0 8px #ff4fb0,0 18px 40px rgba(60,0,90,.45);font-family:Archivo,Inter,system-ui;border-radius:26px}
.win-crew .amber-head{color:#7b3cff;font-weight:900;letter-spacing:.06em}
.win-crew .amb-sub,.win-crew .amb-foot{color:#6b4a8f}
.win-crew .amb-find{background:#fff;border:2px solid #e8c9ff;border-radius:16px;color:#7b3cff}.win-crew .amb-find input{color:#2a1450}
.win-crew .rocker{background:#fff;color:#2a1450;border:2px solid #f0d6ff;border-radius:14px;box-shadow:0 3px 0 #e2c2f5;font-weight:900}
.win-crew .rocker small{color:#8a6aa8}
.win-crew .rocker.on{background:var(--candy);color:#fff;border-color:#fff;box-shadow:0 4px 0 #b3237a}.win-crew .rocker.on small{color:#ffe1f1}
.win-crew .rocker[data-t="penthouse"].on{background:linear-gradient(180deg,#ffa36b,#ff6b3d);box-shadow:0 4px 0 #b8401c}
.win-crew .rocker[data-t="lobby"].on{background:linear-gradient(180deg,#e9edff,#aab8ff);color:#2a1450;box-shadow:0 4px 0 #7a88d6}.win-crew .rocker[data-t="lobby"].on small{color:#4a3a7a}
.win-crew .rocker[data-t="basement"].on{background:linear-gradient(180deg,#7fe3ff,#2bb6ee);box-shadow:0 4px 0 #157fb0}
.amb-line{display:flex;align-items:center;gap:8px;margin:7px 0}
.win-crew .amb-row{flex:1;min-width:0;display:grid;grid-template-columns:26px 44px 1fr auto auto;gap:9px;align-items:center;min-height:62px;padding:8px 10px;border:0;border-radius:18px;background:#fff;box-shadow:0 4px 0 #ecd2fa,0 8px 16px rgba(60,0,90,.1);color:#2a1450;font-size:14px}
.win-crew .amb-seat{font:900 15px Archivo,system-ui;color:#ff4fb0}
.win-crew .amb-name{font-weight:800}.win-crew .amb-name small{color:#8a6aa8}
.win-crew .amb-bal{color:#7b3cff;font-weight:800;font-variant-numeric:tabular-nums}
.win-crew .amb-pay{color:#ff6b3d;font-weight:900}
.amb-room{flex:none;width:46px;height:46px;border-radius:16px;border:2px solid #fff;background:var(--aqua);box-shadow:0 4px 0 #127fb0;display:grid;place-items:center}
.amb-room svg{width:22px;height:22px;fill:#fff;stroke:#0b4d70;stroke-width:1.4}
.win-crew .amb-card{background:#fff;border:0;border-radius:20px;box-shadow:0 5px 0 #ecd2fa;color:#2a1450}.amb-ch{display:flex;align-items:center;gap:12px}
.win-crew .amb-fold summary{color:#7b3cff}
/* crew quarters: pfp + actions */
.cq-pfp{position:absolute;display:grid;place-items:center}.cq-pfp .pfp{--s:100%!important;width:100%;height:100%}
.cq-acts{display:flex;gap:10px;margin:12px 12px 0}.cq-acts .vbtn{flex:1}
/* ---------- 3D room stage ---------- */
.r3d-stage{position:relative;height:min(64vh,600px);min-height:420px;margin:0 -4px 14px;border-radius:26px;overflow:hidden;background:linear-gradient(180deg,#7b3cff,#ff4fb0 60%,#ffb21e);box-shadow:0 0 0 4px #fff,0 16px 34px rgba(60,0,90,.4)}
.r3d-stage .r3d-cv{position:absolute;inset:0;display:block;touch-action:none}
.r3d-load{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff;font:900 16px Archivo,system-ui;z-index:1;transition:opacity .5s}
.r3d-load i,.xp-load i,.ar-mvload i{width:44px;height:44px;border-radius:50%;border:5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin5 .9s linear infinite}
@keyframes spin5{to{transform:rotate(360deg)}}
.r3d-stage.ready .r3d-load{opacity:0;pointer-events:none}
.r3d-badge{position:absolute;left:12px;top:12px;z-index:3;padding:7px 12px;border-radius:99px;background:rgba(255,255,255,.92);color:var(--ink);font:900 13px Archivo,system-ui;letter-spacing:.08em;box-shadow:0 0 0 3px var(--tc,#c9d2ff),0 6px 12px rgba(60,0,90,.25)}
.r3d-tip{position:absolute;right:12px;top:14px;z-index:3;padding:6px 10px;border-radius:99px;background:rgba(42,20,80,.45);color:#fff;font:700 11.5px Inter,system-ui;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}
.r3d-acts{position:absolute;left:12px;right:12px;bottom:12px;z-index:3;display:flex;gap:10px}
.xbtn{flex:1;min-height:54px;border-radius:18px;border:2.5px solid #fff;font:900 16px Archivo,system-ui;color:#fff;letter-spacing:.01em;transition:transform .14s cubic-bezier(.3,1.6,.5,1)}
.xbtn.down{transform:translateY(3px) scale(.97)}
.xp-go{flex:1.5;background:var(--candy);box-shadow:0 5px 0 #b3237a,0 12px 20px rgba(80,0,60,.4),inset 0 2px 0 rgba(255,255,255,.5)}
.xp-go::before{content:"◉ ";}
.ar-go3{background:var(--aqua);color:#06304a;box-shadow:0 5px 0 #127fb0,0 12px 20px rgba(0,60,120,.35),inset 0 2px 0 rgba(255,255,255,.6)}
.r3d-card{position:absolute;left:12px;right:12px;bottom:80px;z-index:4;display:flex;flex-direction:column;gap:6px;padding:14px 14px 12px;border-radius:20px;background:#fff;color:var(--ink);box-shadow:0 0 0 3px var(--pink),0 14px 30px rgba(60,0,90,.4)}
.r3d-card b{font:900 18px Archivo,system-ui;padding-right:36px}.r3d-card small{font:600 13.5px/1.35 Inter,system-ui;color:#5b4a7a}
.r3d-card .vbtn{margin-top:6px;min-height:48px}
.r3d-x{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;border:0;background:#f3e6ff;color:#7b3cff;font:900 20px/1 system-ui}
.rm-wall[data-wall="candy"]{background:repeating-linear-gradient(90deg,#ffd1ea 0 28px,#ffe9f5 28px 56px)}
/* ---------- Explore / VR ---------- */
.win-explore .win-frame{padding:0;height:100%}
.xp{position:fixed;inset:0;background:#fff0f8;overflow:hidden}
.xp-stage{position:absolute;inset:0}.xp-stage .r3d-cv{display:block}
.xp-top{position:absolute;left:0;right:0;top:0;z-index:5;display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top) + 10px) 12px 10px}
.xp-top .win-close{position:static}
.xp-title{padding:8px 14px;border-radius:99px;background:rgba(255,255,255,.92);color:var(--ink);font:900 14px Archivo,system-ui;letter-spacing:.08em;box-shadow:0 0 0 3px var(--pink),0 6px 14px rgba(60,0,90,.25)}
.xp-hint{position:absolute;left:50%;top:calc(env(safe-area-inset-top) + 66px);transform:translateX(-50%);z-index:5;margin:0;padding:8px 14px;border-radius:99px;background:rgba(42,20,80,.55);color:#fff;font:700 12.5px Inter,system-ui;white-space:nowrap;pointer-events:none;animation:arHint 6s ease forwards;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.xp-bar{position:absolute;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 16px);z-index:5;display:flex;gap:8px}
.xp-b{flex:1;min-height:52px;border-radius:18px;border:2.5px solid #fff;background:rgba(123,60,255,.85);color:#fff;font:900 14.5px Archivo,system-ui;box-shadow:0 5px 0 #4a1fb0,0 10px 18px rgba(60,0,90,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.xp-b.on{background:var(--sunny);color:#4a2400;box-shadow:0 5px 0 #c26a00}
#xpXR{background:var(--candy)}
.xp-card{bottom:calc(env(safe-area-inset-bottom) + 86px)}
.xp-load{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(180deg,#7b3cff,#ff4fb0);color:#fff;font:900 17px Archivo,system-ui}
.xp-load[hidden]{display:none}
.xp-msg{position:absolute;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:6;margin:0;text-align:center;font:700 13.5px Inter,system-ui;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}.xp-msg:empty{display:none}
.xp-exit{position:absolute;right:10px;top:10px;z-index:8;padding:10px 14px;border-radius:99px;border:2px solid #fff;background:rgba(42,20,80,.7);color:#fff;font:900 13px Archivo,system-ui}
.xp-ret{display:none;position:absolute;top:50%;z-index:7;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;border:2.5px solid #fff;box-shadow:0 0 0 2px rgba(255,79,176,.8);pointer-events:none}
.xp-ret.l{left:25%}.xp-ret.r{left:75%}
.xp-vr .xp-ret{display:block}.xp-vr .xp-top,.xp-vr .xp-bar,.xp-vr .xp-hint,.xp-vr .xp-card{display:none!important}
/* ---------- 3D & AR menu ---------- */
.win-ar:not(.ar-live) .ar-chips{display:none}
.ar-menu{top:calc(env(safe-area-inset-top) + 62px);bottom:auto;max-height:calc(100% - env(safe-area-inset-top) - 76px);overflow-y:auto;background:linear-gradient(180deg,#fff6e8,#ffe1f1);border:3px solid #fff;color:var(--ink);box-shadow:0 0 0 4px #ff4fb0,0 20px 40px rgba(60,0,90,.45)}
.ar-menu>b.ar-h{font:900 22px Archivo,system-ui;color:var(--ink);text-shadow:none;text-align:left}
.ar-sub{margin:-6px 0 0;font:600 13.5px Inter,system-ui;color:#5b4a7a}
.ar-mvwrap{position:relative;height:300px;border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#b9a6ff,#ffc4e6);box-shadow:inset 0 0 0 3px #fff}
.ar-mvwrap model-viewer{width:100%;height:100%;--poster-color:transparent;background:transparent}
.ar-mvload{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;font:900 15px Archivo,system-ui;pointer-events:none}.ar-mvload[hidden]{display:none}
.ar-row{display:grid;gap:8px}
.ar-menu .ar-qlb{background:#fff;color:var(--ink);border:2px solid #f0d6ff;box-shadow:0 4px 0 #ecd2fa}
.ar-menu .ar-qlb small{color:#6b5a8a}
.ar-qlb.big{background:var(--aqua);border-color:#fff;box-shadow:0 5px 0 #127fb0,0 10px 18px rgba(0,60,120,.3);color:#06304a;text-align:left;width:100%}
.ar-qlb.big small{color:#0b4d70}.ar-qlb.big img{background:#fff}
.ar-two{display:flex;gap:8px}.ar-two .vbtn{flex:1}.ar-two .ar-file{flex:.7}
.ar-menu .w-note{color:#6b5a8a}
.hero-lid,.hero-eye{display:none!important}
/* v5: 3D entry points on Command + in My quarters */
.cmd-3d{display:grid;grid-template-columns:1.55fr 1fr;gap:10px;margin:12px 2px 2px}
.cmd-3d button{border:0;border-radius:20px;min-height:64px;color:#fff;font:inherit;text-align:left;cursor:pointer;position:relative;overflow:hidden}
.cmd-3d button::after{content:"";position:absolute;left:6%;right:6%;top:4px;height:30%;border-radius:14px;background:linear-gradient(#ffffff4d,#fff0);pointer-events:none}
.cmd-3d button>*{position:relative;z-index:1}
.c3-go{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(135deg,#ff4fb3,#ff8a3d 60%,#ffd23d);box-shadow:0 5px 0 #b8306f,0 10px 22px #ff4fb366,inset 0 -3px 0 #0002}
.c3-go svg{width:34px;height:34px;flex:none;fill:#fff3;stroke:#fff;stroke-width:1.8;stroke-linejoin:round;filter:drop-shadow(0 2px 0 #0003)}
.c3-go span{display:flex;flex-direction:column;flex:1;min-width:0}
.c3-go b{font-size:15.5px;white-space:nowrap;font-weight:900;letter-spacing:.2px;text-shadow:0 2px 0 #0003}
.c3-go small,.c3-ar small{font-size:11px;font-weight:700;opacity:.92}
.c3-go i{font-style:normal;font-size:26px;font-weight:900}
.c3-ar{display:flex;flex-direction:column;justify-content:center;padding:10px 12px;background:linear-gradient(135deg,#2fe0ff,#5b7cff);box-shadow:0 5px 0 #2a4bb8,0 10px 22px #2fe0ff55,inset 0 -3px 0 #0002}
.c3-ar b{font-size:17px;font-weight:900;text-shadow:0 2px 0 #0003}
.cmd-3d button:active{transform:translateY(3px)}
.q3d{position:fixed;left:50%;transform:translateX(-50%);top:calc(env(safe-area-inset-top,0px) + 70px);z-index:30;display:none;gap:6px;padding:5px;border-radius:999px;background:#ffffffd9;box-shadow:0 6px 20px #0004;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body.in-quarters .q3d{display:flex}
body.in-quarters.win-open .q3d{display:none}
.q3d button{border:0;border-radius:999px;padding:9px 12px;font:inherit;font-size:13px;font-weight:900;color:#3a1d5c;background:#f3eaff;display:flex;align-items:center;gap:5px;white-space:nowrap}
.q3d button.go{color:#fff;background:linear-gradient(135deg,#ff4fb3,#ff8a3d)}
.q3d button.btn-3d{color:#fff;background:linear-gradient(135deg,#2fe0ff,#5b7cff)}
.q3d svg{width:16px;height:16px;fill:#fff3;stroke:#fff;stroke-width:2;stroke-linejoin:round}
.hero-3d{position:absolute;left:10px;top:10px;z-index:5;height:40px;padding:0 13px 0 9px;border:2px solid #fff;border-radius:999px;display:flex;align-items:center;gap:5px;color:#fff;font:900 15px/1 Inter,system-ui;letter-spacing:.5px;background:linear-gradient(135deg,#ff4fb3,#ff8a3d);box-shadow:0 4px 0 #b8306f,0 6px 16px #ff4fb380;animation:h3dpop 2.6s ease-in-out infinite}
.hero-3d svg{width:20px;height:20px;fill:#fff4;stroke:#fff;stroke-width:2;stroke-linejoin:round}
@keyframes h3dpop{0%,86%,100%{transform:scale(1)}91%{transform:scale(1.09)}95%{transform:scale(.97)}}
@media (prefers-reduced-motion:reduce){.hero-3d{animation:none}}
