.story-dialog{position:fixed;inset:2vh 2vw;z-index:180;display:flex;flex-direction:column;overflow:hidden;background:#081820;color:#efe3c8;border:1px solid #bda36b80;box-shadow:0 12px 60px #000c}
.story-dialog[hidden]{display:none}.story-header,.story-controls{flex:none;display:flex;align-items:center;gap:12px;padding:10px 20px;background:#10232c;border-color:#bea26b44}
.story-header{justify-content:space-between;border-bottom:1px solid #bea26b44}.story-header strong{font:500 22px Georgia,serif}
.story-dialog button{min-height:44px;min-width:48px;padding:8px 14px;border:1px solid #bda36b55;color:#eddfbf;background:#19343e;font:500 15px Georgia,serif;cursor:pointer}.story-dialog button:focus-visible{outline:2px solid #e4c889;outline-offset:2px}.story-dialog button:disabled{opacity:.35;cursor:default}
.story-screen{flex:1;min-height:0;position:relative;background:#081820;overflow:hidden}.story-screen video{display:block;width:100%;height:100%;object-fit:contain}.story-screen video[hidden]{display:none}
.story-controls{border-top:1px solid #bea26b44;flex-wrap:wrap;justify-content:center}.story-controls .story-divider{flex:1}.story-controls #storyTutorial{background:linear-gradient(#e9d6a7,#c6aa70);color:#10232c;font-weight:700}#storyCount{font:16px Georgia,serif;min-width:42px;text-align:center}
.story-reading{height:100%;padding:clamp(20px,4vw,65px);display:flex;flex-direction:column;justify-content:center;gap:24px;overflow:auto;background:linear-gradient(90deg,#081820f5,#081820df 75%,#081820ad),url('../media/race-v2/grove-clean.png') center/cover}.story-reading[hidden]{display:none}.story-reading h2{font:500 clamp(34px,4vw,68px)/1.05 Georgia,serif;margin:0;color:#f0dfbb}.story-reading p{font:400 clamp(22px,2.6vw,45px)/1.4 Georgia,serif;max-width:1100px;margin:0 0 16px}.story-reading #storyQuestion{color:#e9c888}
@media(max-height:650px){.story-reading{gap:16px}.story-reading h2{font-size:38px}.story-reading p{font-size:26px;line-height:1.3;margin-bottom:12px}.story-controls,.story-header{padding:7px 12px}.story-controls{gap:7px}}
@media(max-width:760px){.story-controls .story-divider{display:none}.story-reading p{font-size:22px}.story-header strong{font-size:18px}.story-dialog{inset:0}.story-controls button{font-size:13px}}

.story-reading[data-scene='1']{background-image:linear-gradient(90deg,#081820f5,#081820df 75%,#081820ad),url('../media/race-v2/sky-clean.png')}
