:root{--study-blue:#214b93;--study-soft:#f4f7fb;--study-line:#dae2ed;--study-muted:#5c6a7a}.academy-lesson{font-size:17px;line-height:1.8}.pilot-wrap{width:min(1192px,calc(100% - 72px));margin-inline:auto}.preview-bar{background:#173154;color:#fff;padding:9px 36px;font-size:13px;letter-spacing:.04em;display:flex;justify-content:space-between}.preview-bar span{color:#d1deef}.pilot-header{border-bottom:1px solid var(--study-line)}.pilot-header>.pilot-wrap{height:103px;display:flex;align-items:center;justify-content:space-between;gap:30px}.pilot-header nav{display:flex;gap:28px;font-size:15px}.pilot-header nav a[aria-current]{color:var(--study-blue)}.pilot-crumb{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--study-muted);margin:30px 0}.lesson-heading{padding:20px 0 35px;border-bottom:1px solid var(--study-line)}.lesson-heading .eyebrow{font-size:13px;letter-spacing:.07em}.lesson-heading h1{font-size:clamp(30px,3.6vw,46px);max-width:860px;margin:18px 0 24px;letter-spacing:-.045em;line-height:1.2}.heading-bottom{display:flex;align-items:center;gap:24px;font-size:14px}.heading-bottom a,.source-panel a{color:var(--study-blue);text-decoration:underline;text-underline-offset:4px}.source-badge{background:#f0f5fa;color:#315472;padding:5px 12px;font-size:13px}.lesson-layout{display:grid;grid-template-columns:minmax(0,820px) minmax(185px,1fr);gap:64px;margin:40px 0 70px}.lesson-main,.lesson-prose,.proof-step>div{min-width:0}.lesson-main h2{font-family:var(--sans);font-size:23px;letter-spacing:-.02em;font-weight:500;margin-bottom:22px}.lesson-main h3{font-size:19px}.problem-panel{padding-bottom:8px}.lesson-prose{font-size:18px;line-height:1.9}.lesson-prose p+p{margin-top:1.1em}.task-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px 25px;margin:28px 0 0;padding:22px 0;border-top:1px solid var(--study-line);border-bottom:1px solid var(--study-line);font-size:14px}.task-meta dt{color:var(--study-muted);font-size:12px}.task-meta dd{margin:3px 0 0}.attempt-panel{margin:30px 0;background:var(--study-soft);padding:26px 28px}.attempt-panel h2{margin:0 0 6px}.attempt-panel>p{font-size:15px;color:#536273}.attempt-panel textarea{width:100%;padding:16px;border:1px solid #c7d4e4;background:white;border-radius:3px;font:16px/1.7 var(--sans);color:var(--ink);resize:vertical;min-height:135px;margin:18px 0 6px}.attempt-panel textarea:focus{outline:2px solid #3764a1;outline-offset:2px}.attempt-panel .field-note{font-size:12px;line-height:1.6;color:var(--study-muted)}.lesson-disclosure{border-bottom:1px solid var(--study-line);scroll-margin-top:30px}.lesson-disclosure:first-child{border-top:1px solid var(--study-line)}.lesson-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 2px;font-size:18px;font-weight:500;line-height:1.45}.lesson-disclosure>summary::-webkit-details-marker{display:none}.toggle-mark{color:var(--study-blue);font-size:26px;font-weight:400;line-height:1}.lesson-disclosure[open]>summary .toggle-mark{transform:rotate(45deg)}.lesson-disclosure[open]>summary{color:var(--study-blue)}.disclosure-body{padding:0 0 28px;line-height:1.85}.disclosure-body p+p{margin-top:20px}.solution-main>summary{font-weight:600}.proof-step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;padding:14px 0}.step-marker{font:12px/2 var(--sans);color:#6d8099;padding-top:3px}.math-display{overflow-x:auto;overflow-y:hidden;padding:9px 5px;margin:12px -5px;max-width:calc(100% + 10px);scrollbar-width:thin}.katex-display{margin:.4em 0}.katex{font-size:1.12em}.katex-display>.katex{white-space:nowrap}.answer-box{border-left:3px solid var(--study-blue);background:var(--study-soft);padding:18px 24px}.mistake-box{border-left:3px solid #af8248;padding:10px 22px;background:#faf8f4}.related-panel,.source-panel{margin-top:36px;padding-top:28px;border-top:1px solid var(--study-line)}.source-panel{font-size:14px;color:var(--study-muted)}.source-panel h2{font-size:18px;color:var(--ink)}.muted{color:var(--study-muted);font-size:15px}.related-card{display:block;background:var(--study-soft);padding:22px;margin:12px 0}.related-card strong{font-size:17px;font-weight:500}.related-card p{color:var(--study-muted);font-size:14px;margin-top:5px}.related-card span{display:block;margin-top:10px;font-size:14px;color:var(--study-blue)}.side-sticky{position:sticky;top:30px}.lesson-aside nav{display:grid;gap:9px;margin:20px 0 30px;font-size:14px}.lesson-aside a:hover{color:var(--study-blue)}.side-edition{border-top:1px solid var(--study-line);padding:24px 0;display:grid;gap:9px}.side-edition strong{font-size:32px;font-weight:400;line-height:1.3}.side-edition strong span{font-size:17px;color:var(--study-muted)}.side-edition>a{font-size:14px;color:var(--study-blue)}.candidate-note{border:1px solid #d0deec;padding:18px;font-size:13px;line-height:1.7}.candidate-note>span{font-weight:600;color:var(--study-blue)}.candidate-note p{margin-top:8px}.candidate-note small{display:block;font-size:12px;color:var(--study-muted);margin-top:8px}.lesson-pager{display:flex;justify-content:space-between;gap:20px;padding-top:28px;margin-top:34px;border-top:1px solid var(--study-line);font-size:15px;color:var(--study-blue)}.pilot-footer{border-top:1px solid var(--study-line);padding-block:28px;display:flex;justify-content:space-between;font-size:14px;color:var(--study-muted)}.pilot-index-head{padding:62px 0 42px;max-width:820px}.pilot-index-head h1{font-size:clamp(34px,4.3vw,54px);line-height:1.16;margin:20px 0 24px}.pilot-index-head>p:not(.eyebrow){max-width:660px;color:var(--study-muted)}.index-counts{display:flex;gap:22px;flex-wrap:wrap;margin-top:27px;font-size:14px}.pilot-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin-bottom:64px}.pilot-card{padding:26px 0 32px;border-top:1px solid var(--study-line);display:flex;flex-direction:column;align-items:flex-start}.pilot-card>div{display:flex;align-items:center;gap:15px}.card-number{color:#8294ac;font-size:14px}.pilot-card .eyebrow{font-size:12px}.pilot-card h2{font-size:24px;line-height:1.35;letter-spacing:-.03em;margin:17px 0 10px}.pilot-card p{font-size:13px;color:var(--study-muted)}.card-action{font-size:14px;color:var(--study-blue);margin-top:20px}.pilot-card:hover h2{color:var(--study-blue)}.nested>summary{font-size:14px;padding:17px 0}.nested .disclosure-body{font-size:14px}.lesson-figure{margin:28px 0;border:1px solid var(--study-line);background:#fafcfe;padding:22px 18px 18px}.lesson-figure .diagram-canvas>svg{width:100%;height:auto;display:block;overflow:visible}.lesson-figure figcaption{font-size:13px;color:var(--study-muted);margin-top:16px;line-height:1.6}.diagram-legend{border-top:1px solid var(--study-line);padding-top:14px;margin-top:14px;font-size:14px;line-height:1.8}.lesson-figure svg text{font-family:var(--sans);fill:#243d5a;paint-order:stroke;stroke:#fafcfe;stroke-width:5px;stroke-linejoin:round}.lesson-figure svg .plain{stroke:none}.diagram-legend .math-display{font-size:14px}.source-panel .nested{border:0}
@media(max-width:1000px){.lesson-layout{grid-template-columns:minmax(0,1fr) 185px;gap:32px}.pilot-wrap{width:calc(100% - 48px)}.pilot-header nav{gap:20px}.lesson-prose{font-size:17px}}
@media(max-width:760px){.pilot-wrap{width:calc(100% - 36px)}.preview-bar{padding:8px 18px;font-size:12px}.preview-bar span{font-size:11px}.pilot-header>.pilot-wrap{height:85px;gap:15px}.brand-name{font-size:1.15rem}.brand-name>span{font-size:.6rem}.pilot-header nav{gap:10px;font-size:13px}.pilot-header nav a:not([aria-current]){display:none}.pilot-crumb{font-size:12px;margin-top:22px}.lesson-heading{padding:12px 0 25px}.lesson-heading .eyebrow{font-size:12px}.lesson-heading h1{margin:15px 0 20px}.heading-bottom{flex-wrap:wrap;gap:12px;font-size:13px}.lesson-layout{display:block;margin:28px 0 40px}.lesson-aside{display:none}.task-meta{gap:15px;font-size:13px}.attempt-panel{padding:22px 18px}.lesson-main h2{font-size:21px}.lesson-disclosure>summary{font-size:17px;padding:21px 0}.disclosure-body{font-size:16px}.proof-step{grid-template-columns:22px minmax(0,1fr);gap:8px}.katex{font-size:1.06em}.lesson-figure{padding:16px 8px}.lesson-figure svg{min-width:0}.lesson-figure{overflow-x:auto}.lesson-figure figcaption,.diagram-legend{min-width:0;position:sticky;left:0}.pilot-footer{gap:20px;font-size:12px}.pilot-footer span{max-width:170px}.pilot-grid{display:block}.pilot-index-head{padding:35px 0}.pilot-card h2{font-size:22px}.index-counts{gap:12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.preview-bar,.pilot-header,.lesson-aside,.attempt-panel,.pilot-footer,.lesson-pager{display:none}.pilot-wrap{width:100%}.lesson-layout{display:block}.math-display{overflow:visible}.lesson-figure svg{min-width:0}}

.diagram-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;font-size:12px;color:var(--study-muted)}
.diagram-enlarge,.diagram-close{font:inherit;color:var(--study-blue);border:0;background:transparent;padding:8px 0;cursor:pointer;text-underline-offset:4px}
.diagram-enlarge:hover,.diagram-close:hover{text-decoration:underline}
.diagram-enlarge:focus-visible,.diagram-close:focus-visible,summary:focus-visible{outline:2px solid var(--study-blue);outline-offset:4px}
.diagram-dialog{border:1px solid var(--study-line);border-radius:6px;max-width:min(1120px,96vw);width:1120px;max-height:92vh;padding:20px 24px;margin:auto;color:var(--ink);background:#fff;overflow:auto}
.diagram-dialog::backdrop{background:rgba(19,35,55,.55)}
.diagram-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px}
.diagram-dialog-help{font-size:12px;color:var(--study-muted)}
.diagram-dialog .lesson-figure{margin:16px 0 0}
.diagram-dialog .diagram-canvas{overflow:auto}
.diagram-dialog .diagram-canvas>svg{min-width:720px}
.diagram-dialog .diagram-legend,.diagram-dialog figcaption{position:static}
@media(max-width:760px){.diagram-dialog{padding:14px 12px}.diagram-toolbar{font-size:11px}.diagram-dialog .diagram-canvas>svg{min-width:650px}}

.math-display .katex-display{width:max-content;min-width:100%}

/* Teaching revision 2: the same study surface, with explicit intermediate steps. */
.preview-bar a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-size:12px}
.proof-step h3{font:600 20px/1.45 var(--sans);letter-spacing:-.015em;margin:0 0 14px;color:#223e60}
.proof-step{padding:22px 0}.proof-step+.proof-step{border-top:1px solid #edf0f5}
.proof-step .lesson-figure{margin:22px 0 4px}.proof-step p{margin:0 0 13px}
.evaluation-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-bottom:1px solid var(--study-line);padding:24px 0}
.score-card,.difficulty-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;font-size:14px;line-height:1.65;min-width:0}
.evaluation-grid .eyebrow{font-size:11px;letter-spacing:.07em}.evaluation-grid strong{font-size:16px;font-weight:500}.evaluation-grid strong span{font-size:12px;font-weight:400;color:var(--study-muted)}
.evaluation-grid a{color:var(--study-blue);text-decoration:underline;text-underline-offset:3px}.evaluation-grid small,.difficulty-card p{font-size:13px;color:var(--study-muted);margin:0}
.evaluation-grid .nested{width:100%;border:0}.evaluation-grid .nested summary{font-size:13px;padding:5px 0}.evaluation-grid .nested .disclosure-body{padding-top:12px}
.lesson-table-wrap{overflow-x:auto;margin:20px 0}.lesson-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6}.lesson-table th,.lesson-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--study-line);vertical-align:top}.lesson-table th{background:var(--study-soft);font-weight:500}.lesson-table td p{margin:0}
.source-links{display:grid;gap:12px;margin-bottom:20px}.source-panel p{margin:12px 0}.source-panel{line-height:1.75}
.interactive-disclosure{border:1px solid var(--study-line);padding:0 16px;margin-top:22px;background:#fcfdff}
.review-warning{border-left:3px solid #aa7836;background:#faf5ed;padding:18px 20px;margin-bottom:24px}
@media(max-width:760px){.preview-bar{gap:12px;flex-wrap:wrap}.preview-bar>span{display:none}.evaluation-grid{grid-template-columns:1fr;gap:18px;padding:20px 0}.proof-step{grid-template-columns:19px minmax(0,1fr);gap:7px}.proof-step h3{font-size:18px}.lesson-table{font-size:14px}.lesson-table th,.lesson-table td{padding:9px 8px}.proof-step .lesson-figure{margin-left:-26px;width:calc(100% + 26px)}.interactive-disclosure{padding:0 9px}}
/* Keep accessible MathML inside the horizontally scrollable table container. */
.lesson-table-wrap{position:relative;max-width:100%}
.score-note{font-size:12px;line-height:1.6;margin-top:12px;color:var(--study-muted)}

.math-variant[hidden]{display:none!important}.math-variant{max-width:none}.math-display{position:relative}.math-display .katex-html{display:inline-block}.math-display .katex-display{margin:.35em 0}

/* The v2 figures keep a readable label size on narrow study columns. A local
   diagram viewport scrolls; the page itself never becomes wider. */
.diagram-canvas{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
@media(max-width:760px){.lesson-figure .diagram-canvas>svg{min-width:0}.lesson-figure{overflow:hidden}.diagram-dialog .diagram-canvas:after{content:none}}
.source-version-note{border-left:3px solid #ac793c;background:#fbf7ef;padding:18px 20px;margin:22px 0;font-size:15px;line-height:1.75}.source-version-note strong{display:block;margin-bottom:8px;color:#735021}

/* Keep short mathematical units intact when prose wraps on a phone. */
.math-inline-short{display:inline-block;white-space:nowrap}

.diagram-enlarge,.diagram-close{min-height:44px}
.time-comparison{font:16px/1.5 var(--sans);padding:8px 0;min-width:0}
.time-comparison h4{margin:0 0 18px}.time-comparison p{font-size:16px!important;line-height:1.5!important;margin:6px 0!important}
.time-comparison-track{height:12px;background:#e8edf0;width:100%;margin:12px 0}
.time-comparison-track span{display:block;height:12px;background:#476f96}.time-comparison-row:nth-of-type(2) .time-comparison-track span{background:#a57d39}
.time-comparison-row{margin:20px 0}.time-comparison-label{text-align:right}
.diagram-canvas:has(.time-comparison):after{display:none}

/* Full-scene overview; enlarged outer SVG pans without clipping nested source figures. */
.diagram-dialog .lesson-figure{overflow:visible}.diagram-dialog .diagram-canvas{overflow:auto;max-height:75vh}.diagram-dialog .diagram-canvas>svg{min-width:650px}.diagram-dialog .diagram-canvas svg svg{min-width:0}

/* One local viewport for wide formulas; preserve normal text size. */
.math-display[data-responsive-math] .katex-display{overflow:visible;max-width:none}
.math-display[data-math-overflow=true]::after{content:"↔ Прокрути формулу";display:block;position:sticky;left:0;width:fit-content;font:400 12px/1.6 var(--sans);color:var(--study-muted);padding-top:4px}

/* Owner acceptance correction: these 77 lessons keep the full proof column.
   The shared research flex layout must not shrink a formula-only step to its contents.
   Wide formulas retain native scrolling and an accessible label, without a text callout. */
:is([data-problem-id^="phystech-2025-2026-physics-"][data-problem-id*="-round-"],[data-problem-id^="phystech-2025-2026-9-9-"]) .proof-step>div{flex:1;min-width:0}
:is([data-problem-id^="phystech-2025-2026-physics-"][data-problem-id*="-round-"],[data-problem-id^="phystech-2025-2026-9-9-"]) .math-display[data-math-overflow=true]::after{content:none}

.factory-fruit{border:1px solid #cbd9e3;border-radius:12px;padding:clamp(12px,3vw,24px);margin:22px 0;background:#f5f9fb}.fruit-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fruit-counts div{background:white;padding:10px;border-radius:8px}.fruit-counts dd{margin:0;font-size:26px;color:#32688f}.fruit-counts dt{font-size:15px}.fruit-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.fruit-actions button{padding:10px 12px;border:1px solid #91aebf;background:white;border-radius:7px;color:#263b4b;font:inherit;white-space:normal;text-align:left;max-width:100%;cursor:pointer}.fruit-actions button:disabled{opacity:.45;cursor:default}.factory-fruit [role=status]{font-variant-numeric:tabular-nums}.fruit-static ol{padding-left:22px}.factory-fruit details{margin-top:18px}.factory-fruit summary{cursor:pointer}

/* Sequences can now live inside a proof step; do not inherit its full-bleed margin twice. */
.academy-factory .proof-step .learning-sequence .lesson-figure{margin-left:0;width:100%;max-width:100%;box-sizing:border-box}

.ultra-game{margin:1.1rem 0;padding:1rem;border:1px solid #cad8de;border-radius:14px;background:#f8fbfc;min-width:0;box-sizing:border-box}.ultra-game h4{margin-top:0}.ultra-game p{max-width:70ch}.ultra-board-wrap{max-width:380px}.ultra-board{border-collapse:collapse;table-layout:fixed;width:100%;max-width:380px;background:white;font-variant-numeric:tabular-nums}.ultra-board td{position:relative;width:16.666%;aspect-ratio:1;text-align:center;border:1px solid #9aafb9;padding:.55em .15em;font-size:clamp(16px,4.9vw,22px);color:#17323e}.ultra-board tr:nth-child(2n) td{border-bottom:3px solid #48616c}.ultra-board tr:first-child td{border-top:3px solid #48616c}.ultra-board td:nth-child(2n){border-right:3px solid #48616c}.ultra-board td:first-child{border-left:3px solid #48616c}.ultra-board .visited{background:#d7ede5}.ultra-board .current{background:#f8dfa3;font-weight:700}.ultra-board .next{outline:3px solid #26634d;outline-offset:-4px;font-weight:700}.ultra-dot{position:absolute;font-size:8px;bottom:1px;left:50%;transform:translateX(-50%)}.ultra-legend{font-size:.9rem;color:#536b77}.ultra-actions,.ultra-card-choices{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}.ultra-game button,.ultra-game select{font:inherit;min-height:44px;max-width:100%;border:1px solid #839aa6;border-radius:8px;background:white;color:#173e4d;padding:.55rem .7rem;box-sizing:border-box}.ultra-game button:not(:disabled){cursor:pointer}.ultra-game button:disabled{opacity:.5;cursor:default}.ultra-game button:focus-visible,.ultra-game select:focus-visible{outline:3px solid #257ac3;outline-offset:2px}.ultra-game .ultra-card{min-width:56px;min-height:72px;font-size:1.5rem;font-weight:700}.ultra-deal-label{display:grid;gap:.35rem;font-weight:600}.ultra-game select{width:100%;font-weight:400}.ultra-card-feedback{min-height:1.4em;color:#254e3e}.ultra-card-state{border-top:1px solid #d5e0e5;margin-top:.8rem;padding-top:.2rem}.ultra-game [hidden]{display:none!important}@media(max-width:390px){.ultra-game{padding:.65rem}.ultra-actions button{flex:1 1 auto}.ultra-board td{padding:.45em .1em}}

.learning-sequence{margin:1.8rem 0;padding:1.25rem 0;border-top:1px solid #ced8e3;border-bottom:1px solid #ced8e3;min-width:0}.learning-sequence h3{margin-top:0}.learning-sequence-choices,.learning-sequence-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin:.8rem 0}.learning-sequence button{font:inherit;font-size:.9rem;line-height:1.45;max-width:100%;text-align:left;background:#f7f9fc;border:1px solid #b8c9d8;border-radius:5px;color:#233d56;padding:.55rem .8rem;cursor:pointer}.learning-sequence button[aria-pressed=true]{background:#234f78;color:white;border-color:#234f78}.learning-sequence button:disabled{opacity:.45;cursor:default}.learning-sequence button:focus-visible{outline:3px solid #ad843f;outline-offset:3px}.learning-sequence-status{font-size:.88rem;color:#596b7d}.learning-sequence-states>section{min-width:0}.learning-sequence-states>section[hidden]{display:none}.learning-sequence .lesson-figure{margin:1rem 0}.learning-sequence-states h4{font-size:1.08rem;line-height:1.5}.learning-sequence .katex{font-size:1em}@media(max-width:420px){.learning-sequence-choices{display:grid;grid-template-columns:minmax(0,1fr)}.learning-sequence-actions button{flex:1 1 42%}}

.spatial-lesson [data-spatial-state][aria-pressed=true]{background:#234f78;color:white;border-color:#234f78}.spatial-lesson .q3d-static-reference{overflow:auto}.spatial-lesson .q3d-static-reference svg{width:100%;min-width:0;height:auto;display:block}

/* A sequence inside a proof step owns its width; do not inherit the direct figure outdent. */
.proof-step .learning-sequence .lesson-figure{margin-left:0;width:100%;max-width:100%;box-sizing:border-box}

.archive-condition .math-display{font-size:17px}.academy-lesson .lesson-heading{margin-top:20px}
