/* Shared question surface and controls for official interactive videos. */
.iv-shell{min-height:100dvh;padding:24px;background:#f4efe4;color:#352d23;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
.iv-player{max-width:1500px;margin:auto;overflow:hidden;border:1px solid #e6d4b4;border-radius:24px;background:#fffaf2;box-shadow:0 18px 70px #6b4d1720}
.iv-header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:70px;padding:16px 24px;border-bottom:1px solid #eadcc7}
.iv-header strong{font-size:20px}.iv-header button,.iv-rail button{font:inherit;cursor:pointer}
.iv-header .iv-exit{padding:9px 14px;border:1px solid #dfc8a2;border-radius:11px;background:#fffdf7;color:#493b27}
.iv-layout{display:grid;grid-template-columns:minmax(0,1fr) 272px}
.iv-stage{position:relative;min-width:0;height:min(calc((100vw - 272px)*.5625),680px);min-height:300px;background:#203028}
.iv-stage video{display:block;width:100%;height:100%;object-fit:contain}
.iv-stage .iv-poster{display:grid;place-content:center;width:100%;height:100%;padding:24px;color:#fff;text-align:center}
.iv-stage .iv-poster h1{margin:0 0 10px;font-size:clamp(26px,3vw,42px)}
.iv-controls{position:absolute;z-index:5;top:18px;right:20px;display:flex;gap:8px}
.iv-caption{position:absolute;top:31%;left:7%;z-index:2;max-width:28%;padding:4px 10px;border-radius:8px;background:#0007;color:#fff;font-size:clamp(22px,2.2vw,30px);font-weight:600;line-height:1.25;text-shadow:0 2px 8px #000;pointer-events:none}
.iv-stage .iv-card{position:absolute;z-index:3;right:2%;bottom:2%;left:2%;max-height:72%;overflow:auto}
.iv-stage .iv-card:empty{display:none}
.iv-rail{padding:22px 18px;border-left:1px solid #e9dcc7;background:#fffaf2}
.iv-rail small{color:#99794b;letter-spacing:.08em}.iv-rail h2{margin:3px 0 7px;font-size:20px}.iv-rail p{margin:0 0 16px;color:#806e56;font-size:13px;line-height:1.5}
.iv-rail .iv-lesson{display:flex;align-items:center;gap:10px;width:100%;margin-bottom:9px;padding:10px 12px;border:1px solid #dfc8a2;border-radius:11px;background:#fffdf7;text-align:left;color:#493b27}
.iv-rail .iv-lesson[aria-current="step"]{border-color:#dfb75c;background:#f4d57f}
.iv-rail .iv-lesson span{display:grid;place-items:center;width:30px;height:30px;flex:none;border:1px solid #cfb99a;border-radius:50%}
.iv-rail .iv-lesson strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.iv-rail .iv-note{padding:12px;border:1px solid #eadcc7;border-radius:14px;color:#745d43;font-size:12px}
.iv-card .iv-status{font-size:12px;color:#8b693d;letter-spacing:.04em}
.iv-card p{margin:0;line-height:1.5}.iv-card .iv-feedback{color:#356b5a;font-weight:600}
.iv-card .iv-text-input{display:flex;gap:9px;align-items:center}.iv-card .iv-text-input input{flex:1;min-width:0;padding:10px 12px;border:1px solid #d7c29f;border-radius:10px;font:inherit}
.iv-card .iv-action{min-height:42px;padding:7px 17px;border:1px solid #bd8f35;border-radius:10px;background:#f3d47b;color:#36291e;font:inherit;font-weight:700;cursor:pointer}
.iv-card .iv-action-secondary{background:#fffaf0;border-color:#d8bb8c;font-weight:400}
.iv-card .iv-action-row{display:flex;justify-content:flex-end;gap:9px;margin-top:auto;padding-top:9px}
.iv-card .iv-options{display:flex;flex-wrap:wrap;gap:9px}
.iv-card .iv-options button{min-height:43px;padding:8px 14px;border:1px solid #d8bb8c;border-radius:11px;background:#fffaf0;color:#36291e;font:inherit;cursor:pointer}
.iv-card .iv-options button[aria-pressed="true"]{border-color:#b9862b;background:#f3d47b;box-shadow:inset 0 0 0 1px #b9862b}
.iv-video-error{position:absolute;z-index:4;top:72px;right:2%;left:2%;padding:12px 16px;border-radius:12px;background:#fffaf4;color:#8d4e31}
.iv-video-error button{margin-left:8px}
.iv-card.iv-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid #e4d6bd;border-radius:12px;background:#fffaf4f7;color:#352d23;box-shadow:0 8px 24px #0002}
.iv-card.iv-card[hidden]{display:none}
.iv-card.iv-card :is(h1,h2){margin:0;font-size:clamp(20px,1.8vw,26px);line-height:1.25}
.iv-card.iv-card :is(.boardOptions,.pw-options,.options,.chips){display:flex;flex-wrap:wrap;gap:9px}
.iv-card.iv-card :is(.boardOptions,.pw-options,.options,.chips)>button{min-height:43px;padding:8px 14px;border:1px solid #d8bb8c;border-radius:11px;background:#fffaf0;color:#36291e;font-size:clamp(16px,1.2vw,19px);text-align:center}
.iv-card.iv-card :is(.boardOptions,.pw-options,.options,.chips)>button:is(.selected,[aria-pressed="true"]){background:#f3d47b;border-color:#b9862b;box-shadow:inset 0 0 0 1px #b9862b}
.iv-card.iv-card :is(.actionRow,.pw-actions){display:flex;justify-content:flex-end;gap:9px;margin-top:auto;padding-top:9px}
.iv-card.iv-card :is(.actionRow,.pw-actions)>button{min-height:42px;padding:7px 17px;border:1px solid #d8bb8c;border-radius:10px;background:#fffaf0;color:#36291e}
.iv-card.iv-card :is(.actionRow,.pw-actions)>button.primary{background:#f3d47b;border-color:#bd8f35;font-weight:700}
.iv-card.iv-card :is(.feedback,.pw-feedback):empty{display:none}
.iv-media-button.iv-media-button{display:grid;place-items:center;width:42px;height:42px;min-height:42px;padding:0;border:1px solid #dbc9ab;border-radius:11px;background:#fffdf7;color:#3d3024}
.iv-media-button.iv-media-button svg{width:21px;height:21px}
.iv-media-button.iv-media-button:focus-visible{outline:3px solid #b9862b;outline-offset:2px}
@media(max-width:540px){.iv-card.iv-card{gap:6px;padding:10px}.iv-card.iv-card :is(h1,h2){font-size:18px}.iv-card.iv-card :is(.boardOptions,.pw-options,.options,.chips)>button{font-size:15px;min-height:37px;padding:6px 9px}.iv-media-button.iv-media-button{width:34px;height:34px;min-height:34px}.iv-media-button.iv-media-button svg{width:19px;height:19px}}
@media(max-width:900px){.iv-shell{padding:0}.iv-player{border-radius:0}.iv-layout{display:block}.iv-stage{height:auto;min-height:0;aspect-ratio:16/9}.iv-rail{border-top:1px solid #eadcc7;border-left:0}.iv-stage .iv-card{max-height:72%}.iv-caption{top:24%;left:3%;max-width:42%;font-size:18px}}
@media(max-width:540px){.iv-header{min-height:56px;padding:10px 12px}.iv-header strong{font-size:16px}.iv-controls{top:10px;right:10px}.iv-rail{padding:12px}.iv-card .iv-options button{min-height:37px;padding:6px 9px;font-size:15px}.iv-card .iv-text-input{flex-wrap:wrap}}
@media(max-width:540px){.iv-stage{aspect-ratio:auto;min-height:0}.iv-stage video,.iv-stage .iv-poster{height:auto;aspect-ratio:16/9}.iv-stage .iv-card{position:relative;right:auto;bottom:auto;left:auto;max-height:none;overflow:visible;border-radius:0}}

/* Correct preflight feedback remains visible before automatic continuation. */
.iv-card.iv-card.isCorrect{background:#66e886;border-color:#26974b;color:#173b24}
.iv-card.iv-card.isCorrect :is(small,p){color:#173b24}
