:root{color-scheme:light;font-family:ui-rounded,Nunito,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;background:#edfff7;color:#253046;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}button{border:0;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh;background:linear-gradient(115deg,#ffeed2b8,#effff7e6 34%,#e4f6ffe6),#f4fff9;display:flex;padding:18px;gap:12px}.app-shell.is-welcome{padding:0;display:block;background:#f8fff7}.welcome-screen{min-height:100vh;width:100%;position:relative;overflow:hidden;padding:0;isolation:isolate}.welcome-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,#ffffff85,#ffffff2e 30%,#fff0 52%),linear-gradient(0deg,#fafff180,#fafff100 28%);pointer-events:none}.welcome-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(circle at 50% 18%,#ffffff94 0,#ffffff94 18%,#fff0 42%);pointer-events:none}.welcome-cover{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}.welcome-copy{position:absolute;left:20px;right:20px;top:max(32px,calc(env(safe-area-inset-top) + 24px));display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;color:#203a4c}.welcome-spark{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;color:#1d9a58;background:#ffffffc7;box-shadow:0 12px 26px #2b7e5b24;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.welcome-copy h1{margin:0;font-size:clamp(42px,12vw,78px);line-height:1.02;font-weight:950;letter-spacing:0;text-shadow:0 2px 0 rgba(255,255,255,.72),0 12px 28px rgba(69,102,93,.14)}.welcome-copy p{margin:0;color:#4f7063;font-size:clamp(17px,4.6vw,23px);font-weight:800;line-height:1.3;text-shadow:0 2px 0 rgba(255,255,255,.7)}.welcome-start{position:absolute;left:calc(50vw + 14.1svh);top:85.5svh;width:clamp(150px,18svh,172px);height:clamp(150px,18svh,172px);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:0;border-radius:999px;color:#fff;background:linear-gradient(145deg,#ff786c,#ef4f49);box-shadow:0 0 0 11px #ffffffeb,0 18px 34px #e05e4a47;font-size:clamp(18px,4.7vw,23px);font-weight:950;line-height:1;white-space:nowrap;transform:translate(-50%,-50%);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.welcome-start.is-ready:hover,.welcome-start.is-ready:focus-visible{transform:translate(-50%,calc(-50% - 2px)) scale(1.02);box-shadow:0 0 0 11px #fffffff2,0 22px 38px #e05e4a52;outline:none}.welcome-start:disabled{color:#31725b;background:#ffffffd1;box-shadow:0 0 0 11px #ffffffe6,0 12px 26px #3e716124;cursor:default;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media(min-aspect-ratio:941 / 1672){.welcome-start{left:75vw;top:calc(50svh + 63.1vw)}}.welcome-spinner{width:26px;aspect-ratio:1;border-radius:50%;border:4px solid rgba(49,114,91,.2);border-top-color:#2aa968;animation:welcome-spin .86s linear infinite}.kid-stage{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.kid-header{height:70px;display:flex;align-items:center;gap:18px}.home-button,.round-action,.next-button,.drawer-toggle{display:grid;place-items:center;color:#fff;border-radius:999px;box-shadow:0 10px 24px #22374e29}.home-button{width:64px;height:64px;justify-self:end;background:linear-gradient(145deg,#ff806f,#ef4c46)}.progress-dots{flex:1;display:flex;align-items:center;justify-content:center;gap:clamp(8px,1vw,14px)}.progress-dots span{width:clamp(14px,1.4vw,21px);aspect-ratio:1;border-radius:50%;background:#d7dedc;box-shadow:inset 0 2px 4px #192e3b1f}.progress-dots .is-active{background:#39c26b;box-shadow:inset 0 -3px #12693724,0 4px 10px #39c26b42}.play-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) clamp(190px,18vw,280px);gap:clamp(12px,1.5vw,22px)}.play-grid.layout-order,.play-grid.layout-sort,.play-grid.layout-mark{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(64px,auto) minmax(0,1fr)}.play-grid.layout-connect{grid-template-columns:minmax(320px,.86fr) minmax(340px,1.14fr)}.center-zone{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 110px;gap:12px}.layout-order .center-zone,.layout-sort .center-zone,.layout-mark .center-zone{position:relative;grid-template-rows:minmax(58px,auto);gap:0}.layout-order .puzzle-canvas,.layout-sort .puzzle-canvas,.layout-mark .puzzle-canvas{min-height:58px;padding:0;background:transparent;border-color:transparent;box-shadow:none}.layout-order .puzzle-canvas .visual-stage,.layout-sort .puzzle-canvas .visual-stage,.layout-mark .puzzle-canvas .visual-stage{display:none}.layout-order .prompt-bubble,.layout-sort .prompt-bubble,.layout-mark .prompt-bubble{top:50%;right:0;transform:translateY(-50%)}.layout-order .prompt-bubble:hover,.layout-order .prompt-bubble:focus-visible,.layout-sort .prompt-bubble:hover,.layout-sort .prompt-bubble:focus-visible,.layout-mark .prompt-bubble:hover,.layout-mark .prompt-bubble:focus-visible{transform:translateY(-52%)}.layout-order .feedback-ribbon,.layout-sort .feedback-ribbon,.layout-mark .feedback-ribbon{position:absolute;left:50%;top:calc(100% + 14px);z-index:5;width:min(340px,72%);height:64px;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%) translateY(10px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.layout-order .feedback-ribbon.try-again,.layout-order .feedback-ribbon.right,.layout-sort .feedback-ribbon.try-again,.layout-sort .feedback-ribbon.right,.layout-mark .feedback-ribbon.try-again,.layout-mark .feedback-ribbon.right{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.puzzle-canvas{min-height:0;position:relative;background:#ffffffdb;border:2px solid rgba(151,187,165,.34);border-radius:8px;box-shadow:0 20px 55px #44675324;padding:clamp(14px,2vw,28px);display:grid;grid-template-rows:minmax(0,1fr)}.prompt-bubble{position:absolute;top:clamp(10px,1.4vw,18px);right:clamp(10px,1.4vw,18px);z-index:3;min-width:94px;height:52px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;border-radius:999px;background:#ffffffe6;border:2px solid rgba(42,181,96,.3);color:#1a9a54;box-shadow:0 8px 18px #328e5724;cursor:pointer;font-size:16px;font-weight:900;line-height:1;white-space:nowrap;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.prompt-bubble:hover,.prompt-bubble:focus-visible{transform:translateY(-1px);border-color:#30ae5f75;box-shadow:0 10px 20px #328e5729;outline:none}@keyframes welcome-spin{to{transform:rotate(1turn)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.visual-stage{min-height:0;width:100%;height:100%;padding:clamp(8px,1.4vw,18px);display:grid;place-items:center}.matrix-board{width:min(100%,760px);max-height:100%;aspect-ratio:1.42;display:grid;grid-template-columns:repeat(var(--matrix-columns, 3),1fr);border:2px solid #e1c69b;border-radius:8px;overflow:hidden;background:#fffdf8}.matrix-board.columns-2{width:min(100%,560px);aspect-ratio:1.08}.matrix-cell{min-width:0;min-height:0;display:grid;place-items:center;border-right:2px solid #ead2ad;border-bottom:2px solid #ead2ad}.matrix-cell.is-row-end{border-right:0}.matrix-cell.is-last-row{border-bottom:0}.matrix-cell.is-empty,.sequence-cell.is-empty{background:#fff8e9}.empty-slot{width:min(58%,108px);aspect-ratio:1.3;border:4px dashed #d1ba94;border-radius:8px;display:grid;place-items:center;color:#b59d76;font-size:clamp(34px,5vw,70px);font-weight:900}.sequence-board{width:min(100%,830px);display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:12px;justify-content:center;align-content:center}.sequence-cell,.set-item,.match-target{aspect-ratio:1;display:grid;place-items:center;background:#fffdf8;border:2px solid #e8c99c;border-radius:8px;box-shadow:0 10px 18px #374a5f14}.match-board{width:min(100%,420px);height:100%;display:grid;grid-template-columns:minmax(220px,380px);place-items:center}.match-target{aspect-ratio:1.08;background:#fffdf8;justify-self:center}.set-board{width:min(100%,560px);display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;justify-content:center;align-content:center}.sort-stage-board,.mark-stage-board{width:min(100%,620px);display:grid;justify-content:center;align-content:center;gap:18px}.sort-stage-board{grid-template-columns:repeat(2,minmax(150px,220px))}.mark-stage-board{grid-template-columns:repeat(auto-fit,minmax(130px,180px))}.sort-stage-bin,.mark-stage-item{aspect-ratio:1;display:grid;place-items:center;background:#fffdf8;border:2px solid #e8c99c;border-radius:8px;box-shadow:0 10px 18px #374a5f14}.feedback-ribbon{border-radius:8px;background:#c7f2d6cc;border:2px solid rgba(91,194,118,.22);display:flex;align-items:center;justify-content:center;gap:18px;overflow:hidden;color:#256145;transition:transform .18s ease,background .18s ease}.feedback-ribbon strong{font-size:clamp(22px,2.6vw,38px);min-width:120px;text-align:center;letter-spacing:0}.feedback-ribbon.try-again{background:#fff5de;color:#a16d19;border-color:#ebb04259}.feedback-ribbon.right{background:#c6f4d8;transform:scale(1.01)}.reward-star{width:clamp(46px,5vw,76px);aspect-ratio:1;background:#ffd545;clip-path:polygon(50% 0%,63% 33%,98% 35%,70% 56%,79% 91%,50% 72%,21% 91%,30% 56%,2% 35%,37% 33%);filter:drop-shadow(0 8px 10px rgba(224,171,48,.28))}.answer-dock{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 92px;gap:14px}.answer-dock.mode-place{grid-template-rows:minmax(96px,.58fr) minmax(0,1fr) 92px}.answer-dock.mode-focus{grid-template-rows:minmax(0,1fr) 78px 92px}.answer-dock.mode-pair{grid-template-rows:minmax(0,1fr) 92px}.answer-dock.mode-order{grid-template-rows:minmax(94px,.44fr) minmax(0,1fr) 92px}.answer-dock.mode-sort{grid-template-rows:minmax(108px,.42fr) minmax(0,1fr) 92px}.answer-dock.mode-mark{grid-template-rows:minmax(0,1fr) 92px}.layout-order .answer-dock,.layout-sort .answer-dock,.layout-mark .answer-dock{min-height:0;padding:clamp(12px,1.5vw,18px);border:1px solid rgba(142,180,163,.2);border-radius:8px;background:#ffffffb8;box-shadow:0 16px 42px #345b4e1f}.layout-order .answer-dock.mode-order{grid-template-rows:minmax(104px,.3fr) minmax(0,.7fr) 72px}.layout-sort .answer-dock.mode-sort{grid-template-rows:minmax(108px,.28fr) minmax(0,.72fr) 72px}.layout-mark .answer-dock.mode-mark{grid-template-rows:minmax(0,1fr) 72px}.round-action{width:74px;height:74px;justify-self:end;background:linear-gradient(145deg,#44c979,#20a95a)}.option-stack{min-height:0;display:grid;grid-template-rows:repeat(3,minmax(120px,1fr));gap:clamp(10px,1.3vw,16px)}.option-button{min-height:0;position:relative;display:grid;place-items:center;padding:10px;background:#fffffff0;border:3px solid rgba(226,197,153,.72);border-radius:8px;box-shadow:0 14px 28px #3445531f;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.option-button:hover,.option-button:focus-visible{transform:translateY(-2px);border-color:#72d692;outline:none}.option-button.is-selected{border-color:#4ca3ff;background:#fffdf7fa;box-shadow:0 0 0 4px #4ca3ff24,0 16px 36px #4ca3ff2e}.option-button.is-correct{border-color:#31bd65;background:#fffdf7fa;box-shadow:0 0 0 4px #31bd6524,0 14px 28px #31bd651f}.option-button.is-wrong{border-color:#f0993d;background:#fffdf7fa;box-shadow:0 0 0 4px #f0993d24,0 16px 34px #f0993d29;animation:option-wobble .36s ease}.option-button.is-compact{min-height:86px;padding:8px}.option-button.is-eliminated{opacity:.36;transform:scale(.96);border-color:#66767e40;background:#f5f8f6eb;box-shadow:none}.eliminate-mark{position:absolute;inset:auto 10px 10px auto;width:38px;height:38px;display:grid;place-items:center;border-radius:999px;color:#fff;background:#ee6452eb;box-shadow:0 8px 16px #ee64523d}.place-target{min-height:96px;display:grid;place-items:center;border:3px dashed rgba(201,158,92,.7);border-radius:8px;color:#b98f55;background:linear-gradient(135deg,#fff8e7eb,#fffdf6f5);box-shadow:inset 0 0 0 7px #ffffff5c}.place-target.is-filled{border-style:solid;border-color:#44c374a8;background:#f2fff6}.place-target .visual-item{width:clamp(76px,8vw,116px);height:clamp(76px,8vw,116px)}.place-rack{grid-template-rows:repeat(3,minmax(76px,1fr))}.pair-board{min-height:0;position:relative;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:12px}.pair-lines{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.pair-lines line{stroke:#40bd77;stroke-width:4.5;stroke-linecap:round;opacity:.78;filter:drop-shadow(0 4px 4px rgba(56,150,94,.18))}.pair-row{min-width:0;min-height:0;position:relative;z-index:1;display:grid;grid-template-columns:repeat(var(--pair-count, 3),minmax(0,1fr));gap:10px}.pair-card{min-width:0;min-height:0;position:relative;display:grid;place-items:center;padding:8px;border-radius:8px;border:3px solid rgba(226,197,153,.72);background:#fffdf7f5;box-shadow:0 12px 22px #3445531a;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.pair-card:focus-visible,.pair-card:hover{transform:translateY(-2px);outline:none;border-color:#72d692}.pair-card.is-active{border-color:#4ca3ff;background:#fffdf7fa;box-shadow:0 0 0 4px #4ca3ff24,0 14px 28px #4ca3ff29}.pair-card.is-matched{border-color:#36bd68;background:#fffdf7fa;box-shadow:0 0 0 4px #36bd681f,0 10px 18px #36bd681a}.pair-card.is-error{border-color:#f0993d;background:#fffdf7fa;box-shadow:0 0 0 4px #f0993d24;animation:option-wobble .36s ease}.pair-card:disabled{cursor:default}.pair-card .visual-item{--viewport-scale: .66;width:clamp(58px,7vw,88px);height:clamp(58px,7vw,88px)}.pair-badge{position:absolute;right:6px;bottom:6px;width:24px;height:24px;display:grid;place-items:center;border-radius:999px;color:#fff;background:#34bc67;box-shadow:0 6px 12px #34bc6738}.order-board{min-height:0;display:grid;grid-template-columns:repeat(var(--order-count, 4),minmax(0,1fr));gap:10px}.order-slot{min-width:0;min-height:0;display:grid;place-items:center;border:3px dashed rgba(201,158,92,.64);border-radius:8px;color:#b98f55;background:#fff8e7c7}.order-slot.is-filled{border-style:solid;border-color:#4ebc768a;background:#fffdf7fa;box-shadow:0 0 0 4px #4ebc761a}.order-slot .visual-item{width:clamp(52px,6.4vw,82px);height:clamp(52px,6.4vw,82px)}.order-rack{min-height:0;display:grid;grid-template-rows:repeat(3,minmax(76px,1fr));gap:10px}.layout-order .order-board{align-self:stretch}.layout-order .order-slot .visual-item{width:clamp(70px,12vw,128px);height:clamp(70px,12vw,128px)}.layout-order .order-rack{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr}.sort-items,.sort-bins,.mark-grid{min-height:0;display:grid;gap:10px}.sort-items{grid-template-columns:repeat(var(--sort-count, 3),minmax(0,1fr))}.sort-bins{grid-template-columns:repeat(var(--sort-bin-count, 2),minmax(0,1fr))}.sort-item-card,.sort-bin,.mark-card{min-width:0;min-height:0;position:relative;display:grid;place-items:center;padding:8px;border-radius:8px;border:3px solid rgba(226,197,153,.72);background:#fffdf7f5;box-shadow:0 12px 22px #3445531a;transition:transform .15s ease,border-color .15s ease,background .15s ease,opacity .15s ease}.sort-bin{overflow:hidden}.sort-bin-rule{width:min(68%,176px);aspect-ratio:1;display:grid;place-items:center;align-content:center;padding:16px;border-radius:8px;color:#285c78;background:#e9f6ffd1;border:2px solid rgba(80,164,223,.24);box-shadow:0 10px 22px #3a658714}.sort-bin-rule-icon{min-width:62px;min-height:62px;display:grid;place-items:center;transform:scale(1.72);transform-origin:center}.sort-bin-rule-more,.sort-bin-rule-big,.sort-bin-rule-wheel,.sort-bin-rule-fly,.sort-bin-rule-land{color:#236a45;background:#e7ffefe6;border-color:#34bc6747}.sort-bin-rule-less,.sort-bin-rule-small,.sort-bin-rule-no-wheel,.sort-bin-rule-no-fly{color:#3969b0;background:#edf5ffe6;border-color:#4c84e23d}.sort-bin-rule-inside,.sort-bin-rule-outside,.sort-bin-rule-up,.sort-bin-rule-down,.sort-bin-rule-before,.sort-bin-rule-after,.sort-bin-rule-upper-body,.sort-bin-rule-lower-body{color:#8a5c20;background:#fff7e4eb;border-color:#c99e5c52}.sort-bin-rule-water,.sort-bin-rule-color{color:#216b9b;background:#e7f7ffeb;border-color:#50a4df47}.sort-item-card:hover,.sort-item-card:focus-visible,.sort-bin:hover,.sort-bin:focus-visible,.mark-card:hover,.mark-card:focus-visible{transform:translateY(-2px);outline:none;border-color:#72d692}.sort-item-card.is-active,.sort-bin.is-ready,.mark-card.is-marked{border-color:#4ca3ff;background:#fffdf7fa;box-shadow:0 0 0 4px #4ca3ff29,0 12px 22px #3445531a}.sort-item-card.is-placed{opacity:.46;border-color:#36bd687a;background:#fffdf7eb;box-shadow:none}.sort-card-badge,.mark-ring,.sort-bin-count{position:absolute;display:grid;place-items:center;border-radius:999px}.sort-card-badge,.mark-ring{right:6px;bottom:6px;width:26px;height:26px;color:#fff;background:#34bc67}.mark-ring{background:#34bc6729;border:2px solid rgba(52,188,103,.62)}.mark-card.is-marked .mark-ring{color:#fff;background:#34bc67}.sort-bin-count{top:7px;right:7px;width:28px;height:28px;color:#2b6a48;background:#e3ffebeb;border:2px solid rgba(52,188,103,.26);font-size:15px;font-weight:900}.sort-bin-cue{position:absolute;top:7px;left:7px;min-width:50px;height:32px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:999px;color:#285c78;background:#e9f6fff0;border:2px solid rgba(80,164,223,.26);box-shadow:0 6px 14px #3a658714;font-size:15px;font-weight:900;z-index:2}.sort-bin-cue-more,.sort-bin-cue-big{color:#236a45;background:#e7ffeff5;border-color:#34bc6747}.sort-bin-cue-less,.sort-bin-cue-small{color:#3969b0;background:#edf5fff5;border-color:#4c84e23d}.sort-bin-cue-left,.sort-bin-cue-right{color:#2f6f95}.sort-bin-cue-inside,.sort-bin-cue-outside{color:#8a5c20;background:#fff7e4f5;border-color:#c99e5c52}.sort-bin-cue-icon{min-width:18px;min-height:18px;display:grid;place-items:center}.sort-bin-cue-icon:empty{display:none}.sort-bin-cue-dots{width:22px;display:grid;grid-template-columns:repeat(2,7px);justify-content:center;gap:3px}.sort-bin-cue-dots i{width:7px;height:7px;border-radius:50%;background:currentColor}.sort-bin-cue-box{position:relative;width:21px;height:17px;border-radius:5px;border:2px solid currentColor}.sort-bin-cue-box i{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:currentColor;transform:translate(-50%,-50%)}.sort-bin-cue-box.is-outside i{left:calc(100% + 5px)}.sort-bin-cue-size{width:22px;height:18px;display:flex;align-items:flex-end;justify-content:center}.sort-bin-cue-size i{width:12px;height:8px;border-radius:4px 4px 2px 2px;background:currentColor}.sort-bin-cue-size.is-big i{width:16px;height:17px}.sort-bin-cue-pattern{width:22px;height:18px;border-radius:6px;border:2px solid currentColor}.sort-bin-cue-pattern.is-dots{background-image:radial-gradient(currentColor 2px,transparent 2px);background-size:8px 8px}.sort-bin-cue-pattern.is-stripes{background:repeating-linear-gradient(90deg,currentColor 0 3px,transparent 3px 7px)}.sort-bin-cue-wheel{position:relative;width:23px;height:23px;border:3px solid currentColor;border-radius:50%}.sort-bin-cue-wheel i{position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;background:currentColor}.sort-bin-cue-wheel.is-blocked:after,.sort-bin-cue-fly.is-blocked:after{content:"";position:absolute;left:50%;top:50%;width:32px;height:4px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(-38deg)}.sort-bin-cue-place{position:relative;width:28px;height:22px}.sort-bin-cue-place.is-water:before,.sort-bin-cue-place.is-water:after{content:"";position:absolute;left:1px;right:1px;height:6px;border-bottom:4px solid currentColor;border-radius:50%}.sort-bin-cue-place.is-water:before{top:3px}.sort-bin-cue-place.is-water:after{bottom:3px}.sort-bin-cue-place.is-land:before{content:"";position:absolute;left:2px;right:2px;bottom:3px;height:15px;border-radius:15px 15px 4px 4px;background:currentColor;clip-path:polygon(0 100%,35% 28%,58% 60%,78% 18%,100% 100%)}.sort-bin-cue-time{width:28px;height:22px;display:flex;align-items:flex-end;justify-content:center;gap:5px}.sort-bin-cue-time i{width:8px;border-radius:5px 5px 2px 2px;background:currentColor}.sort-bin-cue-time.is-before i:first-child,.sort-bin-cue-time.is-after i:last-child{height:19px}.sort-bin-cue-time.is-before i:last-child,.sort-bin-cue-time.is-after i:first-child{height:10px;opacity:.45}.sort-bin-cue-fly{position:relative;width:29px;height:20px}.sort-bin-cue-fly:before,.sort-bin-cue-fly:after{content:"";position:absolute;top:3px;width:17px;height:12px;border:4px solid currentColor;border-bottom:0}.sort-bin-cue-fly:before{left:0;border-radius:16px 12px 0 0;transform:rotate(-22deg)}.sort-bin-cue-fly:after{right:0;border-radius:12px 16px 0 0;transform:rotate(22deg)}.sort-bin-cue-fly.is-blocked:after{left:50%;right:auto;top:50%;width:32px;height:4px;border:0;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(-38deg)}.sort-bin-cue-clothing{position:relative;width:34px;height:30px;display:block}.sort-bin-cue-clothing:before{content:"";position:absolute;top:2px;right:2px;bottom:0;left:2px;background:currentColor;border-radius:7px 7px 4px 4px;clip-path:polygon(18% 0,38% 0,50% 13%,62% 0,82% 0,100% 26%,82% 44%,77% 100%,23% 100%,18% 44%,0 26%)}.sort-bin-cue-clothing.is-lower-body:before{top:1px;right:6px;bottom:0;left:6px;border-radius:7px 7px 4px 4px;clip-path:polygon(14% 0,86% 0,76% 100%,57% 100%,50% 34%,43% 100%,24% 100%)}.sort-bin-cue-color{width:28px;height:28px;border-radius:50%;background:var(--cue-color, currentColor);box-shadow:inset 0 -4px #0000001f,0 0 0 3px #ffffffc7,0 0 0 6px #50a4df29}.sort-bin-cue-generic{position:relative;width:32px;height:28px;display:block}.sort-bin-cue-generic:before,.sort-bin-cue-generic:after{content:"";position:absolute;width:16px;height:16px;border:4px solid currentColor;border-radius:6px}.sort-bin-cue-generic:before{left:1px;top:1px}.sort-bin-cue-generic:after{right:1px;bottom:1px;border-radius:50%}.sort-item-card .visual-item,.sort-bin .visual-item,.mark-card .visual-item{--viewport-scale: .72;width:clamp(58px,7vw,90px);height:clamp(58px,7vw,90px)}.mark-grid{grid-template-columns:repeat(var(--mark-count, 3),minmax(0,1fr))}.layout-sort .sort-items,.layout-sort .sort-bins{align-self:stretch}.layout-sort .sort-bin .visual-item{width:clamp(92px,13vw,150px);height:clamp(92px,13vw,150px)}.layout-sort .sort-item-card .visual-item{width:clamp(62px,8vw,96px);height:clamp(62px,8vw,96px)}.layout-mark .mark-grid{width:min(100%,760px);justify-self:center;align-self:center;grid-template-columns:repeat(var(--mark-count, 3),minmax(0,1fr))}.layout-mark .mark-card{aspect-ratio:1}.layout-mark .mark-card .visual-item{width:clamp(104px,15vw,178px);height:clamp(104px,15vw,178px)}.pair-badge:empty{display:none}.focus-preview{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:10px;padding:10px;border:2px solid rgba(226,197,153,.72);border-radius:8px;background:#fffdf7f5;box-shadow:0 14px 28px #3445531a}.focus-image{min-width:0;min-height:0;display:grid;place-items:center;border-radius:8px;background:#fff8e9}.focus-confirm{width:100%;height:100%;min-height:74px;display:grid;place-items:center;align-self:stretch;border-radius:8px;color:#fff;background:linear-gradient(145deg,#47ca78,#22aa5d);box-shadow:0 12px 22px #22945633}.focus-confirm:disabled{opacity:.42}.focus-strip{min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.focus-strip .option-button{min-height:86px}@keyframes option-wobble{0%,to{transform:translate(0)}24%{transform:translate(-7px)}48%{transform:translate(6px)}72%{transform:translate(-3px)}}.next-button{width:92px;height:92px;justify-self:end;align-self:end;background:linear-gradient(145deg,#ffc93f,#ffad22)}.next-button:disabled{cursor:default;opacity:.38;filter:grayscale(.2)}.parent-drawer{position:relative;flex:0 0 auto;width:70px;border-radius:8px;transition:width .2s ease;z-index:2}.parent-drawer.is-open{width:min(300px,30vw)}.drawer-toggle{width:54px;height:54px;background:#253046;position:absolute;top:8px;left:8px;z-index:2}.drawer-content{height:calc(100vh - 36px);padding:78px 16px 16px;background:#ffffffe6;border:1px solid rgba(119,151,137,.22);border-radius:8px;box-shadow:0 18px 44px #2c4a5821;display:flex;flex-direction:column;gap:18px}.drawer-content h2{margin:0;font-size:21px;letter-spacing:0}.drawer-content p{margin:6px 0 0;color:#6f7c85;font-size:14px}.insight-list{display:grid;gap:12px}.insight-row{display:grid;grid-template-columns:76px 24px minmax(0,1fr);gap:8px;align-items:center;font-size:13px;color:#495866}.insight-row strong{color:#1f2d3d}.mini-meter{height:8px;background:#e6ecea;border-radius:999px;overflow:hidden}.mini-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4cc884,#7ad4ee)}.drawer-button{min-height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px;background:#eef8f3;color:#253046;font-size:14px;font-weight:750}.drawer-button:disabled{cursor:default;opacity:.78}.drawer-note{margin-top:auto;display:flex;align-items:center;gap:8px;color:#71808a;font-size:12px;line-height:1.4}.loading-card{display:grid;place-items:center;align-content:center;gap:14px;color:#6f7c85;font-size:22px;min-height:300px;text-align:center;background:#ffffffd1;border:2px solid rgba(151,187,165,.22);border-radius:8px;box-shadow:0 18px 42px #4467531a}.loading-card span:after{content:"...";display:inline-block;width:1.4em;text-align:left;animation:loading-dots 1s ease-in-out infinite}@keyframes loading-dots{0%{opacity:.25;transform:translateY(1px)}50%{opacity:1;transform:translateY(0)}to{opacity:.25;transform:translateY(1px)}}.loading-card button{min-width:132px;min-height:48px;border-radius:8px;background:#39bd6b;color:#fff;font-size:17px;font-weight:800;box-shadow:0 10px 22px #2e9e5c33}.loading-card.is-error{color:#7b6237}.visual-item{--scale: 1;--viewport-scale: 1;width:calc(112px * var(--scale));height:calc(112px * var(--scale));display:grid;place-items:center;position:relative}.visual-item>*{transform:scale(calc(var(--scale) * var(--viewport-scale)));transform-origin:center}.visual-item>.ai-asset{width:100%;height:100%;display:block;border-radius:8px;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;transform:none}.visual-item>.ai-asset.is-matte{mix-blend-mode:multiply;filter:saturate(1.04) contrast(1.02)}.apple-stack,.shape-stack,.balloons{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;width:100%}.apple{width:58px;height:56px;border-radius:45% 48% 52% 50%;background:radial-gradient(circle at 32% 28%,rgba(255,196,181,.9) 0 12%,transparent 13%),linear-gradient(145deg,#ff806b,#e84943);box-shadow:inset -8px -10px #a41e241f,0 10px 14px #632b241f;position:relative}.apple-stem{width:8px;height:18px;border-radius:6px;background:#8a5b32;position:absolute;top:-9px;left:26px}.apple-leaf{width:24px;height:14px;border-radius:70% 20%;background:linear-gradient(145deg,#7bd36f,#3ea94f);position:absolute;top:-6px;left:31px;transform-origin:left bottom}.basket{width:118px;height:98px;position:relative}.basket-handle{position:absolute;width:86px;height:58px;border:10px solid #d49345;border-bottom:0;border-radius:50px 50px 0 0;left:16px;top:0}.basket-body{position:absolute;width:110px;height:45px;left:4px;bottom:5px;border-radius:11px 11px 28px 28px;background:repeating-linear-gradient(35deg,transparent 0 12px,rgba(124,74,26,.12) 13px 17px),linear-gradient(#e2aa5d,#c98334);box-shadow:inset 0 -8px #6339141f}.basket-apples{position:absolute;left:26px;top:38px;display:flex;gap:4px;z-index:2}.mini-apple,.tree-apple{width:22px;height:22px;border-radius:50% 45%;background:#ef5148;box-shadow:inset -3px -4px #78211c1a}.tree{width:120px;height:120px;position:relative;display:grid;place-items:center}.tree-crown{width:108px;height:82px;border-radius:50% 52% 45% 48%;background:radial-gradient(circle at 28% 45%,#9dde68 0 22%,transparent 23%),radial-gradient(circle at 70% 45%,#8cd25b 0 24%,transparent 25%),linear-gradient(145deg,#a7e071,#73bf52);position:absolute;top:8px}.tree-trunk{width:34px;height:52px;border-radius:14px 14px 8px 8px;background:linear-gradient(145deg,#a46935,#7d4627);position:absolute;bottom:8px}.tree-apple{position:relative;display:inline-block;margin:8px 3px;z-index:2}.duck{width:118px;height:98px;position:relative}.duck-left{transform:scaleX(-1)}.duck-body{width:82px;height:52px;border-radius:50% 44% 48% 52%;position:absolute;left:18px;bottom:14px;box-shadow:inset -8px -8px #64521317}.duck-head{width:48px;height:48px;border-radius:50%;position:absolute;right:13px;top:10px}.duck-eye{width:7px;height:7px;border-radius:50%;background:#263342;position:absolute;top:15px;right:13px}.duck-beak{width:22px;height:12px;border-radius:10px;background:#ff904c;position:absolute;right:-13px;top:24px}.mushroom{width:112px;height:104px;position:relative}.mushroom-cap{width:100px;height:58px;border-radius:60px 60px 18px 18px;position:absolute;top:8px;left:6px;box-shadow:inset -8px -8px #4b302814}.mushroom-dot{width:14px;height:14px;border-radius:50%;background:#fff7e9;display:inline-block;margin:10px 5px}.mushroom-stem{width:42px;height:50px;border-radius:16px 16px 24px 24px;background:#ffe6bf;position:absolute;left:35px;bottom:5px}.snail{width:118px;height:84px;position:relative}.snail.is-shadow{filter:grayscale(1);opacity:.72}.snail-shell{width:58px;height:58px;border-radius:50%;position:absolute;left:22px;bottom:14px;box-shadow:inset -10px -8px #502c201a}.snail-shell:after{content:"";width:30px;height:30px;border:5px solid rgba(255,255,255,.7);border-radius:50%;position:absolute;left:12px;top:12px}.snail-body{width:90px;height:32px;border-radius:22px 22px 16px 16px;position:absolute;right:0;bottom:10px}.snail-eye{width:18px;height:28px;border-left:4px solid currentColor;position:absolute;top:-24px;color:#425060}.snail-eye:after{content:"";width:8px;height:8px;border-radius:50%;background:#253046;position:absolute;left:-6px;top:-2px}.snail-eye.one{right:18px}.snail-eye.two{right:39px}.shape-stack{gap:10px}.shape{width:48px;height:48px;display:block;box-shadow:inset -5px -6px #32323214,0 7px 10px #2d3d461c}.shape-circle{border-radius:50%}.shape-square{border-radius:8px}.shape-triangle{clip-path:polygon(50% 3%,98% 92%,2% 92%)}.shape-star{clip-path:polygon(50% 0%,63% 33%,98% 35%,70% 56%,79% 91%,50% 72%,21% 91%,30% 56%,2% 35%,37% 33%)}.balloons{align-items:flex-end;gap:5px}.balloon{width:34px;height:46px;border-radius:50% 50% 45% 45%;position:relative;display:block;box-shadow:inset -5px -7px #20242d14}.balloon i{width:2px;height:35px;background:#b69a78;position:absolute;left:50%;top:43px}.bear-scene{width:132px;height:112px;position:relative}.chair{width:82px;height:88px;position:absolute;left:24px;top:9px;z-index:2}.chair-back{width:64px;height:52px;border-radius:12px;background:#8cd3f4;position:absolute;left:9px;top:0;box-shadow:inset -7px -7px #2c638b1c}.chair-seat{width:78px;height:18px;border-radius:12px;background:#51b3df;position:absolute;left:2px;top:48px}.chair-leg{width:11px;height:32px;background:#3d93bd;border-radius:8px;position:absolute;top:62px}.chair-leg.left{left:12px}.chair-leg.right{right:12px}.bear{width:52px;height:48px;border-radius:50%;background:#b87a43;position:absolute;z-index:3;box-shadow:inset -6px -7px #492b1b1a}.bear .ear{width:18px;height:18px;border-radius:50%;background:#9b6336;position:absolute;top:-5px}.bear .ear.left{left:3px}.bear .ear.right{right:3px}.bear .face{width:24px;height:18px;border-radius:50%;background:#f4d6aa;position:absolute;left:14px;top:20px}.relation-under .bear{left:41px;top:55px}.relation-on .bear{left:41px;top:0}.relation-beside .bear{right:0;top:47px}.relation-behind .bear{left:40px;top:32px;z-index:1}.food{width:112px;height:100px;position:relative}.carrot-body{width:42px;height:76px;background:linear-gradient(145deg,#ff9445,#f06a2a);clip-path:polygon(50% 100%,5% 15%,95% 15%);position:absolute;left:35px;top:22px}.carrot-leaf{width:56px;height:36px;background:radial-gradient(ellipse at 30% 70%,#45b761 0 32%,transparent 33%),radial-gradient(ellipse at 66% 70%,#55c96d 0 34%,transparent 35%);position:absolute;left:28px;top:0}.fish-body{width:72px;height:48px;border-radius:50%;background:#62c8ee;position:absolute;left:28px;top:29px}.fish-tail{width:34px;height:44px;background:#4ea7d4;clip-path:polygon(0 50%,100% 0,100% 100%);position:absolute;left:5px;top:31px}.bone-body{width:78px;height:26px;border-radius:18px;background:#fff4dc;position:absolute;left:17px;top:38px;box-shadow:-13px -10px #fff4dc,-13px 10px #fff4dc,73px -10px #fff4dc,73px 10px #fff4dc,0 8px 16px #5f472a1f}.acorn-cap{width:62px;height:30px;border-radius:28px 28px 12px 12px;background:#8a5734;position:absolute;left:25px;top:18px}.acorn-body{width:56px;height:58px;border-radius:50% 50% 46% 46%;background:#bd7a41;position:absolute;left:28px;top:38px}@media(max-width:920px){body{overflow:hidden}.app-shell{width:100vw;min-height:100svh;max-height:100svh;padding:8px;gap:0;background:linear-gradient(180deg,#f7fff9,#eefcf7 54%,#eaf7ff),#f7fff9}.welcome-screen{min-height:100svh;max-height:100svh}.parent-drawer{position:fixed;left:8px;top:8px;width:0;flex-basis:0;min-width:0;z-index:6}.parent-drawer.is-open{width:min(300px,calc(100vw - 16px))}.kid-stage{padding-left:0;width:100%;max-width:100vw;overflow:hidden;gap:6px}.kid-header{height:54px;gap:6px;padding-left:52px}.home-button{width:48px;height:48px}.play-grid{flex:1;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) clamp(174px,23svh,214px);gap:8px}.play-grid.layout-order,.play-grid.layout-sort,.play-grid.layout-mark{grid-template-columns:1fr;grid-template-rows:50px minmax(0,1fr);gap:7px}.play-grid.layout-connect{grid-template-columns:1fr;grid-template-rows:minmax(188px,.38fr) minmax(0,.62fr);gap:7px}.puzzle-canvas{padding:10px;grid-template-rows:minmax(0,1fr);overflow:hidden;background:#fffffff0;border-color:#67978438;box-shadow:0 14px 34px #325b4b1c}.layout-order .puzzle-canvas,.layout-sort .puzzle-canvas,.layout-mark .puzzle-canvas{min-height:0;padding:0;background:transparent;border-color:transparent;box-shadow:none}.layout-order .prompt-bubble,.layout-sort .prompt-bubble,.layout-mark .prompt-bubble{right:0;min-width:88px;height:42px;padding:0 11px;gap:5px;font-size:14px}.visual-stage{width:100%;height:100%;padding:8px;justify-items:center;align-items:center}.match-board,.set-board,.sequence-board{justify-self:center}.prompt-bubble{top:8px;right:8px;min-width:86px;height:40px;padding:0 10px;gap:5px;font-size:14px;background:#ffffffad;border-color:#43b06f2e;box-shadow:0 5px 12px #328e570f}.center-zone{min-height:0;position:relative;grid-template-rows:minmax(0,1fr);gap:0}.feedback-ribbon{position:absolute;left:50%;bottom:10px;width:min(78%,280px);height:52px;opacity:0;visibility:hidden;transform:translate(-50%) translateY(10px);z-index:4;pointer-events:none;background:#ecfff3f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.feedback-ribbon.try-again,.feedback-ribbon.right{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.layout-order .feedback-ribbon,.layout-sort .feedback-ribbon,.layout-mark .feedback-ribbon{position:fixed;top:auto;bottom:18px;width:min(78%,280px);height:52px}.answer-dock{min-height:0;height:100%;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(136px,1fr);gap:8px;padding:9px;border-radius:8px;background:#ffffffc7;border:1px solid rgba(142,180,163,.22);box-shadow:0 -8px 26px #345b4e1a}.answer-dock.mode-place{grid-template-rows:minmax(0,1fr)}.answer-dock.mode-focus{grid-template-columns:minmax(0,1fr) 58px;grid-template-rows:minmax(0,1fr)}.answer-dock.mode-pair{grid-template-rows:minmax(0,1fr)}.answer-dock.mode-order{grid-template-rows:56px minmax(0,1fr)}.answer-dock.mode-sort{grid-template-rows:minmax(60px,.45fr) minmax(76px,.55fr)}.answer-dock.mode-order{grid-template-rows:62px minmax(0,1fr)}.answer-dock.mode-sort{grid-template-rows:minmax(64px,.46fr) minmax(76px,.54fr)}.answer-dock.mode-mark{grid-template-rows:minmax(0,1fr)}.layout-order .answer-dock,.layout-sort .answer-dock,.layout-mark .answer-dock{padding:9px;background:#ffffffd1;box-shadow:0 -8px 26px #345b4e1a}.layout-order .answer-dock.mode-order{height:auto;align-self:start;grid-template-rows:clamp(112px,18svh,146px) clamp(132px,24svh,176px);align-content:start}.layout-sort .answer-dock.mode-sort{grid-template-rows:96px minmax(0,1fr)}.layout-mark .answer-dock.mode-mark{grid-template-rows:minmax(0,1fr)}.next-button{display:none}.option-stack{min-height:0;height:100%;align-self:stretch;width:100%;grid-column:1;grid-row:1;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr;gap:8px;padding-right:0;align-items:stretch}.option-button{min-height:136px;height:100%;justify-items:center;align-items:center;padding:8px;overflow:hidden;background:#fffdf7fa;border-color:#e2be86a8;box-shadow:0 12px 22px #3f4a581a}.option-button.is-compact{min-height:0}.place-target{display:none}.place-target .visual-item{width:54px;height:54px}.place-rack{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr}.pair-board,.pair-row{gap:7px}.pair-card{padding:5px;border-width:2px;box-shadow:0 8px 16px #34455314}.pair-card .visual-item{--viewport-scale: .72;width:clamp(52px,18vw,82px);height:clamp(52px,18vw,82px)}.pair-badge{width:21px;height:21px;right:4px;bottom:4px}.pair-lines line{stroke-width:3.6}.order-board{grid-template-columns:repeat(var(--order-count, 4),minmax(0,1fr));gap:7px}.order-slot{border-width:2px}.order-slot .visual-item{width:clamp(40px,13vw,58px);height:clamp(40px,13vw,58px)}.order-rack{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:8px}.layout-order .order-rack .option-button{min-height:0;height:100%}.sort-items,.sort-bins,.mark-grid{gap:8px}.sort-item-card,.sort-bin,.mark-card{padding:5px;border-width:2px}.sort-item-card .visual-item,.sort-bin .visual-item,.mark-card .visual-item{--viewport-scale: .76;width:clamp(52px,18vw,78px);height:clamp(52px,18vw,78px)}.sort-card-badge,.mark-ring{width:22px;height:22px;right:4px;bottom:4px}.sort-bin-count{top:4px;right:4px;width:24px;height:24px;font-size:13px}.sort-bin-cue{top:5px;left:5px;min-width:42px;height:28px;padding:0 7px;gap:4px;font-size:14px;border-width:2px}.sort-bin-rule{width:min(78%,174px);padding:13px}.sort-bin-rule-icon{min-width:56px;min-height:56px;transform:scale(1.58)}.sort-bin-cue-icon{min-width:16px;min-height:16px}.sort-bin-cue-dots{width:18px;grid-template-columns:repeat(2,6px);gap:3px}.sort-bin-cue-dots i{width:6px;height:6px}.layout-order .order-board{min-height:0}.layout-order .order-slot .visual-item{width:clamp(50px,14vw,74px);height:clamp(50px,14vw,74px)}.layout-order .order-rack .option-button .visual-item{width:clamp(82px,24vw,118px);height:clamp(82px,24vw,118px)}.layout-sort .sort-items{grid-template-columns:repeat(var(--sort-count, 6),minmax(0,1fr))}.layout-sort .sort-bins{grid-template-columns:repeat(var(--sort-bin-count, 2),minmax(0,1fr))}.layout-sort .sort-item-card .visual-item{width:clamp(44px,13vw,68px);height:clamp(44px,13vw,68px)}.layout-sort .sort-bin .visual-item{width:clamp(82px,24vw,126px);height:clamp(82px,24vw,126px)}.layout-mark .mark-grid{width:min(100%,420px);justify-self:center;align-self:start;align-content:start;margin-top:clamp(24px,6svh,54px);grid-template-columns:repeat(auto-fit,minmax(min(128px,100%),1fr))}.layout-mark .mark-grid.count-4{width:min(100%,382px);grid-template-columns:repeat(2,minmax(0,1fr))}.layout-mark .mark-card{aspect-ratio:1;min-height:0}.layout-mark .mark-card .visual-item{width:clamp(92px,28vw,138px);height:clamp(92px,28vw,138px)}.layout-connect .pair-card .visual-item{width:clamp(72px,22vw,108px);height:clamp(72px,22vw,108px)}.focus-preview{grid-template-columns:minmax(0,1fr) 58px;gap:8px;padding:7px;border-width:2px}.focus-image .visual-item{--viewport-scale: .82;width:clamp(86px,27vw,118px);height:clamp(86px,27vw,118px)}.focus-confirm{grid-column:2;grid-row:1;width:58px;min-height:0;height:100%}.focus-strip{grid-column:1;grid-row:1;height:100%;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr;gap:8px}.focus-strip .option-button{min-height:0;height:100%;padding:7px}.focus-strip .option-button .visual-item{--viewport-scale: .82;width:clamp(82px,25vw,116px);height:clamp(82px,25vw,116px)}.option-button .visual-item{--viewport-scale: .96;width:clamp(94px,27vw,126px);height:clamp(94px,27vw,126px)}.option-button .tree{transform:scale(calc(var(--scale) * var(--viewport-scale)))}.visual-item{--viewport-scale: .76;width:calc(92px * var(--scale));height:calc(92px * var(--scale))}.matrix-board{width:min(100%,356px);max-height:100%;margin-left:0;aspect-ratio:1}.matrix-board.columns-2{width:min(100%,326px);aspect-ratio:1.08}.matrix-board .visual-item{--viewport-scale: .72;width:calc(88px * var(--scale));height:calc(88px * var(--scale))}.sequence-board{width:min(100%,352px);grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px}.sequence-cell,.set-item{min-height:76px}.match-board{grid-template-columns:1fr;width:100%;height:100%;place-items:center}.match-target{width:min(82vw,340px);max-width:100%}.match-target .visual-item{--viewport-scale: 1;width:clamp(214px,68vw,314px);height:clamp(214px,68vw,314px)}.set-board{width:min(100%,320px);grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:10px}.sort-stage-board{width:min(100%,286px);grid-template-columns:repeat(2,minmax(104px,1fr));gap:10px}.mark-stage-board{width:min(100%,320px);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:9px}.sort-stage-bin,.mark-stage-item{min-height:78px}.drawer-toggle{width:46px;height:46px;top:0;left:0}.drawer-content{height:calc(100svh - 16px);padding-top:64px}}@media(max-width:430px)and (orientation:portrait){.app-shell{padding:7px}.welcome-screen{min-height:100svh}.welcome-start{width:clamp(142px,17svh,158px);height:clamp(142px,17svh,158px)}.kid-header{height:48px;padding-left:44px}.home-button{width:42px;height:42px}.progress-dots{gap:7px}.progress-dots span{width:10px}.play-grid{grid-template-rows:minmax(0,1fr) clamp(178px,23svh,206px)}.play-grid.layout-order,.play-grid.layout-sort,.play-grid.layout-mark{grid-template-rows:46px minmax(0,1fr)}.play-grid.layout-connect{grid-template-rows:minmax(176px,.37fr) minmax(0,.63fr)}.puzzle-canvas{border-width:1px;padding:7px;grid-template-rows:minmax(0,1fr)}.prompt-bubble{width:38px;height:38px}.layout-order .prompt-bubble,.layout-sort .prompt-bubble,.layout-mark .prompt-bubble{min-width:80px;height:38px;padding:0 9px;font-size:13px}.center-zone{grid-template-rows:minmax(0,1fr)}.feedback-ribbon strong{font-size:18px;min-width:84px}.reward-star{width:36px}.answer-dock{grid-template-columns:1fr;grid-template-rows:minmax(124px,1fr);gap:7px;padding:8px}.answer-dock.mode-place{grid-template-rows:minmax(0,1fr)}.answer-dock.mode-focus{grid-template-columns:minmax(0,1fr) 52px;grid-template-rows:minmax(0,1fr)}.answer-dock.mode-pair{grid-template-rows:minmax(0,1fr)}.layout-order .answer-dock.mode-order{height:auto;align-self:start;grid-template-rows:clamp(104px,17svh,132px) clamp(120px,22svh,154px);align-content:start}.layout-sort .answer-dock.mode-sort{grid-template-rows:88px minmax(0,1fr)}.next-button{width:60px;height:60px;right:9px;bottom:9px}.option-stack{height:100%;width:100%;gap:7px}.place-target{display:none}.place-target .visual-item{width:48px;height:48px}.pair-board,.pair-row{gap:6px}.pair-card{padding:4px}.pair-card .visual-item{width:clamp(48px,17vw,74px);height:clamp(48px,17vw,74px)}.order-board,.order-rack,.sort-items,.sort-bins,.mark-grid{gap:6px}.order-slot .visual-item{width:clamp(38px,12vw,52px);height:clamp(38px,12vw,52px)}.sort-item-card,.sort-bin,.mark-card{padding:4px}.sort-item-card .visual-item,.sort-bin .visual-item,.mark-card .visual-item{width:clamp(48px,17vw,70px);height:clamp(48px,17vw,70px)}.sort-bin-rule{width:min(76%,136px);padding:10px}.sort-bin-rule-icon{min-width:44px;min-height:44px;transform:scale(1.36)}.focus-preview{grid-template-columns:minmax(0,1fr) 52px;gap:6px;padding:6px}.focus-confirm{grid-column:2;grid-row:1;width:52px;min-height:0;height:100%}.focus-strip{grid-column:1;grid-row:1;height:100%;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr;gap:7px}.focus-strip .option-button{min-height:0}.focus-strip .option-button .visual-item{width:clamp(74px,24vw,104px);height:clamp(74px,24vw,104px)}.visual-item{--viewport-scale: .7;width:calc(86px * var(--scale));height:calc(86px * var(--scale))}.matrix-board{width:min(100%,340px);aspect-ratio:1}.matrix-board.columns-2{width:min(100%,314px);aspect-ratio:1.08}.matrix-board .visual-item{--viewport-scale: .68;width:calc(82px * var(--scale));height:calc(82px * var(--scale))}.empty-slot{border-width:3px;font-size:32px}.sequence-board{width:min(100%,326px);grid-template-columns:repeat(auto-fit,minmax(66px,1fr));gap:7px}.sequence-cell,.set-item{min-height:68px}.sequence-cell,.set-item,.match-target,.option-button{border-width:2px}.option-button .visual-item{--viewport-scale: .9;width:clamp(88px,27vw,112px);height:clamp(88px,27vw,112px)}.option-button{min-height:124px}.match-target{width:min(84vw,326px)}.match-target .visual-item{--viewport-scale: 1;width:clamp(208px,68vw,296px);height:clamp(208px,68vw,296px)}.set-board{width:min(100%,300px);grid-template-columns:repeat(auto-fit,minmax(102px,1fr));gap:8px}.sort-stage-board{width:min(100%,270px);grid-template-columns:repeat(2,minmax(96px,1fr));gap:8px}.mark-stage-board{width:min(100%,300px);grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}.layout-mark .mark-grid{margin-top:clamp(18px,4svh,34px)}.layout-mark .mark-grid.count-4{width:min(100%,330px)}}@media(prefers-reduced-motion:reduce){.option-button,.feedback-ribbon,.prompt-bubble,.welcome-start{transition:none}.option-button.is-wrong,.loading-card span:after,.welcome-spinner{animation:none}}
