.game-hud{display:grid;gap:.08rem;min-width:5.4rem;padding:.38rem .58rem;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:999px;background:var(--panel,#17221d);color:var(--text,#eef4ef);font:inherit;cursor:pointer}
.game-hud-level{font-size:.72rem;font-weight:800;line-height:1}
.game-hud-flow{color:var(--accent,#e6a15c);font-size:.57rem;letter-spacing:.08em;white-space:nowrap}
.game-hud.floating{position:fixed;z-index:20;top:1rem;right:1rem}
.game-center{width:min(92vw,620px);max-height:88vh;padding:clamp(1.25rem,4vw,2rem);border:1px solid var(--line,rgba(255,255,255,.16));border-radius:1.6rem;background:var(--panel,#17221d);color:var(--text,#eef4ef);box-shadow:0 28px 90px rgba(0,0,0,.45)}
.game-center::backdrop{background:rgba(4,10,7,.7);backdrop-filter:blur(7px)}
.game-center h2{margin:.2rem 2rem 1.2rem 0;font-size:clamp(1.55rem,5vw,2.2rem)}
.game-center-close{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:50%;background:transparent;color:inherit;font-size:1.5rem;cursor:pointer}
.game-level-line{display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:baseline}
.game-level-line span{color:var(--muted,#9aa9a0)}
.game-level-line small{font-weight:700;color:var(--accent,#e6a15c)}
.game-level-track{height:.7rem;margin:.55rem 0 1.2rem;overflow:hidden;border-radius:999px;background:rgba(128,145,135,.18)}
.game-level-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#237866,#e1a255)}
.journey-seals{display:grid;grid-template-columns:repeat(8,1fr);gap:.4rem;margin:1.2rem 0}
.journey-seal{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:50%;color:var(--muted,#9aa9a0);opacity:.42}
.journey-seal.earned{border-color:var(--accent,#e6a15c);background:rgba(216,139,61,.13);color:var(--accent,#e6a15c);opacity:1;box-shadow:0 0 22px rgba(216,139,61,.12)}
.game-center-section{margin-top:1.2rem;padding-top:1.2rem;border-top:1px solid var(--line,rgba(255,255,255,.16))}
.game-center-section h3,.game-center-section p{margin:.25rem 0}
.game-center-section p,.game-center-note{color:var(--muted,#9aa9a0)}
.intensity-options{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;margin-top:1rem}
.intensity-options button{display:grid;gap:.2rem;padding:.75rem .45rem;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:1rem;background:transparent;color:inherit;font:inherit;font-weight:750;cursor:pointer}
.intensity-options button small{color:var(--muted,#9aa9a0);font-size:.7rem;font-weight:500}
.intensity-options button.selected{border-color:var(--accent,#e6a15c);background:rgba(216,139,61,.13)}
.game-center-note{margin:1.2rem 0 0;font-size:.85rem}
.game-toast{position:fixed;z-index:100;left:50%;bottom:1.4rem;max-width:min(90vw,32rem);padding:.8rem 1.1rem;border:1px solid rgba(230,161,92,.55);border-radius:999px;background:#17221d;color:#f4eee2;font-weight:750;box-shadow:0 18px 55px rgba(0,0,0,.34);opacity:0;transform:translate(-50%,18px);transition:.28s ease}
.game-toast.visible{opacity:1;transform:translate(-50%,0)}
.microgame-view{max-width:780px;margin:0 auto;animation:game-arrival .35s ease both}
.microgame-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.microgame-header h1{margin:.12rem 0}
.microgame-symbol{display:grid;place-items:center;width:4rem;height:4rem;border:1px solid rgba(216,139,61,.38);border-radius:1.25rem;background:rgba(216,139,61,.11);color:var(--accent,#e6a15c);font-family:"Noto Serif SC","Songti SC",serif;font-size:2rem}
.microgame-progress{margin:1rem 0 1.35rem;padding:.75rem 1rem;border:1px solid var(--line,rgba(255,255,255,.13));border-radius:1rem;background:rgba(128,145,135,.05)}
.microgame-progress .game-level-track{margin:.38rem 0 0;height:.42rem}
.microgame-body{display:grid;justify-items:center;gap:1rem;text-align:center}
.microgame-body h2{margin:.3rem 0 0;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(2rem,10vw,5rem)}
.microgame-prompt{margin:0;color:var(--muted,#9aa9a0)}
.microgame-feedback{min-height:1.5rem;margin:.1rem 0;color:var(--text,#eef4ef);font-weight:650}
.microgame-footer{display:flex;justify-content:center;margin-top:1rem}
.microgame-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;width:100%}
.microgame-choices button,.phrase-piece-grid button{min-height:4.5rem;padding:.75rem;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:1.1rem;background:var(--panel,#17221d);color:var(--text,#eef4ef);font:inherit;font-weight:700;cursor:pointer}
.microgame-choices button.right-choice,.phrase-piece-grid button.right-choice{border-color:#4cae89;background:rgba(76,174,137,.15)}
.microgame-choices button.try-again,.phrase-piece-grid button.try-again{border-color:var(--accent,#e6a15c);animation:gentle-nudge .28s ease}
.hanzi-game-choices b{display:block;font-family:"Noto Serif SC","Songti SC",serif;font-size:2.4rem}
.hanzi-game-choices small{display:block;color:var(--accent,#e6a15c)}
.game-audio-orb{margin:.25rem auto}
.tone-trail-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;width:100%}
.tone-trail-choices button{padding:.55rem;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:1rem;background:var(--panel,#17221d);color:inherit;cursor:pointer}
.tone-trail-choices svg{display:block;width:100%;height:auto}
.tone-trail-choices svg path{fill:none;stroke:rgba(128,145,135,.23);stroke-width:2}
.tone-trail-choices svg polyline{fill:none;stroke:var(--accent,#e6a15c);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}
.tone-trail-choices small{color:var(--muted,#9aa9a0)}
.tone-trail-choices button.right-choice{border-color:#4cae89;background:rgba(76,174,137,.15)}
.tone-trail-choices button.try-again{opacity:.55}
.memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;width:100%}
.memory-card{position:relative;min-height:7rem;padding:.7rem;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:1.1rem;background:linear-gradient(145deg,rgba(35,120,102,.2),rgba(216,139,61,.1));color:var(--text,#eef4ef);cursor:pointer;transform-style:preserve-3d;transition:transform .25s,border-color .25s}
.memory-cover,.memory-value{position:absolute;inset:0;display:grid;place-items:center;padding:.55rem;backface-visibility:hidden}
.memory-cover{font-size:2rem;color:var(--accent,#e6a15c)}
.memory-value{opacity:0;transform:rotateY(180deg);font-weight:750}
.memory-value.hanzi{font-family:"Noto Serif SC","Songti SC",serif;font-size:2.7rem}
.memory-card.revealed,.memory-card.matched{transform:rotateY(180deg)}
.memory-card.revealed .memory-cover,.memory-card.matched .memory-cover{opacity:0}
.memory-card.revealed .memory-value,.memory-card.matched .memory-value{opacity:1}
.memory-card.matched{border-color:#4cae89;background:rgba(76,174,137,.14)}
.forged-phrase{min-height:1.3em;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(2.2rem,10vw,4.8rem);color:var(--accent,#e6a15c)}
.phrase-piece-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem;width:100%}
.phrase-piece-grid button{display:grid;gap:.12rem;min-width:7rem}
.phrase-piece-grid b{font-family:"Noto Serif SC","Songti SC",serif;font-size:2rem}
.phrase-piece-grid small{color:var(--muted,#9aa9a0)}
.game-form-grid{width:100%}
@keyframes game-arrival{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:660px){
  .game-hud{min-width:4.6rem;padding:.34rem .42rem}
  .game-hud-flow{font-size:.5rem}
  .intensity-options{grid-template-columns:repeat(2,1fr)}
  .journey-seals{grid-template-columns:repeat(4,1fr)}
  .tone-trail-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .memory-card{min-height:6rem}
}
@media(prefers-reduced-motion:reduce){
  .microgame-view,.game-toast,.memory-card{animation:none;transition:none}
}
.mode-nav .practice-variety-button{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);align-items:center;width:100%;min-width:0;padding:.7rem .8rem;border-radius:.85rem;text-align:left}
.mode-nav .practice-variety-button .game-hud-symbol{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.65rem;background:rgba(216,139,61,.14);color:var(--accent,#e6a15c);font-family:"Noto Serif SC","Songti SC",serif;font-size:1.15rem}
.mode-nav .practice-variety-button .game-hud-label{display:grid;gap:.1rem;min-width:0}
.mode-nav .practice-variety-button .game-hud-label small{color:var(--muted,#9aa9a0);font-size:.72rem;font-weight:500}
