:root{--mint-050: #f4f9ed;--mint-100: #e8f2de;--mint-200: #d5e8c2;--mint-300: #b9d796;--mint-400: #88be6a;--mint-500: #64a653;--mint-600: #4d8d46;--mint-700: #2f6b3a;--ink: #203d2a;--muted: #5e7561;--line: rgba(68, 121, 59, .2);--white-glass: rgba(251, 255, 247, .72);--shadow-soft: 0 22px 70px rgba(57, 103, 47, .14);--shadow-card: 0 12px 30px rgba(47, 96, 47, .12);font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:var(--ink);background:var(--mint-050);font-synthesis:none}*{box-sizing:border-box}html{min-width:320px;background:var(--mint-050)}body{margin:0;min-width:320px;min-height:100dvh;background:radial-gradient(circle at 12% 8%,rgba(185,215,150,.42),transparent 32%),radial-gradient(circle at 86% 18%,rgba(136,190,106,.2),transparent 27%),linear-gradient(145deg,#fbfdf7,#edf6e4 48%,#e2f0d6)}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--mint-600);outline-offset:3px}.app-shell{min-height:100dvh;font-size:calc(16px * var(--font-scale));overflow-x:hidden}.topbar{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:24px 0 10px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{display:inline-flex;align-items:center;gap:11px;border:0;background:transparent;cursor:pointer;padding:4px 0;text-align:left}.brand>span:last-child{display:grid;gap:1px}.brand strong{font-size:1.05rem;letter-spacing:-.02em}.brand small{color:var(--mint-600);letter-spacing:.2em;font-size:.58rem;font-weight:800}.brand-orbit{width:34px;height:34px;border:2px solid var(--mint-500);border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 5px #ffffff80}.brand-orbit:before,.brand-orbit:after{content:"";position:absolute;background:var(--mint-500);border-radius:50%}.brand-orbit:before{width:6px;height:6px;top:-3px;left:13px}.brand-orbit:after{width:5px;height:5px;right:-2px;bottom:7px}.brand-orbit span{width:9px;height:9px;border:2px solid var(--mint-700);border-radius:50%}.top-actions{display:flex;align-items:center;gap:10px}.completion-pill{color:var(--muted);font-size:.8rem;background:#ffffff6e;padding:9px 13px;border:1px solid var(--line);border-radius:999px}.completion-pill b{color:var(--mint-700)}.ghost-button,.back-button,.close-button{border:1px solid var(--line);background:#ffffff73;border-radius:999px;min-height:44px;padding:0 16px;cursor:pointer;transition:transform .18s ease,background .18s ease}.ghost-button:hover,.back-button:hover,.close-button:hover{transform:translateY(-2px);background:#fffc}.home-main,.modules-main,.play-main{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:28px 0 70px}.hero-panel{min-height:500px;border:1px solid rgba(33,132,111,.17);border-radius:38px;padding:clamp(30px,6vw,74px);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:30px;background:linear-gradient(135deg,#ffffffbd,#d1f7eb7a);box-shadow:var(--shadow-soft);overflow:hidden;position:relative}.hero-panel:after{content:"";position:absolute;width:360px;height:360px;right:7%;top:-150px;border-radius:50%;background:#75ceb629;filter:blur(2px)}.eyebrow{color:var(--mint-600);font-size:.73rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.hero-copy{position:relative;z-index:1;max-width:540px}.hero-copy h1{margin:18px 0 16px;font-size:clamp(2.6rem,6vw,5.2rem);line-height:.98;letter-spacing:-.07em;max-width:600px}.hero-copy h1 em{display:block;color:var(--mint-600);font-style:normal}.hero-copy p{color:var(--muted);max-width:430px;line-height:1.8;margin:0 0 28px;font-size:1.02rem}.hero-actions,.complete-actions{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.primary-button,.secondary-button,.hint-button{min-height:50px;border-radius:17px;padding:0 19px;border:1px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;font-weight:800}.primary-button{color:#f7fffc;background:var(--mint-700);box-shadow:0 10px 20px #17605230}.primary-button:hover,.secondary-button:hover,.hint-button:hover{transform:translateY(-3px)}.primary-button:hover{background:var(--mint-600);box-shadow:0 14px 26px #1760523d}.primary-button span{margin-left:12px;font-size:1.2em}.secondary-button{background:#ffffff9e;border-color:var(--line);color:var(--mint-700)}.hero-note{margin-top:24px;color:var(--muted);font-size:.76rem;display:flex;align-items:center;gap:8px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--mint-500);box-shadow:0 0 0 5px #41ad931f}.character-stage{min-height:390px;position:relative;display:grid;place-items:center;z-index:1}.character-stage:before{content:"";position:absolute;width:280px;height:92px;bottom:14px;border-radius:50%;background:#21846f21;filter:blur(12px)}.brain-pod{width:215px;height:245px;display:grid;place-items:center;position:relative;z-index:2;animation:floatIdle 3.8s ease-in-out infinite}.brain-sprite{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 14px 8px rgba(23,96,82,.14))}.lady-pod{width:110px;height:140px;position:absolute;right:8%;bottom:42px;z-index:3;transform-origin:50% 100%}.lady-sprite{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 10px 6px rgba(23,96,82,.12))}.sprite-character{display:block;width:100%;height:100%;background-image:var(--sprite-image);background-repeat:no-repeat;background-size:500% 100%;background-position:0 0;image-rendering:pixelated;filter:drop-shadow(0 14px 8px rgba(23,96,82,.14));animation:spriteFrames var(--sprite-duration, 3.6s) steps(4,end) infinite}.card-brain-sprite{width:174px;height:286px;position:relative;z-index:3}.stage-brain-sprite{width:168px;height:280px}.stage-lady-sprite{width:96px;height:160px;filter:drop-shadow(0 10px 6px rgba(23,96,82,.12))}.brain-pod,.lady-pod,.character-stage .brain-pod.complete.brain-a,.character-stage .brain-pod.thinking.brain-b,.character-stage .brain-pod.complete.brain-c,.character-stage .lady-pod.think,.character-stage .lady-pod.celebrate,.character-stage .lady-pod.encourage{animation:none!important}.reduce-motion .sprite-character,.app-shell.reduce-motion .sprite-character{background-position:0 0}.speech-note{position:absolute;left:8%;bottom:15px;color:var(--mint-700);background:#ffffffa3;border:1px solid var(--line);border-radius:13px 13px 13px 4px;padding:9px 12px;font-size:.76rem;z-index:5;box-shadow:var(--shadow-card)}.thought-bubble{position:absolute;top:4px;right:6px;width:52px;height:36px;border-radius:50%;background:#ffffffdb;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:3px;animation:bubbleIn .35s ease-out both}.thought-bubble:after{content:"";position:absolute;left:7px;bottom:-7px;width:9px;height:9px;background:#ffffffdb;border-left:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(-28deg)}.thought-bubble i{width:4px;height:4px;background:var(--mint-500);border-radius:50%}.sparkle-cluster{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.sparkle-cluster i{position:absolute;color:var(--mint-600);font-style:normal;animation:sparkleBurst .9s ease-out both}.sparkle-cluster i:nth-child(1){top:7%;right:8%}.sparkle-cluster i:nth-child(2){top:24%;left:7%;animation-delay:.1s}.sparkle-cluster i:nth-child(3){bottom:22%;right:2%;animation-delay:.18s}.character-stage .brain-pod.complete.brain-a{animation:pencilAttack 1.15s ease-out both}.character-stage .brain-pod.thinking.brain-b{animation:thinkWriting 1.2s ease-in-out both}.character-stage .brain-pod.complete.brain-c{animation:magicSpin 1.05s ease-out both}.character-stage .lady-pod.think{animation:ladyThink 1.1s ease-in-out both}.character-stage .lady-pod.celebrate{animation:ladyCelebrate .9s cubic-bezier(.2,.9,.35,1.2) both}.character-stage .lady-pod.encourage{animation:ladyEncourage 2.8s ease-in-out infinite}.module-section,.companion-section{margin-top:72px}.entry-main{min-height:calc(100dvh - 90px);display:grid;place-items:center;padding-top:10px}.entry-shell{width:min(680px,100%);text-align:center}.entry-shell h1{margin:18px 0 12px;font-size:clamp(2.5rem,7vw,5rem);line-height:.98;letter-spacing:-.07em}.entry-shell p{color:var(--muted);margin:0 auto;line-height:1.8;max-width:500px}.entry-notice{margin:16px 0 0;color:var(--muted);font-size:.85rem;line-height:1.5;text-align:center}.entry-options{display:grid;gap:14px;max-width:560px;margin:36px auto 0}.entry-option{display:grid;grid-template-columns:48px 1fr 34px;align-items:center;gap:13px;width:100%;min-height:112px;padding:18px 22px;border:1px solid var(--line);border-radius:26px;background:#ffffff9e;cursor:pointer;text-align:left;box-shadow:0 12px 35px #21846f0f;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.entry-option:hover{transform:translateY(-4px);background:#ffffffdb;border-color:#21846f59;box-shadow:var(--shadow-card)}.primary-entry{background:linear-gradient(135deg,#d8f9edf5,#ffffffb8);border-color:#21846f47}.entry-index{color:var(--mint-600);font-size:.72rem;letter-spacing:.14em;font-weight:900}.entry-option-copy{display:grid;gap:5px}.entry-option-copy strong{font-size:1.25rem;letter-spacing:-.03em}.entry-option-copy small{color:var(--muted);font-size:.8rem}.entry-arrow{justify-self:end;color:var(--mint-700);font-size:1.4rem;transition:transform .2s ease}.entry-option:hover .entry-arrow{transform:translate(4px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.section-heading h2,.page-intro h1{margin:8px 0 0;font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.05em}.section-count{color:var(--mint-600);font-size:.77rem;font-weight:800}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.module-grid.large{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin-top:35px}.module-card{min-height:212px;text-align:left;position:relative;border:1px solid var(--line);border-radius:24px;background:#ffffff85;padding:21px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease;overflow:hidden}.module-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-44px;bottom:-42px;background:#75ceb63b}.module-card:hover{transform:translateY(-5px);background:#fffc;border-color:#21846f59;box-shadow:var(--shadow-card)}.module-code{color:var(--mint-600);font-size:.68rem;letter-spacing:.16em;font-weight:800}.module-glyph{width:47px;height:47px;display:grid;place-items:center;margin:18px 0 13px;color:var(--mint-700);border:1px solid rgba(33,132,111,.22);border-radius:15px;background:#d4f8edab;font-weight:900}.module-title{font-size:1.14rem;font-weight:800}.module-subtitle{color:var(--muted);font-size:.82rem;margin-top:4px}.module-description{color:var(--muted);line-height:1.6;margin-top:14px;max-width:340px}.module-tag{margin-top:auto;color:var(--mint-700);font-size:.73rem;padding-top:16px}.companion-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.companion-card{min-height:117px;display:flex;align-items:center;gap:11px;padding:12px;border-radius:21px;background:#ffffff6b;border:1px solid rgba(33,132,111,.13)}.companion-card.active{background:#dcfaf0bf;border-color:#21846f54}.companion-image{width:72px;height:85px;flex:0 0 auto;display:grid;place-items:center}.companion-image img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.companion-card strong,.companion-card small{display:block}.companion-card strong{font-size:.83rem}.companion-card small{color:var(--muted);margin-top:4px;font-size:.7rem}.modules-main{padding-top:55px}.carousel-main{padding-top:42px}.carousel-intro,.carousel-intro h1{max-width:680px}.module-carousel{display:grid;grid-template-columns:52px minmax(0,680px) 52px;gap:12px;align-items:center;width:min(100%,820px);margin:38px auto 0}.carousel-window{min-width:0;overflow:hidden;border-radius:30px;touch-action:pan-y}.carousel-track{display:flex;transition:transform .36s cubic-bezier(.2,.8,.2,1);will-change:transform}.carousel-slide{flex:0 0 100%;min-width:0;padding:4px}.carousel-card{min-height:410px;padding:clamp(28px,6vw,58px);border-radius:28px;border:1px solid var(--line);background:#ffffffad;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;align-items:flex-start}.carousel-card-top{width:100%;display:flex;justify-content:space-between;align-items:start;gap:14px}.carousel-glyph{width:72px;height:72px;display:grid;place-items:center;margin:30px 0 18px;color:var(--mint-700);border:1px solid rgba(33,132,111,.22);border-radius:22px;background:#d4f8edab;font-size:1.8rem;font-weight:900}.carousel-subtitle{color:var(--mint-700);font-weight:800;margin-top:8px}.carousel-card p{color:var(--muted);line-height:1.8;max-width:480px;margin:18px 0 28px}.carousel-card .primary-button{margin-top:auto}.carousel-arrow{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--mint-700);background:#ffffffa6;cursor:pointer;font-size:1.25rem;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.carousel-arrow:hover{transform:scale(1.08);background:#ffffffe6;box-shadow:var(--shadow-card)}.carousel-footer{width:min(100%,680px);margin:22px auto 0;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.8rem}.carousel-dots{display:flex;align-items:center;gap:7px}.carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#21846f33;cursor:pointer;transition:width .18s ease,background .18s ease}.carousel-dots button.active{width:26px;border-radius:99px;background:var(--mint-700)}.scene-card-slide{--scene-deep: #39756b;--scene-ink: #3e625c;--scene-accent: #7ab89f;--scene-soft: rgba(214, 242, 230, .34);--scene-line: rgba(57, 117, 107, .24);--scene-wash: rgba(196, 235, 219, .46)}.scene-card-forest{--scene-deep: #2f633d;--scene-ink: #285437;--scene-accent: #8fbd65;--scene-soft: rgba(211,235,188,.5);--scene-line: rgba(54,112,60,.3);--scene-wash: rgba(203,231,182,.64)}.scene-card-study{--scene-deep: #486b4d;--scene-ink: #3b5842;--scene-accent: #a8c978;--scene-soft: rgba(223,233,194,.52);--scene-line: rgba(75,107,71,.28);--scene-wash: rgba(220,234,191,.6)}.scene-card-moon{--scene-deep: #425650;--scene-ink: #314840;--scene-accent: #b5c66d;--scene-soft: rgba(198,213,182,.42);--scene-line: rgba(64,98,84,.32);--scene-wash: rgba(192,211,197,.5)}.scene-card-orchard{--scene-deep: #9a7355;--scene-ink: #6d6857;--scene-accent: #d49a64;--scene-soft: rgba(239,225,189,.42);--scene-line: rgba(154,115,85,.25);--scene-wash: rgba(236,219,171,.46)}.scene-card{min-height:610px;padding:0;position:relative;overflow:hidden;border:1px solid var(--scene-line);border-radius:30px;background:#ffffff24;box-shadow:0 28px 70px #325b5221}.scene-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.24),transparent 42%,rgba(255,255,255,.06))}.card-title-zone{width:100%;min-height:92px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;position:relative;z-index:2;padding:21px 25px 17px;border-bottom:1px solid var(--scene-line);background:#ffffff1f}.card-title-mark{display:grid;gap:7px;justify-items:start}.card-title-line{display:block;width:28px;height:3px;border-radius:99px;background:var(--scene-accent)}.card-kicker{color:var(--scene-deep);opacity:.72;font-size:.67rem;letter-spacing:.14em;font-weight:900}.card-title-copy h2{margin:4px 0 0;color:var(--scene-ink);font-size:clamp(1.45rem,3vw,2rem);letter-spacing:-.06em}.scene-card .module-tag{margin:0;color:var(--scene-deep);opacity:.72;font-size:.7rem;text-align:right}.card-scene{width:100%;min-height:310px;position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;padding:15px 20px 35px;background:linear-gradient(145deg,var(--scene-soft),rgba(255,255,255,.04) 58%)}.card-scene:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:radial-gradient(circle at 50% 18%,rgba(255,255,255,.56),transparent 40%),linear-gradient(180deg,var(--scene-wash),rgba(255,255,255,.03) 82%);opacity:.78}.card-scene:after{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;z-index:-1;border:1px dashed var(--scene-line);border-radius:23px;pointer-events:none}.scene-decor{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.scene-caption,.scene-note{position:absolute;z-index:5;color:var(--scene-deep);background:#ffffff5e;border:1px solid var(--scene-line);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.scene-caption{left:25px;bottom:13px;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-size:.7rem;font-weight:900}.scene-pin{display:grid;place-items:center;width:14px;height:14px;border-radius:50%;color:#fff;background:var(--scene-deep);font-size:.68rem}.scene-note{right:25px;bottom:13px;padding:6px 9px;border-radius:9px;font-size:.65rem;opacity:.82}.card-copy-zone{width:100%;min-height:160px;position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:20px 25px 23px;border-top:1px solid var(--scene-line);background:#ffffff24}.card-copy-lines{min-width:0}.card-copy-lines strong{display:block;color:var(--scene-ink);font-size:1rem}.card-copy-lines p{margin:8px 0 0;color:var(--scene-deep);opacity:.78;line-height:1.7;font-size:.78rem}.scene-card .primary-button{min-height:45px;margin:0;color:#fff;background:var(--scene-deep);box-shadow:0 10px 22px #385d532b}.scene-sun,.scene-moon{position:absolute;width:40px;height:40px;top:35px;right:11%;border-radius:50%;background:#eecd898c;box-shadow:0 0 0 10px #eecd891a}.scene-moon{background:#efe4b7d1;box-shadow:0 0 0 9px #efe4b71f}.scene-mist{position:absolute;width:120px;height:15px;border-radius:99px;background:#ffffff47;filter:blur(2px)}.mist-one{left:-18px;bottom:74px}.mist-two{right:-24px;bottom:95px;transform:scale(.7)}.scene-tree{position:absolute;width:35px;height:110px;bottom:46px;border-radius:20px 20px 8px 8px;background:#4a876f61}.scene-tree:before,.scene-tree:after{content:"";position:absolute;width:48px;height:48px;border-radius:50%;background:#73ae8b6b}.scene-tree:before{left:-14px;top:-22px}.scene-tree:after{right:-15px;top:-5px}.tree-left{left:7%;transform:scale(.78)}.tree-right{right:6%;transform:scale(.96)}.scene-leaf{position:absolute;width:14px;height:8px;border-radius:90% 10%;background:#407d639e;transform:rotate(-22deg);animation:leafDrift 4.8s ease-in-out infinite}.leaf-one{left:18%;top:38%}.leaf-two{right:24%;top:22%;animation-delay:1.4s;transform:rotate(35deg) scale(.8)}.scene-pencil-line{position:absolute;width:85px;height:45px;border:1px dashed rgba(58,112,101,.28);border-radius:14px;transform:rotate(-10deg)}.pencil-line-one{left:7%;top:31%}.pencil-line-two{right:9%;bottom:34%;transform:rotate(11deg) scale(.72)}.scene-window{position:absolute;width:88px;height:78px;top:24px;right:9%;border:5px solid rgba(88,123,134,.4);border-radius:13px;background:#c5dede52;box-shadow:inset 0 0 0 5px #ffffff2b}.scene-window:before,.scene-window:after{content:"";position:absolute;background:#587b865c}.scene-window:before{width:3px;height:100%;left:50%;top:0}.scene-window:after{height:3px;width:100%;left:0;top:50%}.scene-window-glow{position:absolute;width:150px;height:70px;top:44px;right:3%;border-radius:50%;background:#f4cf9633;filter:blur(13px)}.scene-shelf{position:absolute;width:103px;height:5px;left:7%;border-radius:99px;background:#587b8654}.shelf-one{top:64px}.shelf-two{top:96px;transform:scale(.72);transform-origin:left}.scene-object{position:absolute;opacity:.72}.object-cup{left:14%;top:45px;width:19px;height:18px;border:3px solid rgba(88,123,134,.55);border-radius:3px 3px 9px 9px}.object-cup:after{content:"";position:absolute;width:8px;height:8px;right:-9px;top:3px;border:3px solid rgba(88,123,134,.55);border-left:0;border-radius:0 8px 8px 0}.object-key{left:24%;top:96px;width:27px;height:7px;border-radius:99px;background:#d49b77b8;transform:rotate(-22deg)}.object-key:after{content:"";position:absolute;width:11px;height:11px;right:-3px;top:-2px;border:3px solid rgba(212,155,119,.72);border-radius:50%}.object-apple{left:32%;top:57px;width:20px;height:18px;border-radius:50% 50% 45% 45%;background:#d49b779e}.object-apple:before{content:"";position:absolute;width:9px;height:5px;top:-4px;right:0;border-radius:90% 10%;background:#6794788f;transform:rotate(-22deg)}.scene-star{position:absolute;width:5px;height:5px;border-radius:50%;background:#ece0b6e6;box-shadow:0 0 0 4px #ece0b61a;animation:starTwinkle 2.4s ease-in-out infinite}.star-one{left:17%;top:34%}.star-two{right:24%;top:22%;animation-delay:.7s}.star-three{right:12%;top:58%;animation-delay:1.2s}.scene-arc{position:absolute;width:165px;height:100px;border:1px solid rgba(89,99,140,.28);border-bottom:0;border-radius:90px 90px 0 0;transform:rotate(-8deg)}.arc-one{left:5%;bottom:35px}.arc-two{right:-28px;top:18px;transform:rotate(21deg) scale(.68)}.scene-grid-mark{position:absolute;width:46px;height:46px;border:1px solid rgba(89,99,140,.34);background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(89,99,140,.18) 10px 11px),repeating-linear-gradient(0deg,transparent 0 10px,rgba(89,99,140,.18) 10px 11px);transform:rotate(8deg)}.grid-mark-one{left:11%;top:66px}.grid-mark-two{right:11%;bottom:42px;transform:rotate(-12deg) scale(.72)}.scene-cloud{position:absolute;width:55px;height:17px;border-radius:99px;background:#ffffff61}.scene-cloud:before,.scene-cloud:after{content:"";position:absolute;bottom:2px;border-radius:50%;background:inherit}.scene-cloud:before{width:27px;height:27px;left:10px}.scene-cloud:after{width:22px;height:22px;right:8px}.cloud-one{left:7%;top:52px}.cloud-two{right:31%;top:30px;transform:scale(.66)}.orchard-tree-left{left:7%;bottom:41px;transform:scale(.76);background:#936f4b6b}.orchard-tree-right{right:7%;bottom:43px;transform:scale(.66);background:#936f4b6b}.orchard-tree-left:before,.orchard-tree-left:after,.orchard-tree-right:before,.orchard-tree-right:after{background:#779d6480}.scene-crate{position:absolute;bottom:44px;width:37px;height:24px;border:3px solid rgba(154,115,85,.45);border-radius:5px;background:#d5a66352}.crate-one{left:18%;transform:rotate(-4deg)}.crate-two{right:20%;transform:rotate(6deg) scale(.72)}.idle-brain-sprite{position:relative;z-index:3;width:min(74%,245px);height:224px;overflow:visible}.idle-brain-sprite *{vector-effect:non-scaling-stroke}.idle-brain-a{--brain-fill: #d7b9ad;--brain-outline: #466e64;--brain-suit: #79a994;--brain-accent: #c78d7d;--brain-ink: #365b55}.idle-brain-b{--brain-fill: #d9b4ad;--brain-outline: #537583;--brain-suit: #8aaeba;--brain-accent: #ce9b7a;--brain-ink: #49646d}.idle-brain-c{--brain-fill: #d0b8cf;--brain-outline: #62658d;--brain-suit: #9e9fc3;--brain-accent: #b088b2;--brain-ink: #555777}.idle-shadow{fill:#385f532b;transform-origin:center;animation:idleShadow 3.2s ease-in-out infinite}.idle-brain-character{transform-origin:121px 119px}.idle-breathe{animation:idleBreathe 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center bottom}.idle-legs,.idle-body,.idle-arm,.idle-hand{fill:var(--brain-suit);stroke:var(--brain-outline);stroke-width:2.4}.idle-boot{fill:var(--brain-ink);stroke:var(--brain-outline);stroke-width:2}.idle-collar{fill:var(--brain-accent);stroke:var(--brain-outline);stroke-width:2}.brain-fill{fill:var(--brain-fill);stroke:var(--brain-outline);stroke-width:2.5}.brain-ridge{fill:none;stroke:var(--brain-outline);stroke-width:2.2;stroke-linecap:round;opacity:.7}.idle-eye,.idle-smile{fill:var(--brain-ink);stroke:var(--brain-ink);stroke-width:2}.idle-eye{transform-box:fill-box;transform-origin:center;animation:idleBlink 4.8s ease-in-out infinite}.idle-eye-right{animation-delay:.06s}.idle-arm-left{transform-box:fill-box;transform-origin:right center;animation:idleArmLeft 3.8s ease-in-out infinite}.idle-arm-right{transform-box:fill-box;transform-origin:left center;animation:idleArmRight 3.8s ease-in-out infinite}.idle-helmet,.idle-explorer-cap,.idle-wizard-hood{fill:var(--brain-accent);stroke:var(--brain-outline);stroke-width:2.4;transform-box:fill-box;transform-origin:center bottom;animation:idleAccessory 3.2s ease-in-out infinite}.idle-shield,.idle-map{fill:var(--brain-accent);stroke:var(--brain-outline);stroke-width:2.2}.idle-shield path,.idle-map path{fill:none;stroke:var(--brain-outline);stroke-width:1.8;stroke-linecap:round}.idle-pencil-sword-a,.idle-pencil-b,.idle-wand{fill:var(--brain-accent);stroke:var(--brain-outline);stroke-width:2.2;transform-box:fill-box;transform-origin:left center;animation:idleProp 3.5s ease-in-out infinite}.idle-pencil-sword-a path,.idle-wand path{fill:var(--brain-soft, #e8d7bc);stroke:var(--brain-outline)}.idle-pencil-sword-a .idle-sword-grip{fill:var(--brain-ink)}.idle-doodle{fill:none;stroke:var(--brain-accent);stroke-width:2;stroke-linecap:round;stroke-dasharray:4 4;animation:idleDoodle 3s linear infinite}.idle-magic-dots circle{fill:var(--brain-accent);animation:magicDot 2.6s ease-in-out infinite}.idle-magic-dots circle:nth-child(2){animation-delay:.35s}.idle-magic-dots circle:nth-child(3){animation-delay:.7s}.card-scene-study .idle-brain-sprite,.card-scene-moon .idle-brain-sprite{width:min(70%,235px)}.page-intro{max-width:620px}.page-intro h1{font-size:clamp(2.4rem,6vw,4.6rem);margin-top:20px}.page-intro p{color:var(--muted);margin-top:16px}.back-button{margin-bottom:26px;color:var(--mint-700)}.play-main{padding-top:22px}.play-topline{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.play-topline .back-button{margin:0}.play-label{color:var(--mint-700);font-size:.86rem;font-weight:800;display:flex;align-items:center;gap:8px}.elapsed-chip{color:var(--muted);font-size:.78rem;padding:8px 12px;background:#ffffff73;border:1px solid var(--line);border-radius:999px}.play-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px;align-items:stretch}.character-rail{min-height:620px;padding:22px 18px;border:1px solid var(--line);border-radius:28px;background:#ffffff6b;display:flex;flex-direction:column;align-items:stretch}.character-rail .character-stage{min-height:395px;flex:1}.character-rail .brain-pod{width:175px;height:280px}.character-rail .lady-pod{width:96px;height:160px;right:1%;bottom:42px}.character-rail .speech-note{left:0;bottom:10px}.hint-button{width:100%;background:#d8f9edb8;border-color:#21846f2e;color:var(--mint-700)}.rail-note{color:var(--muted);text-align:center;font-size:.72rem;line-height:1.7;margin-top:13px}.game-panel{position:relative;min-height:620px;border-radius:28px;border:1px solid var(--line);background:#ffffff94;box-shadow:var(--shadow-soft);padding:clamp(22px,4vw,48px);display:flex;flex-direction:column}.game-board{max-width:670px;width:100%;margin:auto}.game-instruction{display:grid;gap:5px;margin-bottom:26px}.instruction-kicker{color:var(--mint-600);font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.game-instruction strong{font-size:clamp(1.45rem,3vw,2.25rem);letter-spacing:-.045em}.game-instruction>span:last-child{color:var(--muted)}.number-grid{display:grid;grid-template-columns:repeat(5,minmax(52px,1fr));gap:9px}.number-tile{aspect-ratio:1;border:1px solid rgba(33,132,111,.2);border-radius:18px;background:#e6fcf4d1;color:var(--mint-700);font-weight:900;font-size:clamp(1.15rem,4vw,1.75rem);cursor:pointer;transition:transform .17s ease,background .17s ease,color .17s ease}.number-tile:hover{transform:translateY(-3px) scale(1.025);background:#fff}.number-tile.found{color:#21846f4d;background:#c6f1e375;cursor:default;transform:scale(.96)}.number-tile.hinted{animation:hintPulse .85s ease-in-out infinite;border-color:var(--mint-600);box-shadow:0 0 0 5px #41ad9324}.progress-line{height:8px;background:#21846f1a;border-radius:99px;overflow:hidden;margin-top:24px}.progress-line span{display:block;height:100%;background:linear-gradient(90deg,var(--mint-500),var(--mint-700));border-radius:inherit;transition:width .26s ease}.memory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;max-width:520px;margin:auto}.memory-card{min-height:145px;border:1px solid rgba(33,132,111,.18);border-radius:20px;cursor:pointer;background:linear-gradient(145deg,#ffffffd4,#d4f8eda3);transition:transform .18s ease,box-shadow .18s ease}.memory-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}.memory-card.open{background:#ffffffeb;transform:scale(.98)}.card-mark{display:grid;place-items:center;height:100%;color:var(--mint-700);font-weight:900;font-size:1.18rem}.memory-card.tone-coral .card-mark{color:#bb675b}.memory-card.tone-sky .card-mark{color:#4e8fa3}.memory-card.tone-gold .card-mark{color:#a87928}.sudoku-grid{width:min(100%,430px);aspect-ratio:1;margin:0 auto 22px;display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--mint-600);border-radius:18px;overflow:hidden}.sudoku-cell{border:1px solid rgba(33,132,111,.2);background:#e8fcf5ad;color:var(--mint-700);font-size:clamp(1.7rem,5vw,2.55rem);font-weight:900;cursor:pointer}.sudoku-cell:nth-child(2),.sudoku-cell:nth-child(6),.sudoku-cell:nth-child(10),.sudoku-cell:nth-child(14){border-right:2px solid rgba(33,132,111,.5)}.sudoku-cell:nth-child(5),.sudoku-cell:nth-child(6),.sudoku-cell:nth-child(7),.sudoku-cell:nth-child(8){border-bottom:2px solid rgba(33,132,111,.5)}.sudoku-cell.locked{background:#c0efe08f;cursor:default}.sudoku-cell.hinted{animation:hintPulse .85s ease-in-out infinite;background:#fffffff2}.language-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.language-card,.category-drop{border:1px solid rgba(33,132,111,.18);border-radius:17px;background:#e8fcf5b8;min-height:70px;cursor:pointer;transition:transform .18s ease,border .18s ease,background .18s ease}.language-card:hover,.category-drop:hover{transform:translateY(-3px);background:#fff}.language-card.selected{border-color:var(--mint-700);box-shadow:0 0 0 4px #41ad931f}.language-card.placed{opacity:.58;cursor:default;transform:scale(.97)}.language-card span,.language-card small,.category-drop span,.category-drop small{display:block}.language-card span{color:var(--mint-700);font-weight:900}.language-card small{color:var(--muted);font-size:.68rem;margin-top:3px}.category-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.category-drop{text-align:left;padding:16px;background:#ffffffa6}.category-drop.fruit{border-color:#ba675b45}.category-drop.daily{border-color:#4e8fa347}.category-drop span{font-size:1.02rem;font-weight:900;color:var(--mint-700)}.category-drop small{color:var(--muted);margin-top:5px;line-height:1.5}.category-drop.hinted{animation:hintPulse .85s ease-in-out infinite}.game-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.76rem;margin-top:18px}.feedback-line{min-height:25px;color:var(--mint-700);text-align:center;margin-top:auto;padding-top:22px;font-size:.86rem}.complete-panel{position:absolute;top:18px;right:18px;bottom:18px;left:18px;border-radius:22px;background:#f2fffaf0;border:1px solid rgba(33,132,111,.24);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;animation:panelIn .28s ease-out both}.complete-kicker{color:var(--mint-600);font-size:.7rem;letter-spacing:.15em;font-weight:900}.complete-panel strong{font-size:clamp(1.45rem,3vw,2rem);letter-spacing:-.04em}.complete-panel>span:last-of-type{color:var(--muted);font-size:.82rem}.complete-actions{justify-content:center;margin-top:14px}.full{min-width:180px}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#173a3542;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;place-items:center;padding:20px}.settings-modal{width:min(470px,100%);border-radius:28px;background:#f2fffaf5;border:1px solid rgba(33,132,111,.22);padding:26px;box-shadow:0 28px 80px #17605238}.modal-heading{display:flex;align-items:start;justify-content:space-between;margin-bottom:12px}.modal-heading h2{margin:6px 0 0;font-size:2rem;letter-spacing:-.05em}.close-button{width:44px;padding:0;font-size:1.6rem;line-height:1}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-top:1px solid var(--line)}.setting-row span{display:grid;gap:4px}.setting-row strong{font-size:.94rem}.setting-row small{color:var(--muted);font-size:.72rem}.setting-row input[type=range]{width:135px;accent-color:var(--mint-600)}.setting-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--mint-600)}.setting-row+.setting-row{margin-top:2px}@keyframes floatIdle{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}@keyframes pencilAttack{0%{transform:translate(0) rotate(-2deg)}28%{transform:translate(-8px,-5px) rotate(-8deg)}57%{transform:translate(25px) rotate(9deg)}72%{transform:translate(37px,1px) rotate(13deg)}to{transform:translate(0) rotate(-1deg)}}@keyframes thinkWriting{0%{transform:translateY(0) rotate(-1deg)}28%{transform:translateY(-5px) rotate(4deg)}55%{transform:translateY(-1px) rotate(-3deg)}78%{transform:translateY(-5px) rotate(2deg)}to{transform:translateY(0) rotate(0)}}@keyframes magicSpin{0%{transform:rotate(0) scale(1)}34%{transform:rotate(125deg) scale(1.03)}65%{transform:rotate(260deg) scale(1.01)}to{transform:rotate(360deg) scale(1)}}@keyframes ladyThink{0%,to{transform:translateY(0) rotate(0)}35%{transform:translateY(-4px) rotate(-4deg)}68%{transform:translateY(-1px) rotate(3deg)}}@keyframes ladyCelebrate{0%{transform:translateY(0) rotate(0)}35%{transform:translateY(-17px) rotate(-7deg)}62%{transform:translateY(-8px) rotate(7deg)}to{transform:translateY(0) rotate(0)}}@keyframes ladyEncourage{0%,to{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes sparkleBurst{0%{opacity:0;transform:scale(.2) translateY(10px)}35%{opacity:1;transform:scale(1.25) translateY(-5px)}to{opacity:0;transform:scale(.7) translate(10px,-20px)}}@keyframes bubbleIn{0%{opacity:0;transform:scale(.6) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes hintPulse{0%,to{transform:scale(1)}50%{transform:scale(1.055)}}@keyframes panelIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes idleBreathe{0%,to{transform:translateY(0) scaleY(1)}48%{transform:translateY(-2px) scaleY(1.012)}72%{transform:translateY(-1px) scaleY(1.006)}}@keyframes idleShadow{0%,to{transform:scaleX(1);opacity:.72}48%{transform:scaleX(.88);opacity:.48}72%{transform:scaleX(.94);opacity:.6}}@keyframes idleBlink{0%,44%,48%,to{transform:scaleY(1)}46%{transform:scaleY(.12)}}@keyframes idleArmLeft{0%,to{transform:rotate(0)}35%{transform:rotate(-4deg)}64%{transform:rotate(2deg)}}@keyframes idleArmRight{0%,to{transform:rotate(0)}42%{transform:rotate(4deg)}72%{transform:rotate(-2deg)}}@keyframes idleAccessory{0%,to{transform:rotate(0) translateY(0)}50%{transform:rotate(-2deg) translateY(-1px)}}@keyframes idleProp{0%,to{transform:rotate(0)}42%{transform:rotate(-5deg)}76%{transform:rotate(3deg)}}@keyframes idleDoodle{0%{stroke-dashoffset:16;opacity:.45}50%{stroke-dashoffset:0;opacity:.9}to{stroke-dashoffset:-16;opacity:.45}}@keyframes magicDot{0%,to{opacity:.25;transform:translateY(4px) scale(.72)}48%{opacity:.95;transform:translateY(-4px) scale(1)}}@keyframes leafDrift{0%,to{translate:0 0;opacity:.66}50%{translate:7px 9px;opacity:.34}}@keyframes starTwinkle{0%,to{opacity:.38;transform:scale(.72)}50%{opacity:1;transform:scale(1.18)}}@keyframes spriteFrames{0%{background-position:0 0}to{background-position:100% 0}}@media(max-width:900px){.module-grid,.companion-row{grid-template-columns:repeat(2,1fr)}.hero-panel{grid-template-columns:1fr;padding:36px}.character-stage{min-height:320px}.hero-copy{max-width:none}.play-layout{grid-template-columns:1fr}.character-rail{min-height:auto;display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}.character-rail .character-stage{min-height:230px}.character-rail .hint-button{align-self:center}.rail-note{display:none}}@media(max-width:560px){.topbar,.home-main,.modules-main,.play-main{width:min(100% - 24px,1180px)}.topbar{padding-top:14px}.completion-pill{display:none}.entry-main{min-height:calc(100dvh - 70px);padding-bottom:40px}.entry-shell h1{font-size:3.1rem}.entry-option{min-height:98px;padding:16px;border-radius:22px}.entry-option-copy strong{font-size:1.08rem}.module-carousel{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px;margin-top:28px}.carousel-arrow{width:40px;height:40px}.carousel-card{min-height:360px;padding:24px 20px;border-radius:23px}.scene-card{min-height:590px;padding:0;border-radius:23px}.card-title-zone{min-height:84px;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:17px 18px 14px}.scene-card .module-tag{grid-column:2;grid-row:2;padding:0;text-align:left}.card-scene{min-height:292px;padding:12px 12px 35px}.scene-caption{left:17px;bottom:12px;font-size:.64rem}.scene-note{right:17px;bottom:12px;max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem}.card-copy-zone{min-height:177px;grid-template-columns:1fr;align-items:start;gap:13px;padding:17px 18px 18px}.scene-card .primary-button{width:100%}.carousel-card-top{align-items:center}.carousel-card-top .module-tag{font-size:.68rem;text-align:right}.carousel-glyph{width:62px;height:62px;margin:24px 0 16px}.carousel-footer{margin-top:16px}.hero-panel{padding:26px 20px 24px;border-radius:26px}.hero-copy h1{font-size:3rem}.module-grid,.module-grid.large,.companion-row{grid-template-columns:1fr}.module-card{min-height:175px}.companion-card{min-height:98px}.play-topline{align-items:start}.play-topline .back-button{font-size:.76rem;padding:0 11px}.elapsed-chip{font-size:.7rem}.character-rail{grid-template-columns:1fr}.character-rail .character-stage{min-height:260px}.character-rail .hint-button{min-height:52px}.game-panel{padding:21px 14px;min-height:570px;border-radius:23px}.number-grid{gap:6px}.number-tile{border-radius:13px}.memory-card{min-height:104px}.language-cards{gap:7px}.language-card{min-height:64px}.category-row{gap:8px}.category-drop{padding:13px 11px}.category-drop small{font-size:.66rem}.speech-note{font-size:.7rem}.setting-row{align-items:start}}.number-grid.variant-rotate{animation:boardRotateFinal 3.8s ease-in-out infinite}.number-grid.variant-rotate .number-tile{animation:tileCounterRotateFinal 3.8s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(3n){animation:tileJumpFinal 1.6s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(5n){animation:tileJumpFinal 2.1s ease-in-out infinite .35s}@keyframes boardRotateFinal{0%,to{transform:rotate(-1.25deg)}50%{transform:rotate(1.25deg)}}@keyframes tileCounterRotateFinal{0%,to{transform:rotate(1.25deg)}50%{transform:rotate(-1.25deg)}}@keyframes tileJumpFinal{0%,74%,to{transform:translateY(0)}80%{transform:translateY(-5px)}87%{transform:translateY(0)}}.result-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#ecfff7c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:resultOverlayInFinal .24s ease-out both}.fight-word{color:#b85f50;font-size:clamp(2rem,7vw,3.7rem);letter-spacing:.08em;animation:fightingPopFinal .75s cubic-bezier(.2,.9,.25,1.25) both}.firework-burst i{position:absolute;color:#e2ae51;font-size:1.6rem;font-style:normal;animation:fireworkPopFinal 1.2s ease-out both}@keyframes resultOverlayInFinal{0%{opacity:0}to{opacity:1}}@keyframes fightingPopFinal{0%{opacity:0;transform:translateY(24px) scale(.55)}55%{opacity:1;transform:translateY(-8px) scale(1.12)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fireworkPopFinal{0%{opacity:0;transform:scale(.2) translateY(12px)}35%{opacity:1;transform:scale(1.2)}to{opacity:.2;transform:scale(.82) translateY(-12px)}}.number-grid.variant-irregular{display:block;position:relative;min-height:420px;aspect-ratio:1.18;gap:0;padding:10px;overflow:hidden;background:#437e6b24}.number-grid.variant-rotate{animation:boardRotate 3.8s ease-in-out infinite}.number-grid.variant-rotate .number-tile{animation:tileCounterRotate 3.8s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(3n){animation:tileJump 1.6s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(5n){animation:tileJump 2.1s ease-in-out infinite .35s}@keyframes boardRotate{0%,to{transform:rotate(-1.25deg)}50%{transform:rotate(1.25deg)}}@keyframes tileCounterRotate{0%,to{transform:rotate(1.25deg)}50%{transform:rotate(-1.25deg)}}@media(max-width:560px){.number-grid.variant-irregular{min-height:350px}}.result-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#ecfff7c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:resultOverlayIn .24s ease-out both}.fight-word{color:#b85f50;font-size:clamp(2rem,7vw,3.7rem);letter-spacing:.08em;animation:fightingPop .75s cubic-bezier(.2,.9,.25,1.25) both}.firework-burst i{position:absolute;color:#e2ae51;font-size:1.6rem;font-style:normal;animation:fireworkPop 1.2s ease-out both}@keyframes resultOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes fightingPop{0%{opacity:0;transform:translateY(24px) scale(.55)}55%{opacity:1;transform:translateY(-8px) scale(1.12)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fireworkPop{0%{opacity:0;transform:scale(.2) translateY(12px)}35%{opacity:1;transform:scale(1.2)}to{opacity:.2;transform:scale(.82) translateY(-12px)}}@media(max-width:560px){.lady-hint-button{right:4px;bottom:24px;transform:scale(.84);transform-origin:bottom right}.lady-hint-button:hover,.lady-hint-button:focus-visible{transform:scale(.88) translateY(-4px)}.lady-hint-bubble{right:72px}.result-card{width:90%;min-height:330px;padding:22px 18px}.result-lady-sprite{width:120px;height:200px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}.sprite-character{animation:none!important;background-position:0 0!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.reduce-motion .carousel-track{transition:none!important}.scene-card{min-height:680px;border:2px solid var(--scene-ink);border-radius:14px;background:#eaf6ef;box-shadow:6px 7px #2a534929,0 28px 70px #325b521f}.scene-card:before{background:linear-gradient(135deg,rgba(255,255,255,.34),transparent 38%,rgba(255,255,255,.08))}.card-title-zone{min-height:98px;border-bottom:2px solid var(--scene-line);background:#f6fffab8}.card-title-line{border-radius:0;height:5px;box-shadow:4px 0 0 var(--scene-accent),8px 0 #fffc}.card-scene{min-height:460px;padding:15px 20px 43px;background:#d9ecdf}.card-scene:before{background:linear-gradient(180deg,#ffffff14,#ffffff05);opacity:1}.card-scene:after{top:11px;right:11px;bottom:11px;left:11px;border:2px solid rgba(46,93,79,.3);border-radius:6px}.scene-decor{display:none}.scene-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;z-index:0}.pixel-corner{position:absolute;width:20px;height:20px;border:3px solid var(--scene-accent);z-index:4;pointer-events:none}.pixel-corner-one{top:18px;left:18px;border-right:0;border-bottom:0}.pixel-corner-two{right:18px;bottom:46px;border-left:0;border-top:0}.card-scene .sprite-character{z-index:3}.scene-caption,.scene-note{border:2px solid var(--scene-ink);border-radius:4px;box-shadow:3px 3px #2a534924;-webkit-backdrop-filter:none;backdrop-filter:none;background:#f7fffadb}.scene-caption{left:25px;bottom:15px;padding:6px 9px}.scene-note{right:25px;bottom:15px;padding:6px 9px}.scene-pin{border-radius:2px}.card-copy-zone{min-height:172px;border-top:2px solid var(--scene-line);background:#f7fffab8}.card-copy-lines strong{font-size:1.08rem}.card-copy-lines p{font-size:.82rem}.sprite-character{background-size:500% 100%;image-rendering:pixelated}.card-brain-sprite{width:261px;height:429px}.card-brain-sprite.brain-sheet-c{width:215px;height:429px}.stage-brain-sprite{width:252px;height:420px}.stage-brain-sprite.brain-sheet-c{width:210px;height:420px}.stage-lady-sprite{width:144px;height:240px}.character-rail .brain-pod{width:252px;height:420px}.character-rail .brain-pod.brain-c .stage-brain-sprite{width:210px}.character-rail .lady-pod{width:144px;height:240px;right:-2%;bottom:38px}.character-rail .character-stage{min-height:480px}.card-scene-forest{--scene-deep: #2f633d;--scene-ink: #285437;--scene-accent: #8fbd65;--scene-soft: rgba(211, 235, 188, .5);--scene-line: rgba(54, 112, 60, .3);--scene-wash: rgba(203, 231, 182, .64)}.card-scene-study{--scene-deep: #486b4d;--scene-ink: #3b5842;--scene-accent: #a8c978;--scene-soft: rgba(223, 233, 194, .52);--scene-line: rgba(75, 107, 71, .28);--scene-wash: rgba(220, 234, 191, .6)}.card-scene-moon{--scene-deep: #425650;--scene-ink: #314840;--scene-accent: #b5c66d;--scene-soft: rgba(198, 213, 182, .42);--scene-line: rgba(64, 98, 84, .32);--scene-wash: rgba(192, 211, 197, .5)}.play-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}.difficulty-selector{display:inline-flex;align-items:center;gap:6px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#f2fffab8}.difficulty-label{color:var(--muted);font-size:.72rem;padding:0 7px;font-weight:800}.difficulty-selector button,.range-row button{border:1px solid transparent;border-radius:5px;padding:7px 12px;color:var(--muted);background:transparent;cursor:pointer;font-size:.78rem;font-weight:800}.difficulty-selector button.active,.range-row button.active{color:#f4fffa;background:var(--mint-700);box-shadow:3px 3px #17605226}.round-chip{color:var(--mint-700);border:1px solid var(--line);border-radius:5px;background:#dcfaf0b8;padding:8px 12px;font-size:.75rem;font-weight:800}.range-row{display:flex;align-items:center;gap:6px;margin:-8px 0 15px;color:var(--muted);font-size:.76rem;font-weight:800}.range-row button:disabled{opacity:.5;cursor:not-allowed}.number-grid{grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:7px}.number-grid.variant-rotate{animation:boardRotate 5.2s ease-in-out infinite;transform-origin:center}.number-grid.variant-irregular{gap:3px;padding:4px;background:#437e6b24}.number-grid.variant-irregular .number-tile{border-radius:0;border:2px solid rgba(50,100,84,.3)}.number-tile{border-radius:5px;border-width:2px;box-shadow:2px 2px #2b6f5b1f}.number-grid.variant-flash .number-tile:not(.found):nth-child(3n){animation:tileJump 2.8s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(5n){animation-delay:.7s}.number-grid.difficulty-hard.variant-flash .number-tile:not(.found):nth-child(3n){animation-duration:2s}.number-grid.difficulty-easy.variant-flash .number-tile:not(.found):nth-child(3n){animation-duration:3.8s}.number-tile.found{box-shadow:none}.memory-grid{grid-template-columns:repeat(4,1fr);max-width:590px;gap:10px}.memory-grid.pairs-8{grid-template-columns:repeat(4,1fr)}.memory-grid.pairs-10{grid-template-columns:repeat(5,1fr)}.memory-grid.pairs-12{grid-template-columns:repeat(6,1fr)}.memory-card{min-height:106px;border-radius:7px;border-width:2px;box-shadow:3px 3px #21846f1f}.memory-card.open{box-shadow:inset 0 0 0 2px #21846f26}.memory-card .card-mark{position:relative;min-height:100%;font-size:0}.memory-card .card-icon{display:block;width:min(76%,78px);height:min(76%,78px);object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none;filter:drop-shadow(2px 2px 0 rgba(42,83,73,.16))}.memory-card:not(.open) .card-icon,.memory-card.closed .card-icon{display:none}.memory-card .card-back-mark{display:block;width:30px;height:30px;background:linear-gradient(var(--mint-700),var(--mint-700)) center / 8px 30px no-repeat,linear-gradient(var(--mint-700),var(--mint-700)) center / 30px 8px no-repeat;image-rendering:pixelated;opacity:.74}.memory-card:not(.open) .card-mark:before,.memory-card.closed .card-mark:before{content:"";display:none}.memory-card.open .card-mark:before{content:none}.sudoku-grid{width:min(100%,540px);border-radius:6px;border-width:3px;grid-template-columns:repeat(9,1fr)}.sudoku-cell{min-width:0;border-radius:0;border:1px solid rgba(33,132,111,.2);font-size:clamp(.92rem,2.8vw,1.7rem)}.sudoku-cell.block-right{border-right:3px solid rgba(33,132,111,.58)}.sudoku-cell.block-bottom{border-bottom:3px solid rgba(33,132,111,.58)}.sudoku-cell.locked{font-weight:950}.complete-panel{border-radius:7px;border-width:2px}@keyframes boardRotate{0%,to{transform:rotate(-.35deg)}50%{transform:rotate(.35deg)}}@keyframes tileJump{0%,74%,to{transform:translateY(0)}80%{transform:translateY(-4px)}87%{transform:translateY(0)}}@media(max-width:900px){.card-brain-sprite{width:214px;height:352px}.card-brain-sprite.brain-sheet-c{width:176px;height:352px}.scene-card{min-height:620px}.card-scene{min-height:390px}.character-rail .brain-pod{width:210px;height:350px}.character-rail .brain-pod.brain-c .stage-brain-sprite{width:175px;height:350px}.character-rail .character-stage{min-height:360px}}@media(max-width:560px){.scene-card{min-height:610px}.card-scene{min-height:330px}.card-brain-sprite{width:178px;height:294px}.card-brain-sprite.brain-sheet-c{width:147px;height:294px}.scene-note{max-width:44%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.play-controls{align-items:stretch}.difficulty-selector{flex:1;justify-content:space-between}.difficulty-selector button{padding-inline:9px}.round-chip{width:100%;text-align:center}.number-grid{gap:4px}.number-tile{font-size:clamp(.75rem,4vw,1.15rem)}.number-grid.count-100 .number-tile{font-size:.66rem}.memory-card{min-height:80px;font-size:.8rem}.memory-grid.pairs-10,.memory-grid.pairs-12{grid-template-columns:repeat(4,1fr)}.memory-card .card-icon{width:min(72%,56px);height:min(72%,56px)}.sudoku-grid{width:100%}.sudoku-cell{font-size:clamp(.75rem,4vw,1.2rem)}.character-rail .brain-pod{width:168px;height:280px}.character-rail .brain-pod.brain-c .stage-brain-sprite{width:140px;height:280px}.character-rail .lady-pod{width:108px;height:180px}.character-rail .character-stage{min-height:300px}}.number-grid.variant-irregular{display:block;position:relative;min-height:420px;aspect-ratio:1.18;gap:0;padding:10px;overflow:hidden}.number-grid.variant-irregular .number-tile{position:absolute;min-width:0;min-height:0;padding:0;display:grid;place-items:center;border-radius:0;border-width:2px}.number-grid.variant-irregular .number-tile.found{opacity:.3}.number-grid.variant-rotate{animation:boardRotateLast 3.8s ease-in-out infinite}.number-grid.variant-rotate .number-tile{animation:tileCounterRotateLast 3.8s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(3n){animation:tileJumpLast 1.6s ease-in-out infinite}.number-grid.variant-flash .number-tile:not(.found):nth-child(5n){animation:tileJumpLast 2.1s ease-in-out infinite .35s}.number-grid.difficulty-hard.variant-flash .number-tile:not(.found):nth-child(3n){animation-duration:1.15s}.number-grid.difficulty-easy.variant-flash .number-tile:not(.found):nth-child(3n){animation-duration:2.05s}@keyframes boardRotateLast{0%,to{transform:rotate(-1.25deg)}50%{transform:rotate(1.25deg)}}@keyframes tileCounterRotateLast{0%,to{transform:rotate(1.25deg)}50%{transform:rotate(-1.25deg)}}@keyframes tileJumpLast{0%,74%,to{transform:translateY(0)}80%{transform:translateY(-5px)}87%{transform:translateY(0)}}.lady-hint-button{position:absolute;right:20px;bottom:38px;z-index:8;width:132px;height:184px;padding:0;border:0;background:transparent;cursor:pointer;display:grid;place-items:end center;filter:drop-shadow(4px 5px 0 rgba(42,83,73,.14));transition:transform .18s ease,filter .18s ease}.lady-hint-button:hover,.lady-hint-button:focus-visible{transform:translateY(-5px) scale(1.02);filter:drop-shadow(5px 7px 0 rgba(42,83,73,.2));outline:none}.lady-hint-sprite{width:108px;height:180px}.lady-hint-bubble{position:absolute;right:76px;top:-2px;width:94px;padding:8px 7px;border:2px solid var(--mint-700);border-radius:5px;background:#f7fffaf5;color:var(--mint-700);font-size:.72rem;line-height:1.4;font-weight:950;text-align:center;box-shadow:3px 3px #26735f24}.lady-hint-bubble:after{content:"";position:absolute;right:-8px;bottom:8px;width:10px;height:10px;border-right:2px solid var(--mint-700);border-top:2px solid var(--mint-700);background:#f7fffaf5;transform:rotate(45deg)}.result-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#ecfff7c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:resultOverlayInLast .24s ease-out both}.result-card{position:relative;width:min(390px,88%);min-height:360px;padding:28px 30px;border:2px solid var(--mint-700);border-radius:10px;background:#fafffcfa;box-shadow:7px 8px #2a534929;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;overflow:hidden}.result-lady-sprite{width:144px;height:240px}.result-success .result-card{border-color:#2f8770}.result-failure .result-card{border-color:#bd705f;background:#fff7f1}.result-kicker{color:var(--mint-600);font-size:.75rem;font-weight:950;letter-spacing:.14em}.result-card>strong:not(.fight-word){color:var(--mint-700);font-size:1.6rem}.fight-word{color:#b85f50;font-size:clamp(2rem,7vw,3.7rem);letter-spacing:.08em;animation:fightingPopLast .75s cubic-bezier(.2,.9,.25,1.25) both}.result-message{max-width:300px;color:var(--muted);font-size:.8rem}.result-actions{display:flex;gap:10px;margin-top:12px}.firework-burst{position:absolute;top:35px;right:35px;bottom:35px;left:35px;pointer-events:none}.firework-burst i{position:absolute;color:#e2ae51;font-size:1.6rem;font-style:normal;animation:fireworkPopLast 1.2s ease-out both}.firework-burst i:nth-child(1){top:8%;left:12%}.firework-burst i:nth-child(2){top:19%;right:14%;animation-delay:.08s}.firework-burst i:nth-child(3){top:48%;left:3%;animation-delay:.16s}.firework-burst i:nth-child(4){top:49%;right:4%;animation-delay:.24s}.firework-burst i:nth-child(5){bottom:7%;right:27%;animation-delay:.32s}@keyframes resultOverlayInLast{0%{opacity:0}to{opacity:1}}@keyframes fightingPopLast{0%{opacity:0;transform:translateY(24px) scale(.55)}55%{opacity:1;transform:translateY(-8px) scale(1.12)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fireworkPopLast{0%{opacity:0;transform:scale(.2) translateY(12px)}35%{opacity:1;transform:scale(1.2)}to{opacity:.2;transform:scale(.82) translateY(-12px)}}@media(max-width:560px){.number-grid.variant-irregular{min-height:350px}.lady-hint-button{right:4px;bottom:24px;transform:scale(.84);transform-origin:bottom right}.lady-hint-button:hover,.lady-hint-button:focus-visible{transform:scale(.88) translateY(-4px)}.lady-hint-bubble{right:72px}.result-card{width:90%;min-height:330px;padding:22px 18px}.result-lady-sprite{width:120px;height:200px}}.play-layout{grid-template-columns:minmax(0,1fr);gap:0}.play-layout .game-panel{width:100%}.schulte-board-panel{position:relative;overflow:visible}.schulte-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.schulte-heading .game-instruction{margin:0}.schulte-benchmark{flex:0 0 auto;color:var(--mint-700);border:1px solid var(--line);border-radius:12px;padding:9px 12px;background:#e8fff6b8;font-size:.72rem;line-height:1.45;text-align:right}.schulte-benchmark b{font-size:.86rem}.schulte-control-deck{display:grid;gap:14px;margin:0 auto 20px;padding:15px;border:1px solid rgba(33,132,111,.16);border-radius:16px;background:linear-gradient(140deg,#f7fffbf5,#dff9eeb8);box-shadow:0 10px 24px #21846f14}.schulte-control-group{display:grid;gap:8px}.control-label,.hud-label{color:var(--muted);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.schulte-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.schulte-mode-grid button,.schulte-segmented button{min-height:44px;border:1px solid rgba(33,132,111,.18);border-radius:10px;color:var(--mint-700);background:#ffffffa6;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.schulte-mode-grid button{display:grid;justify-items:start;align-content:center;gap:2px;padding:7px 10px;text-align:left}.schulte-mode-grid button strong{font-size:.78rem}.schulte-mode-grid button small{color:var(--muted);font-size:.66rem}.schulte-mode-grid button:hover,.schulte-segmented button:hover{transform:translateY(-2px);border-color:#21846f66}.schulte-mode-grid button.active,.schulte-segmented button.active{color:#f7fffc;border-color:var(--mint-700);background:var(--mint-700);box-shadow:3px 3px #17605224}.schulte-mode-grid button.active small{color:#f7fffccc}.schulte-control-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.schulte-segmented{display:flex;flex-wrap:wrap;gap:6px}.schulte-segmented button{min-height:38px;padding:0 10px;font-size:.72rem;font-weight:850}.schulte-segmented button:disabled{opacity:.34;cursor:not-allowed;transform:none}.schulte-static-control{min-height:38px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid rgba(33,132,111,.18);border-radius:10px;color:var(--mint-700);background:#ffffffa6;font-size:.72rem;font-weight:850}.schulte-options{display:flex;align-items:center;flex-wrap:wrap;gap:13px;color:var(--muted);font-size:.76rem}.schulte-options label{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.schulte-options input{width:17px;height:17px;accent-color:var(--mint-700)}.schulte-restart{min-height:38px;margin-left:auto;padding-inline:13px;font-size:.74rem}.schulte-game{width:min(100%,820px);margin:0 auto;padding:17px;border:1px solid rgba(33,132,111,.17);border-radius:18px;background:#ffffff8c;box-shadow:0 16px 34px #21846f14}.schulte-hud{display:grid;grid-template-columns:minmax(120px,1.25fr) repeat(2,minmax(90px,.7fr)) minmax(180px,1.6fr);gap:8px;margin-bottom:14px}.schulte-target,.schulte-stat,.schulte-rule{min-height:70px;display:grid;align-content:center;gap:3px;padding:9px 11px;border:1px solid rgba(33,132,111,.15);border-radius:12px;background:#f7fffbd1}.schulte-target{border-color:#21846f57;box-shadow:inset 0 0 0 2px #a9e6d552}.schulte-target strong{color:var(--mint-700);font-size:clamp(1.25rem,3vw,1.85rem);line-height:1;text-shadow:0 1px 0 rgba(255,255,255,.9)}.schulte-target small,.schulte-stat small{color:var(--muted);font-size:.68rem}.schulte-stat strong{color:var(--ink);font-size:1.2rem}.schulte-stat strong i{color:var(--muted);font-size:.78rem;font-style:normal}.schulte-stat strong.has-errors{color:#b35e54}.schulte-rule{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.73rem;line-height:1.4}.rule-icon{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:50%;color:var(--mint-700);border:1px solid rgba(33,132,111,.24);background:#c9f2e4b3;font-size:1.05rem}.schulte-board-wrap{position:relative;width:min(100%,650px);margin:0 auto;overflow:auto;border-radius:18px;background:#1954461f;padding:8px}.schulte-board{--cell-gap: clamp(4px, .8vw, 8px);position:relative;display:grid;grid-template-columns:repeat(var(--schulte-size),minmax(0,1fr));gap:var(--cell-gap);width:100%;aspect-ratio:1;padding:var(--cell-gap);border:2px solid rgba(23,96,82,.55);border-radius:14px;background:linear-gradient(145deg,#e1f8ec,#c3eddb);box-shadow:inset 0 0 0 5px #ffffff47,5px 6px #17605221;isolation:isolate}.schulte-board.is-irregular{display:block;min-width:min(100%,550px);overflow:hidden}.schulte-board.is-irregular .schulte-cell{position:absolute;min-width:0;min-height:0;padding:0;display:block;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible;pointer-events:none}.schulte-board.is-irregular .irregular-cell-shape{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;border:1px solid rgba(61,111,91,.56);background:#f6fff9e6;pointer-events:auto}.schulte-board.is-irregular .irregular-cell-label{position:absolute;z-index:2;display:grid;place-items:center;min-width:1.25em;min-height:1.25em;color:inherit;font:inherit;line-height:1;text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.95);transform:translate(-50%,-50%);pointer-events:none}.schulte-board.is-irregular .schulte-cell:nth-child(4n+1) .irregular-cell-shape{background:#def7e9eb}.schulte-board.is-irregular .schulte-cell:nth-child(4n+2) .irregular-cell-shape{background:#f9fff9eb}.schulte-board.is-irregular .schulte-cell:nth-child(4n+3) .irregular-cell-shape{background:#e7f9efeb}.schulte-board.is-irregular .schulte-cell:nth-child(7n) .irregular-cell-shape{background:#fffbe5cc}.schulte-board.is-irregular .schulte-cell:hover:not(:disabled),.schulte-board.is-irregular .schulte-cell:focus-visible{z-index:20;transform:none;filter:brightness(1.03)}.schulte-board.is-irregular .schulte-cell:focus-visible .irregular-cell-shape{outline:3px solid #e7b85e;outline-offset:-3px}.schulte-board.is-irregular .schulte-cell.is-target{animation:none}.schulte-board.is-irregular .schulte-cell.is-target .irregular-cell-shape{border-color:var(--mint-700);box-shadow:inset 0 0 0 2px #75ceb67a}.schulte-board.is-irregular .schulte-cell.is-found{opacity:.56}.schulte-board.is-irregular .schulte-cell.is-found .irregular-cell-shape{background:#c9f2e485;border-color:#21846f29}.schulte-board.is-irregular .schulte-cell.is-wrong .irregular-cell-shape{border-color:#c56e62;background:#fff2ef}.schulte-board.is-irregular .schulte-cell.is-hinted .irregular-cell-shape{border-color:#d39a43;background:#fff3c8;box-shadow:inset 0 0 0 2px #e7b85e47}.schulte-board.is-irregular .schulte-cell.is-hidden .irregular-cell-shape{background:#ffffff2e;border-color:#ffffff42}.schulte-board.is-irregular .schulte-cell.tone-red .irregular-cell-shape{background:#fff3f0;border-color:#b6574e42}.schulte-board.is-irregular .schulte-cell.tone-blue .irregular-cell-shape{background:#eef7ff;border-color:#356da040}.schulte-game.mode-occlusion .schulte-cell.is-found{color:transparent;opacity:1;background:#c9f2e466}.schulte-board-wrap.is-reveal .schulte-board{box-shadow:inset 0 0 0 3px #e8ae518a,5px 6px #17605221}.schulte-center-dot{position:absolute;z-index:6;left:50%;top:50%;width:15px;height:15px;border:2px solid rgba(23,96,82,.55);border-radius:50%;background:transparent;box-shadow:0 0 0 3px #ffffff47;transform:translate(-50%,-50%);pointer-events:none;mix-blend-mode:multiply}.schulte-center-dot.is-irregular{width:11px;height:11px;border-width:1px;box-shadow:0 0 0 2px #fff3;opacity:.65}.schulte-cell{position:relative;z-index:2;min-width:0;min-height:44px;padding:3px;display:grid;place-items:center;border:2px solid rgba(34,107,88,.24);border-radius:9px;color:var(--ink);background:#fafffcf0;cursor:pointer;font-size:clamp(.82rem,2.5vw,1.45rem);font-weight:950;line-height:1;text-shadow:0 1px 0 rgba(255,255,255,.95);box-shadow:2px 2px #185d4c1a;transition:transform .16s ease,background .16s ease,border-color .16s ease,opacity .16s ease,box-shadow .16s ease}.schulte-cell:hover:not(:disabled),.schulte-cell:focus-visible{z-index:5;transform:translateY(-2px) scale(1.035);border-color:var(--mint-700);box-shadow:0 5px 12px #1760522e}.schulte-cell:focus-visible{outline:3px solid #e7b85e;outline-offset:2px}.schulte-cell.is-target{border-color:var(--mint-700);box-shadow:0 0 0 3px #75ceb67a,2px 2px #185d4c1a;animation:schulteTargetPulse 1.35s ease-in-out infinite}.schulte-cell.is-found{color:#4b907d;border-color:#21846f29;background:#c9f2e485;opacity:.5;animation:schulteCellPop .22s ease-out both}.schulte-cell.is-wrong{border-color:#c56e62;color:#a44f47;background:#fff2ef;animation:schulteErrorShake .34s ease-in-out both}.schulte-cell.is-hinted{border-color:#d39a43;background:#fff3c8;box-shadow:0 0 0 4px #e7b85e47,2px 2px #185d4c1a;animation:schulteHintPop .55s ease-out both}.schulte-cell.is-hidden{color:transparent;background:#ffffff2e;border-color:#ffffff42;cursor:default;box-shadow:none}.schulte-cell.is-hidden .cell-placeholder{opacity:.18}.cell-placeholder{color:#17605247}.schulte-cell.tone-red{color:#b6574e;background:#fff3f0;border-color:#b6574e42}.schulte-cell.tone-blue{color:#356da0;background:#eef7ff;border-color:#356da040}.tone-mark{position:absolute;right:5px;bottom:4px;font-size:.42em;opacity:.75}.schulte-board.is-bubbles{display:block;overflow:hidden;padding:0;background:radial-gradient(circle at 50% 48%,#ffffffdb,#d8f7e8e6 68%,#b8e5d1e0)}.schulte-board.is-bubbles .schulte-cell,.schulte-board.is-compass .schulte-cell{position:absolute;min-width:0;min-height:0;padding:0;display:grid;place-items:center;border:0;border-radius:0;color:var(--ink);background:transparent;box-shadow:none;transform:translate(-50%,-50%);cursor:pointer}.schulte-board.is-bubbles .schulte-cell{animation:bubbleDrift var(--bubble-duration) cubic-bezier(.37,0,.63,1) var(--bubble-delay) infinite;will-change:left,top,transform}.schulte-board.is-bubbles .schulte-cell{isolation:isolate;text-shadow:0 1px 0 rgba(255,255,255,.95),0 2px 5px rgba(23,96,82,.18)}.schulte-board.is-bubbles .schulte-cell:before{content:"";position:absolute;z-index:0;top:2%;right:2%;bottom:2%;left:2%;border:1px solid rgba(255,255,255,.78);border-radius:50%;background:radial-gradient(circle at 32% 24%,#ffffffeb 0,#ffffffeb 7%,#ffffff5c 8%,#ffffff5c 15%,#adebd28c 42%,#6fc4a447 75%,#fff3);box-shadow:inset -5px -7px 12px #34917426,inset 4px 5px 10px #ffffffad,0 5px 10px #17605229;pointer-events:none}.schulte-board.is-bubbles .schulte-cell:after{content:"";position:absolute;z-index:1;top:18%;right:24%;bottom:52%;left:20%;border-radius:50%;background:#ffffffb8;filter:blur(1px);opacity:.72;transform:rotate(-22deg);pointer-events:none}.schulte-board.is-bubbles .schulte-cell.is-found:before{animation:bubbleBurst .46s cubic-bezier(.16,.74,.28,1) both}.schulte-board.is-bubbles .schulte-cell.is-found:after{animation:bubbleShards .46s ease-out both}.schulte-board.is-bubbles .schulte-cell.is-found{color:#4b907d;opacity:.42}.schulte-board.is-bubbles .schulte-cell:hover:not(:disabled){filter:brightness(1.04) drop-shadow(0 5px 8px rgba(23,96,82,.16))}.schulte-board.is-bubbles .schulte-cell:focus-visible{outline:3px solid #e7b85e;outline-offset:4px}.schulte-board.is-bubbles .schulte-cell.is-target{color:var(--ink);text-shadow:none}.schulte-board.is-bubbles .schulte-cell.is-hidden{color:transparent}.schulte-board.is-bubbles .schulte-cell.is-wrong{color:#a44f47;filter:drop-shadow(0 0 7px rgba(197,110,98,.55))}.schulte-board.is-compass{display:block;overflow:hidden;padding:0;border-radius:50%;border-color:#17605294;background:radial-gradient(circle at 50% 45%,#ffffffe6,#d8f7e8f0 62%,#a6dcc3f5);box-shadow:inset 0 0 0 3px #ffffff4d,inset 0 0 28px #17605229,0 8px 18px #17605229}.schulte-board.is-compass .compass-layer{position:absolute;top:0;right:0;bottom:0;left:0;animation:compassSpin 18s linear infinite;transform-origin:center}.schulte-board.is-compass .compass-dial{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;overflow:visible;pointer-events:none}.schulte-board.is-compass .compass-ring-line{fill:none;stroke:#17605273;stroke-width:.42;vector-effect:non-scaling-stroke}.schulte-board.is-compass .compass-ray{stroke:#1760526b;stroke-width:.36;vector-effect:non-scaling-stroke}.schulte-board.is-compass .schulte-cell{left:0!important;top:0!important;width:100%!important;height:100%!important;transform:none;animation:none;color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.9);background:#d2f3e257}.schulte-board.is-compass .schulte-cell:nth-child(odd){background:#ffffff52}.schulte-board.is-compass .schulte-cell:nth-child(2n){background:#aae1c747}.schulte-board.is-compass .compass-cell-label{position:absolute;z-index:2;display:grid;place-items:center;min-width:1.2em;min-height:1.2em;line-height:1;text-align:center;transform:translate(-50%,-50%);pointer-events:none}.schulte-board.is-compass .schulte-cell:hover:not(:disabled),.schulte-board.is-compass .schulte-cell:focus-visible{filter:brightness(1.16) drop-shadow(0 4px 7px rgba(0,0,0,.28));transform:none}.schulte-board.is-compass .schulte-cell:focus-visible{outline:3px solid #e7b85e;outline-offset:-4px}.schulte-board.is-compass .schulte-cell.is-target{color:var(--mint-700);text-shadow:0 0 9px rgba(117,206,182,.55)}.schulte-board.is-compass .schulte-cell.is-found{color:#4b907d;opacity:.3}.schulte-board.is-compass .schulte-cell.is-hidden{color:transparent;background:transparent}.schulte-board.is-compass .schulte-cell.is-wrong{color:#ff9b8d;filter:drop-shadow(0 0 7px rgba(255,128,113,.55))}.schulte-board.is-compass.count-50 .schulte-cell{font-size:clamp(.58rem,2.2vw,1.08rem)}.schulte-board.is-compass.count-100 .schulte-cell{font-size:clamp(.5rem,1.45vw,.9rem)}.schulte-game.mode-colors .schulte-cell{font-size:clamp(.78rem,2.2vw,1.25rem)}.schulte-progress{height:9px;margin:15px auto 9px;width:min(100%,650px);overflow:hidden;border-radius:999px;background:#21846f24}.schulte-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint-400),var(--mint-700));transition:width .22s ease-out}.schulte-footnote{width:min(100%,650px);margin:0 auto;display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.72rem}@keyframes schulteTargetPulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes schulteCellPop{0%{transform:scale(.9)}70%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes schulteErrorShake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}55%{transform:translate(8px)}80%{transform:translate(-4px)}}@keyframes schulteHintPop{0%{transform:scale(.9)}60%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes schulteBubbleFloat{0%,to{margin-top:0}50%{margin-top:-3px}}@keyframes bubbleDrift{0%{left:var(--bubble-left-0);top:var(--bubble-top-0);transform:translate(-50%,-50%) rotate(var(--bubble-r0))}20%{left:var(--bubble-left-1);top:var(--bubble-top-1);transform:translate(-50%,-50%) rotate(var(--bubble-r1))}40%{left:var(--bubble-left-2);top:var(--bubble-top-2);transform:translate(-50%,-50%) rotate(var(--bubble-r2))}60%{left:var(--bubble-left-3);top:var(--bubble-top-3);transform:translate(-50%,-50%) rotate(var(--bubble-r3))}80%{left:var(--bubble-left-4);top:var(--bubble-top-4);transform:translate(-50%,-50%) rotate(var(--bubble-r4))}to{left:var(--bubble-left-0);top:var(--bubble-top-0);transform:translate(-50%,-50%) rotate(var(--bubble-r0))}}@keyframes bubbleBurst{0%{opacity:.92;transform:scale(.94)}18%{opacity:1;transform:scale(1.16)}46%{opacity:.68;transform:scale(.98)}to{opacity:0;transform:scale(1.7)}}@keyframes bubbleShards{0%{opacity:.82;transform:scale(.7) rotate(-22deg);box-shadow:0 0 #fff0}28%{opacity:.95;transform:scale(1.25) rotate(-22deg);box-shadow:13px -7px 0 -2px #ffffffb8,-14px -4px 0 -3px #b1ebd2c7,9px 16px 0 -3px #70c4a49e,-11px 14px 0 -4px #ffffffa3}to{opacity:0;transform:scale(1.9) rotate(-22deg);box-shadow:24px -14px 0 -5px #fff0,-25px -8px 0 -6px #b1ebd200,18px 27px 0 -6px #70c4a400,-22px 24px 0 -7px #fff0}}@keyframes compassSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:860px){.schulte-hud{grid-template-columns:repeat(3,minmax(0,1fr))}.schulte-rule{grid-column:1 / -1;min-height:46px}}@media(max-width:680px){.schulte-heading{display:grid}.schulte-benchmark{justify-self:start;text-align:left}.schulte-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schulte-control-row{grid-template-columns:1fr}.schulte-options{align-items:flex-start;flex-direction:column;gap:9px}.schulte-restart{margin-left:0}.schulte-game{padding:10px}.schulte-hud{grid-template-columns:repeat(2,minmax(0,1fr))}.schulte-rule{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.schulte-cell,.schulte-progress span,.schulte-board.is-bubbles,.schulte-board.is-compass .compass-layer{transition:none!important;animation:none!important}}.reduce-motion .schulte-cell,.reduce-motion .schulte-progress span,.reduce-motion .schulte-board.is-bubbles,.reduce-motion .schulte-board.is-compass .compass-layer{transition:none!important;animation:none!important}body{background:radial-gradient(circle at 12% 8%,rgba(185,215,150,.42),transparent 32%),radial-gradient(circle at 86% 18%,rgba(136,190,106,.2),transparent 27%),linear-gradient(145deg,#fbfdf7,#edf6e4 48%,#e2f0d6)}.hero-panel{border-color:#44793b33;background:linear-gradient(135deg,#fcfff8d6,#e2f2d39e)}.hero-panel:after{background:#88be6a33}.entry-option,.module-card,.companion-card,.carousel-card{border-color:#44793b33;box-shadow:0 12px 35px #39672f14}.primary-entry{background:linear-gradient(135deg,#e6f4d3f5,#fcfff8c7)}.module-card:after{background:#88be6a38}.module-glyph,.carousel-glyph{background:#ddefc9c7;border-color:#44793b40}.companion-card.active{background:#e5f3d5d1;border-color:#44793b57}.scene-card{isolation:isolate;overflow:hidden;border-color:var(--scene-ink);background-color:var(--scene-wash);background-image:linear-gradient(180deg,#f6fced47,#d8ebc414 46%,#f5fbed5c),var(--scene-art, none);background-size:100% 100%;background-position:center;background-repeat:no-repeat;box-shadow:7px 8px #2f602f26,0 28px 70px #39672f26}.scene-card:before{z-index:0;background:linear-gradient(180deg,rgba(248,253,242,.18),transparent 34%,rgba(224,239,207,.2))}.scene-card:after{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;z-index:0;border:1px solid rgba(246,253,235,.6);border-radius:8px;pointer-events:none}.scene-card>*{position:relative;z-index:1}.scene-card .card-title-zone{background:linear-gradient(180deg,#f9fdf3e6,#edf8deb3);-webkit-backdrop-filter:blur(3px) saturate(112%);backdrop-filter:blur(3px) saturate(112%)}.scene-card .card-scene{background:linear-gradient(180deg,#d6ebc214,#ddf0cc38)}.scene-card .scene-art{opacity:0}.scene-card .card-copy-zone{background:linear-gradient(180deg,#f5fbebc2,#f9fdf3e6);-webkit-backdrop-filter:blur(3px) saturate(112%);backdrop-filter:blur(3px) saturate(112%)}.scene-card .scene-caption,.scene-card .scene-note{background:#f8fdf0d1;border-color:var(--scene-ink);box-shadow:3px 3px #2f602f24}.scene-card .primary-button{background:var(--scene-deep);box-shadow:0 10px 22px #2f602f33}.scene-card .primary-button:hover{background:var(--scene-ink)}.schulte-control-deck,.schulte-game{border-color:#44793b33;box-shadow:0 16px 34px #39672f1a}.schulte-control-deck{background:linear-gradient(140deg,#fafef5f7,#e4f2d3c7)}.schulte-board{border-color:#2f6b3a94;background:linear-gradient(145deg,#edf6e1,#d5e8c2);box-shadow:inset 0 0 0 5px #ffffff4d,5px 6px #2f6b3a24}.schulte-board.is-bubbles,.schulte-board.is-compass{background:radial-gradient(circle at 50% 48%,#ffffffe6,#e5f3d3eb 68%,#c2dca7e6)}.schulte-progress span{background:linear-gradient(90deg,var(--mint-400),var(--mint-700))}.memory-card{border-color:#44793b38;background:linear-gradient(145deg,#fcfff8e0,#ddefc9b8)}.sudoku-cell,.number-tile{border-color:#44793b38;background:#eef7e2c7}@media(max-width:680px){.scene-card{background-position:50% 42%}.scene-card .card-title-zone{background:linear-gradient(180deg,#f9fdf3f0,#edf8dec7)}.scene-card .card-copy-zone{background:#f7fcefe6}}.sudoku-board{--sudoku-highlight: rgba(185, 215, 150, .46);--sudoku-selected: #d29f45}.sudoku-cell{position:relative;display:grid;place-items:center;isolation:isolate;overflow:hidden;transition:background .16s ease,box-shadow .16s ease,color .16s ease}.sudoku-cell.axis-highlight{background:var(--sudoku-highlight)}.sudoku-cell.axis-highlight:not(.selected){box-shadow:inset 0 0 0 2px #21846f33}.sudoku-cell.selected{z-index:2;box-shadow:inset 0 0 0 3px var(--sudoku-selected),0 0 0 1px #e7b85e61}.sudoku-cell.hinted{z-index:3}.sudoku-value{position:relative;z-index:1}.sudoku-value.value-highlight{color:#b45f43;text-shadow:0 1px 0 rgba(255,255,255,.9)}.sudoku-notes{position:absolute;z-index:2;inset:4px 4px auto auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px 3px;width:58%;color:#4d8975;font-size:.48em;font-weight:850;line-height:1;text-align:center}.sudoku-notes i{display:block;min-width:.75em;font-style:normal}.sudoku-number-pad{width:min(100%,540px);display:flex;align-items:stretch;justify-content:flex-start;gap:4px;margin:0 auto;overflow-x:auto;padding:1px 1px 5px;scrollbar-width:thin}.sudoku-number-button,.sudoku-pencil-button,.sudoku-eraser-button{flex:0 0 40px;min-height:48px;border:1px solid rgba(33,132,111,.22);border-radius:11px;color:var(--mint-700);background:#f7fffbeb;font-size:1.05rem;font-weight:950;cursor:pointer;box-shadow:2px 3px #21846f14;transition:transform .16s ease,color .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.sudoku-number-button:hover,.sudoku-pencil-button:hover,.sudoku-eraser-button:hover{transform:translateY(-2px);border-color:#21846f80}.sudoku-number-button.active,.sudoku-pencil-button.active,.sudoku-eraser-button.active{color:#fff;border-color:var(--mint-700);background:var(--mint-700);box-shadow:0 0 0 3px #41ad932e,2px 3px #21846f29}.sudoku-pencil-button,.sudoku-eraser-button{flex-basis:60px;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding-inline:4px;font-size:.76rem}.sudoku-pencil-button span:first-child,.sudoku-eraser-button span:first-child{font-size:1.25rem;line-height:1}.sudoku-selection-status{width:min(100%,540px);min-height:22px;margin:9px auto 0;color:var(--muted);font-size:.75rem;line-height:1.4;text-align:center}@media(max-width:560px){.sudoku-number-pad{gap:4px}.sudoku-number-button,.sudoku-pencil-button,.sudoku-eraser-button{min-height:44px}.sudoku-notes{inset:3px 3px auto auto;width:65%;font-size:.43em;gap:1px 2px}}@media(prefers-reduced-motion:reduce){.sudoku-cell,.sudoku-number-button,.sudoku-pencil-button,.sudoku-eraser-button{transition:none}}.reduce-motion .sudoku-cell,.reduce-motion .sudoku-number-button,.reduce-motion .sudoku-pencil-button,.reduce-motion .sudoku-eraser-button{transition:none}.lady-hint-button:disabled{opacity:.52;cursor:not-allowed;filter:grayscale(.35)}.lady-hint-button:disabled:hover,.lady-hint-button:disabled:focus-visible{transform:none;filter:grayscale(.35)}.memory-card .card-back-mark{display:none}.lady-hint-button{right:8px;bottom:-20px;width:116px;height:160px}.lady-hint-sprite{width:96px;height:160px}.lady-hint-bubble{right:66px;top:4px}@media(max-width:560px){.lady-hint-button{right:0;bottom:-14px;width:104px;height:144px;transform:scale(.9);transform-origin:bottom right}.lady-hint-button:hover,.lady-hint-button:focus-visible{transform:scale(.94) translateY(-4px)}.lady-hint-sprite{width:86px;height:144px}.lady-hint-bubble{right:58px;top:0}}.memory-card.mismatch{animation:memoryMismatchShake .62s cubic-bezier(.25,.8,.35,1) both}@keyframes memoryMismatchShake{0%,to{transform:translate(0) rotate(0) scale(.98)}18%{transform:translate(-7px) rotate(-2deg) scale(.98)}36%{transform:translate(7px) rotate(2deg) scale(.98)}54%{transform:translate(-5px) rotate(-1.5deg) scale(.98)}72%{transform:translate(4px) rotate(1deg) scale(.98)}}.memory-board{position:relative}.memory-timeout-hint{display:grid;gap:6px;margin:-8px 0 16px;padding:12px 14px;border:2px solid #d39a43;border-radius:9px;background:#fff8df;color:#765322;box-shadow:3px 4px #a9772724;animation:memoryHintIn .28s ease-out both}.memory-timeout-kicker{color:#ae7725;font-size:.68rem;font-weight:950;letter-spacing:.08em}.memory-timeout-hint strong{font-size:.9rem}.memory-timeout-hint p{margin:0;font-size:.76rem;line-height:1.45}.memory-timeout-actions{display:flex;gap:7px;margin-top:2px}.memory-timeout-actions button{min-height:32px;padding:5px 10px;font-size:.7rem}@keyframes memoryHintIn{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.memory-card.mismatch,.memory-timeout-hint{animation:none}}.reduce-motion .memory-card.mismatch,.reduce-motion .memory-timeout-hint{animation:none}@media(max-width:680px){:root{--mobile-gutter: max(12px, env(safe-area-inset-left), env(safe-area-inset-right))}html,body{min-width:0;overflow-x:hidden}body{padding-bottom:env(safe-area-inset-bottom)}button,input{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}.topbar,.home-main,.modules-main,.play-main{width:calc(100% - (var(--mobile-gutter) * 2))}.topbar{padding-top:max(12px,env(safe-area-inset-top));padding-bottom:8px}.brand{min-width:0;gap:8px}.brand-orbit{width:30px;height:30px;flex:0 0 30px}.brand strong{font-size:.96rem}.brand small{font-size:.52rem}.top-actions{gap:6px;min-width:0}.ghost-button{min-height:44px;padding-inline:12px}.entry-main{min-height:calc(100dvh - 64px);padding-top:10px;padding-bottom:28px}.entry-shell{width:100%}.entry-shell h1{font-size:clamp(2.15rem,12vw,3.1rem);line-height:1.04;letter-spacing:-.06em}.entry-shell p{max-width:32rem;font-size:.9rem;line-height:1.65}.entry-options{width:100%;margin-top:26px;gap:10px}.entry-option{grid-template-columns:34px minmax(0,1fr) 25px;gap:9px;min-height:88px;padding:14px;border-radius:18px}.entry-option-copy{min-width:0;gap:3px}.entry-option-copy strong,.entry-option-copy small{overflow-wrap:anywhere}.entry-option-copy strong{font-size:1rem}.entry-option-copy small{font-size:.72rem;line-height:1.35}.carousel-main{padding-top:22px}.page-intro h1{font-size:clamp(2rem,10vw,3.4rem);line-height:1.04}.page-intro p{line-height:1.6;font-size:.9rem}.back-button{margin-bottom:18px;min-height:44px}.module-carousel{grid-template-columns:32px minmax(0,1fr) 32px;gap:4px;width:100%;margin-top:22px}.carousel-window{border-radius:20px}.carousel-arrow{width:32px;height:44px;border-radius:10px;font-size:1rem}.carousel-slide{padding:2px}.scene-card{min-height:0}.card-title-zone{min-height:82px;padding:15px 14px 12px;gap:8px}.card-title-copy h2{font-size:clamp(1.2rem,7vw,1.7rem)}.scene-card .module-tag{font-size:.61rem}.card-scene{min-height:clamp(250px,72vw,330px);padding:8px 8px 34px}.card-brain-sprite{width:min(52vw,178px);height:auto;aspect-ratio:5 / 8.25}.card-brain-sprite.brain-sheet-c{width:min(43vw,147px);height:auto;aspect-ratio:1 / 2}.scene-caption{left:12px;bottom:10px;max-width:56%;padding:5px 7px;font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-note{right:12px;bottom:10px;max-width:38%;padding:5px 7px;font-size:.55rem}.card-copy-zone{min-height:150px;grid-template-columns:1fr;gap:10px;padding:14px}.card-copy-lines p{margin-top:5px;font-size:.74rem;line-height:1.5}.scene-card .primary-button{width:100%;min-height:46px}.carousel-footer{margin-top:12px}.play-main{padding-top:14px;padding-bottom:34px}.play-topline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center;margin-bottom:12px}.play-topline .back-button{justify-self:start;min-width:0;max-width:100%;padding-inline:10px;font-size:.74rem}.play-label{min-width:0;grid-column:1;grid-row:2;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.elapsed-chip{grid-column:2;grid-row:2;padding:7px 9px;font-size:.68rem;white-space:nowrap}.play-layout,.play-layout .game-panel{width:100%}.game-panel{min-height:0;padding:16px 10px 20px;border-radius:18px}.play-controls{gap:8px;margin-bottom:12px}.difficulty-selector{width:100%;min-height:44px;justify-content:space-between;gap:3px}.difficulty-label{padding-inline:4px;font-size:.66rem}.difficulty-selector button{flex:1;min-height:36px;padding-inline:4px;font-size:.73rem}.round-chip{width:100%;padding:7px 9px;font-size:.69rem}.game-board{max-width:none}.game-instruction{margin-bottom:16px;gap:4px}.instruction-kicker{font-size:.62rem}.game-instruction strong{font-size:clamp(1.15rem,6.5vw,1.65rem);line-height:1.2}.game-instruction>span:last-child{font-size:.74rem;line-height:1.5}.game-meta{font-size:.69rem;margin-top:12px}.feedback-line{padding-top:15px;font-size:.76rem}.schulte-heading{gap:10px;margin-bottom:12px}.schulte-benchmark{width:100%;padding:7px 9px;font-size:.64rem}.schulte-control-deck{gap:10px;margin-bottom:12px;padding:10px;border-radius:12px}.control-label,.hud-label{font-size:.62rem}.schulte-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.schulte-mode-grid button{min-height:42px;padding:5px 7px}.schulte-mode-grid button strong{font-size:.7rem}.schulte-mode-grid button small{font-size:.58rem}.schulte-control-row{gap:9px}.schulte-segmented{gap:4px}.schulte-segmented button{min-height:36px;padding-inline:7px;font-size:.64rem}.schulte-options{gap:8px;font-size:.68rem}.schulte-options label{min-height:32px}.schulte-options input{width:20px;height:20px}.schulte-restart{width:100%;min-height:40px}.schulte-game{padding:8px;border-radius:14px}.schulte-hud{gap:5px;margin-bottom:9px}.schulte-target,.schulte-stat,.schulte-rule{min-height:58px;padding:7px 8px;border-radius:9px}.schulte-target strong{font-size:clamp(1.05rem,6vw,1.45rem)}.schulte-stat strong{font-size:1rem}.schulte-target small,.schulte-stat small{font-size:.58rem}.schulte-rule{min-height:42px;font-size:.64rem}.rule-icon{width:22px;height:22px;font-size:.9rem}.schulte-board-wrap{width:100%;padding:5px;border-radius:12px}.schulte-board{--cell-gap: clamp(2px, 1vw, 5px);padding:var(--cell-gap);border-radius:10px}.schulte-board.count-100{min-width:320px}.schulte-cell{min-height:0;padding:2px;border-width:1px;border-radius:6px;font-size:clamp(.68rem,3.9vw,1.2rem)}.schulte-game.mode-colors .schulte-cell{font-size:clamp(.62rem,3vw,1rem)}.tone-mark{right:2px;bottom:2px}.schulte-progress{height:7px;margin-top:10px}.schulte-footnote{font-size:.61rem}.memory-grid{width:100%;gap:6px}.memory-grid.pairs-8,.memory-grid.pairs-10,.memory-grid.pairs-12{grid-template-columns:repeat(4,minmax(0,1fr))}.memory-card{min-height:clamp(58px,18vw,86px);border-radius:6px}.memory-card .card-icon{width:min(72%,52px);height:min(72%,52px)}.sudoku-grid{width:100%;margin-bottom:12px}.sudoku-cell{font-size:clamp(.72rem,4.8vw,1.2rem)}.sudoku-number-pad{width:100%;gap:4px;padding-bottom:3px}.sudoku-number-button,.sudoku-pencil-button,.sudoku-eraser-button{flex-basis:40px;min-height:44px}.sudoku-pencil-button,.sudoku-eraser-button{flex-basis:56px}.sudoku-selection-status{width:100%;margin-top:7px;font-size:.67rem}.lady-hint-button{right:-1px;bottom:clamp(-14px,-2vw,-8px);transform:scale(.74);transform-origin:bottom right}.lady-hint-button:hover,.lady-hint-button:focus-visible{transform:scale(.77) translateY(-3px)}.result-overlay{padding:12px}.result-card{width:min(100%,330px);min-height:300px;padding:18px 14px}.result-lady-sprite{width:104px;height:174px}.result-actions{width:100%;flex-direction:column;gap:7px}.result-actions button{width:100%;min-height:44px}.modal-layer{align-items:end;padding:10px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.settings-modal{width:100%;max-height:calc(100dvh - 20px);overflow-y:auto;border-radius:20px;padding:18px 16px}.setting-row{align-items:flex-start;flex-wrap:wrap;gap:10px;padding:13px 0}.setting-row>span{flex:1 1 180px;min-width:0}.setting-row input[type=range]{flex:1 1 180px;width:100%;min-width:0;height:32px}.setting-row input[type=checkbox]{margin-top:2px}.settings-modal .full{width:100%;min-height:46px}}@media(max-width:380px){.topbar,.home-main,.modules-main,.play-main{width:calc(100% - 20px)}.entry-shell h1{font-size:clamp(2rem,11.5vw,2.7rem)}.module-carousel{grid-template-columns:28px minmax(0,1fr) 28px}.carousel-arrow{width:28px}.card-title-zone{padding-inline:11px}.card-scene{min-height:238px}.scene-caption{left:9px;max-width:60%}.scene-note{right:9px}.game-panel{padding-inline:8px}.schulte-mode-grid button strong{font-size:.65rem}.schulte-mode-grid button small{font-size:.53rem}.schulte-control-deck{padding:8px}.schulte-segmented button{padding-inline:5px;font-size:.6rem}.schulte-target,.schulte-stat{min-height:54px;padding-inline:6px}.schulte-cell{font-size:clamp(.62rem,3.5vw,1rem)}.memory-grid{gap:4px}.sudoku-number-button{flex-basis:34px}.sudoku-pencil-button,.sudoku-eraser-button{flex-basis:50px;font-size:.66rem}}@media(hover:none)and (pointer:coarse){.primary-button:hover,.secondary-button:hover,.hint-button:hover,.entry-option:hover,.carousel-arrow:hover,.number-tile:hover,.memory-card:hover,.language-card:hover,.category-drop:hover,.schulte-cell:hover:not(:disabled),.schulte-mode-grid button:hover,.schulte-segmented button:hover,.sudoku-number-button:hover,.sudoku-pencil-button:hover,.sudoku-eraser-button:hover{transform:none}}.scene-card{background-image:linear-gradient(180deg,#f6fced7a,#e8f4d8a8);background-size:100% 100%}.scene-card .card-scene{min-height:0;aspect-ratio:1.55;padding:0 12px 34px;background:linear-gradient(180deg,#d6ebc21f,#ddf0cc3d)}.scene-card .scene-art{opacity:1;object-fit:contain;object-position:center}.scene-card .card-scene:before{z-index:1;background:linear-gradient(180deg,rgba(246,252,237,.08),transparent 55%,rgba(219,238,201,.2));opacity:1}.scene-card .card-scene:after{z-index:2;top:10px;right:10px;bottom:10px;left:10px;border:2px solid rgba(47,99,61,.28);border-radius:6px}.scene-card .card-title-zone,.scene-card .card-copy-zone{-webkit-backdrop-filter:none;backdrop-filter:none}@media(max-width:680px){.scene-card .card-scene{aspect-ratio:1.55;min-height:0;padding:0 8px 34px}}@media(max-width:380px){.scene-card .card-scene{min-height:0}}.scene-card .card-brain-sprite{width:auto;height:calc(100% - 28px);max-height:100%;aspect-ratio:5 / 8.25;align-self:end;justify-self:center;transform:translateY(68px) scale(1.7);transform-origin:center bottom}.scene-card .card-brain-sprite.brain-sheet-c{width:auto;aspect-ratio:1 / 2}.scene-card .pixel-corner-two{bottom:14px}.scene-card .scene-caption,.scene-card .scene-note{display:none!important}.records-main{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:28px 0 70px}.records-intro{max-width:980px}.records-intro h1{max-width:980px;margin:18px 0 12px;font-size:clamp(2.25rem,5.2vw,4.2rem);line-height:1.02;letter-spacing:-.07em}.records-intro p{color:var(--muted);margin:0;line-height:1.8;max-width:560px}.records-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(760px,100%);margin-top:28px}.records-summary>div{min-height:86px;display:grid;align-content:center;gap:6px;padding:13px 16px;border:1px solid var(--line);border-radius:17px;background:#ffffff8f;box-shadow:0 10px 26px #39672f0f}.records-summary span{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em}.records-summary strong{color:var(--mint-700);font-size:1.36rem;letter-spacing:-.04em}.records-summary strong small{color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:0}.records-summary strong.is-complete{color:#bd4b45}.record-calendar-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:18px;align-items:start;margin-top:18px}.record-calendar-card,.record-detail-card{border:1px solid var(--line);border-radius:24px;background:#ffffff9e;box-shadow:var(--shadow-card)}.record-calendar-card{padding:clamp(16px,3vw,26px)}.record-detail-card{min-height:280px;padding:24px}.record-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.record-calendar-kicker{color:var(--mint-600);font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.record-calendar-heading h2,.record-detail-card h2{margin:7px 0 0;font-size:clamp(1.35rem,3vw,1.95rem);letter-spacing:-.05em}.record-month-controls{display:flex;gap:7px}.calendar-nav{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;color:var(--mint-700);background:#ffffffad;cursor:pointer;font-size:1.1rem;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.calendar-nav:hover{transform:translateY(-2px);background:#fff;box-shadow:var(--shadow-card)}.record-weekdays,.record-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.record-weekdays{margin-bottom:6px;color:var(--muted);font-size:.68rem;font-weight:900;text-align:center}.record-weekdays span{padding:4px 0}.record-day{position:relative;min-width:0;min-height:88px;display:grid;grid-template-rows:auto auto 1fr auto;align-content:start;justify-items:center;gap:3px;padding:8px 4px 5px;border:1px solid rgba(68,121,59,.14);border-radius:12px;color:var(--ink);background:#f9fdf5b8;cursor:pointer;text-align:center;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.record-day:hover{transform:translateY(-2px);border-color:#2f6b3a6b;background:#fff;box-shadow:0 8px 18px #39672f1a}.record-day.is-empty{border-color:transparent;background:transparent;cursor:default;pointer-events:none}.record-day.is-today{border-color:#2f6b3a8a;box-shadow:inset 0 0 0 2px #88be6a38}.record-day.is-selected{border-color:var(--mint-700);box-shadow:0 0 0 3px #88be6a3d,0 8px 18px #39672f1a}.record-day-number{font-size:.86rem;font-weight:900;line-height:1.1}.record-day.is-today .record-day-number{color:var(--mint-700)}.record-day-count{color:var(--mint-700);font-size:.68rem;font-weight:900;line-height:1.1}.record-day-types{width:100%;min-height:1.05em;overflow:hidden;color:var(--muted);font-size:.56rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.record-day-empty{color:#5e75616b;font-size:.76rem;line-height:1.1}.record-flower{width:42px;height:30px;display:block;object-fit:contain;image-rendering:pixelated;margin:-2px auto -1px}.record-calendar-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px;color:var(--muted);font-size:.68rem}.record-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.record-calendar-legend img{width:28px;height:22px;object-fit:contain;image-rendering:pixelated}.legend-dot{width:8px;height:8px;display:inline-block;border-radius:50%;background:var(--mint-500);box-shadow:0 0 0 4px #88be6a2e}.record-detail-total{display:block;margin-top:20px;color:var(--mint-700);font-size:clamp(2.4rem,6vw,3.8rem);line-height:.9;letter-spacing:-.08em}.record-detail-total small{margin-left:6px;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:0}.record-detail-list{display:grid;gap:8px;margin-top:22px}.record-detail-list>div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;min-height:38px;padding:7px 9px;border-radius:10px;background:#e8f2dea3;color:var(--ink);font-size:.75rem}.record-detail-list b{color:var(--mint-700);font-size:.72rem}.record-detail-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;color:var(--mint-700);background:#ffffffb8;font-weight:900}.record-flower-note{display:flex;align-items:center;gap:8px;margin:18px 0 0;color:#a64440;font-size:.76rem;font-weight:800}.record-flower-note img{width:34px;height:26px;object-fit:contain;image-rendering:pixelated}.record-empty-copy{margin:24px 0 0;color:var(--muted);font-size:.8rem;line-height:1.7}@media(max-width:760px){.record-calendar-layout{grid-template-columns:1fr}.record-detail-card{min-height:0}}@media(max-width:680px){.records-main{width:calc(100% - (var(--mobile-gutter, 12px) * 2));padding-top:22px;padding-bottom:34px}.records-intro h1{font-size:clamp(2rem,10vw,3.4rem);line-height:1.04}.records-intro p{font-size:.88rem;line-height:1.65}.records-summary{gap:7px;margin-top:22px}.records-summary>div{min-height:74px;padding:10px 9px;border-radius:13px}.records-summary span{font-size:.58rem}.records-summary strong{font-size:1.02rem}.record-calendar-card{padding:13px 9px 15px;border-radius:19px}.record-detail-card{padding:18px;border-radius:19px}.record-calendar-heading{margin-bottom:12px}.record-calendar-heading h2{font-size:1.35rem}.calendar-nav{width:38px;height:38px}.record-weekdays,.record-calendar-grid{gap:4px}.record-day{min-height:72px;padding:6px 2px 4px;border-radius:9px;gap:2px}.record-day-number{font-size:.76rem}.record-day-count{font-size:.59rem}.record-day-types{font-size:.48rem}.record-flower{width:36px;height:25px}.record-calendar-legend{gap:9px;font-size:.6rem}}@media(prefers-reduced-motion:reduce){.record-day,.calendar-nav{transition:none}}body{background:radial-gradient(circle at 12% 8%,rgba(103,151,73,.24),transparent 32%),radial-gradient(circle at 86% 18%,rgba(75,124,58,.2),transparent 27%),linear-gradient(145deg,#d9e7c9,#bdd49f,#96bb80);background-attachment:fixed}html{background:#bdd49f}.carousel-main{padding-top:18px}.carousel-topline{width:min(100%,820px);margin:0 auto;display:flex;align-items:center;gap:12px}.carousel-topline .eyebrow{color:var(--mint-700)}.module-carousel{grid-template-columns:44px minmax(0,720px) 44px;width:min(100%,860px);margin-top:18px}.carousel-window{position:relative;height:clamp(430px,calc((100vw - 88px)*.645 + 260px),760px);overflow:visible;border-radius:30px}.carousel-track{position:relative;width:100%;height:100%;display:block;transform:none}.carousel-slide{position:absolute;top:0;bottom:0;left:8%;width:84%;height:100%;padding:4px;flex:none;transform:translate3d(calc(var(--card-offset) * 72%),calc(var(--card-depth) * 18px),0) scale(calc(1 - var(--card-depth) * .1)) rotate(calc(var(--card-offset) * -4deg));transform-origin:center 52%;transition:transform .52s cubic-bezier(.2,.82,.2,1),opacity .42s ease,filter .42s ease;will-change:transform,opacity,filter}.carousel-slide[aria-hidden=false]{z-index:3;opacity:1;filter:none}.carousel-slide[aria-hidden=true]{z-index:2;opacity:.82;filter:brightness(.68) saturate(.82);pointer-events:none}.carousel-slide .scene-card{height:100%;min-height:0}.carousel-footer{margin-top:14px}@media(max-width:680px){.carousel-main{padding-top:16px}.carousel-topline{width:100%}.module-carousel{grid-template-columns:28px minmax(0,1fr) 28px;gap:4px;width:100%;margin-top:12px}.carousel-window{height:clamp(430px,calc((100vw - 88px)*.645 + 260px),760px);overflow:visible;border-radius:20px}.carousel-slide{left:8%;width:84%;transform:translate3d(calc(var(--card-offset) * 72%),calc(var(--card-depth) * 12px),0) scale(calc(1 - var(--card-depth) * .08)) rotate(calc(var(--card-offset) * -3deg))}}@media(prefers-reduced-motion:reduce){.carousel-slide{transition:none}}
