:root{--ink:#203c56;--cream:#fff9ec;--yellow:#f4cc56;--red:#ed745b;--green:#468f83;--line:#e9e1cc;--blue:#e6eff5}*{box-sizing:border-box}html{scroll-padding-top:106px;scroll-padding-bottom:24px}body{margin:0;font-family:'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif;font-weight:700;color:var(--ink);background:#eef3f4;background-image:radial-gradient(#cadade 1.2px,transparent 1.2px);background-size:24px 24px}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:16px;transition:transform .15s,background .15s}button:active{transform:translateY(2px)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #165eaf;outline-offset:4px}button:disabled{cursor:default;opacity:.5;transform:none}[hidden]{display:none!important}header{max-width:880px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:auto}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:1.25rem;letter-spacing:.02em;text-decoration:none;white-space:nowrap}.brand-icon{display:grid;place-items:center;width:45px;height:45px;background:var(--yellow);border:2px solid white;border-radius:14px;font-size:1.5rem;box-shadow:0 3px 0 #dcb742}.brand-light{font-weight:500}.sound-guide{color:var(--ink);background:white;border:2px solid #d8e2e5;border-radius:30px;padding:12px 15px;min-height:44px;font-size:.88rem;white-space:nowrap}main{max-width:820px;margin:auto;padding:0 24px}#nav{position:sticky;top:10px;z-index:5;background:#eef3f4ed;border-radius:22px;backdrop-filter:blur(8px);padding:7px;margin:0 0 18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tab{display:flex;gap:8px;align-items:center;justify-content:center;padding:14px 8px;background:#fff;color:#647586;min-height:52px;border:2px solid white;font-size:.91rem;white-space:nowrap}.tab span{font-size:1.3rem}.tab.active{background:var(--ink);color:white;border-color:var(--ink);box-shadow:0 4px 0 #122a3e}.tab[data-mode=garage].active{background:#b86933;border-color:#b86933;box-shadow:0 4px 0 #8a4d20}section{background:white;border:2px solid white;border-radius:30px;padding:25px 30px 30px;box-shadow:0 7px 0 #d7e2e5,0 15px 35px #203c5606;text-align:center;overflow:hidden}.section-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.eyebrow{font-size:.73rem;color:#6b7c87;letter-spacing:.13em}.lesson-time,.pill{background:#f1f4f4;color:#657a82;font-size:.8rem;border-radius:24px;padding:6px 11px;white-space:nowrap}h1{font-size:1.8rem;letter-spacing:.03em;margin:15px 0 8px}h2{font-size:1.45rem}h3{font-size:1.15rem}.intro{font-size:.95rem;color:#7a8c91;line-height:1.8;margin:0 0 18px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:50px;padding:14px 24px;background:var(--ink);color:white;box-shadow:0 4px 0 #10283c;font-size:1rem;border-radius:28px;max-width:100%}.secondary{background:#edf3f2;color:#507575;box-shadow:0 3px 0 #d6e6e1}.speaker{background:var(--green);box-shadow:0 4px 0 #28665b}.small-button{font-size:.85rem;min-height:44px;padding:10px 16px}.next-button{width:min(100%,350px);margin:8px auto 0}.quiet-button{display:block;min-height:44px;background:none;color:#708390;padding:10px 16px;margin:14px auto 0;font-size:.82rem;text-decoration:underline;text-underline-offset:4px}.status{font-size:.9rem;color:#578174;line-height:1.8;min-height:1.8em;margin:16px 0 8px}.notice{font-size:.8rem;font-weight:500;line-height:1.7;color:#648184;margin:8px 0}.notice:empty{display:none}.small{font-size:.8rem;line-height:1.8;color:#7b8c92;font-weight:500}.row-actions{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.row-actions .secondary{font-size:.82rem;padding:12px 17px}.lesson-picker{border:2px solid #dde8e6;background:#f3f8f5;border-radius:16px;margin:14px 0;padding:0;text-align:left}.lesson-picker summary{min-height:52px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#3d7168;font-size:.86rem;list-style:none;cursor:pointer}.lesson-picker summary::-webkit-details-marker{display:none}.lesson-picker summary>span:last-child{font-size:.75rem;white-space:nowrap}.lesson-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:4px 12px 14px}.lesson-options button{background:white;border:2px solid #dfebe4;color:#607b6e;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:7px;min-height:66px}.lesson-options button span{font-size:1.45rem}.lesson-options button strong{font-size:.78rem}.lesson-options button[aria-pressed=true]{background:#fff2c7;border-color:#e6c778;color:#7a6026}.lesson-top{display:flex;justify-content:space-between;align-items:center;color:#799188;font-size:.76rem;margin:16px 0 9px}.learn-strip{display:flex;justify-content:center;gap:12px;margin-bottom:15px}.learn-strip button{width:78px;min-height:56px;border:2px solid #e4e8e2;background:#f2f5f0;position:relative}.learn-strip button.current{background:#fff3cd;border-color:#e9c772;box-shadow:0 3px 0 #e7cf97}.learn-strip button.heard:after{content:'✓';position:absolute;right:-7px;top:-7px;background:var(--green);color:white;border-radius:50%;width:20px;height:20px;font-size:.78rem;display:grid;place-items:center}.learn-strip .item-picture{font-size:1.7rem;min-height:44px}.scene-card{background:var(--cream);border:2px solid #efe3c5;border-radius:26px;padding:18px 20px 24px}.scene-tag{font-size:.68rem;letter-spacing:.18em;color:#a09066}.large-picture{min-height:150px;display:grid;place-items:center;margin:8px 0}.large-picture .item-picture{width:min(100%,320px);font-size:6rem}.item-picture{display:flex;align-items:center;justify-content:center;min-width:0;max-width:100%;line-height:1.15}.car-art{display:block;width:100%;height:auto;aspect-ratio:1.45;overflow:hidden}.count-picture{gap:7px;flex-wrap:wrap;font-size:2.8rem!important}.count-picture span{font-size:inherit}.english-word{font-family:system-ui,sans-serif;color:var(--ink);font-size:2.2rem;margin:3px 0 17px;line-height:1.15;font-weight:800}.reward-hint{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin:23px 0 0;color:#8a886c;font-size:.72rem}.stars-panel{display:flex;align-items:center;gap:16px;padding:12px 20px;border-radius:20px;background:#fff4d7;border:2px solid #f0e0b7;margin:17px 0 8px;text-align:left}.stars-panel>span{font-size:2.3rem}.stars-panel p{font-size:.9rem;margin:0 0 4px;color:#81704a}#stars{color:#daa63d;font-size:1.7rem;letter-spacing:5px;line-height:1.2}.buddy-message{display:flex;justify-content:center;gap:12px;align-items:center;margin:10px 0}.pit-mascot{font-size:2.5rem}.buddy-message p{font-size:.95rem;margin:0;padding:12px 17px;border-radius:18px 18px 18px 3px;background:#edf5f2;color:#5b8478}.choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:25px 0 17px}.choice{min-height:130px;padding:12px 6px;background:#fff3d1;border:2px solid #efd18a;box-shadow:0 5px 0 #e6c779;border-radius:21px}.choice:nth-child(2){background:#e7f1f6;border-color:#c8dbe8;box-shadow:0 5px 0 #b9d0df}.choice:nth-child(3){background:#f9e9e4;border-color:#ecd0c6;box-shadow:0 5px 0 #dfc0b4}.choice .item-picture{font-size:3.8rem}.choice .count-picture{font-size:1.7rem!important}.choice.correct{background:#e3f3dc;border-color:#81b47b;box-shadow:0 5px 0 #699e63}.choice.wrong{border-style:dashed}.choice:disabled{opacity:1}.choice.correct:after{content:'★';color:#a78a32;font-size:1.4rem}.review-chip{display:inline-block;font-size:.72rem;border-radius:20px;padding:6px 12px;background:#edf1fc;color:#597b9e}.rest-panel{border:2px dashed #dbe7e0;padding:15px;border-radius:20px}.rest-panel p{font-size:.85rem;line-height:1.8}.level-switch{display:inline-flex;padding:4px;background:#eef3f3;border-radius:24px;margin:6px 0 19px;gap:4px}.level-switch button{min-height:39px;padding:9px 14px;font-size:.8rem;color:#73878b;background:transparent;border-radius:20px}.level-switch button[aria-pressed=true]{background:white;color:var(--ink);box-shadow:0 2px 5px #213b5615}.talk-shop{border:2px solid #efdfbb;border-radius:25px;background:var(--cream);padding:0 18px 20px;overflow:hidden;margin:0 0 20px}.shop-awning{height:27px;background:repeating-linear-gradient(90deg,#f3c957 0 36px,#fff8e8 36px 72px);border-radius:0 0 15px 15px;margin:0 -18px 16px;border-bottom:2px solid #e8cf92}.shop-question{font-family:system-ui,sans-serif;color:#846d44;font-size:.95rem;margin:0 0 5px}.shop-listen{background:none;color:#8c7a5b;padding:6px 12px;min-height:38px;font-size:.75rem}.talk-shop .large-picture{min-height:128px;margin:0}.talk-shop .large-picture .item-picture{font-size:5rem;width:min(100%,260px)}.talk-phrase{font:800 1.45rem/1.4 system-ui,sans-serif;margin:2px 0 0;color:var(--ink)}.record-button{background:#e97460;color:white;box-shadow:0 4px 0 #bd5448;font-size:1.05rem;padding:14px 24px;min-height:50px;border-radius:28px}.record-button.recording{background:#be423a;animation:pulse 1s ease-in-out infinite}.manual-talk{background:#f4f6f4;border-radius:15px;padding:12px;margin:16px 0;color:#697f7c;line-height:1.8;font-size:.77rem}.manual-talk summary{min-height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer}.manual-talk p{font-weight:500}.manual-talk button{font-size:.8rem;min-height:44px;padding:11px 16px}#record-result{margin:17px 0 6px;padding:13px;background:#edf5f1;border-radius:18px}#record-result label{display:block;font-size:.8rem;margin-bottom:7px;color:#668478}audio{display:block;width:100%;max-width:340px;margin:auto}.tool-award{font-size:3rem}.talk-done{background:#eef6e8;border:2px solid #d8e7c9;border-radius:24px;padding:20px;margin:14px 0}.talk-done h2{font-size:1.2rem}.talk-done p{font-size:.9rem}.talk-done button{margin:8px 4px 0}.repair-invite{display:flex;align-items:center;gap:15px;border:2px solid #dfebea;border-radius:24px;padding:14px 17px;background:#f1f7f6;text-align:left;margin:20px 0}.repair-preview{flex:0 0 45%;min-width:0}.repair-invite p{font-size:.92rem;margin:5px 0;overflow-wrap:anywhere}.wallet{color:#647d72}.wallet strong{font-size:1.25rem}.empty-note{font-size:.9rem;background:#fff6dc;padding:17px;border-radius:18px;color:#8e7848;line-height:1.9}.car-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.car-tile{min-width:0;background:var(--cream);border:2px solid #ede3c7;border-radius:18px;padding:5px 5px 12px;color:var(--ink);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center}.car-tile .car-art{margin-bottom:4px}.car-tile.locked{background:#f7f7f2;border-style:dashed;border-color:#e4e8df;box-shadow:none}.car-tile.locked .car-art{filter:grayscale(1);opacity:.23}.tile-name{font:800 .82rem/1.4 system-ui,sans-serif;overflow-wrap:anywhere}.tile-maker{font-size:.68rem;color:#8a9691;margin-top:4px}.built-mark{position:absolute;top:7px;right:7px;background:#e1efdd;border-radius:50%;font-size:.72rem;padding:5px}footer{text-align:center;color:#839195;margin:28px 0 40px;font-size:.8rem}footer>p{font:500 .8rem system-ui,sans-serif;letter-spacing:.08em}.footer-link{display:block;min-height:44px;padding:12px;background:none;color:#517d80;font-size:.82rem;text-decoration:underline;text-underline-offset:4px;margin:5px auto}footer details{margin:12px 0;background:#ffffffa8;padding:14px 18px;border-radius:18px;text-align:left;line-height:1.9;color:#5e767b}footer details summary{text-align:center;cursor:pointer;min-height:44px;padding:9px;font-weight:700}footer details p{font-weight:500;font-size:.82rem}.parent-actions{border-top:1px dashed #d6e2df;padding-top:13px}.parent-actions button{font-size:.82rem;min-height:44px}dialog{width:min(calc(100% - 24px),460px);max-height:calc(100dvh - 24px);padding:20px;border:3px solid white;border-radius:28px;background:var(--cream);color:var(--ink);overflow:auto;text-align:center;box-shadow:0 20px 80px #1b354a4d}dialog::backdrop{background:#1b354a94;backdrop-filter:blur(5px)}.dialog-open{overflow:hidden}.dialog-close{position:sticky;top:0;display:block;margin:0 0 12px auto;padding:10px 15px;min-height:44px;background:white;border:1px solid #e2e8e4;color:#688285;z-index:2;font-size:.83rem}.model-name{font:800 1.08rem/1.6 system-ui,sans-serif;margin:10px 0;color:#516879}#detail-fact{font-size:.92rem;line-height:1.9;font-weight:500;color:#6a7b7d}#detail-name{font-size:1.3rem;line-height:1.5}#detail-listen{font-size:.95rem}#delivery-car,#detail-car{margin:5px auto;width:min(100%,350px)}.repair-stage{position:relative;border:2px solid #dce5e2;border-radius:22px;overflow:hidden;background:#edf1ec;margin:12px 0}.repair-mask{position:absolute;inset:0;display:grid;grid-template-columns:repeat(5,1fr);pointer-events:none}.repair-mask span{background:linear-gradient(130deg,#d6e0dd,#b7c8c4);border-right:2px dashed #9db6ad;opacity:.97}.repair-mask span:last-child{border:0}.repair-steps{display:flex;justify-content:center;gap:9px}.repair-steps span{display:grid;place-items:center;border:2px solid #dde7df;border-radius:50%;width:31px;height:31px;color:#85918b;background:#f2f4ed;font-size:.8rem}.repair-steps .done{background:#dcecca;color:#628048;border-color:#b9d29f}.repair-stage.working{animation:work .35s ease}.drive-track{height:113px;position:relative;background:#dae6dc;border:2px solid #cadccb;border-radius:18px;overflow:hidden;margin:14px 0}.drive-track:before{content:'';position:absolute;inset:40% 0 0;background:#60717c;border-top:3px dashed #f5e7aa;border-bottom:3px dashed #f5e7aa}#drive-car{position:absolute;bottom:6px;width:150px;left:50%;transform:translateX(-50%)}.driving #drive-car{animation:drive 2.6s ease-in-out forwards}#repair-complete button{font-size:.9rem;margin:7px 3px}.install-emoji{font-size:3rem}.install-steps{text-align:left;background:white;border:1px solid #e5e7da;border-radius:18px;padding:13px 17px;margin:16px 0;font-size:.85rem;line-height:1.9}.install-steps h3{font-size:1rem;margin:0}.install-steps ol{padding-left:22px;margin:8px 0 0}#install-url{display:block;width:100%;font:500 .78rem/1.5 sans-serif;background:white;border:2px solid #d8e4dd;border-radius:10px;padding:10px;color:#557770;margin:15px 0 10px}.install-welcome>p{line-height:1.8;font-size:.9rem}.install-welcome .secondary{font-size:.85rem}#confetti{position:fixed;inset:0;z-index:20;pointer-events:none;overflow:hidden}#confetti span{position:absolute;top:15%;left:var(--x);width:9px;height:13px;border-radius:2px;animation:confetti 1.4s ease forwards}@keyframes confetti{0%{transform:translateY(-10px) rotate(0);opacity:0}15%{opacity:1}100%{transform:translateY(65vh) rotate(360deg);opacity:0}}@keyframes pulse{50%{opacity:.65}}@keyframes work{50%{transform:rotate(-1deg) scale(.98)}}@keyframes drive{0%{left:-40%;transform:none}70%{left:105%;transform:none}100%{left:50%;transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}#confetti{display:none}.driving #drive-car{left:50%}}
@media(max-width:700px){html{scroll-padding-top:15px;scroll-padding-bottom:100px}body{padding-bottom:calc(90px + env(safe-area-inset-bottom))}header{padding:14px 12px;gap:8px}.brand{font-size:1.05rem;gap:7px}.brand-icon{width:35px;height:35px;font-size:1.2rem;border-radius:11px}.sound-guide{font-size:.77rem;padding:8px 11px}main{padding:0 12px}#nav{position:fixed;inset:auto 0 0;top:auto;display:grid;gap:4px;padding:8px 7px calc(8px + env(safe-area-inset-bottom));margin:0;border-radius:20px 20px 0 0;background:white;border-top:2px solid #e4ebe7;box-shadow:0 -5px 20px #1b354a0e;backdrop-filter:none}.tab{flex-direction:column;gap:6px;min-height:62px;padding:7px 1px;border-radius:14px;font-size:.7rem;box-shadow:none!important;background:#f2f6f5;color:#7a8e8d;border:2px solid transparent}.tab span{font-size:1.2rem}.tab.active{background:#e2ecef;color:var(--ink);border-color:#b4cbd3}.tab[data-mode=garage].active{background:#fff0cb;color:#8d6429;border-color:#e8c786}section{padding:19px 16px 25px;border-radius:25px}h1{font-size:1.5rem;margin:12px 0 7px}.intro{font-size:.79rem;line-height:1.8;margin-bottom:14px}.eyebrow{font-size:.63rem}.lesson-time{font-size:.65rem;padding:5px 8px}.pill{font-size:.75rem}.lesson-picker summary{font-size:.79rem;padding:10px 11px;min-height:49px}.lesson-picker summary span:first-child{max-width:80%;line-height:1.7}.learn-strip button{width:72px;min-height:48px}.scene-card{padding:14px 15px 20px;border-radius:22px}.large-picture{min-height:130px}.large-picture .item-picture{width:min(100%,260px);font-size:5rem}.english-word{font-size:1.9rem;margin-bottom:15px}.primary,.secondary{font-size:.92rem;padding:13px 21px;min-height:48px}.row-actions .secondary{padding:12px 14px}.status{font-size:.8rem;margin:13px 0 7px}.reward-hint{font-size:.66rem;gap:12px}.stars-panel{padding:10px 14px;margin:12px 0 8px;gap:13px}.stars-panel>span{font-size:2rem}#stars{font-size:1.5rem}.stars-panel p{font-size:.84rem}.buddy-message{gap:8px}.pit-mascot{font-size:2rem}.buddy-message p{font-size:.86rem;padding:10px 14px}.choices{gap:9px;margin:22px 0 16px}.choice{min-height:104px;padding:9px 4px;border-radius:17px}.choice .item-picture{font-size:3rem}.choice .count-picture{font-size:1.4rem!important}.talk-shop{padding:0 12px 17px}.shop-awning{margin:0 -12px 13px;height:23px}.talk-shop .large-picture{min-height:110px}.talk-shop .large-picture .item-picture{width:min(100%,240px)}.talk-phrase{font-size:1.22rem}.record-button{font-size:1rem}.repair-invite{padding:12px 11px;gap:9px}.repair-invite .eyebrow{font-size:.61rem;letter-spacing:.03em}.repair-invite p{font-size:.81rem}.small-button{font-size:.77rem;padding:10px 13px}.car-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tile-name{font-size:.83rem}.tile-maker{font-size:.65rem}.talk-done{padding:16px 10px}.talk-done button{font-size:.83rem;padding:12px 16px}footer{margin-top:25px}dialog{padding:16px}.dialog-close{margin-bottom:7px}#repair-title{font-size:1.15rem}#repair-model{font-size:.95rem}.repair-stage{margin-top:8px}}
@media(max-width:350px){header .brand{font-size:.93rem}.sound-guide{font-size:.72rem;padding:8px 9px}.brand-icon{width:31px;height:31px}.tab{font-size:.63rem}.scene-card{padding:12px 10px 17px}.lesson-time{display:none}.intro{font-size:.73rem}.lesson-picker summary{font-size:.73rem}.primary,.secondary{font-size:.84rem;padding:12px 17px}.choice .item-picture{font-size:2.6rem}.choice{min-height:93px}.choice .count-picture{font-size:1.2rem!important}.shop-question{font-size:.85rem}.talk-phrase{font-size:1.1rem}.manual-talk{font-size:.72rem}.repair-invite .small-button{font-size:.7rem;padding:10px}.tile-name{font-size:.75rem}dialog .model-name{font-size:.95rem}}
@media(max-width:700px) and (max-height:650px){#learn>.intro,#learn>.section-top{display:none}#learn h1{font-size:1.28rem;margin-top:0}.lesson-picker{margin:10px 0}.lesson-picker summary{min-height:43px;padding:7px 10px}.lesson-top{margin:9px 0 7px}.learn-strip{margin-bottom:11px}.learn-strip button{min-height:40px;width:65px}.learn-strip .item-picture{min-height:34px;font-size:1.4rem}.scene-card{padding:10px 10px 16px}.scene-tag{font-size:.56rem}.large-picture{min-height:105px;margin:4px 0}.large-picture .item-picture{width:min(100%,220px);font-size:4rem}.english-word{font-size:1.55rem;margin-bottom:12px}.scene-card .speaker{min-height:44px;padding:11px 20px}.reward-hint{margin-top:18px}.buddy-message{margin:6px 0}.pit-mascot{font-size:1.7rem}.choices{margin-top:18px}.talk-shop .large-picture{min-height:92px}.talk-shop .large-picture .item-picture{width:min(100%,210px)}.talk-shop{margin-bottom:15px}.talk-phrase{font-size:1.12rem}.level-switch{margin-bottom:12px}.level-switch button{min-height:35px;padding:8px 12px}.drive-track{height:92px}#drive-car{width:125px}}
@media(max-width:700px) and (max-height:650px){#learn .lesson-top{display:none}#learn .learn-strip{margin-top:12px}#learn .large-picture{min-height:92px}#learn .large-picture .item-picture{width:min(100%,150px)}#learn .english-word{font-size:1.45rem;margin:2px 0 10px}}

/* A story and a listening game live inside the existing learning route. */
.adventure-invite{margin-top:24px;padding-top:20px;border-top:2px dashed #e3e9df;text-align:left}.adventure-invite>.eyebrow{display:block;margin-bottom:10px;letter-spacing:.08em}.story-entry{display:flex;align-items:center;gap:13px;width:100%;padding:16px;background:#fff2cb;border:2px solid #ebd390;color:var(--ink);box-shadow:0 4px 0 #e4ce93;text-align:left}.entry-icon{font-size:2rem}.story-entry>span:nth-child(2){flex:1;min-width:0}.story-entry strong{display:block;font-size:1rem}.story-entry small{display:block;font-size:.78rem;line-height:1.7;color:#8a7748;margin-top:5px}.road-entry{width:100%;padding:14px;margin-top:15px;background:#e6f1ec;border:2px solid #c8e0d5;color:#3e7568;min-height:48px}.adventure-invite .small{text-align:center;margin:8px 0 0}.garage-drive{margin:18px auto 0;background:var(--green);box-shadow:0 4px 0 #28665b;width:100%}.adventure-dialog{width:min(calc(100% - 24px),520px);background:#fffdf5}.adventure-dialog h2{font-size:1.35rem;margin:12px 0 15px;line-height:1.5}.story-stage{position:relative;height:228px;border:2px solid #d9e5de;background:linear-gradient(#d7eef0 0 56%,#deead1 56%);border-radius:22px;overflow:hidden;isolation:isolate}.story-sun{position:absolute;right:17px;top:10px;font-size:2rem;color:#e9b543}.story-scene-title{position:relative;font-size:.8rem;background:#ffffffd9;padding:7px 10px;z-index:3;color:#4c7b72;line-height:1.5;text-align:left;max-width:84%;border-bottom-right-radius:16px}.story-shopfront{position:absolute;top:59px;right:24px;width:110px;height:82px;border-radius:5px;background:#f1bf7c;border:3px solid #b89258;z-index:0;box-shadow:inset 0 -40px #fff2ce}.story-shopfront:before{content:'';position:absolute;top:-11px;left:-8px;right:-8px;height:22px;background:repeating-linear-gradient(90deg,#e27760 0 15px,#fff4db 15px 30px);border-radius:3px 3px 8px 8px}.story-shopfront span{position:relative;top:15px;font:800 .68rem system-ui;color:#775536}.world-zoo .story-shopfront,.world-park .story-shopfront,.world-road .story-shopfront{background:#a8c78b;border-color:#7b9c61;border-radius:50% 50% 4px 4px;box-shadow:inset 0 -25px #819b6a;right:28px;width:80px}.world-zoo .story-shopfront:before,.world-park .story-shopfront:before,.world-road .story-shopfront:before{display:none}.world-zoo .story-shopfront span,.world-park .story-shopfront span,.world-road .story-shopfront span{color:#fff}.story-objects{position:absolute;top:51px;left:15px;right:145px;min-height:93px;display:flex;align-items:center;justify-content:center;gap:7px;z-index:2}.story-objects .item-picture{font-size:3.2rem;min-width:0;flex:1}.story-objects .car-art{min-width:0;max-width:105px}.story-objects:has(>.item-picture:nth-child(3)){right:100px;gap:5px}.story-objects:has(>.item-picture:nth-child(3)) .item-picture{font-size:2.5rem}.story-objects .count-picture{font-size:2rem!important}.story-road{position:absolute;bottom:0;left:0;right:0;height:73px;background:#6e8491;border-top:4px solid #b9ceac}.story-road:after{content:'';position:absolute;left:0;right:0;top:52%;border-bottom:3px dashed #fff0b8}.story-car{position:absolute;width:147px;bottom:5px;left:18px;z-index:2;transform-origin:center}.story-car .car-art,.road-car .car-art{border-radius:14px;background:#fff9ec;box-shadow:0 4px 0 #354f5633}.story-friend{position:absolute;right:25px;bottom:49px;font-size:2.8rem;z-index:2;transform-origin:bottom center}.story-stage[data-speaker=friend] .story-friend{animation:friend-talk .7s ease-in-out infinite}.story-stage[data-speaker=car] .story-car{animation:car-talk .8s ease-in-out infinite}.story-go .story-car{animation:story-go 4s ease-in-out infinite!important}.story-stop .story-car:after{content:'✋';position:absolute;right:-25px;top:15px;font-size:2rem}.story-left .story-car{transform:translateX(50px) rotate(-12deg)}.story-lines{margin:13px 0 10px;min-height:82px}.story-line{display:flex;align-items:center;gap:9px;background:#eef4ef;border:2px solid transparent;border-radius:15px;padding:8px 12px;margin:6px 0;font:750 1.03rem/1.4 system-ui;text-align:left;color:#4e706d}.story-line span{font-size:1.25rem}.story-line.speaking{border-color:#78b7a5;background:#e5f1e3;color:var(--ink)}.story-line.speaker-car{background:#fff2cd}.story-dots{display:flex;justify-content:center;gap:8px;margin:12px 0}.story-dots button{width:44px;height:44px;min-width:0;background:#edf2ed;border:2px solid #dee8dd;color:#688073;border-radius:50%;font-size:.85rem}.story-dots button[aria-current=true]{background:var(--yellow);border-color:#dcb750;color:#705421}.story-controls{display:flex;align-items:center;justify-content:center;gap:9px}.story-controls>.secondary{width:46px;min-height:46px;padding:10px;border-radius:16px}.story-controls>.primary{flex:1;max-width:245px;padding:12px 10px;min-height:46px;font-size:.86rem}.adventure-finish{margin-top:14px;border:2px solid #d8e7cb;background:#eef6e2;padding:14px;border-radius:20px}.adventure-finish p{font-size:.85rem}.adventure-finish button{margin:6px 0;width:100%;font-size:.85rem;min-height:46px;padding:12px}.road-picker{text-align:left;border:2px solid #dce7df;border-radius:14px;background:#f4f8f2}.road-picker summary{min-height:44px;padding:10px 13px;cursor:pointer;font-size:.8rem;color:#5a7c6d}.road-cars{display:flex;gap:9px;overflow-x:auto;padding:4px 10px 12px;scroll-snap-type:x mandatory}.road-cars button{flex:0 0 105px;border:2px solid #dce5d5;padding:5px;background:white;scroll-snap-align:start;color:var(--ink)}.road-cars button[aria-pressed=true]{background:#fff1c5;border-color:#debb59}.road-cars button span{display:block;font:.72rem/1.6 system-ui;margin:4px 0}.road-car-name{font-size:.78rem;color:#718275;margin:10px 0}.road-stage{position:relative;height:195px;overflow:hidden;border-radius:22px;background:#e2edcf;border:2px solid #cddebc;isolation:isolate}.road-town{position:absolute;top:15px;left:10px;right:0;font-size:2.3rem;letter-spacing:12px}.road-lane{position:absolute;left:0;right:0;bottom:15px;height:73px;background:#728893;border-top:3px solid #b9c9b1;border-bottom:3px solid #b9c9b1}.road-lane:after{content:'';position:absolute;inset:47% 0 auto;border-top:3px dashed #fff2c4}.road-turn{position:absolute;bottom:48px;left:45%;height:112px;width:74px;background:#728893;border-left:3px solid #b9c9b1;border-right:3px solid #b9c9b1;border-radius:13px 13px 0 0}.road-turn:after{content:'';position:absolute;left:48%;top:10px;bottom:0;border-left:3px dashed #fff2c4}.road-flag{position:absolute;right:12px;bottom:72px;font-size:1.7rem;z-index:2}.road-car{position:absolute;width:130px;left:12%;bottom:17px;z-index:2}.road-brake{display:none;position:absolute;left:52%;bottom:45px;font-size:2.3rem;z-index:3}.road-go .road-car{animation:road-go 1.6s ease-in-out forwards}.road-stop .road-car{animation:road-stop .8s ease-in-out forwards}.road-stop .road-brake{display:block}.road-left .road-car{animation:road-left 1.6s ease-in-out forwards}.road-checkpoints{display:flex;align-items:center;justify-content:center;gap:13px;margin:12px 0 5px}.road-checkpoints span{width:25px;height:25px;border:2px solid #dce5d5;color:#a5b299;background:white;border-radius:50%;display:grid;place-items:center;font-size:.8rem}.road-checkpoints .done{border-color:#90b478;background:#d9edc4;color:#5e8249}.road-reveal{font:800 1.25rem/1.5 system-ui;margin:12px 0;color:var(--ink)}.road-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:19px 0 9px}.road-controls button{min-height:85px;background:#e3f0dd;color:#447d48;border:3px solid #aac99e;box-shadow:0 4px 0 #92b684;border-radius:19px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.road-controls button[data-command=stop]{background:#fae4dd;color:#b76154;border-color:#e1b2a5;box-shadow:0 4px 0 #cf9889}.road-controls button[data-command=left]{background:#e1edf7;color:#557ca3;border-color:#b1c9df;box-shadow:0 4px 0 #94b4cf}.road-controls button span{font:800 2rem/1 system-ui}.road-controls button small{font-size:.72rem}.road-controls button.correct{border-color:#497d48;box-shadow:0 4px 0 #497d48}.road-controls button.wrong{border-style:dashed}.road-controls button:disabled{opacity:.65}.road-controls button.correct:disabled{opacity:1}.road-stage.road-stop{background:#e7edce}
@keyframes friend-talk{50%{transform:rotate(7deg) translateY(-3px)}}@keyframes car-talk{50%{transform:translateY(-3px)}}@keyframes story-go{0%{left:18px}50%{left:45%}100%{left:18px}}@keyframes road-go{to{left:61%}}@keyframes road-stop{50%{transform:translateX(22px) rotate(-3deg)}100%{transform:translateX(22px)}}@keyframes road-left{40%{left:37%;bottom:17px;transform:none}100%{left:38%;bottom:85px;transform:rotate(-80deg) scale(.75)}}
@media(max-width:350px){.story-entry{padding:13px;gap:9px}.story-entry strong{font-size:.88rem}.story-entry small{font-size:.69rem}.entry-icon{font-size:1.7rem}.adventure-dialog h2{font-size:1.1rem}.story-stage{height:193px}.story-objects{right:109px;left:8px;top:40px}.story-shopfront{right:15px;top:50px;width:87px;height:73px}.story-objects .item-picture{font-size:2.6rem}.story-objects:has(>.item-picture:nth-child(3)){right:55px;top:45px}.story-objects:has(>.item-picture:nth-child(3)) .item-picture{font-size:2rem}.story-car{width:115px;left:10px}.story-friend{right:17px;font-size:2.3rem}.story-line{font-size:.89rem;padding:7px 9px}.story-dots{gap:7px}.story-dots button{width:40px;height:44px}.story-scene-title{font-size:.69rem}.story-controls{gap:7px}.story-controls>.primary{font-size:.79rem}.road-controls{gap:8px}.road-controls button{min-height:78px}.road-stage{height:168px}.road-turn{height:100px}.road-car{width:105px}.road-reveal{font-size:1.1rem}.road-controls button small{font-size:.65rem}.adventure-invite>.eyebrow{font-size:.57rem}}
@media(max-height:650px){.adventure-dialog{padding:12px}.adventure-dialog .dialog-close{margin-bottom:3px}.adventure-dialog h2{margin:8px 0 10px}.story-stage{height:170px}.story-objects{top:33px;min-height:72px}.story-shopfront{top:38px;height:60px}.story-road{height:60px}.story-car{width:109px}.story-friend{bottom:40px;font-size:2.3rem}.story-lines{min-height:74px;margin:9px 0}.story-line{font-size:.88rem;margin:4px 0;padding:6px 10px}.story-dots{margin:8px 0}.road-stage{height:157px}.road-town{top:6px;font-size:1.8rem}.road-turn{height:94px}.road-car{width:105px}.road-checkpoints{margin-top:9px}.road-controls{margin-top:14px}.road-controls button{min-height:73px}.road-reveal{font-size:1.07rem;margin:9px 0}.road-car-name{margin:8px 0}.road-picker summary{min-height:44px}.adventure-dialog .notice{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.story-go .story-car{animation:none!important}.road-go .road-car{left:61%}.road-stop .road-car{transform:translateX(22px)}.road-left .road-car{left:38%;bottom:85px;transform:rotate(-80deg) scale(.75)}}

.turn-arrow{display:block;width:32px;height:32px;overflow:visible}
.story-stage.paused *{animation-play-state:paused!important}
