@media (max-width: 700px) {
  .login-shade { background: linear-gradient(0deg, rgba(8,29,36,.9), rgba(8,29,36,.18)); }
  .login-card { top: auto; bottom: 30px; translate: 0; }
  .login-card h1 { font-size: 39px; }
  .lead { font-size: 14px; margin-bottom: 12px; }
  label { margin-top: 15px; }
  .brand { top: 20px; left: 20px; }
  .portal-header{top:18px;right:18px}.portal-header button{padding:8px 10px}.portal-header small{display:none}.welcome-video{width:min(360px,100%)}
  .game-header { top: 12px; left: 12px; right: 12px; }
  .player-pill { display: none; }
  .utility-btn { font-size: 0; padding: 0 12px; }
  .utility-btn span, .utility-btn b { font-size: 13px; }
  .token-pill { display: flex; gap: 4px; }
  .scene-video-btn .scene-video-label { display: none; }
  .scene-instruction { display: none; }
  .scene-info { bottom: 24px; left: 18px; }
  .scene-traveler { min-width: 72px; }
  .modal { padding: 28px 20px; }
  .video-choice-modal { padding: 28px 20px 22px; }
  .verb-lesson-actions { align-items:stretch; flex-direction:column; }
  .verb-lesson-actions .primary-btn, .verb-lesson-actions .secondary-portal-btn { width:100%; }
  .story-choice { grid-template-columns: 42px 1fr 18px; padding: 12px; }
  .story-choice-icon { width: 39px; }
  .film-library-modal { padding: 28px 16px 20px; }
  .film-carousel { grid-template-columns: 1fr; }
  .carousel-arrow { display: none; }
  .pronoun-choices { grid-template-columns: repeat(2, 1fr); }
  .rainbow-modal { padding: 28px 18px 24px; }
  .film-picker-label { align-items:stretch; flex-direction:column; width:100%; margin:0 0 18px; }
  .film-picker-label select { width:100%; min-width:0; }
  .film-player-picker { margin-top:0; }
  .film-card { grid-template-columns: 1fr; height:auto; }
  .film-cover { min-height: 0; aspect-ratio:16/9; }
  .film-card-copy { padding: 22px; }
  .cape-modal[open] { display: block; }
  .cape-preview { min-height: 400px; margin-top: 26px; }
  .time-cape { width: 300px; height: 390px; padding: 60px 53px 30px; }
  .cape-content { height: 260px; grid-template-columns: 1fr 65px; }
  .cape-formula #cape-radical-preview { font-size: 20px; }
  .cape-content ol { font-size: 23px; }
  .video-controls { right: 7px; bottom: 7px; left: 7px; gap: 6px; }
  .video-volume { width: 48px; }
  .video-speed-label span { display: none; }
  .media-library-modal { padding: 28px 17px 22px; }
  .story-heading { display: block; }
  .grammar-toggle { margin-top: 14px; }
  .story-paper { min-height: 360px; }
  .story-extras { align-items: flex-start; flex-direction: column; }
  .story-audio-panel { flex: none; width: 100%; padding: 13px; }
  .story-audio-tools { align-items: flex-start; flex-direction: column; }
  .story-auto-toggle { margin-top: 0; }
  .replay-story-page { width: 100%; }
  .story-extras .media-back-btn { margin-left: 0; }
  .radio-card { grid-template-columns: 44px 1fr; }
  .radio-actions { grid-column: 1 / -1; }
  .game-choice-list { grid-template-columns: 1fr; }
  .game-choice-visual { min-height: 140px; }
  .memory-board { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .memory-card { min-height: 92px; }
  .puzzle-gallery { grid-template-columns:1fr; }
  .puzzle-card { grid-template-columns:120px 1fr; }
  .puzzle-card img { min-height:180px; }
  .coloring-gallery { grid-template-columns: repeat(2, 1fr); }
  .art-studio-heading { display: block; }
  .art-toolbar { align-items: stretch; }
  .art-toolbar label { flex: 1 1 130px; }
  .art-toolbar .print-art { margin-left: 0; }
  .origami-gallery { grid-template-columns: 1fr; }
  .origami-sheet-heading { display: block; }
  .origami-sheet-heading .primary-btn { margin-top: 14px; }
  .origami-step-card { grid-template-columns: 1fr; }
  .origami-diagram { height: 250px; }
  .origami-navigation { align-items: stretch; }
  .origami-navigation > button { flex: 1; font-size: 11px; }
  .sort-zones { grid-template-columns: repeat(2, 1fr); }
  .lighthouse-memory { grid-template-columns: repeat(2, 1fr); }
  .er-grid{grid-template-columns:90px repeat(2,1fr);font-size:11px}.er-write-grid{grid-template-columns:1fr}.er-write-grid .primary-btn{grid-column:auto}.er-match{gap:8px}
  .er-write-columns{grid-template-columns:1fr}.er-write-columns .primary-btn{grid-column:auto}
}
@media (max-width: 480px) {
  .er-write-columns label { grid-template-columns: minmax(82px, .65fr) minmax(0, 1.35fr); column-gap: 8px; padding-right: 9px; padding-left: 9px; }
  .er-ending-field input { min-width: 68px; }
  .er-ending-field > input:only-child { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; } }
