.activity-panel{position:fixed;right:28px;top:112px;width:310px;z-index:7;padding:24px;max-height:calc(100vh - 135px);overflow:auto}.activity-panel h2{font-size:29px;line-height:1.08;letter-spacing:-1px;margin:16px 0 10px}.activity-panel p{font-size:13px;line-height:1.6;color:#647769}.activity-panel .primary{margin-top:18px}.activity-panel .eyebrow{font-size:9px;letter-spacing:1px}.fuel-display{display:flex;justify-content:center;align-items:center;gap:16px;padding:18px 0;font-size:29px}.fuel-display strong{font-size:22px;min-width:65px}.tank{width:48px;height:116px;border:3px solid #3d6850;border-radius:14px;position:relative;overflow:hidden;background:#e6ecda}.tank i{position:absolute;bottom:0;left:0;right:0;height:0;background:repeating-linear-gradient(to top,#b1cf76 0px,#b1cf76 20px,#d3e4a9 20px,#d3e4a9 23px);transition:height .1s}.pump-button{display:flex;align-items:center;justify-content:center;gap:12px;background:#f4d077;border:3px solid #ffe9a9;border-radius:18px;width:100%;min-height:78px;font-size:33px;user-select:none;touch-action:none;box-shadow:0 4px #d6ac56}.pump-button span{font-size:12px;font-weight:850;letter-spacing:.8px}.pump-button:disabled{opacity:.65;cursor:default}.activity-hero,.picked-flowers{font-size:38px;color:#db8779;text-align:center;padding:28px 0}.flavors{display:flex;gap:7px}.flavors button{flex:1;min-width:0;min-height:75px;padding:10px 4px;border:2px solid #e8ddc5;background:#fff6e5;border-radius:15px;font-size:28px}.flavors span{display:block;font-size:9px;font-weight:700;margin-top:5px}.flavors button:disabled{opacity:.6}.activity-count{text-align:center;font-size:11px!important}.ice-stack{height:173px;position:relative;margin:8px 0}.cone-shape{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:0;height:0;border-left:30px solid transparent;border-right:30px solid transparent;border-top:76px solid #d5a15f;filter:drop-shadow(0 4px 0 #bd864a)}.scoop{position:absolute;width:68px;height:49px;border-radius:50% 50% 40% 40%;left:50%;transform:translateX(-50%);box-shadow:inset -5px -6px #0000000a,0 3px 0 #00000010;animation:scoop-pop .25s ease-out}@keyframes scoop-pop{from{transform:translate(-50%,-20px) scale(.5)}to{transform:translate(-50%,0) scale(1)}}#nearby{position:fixed;bottom:120px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:6;white-space:nowrap}#nearby button{background:#fff9e8ee;border:2px solid #fffaf0;border-radius:24px;min-height:52px;padding:12px 20px;font-weight:750;font-size:14px;box-shadow:0 4px #54795022}#visit-friend{background:#f8dc97!important;animation:invite 2s ease-in-out infinite}@keyframes invite{50%{transform:translateY(-4px)}}.at-stop .controls{opacity:.15;pointer-events:none}.at-stop .controls button{pointer-events:none}.at-stop #caption,.at-stop #letter{display:none}.trip-memories{font-size:12px;line-height:1.8;color:#6e806b}.finish-card{max-height:94vh;overflow:auto}
.narrator-button{width:100%;min-height:48px;border-radius:15px;background:#e6f1dc;border:2px solid #fff;font-size:12px;font-weight:800;margin:2px 0 9px;box-shadow:0 3px #45654b1c}
@media(max-width:720px){.activity-panel{width:270px;right:14px;top:135px;padding:18px;max-height:calc(100vh - 150px)}.activity-panel h2{font-size:25px}#nearby{bottom:110px}#nearby button{font-size:12px;padding:10px 14px}.basket{z-index:4}}
@media(max-height:540px){.activity-panel{top:72px;right:16px;width:300px;padding:15px;max-height:calc(100vh - 82px)}.activity-panel h2{font-size:23px;margin:9px 0}.activity-panel p{font-size:11px;margin:5px 0}.fuel-display{padding:5px 0}.tank{height:64px}.pump-button{min-height:55px}.activity-panel .primary{margin-top:10px}.ice-stack{height:118px}.scoop{height:35px;width:52px}.cone-shape{border-top-width:56px;border-left-width:22px;border-right-width:22px}.flavors button{min-height:58px;font-size:22px}.activity-hero,.picked-flowers{padding:12px 0;font-size:31px}#nearby{bottom:92px}}
/* Thumb docks: scene information stays high; every game action lives at an edge. */
:root{--edge-l:max(18px,env(safe-area-inset-left));--edge-r:max(18px,env(safe-area-inset-right));--edge-b:max(18px,env(safe-area-inset-bottom));--dock:220px}
.controls{left:var(--edge-l);right:var(--edge-r);bottom:var(--edge-b);z-index:8}
.controls button{min-width:82px;min-height:82px}.steering,.actions{gap:12px}#boost{min-width:94px;min-height:94px}
.top-actions{position:fixed;left:var(--edge-l);bottom:calc(var(--edge-b) + 106px);gap:12px;z-index:9}.top-actions .icon{width:56px;height:56px}
#nearby{left:auto;right:var(--edge-r);bottom:calc(var(--edge-b) + 108px);transform:none;width:var(--dock);display:grid;gap:8px;white-space:normal;z-index:8}
#nearby button{min-height:56px;padding:8px 12px;font-size:13px}#hint{pointer-events:none;position:fixed;bottom:20px;left:50%;transform:translateX(-50%);font-size:9px;max-width:30vw;text-align:center}
#fork{inset:auto 0 calc(var(--edge-b) + 184px);transform:none;background:none;box-shadow:none;border:0;padding:0;pointer-events:none}
#fork>small{display:block;text-align:center}#fork>div{margin:0}#fork button{position:fixed;bottom:calc(var(--edge-b) + 184px);width:var(--dock);min-height:70px;pointer-events:auto;background:#fff3cc;box-shadow:0 4px #34504830}
#orchard{left:var(--edge-l)}#pond{right:var(--edge-r)}body:has(#fork:not([hidden])) #nearby{display:none}
.activity-panel{top:100px;right:var(--edge-r);bottom:auto;width:300px;padding:20px;max-height:calc(100dvh - 390px);overflow:auto}
.activity-panel h2{font-size:27px;margin:10px 0}.activity-panel p{margin:8px 0}.at-stop .controls{display:none}.at-stop .top-actions{bottom:calc(var(--edge-b) + 204px)}
.activity-panel .primary{position:fixed;bottom:var(--edge-b);left:var(--edge-l);width:var(--dock);min-height:60px;margin:0}
.pump-button,.flavors{position:fixed;right:var(--edge-r);bottom:var(--edge-b);width:var(--dock)}.flavors{gap:8px;flex-wrap:wrap}.flavors button{flex:1 0 60px;min-height:76px}
.word-tools{position:fixed;left:var(--edge-l);bottom:calc(var(--edge-b) + 72px);width:var(--dock);display:grid;grid-template-columns:1fr 1fr;gap:8px}
.word-tools button{min-height:56px;border-radius:16px;background:#fff3d8;border:2px solid white;font-size:12px;font-weight:750;padding:8px}.word-tools #animal-play{grid-column:span 2;background:#f5d57f}
.letter-tray{position:fixed;right:var(--edge-r);bottom:var(--edge-b);width:var(--dock);display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.letter-tray button{min-height:70px;border-radius:20px;font-size:30px;font-weight:850;background:#ffefd0;box-shadow:0 4px #b9a989;border:3px solid white;touch-action:manipulation}
.letter-tray button:disabled{opacity:.25;box-shadow:none}.letter-tray #word-again{grid-column:span 3;font-size:17px;min-height:56px;background:#cfe8b9}
.word-slots{display:flex;justify-content:center;gap:7px;margin-top:18px}.word-slots span{display:grid;place-items:center;border:2px dashed #9cb199;border-radius:12px;width:43px;height:52px;font-size:27px;font-weight:850;color:#91a189}.word-slots .filled{border-style:solid;background:#dcebc3;color:#315a48}
#word-feedback{text-align:center;font-weight:700;min-height:42px}.hint-letter{outline:4px solid #427257;animation:invite 1.5s infinite}.try-again{animation:gentle-wiggle .3s}@keyframes gentle-wiggle{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.modal .primary{position:fixed;right:var(--edge-r);bottom:var(--edge-b);width:var(--dock);min-height:60px}.modal .secondary{position:fixed;left:var(--edge-l);bottom:var(--edge-b);width:var(--dock);min-height:60px;margin:0}.modal .panel{margin-bottom:90px;max-height:calc(100dvh - 150px)}
.intro{top:100px;bottom:auto;max-height:calc(100dvh - 350px);overflow:auto}.intro fieldset{position:fixed;width:var(--dock);background:#fffcf1ed;padding:12px;border-radius:20px;margin:0}.intro fieldset:first-of-type{left:var(--edge-l);bottom:var(--edge-b)}.intro fieldset:nth-of-type(2){right:var(--edge-r);bottom:calc(var(--edge-b) + 76px)}.intro .gentle{position:fixed;right:var(--edge-r);bottom:calc(var(--edge-b) + 182px);width:var(--dock);min-height:48px;background:#fffcf1ed;padding:10px;border-radius:16px;margin:0}.gentle span{display:none}.gentle input{width:26px;height:26px}.intro .primary{position:fixed;right:var(--edge-r);bottom:var(--edge-b);width:var(--dock);min-height:60px}.colors button{width:44px;height:44px}.friends button{min-height:56px}.friends span{display:none}
@media(max-width:600px){:root{--dock:160px;--edge-l:max(10px,env(safe-area-inset-left));--edge-r:max(10px,env(safe-area-inset-right))}.controls button{min-width:66px;min-height:72px}#boost{min-width:78px;min-height:82px}.steering,.actions{gap:8px}.letter-tray{gap:6px}.letter-tray button{min-height:58px;font-size:25px}.word-tools button{font-size:11px}.activity-panel{top:120px;width:260px;max-height:calc(100dvh - 420px)}.intro{width:290px;top:70px;max-height:calc(100dvh - 360px)}.intro .colors{gap:2px}.colors button{width:32px;height:44px}.intro fieldset{padding:10px}.intro h1{font-size:48px}.intro h1 i{display:none}#hint{display:none}}
@media(max-height:600px){.activity-panel{top:64px;max-height:calc(100dvh - 260px);width:280px;padding:10px 16px}.activity-panel h2{font-size:21px}.activity-panel .eyebrow,.activity-panel #activity-help{display:none}.word-slots{margin-top:7px}.word-slots span{height:38px}.intro{top:64px;max-height:calc(100dvh - 190px);width:280px}.intro h1{font-size:36px}.intro-foot{display:none}#hint{display:none}}
@media(prefers-reduced-motion:reduce){.hint-letter,#visit-friend,.try-again{animation:none}}

/* Director cycle 001: hint is a preview, not a placed tile. */
.word-slots .ghost-letter{color:#729663;background:#f5f8ed;border-style:dashed;font-weight:500}
.at-stop .basket{display:none}

.friend-postcard{background:#fff4d9;border:2px dashed #d4b982;border-radius:14px;padding:10px;margin-top:10px;text-align:center}.postcard-heading{font-size:11px;font-weight:850;color:#486552}.postcard-stickers{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:6px}.friend-sticker{display:grid;place-items:center;min-width:37px}.friend-sticker b{font-size:26px;line-height:1.15}.friend-sticker small{font-size:9px;font-weight:750}.friend-postcard p{font-size:10px!important;margin:6px 0 0!important;line-height:1.2!important}#arrival-postcard .friend-postcard{margin:12px 0 0}
@media(max-height:760px){#stop-postcard .friend-postcard{padding:6px;margin-top:6px}#stop-postcard .friend-postcard p{display:none}#stop-postcard .friend-sticker b{font-size:22px}.activity-panel #word-feedback{min-height:0;margin:7px 0}}
@media(max-height:600px){#stop-postcard .postcard-heading{display:none}#stop-postcard .friend-postcard{padding:3px;margin-top:3px}#stop-postcard .postcard-stickers{margin:0}#stop-postcard .friend-sticker{display:flex;gap:3px}.activity-panel{max-height:calc(100dvh - 250px)}}

.letter-tray .word-choice{grid-column:span 3;min-height:58px;font-size:25px;letter-spacing:3px}
