:root{--ink:#35281d;--wood:#d3a064;--cream:#fff3d8;--deep-green:#264a3f;--teal:#3aafa3;--gold:#edbd50;--shadow:0 9px 18px #192f326b;--round:'Avenir Next Rounded Pro','Avenir Next','Trebuchet MS',system-ui,sans-serif;color-scheme:light;font-family:var(--round);color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:#456f54;min-width:320px}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:focus-visible,input:focus-visible,summary:focus-visible{outline:4px solid #143f70;outline-offset:5px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}button{color:var(--ink)}
.world{position:fixed;inset:0;background:#68957d url('/assets/world.webp') center center/cover no-repeat;z-index:-2;transition:filter 1s ease}.world-light{position:absolute;inset:0;background:linear-gradient(180deg,#203b401a,transparent 27%,#192f2833)}.world-shade{position:absolute;inset:0;background:linear-gradient(0deg,#17342e78,transparent 34%)}body[data-region=binary] .world{filter:saturate(.9)}body[data-region=binary] .world-light{background:linear-gradient(180deg,#15385b70,transparent 70%)}.kingdom{min-height:100svh;position:relative;overflow:hidden}.hud{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 28px;z-index:4}.brand{position:relative;width:160px;aspect-ratio:1180/880;overflow:hidden;flex-shrink:0;filter:drop-shadow(0 4px 3px #243f3c66);user-select:none}.brand-logo{display:block;position:absolute;width:136.5254%;max-width:none;height:auto;left:-18.3898%;top:-4.0909%}.region-banner{display:flex;align-items:center;flex-direction:column;margin-top:8px;gap:3px;color:#fffcdf;text-align:center;text-shadow:0 2px 6px #17362b,0 0 15px #18372b;max-width:350px}.region-banner>span:first-child{font-size:10px;font-weight:850;letter-spacing:2px}.region-banner strong{font-size:26px;font-family:Georgia,serif;letter-spacing:-.4px}.region-banner>span:last-child{font-size:12px;font-weight:650}.tools{display:flex;gap:8px}.wood-button{position:relative;border:2px solid #7b492d;border-bottom-width:5px;border-radius:13px;background:repeating-linear-gradient(4deg,transparent 0 14px,#81512810 15px 16px),linear-gradient(135deg,#f4d29b,#d9a66b);box-shadow:inset 0 0 0 3px #f7dcab8c,0 3px 8px #19302566;transition:transform .18s,filter .18s}.wood-button:hover{filter:brightness(1.08);transform:translateY(-2px)}.wood-button:active{transform:translateY(2px);border-bottom-width:3px}.tool{width:64px;height:68px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:4px;padding:7px 4px}.tool svg{width:28px;height:28px;stroke:#513320;fill:none;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.tool span{font-size:9px;font-weight:800;white-space:nowrap}.sound-waves{display:none}.sound-enabled .sound-waves{display:block}.sound-enabled .sound-off{display:none}.notification{position:absolute;right:-5px;top:-6px;background:#255f50;color:#fff1cd;border:2px solid #fff0c9;border-radius:50%;min-width:21px;height:21px;display:grid;place-items:center;font-size:10px}.royal-profile{position:absolute;top:188px;left:49px;width:117px;z-index:2;transform:rotate(-3deg);filter:drop-shadow(0 5px 3px #223b3970)}.crown{position:absolute;top:-42px;left:34px;font-size:54px;color:#ffcc57;text-shadow:0 2px #92562d;z-index:2;transform:rotate(4deg)}.profile-shield{width:108px;height:113px;border:6px solid #dba551;border-radius:44% 44% 48% 48%/18% 18% 65% 65%;overflow:hidden;background:linear-gradient(140deg,#94cdd0,#206985);box-shadow:inset 0 0 0 3px #ffedac,0 0 0 3px #7c5431}.profile-shield img{width:210%;max-width:none;height:315%;object-fit:contain;object-position:50% 0;transform:translate(-26%,-5%)}.portrait-fallback{display:grid;place-items:center;height:100%;font-family:Georgia,serif;font-size:65px;color:#fff5cb}.profile-ribbon{display:block;position:relative;left:-13px;width:142px;margin-top:-20px;padding:6px 0;background:linear-gradient(#ffe5ad,#d7a466);border:2px solid #8f5f30;border-radius:4px;text-align:center;font-size:15px;font-weight:900;white-space:nowrap}.world-signs{position:absolute;top:22%;left:0;width:100%;height:50px;z-index:1}.world-sign{position:absolute;border:2px solid #795739;border-radius:5px;background:linear-gradient(#eac391,#ceaa72);box-shadow:0 4px 5px #26463d45,2px 2px 0 #79542d;font-size:16px;font-weight:850;padding:8px 13px;transform:rotate(-2deg)}.world-sign:hover{filter:brightness(1.12)}.world-sign:after{content:'';position:absolute;top:100%;width:6px;height:26px;background:#755332;left:50%;z-index:-1}.world-sign span{padding-left:3px}.town-sign{left:55%;top:-20px}.binary-sign{right:9%;top:30px;transform:rotate(3deg)}.forrest-character{position:absolute;right:1.8vw;bottom:5.2vh;height:min(60vh,660px);width:min(32vw,440px);object-fit:contain;object-position:50% 100%;z-index:2;filter:drop-shadow(0 7px 4px #18332d55);pointer-events:none}
.adventure{position:relative;width:min(755px,66vw);margin:clamp(90px,14vh,180px) 0 55px 12vw;z-index:3}.quest-intro{position:relative;margin:0 2% 30px 192px;padding:18px 24px 19px;background:linear-gradient(135deg,#fff9e9,#ffedce);border:3px solid #efd4a1;border-radius:26px 30px 26px 10px;box-shadow:0 5px 0 #bda37e,0 7px 20px #1e3d3240;max-width:470px;min-height:116px}.quest-intro:before{content:'';position:absolute;bottom:8px;left:-19px;width:24px;height:30px;background:#fff3da;clip-path:polygon(100% 0,100% 100%,0 100%)}.quest-label{font-size:10px;letter-spacing:1.6px;font-weight:900;color:#6b684b;display:flex;gap:6px;align-items:center}.quest-spark{font-size:14px;color:#b88a2a}.quest-intro h1{font-family:var(--round);font-size:25px;line-height:1.13;letter-spacing:-.8px;margin:5px 0 7px;font-weight:900;text-wrap:balance}.quest-intro p{font-size:13px;line-height:1.4;font-weight:550;margin:0;max-width:370px}.friends{position:absolute;top:15px;left:-5px;display:flex;align-items:flex-end;width:192px;filter:drop-shadow(0 5px 3px #29403566)}.friend{position:relative;width:105px;flex-shrink:0;animation:friend-breathe 4s ease-in-out infinite}.friend-v3{transform:rotate(-5deg)}.friend-v4{margin-left:-10px;animation-delay:-2s;transform:rotate(4deg)}.friend svg{width:100%;height:auto;display:block}.friend>span{position:absolute;bottom:-11px;left:25px;padding:3px 8px;border-radius:5px;background:#fff2d5;border:1px solid #a88451;font-size:12px;font-weight:900;box-shadow:0 2px 0 #705238;white-space:nowrap}.friend small{display:block;font-size:8px;font-weight:650}.puzzle{position:relative;background:repeating-linear-gradient(1deg,transparent 0 53px,#9966380f 54px 56px),linear-gradient(115deg,#f5d39b,#f9dfb1 40%,#e6bb82);border:3px solid #8f5c35;border-radius:20px;box-shadow:inset 0 0 0 5px #ffedc775,inset 0 -6px 0 #b88752,0 7px 0 #65462e,0 15px 28px #1e3c3266;padding:15px 26px 13px;text-align:center;min-height:310px}.puzzle:before,.puzzle:after{content:'';position:absolute;top:13px;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#d6bb94,#765f43 65%);box-shadow:0 2px 0 #8c623a}.puzzle:before{left:12px}.puzzle:after{right:12px}.puzzle-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 4px 5px;color:#795835;font-size:9px;font-weight:900;letter-spacing:1.6px}.hint-button{background:#fff3d1b8;border:1px solid #ae8654;border-radius:20px;padding:7px 10px;font-size:11px;font-weight:800;letter-spacing:0;min-height:34px}.hint-button:hover{background:#fff8e2}.hint-button span{color:#856312;font-size:15px}.puzzle h2{font-size:35px;line-height:1.16;letter-spacing:-.8px;margin:8px 0 10px;font-weight:900;text-wrap:balance}.puzzle-visual{display:flex;justify-content:center;align-items:center;gap:15px;min-height:65px;margin:3px auto 16px}.block-group{min-width:78px;min-height:60px;display:flex;justify-content:center;align-items:center;gap:7px;padding:9px 13px;flex-wrap:wrap;max-width:280px;background:linear-gradient(#be955f44,#f4d5a077);border:2px solid #ad804a9c;border-radius:10px;box-shadow:inset 0 3px 5px #8b622c2a}.block{display:inline-block;position:relative;width:31px;height:33px;border:1px solid #ac782f;border-bottom:4px solid #b17b2a;border-radius:4px;background:linear-gradient(135deg,#ffeda5,#eab343);box-shadow:inset 2px 2px 0 #fff2b3,2px 2px 0 #8c61293b;flex-shrink:0}.block:after{content:'';position:absolute;inset:4px;border:1px solid #c68e3533;transform:rotate(45deg)}.block.used{opacity:.28;position:relative}.block.used:before{content:'';position:absolute;top:50%;left:-3px;right:-3px;height:2px;background:#513828;transform:rotate(-40deg);z-index:1}.empty-basket{font-size:13px;opacity:.65;min-width:55px;padding:5px}.math-symbol{font-size:34px;font-weight:850}.visual-question{border:2px dashed #ae8958;border-radius:10px;font-size:36px;min-width:64px;height:60px;display:grid;place-items:center}.answer-area{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.answer-button{position:relative;width:100px;min-height:65px;padding:8px 18px;background:linear-gradient(140deg,#fff6df,#e1ccaa);border:2px solid #9c7a50;border-bottom:5px solid #937450;border-radius:23px 20px 18px 22px;box-shadow:inset 0 2px 0 #fffcee,0 3px 6px #7a50213b;font-size:34px;font-weight:850;transition:transform .16s,background .16s}.answer-button:nth-child(2){border-radius:20px 26px 19px 23px}.answer-button:nth-child(3){border-radius:27px 19px 22px 18px}.answer-button:hover:enabled{transform:translateY(-3px);background:linear-gradient(140deg,#fffdef,#f4ddae)}.answer-button:active:enabled{transform:translateY(2px)}.answer-button.is-correct{border-color:#397759;background:linear-gradient(#d6f0b3,#a5d694);color:#22563e;box-shadow:0 0 0 4px #faf1be80}.answer-button.gentle-try{background:#f4daba;border-color:#b68b5a}.answer-button:disabled:not(.is-correct){opacity:.6}.feedback{font-size:14px;line-height:1.4;font-weight:650;min-height:23px;margin-top:11px;color:#534731}.feedback.correct{color:#245e40}.feedback.hint{color:#645337;background:#fff4d7a3;border-radius:8px;padding:8px 12px}.after-answer{margin-top:8px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.primary-button,.secondary-button{min-height:44px;border-radius:11px;padding:11px 20px;font-size:14px;font-weight:850;border:2px solid #205644;box-shadow:0 3px 0 #1c4639;transition:transform .15s}.primary-button{background:linear-gradient(#42826a,#2d6853);color:#fff8df}.primary-button:hover{background:#3d8065;transform:translateY(-1px)}.secondary-button{background:#fff1cf;border-color:#ad8a52;box-shadow:0 3px 0 #947546;color:#51442c}.secondary-button:hover{background:#fff9e6}.journey-strip{border-top:1px solid #b5874d66;padding-top:10px;display:flex;gap:10px;align-items:center;margin-top:14px;font-size:9px;font-weight:800;color:#75552f}.journey-strip>span:first-child{min-width:120px;text-align:left}.journey-planks{display:flex;gap:4px;flex:1}.journey-planks i{height:8px;flex:1;background:#bd935d5e;border:1px solid #ad86554d;border-radius:2px;transition:background .5s}.journey-planks i.filled{background:#628651;border-color:#4c7142;box-shadow:inset 0 1px 0 #ffffff50}.bottom-note{position:absolute;bottom:14px;left:0;right:0;z-index:3;text-align:center;color:#fff5d6;text-shadow:0 2px 4px #183c30;font-size:11px;font-weight:600;letter-spacing:.25px}.bottom-note span{color:#ffe398;margin-right:5px}.sequence{display:flex;gap:8px}.sequence span{display:grid;place-items:center;border-radius:9px;background:#fff1cf99;border:1px solid #b7915b;width:50px;height:50px;font-size:26px;font-weight:800}.sequence span.missing{border:2px dashed #9e763e;background:#fff5db}.place-columns{display:flex;align-items:stretch;justify-content:center;gap:14px;width:100%;max-width:480px}.place-column{display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:8px;border-radius:9px;background:#fff5d677;border:1px solid #b18a5799;padding:9px 12px;min-width:100px;flex:1}.place-column>strong{font-size:10px;color:#775b34;letter-spacing:1.5px}.place-pieces{display:flex;justify-content:center;align-items:flex-end;gap:5px;min-height:60px;flex-wrap:wrap}.ten-tower{display:grid;grid-template-rows:repeat(5,10px);grid-template-columns:repeat(2,10px);gap:1px;background:#b77736;border:2px solid #996229;border-radius:3px;box-shadow:1px 2px 0 #74572c33}.ten-tower i{background:linear-gradient(135deg,#ffe8a0,#dfab49);border-top:1px solid #fff4c2;border-left:1px solid #ffeab7}.place-pieces .block{width:18px;height:19px;border-bottom-width:2px;border-radius:2px}.place-column b{font-size:13px}.build-workshop{display:flex;flex-direction:column;width:100%;gap:12px}.build-workshop .place-pieces{min-height:58px}.stepper{display:flex;justify-content:center;align-items:center;gap:10px}.stepper button{background:#fff2d5;border:1px solid #a5814c;border-bottom:3px solid #a5814c;border-radius:7px;width:40px;height:39px;font-weight:850;font-size:23px}.stepper button:disabled{opacity:.35}.stepper output{font-size:25px;font-weight:850;min-width:24px}.build-total{font-weight:850;font-size:17px;align-self:center;background:#fff5d7ab;border-radius:8px;padding:8px 18px}.binary-workshop{display:flex;flex-direction:column;width:100%;gap:12px}.lantern-row{display:flex;justify-content:center;gap:17px}.lantern-control{display:flex;flex-direction:column;align-items:center;gap:5px}.lantern-control>span{font-size:11px;font-weight:800;color:#624e35}.lantern{position:relative;width:66px;height:76px;border-radius:17px 17px 13px 13px;background:linear-gradient(#526467,#334549);border:4px solid #9d793d;box-shadow:inset 0 0 0 3px #192f324d,0 3px 0 #705b37;color:#d8ddd4;font-size:30px;font-weight:800;transition:background .25s,box-shadow .25s,color .25s}.lantern:before{content:'';position:absolute;left:20px;top:-12px;width:17px;height:10px;border:3px solid #866c41;border-radius:10px 10px 0 0}.lantern.on{background:radial-gradient(#fff8b8,#edc364);color:#67471d;box-shadow:inset 0 0 0 3px #ffefbc,0 0 23px #fff0a880,0 3px 0 #947331}.lantern:hover:enabled{transform:translateY(-2px)}.binary-readout{font-size:13px;font-weight:650;color:#5b5038}.binary-readout strong{font-family:ui-monospace,monospace;letter-spacing:4px;background:#fff3d2;padding:4px 7px;border-radius:5px;font-size:19px;margin:0 5px}.lamp-demo{display:flex;align-items:center;gap:14px}.lamp-demo p{font-size:15px;font-weight:800;color:#59492d}.reward-note{display:flex;justify-content:center;align-items:center;gap:6px;font-size:12px;color:#715419;background:#fff1ba;border:1px solid #c49f52;border-radius:10px;padding:7px 12px;max-width:100%;}.reward-note span{font-size:21px}.fireflies{position:absolute;inset:0;pointer-events:none}.fireflies i{position:absolute;width:4px;height:4px;background:#fff6ba;border-radius:50%;box-shadow:0 0 12px 4px #ffe59480;opacity:0;animation:firefly 8s ease-in-out infinite}.fireflies i:nth-child(1){left:83%;top:32%;animation-delay:-1s}.fireflies i:nth-child(2){left:93%;top:49%;animation-delay:-5s}.fireflies i:nth-child(3){left:75%;top:46%;animation-delay:-3s}.fireflies i:nth-child(4){left:7%;top:58%;animation-delay:-6s}.fireflies i:nth-child(5){left:61%;top:21%;animation-delay:-4s}.celebration{position:fixed;inset:0;pointer-events:none;z-index:15;overflow:hidden}.celebration i{position:absolute;bottom:25%;left:45%;width:9px;height:13px;border-radius:3px;background:var(--confetti);animation:confetti 1.8s ease-out forwards;transform:rotate(var(--turn))}
dialog{color:var(--ink);width:min(670px,calc(100% - 32px));max-height:calc(100svh - 45px);padding:0;border:3px solid #845b35;border-radius:22px;background:#fff1d3;box-shadow:0 25px 100px #0c261ccc;overflow:auto}dialog::backdrop{background:#132f2d9c;backdrop-filter:blur(5px)}.dialog-frame{padding:32px;position:relative;background:radial-gradient(ellipse at 0 0,#fffbe9,transparent 70%),#f8e7c4;min-height:220px}.close-dialog{position:absolute;right:12px;top:12px;background:#ecd5ac;border:1px solid #c5a574;width:36px;height:36px;font-size:27px;line-height:1;border-radius:50%;z-index:1}.dialog-eyebrow{font-size:10px;color:#847044;font-weight:850;letter-spacing:2px;margin:0 0 5px}.dialog-frame h2{font-family:Georgia,serif;font-size:31px;font-weight:700;margin:5px 32px 8px 0;letter-spacing:-.5px}.dialog-lead{font-size:14px;line-height:1.5;color:#725e3d;margin:0 0 22px}.map-regions{display:grid;gap:11px}.map-card{display:flex;align-items:center;gap:15px;text-align:left;background:#fff8e3;border:1px solid #c6ae7c;border-bottom:4px solid #c4a570;border-radius:12px;padding:16px;min-height:100px;width:100%}.map-card:hover:not([aria-disabled=true]){background:#fffff0;transform:translateY(-1px)}.map-icon{display:grid;place-items:center;background:#e1e8c6;color:#547044;width:54px;height:58px;border-radius:14px;font-size:34px;flex-shrink:0}.map-card:nth-child(2) .map-icon{background:#f1d99e;color:#997031}.map-card:nth-child(3) .map-icon{background:#cbe3d8;color:#3d7474}.map-copy{flex:1}.map-copy strong{display:block;font-size:18px;margin-bottom:3px}.map-copy small{display:block;color:#796543;line-height:1.5;font-size:12px}.map-copy em{display:block;font-style:normal;color:#39735b;font-size:10px;font-weight:800;letter-spacing:.4px;margin-top:6px}.map-arrow{font-size:24px;color:#846a3f}.map-card[aria-disabled=true]{background:#eee2c8;color:#7a6e57}.map-card[aria-disabled=true] .map-icon{filter:grayscale(1);opacity:.6}.map-footer{font-size:12px;line-height:1.5;color:#78613c;margin-bottom:0}.treasure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.treasure{background:#fff6df;border:1px solid #d7bf8d;border-radius:13px;padding:14px 9px;text-align:center}.treasure-coin{width:58px;height:58px;display:grid;place-items:center;margin:auto auto 9px;font-size:33px;background:radial-gradient(circle at 35% 20%,#fff3b3,#e8bd59);border:3px solid #cda04c;box-shadow:inset 0 0 0 3px #fff0af,0 3px 0 #bd9550;border-radius:50%;color:#8c631d}.treasure h3{font-size:12px;margin:0 0 4px}.treasure p{font-size:10px;line-height:1.5;margin:0;color:#7d6947}.treasure.locked{opacity:.6}.treasure.locked .treasure-coin{background:#e5dcc5;box-shadow:inset 0 0 0 3px #f5ead1,0 3px 0 #c6b590;border-color:#c6b590;color:#a69573}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #d9c49b}.settings-row strong{display:block;font-size:14px}.settings-row small{display:block;font-size:11px;color:#7c6644;margin-top:4px}.toggle{width:50px;height:29px;appearance:none;background:#c7b68c;border-radius:20px;border:2px solid #a99468;cursor:pointer;flex-shrink:0;position:relative;margin:0}.toggle:before{content:'';position:absolute;left:3px;top:3px;width:19px;height:19px;background:#fff8df;border-radius:50%;box-shadow:0 1px 3px #72563180;transition:left .2s}.toggle:checked{background:#488269;border-color:#34674f}.toggle:checked:before{left:24px}.volume-control{display:flex;align-items:center;gap:10px;max-width:190px}.volume-control input{width:130px;accent-color:#39765d}.volume-control output{font-size:12px;width:32px}.settings-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.save-status{font-size:11px;color:#776546;margin:16px 0 0;line-height:1.4}.credits-details{font-size:11px;color:#79694a;margin-top:18px}.credits-details summary{cursor:pointer;min-height:24px}.credits-details a{color:#386952}.help-card{background:#fff9e7;border:1px solid #cfb880;border-radius:14px;padding:21px;font-size:20px;font-weight:650;line-height:1.5;margin:18px 0}.help-bottom{display:flex;gap:10px;flex-wrap:wrap}.no-script{position:fixed;inset:30% 10%;z-index:50;padding:30px;background:#fff4d6;border-radius:15px;text-align:center;font-size:20px;line-height:1.5}
@keyframes friend-breathe{0%,100%{translate:0 0}50%{translate:0 -4px}}@keyframes firefly{0%,100%{opacity:0;translate:0 0}40%,60%{opacity:.8}80%{translate:8px -20px}}@keyframes confetti{0%{opacity:0;translate:0 0}10%{opacity:1}100%{opacity:0;translate:var(--dx) var(--dy);rotate:var(--turn)}}
@media(min-width:1600px){.adventure{margin-top:clamp(120px,18vh,220px);margin-left:17vw;width:800px}.quest-intro{margin-left:220px;max-width:520px}.friends{width:210px}.friend{width:119px}.puzzle{padding:20px 32px 16px}.puzzle h2{font-size:39px}.forrest-character{right:7vw;height:67vh;width:32vw}.world-signs{top:23%}}
@media(min-width:1100px) and (max-height:850px){.hud{padding-top:15px}.adventure{margin-top:clamp(45px,7vh,75px);margin-bottom:44px}.quest-intro{padding:12px 20px 14px;margin-bottom:20px;min-height:106px}.quest-intro h1{font-size:24px}.quest-intro p{font-size:12px}.puzzle{padding-top:10px;min-height:280px}.puzzle h2{font-size:31px}.puzzle-visual{margin-bottom:10px;min-height:52px}.answer-button{min-height:59px}.friends{top:0}.royal-profile{top:176px;left:35px;width:100px;scale:.86;transform-origin:top left}.forrest-character{height:61vh;right:0}.world-signs{top:23%}.town-sign{left:54%}}
@media(max-width:1099px){.hud{padding:18px;gap:10px}.brand{width:144px}.tools{gap:6px}.tool{width:52px;height:59px}.tool svg{width:24px;height:24px}.tool span{font-size:8px}.region-banner{margin-top:9px}.region-banner strong{font-size:22px}.region-banner>span:first-child{font-size:8px;letter-spacing:1px}.royal-profile{top:164px;left:28px;scale:.8;transform-origin:top left}.adventure{width:73vw;margin-left:7vw;margin-top:150px}.quest-intro{margin-left:180px}.forrest-character{right:-6vw;width:35vw;bottom:13vh;height:52vh}.world-signs{top:21%}.town-sign{left:49%;top:0}.binary-sign{right:8%;top:60px}.world-sign{font-size:13px}.puzzle{padding-left:18px;padding-right:18px}.puzzle h2{font-size:31px}.friends{width:175px;top:28px}.friend{width:98px}}
@media(max-width:760px){.kingdom{min-height:100svh;overflow:hidden}.world{background-position:53% 50%}.world-light{background:linear-gradient(180deg,#18473618,transparent 40%,#254c4170)}.hud{padding:14px 13px 0;gap:5px}.brand{width:120px}.tools{gap:5px;padding-top:2px}.tool{width:42px;height:47px;border-radius:9px;padding:6px 2px;border-bottom-width:4px}.tool svg{width:24px;height:24px}.tool span{display:none}.notification{width:18px;height:18px;min-width:18px;font-size:9px}.region-banner{position:absolute;top:113px;left:0;width:100%;max-width:none;margin:0}.region-banner strong{font-size:27px}.region-banner>span:first-child{font-size:8px;letter-spacing:1.7px}.region-banner>span:last-child{font-size:10px}.royal-profile{display:none}.world-signs{display:none}.forrest-character{top:157px;bottom:auto;right:-3px;width:117px;height:175px;opacity:1;z-index:2}.adventure{width:auto;margin:183px 14px 47px;z-index:3}.quest-intro{margin:0 71px 21px 92px;padding:12px 14px 13px;min-height:100px;max-width:none;border-radius:19px 21px 20px 7px;border-width:2px;box-shadow:0 4px 0 #bda37e,0 6px 18px #1e3d3240}.quest-intro:before{left:-14px;width:18px;height:21px}.quest-label{font-size:8px;letter-spacing:.6px;gap:4px}.quest-spark{font-size:11px}.quest-intro h1{font-size:19px;line-height:1.15;letter-spacing:-.6px;margin:4px 0 5px}.quest-intro p{font-size:11px;line-height:1.4}.friends{top:29px;left:-11px;width:116px}.friend{width:65px}.friend-v4{margin-left:-16px}.friend>span{left:17px;bottom:-8px;font-size:9px;padding:2px 5px}.friend small{font-size:6px}.puzzle{padding:11px 14px 13px;border-radius:16px;border-width:2px;min-height:295px;box-shadow:inset 0 0 0 4px #ffedc775,inset 0 -5px 0 #b88752,0 6px 0 #65462e,0 12px 25px #1e3c3266}.puzzle:before,.puzzle:after{width:6px;height:6px;top:10px}.puzzle:before{left:8px}.puzzle:after{right:8px}.puzzle-topline{font-size:8px;letter-spacing:1px;margin-left:5px;margin-right:5px}.hint-button{font-size:10px;padding:5px 8px;min-height:33px}.puzzle h2{font-size:29px;letter-spacing:-.7px;margin:10px 0 13px}.puzzle-visual{gap:9px;min-height:57px;margin-bottom:16px}.block-group{padding:8px;min-width:62px;min-height:56px;gap:5px;max-width:145px}.block{width:25px;height:27px;border-bottom-width:3px}.math-symbol{font-size:27px}.visual-question{min-width:45px;height:54px;font-size:31px}.answer-area{gap:11px}.answer-button{width:82px;min-height:64px;font-size:32px}.feedback{font-size:12px;min-height:18px;line-height:1.4;margin-top:12px}.journey-strip{gap:6px;flex-wrap:wrap;padding-top:10px;margin-top:13px;font-size:8px}.journey-strip>span:first-child{min-width:100%;text-align:center;font-size:9px;margin-bottom:3px}.journey-planks{gap:3px}.journey-planks i{height:7px}.bottom-note{font-size:9px;bottom:15px;letter-spacing:0}.after-answer{gap:8px}.primary-button,.secondary-button{font-size:12px;min-height:43px;padding:10px 15px}.reward-note{font-size:10px;padding:5px 9px}.place-columns{gap:9px}.place-column{padding:9px 7px;min-width:80px}.place-pieces{gap:3px;min-height:55px}.ten-tower{grid-template-rows:repeat(5,8px);grid-template-columns:repeat(2,8px);gap:1px}.place-pieces .block{width:15px;height:16px}.place-column b{font-size:11px}.place-column>strong{font-size:9px}.stepper{gap:9px}.stepper button{width:38px;height:37px}.lantern-row{gap:11px}.lantern{width:57px;height:67px;font-size:27px}.lantern:before{left:15px}.lantern-control>span{font-size:10px}.binary-readout{font-size:11px}.binary-readout strong{font-size:17px;letter-spacing:2px}.build-total{font-size:15px}.sequence{gap:5px}.sequence span{width:42px;height:45px;font-size:24px}.dialog-frame{padding:25px 20px}.dialog-frame h2{font-size:27px}.dialog-lead{font-size:12px}.map-card{gap:10px;padding:12px;min-height:90px}.map-icon{width:44px;height:50px;font-size:29px}.map-copy strong{font-size:16px}.map-copy small{font-size:10px}.map-copy em{font-size:9px}.treasure-grid{grid-template-columns:repeat(2,1fr);gap:10px}.treasure{padding:12px 9px}.settings-row{gap:10px}.volume-control input{width:105px}.settings-row strong{font-size:12px}.settings-row small{font-size:10px}.help-card{font-size:17px;padding:16px}.fireflies i{width:3px;height:3px}}
@media(max-width:380px){.brand{width:116px}.tools{gap:4px}.tool{width:37px;height:44px}.adventure{margin-left:10px;margin-right:10px}.quest-intro{margin-left:79px;margin-right:57px;padding:11px}.quest-intro h1{font-size:17px}.quest-intro p{font-size:10px}.friends{width:102px;left:-7px}.friend{width:56px}.forrest-character{width:100px;right:-4px}.puzzle{padding-left:11px;padding-right:11px}.puzzle h2{font-size:26px}.answer-button{width:75px;min-height:58px}.lantern-row{gap:8px}.lantern{width:51px;height:62px}.lantern:before{left:13px}.world{background-position:51% 50%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.fireflies{display:none}}body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation:none!important;transition:none!important}.reduce-motion .fireflies{display:none}
