@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(./dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(./dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button,a{touch-action:manipulation}button{background:0 0;border:0}[hidden],.hidden{display:none!important}svg{display:block}}@layer base{:root{color:#2d483e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#2d483e;--muted:#6e7967;--line:#dfdfd3;--paper:#f5f3ec;--gold:#c69246;background:#f5f3ec;font-family:DM Sans Variable,sans-serif}body{background-image:radial-gradient(#75836b14 .6px,#0000 .6px);background-size:7px 7px;min-width:320px}::selection{background:#d9e3c7}:focus-visible{outline-offset:5px;border-radius:6px;outline:3px solid #c08d40}.icon{flex:none;width:21px;height:21px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}kbd{font-family:inherit}}@layer layout{.shell{width:min(1320px,100% - 112px);margin:auto}.header{border-bottom:1px solid var(--line);align-items:center;gap:28px;height:128px;display:flex}.header-actions{align-items:center;gap:13px;margin-left:auto;display:flex}.game{grid-template-columns:315px minmax(0,1fr);column-gap:48px;padding-top:52px;display:grid;position:relative}.story{z-index:1;flex-direction:column;align-items:flex-start;padding-top:16px;display:flex;position:relative}.play-area{height:510px;position:relative}.play-toolbar{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;display:flex}.guidance{color:#66745f;text-align:center;grid-column:1/-1;justify-content:center;align-items:center;gap:9px;min-height:62px;padding:12px 0;font-size:12px;line-height:1.6;display:flex}.guidance .icon{color:#a6aa91;width:16px;height:16px}.guidance strong{color:#456453;font-weight:650}.footer{border-top:1px solid var(--line);padding-top:25px;padding-bottom:22px}}@layer components{.brand{color:var(--ink);letter-spacing:-1.5px;align-items:center;gap:13px;font-size:29px;font-weight:700;text-decoration:none;display:inline-flex}.brand-period{color:#c39354}.brand-mark{grid-template-columns:repeat(3,6px);gap:3px;display:grid;transform:rotate(-5deg)}.brand-mark i{background:#476754;border-radius:1.6px;width:6px;height:6px}.brand-mark i.gold{background:#d2a25c;border-radius:50%}.header-caption{color:var(--muted);letter-spacing:.02em;border-left:1px solid var(--line);margin-top:4px;padding-left:26px;font-size:11px}.icon-button{color:#6c796a;border-radius:50%;place-items:center;width:42px;height:42px;transition:background .18s,color .18s;display:inline-grid}.icon-button:hover{color:var(--ink);background:#e9eadd}.help-button{align-items:center;gap:8px;padding:10px 0 10px 12px;font-size:12px;font-weight:500;display:flex}.help-button .icon{color:#76836f;width:18px;height:18px}.help-button:hover{color:#ae7c37}.eyebrow{letter-spacing:.07em;color:#76816e;align-items:center;gap:9px;font-size:10px;font-weight:500;display:flex}.tiny-line{background:#9da98a;width:22px;height:1px}.level-kicker{letter-spacing:.14em;color:#71806a;margin-top:42px;font-size:10px;font-weight:650}.level-kicker #level-number{margin-left:6px}.quiet{color:#a5aa9a;letter-spacing:.06em;font-weight:450}h1,h2{font-variation-settings:"SOFT" 55, "WONK" 1;letter-spacing:-2.1px;font-family:Fraunces Variable,Georgia,serif;font-weight:500}h1{max-width:310px;margin:16px 0 18px;font-size:55px;line-height:1.09}.title-period{color:#c49b61}.level-description{color:#68735f;max-width:270px;font-size:13px;line-height:1.9}.level-stats{gap:36px;margin-top:32px;display:flex}.stat{flex-direction:column;gap:7px;display:flex}.stat-par{border-left:1px solid var(--line);padding-left:30px}.stat-label{color:#6e7a63;letter-spacing:.14em;font-size:9px;font-weight:550}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-1px;font-size:30px;font-weight:450;line-height:1.1}.stat-unit{color:#838d78;letter-spacing:0;font-size:11px}.stone-legend{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.legend-stone{border:1px solid #dfdfcf;border-radius:5px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;display:flex}.legend-stone>.icon{width:14px;height:14px}.stone-0{color:#aa7f3a}.stone-1{color:#5c9589}.stone-2{color:#8e7eae}.legend-dot{opacity:.5;border:1px solid;border-radius:50%;width:5px;height:5px;margin:0 1px 0 4px}.legend-stone .match-check{width:11px;height:11px;margin-left:3px}.legend-stone.matched{background:#e8eddb;border-color:#d2ddc1}.story-footer{color:#8b947f;align-items:center;gap:7px;margin-top:auto;padding:28px 0 24px;font-size:9px;display:flex}.story-footer .icon{color:#9daa8d;width:13px;height:13px}.world{z-index:1;-webkit-user-select:none;user-select:none;position:absolute;inset:-15px -45px 3px}.world canvas{width:100%;height:100%;display:block}.world-label{color:#929a83;letter-spacing:.13em;z-index:2;pointer-events:none;align-items:center;gap:8px;font-size:8px;font-weight:500;display:flex;position:absolute;top:10px;left:14px}.live-dot{background:#94a783;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #98ad8514}.world-dimension{color:#7f8c70;letter-spacing:.05em;border:1px solid #d9dfcc;border-radius:4px;margin-left:4px;padding:4px 7px}.world-halo{background:radial-gradient(#dce0c537,#e9e9d925 47%,#0000 70%);border-radius:50%;width:93%;height:75%;position:absolute;top:14%;left:2%}.board-caption{white-space:nowrap;color:#989e8c;letter-spacing:.17em;pointer-events:none;z-index:2;justify-content:center;align-items:center;gap:12px;font-size:7px;display:flex;position:absolute;bottom:41px;left:50%;transform:translate(-50%)}.caption-line{background:#d7ddca;width:24px;height:1px}.loop-note{white-space:nowrap;color:#909a84;z-index:2;pointer-events:none;align-items:center;gap:6px;font-size:9px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.loop-note .icon{width:12px;height:12px}.direction-pad{z-index:3;width:102px;height:102px;position:absolute;bottom:54px;right:-5px;transform:rotate(45deg)}.direction{color:#718369;background:#eeeee2e8;border:1px solid #dfe2d3;border-radius:7px;place-items:center;width:34px;height:34px;transition:background .14s,border-color .14s,box-shadow .14s;display:grid;position:absolute}.direction>span{font-size:21px;font-weight:400}.direction-up{top:0;left:34px}.direction-right{top:34px;right:0}.direction-down{bottom:0;left:34px}.direction-left{top:34px;left:0}.direction:hover,.direction.pressed{color:#3e6248;background:#dbe4cb;border-color:#b6c9a4}.direction.hinted{color:#8e672d;background:#e8d8b2;border-color:#c99d51;box-shadow:0 0 0 4px #cba95822}.direction-center{color:#9ba68e;position:absolute;top:41px;left:41px}.direction-center .icon{width:20px;height:20px}.tools{align-items:center;gap:23px;display:flex}.tool-button{color:#6f7f69;align-items:center;gap:8px;padding:7px 0;font-size:11px;font-weight:500;transition:color .15s;display:flex}.tool-button .icon{width:17px;height:17px}.tool-button:hover{color:#b0843e}.tool-button:disabled{opacity:.38}.tool-button kbd{color:#9ca590;background:#eeeee3;border-radius:3px;margin-left:3px;padding:2px 4px;font-size:8px}.tool-divider{background:var(--line);width:1px;height:19px;margin:0 1px}.hint-button{color:#8d825b}.keyboard-note{color:#949b87;align-items:center;gap:10px;font-size:10px;display:flex}.arrow-key-row{gap:3px;display:inline-flex}.arrow-key-row kbd{color:#7d8b71;background:#f2f1e7;border:1px solid #d9dece;border-bottom-width:2px;border-radius:3px;padding:2px 4px;font-size:10px;line-height:13px}.journey-heading{color:#7e8974;justify-content:space-between;align-items:center;font-size:10px;display:flex}#progress-label{color:#a1a794;font-size:9px}.level-nav{justify-content:space-between;align-items:center;padding:22px 1px 27px;display:flex}.level-dot{font-variant-numeric:tabular-nums;color:#9ca68e;background:var(--paper);border:1px solid #d5dcc8;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:9px;font-weight:500;transition:background .2s,transform .2s,color .2s;display:grid;position:relative}.level-dot:disabled{color:#b5bba9;border-color:#e1e4d7}.level-dot:not(:disabled):hover{border-color:#7f9571;transform:translateY(-2px)}.level-dot.current{color:#f4f5e9;background:#49694b;border-color:#49694b;box-shadow:0 0 0 4px #49694b0e}.level-dot.current:after{content:"";background:#7d906e;border-radius:50%;width:3px;height:3px;position:absolute;bottom:-10px}.level-dot.solved:not(.current){color:#788b64;background:#e4ead8;border-color:#ccd8bd}.level-dot .icon{width:13px;height:13px}.level-connector{background:#e1e4d7;flex:1;height:1px;margin:0 8px}.level-connector.filled{background:#c2d1af}.footer-bottom{color:#a2a794;justify-content:space-between;align-items:center;font-size:9px;display:flex}.made-with{align-items:center;gap:12px;display:flex}.footer-sun{color:#b6a779}.footer-sun .icon{width:15px;height:15px}.modal{color:var(--ink);background:#f8f6ef;border:1px solid #e5e5d6;border-radius:20px;width:min(460px,100% - 32px);max-height:calc(100dvh - 40px);padding:45px;overflow-y:auto;box-shadow:0 25px 100px #293a3526}.modal::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#35483d35}.modal[open]{animation:.25s ease-out appear}.modal-close{width:34px;height:34px;position:absolute;top:12px;right:12px}.modal-close .icon{width:17px;height:17px}.modal-eyebrow{color:#5d6e4d;letter-spacing:.12em;margin-bottom:15px;font-size:9px}h2{letter-spacing:-1.5px;font-size:43px;line-height:1.1}.modal-intro{color:#68755f;margin-top:18px;font-size:12px;line-height:1.9}.rule{gap:18px;margin-top:25px;display:flex}.rule-number{color:#bc9a5a;padding-top:2px;font-size:10px}.rule h3{margin-bottom:7px;font-size:12px;font-weight:600}.rule p{color:#68755f;font-size:11px;line-height:1.8}.help-loop{color:#83916f;background:#ebeedf;border-radius:8px;gap:14px;margin-top:24px;padding:14px;font-size:10px;line-height:1.8;display:flex}.help-loop .icon{width:18px;height:18px;margin-top:8px}.primary-button{color:#f7f5e9;background:#466649;border-radius:9px;justify-content:center;align-items:center;gap:14px;width:100%;margin-top:27px;padding:15px 18px;font-size:12px;font-weight:500;transition:background .15s,transform .15s;display:flex}.primary-button .icon{width:18px;height:18px}.primary-button:hover{background:#36543a;transform:translateY(-1px)}.text-button{color:#8d987e;margin:17px auto 0;padding:6px;font-size:10px;display:block}.text-button:hover{color:#466649}.win-modal{text-align:center;padding-top:38px}.win-emblem{color:#c1964c;background:#efe6ce;border-radius:50%;place-items:center;width:68px;height:68px;margin:0 auto 25px;display:grid}.win-emblem .icon{stroke-width:1.3px;width:35px;height:35px}.win-score{justify-content:center;align-items:center;gap:33px;margin-top:28px;display:flex}.win-score>div{flex-direction:column;gap:7px;display:flex}.win-score strong{letter-spacing:-1px;font-size:31px;font-weight:450}.win-score-divider{background:var(--line);width:1px;height:42px}.win-award{color:#a58c56;justify-content:center;align-items:center;gap:7px;margin-top:22px;font-size:10px;display:flex}.win-award .icon{width:15px;height:15px}.fallback{z-index:2;position:absolute;inset:45px 90px 85px}.fallback-note{color:#7c8b6c;margin-bottom:13px;font-size:10px;line-height:1.7}.flat-board{aspect-ratio:1;background:#c4cca9;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:7px;max-width:320px;margin:auto;padding:10px;display:grid;box-shadow:0 12px #bba180,0 18px 25px #76855e24}.flat-cell{background:#dbe1c6;border-bottom:3px solid #c5ceab;border-radius:6px;place-items:center;display:grid;position:relative}.flat-cell.rock{color:#85916e;background:#a5b28f;font-size:35px}.flat-goal{opacity:.6;border:2px solid;border-radius:50%;place-items:center;display:grid;position:absolute;inset:15%}.flat-stone{color:#fff2cf;background:#e1ae58;border-radius:7px;place-items:center;display:grid;position:absolute;inset:16%;box-shadow:0 4px #b78c46}.flat-stone.stone-1{background:#83bcb0;box-shadow:0 4px #6c9d8f}.flat-stone.stone-2{background:#b2a4d1;box-shadow:0 4px #9788b8}.flat-robot{color:#e3aa67;background:#faf3d8;border-radius:9px;width:40px;height:42px;line-height:20px;position:relative;box-shadow:0 4px #c4c2a4}.flat-robot>span{color:#f4f7d9;background:#365649;border-radius:3px;width:29px;height:14px;margin:auto;font-size:20px;line-height:11px;display:block}@keyframes appear{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}}@layer responsive{@media (min-width:1500px){.shell{max-width:1260px}.header{height:145px}.game{grid-template-columns:340px minmax(0,1fr);column-gap:65px;padding-top:60px}.play-area{height:560px}h1{max-width:340px;font-size:61px}}@media (max-width:1100px){.shell{width:calc(100% - 72px)}.game{grid-template-columns:270px minmax(0,1fr);column-gap:24px;padding-top:35px}.play-area{height:475px}h1{font-size:47px}.level-description{max-width:240px;font-size:12px}.world{inset:0 -30px 15px}.direction-pad{width:87px;height:87px;bottom:59px;right:0}.direction{width:29px;height:29px}.direction-up{left:29px}.direction-right{top:29px}.direction-down{left:29px}.direction-left{top:29px}.direction-center{top:34px;left:34px}.level-connector{margin:0 5px}.tools{gap:17px}.keyboard-note{gap:7px;font-size:9px}}@media (max-width:760px){.shell{width:calc(100% - 40px);max-width:540px}.header{gap:15px;height:86px}.brand{gap:10px;font-size:26px}.header-caption{display:none}.header-actions{gap:4px}.help-button{gap:6px;padding-left:5px;font-size:10px}.help-button .icon{width:16px;height:16px}.icon-button{width:34px;height:34px}.icon-button .icon{width:19px;height:19px}.game{flex-direction:column;padding-top:25px;display:flex}.story{min-height:157px;padding-top:0;padding-right:90px}.eyebrow{font-size:9px}.level-kicker{margin-top:24px;font-size:8px}h1{letter-spacing:-1.5px;max-width:none;margin:10px 0 12px;font-size:38px;line-height:1.05}.level-description{max-width:320px;font-size:11px;line-height:1.8}.level-stats{flex-direction:column;gap:14px;margin-top:0;position:absolute;top:42px;right:0}.stat{text-align:right;gap:4px}.stat-par{border:0;padding:0}.stat-label{font-size:7px}.stat-value{font-size:24px}.stat-unit{font-size:9px}.stone-legend{gap:6px;margin-top:14px}.legend-stone{gap:4px;padding:3px 7px;font-size:9px}.legend-stone>.icon{width:12px;height:12px}.story-footer{display:none}.play-area{height:354px;margin:7px -10px 5px}.world{inset:-10px -6px 25px}.world-label{gap:5px;font-size:6px;top:8px;left:12px}.world-dimension{margin-left:0;padding:3px 5px}.board-caption{gap:8px;font-size:6px;bottom:25px}.caption-line{width:17px}.loop-note{font-size:8px;bottom:6px}.direction-pad{width:105px;height:105px;bottom:53px;right:12px}.direction{width:35px;height:35px}.direction-up{left:35px}.direction-right{top:35px}.direction-down{left:35px}.direction-left{top:35px}.direction-center{top:42px;left:42px}.play-toolbar{padding-top:16px}.tools{justify-content:space-between;gap:8px;width:100%}.tool-button{gap:6px;font-size:10px}.tool-button kbd,.keyboard-note{display:none}.tool-button .icon{width:16px;height:16px}.tool-divider{margin:0 3px}.guidance{min-height:62px;padding:13px 3px;font-size:10px;line-height:1.7}.guidance .icon{width:14px;height:14px}.footer{padding-top:18px;padding-bottom:18px}.journey-heading{font-size:9px}#progress-label{font-size:8px}.level-nav{gap:7px;padding:20px 0 24px}.level-dot{border-width:1px;flex:0 26px;width:23px;height:23px;font-size:7px}.level-dot .icon{width:10px;height:10px}.level-connector{display:none}.footer-bottom{gap:18px;font-size:8px;line-height:1.8}.made-with{text-align:right;gap:6px}.footer-sun .icon{width:13px;height:13px}.fallback{inset:40px 55px 60px}.fallback-note{font-size:8px;line-height:1.5}.flat-board{max-width:230px}.modal{border-radius:16px;padding:35px 27px}h2{font-size:38px}.win-emblem{margin-bottom:20px}}@media (max-width:370px){.shell{width:calc(100% - 32px)}.brand{font-size:23px}.help-button span{display:none}h1{font-size:34px}.play-area{height:320px}.direction-pad{bottom:43px;right:8px}.level-nav{gap:4px}.level-dot{width:20px;height:20px;font-size:6px}.footer-bottom{font-size:7px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}}
