[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #c2410c; outline-offset: 4px; }
html { scroll-padding-top: 5rem; }
#mobile-panel { overflow-y: auto; }
#mobile-panel nav a { display: block; padding: .65rem .5rem; border-bottom: 1px solid #e5e7eb; }
.game-frame { display: block; width: 100%; aspect-ratio: 20 / 13; max-height: 650px; border: 0; background: #111827; }
.game-controls { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .8rem; padding: 1rem; background: #fff7ed; color: #431407; font-size: .9rem; }
.game-status { flex-basis: 100%; margin: 0; }
.game-action { min-height: 44px; padding: .5rem .9rem; border: 1px solid #9a3412; border-radius: .5rem; font-weight: 600; }
.game-action:hover { background: #ffedd5; }
.game-controls a, .game-source a, .game-notice a { text-decoration: underline; text-underline-offset: 3px; }
.game-source { margin: 1rem auto 0; max-width: 50rem; font-size: .85rem; color: #57534e; }
.game-notice { padding: 1rem; color: #431407; background: #fff7ed; border-left: 3px solid #c2410c; }
.guide-intro { max-width: 1000px; margin: 0 auto; padding: 2rem 1rem 0; color: #292524; }
.guide-eyebrow { margin-bottom: .5rem; color: #9a3412; font-size: .8rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.guide-intro h1 { margin-bottom: .75rem; font-size: clamp(1.7rem, 4vw, 2.7rem); line-height: 1.15; font-weight: 700; }
.guide-intro > p:not(.guide-eyebrow) { max-width: 45rem; line-height: 1.6; }
.guide-shortcuts { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.1rem; }
.guide-shortcuts a { display: inline-flex; align-items: center; min-height: 44px; padding: .55rem .85rem; border: 1px solid #a8a29e; border-radius: .4rem; background: #fffaf2; font-weight: 600; }
.guide-shortcuts a:hover { background: #ffedd5; }
.guide-shortcuts .guide-play-link { background: #9a3412; color: white; border-color: #9a3412; }
.guide-shortcuts .guide-play-link:hover { background: #7c2d12; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
