/* Game layer: HUD, unlock toasts, level chips, mission map. */
.game-hud {display:inline-flex;align-items:center;gap:9px;margin-left:22px;padding:7px 14px;border:1px solid #ff6b7c88;border-radius:30px;background:#1a0d12cc;color:#ffe3e6;font:600 10px/1 ui-monospace,Menlo,monospace;letter-spacing:1px;cursor:pointer;box-shadow:0 0 14px -4px #ff2b45;transition:box-shadow .3s,transform .3s;white-space:nowrap;}
.game-hud:hover {box-shadow:0 0 22px -2px #ff2b45;transform:translateY(-1px);}
.game-hud-lvl {color:#ff8e98;}
.game-hud-bar {width:54px;height:4px;border-radius:4px;background:#4a1b25;overflow:hidden;}
.game-hud-bar span {display:block;height:100%;background:linear-gradient(90deg,#c0122f,#ff8e98);box-shadow:0 0 8px #ff2b45;transition:width .8s ease;}
.cyber-home .game-hud {align-self:center;}
.world-header nav + .game-hud {order:3;}
.world-header .menu-toggle {order:4;}
.cyber-world main h1[tabindex="-1"]:focus {outline:none;}

.game-toast-kicker {font:600 10px/1.4 ui-monospace,Menlo,monospace;letter-spacing:.32em;color:#ff8e98;}

/* Level unlock: a cinematic chapter card, not a pop-up box. */
.game-card {position:fixed;left:0;right:0;top:38%;z-index:1200;display:flex;flex-direction:column;align-items:center;gap:10px;padding:34px 16px;text-align:center;pointer-events:none;
  background:linear-gradient(90deg,transparent,#060406e0 15%,#060406f7 50%,#060406e0 85%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .6s ease;}
.game-card.is-in {opacity:1;}
.game-card.is-out {opacity:0;transition:opacity .7s ease;}
.game-card p {margin:0;}
.gc-butterfly {width:40px;height:40px;opacity:0;transform:translateY(6px);transition:opacity .8s .2s,transform .8s .2s;}
.gc-line {display:block;width:min(520px,80vw);height:1px;background:linear-gradient(90deg,transparent,#e8b9a0,#ff8e98,#e8b9a0,transparent);transform:scaleX(0);transition:transform 1.1s cubic-bezier(.2,.7,.2,1);}
.gc-kicker {font:500 11px/1 var(--sans);letter-spacing:.55em;text-transform:uppercase;color:#e8b9a0;opacity:0;transition:opacity .8s .35s,letter-spacing 1.4s .35s cubic-bezier(.2,.7,.2,1);}
.gc-title {font:400 clamp(40px,6vw,76px)/1.05 "Great Vibes",cursive;color:#fff4ef;text-shadow:0 0 30px #ff2b4555;opacity:0;filter:blur(8px);transform:scale(1.04);transition:opacity 1s .5s,filter 1s .5s,transform 1.4s .5s cubic-bezier(.2,.7,.2,1);}
.gc-reward {font:500 11px/1 var(--sans);letter-spacing:.35em;color:#e8c27a;opacity:0;transition:opacity .8s 1.1s;}
.game-card.is-in .gc-butterfly {opacity:1;transform:none;}
.game-card.is-in .gc-line {transform:scaleX(1);}
.game-card.is-in .gc-kicker {opacity:1;letter-spacing:.32em;}
.game-card.is-in .gc-title {opacity:1;filter:none;transform:none;}
.game-card.is-in .gc-reward {opacity:1;}

/* Achievements: a quiet glass pill that slides in at the top right. */
.game-badge {position:fixed;top:100px;right:24px;z-index:1200;display:flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;max-width:calc(100% - 32px);border:1px solid #e8b9a066;border-radius:40px;background:#0d090ce6;backdrop-filter:blur(8px);box-shadow:0 16px 40px -16px #000;pointer-events:none;opacity:0;transform:translateX(24px);transition:opacity .45s,transform .6s cubic-bezier(.2,.8,.2,1);}
.game-badge.is-in {opacity:1;transform:none;}
.game-badge.is-out {opacity:0;transform:translateX(24px);}
.game-badge img {width:34px;height:34px;border-radius:50%;background:#1f1218;padding:4px;box-shadow:0 0 0 1px #e8b9a055;}
.gb-copy {display:flex;flex-direction:column;gap:3px;}
.gb-kicker {font:500 9px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:#e8b9a0;}
.gb-title {font:500 17px/1.15 var(--serif,"Cormorant Garamond",serif);color:#fff4ef;}
.gb-xp {margin-left:6px;font:500 10px/1 var(--sans);letter-spacing:.2em;color:#e8c27a;white-space:nowrap;}

.level-transition .level-name {font:600 12px/1.5 ui-monospace,Menlo,monospace;letter-spacing:.25em;color:#ffd2d7;margin-top:10px;}

.game-chip {display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;font:600 10px/1 ui-monospace,Menlo,monospace;letter-spacing:2px;text-transform:uppercase;color:#f3d8da;}
.game-chip span {padding:5px 9px;border:1px solid #ff6b7c;border-radius:4px;color:#ff8e98;background:#2a0f17aa;box-shadow:0 0 12px -3px #ff2b45;}
.game-chip {align-self:flex-start;}

.game-tile-badge {display:inline-block;margin-bottom:8px;padding:4px 8px;font:600 9px/1 ui-monospace,Menlo,monospace;letter-spacing:1.5px;color:#ffd2d7;background:#140a0ecc;border:1px solid #ff6b7c88;border-radius:4px;}
.game-tile-badge.is-open {color:#ffd166;border-color:#ffd16688;}
.studio-destination:hover .game-tile-badge:not(.is-open) {background:#ff2b45;color:#fff;border-color:#ff2b45;}

.game-mission {display:block;margin-bottom:10px;font:600 10px/1 ui-monospace,Menlo,monospace;letter-spacing:2px;color:#ff6b7c;}

.game-map {width:min(560px,calc(100% - 32px));max-height:calc(100svh - 48px);overflow:auto;padding:26px;color:#f6eeea;background:linear-gradient(170deg,#1d0f16,#0c090e);border:1px solid #ff6b7c88;border-radius:16px;box-shadow:0 0 60px -10px #ff2b4588;}
.game-map::backdrop {background:#050305cc;backdrop-filter:blur(3px);}
.game-map h2 {margin:6px 0 4px;font:400 42px/1.1 "Great Vibes",cursive;color:#ff9ba4;}
.game-map h3 {margin:22px 0 10px;font:600 11px/1 ui-monospace,Menlo,monospace;letter-spacing:.3em;color:#ff8e98;text-transform:uppercase;}
.game-map-stats {font:600 11px/1.4 ui-monospace,Menlo,monospace;color:#ffd166;letter-spacing:1px;margin:0;}
.game-levels,.game-achievements {list-style:none;margin:16px 0 0;padding:0;display:grid;gap:6px;}
.game-levels a {display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:10px 14px;border:1px solid #ab586244;border-radius:10px;color:#e9dedd;text-decoration:none;background:#120c10;transition:border-color .25s,background .25s;}
.game-levels a:hover {border-color:#ff6b7c;background:#261019;text-decoration:none;}
.game-levels strong {display:block;font:500 17px/1.2 var(--serif,"Cormorant Garamond",serif);}
.game-levels small,.game-achievements small {display:block;font-size:11px;color:#bca9ab;}
.game-level-n {font:700 14px/1 ui-monospace,Menlo,monospace;color:#6f4a50;}
.game-level-state {font:600 9px/1 ui-monospace,Menlo,monospace;letter-spacing:1px;color:#8d767a;text-transform:uppercase;}
.game-levels .is-open .game-level-n {color:#ff8e98;}
.game-levels .is-open .game-level-state {color:#ffd166;}
.game-achievements {grid-template-columns:1fr 1fr;}
.game-achievements li {padding:10px 12px;border:1px dashed #ab586244;border-radius:10px;opacity:.55;}
.game-achievements li.is-open {opacity:1;border-style:solid;border-color:#ffd16677;background:#1f1610;}
.game-achievements strong {font:600 12px/1.4 var(--sans);color:#ffe3e6;}
.game-map-note {margin:16px 0 0;font-size:11px;color:#a8969a;}
.game-map-actions {display:flex;justify-content:flex-end;gap:10px;margin-top:14px;}
.game-map-actions button {padding:9px 18px;border-radius:30px;border:1px solid #ff6b7c88;background:#1a0d12;color:#ffe3e6;font:500 12px var(--sans);cursor:pointer;}
.game-map-actions .game-close {background:#5c2632;border-color:#ff6b7c;}

.world-header nav {margin-left:auto;}

@media (max-width:850px) {
  .game-badge {top:80px;right:16px;}
  .game-hud {margin-left:auto;margin-right:10px;padding:6px 10px;}
  .game-hud-bar,.game-hud-xp {display:none;}
  .cyber-home .game-tile-badge {display:none;}
  .game-achievements {grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce) {
  .game-card *,.game-badge {transition:opacity .2s!important;transform:none!important;filter:none!important;}
}
/* Some page styles target every paragraph in a hero; keep the chip's own type. */
.room-page p.game-chip { font:600 10px/1 ui-monospace,Menlo,monospace!important; letter-spacing:2px!important; color:#f3d8da!important; }
