/* Plain UI overrides: content first, no decorative game presentation. */
.screen { padding: clamp(20px, 4vw, 48px); background: #1e1e1e; }
.screen-bg { display: block; opacity: 1; filter: none; }
.screen-bg::after { background: rgba(30, 30, 30, .35); }
.screen::before { display: none !important; }
.mentor-card { position: absolute !important; right: 0; bottom: 0; z-index: 2; display: block; width: 30vw; height: 100%; pointer-events: none; }
.mentor-card img { position: absolute; right: -5%; bottom: -10%; width: min(30vw, 560px); height: auto; max-height: 100%; object-fit: contain; object-position: bottom right; opacity: 1; }
.mentor-card .mentor { position: absolute; right: 0; bottom: 10px; width: min(260px, 100%); margin: 0; padding: 10px 12px; color: var(--muted); border: 1px solid #4a4a4a; background: #252525; font: 12px/1.4 "Funnel Display", sans-serif; }
.mentor-card .mentor b { color: var(--mint); }
.screen::after { display: none; }
.page-header { margin-bottom: 28px; }
.page-header h1, .main-menu-brand h1, .phase-heading h1, .checkpoint-card h1, .reflection-card h1, .score-card h1 { font-size: clamp(28px, 5vw, 54px); }
.page-header h1, .main-menu-brand h1, .phase-heading h1, .checkpoint-card h1, .reflection-card h1, .score-card h1, .concept-detail h2 { font-family: "Funnel Display", sans-serif; }
.panel, .concept-detail, .demo-code, .puzzle-panel, .compiler-panel, .checkpoint-card, .reflection-card, .scenario-card, .answer-card, .analytics-card, .score-card, .phase-nav, .stage-detail { border: 1px solid #4a4a4a; background: #252525; box-shadow: none; clip-path: none; }
.button { box-shadow: none; border: 1px solid #4ade80; background: #4ade80; }
.button--ghost { color: var(--text); border-color: #555; background: #303030; }
.button--danger { border-color: #d9534f; background: #d9534f; }
.card-grid, .mission-grid { gap: 12px; }
.case-card, .guide-rule, .stage, .concept-card, .answer-option, .choice { border: 1px solid #4a4a4a; background: #252525; box-shadow: none; clip-path: none; transition: none; }
.case-card:hover, .guide-rule:hover, .stage:not(:disabled):hover, .concept-card:hover, .answer-option:hover, .choice:hover { border-color: #4ade80; background: #2d2d2d; transform: none; box-shadow: none; }
.screen--main-menu { display: grid; place-items: center; padding: 48px 24px; }
.menu-core { width: min(680px, 100%); text-align: left; }
.menu-core .main-menu-brand h1 { margin: 0 0 10px; line-height: 1; text-transform: none; }
.menu-core .main-menu-brand h1 span { color: var(--mint); -webkit-text-stroke: 0; }
.menu-core .main-menu-brand > p { margin: 0 0 28px; color: var(--muted); }
.main-menu-list { display: grid; gap: 10px; width: 100%; }
.main-menu-item, .menu-core .main-menu-item { display: grid; gap: 4px; min-height: 72px; padding: 14px 16px; color: var(--text); border: 1px solid #4a4a4a; background: #252525; text-align: left; clip-path: none; transition: none; animation: none; }
.main-menu-item span, .menu-core .main-menu-item span { font-size: 19px; font-weight: 700; text-transform: none; }
.main-menu-item small { color: var(--muted); }
.main-menu-item.is-primary, .menu-core .main-menu-item.is-primary { margin: 0; color: var(--text); border: 1px solid #4ade80; background: #253529; }
.main-menu-item::after, .main-menu-item.is-primary::after { display: none; }
.main-menu-item:hover, .menu-core .main-menu-item:hover { color: var(--text); background: #2d2d2d; transform: none; }
.main-menu-status { position: absolute; left: 24px; bottom: 16px; color: var(--muted); }
.intro-sequence { position: absolute !important; inset: 0; z-index: 80 !important; display: grid; place-items: center; padding: 24px; background: rgba(10, 18, 22, .72); backdrop-filter: none; transition: none; }
.intro-loader { display: grid; gap: 14px; width: min(420px, 100%); padding: 28px; color: var(--muted); border: 1px solid #4a4a4a; background: #1e1e1e; transform: none; transition: none; }
.intro-loader b { color: var(--mint); font-size: 20px; }
.intro-loader i { display: block; height: 4px; background: #4ade80; }
.intro-loader i::after { display: none; }
.intro-loader button { justify-self: start; opacity: 1; pointer-events: auto; transform: none; color: #07120b; border-color: #4ade80; background: #4ade80; transition: none; }
.intro-dialog { display: none; }
.has-intro .menu-core, .has-intro .main-menu-status, .has-intro .mentor-card { visibility: hidden; }
.intro-complete .menu-core, .intro-complete .main-menu-status, .intro-complete .mentor-card { visibility: visible; }
.screen.scene-exit, .screen.is-refresh * { animation: none !important; }
.terminal, .terminal--stream { border: 1px solid #4a4a4a; background: #161616; box-shadow: none; }
.terminal--stream pre, .radar__value { animation: none; transition: none; transform: none; }
.stage.is-shaking { animation: none; }
.progress-track span, .skill-bar i b { box-shadow: none; }

@media (max-width: 760px) {
  .mentor-card { right: 2%; width: 180px; height: 300px; opacity: 1; }
  .mentor-card .mentor { display: none; }
  .screen--main-menu .menu-core { position: relative; z-index: 3; }
}
