/* A colourful 2D arcade world. Learning text stays on calm, readable panels. */
:root{--ink:#31294d;--muted:#655577;--paper:#ecf7ed;--cream:#fffaf0;--green:#21685f;--pink:#f07cb8;--purple:#7752a8;--gold:#ffd36b;--line:#c3b0d1}
body{background:linear-gradient(130deg,#e7fbdf,#d9f3f7 50%,#fce0ed);background-attachment:fixed}
.topbar{background:#193d48;border-bottom:4px solid #eeb359;box-shadow:0 4px 0 #20465233;color:#fff2bf}.brand,.topbar .text-btn{color:#fff4cf}.topbar .balance{background:#132d38;border:2px solid #e9b85b;border-radius:7px;padding:5px 10px}
h1,h2,h3{letter-spacing:-.025em}.page-head h1{color:#285765}.btn{border-radius:5px;border:3px solid #164b4e;background:linear-gradient(#338d79,#256552);box-shadow:inset 0 3px #8dd4ae,0 4px 0 #123c43;transition:transform .14s,filter .14s}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(2px);box-shadow:inset 0 2px #ffffff44,0 1px #123c43}.btn.pink{color:#3e194b;background:linear-gradient(#ffb0d4,#f17fb7);border-color:#7e3b80;box-shadow:inset 0 3px #ffd9eb,0 4px #673561}.btn.secondary{background:linear-gradient(#fff9e4,#f8dc97);border-color:#a4794e;box-shadow:inset 0 3px #fffef2,0 4px #7e6349}.panel{border:3px solid #af91ba;box-shadow:0 5px #6d608022;background:#fffaf0}.badge{border:1px solid #ad8ac9}.badge.green{background:#dcf4bc;border-color:#83b777}.badge.gold{background:#ffe5a0;border-color:#c49240}
.arcade-horse{display:block;overflow:visible;image-rendering:pixelated;width:100%;height:auto;max-height:none}.pony-head{transform-origin:36px 37px;animation:pony-nod 9s ease-in-out infinite}.pony-breathe{transform-origin:58px 64px;animation:pony-breathe 5s ease-in-out infinite}.pony-mouth,.pony-tongue{opacity:0}.mouth-moving .pony-mouth,.mouth-moving .pony-tongue{animation:pony-talk .32s steps(2,end) infinite}.talking .pony-head{animation:pony-nod 1.2s ease-in-out infinite}.mane-detail{transform-origin:45px 20px;animation:mane-ripple 8s ease-in-out infinite}.mane-chestnut{filter:sepia(.5) saturate(.8)}.mane-midnight{filter:brightness(.4)}
@keyframes pony-breathe{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.007)}}@keyframes pony-nod{0%,83%,100%{transform:rotate(0)}87%{transform:rotate(-1deg)}93%{transform:rotate(1deg)}}@keyframes pony-talk{0%,49%{opacity:0}50%,100%{opacity:1}}@keyframes mane-ripple{0%,75%,100%{transform:rotate(0)}83%{transform:rotate(2deg)}90%{transform:rotate(-1deg)}}
.treasure-art{display:block;width:100%;height:auto;overflow:hidden;image-rendering:pixelated}.fitted-item{overflow:hidden}.horse-card .arcade-horse{width:90%;height:auto;max-height:280px;margin:0 auto 18px}
.stable-scene.arcade-stable,.title-landscape .stable-scene.arcade-stable,.world-card .stable-scene.arcade-stable{position:relative;display:block;width:100%;height:auto;aspect-ratio:3/2;background:#587345;overflow:hidden;border:4px solid #6c5149;border-radius:8px;isolation:isolate}
.arcade-stable .stable-background,.repair-layer,.repair-layer img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;image-rendering:pixelated}.repair-layer{pointer-events:none}.stable-name{position:absolute;top:8%;left:28%;width:38%;height:10%;display:grid;place-items:center;text-align:center;color:#432b21;font-family:ui-monospace,Consolas,monospace;font-weight:900;font-size:clamp(.55rem,1.7vw,1.25rem);text-shadow:0 1px #ffdc8c;transform:rotate(-.6deg)}.stable-repair-count{position:absolute;right:2%;top:3%;font-size:.66rem;background:#26373b;color:#ffe7a1;border:2px solid #c09456;padding:5px 8px;border-radius:5px}.arcade-stable-horse{position:absolute;left:34%;top:46%;width:29%;z-index:3}.placed-decoration{position:absolute;z-index:2}.placed-flowers{left:18%;top:43%;width:18%}.placed-bunting{left:28%;top:18%;width:43%;height:17%;overflow:hidden}.placed-bunting svg{width:100%;height:100%}.placed-lantern{left:70%;top:29%;width:10%;filter:drop-shadow(0 0 8px #ffca5c)}
.repair-reveal{animation:repair-reveal 2.6s steps(1,end) both}.repair-effect{position:absolute;z-index:5;width:24%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}.repair-hammer{position:absolute;z-index:4;left:35%;top:-10%;font-size:clamp(2rem,7vw,5rem);transform-origin:80% 70%;animation:hammer-build .38s steps(3,end) 5}.dust{position:absolute;inset:20%;background:#ecddbd;box-shadow:8px 0 #d8c6a0,-8px 0 #f9edce,0 8px #c9b795,0 -8px #f4e6c3;clip-path:polygon(20% 0,70% 0,70% 10%,90% 10%,90% 30%,100% 30%,100% 70%,90% 70%,90% 90%,60% 90%,60% 100%,20% 100%,20% 85%,0 85%,0 25%,20% 25%);animation:dust-puff 2.6s steps(8,end) both}.dust-two{--dust-x:55%;--dust-y:-20%;animation-delay:.12s}.dust-three{--dust-x:-60%;--dust-y:-10%;animation-delay:.2s}.dust-four{--dust-x:15%;--dust-y:-65%;animation-delay:.3s}.repair-spark{position:absolute;inset:25%;font-size:4rem;color:#fff394;animation:repair-spark 2.6s both}
@keyframes hammer-build{0%,100%{transform:rotate(-35deg)}65%{transform:rotate(20deg)}}@keyframes dust-puff{0%{opacity:0;transform:scale(.2)}12%,66%{opacity:.95;transform:translate(var(--dust-x,0),var(--dust-y,0)) scale(1.2)}100%{opacity:0;transform:translate(var(--dust-x,0),-75%) scale(2)}}@keyframes repair-reveal{0%,72%{visibility:hidden}73%,100%{visibility:visible}}@keyframes repair-spark{0%,75%{opacity:0;transform:scale(.1)}82%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(1.8)}}
.title-page{max-width:1240px;margin:auto}.title-landscape{max-width:850px}.title-menu{background:#fff4dce8;border:3px solid #8f688a}.home-columns{grid-template-columns:minmax(0,1.35fr) minmax(290px,1fr)}.welcome-message .guide-horse{width:115px;flex-shrink:0}.quest-card{background:linear-gradient(150deg,#fff9dd,#f4e1f6);border-color:#bd83ad}.character-credit img.girl-friend{mix-blend-mode:multiply}
.shop-wrap{max-width:1500px;padding:18px 24px 35px}.shop-world-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;max-width:1160px;margin:0 auto 14px}.shop-world-heading h1{font-size:1.6rem;margin:0}.shop-world-heading .eyebrow{font-size:.62rem}.shop-stage{position:relative;max-width:min(1160px,calc((100dvh - 160px)*1.5));margin:auto;border:4px solid #42625b;border-radius:12px;overflow:hidden;background:#77b967;box-shadow:0 7px #314e5933;isolation:isolate}.shop-camera{position:relative;aspect-ratio:3/2;transform-origin:var(--focus-x,50%) var(--focus-y,55%);transition:transform .8s cubic-bezier(.2,.7,.2,1)}.shop-background{display:block;width:100%;height:100%;object-fit:fill;image-rendering:pixelated}.shop-stage.zoomed .shop-camera{transform:scale(1.7)}.shop-stage.zoomed .shop-talk-bubble,.shop-stage.zoomed .shop-signs{opacity:0;pointer-events:none}.shop-merchant-position{position:absolute;left:41.5%;top:35%;width:17%}.merchant-button{display:block;width:100%;padding:0;background:none;border:0;min-height:0}.shopkeeper{position:relative;animation:merchant-breathe 5s ease-in-out infinite;transform-origin:50% 95%}.shopkeeper img{display:block;width:100%;image-rendering:pixelated}.shopkeeper:hover{filter:brightness(1.08)}.merchant-mouth{position:absolute;left:55%;top:50%;width:14%;height:5%;background:#402425;border-radius:0 0 50% 50%;opacity:0}.shopkeeper.mouth-moving .merchant-mouth{animation:pony-talk .3s steps(2,end) infinite}.shopkeeper.talking{animation:merchant-breathe 1s ease-in-out infinite}@keyframes merchant-breathe{0%,100%{transform:scaleY(1) rotate(0)}50%{transform:scaleY(1.012) rotate(.4deg)}}
.shop-glow{position:absolute;width:4%;height:5%;background:#ffe079;border-radius:50%;filter:blur(10px);mix-blend-mode:screen;animation:lantern-glow 2.8s ease-in-out infinite;pointer-events:none}.glow-one{left:25%;top:26%}.glow-two{left:69%;top:27%;animation-delay:-1s}@keyframes lantern-glow{0%,100%{opacity:.2;transform:scale(.8)}50%{opacity:.75;transform:scale(1.2)}}.butterfly{position:absolute;font-size:1.4rem;color:#ff81c2;text-shadow:2px 2px #62234b;animation:butterfly-drift 11s ease-in-out infinite;pointer-events:none}.butterfly-one{left:15%;top:62%}.butterfly-two{right:16%;top:54%;color:#ffc34e;animation-delay:-4s}@keyframes butterfly-drift{0%,100%{transform:translate(0,0) rotate(-12deg)}40%{transform:translate(40px,-30px) rotate(20deg)}75%{transform:translate(5px,-50px) rotate(-15deg)}}
.scene-bell{position:absolute;left:50%;top:54%;width:6%;height:7%;min-height:32px;border:0;background:none;color:transparent}.scene-bell:hover,.scene-bell:focus-visible{color:#fff2a6;background:#99612a88;border-radius:50%}.shop-talk-bubble{position:absolute;left:2%;top:56%;width:25%;max-width:230px;background:#fff9e9;border:3px solid #a8668b;border-radius:12px;padding:12px 15px;box-shadow:4px 4px #61496844;font-size:.8rem;transition:opacity .3s}.speaker-name{font-family:ui-monospace,Consolas,monospace;font-size:.65rem;letter-spacing:1.8px;color:#94447d;font-weight:900}.shop-talk-bubble p{margin:6px 0 0;line-height:1.4}.shop-talk-bubble .text-btn{min-height:30px;padding:4px 0;font-size:.72rem}.shop-signs{position:absolute;bottom:2%;left:7%;width:86%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;transition:opacity .3s}.shop-sign{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;background:linear-gradient(#fff1b0,#f2b761);border:3px solid #704837;border-radius:8px;padding:8px;color:#402846;box-shadow:inset 0 3px #fffbd0,0 5px #3b4143;transition:transform .18s}.shop-sign:hover{transform:translateY(-7px)}.shop-sign .treasure-art,.shop-sign .arcade-horse{width:54px;height:48px;margin-top:-4px}.shop-sign strong{font-size:.8rem;text-align:center}.shop-sign .small{font-size:.62rem}.sign-horses{background:linear-gradient(#ffd6ed,#f798c9)}.stable-sign-glyph{display:block;height:44px;font:bold 55px/.8 monospace;color:#347868}.stable-sign-glyph+.small{font-size:.7rem}.sign-tack{background:linear-gradient(#ded4ff,#b092e5)}.sign-decorations{background:linear-gradient(#d6ffe6,#93d7b6)}.shop-sign.sign-stable{background:linear-gradient(#ceffdf,#85cba7)}.shop-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:20px;margin:18px 0 0}.shop-bottom p{font-size:.8rem;margin:0}.shop-world .shop-bottom .btn{font-size:.8rem}.shop-wrap>.footer{max-width:1160px;margin:22px auto 0}
dialog.shop-panel{width:min(1080px,calc(100% - 50px));max-width:none;max-height:calc(100dvh - 44px);padding:0;border:4px solid #745282;border-radius:12px;background:#fff7e7;overflow:hidden;box-shadow:0 9px 0 #382d51aa;animation:panel-pop .25s ease-out}
dialog.shop-panel[open]{display:flex;flex-direction:column}dialog.shop-panel::backdrop{background:#14343866}.shop-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:17px 23px;background:linear-gradient(120deg,#43396a,#2f6770);color:#fff4c7;border-bottom:3px solid #efbc69;gap:15px}.shop-panel-heading h2{margin:0;font-size:1.6rem}.shop-panel-heading .eyebrow{color:#eacbed;font-size:.65rem;margin-bottom:5px}.shop-panel-heading .text-btn{font-size:1.5rem;color:#fff7d3;background:#ffffff18;border:2px solid #cec3e688;min-width:44px;line-height:1;border-radius:6px}.shop-panel-heading .actions{margin:0;gap:8px}.shop-panel-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:12px 20px;border-bottom:2px solid #ddc5ba;background:#f7dfb9}.shop-panel-tabs button{border:2px solid #ac87a7;background:#fff7e7;color:#553d61;padding:7px 11px;border-radius:6px;font-size:.8rem}.shop-panel-tabs [aria-pressed=true]{background:#ec9dcb;border-color:#925c90;box-shadow:inset 0 2px #ffcce6}
.shop-panel-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;padding:22px;overflow:auto;min-height:0;overscroll-behavior:contain}.shop-live-preview{align-self:start;position:sticky;top:0;text-align:center;min-width:0;background:linear-gradient(#b4e8ed 60%,#b5d582 60%);border:3px solid #79a89c;border-radius:10px;padding:15px;overflow:hidden}.shop-live-preview>.arcade-horse{max-height:300px}.shop-live-preview>.arcade-stable{border-width:2px}.shop-live-preview .stable-name{font-size:.48rem}.shop-live-preview p{font-size:.83rem;margin:10px 0 0;background:#fff9e9dd;padding:7px;border-radius:6px}.shop-panel-browse{min-width:0}.shop-panel-intro{font-size:.85rem;margin-bottom:16px;color:#66526e}.shop-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.shop-item-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fffdf0;border:2px solid #d1acbb;border-radius:9px;padding:14px 10px;min-width:0;box-shadow:0 3px #dbc4ab66}.shop-item-card>.treasure-art{height:100px;width:100px;max-width:100%;margin-bottom:8px}.shop-item-card h3{font-size:.93rem;margin:3px 0 9px}.shop-item-card p{font-size:.72rem;color:#6f5d75;line-height:1.5;margin:0 0 12px}.shop-item-card .btn{width:100%;margin-top:auto;font-size:.73rem;gap:5px;padding:7px}.shop-item-card .btn+.btn{margin-top:9px}.shop-item-card>.arcade-horse{max-height:155px}.shop-item-card .coin{width:22px;height:24px}.saving-note{font-size:.68rem;color:#71516f;margin-top:8px}.repair-card-icon{font-size:3.5rem;line-height:1.3;color:#917050;text-shadow:2px 2px #ffd782}.shop-panel-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 23px;border-top:2px solid #dcc4b9;background:#fae9ca;font-size:.74rem;flex-shrink:0}.shop-panel-footer .btn{font-size:.8rem}.purchase-art{max-width:180px;margin:0 auto 15px}.purchase-art>span{display:block;text-align:center;font-size:4rem}
.feeding-stage{position:relative;min-height:180px}.snack-hearts{position:absolute;inset:10% 0 auto;color:#e94597;font-size:2rem;opacity:0;pointer-events:none}.feeding .snack-hearts{animation:snack-hearts 2.4s both}.feeding #snack-pony{animation:happy-pony .4s ease-in-out 4}#feeding-treat{position:absolute;width:30%;left:15%;top:40%;opacity:0}.feeding #feeding-treat{animation:treat-nibble 1.8s both}@keyframes snack-hearts{0%{opacity:0;transform:translateY(25px) scale(.6)}30%,60%{opacity:1}100%{opacity:0;transform:translateY(-40px) scale(1.3)}}@keyframes happy-pony{50%{transform:translateY(-5px) rotate(-1deg)}}@keyframes treat-nibble{0%{opacity:0;transform:translateY(40px)}25%,75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:scale(.2)}}@keyframes panel-pop{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}
.quest-wrap{max-width:1240px}.quest-top .badge{background:#fff0a5;border:2px solid #c09047;color:#714520}.quest-layout{grid-template-columns:minmax(0,1fr) 300px;gap:25px}.question-panel{border:4px solid #568daa;background:linear-gradient(#e8faff,#fffaf0 300px);box-shadow:0 6px #33738d33;padding:22px}.question-meta .badge{background:#d8c3f6;color:#5c337b;border-color:#ac8bc5}.question-bubble{position:relative;background:#fffdf2;border:3px solid #b979ac;border-radius:20px 20px 20px 4px;padding:14px 20px 11px;margin:18px 0;box-shadow:5px 5px #bf96c52b;min-height:140px}.bubble-topline{display:flex;justify-content:space-between;gap:12px;align-items:center}.bubble-topline .text-btn{color:#774989;font-size:.76rem;background:#f2e3f6;border-radius:6px;padding:6px 10px;min-height:38px}.question-bubble h1{font-size:1.45rem;line-height:1.5;color:#3b3155;margin:9px 0 4px;min-height:2.5em}.reveal-words{font-size:.68rem;min-height:30px;padding:4px 0;color:#7d627f}.typing::after{content:'▌';color:#d768a1;animation:cursor-blink .65s steps(2,end) infinite}@keyframes cursor-blink{50%{opacity:0}}.choice{border:3px solid #b793c5;background:#fff6de;box-shadow:0 3px #ccb1da55;transition:transform .13s}.choice:nth-child(2n){background:#e3f6f3;border-color:#8cbeb6}.choice:nth-child(3n){background:#fbe6ef;border-color:#d298b9}.choice:hover{transform:translateX(3px)}.choice:has(input:checked){background:#cfefaf;border-color:#54945c;box-shadow:0 3px #589c6533}.question-panel input[name=answer]{border:3px solid #8dacc2;background:#fffefd;font-size:1.3rem;box-shadow:inset 0 3px #dce6f177}.question-panel .actions>.btn{border-width:3px}.question-panel .actions>.secondary{background:linear-gradient(#ffd2e7,#f1a1c8);border-color:#a6699e}.feedback{border:3px solid #79a258;box-shadow:0 4px #6ca27533;animation:panel-pop .25s ease-out}.feedback.retry{border-color:#d99b53}.feedback.review{border-color:#b58bd0}.help-step{background:#fff0bc;border:2px solid #d2a970;box-shadow:3px 3px #cbb79144}.passage{background:#fffdf2;border:2px solid #c8b17d;border-left:6px solid #b19b57;border-radius:6px}.progress-track{height:14px;border:2px solid #87638b;border-radius:6px;background:#e1d0e9}.progress-fill{background:repeating-linear-gradient(90deg,#f285ba 0 26px,#ffb6d7 26px 30px)}
.help-panel{position:relative;border:3px solid #c590ba;background:#fff2dc;padding:20px;overflow:visible}.help-panel>.guide-horse{width:175px;margin:-7px auto 12px}.help-panel h2{color:#824876;font-size:1.15rem}.minimise-daisy{position:absolute;right:8px;top:8px;background:#e6c7df;border:2px solid #bb8bb4;border-radius:6px;font-size:1.5rem;width:42px;z-index:4;padding:0}.daisy-callout{display:none;text-align:center}.daisy-callout>span{display:block;color:#d866a5;font-size:3rem;line-height:1.2;margin-bottom:15px}.daisy-callout p{font-size:.85rem}.daisy-away>:not(.daisy-callout){display:none!important}.daisy-away .daisy-callout{display:block}.daisy-away{background:linear-gradient(160deg,#f6e1f4,#fff5d5);border-style:dashed}.daisy-entering:not(.daisy-away)>.guide-horse{animation:daisy-arrive 1.4s ease-out both}.daisy-entering:not(.daisy-away)>.help-body{animation:bubble-arrive 1.6s ease-out both}.daisy-entering .pony-breathe{animation:pony-trot .23s ease-in-out 6}.daisy-entering .pony-head{animation:pony-trot .23s ease-in-out 6 reverse}@keyframes daisy-arrive{0%{transform:translateX(120vw)}100%{transform:translateX(0)}}@keyframes pony-trot{50%{transform:translateY(-1px) rotate(.7deg)}}@keyframes bubble-arrive{0%,65%{opacity:0;transform:scale(.85) translateY(8px)}100%{opacity:1;transform:none}}.option-preview .guide-horse,.auth-panel .guide-horse{width:150px;margin:0 auto 15px}.summary-character{width:200px}.wardrobe-preview .arcade-horse{max-height:260px}.wardrobe-item .treasure-art{width:90px;height:85px}.wardrobe-footer{background:#fff5e5}.gear-preview .arcade-horse{max-height:160px}.subject-shortcut{border:3px solid #b18faa;box-shadow:0 5px #6a537335}.subject-shortcut:hover{border-color:#774b89}
@media(max-width:950px){.home-columns{grid-template-columns:1fr}.shop-items{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-panel-layout{grid-template-columns:210px minmax(0,1fr)}.shop-talk-bubble{padding:9px;font-size:.7rem}.shop-talk-bubble .speaker-name{font-size:.55rem}.shop-signs{gap:8px}.shop-sign .treasure-art,.shop-sign .arcade-horse{width:40px;height:37px}.shop-sign strong{font-size:.7rem}.shop-sign .small{display:none}.stable-name{font-size:clamp(.6rem,2.8vw,1.3rem)}}
@media(max-width:640px){.topbar{height:auto;min-height:66px;gap:4px;padding:8px 10px}.brand{font-size:.7rem;gap:5px;letter-spacing:0}.top-actions{gap:2px}.topbar .balance{padding:3px 5px;font-size:.75rem}.topbar .text-btn{font-size:.68rem;padding:6px}.topbar .coin{width:20px;height:21px}.brand-icon{width:26px;height:26px}.shop-wrap{padding:15px 10px 25px}.shop-world-heading{align-items:flex-start}.shop-world-heading h1{font-size:1.3rem}.shop-world-heading .eyebrow{display:none}.shop-world-heading .btn{font-size:.67rem;padding:7px;min-height:42px}.shop-stage{max-width:100%;border-width:3px;overflow:hidden}.shop-talk-bubble{position:relative;left:auto;top:auto;width:auto;max-width:none;border-radius:0;border-width:2px 0 0;padding:10px 14px;display:flex;gap:10px;align-items:center;font-size:.78rem}.shop-talk-bubble .speaker-name{display:none}.shop-talk-bubble p{margin:0;flex:1}.shop-talk-bubble .text-btn{white-space:nowrap;font-size:.7rem}.shop-signs{position:relative;left:auto;bottom:auto;width:auto;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 10px;background:#46775f;gap:9px}.shop-sign{padding:8px 4px}.shop-sign strong{font-size:.7rem}.shop-sign .treasure-art,.shop-sign .arcade-horse{height:38px;width:44px}.shop-signs .stable-sign-glyph{height:38px}.shop-stage.zoomed .shop-talk-bubble,.shop-stage.zoomed .shop-signs{opacity:.2}.shop-bottom{gap:10px}.shop-bottom p{text-align:center;font-size:.72rem}.shop-world .shop-bottom .btn{font-size:.72rem}.shop-panel-layout{grid-template-columns:1fr;padding:13px;gap:14px}.shop-live-preview{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px;max-height:155px;min-height:120px}.shop-live-preview>.arcade-horse{width:130px;max-height:140px}.shop-live-preview>.arcade-stable{width:210px;max-height:140px;flex-shrink:0}.shop-live-preview .feeding-stage{width:130px;min-height:125px;flex-shrink:0}.shop-live-preview p{max-width:160px}.shop-panel-heading{padding:12px 14px}.shop-panel-heading h2{font-size:1.3rem}.shop-panel-heading .eyebrow{font-size:.55rem}.shop-panel-heading .actions{gap:5px}.shop-panel-heading .text-btn{min-width:40px;min-height:40px}.shop-panel-tabs{padding:10px;gap:5px}.shop-panel-tabs button{padding:6px;font-size:.68rem;flex:1;min-height:40px}.shop-panel-footer{padding:10px 13px;font-size:.66rem}.shop-panel-footer .btn{font-size:.7rem}.shop-panel-intro{font-size:.78rem}.shop-items{gap:10px}.shop-item-card>.treasure-art{width:86px;height:86px}.shop-item-card{padding:11px 8px}.shop-item-card h3{font-size:.87rem}dialog.shop-panel{width:calc(100% - 18px);max-height:calc(100dvh - 20px);border-width:3px}.quest-layout{grid-template-columns:1fr;gap:20px}.question-panel{padding:14px;border-width:3px}.question-bubble{padding:11px 13px;min-height:120px}.question-bubble h1{font-size:1.24rem;min-height:3em}.bubble-topline .speaker-name{font-size:.58rem;letter-spacing:1px}.bubble-topline .text-btn{font-size:.68rem;padding:6px}.help-panel{display:block}.help-panel>.guide-horse{width:160px}.help-panel h2{text-align:center}.daisy-away .daisy-callout{display:grid;grid-template-columns:1fr auto;gap:5px 12px;text-align:left;align-items:center}.daisy-callout>span{display:none}.daisy-callout h2{text-align:left;font-size:1rem;margin:0}.daisy-callout p{grid-column:1;margin:0;font-size:.77rem}.daisy-callout button{grid-column:2;grid-row:1/3;font-size:.76rem}.stable-repair-count{font-size:.55rem;padding:3px 5px}.question-panel .actions .btn{font-size:.85rem}.title-page{padding-top:20px}.title-landscape .arcade-stable{height:auto!important}.option-preview .guide-horse{width:150px}}
@media(orientation:landscape) and (max-height:520px){.shop-wrap{padding:8px 15px 20px}.shop-world-heading{margin-bottom:7px}.shop-world-heading h1{font-size:1.1rem}.shop-world-heading .eyebrow{display:none}.shop-world-heading .btn{font-size:.65rem;min-height:36px;padding:5px 9px}.shop-stage{max-width:620px;max-height:none}.shop-camera{aspect-ratio:2.3/1}.shop-background{object-fit:contain;background:#5c9a73}.shop-merchant-position{left:44.5%;top:35%;width:11.1%}.shop-signs{left:4%;width:92%;bottom:2%;gap:7px}.shop-sign .treasure-art,.shop-sign .arcade-horse,.stable-sign-glyph{display:none}.shop-sign{min-height:44px;padding:6px}.shop-sign strong{font-size:.67rem}.shop-talk-bubble{left:1%;top:28%;width:20%;font-size:.65rem;padding:7px}.shop-talk-bubble .text-btn{font-size:.62rem;min-height:25px}.shop-world .shop-bottom{margin-top:10px}.shop-world .shop-bottom p{display:none}.shop-bottom .btn{min-height:40px;padding:7px}.shop-panel-layout{grid-template-columns:150px minmax(0,1fr);padding:12px;gap:13px}.shop-live-preview{position:sticky;display:block;top:0;max-height:none;min-height:0;padding:8px}.shop-live-preview>.arcade-horse{width:100%;max-height:140px}.shop-live-preview>.arcade-stable{width:100%}.shop-live-preview .feeding-stage{width:100%;min-height:130px}.shop-live-preview p{font-size:.68rem}.shop-panel-heading{padding:8px 14px}.shop-panel-heading h2{font-size:1.1rem}.shop-panel-heading .eyebrow{display:none}.shop-panel-tabs{padding:6px 12px}.shop-panel-tabs button{min-height:38px;padding:5px 9px;font-size:.7rem}.shop-items{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-item-card>.treasure-art{width:65px;height:65px}.shop-item-card h3{font-size:.77rem}.shop-item-card p{font-size:.66rem}.shop-panel-footer{padding:6px 13px}.shop-panel-footer .btn{min-height:40px}.quest-layout{grid-template-columns:minmax(0,1fr) 230px;gap:15px}.help-panel>.guide-horse{width:125px}.question-bubble h1{font-size:1.14rem}.question-panel{padding:14px}.help-panel{padding:14px}.stable-name{font-size:1rem}dialog.shop-panel{max-height:calc(100dvh - 16px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.repair-effect{display:none}.repair-reveal{visibility:visible}.shop-stage.zoomed .shop-camera{transform:none}}
.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reduce-motion .repair-effect{display:none}.reduce-motion .repair-reveal{visibility:visible}.reduce-motion .shop-stage.zoomed .shop-camera{transform:none}

.daisy-kind{color:#8d517b;font-weight:700}.daisy-check-in{border-top:2px solid #dfc5c9;margin-top:15px;padding-top:13px}.daisy-check-in>p{font-size:.85rem;margin-bottom:10px}.daisy-choices{display:grid;gap:9px}.daisy-choices .btn{margin:0;font-size:.8rem}.extra-help{background:#e7f4ea;border:2px solid #b0c9ac;padding:11px;border-radius:7px;margin-top:12px}.extra-help p{margin:0}.help-step{font-size:1rem}.focus-lesson .coin-spin,.focus-lesson .girl-friend,.focus-lesson .pony-breathe{animation-play-state:paused}.focus-lesson .daisy-entering .pony-breathe{animation-play-state:running}.focus-lesson .guide-horse:not(.talking) .pony-head{animation-play-state:paused}.focus-lesson .guide-horse{animation-name:none}.focus-lesson .daisy-entering:not(.daisy-away)>.guide-horse{animation-name:daisy-arrive}

.arcade-horse{animation:none}.pony-front-leg{transform-origin:48px 68px;animation:pony-hoof 11s ease-in-out infinite}.pony-tail{transform-origin:84px 38px;animation:pony-tail 8s ease-in-out infinite}
@keyframes pony-hoof{0%,80%,92%,100%{transform:none}84%,88%{transform:translateY(-2px) rotate(-3deg)}}
@keyframes pony-tail{0%,72%,100%{transform:none}80%{transform:rotate(-2deg)}89%{transform:rotate(2deg)}}
.daisy-entering .pony-front-leg{animation:pony-step .23s ease-in-out 6}.daisy-entering .pony-tail{animation:pony-tail 1.4s ease-in-out}
@keyframes pony-step{50%{transform:translateY(-3px) rotate(-6deg)}}
.focus-lesson .pony-front-leg,.focus-lesson .pony-tail{animation-play-state:paused}.focus-lesson .daisy-entering .pony-front-leg,.focus-lesson .daisy-entering .pony-tail{animation-play-state:running}

.repair-hammer{width:55%;height:auto}.repair-hammer svg{display:block;width:100%;image-rendering:pixelated}

.shop-panel-capy{width:58px;flex:0 0 58px}.shop-panel-capy .shopkeeper{width:100%}

.quest-mission-card{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:12px 20px;align-items:center;margin:13px 0 10px;padding:16px 18px;border:4px solid #7b4775;border-radius:14px;background:linear-gradient(120deg,#fff0a4 0 52%,#ffd0e8);box-shadow:inset 0 3px #fff8dc,0 5px #513d5866;color:#4d3147}.quest-mission-copy h2{margin:2px 0 5px;font-size:1.45rem;line-height:1.15;color:#71395e}.quest-mission-copy p{margin:0;font-size:1rem;line-height:1.4}.quest-mission-label{font:900 .72rem/1.2 ui-monospace,Consolas,monospace;letter-spacing:1.2px;color:#a13f72}.quest-mission-count{display:grid;place-items:center;align-content:center;min-height:88px;padding:7px;border:3px solid #70425f;border-radius:12px;background:#fffaf0;text-align:center;box-shadow:inset 0 2px #fff,3px 3px #76536a33}.quest-mission-count strong{font:900 2.35rem/1 ui-monospace,Consolas,monospace;color:#b63f7d}.quest-mission-count span{font-size:.8rem;font-weight:900;line-height:1.15}.quest-checkpoints{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.quest-checkpoints.is-long{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.quest-checkpoints li{display:flex;align-items:center;justify-content:center;gap:7px;min-height:45px;border:3px solid #b58c9e;border-radius:9px;background:#fff7df;color:#775b68;font-weight:900}.quest-checkpoints li span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#dac0cc;color:#664955}.quest-checkpoints li small{font-size:.78rem}.quest-checkpoints li.is-current{border-color:#b33d7c;background:#ffd1e8;color:#713458;box-shadow:0 0 0 3px #fff7a6}.quest-checkpoints li.is-current span{background:#b33d7c;color:#fff}.quest-checkpoints li.is-done{border-color:#56875f;background:#dff3cf;color:#3f714a}.quest-checkpoints li.is-done span{background:#56875f;color:#fff}.question-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.question-meta>strong{color:#753c66}.question-count-badge{display:inline-grid;place-items:center;min-height:36px;padding:5px 10px;border:2px solid #a04775;border-radius:9px;background:#ffd7e9;color:#7d315d;font:900 .82rem/1 ui-monospace,Consolas,monospace}
@media(max-width:640px){.quest-mission-card{grid-template-columns:minmax(0,1fr) 92px;padding:13px;gap:10px}.quest-mission-copy h2{font-size:1.2rem}.quest-mission-copy p{font-size:.9rem}.quest-mission-count{min-height:76px}.quest-mission-count strong{font-size:1.9rem}.quest-checkpoints{gap:6px}.quest-checkpoints.is-long{grid-template-columns:repeat(4,minmax(0,1fr))}.quest-checkpoints li{min-height:41px;border-width:2px}.quest-checkpoints li small{font-size:.7rem}}
@media(orientation:landscape) and (max-height:520px){.quest-mission-card{grid-template-columns:minmax(0,1fr) 90px 280px;padding:9px 12px;gap:8px 12px}.quest-mission-copy h2{font-size:1.05rem}.quest-mission-copy p{font-size:.74rem}.quest-mission-count{min-height:64px}.quest-mission-count strong{font-size:1.55rem}.quest-checkpoints{grid-column:3;grid-row:1;gap:5px}.quest-checkpoints.is-long{grid-template-columns:repeat(6,minmax(0,1fr))}.quest-checkpoints li{display:grid;place-items:center;align-content:center;gap:1px;min-height:55px}.quest-checkpoints li small{font-size:.62rem}}
