body[data-station=novgorod] .world img{opacity:.38}
.station-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:16px;min-height:0;height:100%}
.station-world-panel{min-height:0;min-width:0;display:flex;flex-direction:column;background:#142a24;border:1px solid #ab956453;border-radius:14px;overflow:hidden;position:relative}
.station-caption{padding:14px 17px 9px;background:linear-gradient(120deg,#203a2d,#172b22)}.station-caption h2{font:28px/1.15 Georgia,serif;margin:5px 0;color:#f3e6c7}.station-caption p{font-size:13px;color:#c9d0b7}.station-caption .eyebrow{font-size:10px}
#station-viewport{position:relative;flex:1;min-height:110px;overflow:hidden;background:#59432c}.station-fallback{position:absolute;width:100%;height:100%;object-fit:cover}
#station-canvas-layer{position:fixed;pointer-events:none;z-index:2;overflow:hidden;background:#443723}#station-canvas-layer[hidden],#station-canvas-layer.is-lost{display:none}#station-canvas-layer canvas{display:block;width:100%;height:100%}
.station-evidence{padding:8px 14px}.station-evidence>p{font-size:12px;color:#eadbb7;margin-bottom:7px;min-height:18px}.fragment-route{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:5px;padding:0;margin:0}.fragment-route li{text-align:center;min-width:0}.fragment-route li>span{display:flex;align-items:center;justify-content:center;height:25px;border:1px solid #99af963d;border-radius:4px;font-size:12px;color:#9eac99;background:#0e221a}.fragment-route small{font-size:10px;line-height:1.15;display:block;margin-top:4px;color:#a2b09e}.fragment-route [aria-current]{outline:1px solid #d8b46d;outline-offset:3px;border-radius:4px}.fragment-route [data-status=restored]>span{background:#405d3b;border-color:#adcc89;color:#e6f5cc}.fragment-route [data-status=skipped]>span{border-style:dashed;color:#b6a995}.fragment-route [data-status=needs_review]>span{color:#dfb26e;border-color:#bb925b}.station-world-panel>.sample-score{padding:0 14px 9px;margin-top:0}.station-world-panel .team-meter{display:none}.station-world-panel #response-count{margin:5px 0 0;font-size:11px}
.station-sheet{min-width:0;min-height:0;border:1px solid #a9b48c4d;border-radius:14px;background:#19382eee;display:flex;flex-direction:column;gap:10px;padding:18px 20px}.station-content{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.station-content h1{font:clamp(22px,2vw,30px)/1.18 Georgia,serif;color:#f1e9d2}.station-content>p{font-size:18px;line-height:1.4}.station-content blockquote{font:24px/1.4 Georgia;color:#e3c78b;margin:10px 0;padding-left:15px;border-left:2px solid #d7ae68}.station-question-text{background:#38544665;border-left:2px solid #b4b48a;padding:8px 12px}.station-content #answer-area{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:8px}.station-content #answer-form{min-width:0}.station-content fieldset{min-width:0;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;border:0}.station-content .form-tip{font-size:12px}.station-content .keeper-card{min-height:85px}.station-content .keeper-slot{height:78px;width:64px;flex-basis:64px}.station-content .keeper-answer>span{font-size:18px}.station-content .sample-response{margin-top:0;gap:8px}.station-content .sample-response p{font-size:12px}.station-content .sample-submit{min-width:140px;font-size:14px}.station-content .answer-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.station-content .answer-option{animation:none;font-size:17px;min-height:52px;padding:9px}.station-content .feedback{animation:none;transform:none;padding:8px;font-size:13px}.station-content .text-input{min-height:44px;font-size:23px}.station-content .letter-bank{gap:5px}.station-content .letter-key{min-width:34px;min-height:36px;padding:5px}.station-content .word-token{font-size:19px;padding:7px 9px}.station-content .pair-node{min-height:43px;padding:7px 10px;font-size:18px}.station-content .pair-status{font-size:11px}.station-content .pair-board{gap:26px}.station-content .display-options{gap:7px;display:grid;grid-template-columns:1fr 1fr}.station-content .display-options li{padding:9px;font-size:17px}.station-content .display-pairs p{font-size:18px;padding:7px}.station-content .display-tokens{font-size:21px}.station-content .token-list{gap:6px}
.station-hint{display:flex;align-items:center;gap:9px;flex:none}.station-hint .button{font-size:12px;padding:6px 9px;min-height:30px}.station-hint span{font-size:11px;color:#b8c9b6}.station-controls{border-top:1px solid #9daf8540;padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none}.station-controls>div{display:flex;gap:5px}.station-controls .button{padding:8px 10px;min-height:36px;font-size:12px}.station-controls .primary{font-size:14px}.station-sheet>.button{margin-top:auto}.station-sheet>.team-tabs{flex:none;gap:4px}.station-sheet .team-tabs .chip{font-size:10px;min-height:30px;padding:5px;flex:1}.station-pane-tabs{display:none}.station-summary{list-style:none;margin:12px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.station-summary li{background:#273f32;border:1px solid #a7b18835;padding:10px;font-size:14px}.station-summary b{color:#b4a27c;margin-right:7px}.station-summary [data-status=restored]{border-color:#99c678;color:#d8f3bd}
@media(max-height:820px) and (min-width:901px){.station-sheet{padding:14px 16px;gap:8px}.station-content{gap:9px}.station-content h1{font-size:25px}.station-content>p{font-size:16px}.station-caption{padding:10px 14px 7px}.station-caption h2{font-size:26px}.station-content .keeper-card{min-height:80px}.station-content .keeper-slot{height:72px}.station-content fieldset{gap:8px}.station-content .sample-response{min-height:38px}.station-world-panel .team-score{padding:5px 7px}.station-controls{padding-top:8px}}
@media(min-width:601px) and (max-width:900px){.station-layout{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:10px}.station-sheet{padding:12px;gap:7px}.station-content{gap:8px}.station-content h1{font-size:22px}.station-content>p{font-size:15px}.station-content .keeper-slot{width:48px;flex-basis:48px;height:67px}.station-content .keeper-card{min-height:72px}.station-content .keeper-answer>span{font-size:16px}.station-content .sample-response{flex-wrap:wrap}.station-content .sample-submit{min-height:34px}.station-controls{flex-wrap:wrap}.station-controls>.primary,.station-controls>.station-nav{margin-left:auto}.station-content .pair-node{font-size:16px;min-height:34px}.station-caption h2{font-size:23px}.fragment-route small{display:none}.station-caption p{font-size:12px}}
@media(max-width:600px){
 body[data-station=novgorod] #app{padding:5px 8px}.station-layout{display:flex;flex-direction:column;gap:6px}.station-world-panel{flex:none;height:150px;border-radius:8px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 30px}.station-caption{position:absolute;top:0;left:0;right:0;padding:7px 10px;background:linear-gradient(#14251eed,transparent);z-index:3;pointer-events:none}.station-caption h2{font-size:20px;margin:3px 0}.station-caption .eyebrow{font-size:8px}.station-caption p{display:none}#station-viewport{grid-row:1/-1;grid-column:1/-1;height:100%;min-height:0}.station-evidence{position:absolute;bottom:0;left:0;right:0;padding:5px 10px;background:#11291de8;z-index:3;display:flex;align-items:center;gap:7px}.station-evidence>p{font-size:9px;min-height:0;margin:0;max-width:90px}.fragment-route{gap:4px}.fragment-route li>span{height:20px;min-width:23px;font-size:10px}.fragment-route small{display:none}.station-world-panel>.sample-score{position:absolute;z-index:3;top:7px;right:6px;padding:0;left:auto;bottom:auto}.station-world-panel .sample-score .team-scores{display:flex;gap:5px}.station-world-panel .team-score{display:block!important;background:#142c20cf!important;padding:2px 4px!important;min-width:24px}.station-world-panel .team-score>span,.station-world-panel .team-score small,.station-world-panel #response-count{display:none}.station-world-panel .team-score strong{font-size:12px;position:static;color:var(--team)}
 .station-sheet{flex:1;padding:10px;gap:7px;border-radius:9px}.station-content{gap:8px}.station-content h1{font-size:22px}.station-content>p{font-size:16px}.station-content #answer-area{justify-content:flex-start}.station-content .keeper-grid{gap:7px}.station-content .keeper-card{min-height:76px;padding-right:5px}.station-content .keeper-slot{width:42px;flex-basis:42px;height:64px}.station-content .keeper-answer>span{font-size:16px}.station-content .sample-response{min-height:0;flex-direction:column;align-items:stretch;gap:5px}.station-content .sample-response p{font-size:11px;min-height:25px}.station-content .sample-submit{min-height:35px;padding:7px;font-size:14px}.station-controls{gap:5px;padding-top:7px}.station-controls>div{gap:4px}.station-controls .button{min-height:32px;font-size:10px;padding:6px}.station-controls .primary{font-size:11px;min-height:35px}.station-controls #teacher-key{display:none}.station-hint span{display:none}.station-hint{justify-content:flex-end}.station-hint .button{min-height:27px;font-size:10px}.station-content .sample-heading{font-size:9px}.station-content .sample-heading .eyebrow{font-size:9px}.station-content .answer-option{font-size:15px;min-height:43px}.station-content .pair-node{min-height:34px;font-size:16px;padding:6px}.station-content .display-options li{font-size:15px;padding:7px}.station-content .display-pairs p{font-size:15px;padding:5px}.station-content .word-token{font-size:17px;padding:6px}.station-content .display-tokens{font-size:17px}.station-content .form-tip{font-size:10px}.station-content .letter-key{min-width:28px;min-height:30px;font-size:17px}.station-content .text-input{min-height:37px;font-size:20px}.station-content fieldset{gap:7px}.station-content .feedback{font-size:11px;padding:6px}.station-summary{gap:6px;margin:2px 0}.station-summary li{font-size:12px;padding:7px}.station-content blockquote{font-size:18px;margin:0}.station-sheet>.button{min-height:38px;font-size:14px}
}
@media(max-width:600px) and (max-height:760px){
 .station-world-panel{height:106px}.station-caption h2{font-size:17px}.station-caption{padding:5px 8px}.station-caption .eyebrow{font-size:7px}.station-evidence{padding:4px 7px}.station-evidence>p{font-size:8px}.fragment-route li>span{height:17px;min-width:20px}.station-sheet{padding:8px;gap:6px}.station-content{gap:7px}.station-content h1{font-size:20px}.station-content>p{font-size:15px}.station-content .sample-heading{display:none}.station-content .keeper-card{min-height:65px}.station-content .keeper-slot{height:56px;width:35px;flex-basis:35px}.station-content .keeper-answer>span{font-size:15px}.station-content .keeper-answer small{font-size:7px}.station-content .sample-response p{min-height:23px}.station-content .word-token{font-size:16px;padding:5px}.station-content .pair-node{min-height:32px;font-size:15px}.station-content .pair-status{font-size:9px}.station-content .text-input{min-height:32px;font-size:18px}.station-content .form-tip{font-size:10px}.station-content .letter-key{min-width:24px;min-height:26px;font-size:16px;padding:3px}
 body[data-phase=question] .station-pane-tabs{display:flex;gap:5px;flex:none}.station-pane-tabs .button{font-size:11px;min-height:28px;padding:5px 9px;flex:1}.station-pane-tabs [aria-pressed=true]{background:#e8bf79;color:#173b2d}.station-sheet>.team-tabs{gap:3px}.station-sheet .team-tabs .chip{font-size:8px;min-height:24px;padding:3px}.station-controls{margin-top:auto}.station-content .answer-options{gap:5px}.station-content .answer-option{min-height:35px;font-size:14px;padding:5px}.station-content .display-options{gap:5px}.station-content .display-options li{font-size:13px;padding:5px}
}
@media(prefers-reduced-motion:reduce){.station-layout *{animation:none!important;transition:none!important}}
@media(max-width:600px) and (max-height:760px){
 .station-layout[data-pane=answer] .station-world-panel{height:78px}.station-layout[data-pane=answer] .station-caption h2{font-size:15px}.station-layout[data-pane=answer] .station-content .form-tip{display:none}.station-layout[data-pane=answer] .station-content .pair-node{min-height:30px;padding:5px}.station-layout[data-pane=answer] .station-content .pair-column{gap:4px}.station-layout[data-pane=answer] .station-content fieldset{gap:6px}.station-layout[data-pane=answer] .station-content .pair-status{font-size:9px;line-height:1.2}
 body[data-phase=station_complete] .station-world-panel{height:90px}body[data-phase=station_complete] .station-summary li{padding:5px}body[data-phase=station_complete] .station-summary{gap:5px}body[data-phase=station_complete] .station-content{gap:6px}
}

/* V6: the scene has the full upper panel; the caption remains a stable overlay. */
@media(min-width:601px){
 .station-caption{position:absolute;top:0;left:0;right:0;z-index:3;padding:12px 14px 22px;background:linear-gradient(180deg,#13291be8 0%,#13291b8c 65%,transparent);pointer-events:none}
 .station-caption h2{font-size:24px;margin:4px 0}.station-caption p{display:none}
 .station-world-panel #station-viewport{min-height:170px}
}
/* A task taller than its sheet scrolls inside the sheet; "Check answer" sticks to the bottom of the scrolling part, so it is
   always visible and never slides under the hint or the teacher buttons. Was phone-only; 01.10.2026 — on every screen:
   on a laptop or projector the long tasks (pairs, «choose all») overflowed under «Подсказка» and «Разбор / Пауза / Ключ». */
.station-content{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a9b48c80 transparent;padding:3px 5px;margin:-3px -5px}
.station-content #answer-area{flex:1 0 auto}
.station-content fieldset>.button.primary{position:sticky;bottom:0;z-index:2;box-shadow:0 -6px 14px #00000026}
/* 01.10.2026: возврат к заданиям станции у ведущего — «← Назад» рядом со следующим шагом, щелчок по плиткам 1–6
   и по списку итогов станции. */
.station-nav{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.summary-hint{margin:6px 0 0;font-size:13px;opacity:.85}
.station-summary li:has(>.summary-goto){padding:0!important}
.station-summary .summary-goto{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:7px;width:100%;padding:8px 10px;font:inherit;color:inherit;cursor:pointer;border-radius:inherit}
.station-summary .summary-goto:hover{background:#ffffff14}
.station-summary .summary-goto:focus-visible{outline:3px solid #91e9dc;outline-offset:2px}
.station-summary .summary-back{margin-left:auto;opacity:.85;font-size:1.05em}
.station-summary .summary-goto:hover .summary-back,.station-summary .summary-goto:focus-visible .summary-back{opacity:1}
#station-fragments li[data-goto]{cursor:pointer}
#station-fragments li[data-goto]:hover>span{border-color:#d8b46d}
#station-fragments li[data-goto]:focus-visible{outline:2px solid #91e9dc;outline-offset:3px;border-radius:4px}
/* 01.10.2026: невысокий экран ПК (ноутбук 1366×768, окно 1920×900 с панелями браузера) — компактнее карточки ответа,
   чтобы задание чаще помещалось целиком. Прилипшая кнопка проверки — на сплошной полосе цвета листа: карточки уходят
   под неё при прокрутке, а не просвечивают рядом с ней. */
@media(max-height:820px) and (min-width:901px){.station-content .pair-node{min-height:38px;padding:5px 10px;font-size:16px}.station-content .pair-board{gap:20px}.station-content .answer-option{min-height:46px;padding:7px 9px;font-size:16px}.station-content .feedback{padding:6px 8px}.station-content .station-question-text{padding:6px 10px}}
.station-sheet{--sheet-bg:#19382e}
.station-content{overflow-x:hidden}
/* Полоса — тенью цвета листа во всю ширину, обрезанной по высоте кнопки: тень всегда под фоном кнопки (псевдоэлемент
   с отрицательным z-index внутри прилипшей кнопки закрашивал её собственный фон). */
.station-content fieldset>.button.primary{box-shadow:0 0 0 100vmax var(--sheet-bg);clip-path:inset(-10px -100vmax -6px -100vmax)}
/* Проектор 1280×720 и ниже: ещё плотнее — заголовок и подсказка формы меньше, пары ближе. */
@media(max-height:740px) and (min-width:901px){.station-content h1{font-size:22px;line-height:1.15}.station-content .form-tip{font-size:11px}.station-content .pair-node{min-height:34px;padding:4px 9px;font-size:15px}.station-content .pair-board{gap:14px}.station-content fieldset{gap:6px}.station-content .answer-option{min-height:42px;font-size:15px}}
/* 01.10.2026, аудит контраста: подсказка в тёмном поле ответа («Слово целиком», «Одно слово») — 6,3:1 вместо 3,45:1. */
.station-content .text-input::placeholder{color:#9aa69e;opacity:1}
/* 01.10.2026 (владелец): на телефоне детям не нужно переключать вкладки — условие и варианты на одном листе, лист
   прокручивается (как на высоком телефоне). Переключатели «Условие/Ответ» убраны; «Книга ↗» Академии — тоже (рукопись открывает «Рукопись крупно ↗» на 3D-панели). */
@media(max-width:600px){
 .station-layout[data-pane=read] #answer-area{display:flex}
 .station-layout[data-pane=answer] .station-content>h1,.station-layout[data-pane=answer] .station-question-text{display:block}
 body[data-phase=question] .station-pane-tabs [data-station-pane]{display:none}
 body[data-phase=question] .station-pane-tabs{display:none}
}
/* 01.10.2026 (владелец): на телефоне 3D-панель станции — полоска над листом, открытие не разглядеть. На время крупного
   плана после ответа (атрибут body[data-closeup] ставит сцена) панель плавно раздвигается на бо́льшую часть экрана,
   потом сворачивается; касание развёрнутой панели сворачивает её раньше (app-v3.js). */
@media(max-width:600px){
 .station-world-panel{transition:height .45s ease}
 body[data-closeup] .station-world-panel{height:56vh!important;max-height:440px}
 body[data-closeup] .station-layout .station-caption h2{font-size:18px}
}
@media(max-width:600px) and (prefers-reduced-motion:reduce){.station-world-panel{transition:none}}
/* 01.10.2026, аудит контраста: подписи над 3D-сценой лежат на картинке — ореол в цвет листа делает их читаемыми на любом
   участке сцены (тёмные станции — тёмный ореол, светлые — светлый, в lyceum.css и future.css). */
.station-caption h2,.station-caption .eyebrow{text-shadow:0 1px 2px #000d,0 0 10px #000b}
/* 01.10.2026: на время крупного плана на телефоне кнопки осмотра и счёт команд над сценой убираются — открытие ничем
   не закрыто; после возврата камеры они появляются снова. */
@media(max-width:600px){
 .station-world-panel :is(.lyceum-desk-tools,.future-desk-tools,.academy-inspect,#team-board){transition:opacity .25s}
 body[data-closeup] .station-world-panel :is(.lyceum-desk-tools,.future-desk-tools,.academy-inspect,#team-board){opacity:0;pointer-events:none}
}
/* 01.10.2026, пользовательский тест на телефонах: шрифт не мельче 10–11 px, кнопки — не ниже 34–40 px, «Подсказка» есть
   на любом телефоне, строка состояния в одну строку (на паузе она росла в три и закрывала кнопки 3D-панели). */
@media(max-width:600px){
 .station-caption .eyebrow{font-size:10px;letter-spacing:.05em}
 .station-evidence>p{font-size:11px;max-width:none;min-width:0;flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .fragment-route li>span{font-size:11px}
 #station-fragments li[data-goto]{padding:7px 1px;margin:-7px 0}
 .station-controls .button{min-height:38px;font-size:12px;padding:6px 10px}
 .station-controls .primary{min-height:40px;font-size:13px}
 .station-content .station-hint{margin:0}
 .station-hint .button{min-height:34px;font-size:12px;padding:5px 12px}
 .station-content .sample-heading,.station-content .sample-heading .eyebrow{font-size:11px}
 .station-content .form-tip,.station-content .pair-status{font-size:12px}
 .station-content .feedback{font-size:13px}
 .station-content .sample-response p{font-size:12px}
 .station-content .keeper-answer small{font-size:10px}
 .station-sheet .team-tabs .chip{font-size:11px;min-height:30px}
 .station-content fieldset>.button.primary,.station-content .sample-submit{min-height:42px}
 .station-world-panel .team-score strong{font-size:13px;color:color-mix(in srgb,var(--team) 72%,#fff)}
}
@media(max-width:600px) and (max-height:760px){
 .station-content .keeper-answer small{display:none}
 .station-content .letter-key{min-width:30px;min-height:36px;font-size:17px}
 .station-content .text-input{min-height:38px}
}
/* Экранная клавиатура (Android сжимает окно на ~290 px): пока ученик набирает ответ в текстовом поле (body[data-typing],
   app-v3.js), 3D-панель, «Подсказка» и кнопки ведущего убраны — поле и «Проверить ответ» остаются над клавиатурой.
   Только для текстового поля: касание варианта ответа раскладку не трогает. Сцена прячет свой слой сама (размер 0). */
@media(max-width:600px){
 body[data-typing] :is(.station-world-panel,.station-controls,.station-hint){display:none}
 /* 02.10.2026, тест Android 320×368 с клавиатурой: в «Соберите слово» плитки букв стояли между полем и «Проверить ответ»
    и уводили кнопку под клавиатуру. Пока ученик печатает, плитки и подсказка формы убраны — кнопка сразу под полем. */
 body[data-typing] fieldset:has(.word-input) :is(.letter-bank,.form-tip){display:none}
}
/* 01.10.2026, тест учителя: вкладки команд «Один экран» на ПК — 12 px (были 10 px). */
@media(min-width:601px){.station-sheet .team-tabs .chip{font-size:12px}}
/* 01.10.2026, повторный тест на 360×640: у заданий с карточками-хранителями кнопка проверки лежит в .sample-response —
   теперь и этот блок (статус ответа + «Проверить ответ») прилипает к низу листа на полосе его цвета, как у остальных форм. */
.station-content fieldset>.sample-response{position:sticky;bottom:0;z-index:2;background:var(--sheet-bg);box-shadow:0 0 0 100vmax var(--sheet-bg);clip-path:inset(-10px -100vmax -6px -100vmax)}
/* На телефоне «Подсказка» — сразу под условием, над вариантами: в конце листа, под прилипшей «Проверить ответ», её надо
   было докручивать, а отклик после ошибки советует именно её. */
@media(max-width:600px){
 .station-content>.station-hint,.station-content>.future-reading-tools{order:1}
 .station-content>#answer-area{order:2}
}
/* Повторный тест 01.10.2026: подпись над сценой Новгорода на телефоне — на плотной подложке (на светлом кадре 2,9:1). */
@media(max-width:600px){.station-caption{background:linear-gradient(#14251ef2 0%,#14251ed0 70%,#14251e00 100%)}}
/* 02.10.2026 (владелец: «ответы должны влезать в экран, кнопка проверить не должна перекрывать»). На телефоне:
   во время задания в шапке урока одна строка (маршрут виден на плитках 3D-панели; «На связи» — только при потере связи);
   подсказка «Выберите ответ…» у карточек-хранителей скрыта до ответа; «Подсказка» у ведущего — в нижнем ряду кнопок
   (moveHintToControls, app-v3.js). Пауза видна всем: полоса над листом (строка с часами на телефоне скрыта). */
@media(max-width:600px){
 body[data-phase=question] .game-top .route-dots{display:none}
 body[data-phase=question] .game-top #reconnect:not(.disconnected){display:none}
 .station-content #sample-status[data-state=idle]{display:none}
 .station-controls .station-hint-moved,.station-controls #hint{min-height:38px}
 body[data-paused="1"] .station-sheet::before{content:'❚❚ Пауза — дождитесь продолжения';display:block;flex:none;margin:-2px 0 2px;padding:6px 10px;border-radius:8px;background:#e8bf79;color:#173b2d;font:700 13px/1.3 system-ui,sans-serif;text-align:center}
 .station-caption .eyebrow{font-size:11px}
 .station-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 .station-summary li,.station-summary .summary-goto{min-width:0}
 .station-summary .summary-goto{flex-wrap:wrap}
}
/* Результат проверки на время крупного плана — подписью внизу 3D-панели (closeupResult, app-v3.js). */
.closeup-result{position:absolute;left:8px;right:8px;bottom:8px;z-index:4;padding:8px 12px;border-radius:10px;background:#0d221be8;color:#f3e6c7;border:1px solid #e0b96b88;font:600 15px/1.3 system-ui,sans-serif;text-align:center;pointer-events:none}
.closeup-result[data-ok=true]{border-color:#7fd3a2;color:#e6f6ea}
body:not([data-closeup]) .closeup-result{display:none}
/* Строка урока над заданием на телефоне — по высоте содержимого (была ячейка сетки 58 px при одной строке текста). */
@media(max-width:600px){body[data-phase=question] .game{grid-template-rows:auto minmax(0,1fr)}}
/* На телефоне подсказка формы — одной фразой (вторая часть — на ПК); у прилипшего блока ответа карточек полоса цвета листа
   не заходит на нижний ряд карточек. */
@media(max-width:600px){.form-tip .tip-more{display:none}.station-content fieldset>.sample-response{clip-path:inset(-4px -100vmax -6px -100vmax)}}
@media(max-width:600px){
 .station-content fieldset>.button.primary,.station-content fieldset>.sample-response{position:static;box-shadow:none;clip-path:none}
 .station-content.has-more{-webkit-mask-image:linear-gradient(#000 calc(100% - 34px),#0000);mask-image:linear-gradient(#000 calc(100% - 34px),#0000)}
}
/* 02.10.2026, тест на телефонах: плитки заданий — зона касания 40 px по высоте и шире на зазор (вид прежний);
   подпись результата крупного плана — над строкой плиток, а не поверх неё; кнопки подсказки — 11 px. */
@media(max-width:600px){
 #station-fragments li[data-goto]{padding:12px 2px;margin:-12px -2px}
 .closeup-result{bottom:40px}
 .station-hint .button{font-size:11px}
}
/* 02.10.2026, тест iPhone: на невысоком телефоне короткое задание помещается целиком — 3D-панель в режиме ответа ниже,
   на iPhone SE (≤600 px высоты) — ещё ниже, заголовок и варианты плотнее. */
@media(max-width:600px) and (max-height:760px){.station-layout[data-pane=answer] .station-world-panel{height:62px}}
@media(max-width:600px) and (max-height:600px){
 .station-layout[data-pane=answer] .station-world-panel{height:46px}
 .station-layout[data-pane=answer] .station-content h1{font-size:18px;line-height:1.2}
 .station-layout[data-pane=answer] .station-content fieldset{gap:4px}
 .station-layout[data-pane=answer] .station-content fieldset label{min-height:40px;padding:6px 8px}
}
