/* The play scene owns its HUD and one continuous learning / input tray. */
.shell{max-width:1320px;padding:0 18px}header{height:58px}.brand{font-size:19px}.brand-icon{font-size:29px}.nav{font-size:12px}.wallet{gap:12px}.intro,.objective-bar,footer,.bottom-layout{display:none!important}
.game-layout,body[data-phase=cook] .game-layout{display:block;border:1px solid #66857766;border-radius:12px;overflow:hidden;background:#102b33;width:min(100%,calc((100dvh - 78px)*1.5));margin:12px auto 0}
.world-panel,body[data-mode=typing] .world-panel{position:relative;top:0;display:block;width:100%;max-width:none!important;aspect-ratio:3/2;height:auto;max-height:none;border:0;border-radius:0;box-shadow:none;overflow:hidden}
.world-panel canvas#world,body[data-mode=typing] .world-panel canvas#world{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;min-height:0!important;background:#174b55;image-rendering:pixelated}
.play-toolbar{position:absolute;z-index:4;top:12px;left:14px;right:14px;display:flex;align-items:center;gap:14px;min-height:40px;padding:5px 9px;border:1px solid #c3d3b036;border-radius:8px;background:#102f39ed;box-shadow:0 3px 12px #0c27353b;backdrop-filter:blur(8px)}
.journey{font-size:11px;gap:7px}.play-toolbar .stats{gap:12px}.play-toolbar .stats small{font-size:9px}.play-toolbar .stats b{font-size:13px;margin:0}.toolbar-actions{margin-left:auto;display:flex;flex-wrap:nowrap;gap:4px}.toolbar-actions button{min-height:30px;padding:5px 9px;font-size:10px;white-space:nowrap;border-color:transparent;background:#28454b}.toolbar-actions button:hover{background:#406061}.scene-label{position:absolute;z-index:2;top:63px;left:16px;right:16px;padding:0;font-size:11px;color:#fff3d2;pointer-events:none;text-shadow:0 1px 3px #12333c}.scene-tag{margin-left:auto;background:#14313ca8;padding:5px 9px;border:1px solid #d5ddae33;border-radius:5px;font-size:9px}.scene-expand{pointer-events:auto;font-size:20px}.scene-bottom{display:none}
.scene-meters{position:absolute;right:20px;top:107px;width:185px;z-index:2}.scene-meters .fish-meters{display:grid;padding:10px 12px;margin:0;border:1px solid #c3d3b050;border-radius:7px;background:#102f39ed;gap:9px}.scene-meters .fish-meters label{font-size:10px}.scene-meters .fish-meters label>span{height:5px}
.side,body[data-phase=cook] .side,body[data-mode=typing] .side,body[data-phase=cook][data-mode=typing] .side{position:absolute;z-index:3;bottom:16px;left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:740px;display:grid;grid-template-columns:1fr auto;gap:0 15px;padding:16px 20px;border:1px solid #b6c39c88;border-radius:11px;background:linear-gradient(120deg,#15343af7,#102932fc);box-shadow:0 10px 35px #06253570;backdrop-filter:blur(12px)}
.side .action-card{grid-column:1/-1;display:block;background:none;padding:0;border:0;margin:0;min-width:0}.side .action-card>.row{margin-bottom:12px;align-items:center}.side .action-card h2{font-size:16px;margin:0}.side .action-card .pill{font-size:10px;padding:5px 9px;white-space:nowrap}.side>.eyebrow,.side>h2,.side>p,.side>.divider,.side>.row,.side>.tip{display:none}.side .setup{display:flex;align-items:stretch;gap:14px;margin:0}.side .setup>label{display:none}.bait-choices{display:flex;gap:8px;flex:1}.bait-choices button{display:flex;align-items:center;gap:4px;flex:1;min-width:0;border:1px solid #5d797266;border-radius:7px;background:#132c33;color:#d4dfce;padding:4px 8px;text-align:left}.bait-choices button[aria-pressed=true]{background:#3a4e40;border-color:#dfbd7a;box-shadow:inset 0 0 0 1px #dfbd7a25}.bait-choices canvas{flex:0 0 54px!important;width:54px!important;height:36px!important;min-height:0!important;aspect-ratio:auto;background:none!important}.bait-choices b{display:block;font-size:12px}.bait-choices small{display:block;font-size:9px;color:#9db5a6;line-height:1.5;margin-top:3px}.side .setup>.primary{flex:0 0 144px;font-size:14px;min-height:58px;background:#ddbc79;color:#173936;font-weight:800;border:1px solid #f2d393;box-shadow:0 3px #957e4d}.side .message{grid-column:1/-1;font-size:11px;line-height:1.6;margin:0;padding-top:10px;min-height:0;color:#a5bfb0}.side .wide{grid-column:2;justify-self:end;width:auto;margin:10px 0 0;padding:8px 14px;min-height:34px;font-size:11px}.side .service-summary{grid-column:1;display:flex;align-items:center;gap:10px;margin:10px 0 0;padding:0;background:none;border:0;order:initial}.side .service-summary p,#servicePause{display:none}.side .service-summary .row>b,.service-metrics{font-size:10px}.side .menu-today{font-size:10px;margin:0;padding:0 0 4px}.side .recipes{display:flex;gap:8px;max-height:133px;margin:6px 0 0;overflow:auto;scrollbar-width:thin}.side .order-ticket{flex:1 0 185px;min-width:185px;max-width:300px;padding:10px;border-radius:6px}.side .order-ticket b{font-size:13px}.side .order-ticket small{font-size:10px}.side .ticket-top,.side .ticket-action{font-size:10px}.side .ticket-top>span,.side .order-ticket .dish-icon{display:none}.side .order-empty{font-size:12px;padding:8px}.table-hotspot{width:10.5%;min-width:0;max-width:none;padding:6px 4px;background:#173238f5;border:1px solid #c3a977;border-radius:5px;backdrop-filter:none}.table-hotspot strong{font-size:10px;white-space:normal;line-height:1.3}.table-hotspot small{font-size:8px;letter-spacing:0;line-height:1.3}.table-hotspot.waiting::after{content:'';position:absolute;left:calc(50% - 4px);bottom:-5px;width:8px;height:8px;transform:rotate(45deg);background:#173238;border-right:1px solid #c3a977;border-bottom:1px solid #c3a977}.table-hotspot.empty,.table-hotspot.locked{padding:3px;background:#221b16a6;border-color:#cfb58430}.table-hotspot.empty strong,.table-hotspot.locked strong{font-size:9px}.fishing-spot{font-size:10px;padding:5px 9px;min-height:29px;box-shadow:0 3px 10px #0a415266}.fishing-spot[aria-pressed=true]{background:#f0d399;color:#234943;border-color:#fff0c4}
/* One reading direction: meaning -> expression -> your answer. */
body[data-mode=typing] .side{max-width:700px;padding:13px 20px 11px;display:block}body[data-mode=typing] .side .action-card>.row,body[data-mode=typing] #setup,body[data-mode=typing] #recipes,body[data-mode=typing] #menuToday,body[data-mode=typing] #phase,body[data-mode=typing] #serviceSummary,body[data-mode=typing] .side .message{display:none!important}.side .typing{margin:0}.typing>.row{display:none}.lesson-meta{display:flex;align-items:center;gap:12px;margin:0 0 7px;color:#b2c9b6;font-size:10px}.lesson-meta .stage-steps{display:none}.lesson-meta #challengeLabel{font-size:12px;color:#f5d18f;font-weight:700}.lesson-meta #time{margin-left:auto;min-width:43px;text-align:right;font-size:12px;font-variant-numeric:tabular-nums}.course-caption{font-size:10px;color:#8eafa1;margin:0 0 8px;line-height:1.4}.prompt-card{border-top:1px solid #91af9750;padding:10px 0 0}.meaning-row{display:flex;align-items:baseline;gap:9px;margin:0 0 4px;line-height:1.5}.meaning-row #meaningLabel{font-size:10px;white-space:nowrap;color:#93b3a2}.side .meaning-row .lesson-hint{font-size:15px;margin:0;color:#d9e2ca;line-height:1.5}.word-block .answer-instruction{margin:3px 0 0!important;font-size:10px!important;color:#8da99a;line-height:1.3}.side .word-block .target{font-size:27px;font-weight:650;letter-spacing:.2px;line-height:1.3;margin:4px 0 11px;min-height:35px;color:#ffe4a7;overflow-wrap:anywhere}.side .target.meaning-only{font-size:18px;font-weight:400;color:#b2c5b5}.answer-entry{display:flex;gap:8px}.side .answer-entry #input{font-size:20px;line-height:1.3;height:45px;min-height:45px;min-width:0;padding:9px 12px;border:1px solid #96b99c;border-radius:6px;background:#25454a;color:#f7f8e6;letter-spacing:.2px}.side .answer-entry #input::placeholder{font-size:13px;color:#94afa3}.answer-entry button{font-size:12px;min-width:78px;background:#bdddaf;color:#153b32;font-weight:700}.side .typing small#typingHelp{display:block;font-size:10px;color:#8dad9c;margin-top:5px;line-height:1.5}.input-feedback:empty{display:none}.input-feedback{font-size:11px;color:#ffc0a7;line-height:1.5;margin-top:7px}.answer-choices:empty{display:none}.answer-choices{margin:4px 0 8px}.answer-choices span{font-size:11px;padding:4px 8px}.side .lesson-tools{display:inline-flex;gap:5px;margin:8px 0 0}.side .lesson-tools button{min-height:26px;font-size:10px;padding:4px 7px;background:none;border-color:#71928044}.side .lesson-tools #cancelRound{font-size:9px}.side .live-metrics{float:right;display:inline-block;font-size:9px;margin:15px 0 0;color:#7f9e8e}.typing>.track{height:2px;margin:6px 0 0;opacity:.65}.side #typing[data-stage=bite],.side #typing[data-stage=warning]{padding:0;border:0;background:none}.typing[data-stage=bite] .prompt-card,.typing[data-stage=warning] .prompt-card{border-color:#e9b676}.waiting-cue{min-height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#abcaba}.waiting-cue b{font-size:18px;color:#f5d493}.waiting-cue span{font-size:11px;text-align:center}.waiting-cue .bobber-symbol{font-size:23px;color:#eea377}.typing:is([data-stage=waiting],[data-stage=casting],[data-stage=hooked]) .lesson-tools button:not(#cancelRound),.typing:is([data-stage=waiting],[data-stage=casting],[data-stage=hooked]) .live-metrics,.typing:is([data-stage=waiting],[data-stage=casting],[data-stage=hooked])>.track,.typing:is([data-stage=waiting],[data-stage=casting],[data-stage=hooked]) #time{display:none}.heat-game{margin:7px 0 9px}.heat-scale{height:18px}.heat-labels{font-size:9px}.side .round-result{display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1;margin:8px 0 0;padding:7px 10px}.side .result-badge{font-size:19px}.side .round-result>span{font-size:10px}.side .round-result .result-lesson{flex-basis:100%;line-height:1.5}.pause-overlay{z-index:8}.pause-overlay b{font-size:22px}.pause-overlay button{padding:10px 25px}
#bagDialog .bag-item{display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px;font-size:13px;background:#254049;border:1px solid #67837266}#bagDialog .bag-item canvas{width:112px;height:56px;image-rendering:pixelated}.characters-dialog{width:min(780px,94vw)}.character-profile{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:24px;padding:25px 0 20px;border-bottom:1px solid #8fa08344}.character-profile canvas{width:160px;height:auto;image-rendering:pixelated}.character-profile h3{font-size:27px;margin:6px 0 10px;color:#efd29a}.character-profile b{font-size:12px;color:#acbcaa}.character-profile blockquote{margin:14px 0 8px;font-size:15px;color:#e9d7ae}.character-profile p{font-size:12px;color:#aac2b5;margin:0 0 9px}.character-profile small{font-size:10px;color:#799c8e;line-height:1.8}.catch-dialog{position:fixed;width:min(560px,94vw);max-height:94dvh;overflow:auto;padding:25px 24px 20px;border:1px solid #9fb795;border-radius:18px;color:#f1dfb7;background:radial-gradient(ellipse at 50% 40%,#3e756a,#133e49 75%);text-align:center;box-shadow:0 20px 80px #001820b0}.catch-dialog::backdrop{background:#031c2be3;backdrop-filter:blur(5px)}.catch-dialog>.eyebrow{color:#bcd0b2;letter-spacing:3px}.catch-dialog h2{font-size:20px;margin:10px 0 0}.catch-close{position:absolute;right:12px;top:9px;background:none;color:#e6d9b7;border:0;font-size:27px;width:34px;height:34px}.catch-dialog #catchPortrait{display:block;width:100%;height:auto;max-height:285px;object-fit:contain;image-rendering:pixelated;margin:-4px auto -12px}.catch-paper{position:relative;background:#f6ead0;color:#294d46;border:1px solid #ddc9a2;border-radius:15px;padding:16px 24px 18px;box-shadow:0 6px 0 #0e343640}.catch-paper #catchRarity{font-size:11px;color:#678171}.catch-paper h3{font-size:25px;margin:8px 0}.catch-paper #catchQuote{font-size:13px;margin:7px 0 15px;color:#537366}.catch-paper #catchLearning{display:grid;gap:5px;border-top:1px solid #b7bfa480;padding:12px 0 9px}.catch-paper #catchLearning small{font-size:10px;color:#839075}.catch-paper #catchLearning b{font-size:20px}.catch-paper #catchLearning span{font-size:12px;color:#658474}.catch-paper #catchLearning p{font-size:11px;color:#7d8c76;line-height:1.7;margin:5px 0}.catch-paper button{width:100%;padding:12px;margin-top:8px}.catch-paper .primary{background:#32685b;color:#fff2ce;font-size:13px}.catch-paper #catchToKitchen{background:none;border:0;font-size:12px;color:#4c7866}.expanded-play .shell{max-width:none}.expanded-play header{display:none}.expanded-play .game-layout{width:min(100%,calc((100dvh - 24px)*1.5));margin-top:10px}
@media(min-width:721px) and (max-height:760px){.side,body[data-mode=typing] .side{bottom:10px;padding:11px 18px}.side .word-block .target{font-size:25px;margin-bottom:8px}.side .action-card>.row{margin-bottom:8px}.course-caption{margin-bottom:5px}.side .setup>.primary{min-height:50px}.side .lesson-tools{margin-top:5px}.side .message{padding-top:7px}.side .wide{margin-top:7px}}
@media(max-width:1050px){.play-toolbar .stats small{display:none}.play-toolbar{gap:8px}.toolbar-actions button{padding:5px 7px}.journey{font-size:10px}}
@media(max-width:720px){.shell{padding:0 8px}header{height:auto;min-height:55px;padding:8px 0;gap:6px;flex-wrap:wrap}.brand{font-size:17px}.brand-icon{font-size:24px}.wallet{gap:6px}.wallet b{font-size:10px;padding:6px 8px}header nav{width:100%;order:3;height:27px;gap:25px}.nav{font-size:10px}.game-layout,body[data-phase=cook] .game-layout{width:100%;margin:8px auto}.world-panel,body[data-mode=typing] .world-panel{aspect-ratio:auto;height:auto;max-height:none}.play-toolbar{position:relative;top:auto;left:auto;right:auto;border:0;border-radius:0;margin:0;padding:8px;flex-wrap:wrap;gap:7px;min-height:76px;background:#17353e}.play-toolbar .stats{margin-left:auto}.play-toolbar .stats b{font-size:12px}.journey{font-size:11px}.toolbar-actions{width:100%;margin:0;justify-content:space-between;gap:3px}.toolbar-actions button{font-size:10px;padding:5px 6px;min-height:30px;flex:1}.world-panel canvas#world,body[data-mode=typing] .world-panel canvas#world{width:100%;height:auto;aspect-ratio:3/2;max-height:none;object-fit:contain}.scene-label,body[data-mode=typing] .scene-label{top:87px;left:10px;right:10px;font-size:9px;padding:0}.scene-tag{font-size:8px;padding:3px 5px}.scene-expand{font-size:18px}.fishing-spots,.table-hotspots{top:76px!important;bottom:auto!important;height:calc((100vw - 18px)*2/3)!important}.fishing-spot{font-size:8px;padding:4px 6px;min-height:26px}.scene-meters{top:116px;right:9px;width:128px}.scene-meters .fish-meters{padding:6px 7px;gap:6px}.scene-meters .fish-meters label{font-size:8px}.side,body[data-phase=cook] .side,body[data-mode=typing] .side,body[data-phase=cook][data-mode=typing] .side{position:relative;left:auto;bottom:auto;transform:none;width:100%;max-width:none;padding:13px 12px;border:0;border-top:1px solid #829f8155;border-radius:0;box-shadow:none}.side .action-card h2{font-size:14px}.side .setup{flex-wrap:wrap;gap:9px}.bait-choices{flex-basis:100%;gap:6px}.bait-choices button{padding:5px 7px}.bait-choices canvas{width:48px!important}.bait-choices b{font-size:12px}.bait-choices small{font-size:9px}.side .setup>.primary{flex-basis:100%;min-height:41px;font-size:13px}.side .wide{font-size:11px;grid-column:1/-1;width:100%;min-height:36px}.side .message{font-size:10px}.side .service-summary{grid-column:1/-1;justify-content:space-between}.side .recipes{max-height:132px}.side .order-ticket{flex-basis:180px;min-width:180px}.table-hotspot{padding:3px 2px;width:11.5%}.table-hotspot small{font-size:6px}.table-hotspot strong{font-size:7px;max-height:20px;overflow:hidden}.table-hotspot.empty strong,.table-hotspot.locked strong{display:none}body[data-mode=typing] .table-hotspots{display:block}.lesson-meta #challengeLabel{font-size:11px}.course-caption{font-size:9px}.side .meaning-row .lesson-hint{font-size:14px}.side .word-block .target{font-size:24px;min-height:31px;margin-bottom:10px}.side .target.meaning-only{font-size:16px}.side .answer-entry #input{font-size:18px;min-height:44px;height:44px}.answer-entry button{min-width:65px;font-size:11px}.side .live-metrics{float:none;display:block;font-size:9px;margin-top:6px}.side .lesson-tools button{font-size:10px;min-height:30px;padding:5px 7px}.side .typing small#typingHelp{font-size:10px}.waiting-cue{min-height:110px}.waiting-cue b{font-size:16px}.waiting-cue span{font-size:10px}.pause-overlay{justify-content:flex-start;padding-top:170px}.character-profile{grid-template-columns:100px 1fr;gap:12px;padding:18px 0}.character-profile canvas{width:100px}.character-profile h3{font-size:23px}.character-profile b{font-size:10px}.character-profile blockquote{font-size:13px}.character-profile p{font-size:11px}.catch-dialog{padding:20px 12px 14px}.catch-dialog h2{font-size:17px}.catch-dialog #catchPortrait{max-height:220px}.catch-paper{padding:14px}.catch-paper h3{font-size:22px}.catch-paper #catchLearning b{font-size:18px}.expanded-play .game-layout{width:100%}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
.side #phase{background:#193d41;color:#f2d59b;box-shadow:none;border:1px solid #9c9f70}.side #phase.ready{background:#2d4941;color:#ffe3a6;border-color:#bcaa75}.side #phase:hover:not(:disabled){background:#456153}.side .action-card .pill{color:#bdcfb8;background:#24464b}.catch-dialog #catchPortrait{max-height:240px}.catch-paper{padding-top:12px;padding-bottom:12px}.catch-paper #catchLearning{padding:9px 0 5px}.catch-paper #catchQuote{margin-bottom:10px}.catch-paper button{margin-top:4px;padding:10px}.catch-paper #catchLearning p{margin:3px 0}.bag-item small{display:block;color:#a1b4a1;font-size:10px;margin-top:4px}.phrase-notebook{padding:24px;border:1px solid #72917c55;border-radius:12px;background:#18343d;margin-bottom:35px}.phrase-notebook h2{margin:7px 0}.phrase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-top:17px}.phrase-grid article{border:1px solid #74978555;padding:18px;border-radius:8px;background:#102a34}.phrase-grid small{font-size:10px;color:#94b4a1}.phrase-grid h3{font-size:21px;color:#f2d395;margin:12px 0}.phrase-grid p{font-size:13px;color:#afc5b4}.phrase-grid .phrase-note{font-size:12px;color:#90ad9a;line-height:1.8}.phrase-grid article>div{display:flex;gap:8px}.phrase-grid button{font-size:11px;padding:8px 10px;border:1px solid #7b947766;border-radius:5px;background:#284840;color:#decda8}body[data-phase=cook] #expandScene{display:block}@media(max-width:720px){.phrase-notebook{padding:15px}.phrase-notebook .row{flex-wrap:wrap}.phrase-grid{grid-template-columns:1fr}.catch-dialog #catchPortrait{max-height:205px}}
#bagDialog .bag-item canvas{height:80px}
/* Mixed lessons and a browsable collection / learning workshop. */
body[data-mode=typing]:not([data-exercise=typing]) .answer-entry{display:none}body[data-mode=typing]:not([data-exercise=typing]) .side .word-block .target{font-size:18px;min-height:24px;margin-bottom:8px}body[data-mode=typing][data-exercise=action] #revealHint,body[data-mode=typing][data-exercise=action] #pronounce{display:none}.exercise-area{margin:7px 0;display:grid;gap:8px}.exercise-area button{border:1px solid #789983;border-radius:7px;background:#2d514c;color:#ecdfc0;font-size:14px;padding:10px 13px;min-height:39px}.choice-grid{grid-template-columns:1fr 1fr}.exercise-area .incorrect-choice{border-color:#db8870;color:#eab6a4}.exercise-area .primary{background:#d8be83;color:#193c36;font-weight:700}.exercise-audio,.word-bank,.sentence-build{display:flex;flex-wrap:wrap;gap:6px}.exercise-audio button{font-size:11px;padding:6px 10px}.sentence-build{min-height:43px;padding:7px;border:1px dashed #94b49666;border-radius:6px;background:#0e2a31}.sentence-build>span{font-size:11px;color:#83a899;padding:5px}.sentence-build button,.word-bank button{padding:6px 10px;min-height:31px;font-size:13px}.word-bank button:disabled{opacity:.18}.action-trigger{font-size:19px!important;min-height:50px!important}.side .bait-choices{gap:5px}.bait-choices button{padding:4px 5px}.bait-choices canvas{flex-basis:38px!important;width:38px!important}.bait-choices small{font-size:8px}.bait-choices b{font-size:11px}.side .setup>.primary{flex-basis:115px}.academy-dialog{width:min(1040px,96vw)}.academy-dialog #academyProgress{padding:12px;background:#294d43;border:1px solid #80997455;border-radius:7px;color:#e4d7b0}.academy-tabs{display:flex;gap:7px;margin:18px 0}.academy-tabs button{padding:10px 18px;border:1px solid #75977b66;background:#24473f;color:#bbcdb6;border-radius:6px;font-size:13px}.academy-tabs button[aria-pressed=true]{background:#d9bd7c;color:#173e35}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.catalog-card{padding:15px;background:#102a34;border:1px solid #71968366;border-radius:10px;display:flex;flex-direction:column;align-items:stretch}.catalog-card>canvas{width:160px;height:100px;align-self:center;image-rendering:pixelated}.catalog-kind{font-size:10px;color:#9db798}.catalog-card h3{font-size:19px;color:#f0d294;margin:8px 0}.catalog-card p{font-size:11px;color:#aac0aa;line-height:1.8;margin:3px 0 12px}.catalog-card .primary{margin-top:auto;padding:9px;font-size:11px;background:#447c68;color:#f3ebca;box-shadow:none;min-height:36px}.catalog-card button:disabled{opacity:.55}.mastery-panel{white-space:pre-line;font-size:11px;line-height:1.9;background:#2d493d;padding:9px;border-radius:5px;margin:0 0 13px;color:#d4c59f}.recipe-steps-toggle{border:0;background:none;color:#94baa2;font-size:11px;margin-top:9px}.catalog-card ol{padding-left:18px;font-size:11px;color:#adc5ac;line-height:1.8}.training-dialog{width:min(680px,94vw)}#trainingMeaning{font-size:16px;color:#c9d6b9}#trainingTarget{display:block;font-size:24px;color:#f2d498;line-height:1.5;margin:16px 0}#trainingInput{display:block;width:100%;padding:12px;margin-bottom:12px;background:#1d4045;color:#f4e4c0;border:1px solid #8aa986;border-radius:6px;font-size:18px}#trainingFeedback{min-height:24px}.learning-settings .listening-setting{display:flex;gap:8px;align-items:center;font-size:12px}.listening-setting input{width:auto}.side .recipe-steps-toggle{font-size:10px}
@media(min-width:721px){body[data-mode=typing]:not([data-exercise=typing]) .side{max-width:790px;padding:11px 18px}.game-layout,body[data-phase=cook] .game-layout{width:min(100%,calc((100dvh - 76px)*1.5))}.play-toolbar{left:10px;right:10px;gap:8px}.toolbar-actions button{padding:5px 7px}.play-toolbar .stats small{display:none}}
@media(max-width:720px){.catalog-grid{grid-template-columns:1fr}.academy-tabs{gap:4px;flex-wrap:wrap}.academy-tabs button{flex:1;font-size:11px;padding:8px}.catalog-card{padding:13px}.toolbar-actions button{padding:5px 4px;font-size:9px}.bait-choices small{font-size:7px}.bait-choices b{font-size:10px}.bait-choices canvas{flex-basis:30px!important;width:30px!important}.side .setup>.primary{flex-basis:100%}.sentence-build button,.word-bank button{font-size:12px;padding:6px 8px}.exercise-area .primary{font-size:13px}.utility-dialog h2{font-size:18px}}
body[data-mode=typing]:is([data-exercise=assemble],[data-exercise=listen]) .side .word-block .target{display:none}body[data-mode=typing]:is([data-exercise=assemble],[data-exercise=listen]) .side .answer-instruction{display:none}body[data-mode=typing]:is([data-exercise=assemble],[data-exercise=listen]) .exercise-area{grid-template-columns:1fr auto;align-items:center;gap:7px}.exercise-audio,.sentence-build{grid-column:1/-1}.exercise-area>.word-bank{grid-column:1}.exercise-area>.primary:not(.action-trigger){grid-column:2}.exercise-area .exercise-audio button{min-height:28px;padding:4px 9px}.exercise-area .sentence-build{min-height:36px;padding:3px 6px}.exercise-area .sentence-build button{min-height:27px;padding:4px 8px}.exercise-area .word-bank button{min-height:30px;padding:5px 9px}.exercise-area .action-trigger{grid-column:1/-1}body[data-mode=typing][data-exercise=listen] .course-caption{display:none}body[data-mode=typing]:is([data-exercise=assemble],[data-exercise=listen]) .side #typingHelp{display:none}body[data-exercise=listen] #pronounce{display:none}
.journey .player-level{padding:3px 6px;background:#56603d;color:#f1d18f;border:1px solid #ad9f5f55;border-radius:4px;font-size:9px;margin-left:3px}.catalog-card .primary:disabled{background:#28453f;color:#d2ccad}.catalog-kind{color:#bad0aa}
/* The story stays within the scene; reading it never interrupts a live round. */
.story-objective{position:absolute;z-index:3;top:98px;left:16px;display:flex;align-items:center;gap:9px;max-width:calc(100% - 36px);padding:8px 11px;border:1px solid #b6ae7966;border-radius:7px;background:#132f37e8;color:#f0d59c;text-align:left;font-size:10px;box-shadow:0 3px 14px #10273144}.story-objective>span:first-child{color:#9fbcab;font-size:9px;white-space:nowrap}.story-objective b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.story-objective.story-ready{border-color:#f3ca76;background:#475543}.story-dialog{width:min(730px,94vw)}.story-dialog h2{font-size:29px;color:#f0d59c;margin:12px 0 18px}.story-dialog>p{font-size:13px;line-height:1.9}.story-conversation{display:flex;gap:18px;align-items:center;border-radius:10px;background:#102d35;margin:15px 0;border:1px solid #799d8755;padding:0 18px}.story-conversation canvas{width:90px;height:108px;image-rendering:pixelated;flex:none}.story-conversation b{color:#f2d197;font-size:13px}.story-conversation p{color:#d7dfbf;font-size:14px;line-height:1.7;margin:6px 0}.story-loop{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:11px;color:#d9c48f}.story-loop i{color:#719c8d}.story-dialog .story-purpose{font-size:12px;color:#9ebcab}.story-dialog h3{font-size:14px;color:#ead39f;margin:21px 0 10px}#storyGoals{list-style:none;margin:0;padding:0;display:grid;gap:8px}#storyGoals li{padding:10px 13px;border:1px solid #69958255;border-radius:7px;background:#153139}#storyGoals li>div{display:flex;justify-content:space-between;gap:14px;font-size:12px}#storyGoals li b{font-weight:500;color:#e3d5b5}#storyGoals li span{color:#b9c492;white-space:nowrap}#storyGoals li small{display:block;color:#89ab99;font-size:11px;margin-top:5px}#storyGoals li.done{background:#28453d}#storyGoals li.done b{color:#a5d3a4}#storyReward{color:#adbc91;font-size:11px}.story-buttons{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin:17px 0}.story-buttons button,.menu-shop-link{border:1px solid #829d7c77;border-radius:6px;background:#274b45;color:#d9d4b4;padding:10px 14px;font-size:12px}.story-buttons .primary{background:#e3c27f;color:#193d35}.story-dialog blockquote{margin:14px 0;border-left:3px solid #d9bd7c;padding:12px 17px;background:#2c443b;font-size:13px;line-height:1.9;color:#dfd4af}#storyResult:empty,#academyFeedback:empty{display:none}#storyResult,#academyFeedback{color:#c4de9f;font-size:12px}#storyHistory details{border-top:1px solid #71928055;padding:12px 0;font-size:12px;color:#aac2ab}#storyHistory summary{cursor:pointer;color:#deca9e}#storyHistory p{line-height:1.9}.menu-shop-link{margin:0 0 14px}.menu-option.unavailable{opacity:.65}.menu-option .menu-available{color:#b8dda2}.menu-option .menu-blocked{color:#e2b79a}.menu-option small{display:block;line-height:1.7}.catalog-card .recipe-ownership{margin:8px 0 0;color:#cdbb90}body[data-mode=typing] .story-objective{display:none}
@media(max-width:720px){.story-objective{top:105px;left:10px;padding:6px 8px;font-size:9px;max-width:calc(100% - 20px)}.story-objective>span:first-child{font-size:8px}.story-dialog h2{font-size:23px}.story-conversation{padding:0 10px;gap:10px}.story-conversation canvas{width:66px;height:80px}.story-conversation p{font-size:12px}.story-loop{font-size:10px}.story-buttons button{flex:1}.menu-option b{font-size:13px}}

.story-dialog .story-buttons{position:sticky;bottom:-25px;z-index:1;padding:12px 0;margin-bottom:0;background:#142f38;box-shadow:0 -8px 12px #142f38e8}.story-dialog #storyBegin{border-color:#d6ba7b;color:#f1d9a7}.story-dialog #storyHistory{margin-top:16px}.story-dialog #storyIntro{color:#d4d7bc}
#shipDiagram{display:block;width:100%;height:auto;max-height:120px;object-fit:contain;image-rendering:pixelated;border:1px solid #87956b44;border-radius:8px}.side>.scene-tool{grid-column:1;justify-self:start;align-self:end;padding:7px 10px;margin-top:10px;background:#284947;color:#dccca7;border:1px solid #81957566;border-radius:6px;font-size:10px}body[data-mode=typing] .side>.scene-tool{display:none}.dishes-dialog,.odds-dialog,.conversation-dialog{width:min(680px,94vw)}#dishCanvas{display:block;width:100%;height:auto;image-rendering:pixelated;border:1px solid #b0c4ac66;border-radius:8px}#washSpots,.wash-actions,.conversation-actions{display:flex;gap:9px;margin:12px 0;flex-wrap:wrap}#washSpots button,.wash-actions button,.conversation-actions button{border:1px solid #8a9d7866;padding:10px 13px;border-radius:6px;background:#2b514a;color:#eee1b5;font-size:12px}#washSpots button{flex:1;touch-action:none;user-select:none}.wash-actions .primary,.conversation-actions .primary{background:#e0bd7d;color:#163a35}#washFeedback,#conversationFeedback{color:#d7d3a8;font-size:12px;line-height:1.8}.odds-controls{display:grid;grid-template-columns:1fr 1fr;gap:13px}.odds-controls label{font-size:11px;display:grid;gap:6px;color:#b3c7b1}.odds-controls label:last-child{grid-column:1/-1}.odds-controls select{background:#264940;color:#e6d3a2;border:1px solid #80977e;padding:8px;border-radius:5px}.odds-row{display:grid;grid-template-columns:64px 1fr 1fr 48px;align-items:center;gap:9px;border-bottom:1px solid #80957733;font-size:12px}.odds-row canvas{width:64px;height:38px;image-rendering:pixelated}.odds-row b{font-size:12px;color:#e9d093;text-align:right}.odds-track{height:6px;background:#304e48;border-radius:4px}.odds-track i{display:block;height:100%;background:#b5cb8b;border-radius:4px}.odds-row small{grid-column:2/-1;font-size:10px;color:#bd9980;margin:-6px 0 8px}body[data-exercise=reading] .side .word-block .target{font-size:15px!important;line-height:1.65!important;min-height:0!important;margin:9px 0!important;color:#ede0c4}body[data-exercise=reading] .side #answerChoices{display:none}.reading-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.reading-choices button{font-size:12px}.practice-label{display:block;font-size:11px;color:#a4b899;letter-spacing:.5px;margin:22px 0 10px}#conversationWord{font-size:19px;color:#eecb89;display:block}#conversationPassage{background:#103039;padding:14px;border-radius:7px;color:#d9e0c2;line-height:1.9}#conversationPhrase{display:block;font-size:23px;padding:15px;background:#294b43;border-radius:7px;color:#f6db9d}#conversationPhrase.concealed{color:transparent;user-select:none;position:relative}#conversationPhrase.concealed:after{content:'뜻을 보고 직접 말해보세요';position:absolute;left:14px;top:18px;font-size:14px;color:#a3bd9b}#conversationNote,#conversationMicNote{font-size:11px;line-height:1.8;color:#9fb8a4}.result-speaking{background:#385b4b;color:#d9d4aa;border:1px solid #8ea67977;border-radius:5px;padding:5px 9px;font-size:10px}body[data-phase=cook][data-mode=typing] .table-hotspots{visibility:hidden}
@media(max-width:720px){.reading-choices{grid-template-columns:1fr}.reading-choices button{padding:7px;font-size:12px;min-height:32px}.odds-row{grid-template-columns:44px 1fr 70px 44px;font-size:10px}.odds-row canvas{width:44px;height:30px}.conversation-actions button{flex:1}.side>.scene-tool{font-size:9px;padding:6px}.story-objective{top:100px}#washSpots button{font-size:10px;padding:9px 4px}}
body[data-exercise=action] .side .meaning-row,body[data-exercise=action] .side .course-caption{display:none}.reading-choices .reading-translation{grid-column:1/-1;min-height:26px;padding:4px;background:transparent;border-color:transparent;color:#b3c8a3;font-size:10px}#dishCanvas{touch-action:none;cursor:grab}#dishCanvas:active{cursor:grabbing}
/* Keep the counter and guests visible after a dish is completed. */
@media(min-width:721px){body[data-phase=cook][data-mode=idle] .side{max-width:none;width:calc(100% - 30px);padding:10px 13px;bottom:12px}body[data-phase=cook][data-mode=idle] .side .action-card>.row{margin-bottom:5px}body[data-phase=cook][data-mode=idle] .side .action-card h2{font-size:14px}body[data-phase=cook][data-mode=idle] .side .recipes{max-height:85px;margin:3px 0}body[data-phase=cook][data-mode=idle] .side .order-ticket{padding:6px 9px;min-width:165px}body[data-phase=cook][data-mode=idle] .side .order-ticket b{font-size:12px;margin:3px 0}body[data-phase=cook][data-mode=idle] .side .order-ticket small{font-size:9px}body[data-phase=cook][data-mode=idle] .side .ticket-action{font-size:9px}body[data-phase=cook][data-mode=idle] .side .patience-track{margin:4px 0;height:3px}body[data-phase=cook][data-mode=idle] .side .round-result{align-items:center;flex-wrap:nowrap;padding:4px 8px;margin:4px 0;gap:8px}body[data-phase=cook][data-mode=idle] .side .round-result .result-lesson{display:none}body[data-phase=cook][data-mode=idle] .side .round-result .result-badge{font-size:16px}body[data-phase=cook][data-mode=idle] .side .message{font-size:10px;line-height:1.2;padding-top:3px}body[data-phase=cook][data-mode=idle] .side .service-summary,body[data-phase=cook][data-mode=idle] .side>.scene-tool,body[data-phase=cook][data-mode=idle] .side .wide{margin-top:5px}body[data-phase=cook][data-mode=idle] .side .wide{padding:6px 10px;min-height:29px}}
#conversationPhrase.concealed{color:#a3bd9b;font-size:14px}#conversationPhrase.concealed:after{content:none}
/* A compact, pausable story before opening the restaurant. */
.intro-dialog{width:min(940px,calc(100vw - 32px));max-width:940px;max-height:calc(100dvh - 28px);padding:0;background:#132d35;color:#f4edd9;border:1px solid #74928b;border-radius:18px;overflow:auto;box-shadow:0 32px 100px #0009}.intro-dialog::backdrop{background:#061820dc;backdrop-filter:blur(5px)}.intro-top{display:flex;align-items:center;justify-content:space-between;padding:12px 22px}.intro-top button,.intro-controls>button:not(.primary){background:transparent;color:#cfdfd4;border:1px solid #58716d}.intro-illustration{display:block;position:relative;width:100%;padding:0;border:0;border-radius:0;background:#102336;overflow:hidden}.intro-illustration canvas{display:block;width:100%;height:auto;max-height:43dvh;object-fit:cover;image-rendering:pixelated}.intro-illustration>span{position:absolute;left:22px;right:22px;bottom:15px;color:#f8eed8;font-size:12px;text-align:left;text-shadow:0 2px 4px #000}.intro-heading{padding:18px 26px 0}.intro-heading .eyebrow{color:#a9c9b6;font-size:11px}.intro-heading h2{font-size:25px;margin:5px 0 0;letter-spacing:-.6px;color:#f1d6a5}.intro-dialogue{display:grid;grid-template-columns:88px 1fr;gap:16px;align-items:center;padding:8px 26px 14px;min-height:126px}.intro-dialogue canvas{width:88px;height:106px;image-rendering:pixelated;align-self:end}.intro-dialogue b{color:#dbd6af;font-size:13px}.intro-dialogue p{font-size:16px;line-height:1.8;margin:6px 0 0;min-height:58px;word-break:keep-all}.intro-controls{display:flex;gap:12px;align-items:center;padding:14px 26px 20px;border-top:1px solid #a7c7b321}.intro-controls>button{min-height:43px;white-space:nowrap}.intro-controls>.primary{min-width:160px;background:#e4ca94;color:#243b39;border-color:#e4ca94}.intro-controls>button:disabled{opacity:.3}#introProgress{display:flex;gap:7px;flex:1;justify-content:center}#introProgress span{width:6px;height:6px;border-radius:50%;background:#4d6767}#introProgress .past{background:#8aac97}#introProgress .current{width:19px;border-radius:4px;background:#e4ca94}.intro-preparation{margin:0 26px 14px;padding:10px 14px;border-radius:8px;background:#263f40;color:#c7dbc7;font-size:12px;line-height:1.6}.intro-sr{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.intro-replay{margin:16px 0 4px}.intro-dialog button:focus-visible{outline:3px solid #e9d4a4;outline-offset:-4px}
@media(max-width:600px){.intro-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:12px}.intro-top{padding:10px 14px}.intro-top .eyebrow{font-size:10px}.intro-illustration canvas{height:230px;object-fit:cover;max-height:32dvh}.intro-illustration>span{font-size:10px;left:14px;right:14px;bottom:12px}.intro-heading{padding:15px 18px 0}.intro-heading h2{font-size:21px;line-height:1.4}.intro-dialogue{grid-template-columns:56px 1fr;gap:10px;padding:10px 18px 14px;min-height:164px}.intro-dialogue canvas{width:56px;height:68px;align-self:start}.intro-dialogue p{font-size:14px;line-height:1.8;min-height:102px}.intro-controls{padding:12px 14px 16px;gap:7px}.intro-controls>.primary{min-width:130px}.intro-controls>button{font-size:12px;padding:10px}#introProgress{gap:5px}.intro-preparation{margin:0 18px 12px}}
/* Harbor 3: scene controls and a single, readable learning card. */
.shell{max-width:1580px}.game-layout,body[data-phase=cook] .game-layout{width:min(100%,calc((100dvh - 76px)*1.75))}.intro-auto-track{height:3px;background:#324c4e}.intro-auto-track span{display:block;height:100%;background:#e4ca94;width:0}#introPrev{display:none}.intro-controls:before{content:'장면이 자동으로 이어져요';font-size:11px;color:#adc4b6}
.table-hotspot.waiting{border-radius:14px;background:#f4e7c8;color:#253b3a;box-shadow:0 5px 0 #493e2630;padding:5px;min-width:65px}.table-hotspot.waiting::after{background:#f4e7c8}.table-hotspot.waiting canvas{display:block;width:68px!important;height:44px!important;margin:-4px auto -2px;background:none!important;aspect-ratio:auto!important}.table-hotspot.waiting strong{font-size:10px;color:#34473d}.table-hotspot.waiting small{color:#627b62}.table-hotspot .patience-track{height:3px;margin:4px 5px 0}.table-hotspot .patience-track>span{display:block;height:3px;background:#7f9e6a}.table-hotspot.paying{background:#183a3ada;border:0;border-radius:14px}.guest-reaction{font-size:30px;display:block}.table-hotspot.empty{opacity:.6}.table-hotspot.locked{opacity:.35}body[data-phase=cook][data-mode=idle] .side #recipes{display:none}body[data-phase=cook][data-mode=idle] .side .action-card h2{font-size:14px}body[data-phase=cook][data-mode=idle] .side{max-width:850px}body[data-phase=cook][data-mode=idle] #menuToday{display:none}
body[data-exercise=study] .meaning-row,body[data-exercise=study] .word-block,body[data-exercise=study] #typingHelp,body[data-exercise=study] .lesson-tools,body[data-exercise=study] #answerChoices{display:none!important}body[data-exercise=study] .side .course-caption{font-size:10px;color:#a3b9a9}body[data-exercise=study] .side .answer-entry{display:none!important}body[data-exercise=study] .side .action-card>.row{display:none}
.study-card{padding:16px;border:1px solid #ccdac0;border-radius:13px;background:#f6f2e4;color:#233b3c;display:flex;flex-direction:column;gap:11px;text-align:left}.study-card-meta{font-size:11px;color:#64806e;letter-spacing:.5px}.study-card .study-context{font-size:14px;line-height:1.7;color:#46605b;margin:0;padding:0}.study-card .study-meaning{font-size:16px;line-height:1.65;font-weight:600;color:#293e3a;margin:0;min-height:0}.study-card .study-meaning:empty{display:none}.study-sentence{font-size:23px;line-height:2;color:#183d42;overflow-wrap:anywhere}.study-sentence .study-input{display:inline-block;vertical-align:baseline;max-width:100%;min-height:43px;background:#dfebe1;color:#1c6c64;border:0;border-bottom:3px solid #8aab98;border-radius:6px;font:inherit;font-weight:700;text-align:center;padding:2px 7px;outline-offset:3px;margin:0 5px}.study-input[aria-invalid=true]{background:#fae1d5;border-color:#c98364}.study-input:disabled{opacity:1}.study-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}.study-card button{border:1px solid #b6c8b7;border-radius:7px;background:#e8ecdd;color:#34574f;min-height:36px;padding:8px 10px;font-size:12px;line-height:1.4}.study-card .primary{background:#386b5d;border-color:#386b5d;color:#fff8da;font-weight:700;min-height:41px}.study-card .study-hint{background:none;border-color:transparent;font-size:11px}.study-card button:focus-visible,.study-card input:focus-visible{outline:3px solid #d3a34a}.study-feedback:empty{display:none}.study-feedback{padding:11px;background:#e9ecd8;border-radius:7px;font-size:13px;line-height:1.7}.study-feedback p{font-size:14px!important;line-height:1.7!important;margin:5px 0!important;color:#2e5b4e!important}.study-feedback small{display:block;font-size:11px;color:#58786a;line-height:1.7}.study-feedback.success{background:#dcead8}.study-feedback.incorrect{background:#f3dfd0;color:#875441}.study-choice-grid{display:grid;gap:7px}.study-choice-grid button{font-size:15px;text-align:left;background:#fffaf0;padding:11px}.study-assembled{min-height:50px;border-bottom:1px dashed #96b39d;display:flex;gap:5px;flex-wrap:wrap;padding:5px 0;margin-bottom:10px}.study-word-bank{display:flex;gap:5px;flex-wrap:wrap}.study-word-bank button:disabled{opacity:.2}.study-assembled button,.study-word-bank button{font-size:14px}.study-level-setting{display:flex;gap:12px;margin:15px 0;align-items:center}.study-level-setting select{padding:10px;border:1px solid #719586;border-radius:6px;background:#234a47;color:#ecdcb8}.learning-dashboard{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px 0 24px}.learning-dashboard>div{border:1px solid #58796b;background:#254740;border-radius:10px;padding:15px}.learning-dashboard small{display:block;font-size:11px;color:#adc5aa}.learning-dashboard b{display:block;font-size:25px;color:#f0d18a;margin-top:8px}.learning-dashboard p{grid-column:1/-1;font-size:12px;line-height:1.8;color:#a6c3ad}.recipe-journal canvas{display:block;width:180px;height:138px;margin:auto;image-rendering:pixelated}.recipe-journal{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}#trainingArt{width:100%;height:auto;max-height:240px;object-fit:contain;image-rendering:pixelated;border-radius:10px;background:#16414a}.training-dialog{width:min(800px,96vw)}#trainingMeaning{font-size:13px;margin:9px 0 0}#trainingTarget{font-size:13px;margin:3px 0 12px;color:#adc3b1}#dishStudy:not(:empty){margin-top:15px}#trainingStudy{margin:12px 0}.training-dialog #trainingStudy{order:2}
.scene-actions{position:absolute;left:40%;top:36%;z-index:5;transform:translate(-50%,-50%);text-align:center;width:300px;pointer-events:none}.scene-action-target{pointer-events:auto;touch-action:none;user-select:none;width:90px;height:90px;border:5px solid #e4bd79;border-radius:50%;background:conic-gradient(#eab668 var(--action-progress,0%),#133e4899 0);color:#fff6cf;font-size:37px;box-shadow:0 5px 28px #17352a88;cursor:grab}.scene-action-target.ready{border-color:#c5f0a6;background:conic-gradient(#9eca87 var(--action-progress,0%),#2b6e51bb 0);box-shadow:0 0 22px #bcebaa99}.scene-actions[data-action=stir],.scene-actions[data-action=heat]{left:50%;top:44%}.scene-actions p{display:inline-block;font-size:11px;color:#ffefcc;background:#122f36ef;border-radius:7px;padding:8px 12px;line-height:1.7}.scene-action-target:active{transform:scale(.95)}body[data-exercise=action] .side #target,body[data-exercise=action] #exerciseArea,body[data-exercise=action] #typingHelp,body[data-exercise=action] #heatGame{display:none!important}body[data-exercise=action] .side{width:50%;max-width:550px!important}.scene-actions button:focus-visible{outline:3px solid white;outline-offset:5px}
@media(min-width:900px){body[data-exercise=study][data-mode=typing] .world-panel{aspect-ratio:1.85}body[data-exercise=study][data-mode=typing] .world-panel canvas#world{position:absolute;left:0;top:75px;width:62%;height:auto;object-fit:contain}body[data-exercise=study][data-mode=typing] .side{left:auto;right:14px;top:78px;bottom:14px;transform:none;width:36%;max-width:none;padding:12px;display:block;overflow:auto;border-color:#85967d66}body[data-exercise=study] #lessonMeta{margin-bottom:7px}body[data-exercise=study] #liveMetrics{font-size:10px}body[data-exercise=study] #sceneMeters{left:18px;right:auto;top:114px}body[data-exercise=study] .side #message{display:none}body[data-exercise=study] .side #roundResult{display:none}}
@media(max-width:899px){body[data-exercise=study][data-mode=typing] .world-panel{aspect-ratio:auto;overflow:visible}body[data-exercise=study][data-mode=typing] .world-panel canvas#world{height:280px;object-fit:cover;object-position:top}body[data-exercise=study][data-mode=typing] .side{position:relative;left:auto;bottom:auto;transform:none;width:100%;max-width:none;padding:12px;display:block;border-radius:0}body[data-exercise=study] .study-card{padding:14px}body[data-exercise=study] #sceneMeters{display:none}.study-sentence{font-size:22px}.learning-dashboard{grid-template-columns:1fr 1fr}.recipe-journal{grid-template-columns:1fr 1fr}.intro-controls:before{display:none}.scene-actions{width:240px}.scene-action-target{width:70px;height:70px;font-size:29px}.scene-actions p{font-size:10px}.table-hotspot.waiting canvas{width:44px!important;height:32px!important}.table-hotspot.waiting{padding:2px;min-width:42px}.table-hotspot.waiting strong{font-size:8px}.table-hotspot.waiting small{display:none}.table-hotspot .patience-track{margin:2px}.guest-reaction{font-size:22px}}
@media(prefers-reduced-motion:reduce){.intro-dialog *{animation:none!important;transition:none!important}}

body[data-mode=typing] #stageSteps{display:flex!important;gap:5px;flex-wrap:wrap;margin:0 0 8px;grid-column:1/-1}#stageSteps span{font-size:10px;padding:5px 7px;border-radius:5px;color:#879f99;background:#224047}#stageSteps .current{background:#e3c587;color:#243e3c;font-weight:700}.study-card .study-next{width:100%}
body[data-exercise=study] .lesson-tools{display:flex!important;justify-content:flex-end;margin:8px 0 0}body[data-exercise=study] .lesson-tools #revealHint,body[data-exercise=study] .lesson-tools #pronounce{display:none}body[data-exercise=study] .lesson-tools #cancelRound{font-size:10px;background:transparent;border-color:#59796d;color:#b3c4b1;padding:5px}

/* Daily service: clear preparation, plate stocks and a definite finish. */
.daily-menu-item{display:flex;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid #718d7655}.daily-menu-item canvas{width:100px;height:64px;image-rendering:pixelated}.daily-menu-item small{display:block;margin-top:8px;color:#adc4b3}.receipt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.receipt-grid>div{padding:18px;background:#264a44;border-radius:10px}.receipt-grid small{display:block;color:#b4c9b7}.receipt-grid b{display:block;font-size:25px;color:#f6d58c;margin-top:8px}.daily-receipt{width:min(620px,94vw)}#dayGrowth{padding:16px;background:#e4c582;color:#243e37;border-radius:8px;font-weight:700}#dayUnlocks{line-height:1.8}#dishCounts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}#dishCounts>span{padding:12px;border:1px solid #78948855;border-radius:8px;background:#264740;text-align:center}#dishCounts small{display:block;font-size:11px}#dishCounts b{display:block;font-size:26px;margin-top:6px}.plate-dirty{color:#edbd89}.plate-clean{color:#bddeb4}#dishReturn{margin-left:auto}#dayDialog small{line-height:1.8}.service-metrics{font-size:14px}body[data-phase=cook] #phase:disabled{opacity:.8;background:#355349;color:#e2d5af}
body[data-phase=cook] .story-objective{top:58%;left:18px;max-width:calc(100% - 36px);padding:6px 10px;font-size:10px}body[data-phase=cook][data-mode=typing] .story-objective{display:none}
@media(min-width:721px){body[data-phase=cook][data-mode=idle] .side{width:calc(100% - 30px);max-width:none;padding:10px 13px;gap:6px 12px}body[data-phase=cook][data-mode=idle] .side .action-card>.row{display:none}body[data-phase=cook][data-mode=idle] .side .service-summary{grid-column:1;grid-row:2/4;align-self:center;margin:0}body[data-phase=cook][data-mode=idle] #openDishes{grid-column:2;grid-row:2;justify-self:end;margin:0}body[data-phase=cook][data-mode=idle] #phase{grid-column:2;grid-row:3;margin:0}body[data-phase=cook][data-mode=idle] .side .round-result{margin:0 0 4px}body[data-phase=cook][data-mode=idle] .side .message{padding:0}}

#dishStudy:empty{display:none}
.study-feedback.success>p.study-correct-sentence{font-size:23px!important;line-height:1.4!important}.study-card:has(.study-feedback.success) .study-actions{position:sticky;bottom:-1px;background:#f6f0dc;padding-top:10px;margin-bottom:-3px;z-index:2;border-top:1px solid #c7d3b5}
#fishingNotice{grid-column:1/-1;margin:5px 0 0;padding:7px 8px;border-radius:7px;background:#123d42df;color:#f1e7c8;font-size:10px;line-height:1.6;max-width:216px}#fishingNotice:empty{display:none}
@media(min-width:900px){body:not([data-exercise=study][data-mode=typing]) .game-layout{width:min(100%,calc((100dvh - 84px)*1.5))}}
#setup .orbit-caption{width:max-content;max-width:100%;padding:6px 9px;background:#143b40ed;border-radius:7px}#setup .orbit-tool span{background:#153d41e8;border-radius:5px;padding:4px 1px;margin-top:4px}#setup .orbit-tool small{color:#fff3d2;background:#153d41d9;border-radius:3px;padding:2px 0;margin-top:2px}
#catchDialog .catch-listen button{width:auto;margin:0;flex:0 0 auto}#catchDialog .catch-focus{justify-self:start}#catchDialog #continueFishing{position:sticky;bottom:0;box-shadow:0 -5px 10px #f6ead0}
body[data-exercise=wait] .side{max-width:440px!important;padding:10px 14px!important}body[data-exercise=wait] #courseCaption,body[data-exercise=wait] #stageSteps{display:none!important}body[data-exercise=wait] .waiting-cue{min-height:62px;gap:4px}body[data-exercise=wait] .waiting-cue .bobber-symbol{display:none}
@media(min-width:900px){.scene-actions[data-action=stir],.scene-actions[data-action=heat]{left:84%;top:45%;width:215px}.scene-actions:is([data-action=stir],[data-action=heat]) .action-steps{font-size:9px}.scene-actions:is([data-action=stir],[data-action=heat]) .action-coach>b{font-size:12px}.scene-actions:is([data-action=stir],[data-action=heat]) .action-coach p{font-size:11px}}

/* Explicit action coaching stays beside the actual control. */
.scene-actions{width:min(370px,90%);top:40%}.scene-actions[data-action=stir],.scene-actions[data-action=heat]{top:43%}.action-coach{padding:10px 13px;background:#142f37f5;border:1px solid #c0cfa480;border-radius:12px;margin-bottom:10px;box-shadow:0 4px 20px #10273155}.action-coach>b{color:#f7dc9e;font-size:14px}.action-steps{display:flex;gap:5px;justify-content:center;margin:10px 0;font-size:10px}.action-steps span{padding:5px 6px;border-radius:5px;background:#345052;color:#bfd1c0}.action-steps .current{background:#eacb85;color:#1d4237;font-weight:bold}.action-meter{position:relative;height:14px;background:#946843;border-radius:6px;margin:9px 3px;overflow:hidden}.action-meter span{position:absolute;top:0;bottom:0;background:#9bd49b}.action-meter i{position:absolute;top:0;bottom:0;width:4px;background:#fff;box-shadow:0 0 4px #172f30}.scene-actions .action-coach p{display:block;margin:8px 0 0;padding:0;background:none;font-size:12px;min-height:36px}.scene-action-target{font-size:14px!important;font-weight:800;width:98px;height:98px;cursor:pointer}.scene-actions[data-action=bite] .scene-action-target{cursor:grab}.scene-actions>small{display:block;margin:8px auto 0;padding:5px 9px;max-width:340px;font-size:10px;line-height:1.6;color:#f6edcf;background:#18383bea;border-radius:6px}.study-speech-status{font-size:12px;color:#37685c;margin:8px 0;line-height:1.6}.study-speech-status:empty{display:none}.study-level-guide{margin:15px 0;padding:16px;border:1px solid #94ad8580;border-radius:9px;background:#24483f}.study-level-guide b{color:#f5d794}.study-level-guide p,.study-level-guide small{font-size:12px;line-height:1.9}.level-progress{display:grid;gap:5px;margin:15px 0;font-size:12px}.level-progress progress{width:100%;height:8px;accent-color:#b6d49a;margin-bottom:8px}
@media(max-width:720px){.scene-actions,.scene-actions[data-action=stir],.scene-actions[data-action=heat]{top:240px;left:50%;width:90%;max-width:330px}.scene-action-target{width:75px;height:75px}.action-coach{padding:7px 9px}.action-coach>b{font-size:12px}.action-steps{font-size:9px;margin:5px 0}.scene-actions .action-coach p{font-size:11px;min-height:30px}.scene-actions>small{margin:5px 0}body[data-exercise=action] .side{width:100%;padding-top:55px}}

body[data-exercise=action] #meaningRow,body[data-exercise=action] #answerInstruction,body[data-exercise=action] #courseCaption{display:none}

/* Fishing preparation stays on the scene; the expandable catch list uses actual equipment. */
body[data-phase=fish][data-mode=idle] .side{max-width:900px;padding:13px 17px}
body[data-phase=fish][data-mode=idle] .action-card>.row{display:none}
.side .setup{flex-wrap:wrap;gap:10px;align-items:stretch}
.fishing-gear{flex:0 0 100%;display:flex;align-items:center;justify-content:space-between;gap:12px}
.fishing-gear>span{display:grid;gap:3px}.fishing-gear small{font-size:10px;color:#a7c3b1}.fishing-gear b{font-size:14px;color:#f3ddb0}
.fishing-gear #openOdds{font-size:11px;padding:8px 10px;margin:0;background:#294b48;border:1px solid #95b39566;border-radius:6px}
.side .bait-choices canvas{width:48px!important;flex-basis:48px!important}.side .bait-choices b{font-size:12px}.side .bait-choices small{font-size:9px}.side .bait-choices button{min-height:56px}
.inline-odds{flex:0 0 100%;border-top:1px solid #9cba9366;padding:8px 0 0;max-height:200px;overflow:auto}.inline-odds>p{display:flex;align-items:center;gap:8px;font-size:11px;margin:0 0 5px;flex-wrap:wrap}.inline-odds input{width:110px;accent-color:#cbd793}.inline-odds>small{display:block;font-size:10px;color:#b3c8b5;line-height:1.7;margin-top:8px}#inlineOddsRows{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.inline-odds-fish{display:grid;grid-template-columns:40px 1fr;align-items:center;background:#20413f;padding:4px 6px;border-radius:5px;font-size:10px}.inline-odds-fish canvas{width:40px!important;height:24px!important;grid-row:1/3;background:none!important}.inline-odds-fish b{color:#f1d28e}.inline-odds-fish.unavailable{opacity:.5}
.study-focus-word{color:#185b48;background:#c8ecdc;border-bottom:2px solid #388a6e;border-radius:3px;padding:1px 3px;font-weight:800}.study-correct-sentence{font-weight:700}.study-correct-meaning{font-size:14px}
@media(max-width:720px){.fishing-gear b{font-size:12px}.fishing-gear #openOdds{font-size:10px}.side .setup{gap:7px}.side .bait-choices canvas{width:30px!important;flex-basis:30px!important}.side .bait-choices b{font-size:11px}.side .bait-choices small{font-size:8px}.side .bait-choices button{min-height:45px}.side .setup>.primary{flex-basis:100%;min-height:40px}#inlineOddsRows{grid-template-columns:1fr 1fr}.inline-odds{max-height:140px}}

.action-meter{height:22px;isolation:isolate}.action-meter #actionSafeZone{display:block;background:#9bd49b;color:#183c29;font-size:10px;font-weight:bold;line-height:22px;text-align:center;z-index:1}.action-meter #actionNeedle{z-index:2;height:22px}.action-meter{border:1px solid #ced9b566}
/* Manipulable word cards, explicit teaching feedback, and a focused catch recap. */
.study-assembled{padding:12px;min-height:66px;border:2px dashed #82a28d;background:#e4eddf;border-radius:9px;align-content:flex-start}.study-word-bank{min-height:48px;padding:8px 0}.sentence-token{touch-action:none;user-select:none;cursor:grab;position:relative}.sentence-token:active{cursor:grabbing}.sentence-token.drag-source{opacity:.3}.sentence-token.drop-before{box-shadow:-4px 0 #28735b}.study-assembled.drag-over{border-color:#267056;background:#d5e9d8}.study-word-bank.drag-over{outline:2px dashed #8d6946}.sentence-drag-help,.sentence-order-status{font-size:12px;line-height:1.7;margin:6px 0;color:#536e60}.sentence-order-status:empty{display:none}.sentence-drop-hint{font-size:13px;color:#6c8775}.sentence-drag-ghost{position:fixed;z-index:2147483647;pointer-events:none;padding:12px 16px;background:#245e4d;color:#fff1cf;border:2px solid #dfc582;border-radius:7px;box-shadow:0 9px 24px #18352f66;font:700 18px sans-serif;transform:rotate(-3deg)}
.lesson-insight{display:grid;gap:13px;text-align:left;margin-top:14px}.lesson-insight>div>b{display:block;font-size:12px;color:#27715a;margin-bottom:5px}.lesson-insight p{font-size:14px!important;line-height:1.75;margin:0!important;color:#334c43}.lesson-insight small{display:block;color:#697d66;font-size:12px;line-height:1.7}.insight-chunks{display:flex;flex-wrap:wrap;gap:4px}.insight-chunks span,.insight-chunks mark{padding:4px 7px;border:1px solid #a5b99a66;border-radius:5px;background:#f8f8e9}.insight-chunks mark{background:#c5e4ce;color:#245d46;border-color:#72a785;font-weight:bold}.study-feedback.success{padding:15px}.study-feedback.success>.study-correct-sentence{font-size:22px;font-weight:700}.study-feedback.success .lesson-insight{border-top:1px solid #94b08b66;padding-top:13px}.study-feedback .lesson-insight>div:last-child{display:none}
#catchDialog{width:min(780px,94vw);padding:24px;max-height:92dvh;border-radius:22px}#catchDialog .catch-celebration{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:15px;text-align:left}#catchDialog #catchPortrait{width:140px;height:145px;object-fit:cover;object-position:top;max-height:none;image-rendering:pixelated}#catchDialog #catchTitle{font-size:15px;color:#b7cbb4;margin:7px 0}#catchDialog #catchName{font-size:25px;color:#f6e3b7;margin:8px 0}#catchDialog #catchRarity{font-size:11px}#catchDialog #catchQuote{font-size:12px;line-height:1.6;margin:5px 0;color:#b7cbb4}#catchDialog .catch-paper{margin-top:12px;padding:24px;text-align:left;border-radius:17px}#catchDialog #catchLearning{border:0;padding:0 0 15px;margin:0}#catchDialog #catchLearning>small{font-size:11px;color:#66886e}#catchDialog #catchLearning>b{display:block;font-size:clamp(25px,3.2vw,36px);line-height:1.4;margin:9px 0;color:#204b40}#catchDialog #catchLearning>p{font-size:18px;line-height:1.6;margin:5px 0;color:#4f735e}.catch-focus{display:inline-block;background:#d6e7cd;border-radius:5px;padding:5px 9px;color:#2c694e;font-size:13px;margin-top:8px}.catch-listen{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:10px 0;border-top:1px solid #bccea6;border-bottom:1px solid #bccea6}.catch-listen button{padding:9px 12px;border:1px solid #9bb492;background:#e4ecd4;color:#315f4c;border-radius:7px;font-size:12px}.catch-listen span{font-size:11px;color:#66866a}.catch-repeat{font-size:12px!important;color:#66816b;margin:18px 0 8px}#catchDialog #continueFishing{display:block;width:100%;font-size:17px;padding:13px;margin-top:16px}#catchExplanation>div:last-child{display:none}
@media(max-width:720px){#catchDialog{padding:14px}#catchDialog .catch-celebration{grid-template-columns:95px 1fr;gap:10px}#catchDialog #catchPortrait{width:95px;height:112px}#catchDialog #catchName{font-size:20px}#catchDialog .catch-paper{padding:17px}#catchDialog .eyebrow{font-size:8px}.lesson-insight p{font-size:13px!important}}
/* Scene controls beside Dajeong, with small anchored trays rather than a preparation panel. */
#setup.fishing-orbit{position:absolute;z-index:4;left:69%;top:28%;display:grid;grid-template-columns:repeat(3,64px);gap:8px;align-items:start;margin:0;padding:0;background:none;border:0;box-shadow:none}.orbit-caption{grid-column:1/-1;display:grid;gap:3px;color:#fff3cf;text-shadow:0 1px 4px #143830;font-size:12px;font-weight:bold}.orbit-caption small{font-size:9px;font-weight:normal}.orbit-tool{border:0!important;background:none!important;padding:0!important;box-shadow:none!important;min-width:0;color:#fff4d3;text-align:center;font-size:10px;cursor:pointer}.orbit-tool canvas{display:block;width:60px!important;height:60px!important;min-height:0!important;aspect-ratio:1!important;border:2px solid #bdceab;border-radius:50%;background:#1b4744ed!important;box-shadow:0 3px 0 #102c2c80;image-rendering:pixelated;margin:0 auto 5px}.orbit-tool span{display:block;font-size:11px;font-weight:bold;text-shadow:0 1px 3px #133731}.orbit-tool small{display:block;font-size:9px;color:#ecedcf;text-shadow:0 1px 3px #173629;margin-top:3px}.orbit-tool:hover canvas,.orbit-tool[aria-expanded=true] canvas{background:#367a62!important;border-color:#ffe1a0;transform:translateY(-2px)}.orbit-tool:focus-visible{outline:2px solid #ffe1a0;outline-offset:4px;border-radius:12px}.orbit-cast canvas{background:#e8cc8b!important;border-color:#fff0be}.orbit-cast:hover canvas{background:#ffe4a9!important}.orbit-tray{position:absolute;top:calc(100% + 12px);right:0;width:300px;max-height:250px;overflow:auto;padding:13px;border:1px solid #a7bd8d;border-radius:13px;background:#14383ef5;box-shadow:0 8px 25px #17392d55;color:#e6e7c7}.orbit-tray::before{content:'';position:absolute;top:-5px;right:30px;width:9px;height:9px;transform:rotate(45deg);background:#173f42}.orbit-tray .bait-choices{display:grid;gap:6px}.orbit-tray .bait-choices button{min-height:52px;padding:7px 10px}.orbit-tray .bait-choices canvas{width:52px!important;height:35px!important;flex-basis:52px!important}.orbit-tray .bait-choices small{font-size:10px}.orbit-tray .bait-choices b{font-size:13px}.orbit-tray #inlineOddsRows{grid-template-columns:1fr 1fr}.orbit-tray label,.orbit-tray p{font-size:11px}.orbit-tray.inline-odds{max-height:270px}
body[data-phase=fish][data-mode=idle] .side{width:auto;min-width:230px;max-width:90%;padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none;display:block;bottom:18px;left:24px;transform:none}body[data-phase=fish][data-mode=idle] .side .action-card{display:none}body[data-phase=fish][data-mode=idle] #phase{margin:0;background:#173d40ed;color:#f4dfb1;padding:11px 18px;border:1px solid #bdd1a3;border-radius:9px}
@media(max-width:720px){#setup.fishing-orbit{left:auto;right:12px;top:25%;grid-template-columns:repeat(3,48px);gap:5px}.orbit-tool canvas{width:46px!important;height:46px!important}.orbit-caption{font-size:10px}.orbit-tool span{font-size:9px}.orbit-tool small{font-size:8px}.orbit-caption small{font-size:8px}.orbit-tray{width:min(285px,88vw);padding:10px;max-height:185px}.orbit-tray.inline-odds{max-height:190px}body[data-phase=fish][data-mode=idle] .side{left:12px;bottom:12px;min-width:0}}
/* Harbor expansion: the cooking scene and its lesson share one vertical reading flow. */
body[data-phase=cook][data-mode=typing] .game-layout{width:min(1180px,100%)}
body[data-phase=cook][data-mode=typing] .world-panel{aspect-ratio:auto;overflow:visible;padding-top:70px}
body[data-phase=cook][data-mode=typing] .world-panel canvas#world{position:relative;left:auto;top:auto;width:100%;height:330px;aspect-ratio:auto;object-fit:cover;object-position:center 36%}
body[data-phase=cook][data-mode=typing] .side{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;width:100%!important;max-width:none!important;display:block;padding:18px max(24px,calc((100% - 780px)/2));border:0;border-top:1px solid #779481;border-radius:0;background:#183b3e;max-height:none;overflow:visible}
body[data-phase=cook][data-mode=typing] .side .action-card>.row,body[data-phase=cook][data-mode=typing] #sceneHint{display:none}
body[data-phase=cook][data-mode=typing] .study-card{max-width:780px;margin:auto;padding:22px 26px}
.cooking-progress{position:absolute;top:114px;right:15px;z-index:3;width:120px;padding:10px;background:#173739ed;border:1px solid #9eac8580;border-radius:10px}
body[data-mode=typing] .cooking-progress #stageSteps{display:flex!important;flex-direction:column;gap:9px;margin:0}.cooking-progress #stageSteps span{font-size:12px;padding:9px 7px}#stageSteps .complete{color:#c2dfac;background:#345447}
body[data-phase=cook][data-mode=typing] .scene-actions:is([data-action=stir],[data-action=heat]){left:15px;right:auto;top:102px;transform:none;width:195px}.scene-actions[data-action=stir] .scene-action-target{font-size:13px!important}
body[data-phase=cook][data-mode=typing] .scene-actions .action-steps{display:none}
body[data-phase=cook][data-mode=typing] .scene-actions .action-coach{padding:8px}
body[data-phase=cook][data-mode=typing] .scene-actions .scene-action-target{height:65px;width:110px;border-radius:12px;border-width:2px}
body[data-phase=cook][data-mode=typing] .scene-actions>small{font-size:11px}
body[data-phase=cook][data-mode=typing] .scene-actions .action-coach p{font-size:11px;min-height:0}
.study-choice{position:relative;text-align:left}.study-choice[data-option]:before{content:attr(data-option);display:inline-grid;place-items:center;width:25px;height:25px;border:1px solid #9ebcaf;border-radius:6px;margin-right:10px;font-size:14px;color:#658170}.choice-key-help,.dialogue-translation{display:block;font-size:13px;color:#648072;margin-top:8px;line-height:1.6}.study-context{font-size:20px!important;color:#294e47!important}.study-meaning{font-size:19px!important}.study-choice:focus-visible{outline:3px solid #d9a444;outline-offset:3px}
#setup.fishing-orbit{grid-template-columns:repeat(5,64px);left:auto;right:4%;top:29%}.orbit-symbol{display:grid;place-items:center;height:57px;font-size:37px;color:#e6ca8b}.orbit-tray{width:min(490px,88vw);max-height:330px}.orbit-tray #baitChoices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-height:270px;overflow:auto}.orbit-tray #baitChoices button{min-width:0;display:flex;flex-direction:column;align-items:center}.orbit-tray #baitChoices small{font-size:10px;line-height:1.4}.orbit-tray #baitChoices canvas{width:65px!important;height:52px!important}.orbit-tray.inline-odds{max-height:340px}.inline-odds-fish{min-height:35px}.equipped-rod-select{display:block;margin:10px 0}.equipped-rod-select select{width:100%;margin-top:5px}body[data-phase=fish][data-mode=idle] .toolbar-actions #openBag,body[data-phase=fish][data-mode=idle] .toolbar-actions #openAcademy{display:none}
@media(max-width:720px){#setup.fishing-orbit{grid-template-columns:repeat(5,46px);right:10px;top:26%;gap:4px}.orbit-symbol{height:46px;font-size:30px}.orbit-tool{min-width:0}.orbit-tray{right:0;max-height:250px}.orbit-tray #baitChoices{max-height:205px}.cooking-progress{right:7px;top:110px;width:100px;padding:6px}.cooking-progress #stageSteps span{font-size:10px;padding:7px 4px}body[data-phase=cook][data-mode=typing] .world-panel canvas#world{height:285px;object-fit:cover}body[data-phase=cook][data-mode=typing] .side{padding:12px}body[data-phase=cook][data-mode=typing] .study-card{padding:15px}body[data-phase=cook][data-mode=typing] .scene-actions:is([data-action=stir],[data-action=heat]){left:8px;width:150px;top:110px}.study-context,.study-meaning{font-size:17px!important}}
.scene-actions[data-gesture=alternate] .action-meter,.scene-actions[data-gesture=place] .action-meter,.scene-actions[data-gesture=sweep] .action-meter{display:none}#cookGestureTargets{display:flex;justify-content:center;gap:7px;pointer-events:auto}#cookGestureTargets button{min-width:45px;min-height:44px;background:#294c49;color:#e4d3ac;border:1px solid #809c80;font-size:20px;border-radius:8px}#cookGestureTargets .expected{background:#e8c682;color:#1c4439;border:2px solid #fff1bf}
#setup .orbit-tray{right:calc(100% + 16px);top:0;width:330px;max-height:340px}#setup .orbit-tray #baitChoices{max-height:300px}#fishingNotice{grid-column:1/-1;max-width:100%}.orbit-tool canvas{flex:none}
@media(max-width:720px){#setup .orbit-tray{position:fixed;right:14px;top:130px;width:min(330px,calc(100vw - 28px));max-height:calc(100dvh - 200px);z-index:20}#setup .orbit-tray #baitChoices{max-height:calc(100dvh - 240px)}}
