:root{--screen-w: 390px;--screen-h: 844px;--screen-radius: 18px;--viewport-h: 100svh;--app-h: var(--viewport-h);--main-ui-scale: 1;--safe-x: 24px;--safe-top: max(26px, env(safe-area-inset-top));--safe-bottom: max(22px, env(safe-area-inset-bottom));--header-h: 58px;--topbar-h: 64px;--icon: 44px;--button-w: 252px;--button-h: 56px;--button-small-h: 48px;--panel-radius: 8px;--sheet-w: 318px;--sheet-pad: 22px;--board-w: 300px;--board-h: 410px;--palette-w: 342px;--palette-h: 78px;--chip: 48px;--level: 56px;--ink: #4f493e;--muted: #867d6c;--line: rgba(74, 69, 59, .2);--paper: #f4ecdf;--paper-2: #eee3d1;--paper-3: #e4d8c3;--sage: #8faa93;--ochre: #d9ae48;--coral: #cb704b;--blue: #346e91;--locked: #d8cfbf;--shadow: 0 12px 28px rgba(72, 58, 38, .16);--shadow-soft: 0 6px 16px rgba(72, 58, 38, .13);--inset-line: inset 0 0 0 1px rgba(92, 77, 55, .12);--font: Inter, "Segoe UI", Arial, sans-serif;color:var(--ink);background:#d9d0c1;font-family:var(--font);font-synthesis:none;text-rendering:optimizeLegibility}@supports (height: 100dvh){:root{--viewport-h: 100dvh}}*{box-sizing:border-box}html,body,#app{min-width:320px;width:100%;height:var(--app-h);margin:0;overflow:hidden;overscroll-behavior:none;-webkit-text-size-adjust:100%}html[data-screen=main],html[data-screen=main] body,html[data-screen=main] #app{min-width:0}body{position:fixed;inset:0;min-height:100%;overscroll-behavior:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}canvas,img,svg,button,[role=button]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}button{border:0;font:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}#backdrop{position:fixed;inset:0;z-index:0;display:block;width:100vw;height:var(--app-h);pointer-events:none;opacity:.28}#app{min-height:0}.paper-app{position:relative;z-index:1;display:grid;width:100vw;height:var(--app-h);min-height:0;overflow:hidden;place-items:center;padding:0;overscroll-behavior:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 22% 18%,rgba(255,255,255,.18),transparent 22%),radial-gradient(circle at 78% 7%,rgba(190,155,95,.08),transparent 18%)}.screen{position:relative;width:var(--screen-w);height:min(var(--screen-h),var(--app-h));max-width:100vw;max-height:var(--app-h);overflow:hidden;border-radius:var(--screen-radius);background:radial-gradient(circle at 22% 18%,rgba(255,255,255,.42),transparent 22%),radial-gradient(circle at 78% 7%,rgba(190,155,95,.1),transparent 18%),linear-gradient(135deg,rgba(255,255,255,.2),transparent 36%),var(--paper);box-shadow:0 22px 48px #352b1d3d;isolation:isolate}.screen:before,.paper-sheet:before,.paper-button:before,.level-card:before{position:absolute;inset:0;pointer-events:none;content:"";background-image:radial-gradient(circle,rgba(92,77,55,.08) 0 .7px,transparent .8px),radial-gradient(circle,rgba(255,255,255,.36) 0 .7px,transparent .8px);background-position:0 0,8px 10px;background-size:18px 18px,22px 22px;opacity:.42;mix-blend-mode:multiply}.screen>*{position:relative}.brand-bar,.game-topbar{position:absolute;z-index:4;left:var(--safe-x);right:var(--safe-x);top:var(--safe-top);display:grid;align-items:center}.brand-bar{height:var(--header-h);grid-template-columns:1fr auto}.game-topbar{height:var(--topbar-h);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px}.game-topbar-left{display:flex;min-width:0;align-items:center;justify-self:start;gap:12px}.game-brand{display:none;min-width:0;align-items:center;gap:11px}.game-brand .brand-symbol{width:42px;height:36px}.game-brand>span:last-child{overflow:hidden;color:var(--ink);font-size:16px;font-weight:600;line-height:1.12;text-overflow:ellipsis;white-space:nowrap}.gameplay-brand{position:absolute;z-index:5;left:var(--safe-x);top:var(--safe-top);height:var(--header-h);align-items:center}.brand-lockup{display:flex;align-items:center;min-width:0;gap:11px}.brand-lockup>span:last-child{font-size:16px;font-weight:600;line-height:1.12}.brand-symbol{position:relative;width:42px;height:36px;flex:0 0 auto}.brand-symbol:before,.brand-symbol:after{position:absolute;width:30px;height:30px;content:"";clip-path:polygon(50% 0,100% 100%,0 100%);box-shadow:inset 0 0 0 1px #433b3024}.brand-symbol:before{left:0;top:7px;background:var(--sage);transform:rotate(-18deg)}.brand-symbol:after{right:1px;top:1px;background:var(--coral);transform:rotate(18deg)}.top-actions{display:flex;align-items:center;gap:12px}.chip-button,.progress-chip,.move-counter,.status-tag{position:relative;display:inline-flex;align-items:center;justify-content:center;height:36px;min-width:62px;padding:0 12px;border-radius:var(--panel-radius);background:#f8f1e6eb;color:var(--ink);box-shadow:var(--inset-line),var(--shadow-soft);font-size:14px}.icon-button{display:inline-flex;width:var(--icon);height:var(--icon);align-items:center;justify-content:center;border-radius:50%;background:#f6eee1f5;color:var(--ink);box-shadow:var(--inset-line),var(--shadow-soft);cursor:pointer;font:650 22px/1 var(--font)}.icon-button--hint{background:color-mix(in srgb,var(--ochre) 30%,var(--paper) 70%)}.icon-pair{display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:12px}.game-action-pair{gap:clamp(6px,1.8vw,9px)}.game-action-icon{display:block;width:22px;height:22px;pointer-events:none}.game-hint-button{position:relative;display:inline-flex;width:min(132px,100%);height:var(--icon);align-items:center;justify-content:center;justify-self:start;gap:7px;overflow:hidden;padding:0 12px 0 10px;border-radius:999px;background:color-mix(in srgb,var(--ochre) 78%,var(--paper) 22%);color:#fffaf0;box-shadow:inset 0 0 0 1px #5c4d371a,0 8px 18px #89621f38;cursor:pointer;font:700 14px/1 var(--font);white-space:nowrap;animation:hint-button-breathe 1.8s ease-in-out infinite}.game-hint-button:before{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 0 34%,rgba(255,250,241,.2) 44%,transparent 54% 100%);content:"";transform:translate(-105%);animation:hint-button-sheen 2.6s ease-in-out infinite}.game-hint-button>*{position:relative;z-index:1}.game-hint-icon{display:block;width:22px;height:22px;flex:0 0 22px}.level-title{display:grid;min-width:0;justify-self:center;justify-items:center;text-align:center}.level-title span{max-width:100%;overflow:hidden;font-size:18px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.level-title small{margin-top:3px;color:var(--muted);font-size:12px}.paper-button{position:relative;display:inline-flex;width:var(--button-w);height:var(--button-h);align-items:center;justify-content:center;overflow:hidden;border-radius:var(--panel-radius);background:#f7efe2fa;color:var(--ink);box-shadow:var(--inset-line),var(--shadow-soft);cursor:pointer;font:600 17px/1 var(--font);letter-spacing:0}.paper-button--primary{background:color-mix(in srgb,var(--sage) 54%,var(--paper) 46%);color:#fffaf0}.paper-button--secondary{height:var(--button-small-h);background:#f7efe2e6;color:#5f574c}.paper-button--danger{background:color-mix(in srgb,var(--coral) 58%,var(--paper) 42%);color:#fff8ee}.rewarded-video-icon{display:block;width:24px;height:24px;flex:0 0 24px;margin-right:8px;pointer-events:none}.paper-button:hover,.icon-button:hover,.chip-button:hover,.palette-chip:hover,.level-card:hover,.language-row:hover,.setting-row:hover,.audio-toggle-button:hover,.game-hint-button:hover{transform:translateY(-1px);filter:brightness(1.02)}.paper-button:disabled,.icon-button:disabled,.chip-button:disabled,.palette-chip:disabled{cursor:default;opacity:.56;transform:none;filter:none}.paper-button:focus-visible,.icon-button:focus-visible,.chip-button:focus-visible,.palette-chip:focus-visible,.level-card:focus-visible,.language-row:focus-visible,.setting-row:focus-visible,.audio-toggle-button:focus-visible,.game-hint-button:focus-visible{outline:3px solid rgba(52,110,145,.34);outline-offset:3px}.screen--loading{display:grid;align-content:center;justify-items:center;gap:15px;padding:var(--safe-top) var(--safe-x) 148px}.screen--loading .paper-mark{width:116px;height:104px}.screen--loading h1{width:250px;margin:0;font-size:30px;font-weight:650;line-height:1.1;text-align:center}.loading-dots{display:flex;gap:12px;margin-top:4px}.loading-dots i{width:12px;height:12px;border-radius:50%;background:var(--paper-3);animation:loading-dot-fold 1.6s ease-in-out infinite}.loading-dots i:nth-child(1){animation-delay:0ms;background:var(--coral)}.loading-dots i:nth-child(2){animation-delay:.12s}.loading-dots i:nth-child(3){animation-delay:.24s}.loading-dots i:nth-child(4){animation-delay:.36s}.loading-dots i:nth-child(5){animation-delay:.48s}.screen--loading p{margin:0;color:var(--muted);font-size:14px;text-align:center}.paper-mark{position:relative}.paper-mark span{position:absolute;width:68px;height:68px;clip-path:polygon(50% 0,100% 100%,0 100%);box-shadow:inset 0 0 0 1px #433b3024,var(--shadow-soft)}.paper-mark span:nth-child(1){left:6px;top:40px;background:var(--sage);transform:rotate(-24deg)}.paper-mark span:nth-child(2){left:62px;top:24px;background:var(--ochre);transform:rotate(18deg)}.paper-mark span:nth-child(3){left:42px;top:10px;background:var(--blue);transform:rotate(2deg)}.paper-mark--folding{perspective:460px;transform-style:preserve-3d}.paper-mark--folding span{backface-visibility:hidden;transform-style:preserve-3d;will-change:transform,filter,opacity}.paper-mark--folding span:nth-child(1){animation:fold-paper-left 1.6s cubic-bezier(.62,0,.22,1) infinite;transform-origin:88% 74%}.paper-mark--folding span:nth-child(2){animation:fold-paper-right 1.6s cubic-bezier(.62,0,.22,1) infinite;transform-origin:16% 76%}.paper-mark--folding span:nth-child(3){animation:fold-paper-top 1.6s cubic-bezier(.62,0,.22,1) infinite;transform-origin:52% 94%}@keyframes fold-paper-left{0%,to{opacity:.78;filter:brightness(.94);transform:translate3d(-18px,10px,0) rotate(-48deg) rotateY(68deg) scale(.84)}42%,70%{opacity:1;filter:brightness(1);transform:translateZ(0) rotate(-24deg) rotateY(0) scale(1)}}@keyframes fold-paper-right{0%,12%,to{opacity:.78;filter:brightness(.97);transform:translate3d(18px,9px,0) rotate(44deg) rotateY(-66deg) scale(.86)}48%,72%{opacity:1;filter:brightness(1.02);transform:translateZ(0) rotate(18deg) rotateY(0) scale(1)}}@keyframes fold-paper-top{0%,22%,to{opacity:.82;filter:brightness(.92);transform:translate3d(0,-14px,0) rotate(2deg) rotateX(62deg) scale(.82)}54%,78%{opacity:1;filter:brightness(1.03);transform:translateZ(0) rotate(2deg) rotateX(0) scale(1)}}@keyframes loading-dot-fold{0%,to{opacity:.36;transform:scale(.72)}42%,68%{opacity:1;transform:scale(1)}}.screen--main{display:block}.main-scaled-ui{position:absolute;z-index:3;top:0;left:50%;width:var(--screen-w);height:608px;transform:translate(-50%) scale(var(--main-ui-scale));transform-origin:top center}.main-stage{position:absolute;top:170px;left:50%;width:180px;height:126px;transform:translate(-50%)}.paper-mark--hero{width:180px;height:126px}.paper-mark--hero span{width:92px;height:86px}.paper-mark--hero span:nth-child(1){left:28px;top:38px}.paper-mark--hero span:nth-child(2){left:82px;top:22px}.paper-mark--hero span:nth-child(3){left:64px;top:54px;width:74px;height:72px}.main-actions{position:absolute;z-index:3;top:358px;left:50%;display:grid;justify-items:center;gap:14px;transform:translate(-50%)}.setting-row{position:relative;display:flex;width:var(--button-w);height:52px;align-items:center;justify-content:space-between;padding:0 14px;border-radius:var(--panel-radius);background:#f7efe2db;box-shadow:var(--inset-line),var(--shadow-soft);color:var(--ink);cursor:pointer;font-size:15px}.setting-row:disabled{cursor:default;opacity:.74;transform:none;filter:none}.audio-toggle-row{display:grid;width:var(--button-w);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.audio-toggle-button{position:relative;display:flex;min-width:0;height:52px;align-items:center;justify-content:space-between;gap:8px;padding:0 9px 0 12px;border-radius:var(--panel-radius);background:#f7efe2db;box-shadow:var(--inset-line),var(--shadow-soft);color:var(--ink);cursor:pointer}.audio-icon{display:block;width:29px;height:29px;flex:0 0 29px;color:currentColor;opacity:.92}.audio-toggle-button .toggle{width:42px;height:24px;flex:0 0 auto;padding:3px}.audio-toggle-button .toggle:before{width:18px;height:18px}.audio-toggle-button .toggle--on:before{transform:translate(18px)}.toggle{width:50px;height:28px;padding:3px;border-radius:999px;background:var(--locked);box-shadow:inset 0 0 0 1px #433b302e}.toggle:before{display:block;width:22px;height:22px;border-radius:50%;background:var(--paper);box-shadow:0 2px 5px #352b1d38;content:""}.toggle--on{background:var(--sage)}.toggle--on:before{transform:translate(22px)}.progress-strip{display:none}.ad-purchase-button{position:relative;display:inline-flex;width:var(--button-w);min-height:52px;align-items:center;gap:8px;justify-content:center;overflow:hidden;padding:7px 12px;border-radius:var(--panel-radius);background:#fffaf1d6;box-shadow:var(--inset-line),var(--shadow-soft);color:var(--ink);cursor:pointer;font:600 15px/1.1 var(--font);text-align:center}.ad-purchase-price{display:inline-flex;min-width:0;align-items:center;gap:4px;color:var(--coral);font-size:13px;white-space:nowrap}.ad-purchase-price img{display:block;width:16px;height:16px;object-fit:contain}.ad-purchase-button:hover{transform:translateY(-1px);filter:brightness(1.02)}.ad-purchase-button:disabled{cursor:default;opacity:.74;transform:none;filter:none}.ad-purchase-button:focus-visible{outline:3px solid rgba(52,110,145,.34);outline-offset:3px}.main-status{width:var(--button-w);margin:0;color:color-mix(in srgb,var(--coral) 68%,var(--ink) 32%);font-size:12px;line-height:1.2;text-align:center}.paper-landscape{position:absolute;z-index:1;right:0;bottom:0;left:0;height:148px;overflow:hidden}.hill,.water,.boat{position:absolute;filter:drop-shadow(0 -1px 0 rgba(92,77,55,.08))}.hill{bottom:54px;height:92px;clip-path:polygon(0 100%,50% 0,100% 100%)}.hill--left{left:-18px;width:174px;background:var(--sage)}.hill--mid{left:102px;width:188px;background:#d8cbb6;opacity:.84}.hill--right{right:-28px;width:198px;background:var(--coral)}.water{right:0;bottom:0;left:0;height:58px;background:repeating-linear-gradient(0deg,rgba(255,255,255,.16) 0 1px,transparent 1px 10px),color-mix(in srgb,var(--blue) 58%,var(--paper) 42%)}.boat{bottom:48px;left:166px;width:58px;height:40px;background:var(--paper-2);clip-path:polygon(50% 0,62% 52%,100% 56%,74% 100%,24% 100%,0 56%,38% 52%)}.screen--levels{display:block}.levels-title{position:absolute;z-index:4;top:112px;right:var(--safe-x);left:var(--safe-x);display:flex;align-items:flex-end;justify-content:space-between}.levels-title h2{margin:0;font-size:31px;font-weight:650;letter-spacing:0}.levels-title h2:after{display:block;width:52px;height:3px;margin-top:10px;border-radius:4px;background:var(--coral);content:""}.levels-layout{position:static}.level-route{position:absolute;z-index:3;inset:184px 42px 28px 30px;display:grid;grid-template-columns:repeat(4,var(--level));grid-auto-rows:var(--level);align-content:start;justify-content:center;gap:16px 18px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding-top:4px;padding-bottom:62px;scrollbar-width:none}.level-route::-webkit-scrollbar{width:0;height:0}.level-card{position:relative;display:inline-flex;width:var(--level);height:var(--level);align-items:center;justify-content:center;overflow:hidden;border-radius:var(--panel-radius);background:#f8f1e6eb;color:var(--ink);box-shadow:var(--inset-line),var(--shadow-soft);cursor:pointer;font-size:20px;font-weight:650}.level-card span{position:relative;z-index:1}.level-card--done{background:var(--sage);color:#fffaf0}.level-card--current{background:#faf4eaf2;color:var(--coral);box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--coral) 72%,var(--paper) 28%),var(--shadow-soft)}.level-card:disabled{background:var(--locked);color:#564f4480;cursor:default}.scroll-rail{position:absolute;z-index:4;top:184px;right:18px;width:18px;bottom:28px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.scroll-rail:before{position:absolute;top:0;bottom:0;left:8px;width:2px;border-radius:4px;background:#62584938;content:""}.scroll-rail span{position:absolute;top:calc(100% * var(--thumb-top, 0));left:4px;width:10px;height:calc(100% * var(--thumb-height, 1));border-radius:999px;background:var(--coral)}.scroll-rail:active{cursor:grabbing}.scroll-rail:focus-visible{outline:3px solid color-mix(in srgb,var(--coral) 72%,white 28%);outline-offset:4px}.screen--gameplay{--topbar-h: clamp(52px, 8.8svh, 64px);--icon: clamp(38px, 6.4svh, 44px);--palette-h: clamp(58px, 9.2svh, 78px);--chip: clamp(30px, 6.4svh, 48px);--game-pad-x: clamp(14px, 5.8vw, 24px);--game-pad-top: max(12px, env(safe-area-inset-top));--game-pad-bottom: max(12px, env(safe-area-inset-bottom));--game-gap: clamp(8px, 1.8svh, 16px);display:grid;grid-template-areas:"topbar" "board" "controls";grid-template-rows:var(--topbar-h) minmax(0,1fr) var(--palette-h);gap:var(--game-gap);align-items:stretch;justify-items:center;padding:var(--game-pad-top) var(--game-pad-x) var(--game-pad-bottom)}.board-shell{position:relative;grid-area:board;display:grid;width:min(100%,430px);max-width:100%;height:auto;max-height:100%;min-height:0;aspect-ratio:264 / 360;justify-self:center;align-self:center;overflow:hidden;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;place-items:stretch;border-radius:0;background:transparent;box-shadow:none}.tutorial-prompt{position:absolute;z-index:6;left:50%;display:inline-flex;max-width:min(318px,calc(100% - var(--game-pad-x) * 2));align-items:center;gap:9px;padding:9px 12px;border-radius:var(--panel-radius);background:#fffaf1f0;box-shadow:var(--inset-line),0 10px 24px #352b1d29;color:var(--ink);pointer-events:none;transform:translate(-50%)}.tutorial-prompt--area{top:calc(var(--game-pad-top) + var(--topbar-h) + 4px)}.tutorial-prompt--color{bottom:calc(var(--game-pad-bottom) + var(--palette-h) + var(--game-gap) - 20px)}.tutorial-prompt--color:after{position:absolute;bottom:-6px;left:45%;width:12px;height:12px;background:#fffaf1f0;box-shadow:1px 1px #5c4d371a;content:"";transform:rotate(45deg)}.tutorial-prompt span{display:inline-grid;width:24px;height:24px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--coral);color:#fffaf0;font-size:14px;font-weight:700;line-height:1}.tutorial-prompt strong{min-width:0;font-size:15px;font-weight:650;line-height:1.15}.screen--gameplay .game-topbar{position:relative;top:auto;right:auto;left:auto;grid-area:topbar;width:100%;height:var(--topbar-h);grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(6px,2vw,12px)}.screen--gameplay .level-title{display:none}.pixi-board-host,.pixi-board-canvas{width:100%!important;height:100%!important;min-width:0;min-height:0;max-width:100%;max-height:100%}.pixi-board-host{position:relative;overflow:hidden;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pixi-board-canvas{position:absolute;inset:0;display:block;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.game-bottom{position:relative;z-index:4;display:grid;grid-area:controls;width:min(100%,368px);height:var(--palette-h);grid-template-columns:minmax(0,1fr) clamp(64px,17vw,78px);align-items:stretch;justify-items:stretch;gap:clamp(8px,2vw,12px)}.palette-row{position:relative;display:flex;width:100%;min-width:0;height:100%;align-items:center;justify-content:center;gap:clamp(5px,2vw,12px);padding:0 clamp(8px,3vw,18px);border-radius:var(--panel-radius);background:#f8f1e6f5;box-shadow:var(--inset-line),var(--shadow-soft)}.palette-row--count-5{--chip: clamp(31px, 6.2svh, 44px);gap:clamp(5px,1.6vw,10px)}.palette-row--count-6{--chip: clamp(27px, 5.8svh, 42px);gap:clamp(3px,1.2vw,8px);padding-right:clamp(6px,2vw,14px);padding-left:clamp(6px,2vw,14px)}.palette-chip{position:relative;--selected-dot-y: 64%;width:var(--chip);height:var(--chip);flex:0 0 auto;box-shadow:var(--inset-line),var(--shadow-soft);clip-path:polygon(50% 4%,96% 94%,4% 94%);cursor:pointer}.palette-chip:nth-child(2n){--selected-dot-y: 36%;clip-path:polygon(4% 6%,96% 6%,50% 96%)}.palette-chip--selected{box-shadow:var(--inset-line);filter:saturate(1.08) drop-shadow(0 0 0 rgba(255,250,241,.92)) drop-shadow(0 0 5px rgba(255,250,241,.92)) drop-shadow(0 8px 12px rgba(61,48,33,.24));transform:scale(1.05)}.palette-chip--selected:after{position:absolute;top:var(--selected-dot-y);left:50%;width:clamp(8px,1.8svh,13px);height:clamp(8px,1.8svh,13px);border-radius:999px;background:#fffaf1;box-shadow:0 0 0 2px #4f493e2e,0 2px 5px #3d302147;content:"";transform:translate(-50%,-50%)}.palette-chip--tutorial{animation:tutorial-chip-pulse .98s ease-in-out infinite;filter:saturate(1.08) drop-shadow(0 0 0 rgba(255,250,241,.96)) drop-shadow(0 0 9px rgba(255,250,241,.96)) drop-shadow(0 10px 14px rgba(61,48,33,.24))}.palette-chip--hint{animation:hint-chip-pulse 1.12s ease-in-out infinite;filter:saturate(1.16) drop-shadow(0 0 0 rgba(255,250,241,.96)) drop-shadow(0 0 10px rgba(255,250,241,.96)) drop-shadow(0 11px 15px rgba(61,48,33,.26))}.hint-gesture-layer,.tutorial-gesture-layer{position:absolute;inset:0;z-index:8;overflow:hidden;pointer-events:none}.tutorial-tap-ping{position:absolute;left:var(--tutorial-target-x);top:var(--tutorial-target-y);width:44px;height:44px;border:3px solid rgba(255,250,241,.96);border-radius:999px;box-shadow:0 0 0 1px #4f493e29,0 0 14px #fffaf1ad;opacity:0;transform:translate(-50%,-50%) scale(.4);animation:tutorial-tap-ping 1.65s ease-out infinite}.tutorial-finger{position:absolute;left:var(--tutorial-target-x);top:var(--tutorial-target-y);width:40px;height:48px;filter:drop-shadow(0 9px 11px rgba(53,43,29,.22));opacity:1;transform:translate(-45%,-8%) scale(.88) rotate(-10deg);transform-origin:45% 8%;animation:tutorial-finger-tap 1.65s cubic-bezier(.2,.86,.28,1) infinite}.tutorial-finger svg{display:block;width:100%;height:100%}.hint-target-ping{position:absolute;left:var(--hint-end-x);top:var(--hint-end-y);width:58px;height:58px;border:3px solid rgba(255,250,241,.96);border-radius:999px;box-shadow:0 0 0 1px #4f493e2e,0 0 18px #fffaf1b8;opacity:0;transform:translate(-50%,-50%) scale(.38);animation:hint-target-ping 2.3s ease-out both}.hint-finger{position:absolute;left:var(--hint-start-x);top:var(--hint-start-y);width:42px;height:50px;filter:drop-shadow(0 9px 11px rgba(53,43,29,.24));opacity:0;transform:translate(-45%,-8%) scale(.8) rotate(-14deg);transform-origin:45% 8%;animation:hint-finger-flight 2.3s cubic-bezier(.22,.82,.24,1) both}.hint-finger svg{display:block;width:100%;height:100%}.move-counter{position:relative;width:100%;height:100%;min-width:0;flex-direction:column;gap:2px;padding:4px 8px;font-size:19px}.move-counter small{color:var(--muted);font-size:12px;line-height:1}@keyframes tutorial-chip-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.13)}}@keyframes hint-chip-pulse{0%,to{transform:scale(1.04)}50%{transform:scale(1.18)}}@keyframes tutorial-finger-tap{0%{opacity:.9;transform:translate(-45%,-8%) scale(.92) rotate(-10deg)}16%,36%{opacity:1;transform:translate(-45%,-8%) scale(1.04) rotate(-8deg)}48%{opacity:1;transform:translate(-45%,-2%) scale(.9) rotate(-8deg)}66%{opacity:1;transform:translate(-45%,-8%) scale(1) rotate(-8deg)}to{opacity:.9;transform:translate(-45%,-8%) scale(.92) rotate(-10deg)}}@keyframes tutorial-tap-ping{0%,38%{opacity:0;transform:translate(-50%,-50%) scale(.4)}50%{opacity:1;transform:translate(-50%,-50%) scale(.72)}to{opacity:0;transform:translate(-50%,-50%) scale(1.55)}}@keyframes hint-finger-flight{0%{left:var(--hint-start-x);top:var(--hint-start-y);opacity:0;transform:translate(-45%,-8%) scale(.78) rotate(-14deg)}12%,32%{left:var(--hint-start-x);top:var(--hint-start-y);opacity:1;transform:translate(-45%,-8%) scale(1.06) rotate(-10deg)}72%{left:var(--hint-end-x);top:var(--hint-end-y);opacity:1;transform:translate(-45%,-8%) scale(1) rotate(3deg)}84%{left:var(--hint-end-x);top:var(--hint-end-y);opacity:1;transform:translate(-45%,-2%) scale(.9) rotate(3deg)}to{left:var(--hint-end-x);top:var(--hint-end-y);opacity:0;transform:translate(-45%,-8%) scale(.82) rotate(3deg)}}@keyframes hint-target-ping{0%,56%{opacity:0;transform:translate(-50%,-50%) scale(.38)}68%{opacity:1;transform:translate(-50%,-50%) scale(.72)}to{opacity:0;transform:translate(-50%,-50%) scale(1.72)}}@keyframes hint-button-breathe{0%,to{box-shadow:inset 0 0 0 1px #5c4d371a,0 8px 18px #89621f38}50%{box-shadow:inset 0 0 0 1px #5c4d371a,0 0 0 4px #d9ae4829,0 10px 22px #89621f47}}@keyframes hint-button-sheen{0%,42%{transform:translate(-105%)}70%,to{transform:translate(105%)}}.paper-veil{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 28% 18%,rgba(246,238,225,.2),transparent 20%),#4c443957;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.paper-sheet{position:relative;display:grid;width:min(var(--sheet-w),calc(100vw - 36px));gap:16px;overflow:hidden;padding:var(--sheet-pad);border-radius:var(--panel-radius);background:#f8f1e6f5;box-shadow:0 18px 34px #352b1d3d}.paper-sheet p{margin:0;color:var(--muted);font-size:15px;line-height:1.35;text-align:center}.sheet-header{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.sheet-header h2{margin:0;font-size:24px;font-weight:600;letter-spacing:0}.sheet-actions{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.paper-sheet>.paper-button{width:100%}.sheet-actions .paper-button{width:100%;min-width:0}.language-list{position:relative;z-index:1;display:grid;gap:10px}.language-row{display:grid;min-height:50px;align-items:center;justify-items:center;padding:0 14px;border-radius:var(--panel-radius);background:#fffaf1bd;box-shadow:var(--inset-line);color:var(--ink);cursor:pointer;font-size:15px;text-align:center}.language-row--active{background:color-mix(in srgb,var(--sage) 28%,var(--paper) 72%);font-weight:650}.hint-preview{position:relative;z-index:1;display:grid;min-height:54px;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--panel-radius);background:#fffaf1bd;box-shadow:var(--inset-line)}.hint-balance,.hint-status{position:relative;z-index:1}.hint-status{color:color-mix(in srgb,var(--coral) 72%,var(--ink) 28%)!important}.hint-preview span{width:38px;height:38px;clip-path:polygon(50% 4%,96% 94%,4% 94%)}.hint-preview small{color:var(--muted)}.paper-veil--ad-preview{z-index:20;background:radial-gradient(circle at 26% 16%,rgba(255,250,241,.18),transparent 22%),#2d2a25b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ad-preview-sheet{position:relative;display:grid;width:min(520px,calc(100vw - 36px));min-height:min(560px,calc(var(--app-h) - 36px));align-content:center;justify-items:center;gap:18px;overflow:hidden;padding:28px;border-radius:var(--panel-radius);background:linear-gradient(150deg,#fffaf1f5,#ece2d2f5),var(--paper);box-shadow:0 24px 58px #1e1b1757;text-align:center}.ad-preview-badge{position:absolute;top:18px;left:18px;display:inline-flex;min-height:30px;align-items:center;padding:0 10px;border-radius:var(--panel-radius);background:#fffaf1c7;box-shadow:var(--inset-line);color:var(--muted);font-size:13px}.ad-preview-frame{display:grid;width:min(320px,78vw);height:min(210px,34svh);grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:20px;border-radius:var(--panel-radius);background:repeating-linear-gradient(135deg,#5f86a61f 0 10px,#8faa9329 10px 20px),#fffaf1bd;box-shadow:var(--inset-line),var(--shadow-soft)}.ad-preview-frame i{height:2px;border-radius:999px;background:#4f493e33}.ad-preview-frame strong{display:inline-grid;width:78px;height:78px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--blue) 52%,var(--paper) 48%);color:#fffaf0;font-size:25px;letter-spacing:0}.ad-preview-sheet h2{margin:0;font-size:28px;font-weight:650;letter-spacing:0}.ad-preview-sheet p{max-width:360px;margin:0;color:var(--muted);font-size:15px;line-height:1.42}.ad-preview-sheet .paper-button{margin-top:8px}@media(max-width:430px){.paper-app{place-items:start center;padding:0}.screen{width:100vw;min-width:320px;height:var(--app-h);min-height:0;border-radius:0;box-shadow:none}.screen--gameplay{--icon: clamp(36px, 9.8vw, 40px)}.screen--gameplay .game-topbar,.game-action-pair{gap:6px}.game-action-icon{width:20px;height:20px}.game-hint-button{width:116px;gap:6px;padding:0 10px 0 9px;font-size:13px}.game-hint-icon{width:20px;height:20px;flex-basis:20px}}@media(max-width:319px){.paper-app--main .screen--main{width:100vw;min-width:0}.paper-app--main .brand-bar{left:50%;right:auto;width:var(--screen-w);transform:translate(-50%) scale(var(--main-ui-scale));transform-origin:top center}}@media(max-width:360px){.screen--gameplay .level-title{display:none}}@media(max-height:720px){.screen--loading{gap:10px;padding-bottom:104px}.screen--loading .paper-mark{transform:scale(.84)}.screen--loading h1{margin-top:-8px;font-size:26px}.paper-landscape{height:86px}.hill{bottom:34px;height:56px}.water{height:34px}.boat{bottom:28px;transform:scale(.78);transform-origin:bottom center}}@media(max-height:600px){.paper-landscape{height:70px}.hill{bottom:28px;height:46px}.water{height:28px}.boat{bottom:22px;transform:scale(.68)}}@media(max-height:650px){.screen--main .main-actions{top:322px}}@media(max-height:520px){.screen--main .main-stage{display:none}.screen--main .main-actions{top:150px;gap:10px}}@media(max-height:390px){.screen--main .main-actions{top:122px;gap:8px}.screen--main .audio-toggle-button{height:46px}.screen--main .paper-button{height:50px}.screen--main .ad-purchase-button{min-height:46px;padding-block:6px;font-size:13px}}@media(max-height:320px){.screen--main .main-actions{top:108px}.screen--main .audio-toggle-row{display:none}.screen--main .paper-landscape{height:54px}.screen--main .hill{bottom:22px;height:36px}.screen--main .water{height:22px}.screen--main .boat{bottom:16px;transform:scale(.52)}}@media(max-height:260px){.screen--main .main-actions{top:90px;gap:6px}.screen--main .paper-button{height:44px}.screen--main .ad-purchase-button{min-height:40px;font-size:12px}}@media(max-width:319px)and (min-height:360px){.screen--main .main-stage{display:block}.screen--main .main-actions{top:358px;gap:14px}}@media(max-height:720px)and (orientation:portrait){:root{--safe-top: 18px}.screen--gameplay{--topbar-h: clamp(50px, 8.4svh, 58px);--icon: clamp(36px, 6svh, 42px);--palette-h: clamp(54px, 9svh, 68px);--chip: clamp(28px, 5.8svh, 40px);--game-pad-top: max(10px, env(safe-area-inset-top));--game-pad-bottom: max(10px, env(safe-area-inset-bottom));--game-gap: 8px}}@media(max-height:560px)and (orientation:portrait){.screen--gameplay .board-shell{width:auto;height:100%;align-self:stretch}}@media(max-height:760px)and (orientation:landscape){.paper-app{place-items:start center;padding:0}.screen{width:100vw;height:var(--app-h);min-height:0;border-radius:0}.screen--gameplay{--topbar-h: clamp(48px, 13svh, 58px);--icon: clamp(36px, 10svh, 42px);--game-pad-top: max(10px, env(safe-area-inset-top));--game-pad-bottom: max(10px, env(safe-area-inset-bottom));grid-template-areas:"topbar topbar" "board controls";grid-template-columns:minmax(0,1fr) clamp(68px,10vw,84px);grid-template-rows:var(--topbar-h) minmax(0,1fr);gap:clamp(8px,2svh,14px) clamp(12px,3vw,22px);padding:var(--game-pad-top) clamp(14px,3vw,24px) var(--game-pad-bottom)}.screen--gameplay .game-topbar{grid-column:1 / -1}.screen--gameplay .level-title{display:grid}.screen--gameplay .board-shell{width:auto;height:100%;align-self:stretch}.game-bottom{width:100%;height:100%;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) clamp(48px,13svh,58px);gap:clamp(6px,1.8svh,10px);align-self:stretch}.palette-row{height:100%;flex-direction:column;gap:clamp(3px,1.5svh,7px);padding:clamp(6px,2svh,12px) 0}.palette-row--count-5{--chip: clamp(26px, 8.2svh, 36px)}.palette-row--count-6{--chip: clamp(24px, 7.6svh, 34px);gap:clamp(2px,1.2svh,5px)}.move-counter{height:100%;padding:3px 6px}.tutorial-prompt--color{top:calc(50% + 18px);right:calc(var(--game-pad-x) + clamp(76px,12vw,96px));bottom:auto;left:auto;max-width:220px;transform:none}.tutorial-prompt--color:after{inset:50% -6px auto auto;box-shadow:1px -1px #5c4d371a;transform:translateY(-50%) rotate(45deg)}}@media(min-width:900px)and (min-height:560px)and (orientation:landscape){.paper-app--loading,.paper-app--main,.paper-app--gameplay,.paper-app--levels{padding:0}.paper-app--loading .screen--loading,.paper-app--main .screen--main,.paper-app--levels .screen--levels,.paper-app--gameplay .screen--gameplay{width:min(1120px,100vw);height:min(760px,var(--app-h));min-height:0;border-radius:var(--screen-radius);box-shadow:0 22px 48px #352b1d3d}.paper-app--gameplay .screen--gameplay{--topbar-h: 64px;--icon: 44px;--chip: 48px;grid-template-columns:minmax(84px,1fr) minmax(320px,480px) minmax(84px,1fr);grid-template-rows:var(--topbar-h) minmax(0,1fr);gap:20px 24px;padding:36px clamp(36px,5vw,72px)}.paper-app--gameplay .game-topbar{grid-column:1 / -1;grid-row:1;width:100%;justify-self:stretch}.paper-app--gameplay .level-title{display:grid}.paper-app--gameplay .board-shell{grid-column:2;grid-row:2;width:auto;height:100%;align-self:stretch}.paper-app--gameplay .game-bottom{width:78px;height:min(100%,376px);grid-column:3;grid-row:2;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 60px;gap:16px;align-self:center;justify-self:start}.paper-app--gameplay .palette-row{width:78px;height:100%;flex-direction:column;padding:18px 0;gap:10px}.paper-app--gameplay .palette-row--count-6{--chip: 34px;gap:6px}.paper-app--gameplay .move-counter{width:78px;height:60px}.paper-app--gameplay .tutorial-prompt--color{top:calc(50% + 28px);right:calc(clamp(84px,10vw,120px) + 188px);bottom:auto;left:auto;max-width:242px;transform:none}.paper-app--gameplay .tutorial-prompt--color:after{inset:50% -6px auto auto;box-shadow:1px -1px #5c4d371a;transform:translateY(-50%) rotate(45deg)}.paper-app--gameplay .tutorial-prompt--area{top:116px}.paper-app--levels .levels-title{top:104px}.paper-app--levels .level-route{inset:170px 58px 28px 46px;grid-template-columns:repeat(8,var(--level));gap:16px 18px}.paper-app--levels .scroll-rail{top:170px;bottom:28px;height:auto}}@media(min-width:1180px)and (min-height:700px)and (orientation:landscape){.paper-app--gameplay .game-brand{display:flex}.paper-app--gameplay .game-topbar-left{padding-left:132px}}.paper-app--promo-fullscreen{place-items:stretch;background:var(--paper)}.paper-app--promo-fullscreen .screen--gameplay{--palette-h: clamp(82px, 8.6svh, 104px);--chip: clamp(48px, 6.4svh, 72px);--game-gap: 0px;--game-pad-top: max(6px, env(safe-area-inset-top));--game-pad-bottom: max(8px, env(safe-area-inset-bottom));width:100vw;height:var(--app-h);max-width:none;max-height:none;grid-template-areas:"board" "controls";grid-template-rows:minmax(0,1fr) var(--palette-h);gap:0;padding:var(--game-pad-top) 0 var(--game-pad-bottom);border-radius:0;box-shadow:none}.paper-app--promo-fullscreen .screen--gameplay:before{opacity:.24}.paper-app--promo-fullscreen .gameplay-brand,.paper-app--promo-fullscreen .game-topbar,.paper-app--promo-fullscreen .tutorial-prompt{display:none}.paper-app--promo-fullscreen .board-shell{width:auto;height:min(calc(var(--app-h) - var(--palette-h) - var(--game-pad-top) - var(--game-pad-bottom)),136.36vw);max-width:100vw;max-height:none;align-self:center;justify-self:center}.paper-app--promo-fullscreen .game-bottom{width:min(100vw,520px);height:var(--palette-h);grid-template-columns:minmax(0,1fr) clamp(74px,13vw,96px);gap:clamp(8px,2.2vw,16px);padding:0 clamp(10px,3vw,18px);align-self:end;justify-self:center}.paper-app--promo-fullscreen .palette-row{gap:clamp(8px,2.4vw,18px);padding:0 clamp(12px,3vw,22px)}.paper-app--promo-fullscreen .palette-row--count-5{--chip: clamp(48px, 6.2svh, 68px)}.paper-app--promo-fullscreen .palette-row--count-6{--chip: clamp(42px, 5.7svh, 62px);gap:clamp(6px,1.8vw,14px)}.paper-app--promo-fullscreen .move-counter{font-size:clamp(23px,3.2svh,34px)}.paper-app--promo-fullscreen .move-counter small{font-size:clamp(12px,1.5svh,15px)}.paper-app--promo-slow-finger .hint-target-ping{animation:promo-hint-target-ping 3.9s ease-out both}.paper-app--promo-slow-finger .hint-finger{animation:promo-hint-finger-guide 3.9s cubic-bezier(.22,.78,.26,1) both}@media(orientation:landscape){.paper-app--promo-fullscreen .screen--gameplay{--palette-h: clamp(68px, 13svh, 92px);--chip: clamp(42px, 8.4svh, 58px);grid-template-areas:"board controls";grid-template-columns:minmax(0,1fr) clamp(88px,10vw,118px);grid-template-rows:minmax(0,1fr);padding:0 clamp(8px,1.4vw,16px)}.paper-app--promo-fullscreen .board-shell{width:auto;height:min(100vh,136.36vw);max-width:calc(100vw - clamp(88px,10vw,118px) - 24px)}.paper-app--promo-fullscreen .game-bottom{width:clamp(80px,10vw,112px);height:min(100%,620px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) clamp(60px,11svh,82px);padding:clamp(8px,1.6svh,14px) 0;align-self:center;justify-self:center}.paper-app--promo-fullscreen .palette-row{flex-direction:column;padding:clamp(8px,1.8svh,16px) 0}}@keyframes promo-hint-finger-guide{0%{left:calc(var(--hint-start-x) - 76px);top:calc(var(--hint-start-y) + 58px);opacity:0;transform:translate(-45%,-8%) scale(.78) rotate(-18deg)}12%{left:calc(var(--hint-start-x) - 28px);top:calc(var(--hint-start-y) + 24px);opacity:1;transform:translate(-45%,-8%) scale(.96) rotate(-14deg)}25%{left:var(--hint-start-x);top:var(--hint-start-y);opacity:1;transform:translate(-45%,-8%) scale(1.06) rotate(-10deg)}34%{left:var(--hint-start-x);top:var(--hint-start-y);opacity:1;transform:translate(-45%,-1%) scale(.9) rotate(-10deg)}43%{left:var(--hint-start-x);top:var(--hint-start-y);opacity:1;transform:translate(-45%,-8%) scale(1.02) rotate(-10deg)}72%{left:var(--hint-end-x);top:var(--hint-end-y);opacity:1;transform:translate(-45%,-8%) scale(1) rotate(3deg)}78%{left:var(--hint-end-x);top:var(--hint-end-y);opacity:1;transform:translate(-45%,-1%) scale(.9) rotate(3deg)}to{left:var(--hint-end-x);top:var(--hint-end-y);opacity:1;transform:translate(-45%,-8%) scale(.98) rotate(3deg)}}@keyframes promo-hint-target-ping{0%,68%{opacity:0;transform:translate(-50%,-50%) scale(.38)}78%{opacity:1;transform:translate(-50%,-50%) scale(.72)}to{opacity:0;transform:translate(-50%,-50%) scale(1.68)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
