/* Базовые стили (исходная вёрстка ПК) */
:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{min-width:320px}body{margin:0;background:#0a102c;color:#f8f8ff}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,input:focus-visible{outline:3px solid #fff2b5;outline-offset:4px}
.screen{position:relative;min-height:100svh;overflow:hidden;background-color:#0b1534;background-image:linear-gradient(100deg,rgba(7,10,32,.79),rgba(7,10,32,.52) 58%,rgba(4,8,27,.83)),var(--scene-url);background-size:cover;background-position:center}.ambient{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 19% 2%,rgba(61,95,222,.35),transparent 45%),radial-gradient(ellipse at 80% 95%,rgba(109,51,194,.26),transparent 45%)}
.eyebrow{font-size:.82rem;font-weight:800;letter-spacing:.19em;color:#ffe7a5}.intro-panel,.finish-panel{position:relative;z-index:1;width:min(760px,calc(100% - 36px));margin:clamp(22px,7vh,90px) auto 40px;padding:clamp(26px,4vw,55px);border:1px solid rgba(255,218,129,.78);border-radius:24px;background:linear-gradient(145deg,rgba(8,16,47,.93),rgba(7,16,46,.84));box-shadow:0 20px 80px rgba(0,0,0,.48),inset 0 0 25px rgba(74,103,221,.20);backdrop-filter:blur(8px)}.intro-panel h1,.finish-panel h1{font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.04;letter-spacing:-.03em;margin:.25em 0}.intro-panel p,.finish-panel p{font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.45;color:#e0e7fa}.intro-panel .rule{color:#ffe5aa;font-weight:700}.crest,.brand-mark{display:grid;place-items:center;color:#ffe1a1;background:radial-gradient(circle,#333e87,#0d173d 72%);border:2px solid #eac677;box-shadow:0 0 23px rgba(243,203,119,.35),inset 0 0 16px #5971ec}.crest{width:76px;height:76px;border-radius:50%;margin-top:26px;font-size:2.5rem}.primary,.secondary{border:1px solid #ffd681;border-radius:12px;padding:15px 22px;color:#111c42;background:linear-gradient(120deg,#ffe5a7,#e1ae52);font-weight:800;box-shadow:0 0 17px rgba(255,196,94,.23)}.primary:hover:not(:disabled){filter:brightness(1.12)}.secondary{background:rgba(26,43,96,.9);color:#f5f7ff;border-color:#8b9cdb}.intro-panel small,.finish-panel small{display:block;margin-top:16px;line-height:1.4;color:#b8c7ed}
.game-wrap{position:relative;z-index:1;max-width:1610px;margin:auto;padding:15px 22px 12px}.game-header{display:flex;align-items:center;gap:14px;min-height:64px;margin-bottom:12px}.brand-mark{width:52px;height:52px;border-radius:50%;font-size:1.7rem;flex:none}.game-header .eyebrow{display:block;font-size:.70rem}.game-header strong{display:block;font-size:1.12rem;margin-top:3px}.header-score{margin-left:auto;padding:9px 14px;border:1px solid #8b9ed9;border-radius:20px;background:rgba(7,18,51,.75);font-weight:bold;white-space:nowrap}.top-grid{display:grid;grid-template-columns:minmax(0,1fr) 322px;gap:18px;height:344px}.media-panel,.ladder{border:1px solid rgba(158,181,255,.75);border-radius:16px;background:linear-gradient(145deg,rgba(7,15,46,.92),rgba(18,32,83,.86));box-shadow:0 0 20px rgba(33,89,222,.35),inset 0 0 14px rgba(89,114,222,.13);overflow:hidden}.media-panel{display:flex;flex-direction:column}.media-heading{height:42px;flex:none;padding:10px 18px;display:flex;justify-content:space-between;gap:12px;background:#0b1941;color:#dce5ff;font-size:.85rem;font-weight:700;letter-spacing:.05em}.stage-count{color:#ffda91}.email-window{padding:10px 20px 14px;overflow:auto;min-height:0;flex:1;color:#e8efff}.email-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #52669b;padding-bottom:8px;margin-bottom:10px;font-size:.79rem;color:#bdcbee}.email-dots{font-size:.6rem;letter-spacing:.5em;color:#8fa8e9}.email-header{display:flex;gap:12px;line-height:1.3;margin:4px 0;font-size:.95rem;overflow-wrap:anywhere}.email-header span{color:#aebee6;width:45px;flex:none}.email-header strong{font-weight:700}.email-body{font-size:1.07rem;line-height:1.4;margin:10px 0}.external-label{background:rgba(148,28,51,.28);color:#ffb7b7;border-left:3px solid #ee7181;padding:6px 10px;font-size:.8rem;font-weight:bold}.mail-item{display:inline-flex;align-items:center;gap:8px;background:#293e70;border:1px solid #6a84bc;padding:8px 12px;margin-top:2px;border-radius:8px;font-size:.88rem;font-weight:bold;max-width:100%;overflow-wrap:anywhere}.mail-item small{font-weight:normal;font-size:.74rem;color:#bac8ea}.link-item{color:#c6dcff}
.reference-image{position:relative;min-height:0;flex:1;display:grid;place-items:center;width:100%;padding:6px;background:#e2e7f0;border:0;overflow:hidden}.reference-image img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.reference-image.external img{object-fit:cover;object-position:top;height:auto;align-self:start}.reference-image.report img{object-fit:contain}.zoom-tag{position:absolute;right:13px;bottom:10px;background:rgba(6,17,43,.9);border:1px solid #c5d4ff;padding:6px 9px;border-radius:7px;color:#fff;font-size:.75rem}.site-window{flex:1;min-height:0;background:#edf1f7;color:#18243f;margin:7px 12px 12px;border-radius:10px;overflow:hidden}.browser-bar{height:42px;background:#d4dbe8;display:flex;gap:15px;align-items:center;padding:0 14px;font-size:.9rem}.address-line{background:white;border:1px solid #a7b5cd;border-radius:15px;padding:5px 15px;flex:1;color:#994c49;font-weight:bold;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-preview{text-align:center;padding:12px 18px}.site-preview h2{font-size:1.3rem;margin:7px 0}.site-preview p{font-size:.9rem;margin:5px 0 9px}.site-warning{color:#b9504b;font-weight:bold;font-size:.68rem;letter-spacing:.08em}.fake-input{display:inline-block;width:28%;min-width:115px;background:#fff;border:1px solid #b9c6db;color:#697b94;border-radius:6px;margin:3px;padding:6px 10px;text-align:left;font-size:.77rem}.fake-submit{display:inline-block;background:#5280bc;color:white;border-radius:6px;padding:7px 15px;font-size:.77rem}
.ladder{padding:13px 16px 8px}.ladder-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.ladder-title{font-size:.8rem;letter-spacing:.2em;font-weight:bold;color:#f9d98f}.lifeline{border:1px solid #e0d5fb;border-radius:22px;background:radial-gradient(circle,#344aa5,#0b164a);color:white;font-weight:900;padding:5px 10px;box-shadow:0 0 9px #778ef0;font-size:.85rem}.lifeline:disabled{opacity:.38}.ladder ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.ladder li{display:flex;align-items:center;gap:14px;min-height:25px;padding:2px 13px;border:1px solid transparent;border-radius:20px;color:#dfe6ff;font-size:.88rem}.ladder li span{width:21px;color:#d8c27d;font-weight:bold}.ladder li.current{color:#fff3ca;background:linear-gradient(90deg,#936024,#4b2b22);border-color:#f3c360;box-shadow:0 0 13px rgba(252,189,73,.55)}.ladder li.passed{color:#a9d6b8}.ladder-note{font-size:.79rem;color:#c5d1ef;margin:8px 2px 0}
.quiz{margin-top:13px}.question-bar,.answer{position:relative;background:linear-gradient(180deg,#3b55a9 0%,#162e7c 45%,#0b1648 100%);border:2px solid #afbbec;box-shadow:inset 0 2px 15px rgba(194,208,255,.25),0 0 0 2px rgba(9,16,46,.7),0 0 12px rgba(128,145,255,.36);clip-path:polygon(0 50%,3% 0,97% 0,100% 50%,97% 100%,3% 100%)}.question-bar{display:flex;align-items:center;justify-content:center;min-height:75px;margin:0 0 13px;padding:12px 5%;font-size:clamp(1.2rem,2.15vw,2rem);line-height:1.13;text-align:center;text-shadow:0 2px 3px #050b29}.answers{display:grid;grid-template-columns:1fr 1fr;gap:12px 15px}.answer{display:flex;align-items:center;gap:12px;min-height:70px;width:100%;padding:10px 6%;text-align:left;color:#fff;font-size:clamp(.92rem,1.2vw,1.16rem);line-height:1.2;font-weight:700;transition:filter .15s,transform .15s}.answer:hover:not(:disabled){filter:brightness(1.2);transform:translateY(-1px)}.answer-letter{color:#ffd16d;font-size:1.25em;font-weight:900;flex:none}.answer.removed{opacity:.24}.answer.correct{background:linear-gradient(140deg,#226f4c,#164d3b);border-color:#adffcb;box-shadow:0 0 24px #4cfc9c,inset 0 0 17px #60d991}.answer.incorrect{background:linear-gradient(140deg,#9d384d,#541f40);border-color:#ffc1c9;box-shadow:0 0 23px #ff6486,inset 0 0 15px #e76d84}.answer:disabled{color:#fff}
.action-row,.feedback{margin-top:14px;min-height:73px;display:flex;align-items:center;justify-content:space-between;gap:16px}.quiet{font-size:.86rem;color:#c6d2f2}.feedback{padding:11px 14px;border-radius:13px;background:rgba(10,24,55,.94);border:1px solid #cfb572;font-size:.97rem;line-height:1.32}.feedback.positive{border-color:#72dca3}.feedback.negative{border-color:#ec8b9d}.feedback strong{color:#ffe29e}.feedback small{display:block;color:#aebbd9;font-size:.74rem;margin-top:4px}.next{flex:none;padding:12px 16px;white-space:nowrap}.game-footer{display:flex;justify-content:space-between;gap:10px;font-size:.72rem;color:#b4c2e3;margin-top:8px}.text-button{border:0;background:transparent;color:#e9d09e;text-decoration:underline;padding:0}
.finish-screen{display:flex;align-items:center;justify-content:flex-start}.finish-panel{margin:25px clamp(18px,5vw,90px);max-width:820px}.finish-panel h1{font-size:clamp(2.2rem,5vw,4.2rem)}.result-score{font-size:5rem;font-weight:900;color:#ffe5aa;text-shadow:0 0 20px rgba(255,197,86,.45)}.result-score span{font-size:1.9rem;color:#fff}.finish-actions{display:flex;flex-wrap:wrap;gap:12px}.lose .finish-panel{border-color:#e7a9bc}.lose .result-score{color:#ffd1d1}
dialog{border:2px solid #c7d7ff;border-radius:12px;padding:14px;background:#0b1437;color:white;max-width:min(95vw,1300px);max-height:93vh;box-shadow:0 20px 80px #000}dialog::backdrop{background:rgba(0,0,0,.84)}dialog img{display:block;max-width:100%;max-height:calc(88vh - 35px);object-fit:contain}.dialog-close{position:absolute;right:18px;top:17px;z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid white;background:#111d4b;color:#fff;font-size:1.5rem;line-height:1}
dialog[data-crop="external"]{width:min(95vw,1160px);height:370px;overflow:hidden}dialog[data-crop="external"] img{width:100%;height:340px;max-height:340px;object-fit:cover;object-position:top}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.sound-toggle{border:1px solid #8599d4;border-radius:10px;padding:9px 12px;background:rgba(12,25,67,.75);color:#dce8ff;font-size:.86rem;font-weight:700;margin-left:10px}
.sound-toggle.compact{font-size:1.15rem;padding:7px 10px;margin-left:0}
.ladder{padding:10px 12px}.ladder-top{margin-bottom:5px}.ladder-title{font-size:.76rem}
.lifeline-bar{display:flex;gap:5px;justify-content:space-between;margin:6px 0 8px}.lifeline{flex:1;min-width:0;min-height:35px;padding:5px 4px;font-size:.88rem}
.ladder ol{gap:1px}.ladder li{min-height:22px;padding:1px 9px;font-size:.77rem;gap:8px}.ladder li span{width:17px}.ladder-note{margin:7px 1px 0;font-size:.75rem}
.feedback{font-size:.91rem}.feedback small{display:none}
.finish-panel .won-points{font-size:1.6rem;color:#ffe09b;font-weight:bold;margin:0}
.friend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 3px}.friend-card{display:flex;align-items:center;flex-direction:column;gap:6px;padding:12px;border:1px solid #9baee6;border-radius:14px;color:#fff;background:#19295f}.friend-card:hover{border-color:#ffd786;background:#283c7e}.friend-card img{width:112px;height:112px;object-fit:cover;border-radius:50%;border:2px solid #f1d394}.friend-card span{font-size:.82rem;color:#c8d5f4}.friend-card strong{font-size:1.05rem}
.friend-advice{display:flex;gap:18px;align-items:center;margin:15px 0 20px}.friend-advice img{width:142px;height:142px;object-fit:cover;border-radius:50%;border:3px solid #ffd786}.friend-advice span{font-size:.82rem;color:#ffd786;letter-spacing:.1em;font-weight:bold}.friend-advice h2{font-size:1.35rem;margin:8px 0}.friend-advice p{font-size:1.24rem;margin:5px 0 10px}.friend-advice small{color:#c7d3f0}
#helpDialog{width:min(94vw,650px);padding:25px 28px 28px}#helpDialog h2{font-size:1.6rem;margin:0 35px 10px 0}#helpDialog p{color:#e3eaff;line-height:1.4}#helpDialog .primary{margin-top:14px}
.votes{display:flex;flex-direction:column;gap:13px;margin:22px 0}.vote-row{display:grid;grid-template-columns:30px 1fr 49px;gap:12px;align-items:center;font-weight:bold}.vote-row>div{height:23px;background:#263660;border-radius:20px;overflow:hidden;border:1px solid #849bd6}.vote-row i{display:block;height:100%;background:linear-gradient(90deg,#5579ed,#edc46e);border-radius:20px}

/* A soft location glimpse occupies one side of the question screen. */
.question-screen{background-image:linear-gradient(135deg,#080f2b,#172b65 58%,#101a45)}
.question-screen::before{content:"";position:absolute;inset:0 0 0 auto;width:clamp(330px,38vw,650px);background-image:linear-gradient(90deg,#101d48 0%,rgba(9,21,53,.18) 22%,rgba(8,17,42,0) 100%),var(--scene-url);background-size:cover;background-position:center;opacity:.94;pointer-events:none}
.question-screen .ambient{background:radial-gradient(ellipse at 30% 0,rgba(70,107,209,.25),transparent 50%)}
.intro-panel .intro-status{font-size:.94rem;color:#ffdf98;margin:0 0 14px}
.question-screen .game-wrap{width:min(1120px,calc(100% - clamp(300px,32vw,540px)));max-width:none;margin:0 auto 0 clamp(12px,2vw,34px);padding:15px 0 12px}
.top-grid{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:14px;height:360px}
.lifeline-bar{margin-top:6px}
/* Fifteen-step ladder and milestone transitions. */
.top-grid{height:420px}.ladder li{min-height:20px;font-size:.74rem}.ladder li.milestone:not(.current){color:#f3cf86;border-color:rgba(230,195,120,.38)}
.checkpoint-screen{display:grid;place-items:center;background-image:linear-gradient(90deg,rgba(8,18,39,.9) 0%,rgba(8,18,39,.7) 65%,rgba(8,18,39,.3)),var(--scene-url)}
.checkpoint-panel{position:relative;width:min(850px,calc(100% - 36px));padding:clamp(26px,4vw,56px);margin:25px;border:3px solid #d9b667;border-radius:30px;text-align:center;background:linear-gradient(140deg,#142538,#0b192d);box-shadow:0 0 80px rgba(228,192,115,.28),inset 0 0 25px rgba(228,192,115,.12);animation:checkpoint-in .65s ease-out both}
.checkpoint-panel h1{font-size:clamp(1.7rem,4vw,3.1rem);margin:6px 0 12px;color:#fff0c8}.checkpoint-amount{font-size:clamp(3.5rem,8vw,6.5rem);line-height:1;color:#f1c976;font-weight:900;text-shadow:0 0 25px rgba(241,201,118,.45)}.checkpoint-unit{letter-spacing:.24em;color:#f2dbaa;margin-top:10px}.checkpoint-panel p{font-size:1.3rem;line-height:1.4;max-width:670px;margin:25px auto;color:#fff}.checkpoint-panel .primary{min-width:260px}.checkpoint-spark{font-size:3rem;color:#eecf89;animation:checkpoint-glow 1.2s ease-in-out infinite alternate}
@keyframes checkpoint-in{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes checkpoint-glow{from{filter:drop-shadow(0 0 2px #e8c477)}to{filter:drop-shadow(0 0 20px #ffe6a0)}}
.audience-stage{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:14px 0 12px;padding:12px;border-radius:15px;background:radial-gradient(ellipse at bottom,#36468e,#101b45);perspective:200px}.audience-stage span{font-size:1.55rem;text-align:center;color:#d1b78d;filter:drop-shadow(0 10px 0 #60708b);animation:vote-person .6s ease-in-out both}.audience-stage span:nth-child(3n){animation-delay:.4s}.audience-stage span:nth-child(3n + 1){animation-delay:.8s}@keyframes vote-person{from{transform:translateY(12px);color:#7385ae}to{transform:translateY(-4px);color:#ffd98c}}
.vote-row i{animation:vote-grow 1.8s ease-out .9s forwards;transform-origin:left;--target:0}.vote-row i{transform:scaleX(0)}@keyframes vote-grow{to{transform:scaleX(1)}}
.caller-art{position:relative;flex:none}.caller-art .receiver{position:absolute;right:-12px;bottom:0;font-size:3.2rem;color:#f1d394;text-shadow:0 0 14px #ffd786;transform-origin:65% 75%;animation:lift-receiver 1.3s ease-in-out infinite alternate}.ib-call .caller-art img{box-shadow:0 0 20px 8px #f5db9a;animation:checkpoint-glow 1.2s ease-in-out infinite alternate}.ib-call .receiver{display:none}@keyframes lift-receiver{from{transform:rotate(-22deg) translateY(12px)}to{transform:rotate(12deg) translateY(-16px)}}
@media(prefers-reduced-motion:reduce){.checkpoint-panel,.checkpoint-spark,.audience-stage span,.caller-art .receiver{animation:none!important}.vote-row i{transform:scaleX(1)}}
.audience-stage{display:block;padding:0;overflow:hidden;height:170px}.audience-stage img{width:100%;height:100%;object-fit:cover;object-position:center 42%;animation:audience-arrive 2.2s ease-out both}@keyframes audience-arrive{from{transform:scale(1.08);filter:brightness(.5)}to{transform:scale(1);filter:brightness(1)}}
.friend-advice .caller-art img{width:190px;height:190px;border-radius:20px;animation:call-arrive .9s ease-out both}@keyframes call-arrive{from{transform:translateY(12px) scale(.95);opacity:.5}to{transform:none;opacity:1}}
.friend-advice.ib-call .caller-art img{width:142px;height:142px;border-radius:50%}
@media(prefers-reduced-motion:reduce){.audience-stage img,.friend-advice .caller-art img{animation:none}}
.answer{overflow-wrap:break-word}

/* ==========================================================================
   АДАПТИВНАЯ ВЁРСТКА
   Режимы (по размеру окна, а не по типу устройства):
   1) ПК с высоким экраном (≥1101×890) — исходная композиция выше, без изменений.
   2) Горизонтальный экран с ограниченной высотой или шириной (ноутбуки, планшеты):
      шкала выигрышей справа во всю высоту, письмо + вопрос + ответы слева, всё в один экран.
   3) Горизонтальный телефон (высота ≤ 500): три колонки — письмо | вопрос и ответы | шкала.
   4) Вертикальный экран (телефоны, планшеты): одна колонка, компактная полоса подсказок.
   ========================================================================== */

button{touch-action:manipulation}
.rotate-prompt{display:none!important}

/* ---------- Фон: на узких и вертикальных экранах картинка локации — мягкий фон на весь экран ---------- */
@media (max-width:1100px), (max-aspect-ratio:1/1){
 .question-screen::before{position:fixed;inset:0;width:auto;height:auto;opacity:1;
  background-image:linear-gradient(180deg,rgba(8,15,43,.74),rgba(8,15,43,.9)),var(--scene-url);
  background-size:cover;background-position:center}
 .question-screen .game-wrap{width:min(100% - 24px,1100px);margin:0 auto}
}

/* ---------- Режим 2: горизонтальный экран, ограниченная высота или ширина ---------- */
@media (min-aspect-ratio:1/1) and (max-height:889px), (min-aspect-ratio:1/1) and (max-width:1100px){
 .question-screen .game-wrap{display:grid;
  grid-template-columns:minmax(0,1fr) clamp(196px,21vw,265px);
  grid-template-rows:auto minmax(140px,1fr) auto auto auto;
  grid-template-areas:"header header" "media ladder" "quiz ladder" "feedback ladder" "footer footer";
  column-gap:14px;min-height:100vh;min-height:100svh;padding:10px 0 8px}
 .top-grid{display:contents}
 .game-header{grid-area:header;min-height:48px;margin-bottom:8px}
 .brand-mark{width:44px;height:44px;font-size:1.4rem}
 /* панель письма и шкала не задают высоту сетки, а занимают оставшееся место */
 .media-panel{grid-area:media;height:auto;min-height:0;contain:size}
 .reference-image{place-items:start center}
 .ladder{grid-area:ladder;height:auto;min-height:0;display:flex;flex-direction:column;contain:size;overflow:hidden}
 .ladder ol{flex:1;flex-direction:column;justify-content:center;gap:2px;min-height:0;overflow:visible}
 .ladder li{flex:0 1 27px;min-height:0;overflow:hidden;font-size:.78rem}
 .quiz{grid-area:quiz;margin-top:10px}
 .question-bar{min-height:58px;margin-bottom:9px;padding:9px 5%;font-size:clamp(1.05rem,.55rem + 1.1vw,1.6rem)}
 .answers{grid-template-columns:1fr 1fr;gap:8px 12px}
 .answer{min-height:52px;padding:8px 6%;font-size:clamp(.86rem,.55rem + .6vw,1.08rem)}
 .action-row,.feedback{grid-area:feedback;margin-top:9px;min-height:58px}
 .feedback{padding:9px 12px}
 .game-footer{grid-area:footer;margin-top:4px}
}

/* ---------- Режим 3: горизонтальный телефон ---------- */
@media (min-aspect-ratio:1/1) and (max-height:500px){
 .question-screen .game-wrap{width:calc(100% - 16px);
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) clamp(112px,17vw,165px);
  grid-template-rows:auto minmax(0,1fr) auto auto;
  grid-template-areas:"header header header" "media quiz ladder" "feedback quiz ladder" "feedback quiz footer";
  column-gap:8px;padding:6px 0}
 .game-header{min-height:32px;margin-bottom:6px;gap:8px}
 .brand-mark{width:30px;height:30px;font-size:1rem}
 .game-header .eyebrow{font-size:.6rem;letter-spacing:.14em}
 .header-score{padding:4px 10px;font-size:.76rem}
 .sound-toggle.compact{font-size:.95rem;padding:3px 8px}
 .media-heading{height:28px;padding:6px 10px;font-size:.7rem}
 .email-window{padding:6px 10px 8px}
 .email-toolbar{font-size:.66rem;padding-bottom:4px;margin-bottom:5px}
 .email-header{font-size:.74rem;gap:8px;margin:2px 0}
 .email-header span{width:36px}
 .external-label{font-size:.64rem;padding:4px 8px}
 .email-body{font-size:.82rem;margin:6px 0}
 .mail-item{font-size:.7rem;padding:5px 9px}
 .reference-image{padding:3px}
 .site-window{margin:5px 8px 8px}
 .browser-bar{height:30px;font-size:.72rem;gap:8px}
 .address-line{padding:3px 10px}
 .site-preview{padding:6px 10px}
 .site-preview h2{font-size:.95rem;margin:4px 0}
 .site-preview p{font-size:.74rem;margin:3px 0 6px}
 .fake-input{width:44%;min-width:0;padding:4px 8px;font-size:.68rem}
 .fake-submit{padding:5px 12px;font-size:.68rem}
 .quiz{margin-top:0;align-self:start}
 .question-bar{min-height:44px;margin-bottom:6px;padding:6px 7%;font-size:clamp(.82rem,.45rem + 1.5vw,1.05rem);line-height:1.15}
 .answers{grid-template-columns:1fr;gap:5px}
 .answer{min-height:38px;padding:5px 7%;font-size:clamp(.74rem,.45rem + 1vw,.9rem);line-height:1.15;gap:8px}
 .action-row{min-height:0;margin:0}
 .feedback{flex-direction:column;align-items:stretch;gap:6px;min-height:0;margin-top:6px;padding:7px 9px;font-size:.74rem;line-height:1.25}
 .next{padding:8px 12px;font-size:.8rem}
 .ladder{padding:6px}
 .lifeline-bar{margin:0 0 4px;gap:4px}
 .lifeline{min-height:28px;padding:2px;font-size:.72rem}
 .ladder ol{gap:1px}
 .ladder li{flex-basis:19px;padding:0 6px;gap:5px;font-size:.64rem}
 .ladder li span{width:14px}
 .ladder-note{display:none}
 .game-footer{margin-top:4px;justify-content:flex-end;font-size:.68rem}
}

/* ---------- Режим 4: вертикальный экран ---------- */
@media (max-aspect-ratio:1/1){
 .question-screen .game-wrap{width:min(100% - 20px,760px);padding:8px 0 18px}
 .game-header{min-height:44px;margin-bottom:8px;gap:10px}
 .brand-mark{width:38px;height:38px;font-size:1.2rem}
 .game-header .eyebrow{font-size:.62rem;letter-spacing:.12em;line-height:1.35}
 .header-score{padding:6px 11px;font-size:.8rem}
 .sound-toggle.compact{font-size:1rem;padding:5px 9px}
 .top-grid{display:flex;flex-direction:column;height:auto;gap:8px}
 .media-panel{height:auto;flex:none}
 .media-heading{height:auto;padding:8px 12px;font-size:.76rem}
 .email-window{flex:none;overflow:visible;padding:8px 12px 12px}
 .email-header{font-size:.84rem}
 .email-body{font-size:.95rem}
 .reference-image{flex:none;display:block;padding:4px}
 .reference-image img,.reference-image.external img{width:100%;height:auto;max-height:55svh;object-fit:contain;object-position:top}
 .site-window{flex:none}
 .ladder{display:flex;align-items:center;gap:8px;height:auto;padding:7px 8px}
 .lifeline-bar{flex:1;margin:0;gap:6px}
 .lifeline{min-height:40px;font-size:.92rem}
 .ladder ol{display:flex;flex:none;flex-direction:row;overflow:visible;padding:0}
 .ladder li{display:none}
 .ladder li.current{display:flex;flex:none;min-height:40px;padding:0 12px;gap:7px;font-size:.88rem;white-space:nowrap}
 .ladder li.current span{width:auto}
 .ladder li.current span::before{content:"Вопрос "}
 .ladder li.current strong::before{content:"за ";font-weight:400}
 .ladder-note{display:none}
 .quiz{margin-top:10px}
 .question-bar{min-height:62px;margin-bottom:9px;padding:10px 7%;font-size:clamp(1.02rem,.6rem + 2.2vw,1.45rem);line-height:1.2}
 .answers{grid-template-columns:1fr;gap:8px}
 .answer{min-height:52px;padding:8px 6%;font-size:clamp(.9rem,.68rem + 1vw,1.06rem)}
 .action-row{min-height:0;margin-top:0}
 .feedback{flex-direction:column;align-items:stretch;gap:10px;margin-top:10px;font-size:.92rem}
 .next{width:100%;padding:14px 16px}
 .game-footer{justify-content:center;margin-top:14px}
 /* стартовый, промежуточный и итоговый экраны */
 .intro-panel,.finish-panel{width:calc(100% - 24px);margin:16px auto;padding:clamp(20px,5vw,40px)}
 .finish-screen{justify-content:center}
 .intro-panel h1,.finish-panel h1{font-size:clamp(1.9rem,8vw,3.4rem)}
 .eyebrow{letter-spacing:.12em}
 .intro-panel .primary,.finish-actions .primary,.finish-actions .secondary,.checkpoint-panel .primary{width:100%;min-width:0}
 .intro-panel .sound-toggle,.finish-panel .sound-toggle{margin:12px 0 0}
 .result-score{font-size:clamp(3rem,15vw,5rem)}
 .checkpoint-panel{width:calc(100% - 24px);margin:16px auto;padding:clamp(22px,6vw,48px) clamp(16px,5vw,40px)}
 .checkpoint-panel p{font-size:clamp(1rem,4vw,1.3rem);margin:18px auto}
}
@media (max-aspect-ratio:1/1) and (max-width:479px){
 .game-header .eyebrow{display:none}
}
@media (max-aspect-ratio:1/1) and (min-width:560px){
 .answers{grid-template-columns:1fr 1fr}
}

/* ---------- Невысокие экраны: стартовый, промежуточный и итоговый ---------- */
@media (max-height:600px){
 .intro-panel,.finish-panel,.checkpoint-panel{margin:12px auto;padding:16px 22px}
 .intro-panel h1,.finish-panel h1{font-size:clamp(1.6rem,4.2vw,2.6rem)}
 .intro-panel p,.finish-panel p{font-size:.95rem;margin:.5em 0}
 .crest{display:none}
 .result-score{font-size:3rem}
 .checkpoint-spark{font-size:1.8rem}
 .checkpoint-panel h1{font-size:1.6rem;margin:2px 0 6px}
 .checkpoint-amount{font-size:2.8rem}
 .checkpoint-panel p{font-size:1rem;margin:10px auto}
 .primary,.secondary{padding:11px 18px}
}

/* ---------- Окна подсказок и увеличенной картинки ---------- */
@media (max-width:700px), (max-height:600px){
 #helpDialog{width:min(96vw,650px);padding:18px 16px 18px}
 #helpDialog h2{font-size:1.3rem}
 .friend-grid{gap:8px;margin-top:12px}
 .friend-card{padding:10px 6px}
 .friend-card img{width:clamp(56px,18vw,96px);height:clamp(56px,18vw,96px)}
 .friend-card strong{font-size:.85rem;text-align:center}
 .friend-advice .caller-art img{width:120px;height:120px}
 .friend-advice.ib-call .caller-art img{width:100px;height:100px}
 .friend-advice h2{font-size:1.1rem}
 .friend-advice p{font-size:1.05rem}
 .audience-stage{height:120px}
 .votes{gap:9px;margin:14px 0}
 dialog{padding:8px;max-width:96vw}
 dialog img{max-height:calc(92svh - 24px)}
 dialog[data-crop="external"]{width:96vw;height:fit-content}
 dialog[data-crop="external"] img{height:auto;max-height:calc(92svh - 24px);object-fit:contain}
 .dialog-close{right:10px;top:10px}
}
@media (max-width:480px){
 .friend-advice{flex-direction:column;text-align:center;gap:10px}
 #helpDialog .primary{width:100%}
}
@media (max-height:500px){
 .friend-advice{margin:8px 0 10px}
 .friend-advice .caller-art img,.friend-advice.ib-call .caller-art img{width:86px;height:86px}
 .audience-stage{height:70px;margin:8px 0}
 .votes{gap:5px;margin:8px 0}
 .vote-row>div{height:16px}
 #helpDialog p{margin:6px 0}
 #helpDialog .primary{margin-top:6px}
}

/* Самые узкие телефоны: подсказки в один ряд, текущая сумма — строкой ниже */
@media (max-aspect-ratio:1/1) and (max-width:399px){
 .ladder{flex-wrap:wrap;justify-content:center;gap:6px}
 .lifeline-bar{flex:1 1 100%}
 .ladder ol{flex:1 1 100%;justify-content:center}
 .ladder li.current{flex:1 1 auto;justify-content:center;min-height:34px}
}

/* Ноутбуки: стартовая и итоговая панели без лишней прокрутки */
@media (max-height:760px){
 .intro-panel{margin-top:clamp(12px,3vh,24px);margin-bottom:16px}
}

/* Увеличенная картинка на вертикальном телефоне: крупнее экрана, листается пальцем */
@media (max-aspect-ratio:1/1) and (max-width:700px){
 #imageDialog,#imageDialog[data-crop="external"]{width:96vw;height:fit-content;max-height:90svh;overflow:auto;padding:6px}
 #imageDialog img,#imageDialog[data-crop="external"] img{width:min(1160px,210vw);max-width:none;height:auto;max-height:none;object-fit:contain}
 #imageDialog .dialog-close{position:fixed;right:14px;top:14px}
}
