@font-face{font-family:ManusCC0;src:url(../fonts/ManusCC0-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:ManusCC0;src:url(../fonts/ManusCC0-Medium.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:ManusCC0;src:url(../fonts/ManusCC0-Bold.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:ManusCC0 Sans CJK SC;src:url(../fonts/ManusCC0SansCJKSC-Regular.woff2)format("woff2");font-weight:400;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#303b47;--muted:#60707a;--paper:#f6f0e6;--paper-glass:#f9f5ede6;--line:#4c60682e;--peach:#d99179;--peach-ink:#805143;--teal:#5d9d94;--teal-ink:#3b726a;--teal-strong:#38766e;--lilac:#a68fb9;--fog:#dce8ed;--shadow:0 18px 54px #3548532b;--display:"ManusCC0", "Noto Sans Arabic", "Noto Naskh Arabic", system-ui, sans-serif;--body:"ManusCC0", "Noto Sans Arabic", "Noto Naskh Arabic", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box}html,body{background:var(--fog);width:100%;height:100%;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;margin:0;overflow:hidden}button{font:inherit;color:inherit}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui,.puzzle-ui{pointer-events:none;position:fixed;inset:0}#game-loader{z-index:10;background:var(--fog);color:var(--ink);align-content:center;justify-items:center;gap:14px;padding:24px;transition:opacity .36s,visibility 0s linear .36s;display:grid;position:fixed;inset:0}#game-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}#game-loader img{width:64px;height:64px}#game-loader h1{margin:0;font-size:clamp(22px,4vw,32px);font-weight:700}#game-loader p{color:var(--muted);margin:0;font-size:13px}.game-loader__bar{background:#5d9d942e;border-radius:99px;width:min(280px,68vw);height:5px;position:relative;overflow:hidden}.game-loader__bar span{border-radius:inherit;background:var(--teal);width:38%;animation:1.25s ease-in-out infinite loading-sweep;position:absolute;inset-block:0;inset-inline-start:-40%}.puzzle-ui__shell{pointer-events:none;position:absolute;inset:0;overflow:hidden}.puzzle-ui__panel,.puzzle-ui__shell button,.puzzle-ui__movement{pointer-events:auto}.puzzle-ui__panel{background:var(--paper-glass);box-shadow:var(--shadow), inset 0 1px 0 #ffffffd9;-webkit-backdrop-filter:blur(14px)saturate(.84);border:1px solid #ffffffc2;border-radius:22px}.puzzle-ui__title-panel{inset-inline-start:clamp(20px,7vw,110px);flex-direction:column;align-items:flex-start;gap:16px;width:min(470px,100vw - 40px);padding:clamp(24px,4vw,42px);animation:.7s cubic-bezier(.2,.8,.2,1) both rise-in;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.puzzle-ui__eyebrow{color:var(--teal-ink);letter-spacing:0;margin:0;font-size:12px;font-weight:700}.puzzle-ui__title{font-family:var(--display);letter-spacing:-.035em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(34px,5.3vw,64px);font-weight:700;line-height:1.15}.puzzle-ui__hook{color:#51636c;max-width:35ch;margin:0;font-size:clamp(16px,1.7vw,19px);line-height:1.85}.puzzle-ui__control-note{color:var(--teal-ink);margin:-5px 0 0;font-size:12px;line-height:1.6}.puzzle-ui__button,.puzzle-ui__icon-button,.puzzle-ui__layer-button,.puzzle-ui__move-button{border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;touch-action:manipulation;background:#ffffffa8;border-radius:14px;padding:9px 15px;font-weight:700;transition:background .15s,transform .15s,box-shadow .15s,border-color .15s}.puzzle-ui__button:hover,.puzzle-ui__icon-button:hover,.puzzle-ui__layer-button:hover,.puzzle-ui__move-button:hover{background:#fffdf8;border-color:#5d9d9494;transform:translateY(-2px)}.puzzle-ui__button:active,.puzzle-ui__icon-button:active,.puzzle-ui__layer-button:active,.puzzle-ui__move-button:active{transform:translateY(0)scale(.98)}.puzzle-ui__button:focus-visible,.puzzle-ui__icon-button:focus-visible,.puzzle-ui__layer-button:focus-visible,.puzzle-ui__move-button:focus-visible{outline-offset:3px;outline:3px solid #5d9d9494}.puzzle-ui__button--primary{background:var(--teal-strong);color:#fff;border-color:#0000;box-shadow:0 7px 18px #427c7438}.puzzle-ui__button--primary:hover{background:#356f68}.puzzle-ui__button--quiet{background:#f6f0e699}.puzzle-ui__title-panel .puzzle-ui__button{min-width:190px;min-height:50px;margin-top:6px}.puzzle-ui__topbar{top:calc(18px + var(--safe-t));grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"chapter pause""roadmap pause";align-items:center;gap:9px 16px;width:min(350px,100vw - 40px);padding:12px 14px;display:grid;position:absolute;inset-inline-start:calc(20px + var(--safe-r))}.puzzle-ui__chapter{grid-area:chapter;gap:3px;display:grid}.puzzle-ui__chapter-name{margin:0;font-size:16px;font-weight:700}.puzzle-ui__icon-button{grid-area:pause;min-width:45px;min-height:44px;padding-inline:13px}.puzzle-ui__roadmap{grid-area:roadmap;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;display:grid}.puzzle-ui__roadmap-step{color:var(--muted);text-align:center;justify-items:center;gap:3px;font-size:9px;line-height:1.2;display:grid}.puzzle-ui__roadmap-marker{width:17px;height:17px;color:var(--muted);background:#ffffffad;border:1px solid #4c606840;border-radius:50%;place-items:center;font-size:9px;font-weight:700;transition:background .18s,color .18s,transform .18s;display:grid}.puzzle-ui__roadmap-step.is-current{color:var(--ink);font-weight:700}.puzzle-ui__roadmap-step.is-current .puzzle-ui__roadmap-marker{border-color:var(--teal-strong);transform:scale(1.12);box-shadow:0 0 0 3px #5d9d942e}.puzzle-ui__roadmap-step.is-done .puzzle-ui__roadmap-marker{background:var(--teal-strong);color:#fff;border-color:#0000}.puzzle-ui__controls{inset-inline-start:calc(20px + var(--safe-r));bottom:calc(18px + var(--safe-b));scrollbar-width:thin;flex-direction:column;gap:10px;width:min(356px,100vw - 40px);max-height:min(78vh,690px);padding:17px;display:flex;position:absolute;overflow-y:auto}.puzzle-ui__status{gap:4px;display:grid}.puzzle-ui__solution{color:var(--muted);font-size:14px}.puzzle-ui__solution.is-complete{color:#367a70}.puzzle-ui__objective-panel{border-inline-start:3px solid var(--teal);background:#5d9d941f;border-radius:0 12px 12px 0;gap:3px;padding:8px 10px;display:grid}.puzzle-ui__objective{color:var(--ink);margin:0;font-size:12px;font-weight:600;line-height:1.5}.puzzle-ui__layer-control{background:#e0e6e08c;border-radius:15px;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;display:grid}.puzzle-ui__layer-button{min-height:39px;padding-inline:7px;font-size:13px}.puzzle-ui__layer-button.is-selected{color:#1a2029;background:var(--lilac);border-color:#0000;box-shadow:0 3px 12px #69557d2e}.puzzle-ui__mechanisms{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.puzzle-ui__bridge-controls,.puzzle-ui__camera-controls{background:#ffffff5c;border:1px solid #4c60681a;border-radius:14px;align-content:start;gap:7px;min-width:0;padding:8px;display:grid}.puzzle-ui__button-row{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.puzzle-ui__button-row .puzzle-ui__button{min-width:0;min-height:42px;padding:7px 5px;font-size:11px;line-height:1.3}.puzzle-ui__narrative{border-inline-start:3px solid var(--peach);background:#ebdccf5c;border-radius:0 12px 12px 0;gap:4px;padding:9px 11px;display:grid}.puzzle-ui__narrative .puzzle-ui__eyebrow{font-size:10px}.puzzle-ui__message,.puzzle-ui__hint-copy{margin:0;font-size:12px;line-height:1.65}.puzzle-ui__message{color:var(--ink);font-weight:600}.puzzle-ui__hint-copy{color:var(--muted);margin-top:4px}.puzzle-ui__hint-copy[hidden]{display:none}.puzzle-ui__footer-actions{align-items:center;gap:8px;display:flex}.puzzle-ui__footer-actions .puzzle-ui__button{flex:1;min-width:0;font-size:13px}.puzzle-ui__cross[hidden]{display:none}.puzzle-ui__cross:disabled{opacity:.7;cursor:wait}.puzzle-ui__footer-actions .puzzle-ui__button:disabled{color:var(--teal-ink);cursor:default;background:#5d9d941c}.puzzle-ui__movement{inset-inline-end:calc(22px + var(--safe-l));bottom:calc(24px + var(--safe-b));background:var(--paper-glass);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px)saturate(.84);border-radius:20px;justify-items:center;gap:4px;padding:10px;display:grid;position:absolute}.puzzle-ui__move-title{color:var(--teal-ink);font-size:11px;font-weight:700}.puzzle-ui__move-help{max-width:142px;color:var(--muted);text-align:center;font-size:9px;line-height:1.35}.puzzle-ui__dpad{grid-template-rows:repeat(3,46px);grid-template-columns:repeat(3,46px);gap:4px;display:grid}.puzzle-ui__move-button{touch-action:none;background:#ffffffd6;border-radius:50%;width:46px;height:46px;min-height:46px;padding:0;font-size:18px}.puzzle-ui__move-button.is-held{background:var(--teal-strong);color:#fff;border-color:#0000;transform:scale(.95)}.puzzle-ui__move-button[data-move=up]{grid-area:1/2}.puzzle-ui__move-button[data-move=left]{grid-area:2/1}.puzzle-ui__move-button[data-move=down]{grid-area:3/2}.puzzle-ui__move-button[data-move=right]{grid-area:2/3}.puzzle-ui__shell[data-screen=pause],.puzzle-ui__shell[data-screen=ended]{place-items:center;display:grid}.puzzle-ui__shell[data-screen=pause]:before,.puzzle-ui__shell[data-screen=ended]:before{content:"";-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2c3b4340;position:absolute;inset:0}.puzzle-ui__pause-panel,.puzzle-ui__ended-panel{z-index:1;max-height:calc(100vh - 32px - var(--safe-t) - var(--safe-b));overscroll-behavior:contain;touch-action:pan-y;flex-direction:column;align-items:flex-start;gap:15px;width:min(480px,100vw - 32px);padding:clamp(24px,5vw,42px);animation:.3s cubic-bezier(.18,.78,.24,1) both panel-in;display:flex;position:relative;overflow-y:auto}.puzzle-ui__pause-panel .puzzle-ui__button,.puzzle-ui__ended-panel .puzzle-ui__button{width:100%}.puzzle-ui__reveal-copy{color:var(--muted);margin:0;font-size:15px;line-height:1.8}.puzzle-ui__reveal{color:var(--peach-ink);margin:0;font-size:22px;font-weight:700;line-height:1.6}.puzzle-ui__signature{color:var(--teal-ink);align-self:flex-start;margin:-4px 0 8px;font-weight:700}.puzzle-ui__notice{inset-inline-start:50%;bottom:calc(20px + var(--safe-b));color:#fff;opacity:0;pointer-events:none;background:#303b47e6;border-radius:999px;padding:9px 14px;font-size:13px;transition:opacity .18s,transform .18s;position:absolute;transform:translate(50%)translateY(8px)}.puzzle-ui__notice.is-visible{opacity:1;transform:translate(50%)translateY(0)}.fatal{background:var(--paper);color:var(--ink);place-items:center;padding:24px;font-size:18px;display:grid;position:fixed;inset:0}@keyframes rise-in{0%{opacity:0;translate:0 16px}to{opacity:1;translate:0}}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes loading-sweep{0%{inset-inline-start:-40%}to{inset-inline-start:105%}}@media (max-width:760px){.puzzle-ui__title-panel{inset-inline-start:14px;top:auto;bottom:calc(16px + var(--safe-b));gap:10px;width:min(410px,100vw - 28px);padding:20px;transform:none}.puzzle-ui__title{font-size:clamp(30px,8vw,46px)}.puzzle-ui__hook{max-width:29ch;font-size:15px}.puzzle-ui__control-note{font-size:11px}.puzzle-ui__topbar{top:calc(10px + var(--safe-t));gap:7px 9px;width:min(330px,100vw - 20px);padding:9px 11px;inset-inline-start:calc(10px + var(--safe-r))}.puzzle-ui__chapter-name{font-size:13px}.puzzle-ui__roadmap-step{font-size:8px}.puzzle-ui__controls{inset-inline:10px;bottom:calc(8px + var(--safe-b));overscroll-behavior:contain;touch-action:pan-y;border-radius:18px;gap:7px;width:auto;max-height:51vh;padding:10px;overflow-y:auto}.puzzle-ui__status{grid-template-columns:auto 1fr;align-items:center;gap:7px;display:grid}.puzzle-ui__status .puzzle-ui__eyebrow{font-size:10px}.puzzle-ui__solution{font-size:12px}.puzzle-ui__objective-panel{padding:7px 9px}.puzzle-ui__objective{font-size:11px}.puzzle-ui__mechanisms{gap:5px}.puzzle-ui__bridge-controls,.puzzle-ui__camera-controls{gap:5px;padding:6px}.puzzle-ui__bridge-controls>.puzzle-ui__eyebrow,.puzzle-ui__camera-controls>.puzzle-ui__eyebrow{font-size:9px}.puzzle-ui__button-row{gap:4px}.puzzle-ui__button-row .puzzle-ui__button{min-height:44px;padding:5px 3px;font-size:10px}.puzzle-ui__narrative{gap:2px;max-height:86px;padding:7px 9px;display:grid;overflow:auto}.puzzle-ui__narrative .puzzle-ui__eyebrow{font-size:9px}.puzzle-ui__message,.puzzle-ui__hint-copy{font-size:11px;line-height:1.4}.puzzle-ui__hint-copy{margin-top:2px}.puzzle-ui__movement{inset-inline-end:10px;bottom:calc(50vh + var(--safe-b));gap:3px;padding:8px}.puzzle-ui__move-help{max-width:128px;font-size:8px}.puzzle-ui__dpad{grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,44px);gap:3px}.puzzle-ui__move-button{width:44px;height:44px;min-height:44px;font-size:16px}.puzzle-ui__button{min-height:44px;font-size:12px}.puzzle-ui__topbar .puzzle-ui__icon-button{min-height:44px;font-size:11px}.puzzle-ui__pause-panel,.puzzle-ui__ended-panel{max-height:calc(100dvh - 24px - var(--safe-t) - var(--safe-b));gap:10px;padding:16px}.puzzle-ui__ended-panel .puzzle-ui__title{letter-spacing:0;font-size:clamp(28px,7vw,40px)}.puzzle-ui__reveal-copy{font-size:14px;line-height:1.55}.puzzle-ui__reveal{font-size:19px;line-height:1.45}.puzzle-ui__signature{margin:0}}@media (max-height:500px) and (orientation:landscape){.puzzle-ui__topbar{top:calc(8px + var(--safe-t));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf7f1c7;grid-template-areas:"chapter pause""roadmap roadmap";gap:5px 8px;width:min(245px,100vw - 20px);padding:7px 10px;inset-inline-start:auto;inset-inline-end:calc(10px + var(--safe-l))}.puzzle-ui__chapter-name{font-size:12px}.puzzle-ui__icon-button{padding-inline:8px;font-size:10px}.puzzle-ui__roadmap-step{font-size:8px}.puzzle-ui__controls{inset-inline-start:calc(10px + var(--safe-r));bottom:calc(8px + var(--safe-b));width:min(370px,45vw);max-height:calc(100vh - 16px - var(--safe-t) - var(--safe-b));grid-template-columns:1fr 1fr;align-content:start;gap:6px;padding:8px;display:grid}.puzzle-ui__status,.puzzle-ui__objective-panel,.puzzle-ui__layer-control,.puzzle-ui__mechanisms,.puzzle-ui__narrative,.puzzle-ui__footer-actions{grid-column:1/-1}.puzzle-ui__status{grid-template-columns:auto 1fr;align-items:center;gap:6px}.puzzle-ui__status .puzzle-ui__eyebrow,.puzzle-ui__solution{font-size:10px}.puzzle-ui__layer-control{gap:4px;padding:3px}.puzzle-ui__layer-button{min-height:31px;font-size:11px}.puzzle-ui__bridge-controls,.puzzle-ui__camera-controls{grid-template-columns:1fr;gap:4px}.puzzle-ui__bridge-controls>.puzzle-ui__eyebrow,.puzzle-ui__camera-controls>.puzzle-ui__eyebrow{font-size:10px}.puzzle-ui__button-row{gap:4px}.puzzle-ui__button-row .puzzle-ui__button{min-height:44px;padding:4px;font-size:10px}.puzzle-ui__objective-panel{padding:5px 7px}.puzzle-ui__objective{font-size:10px;line-height:1.35}.puzzle-ui__narrative{grid-template-columns:1fr 1fr;gap:6px;padding:5px 7px}.puzzle-ui__message,.puzzle-ui__hint-copy{font-size:10px;line-height:1.35}.puzzle-ui__hint-copy{margin-top:0}.puzzle-ui__footer-actions{gap:5px}.puzzle-ui__footer-actions .puzzle-ui__button{min-height:31px;padding-block:5px;font-size:10px}.puzzle-ui__movement{inset-inline-end:calc(10px + var(--safe-l));bottom:calc(10px + var(--safe-b));gap:2px;padding:7px}.puzzle-ui__move-help{font-size:8px}.puzzle-ui__dpad{grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,44px);gap:3px}.puzzle-ui__move-button{width:44px;height:44px;min-height:44px;font-size:15px}.puzzle-ui__pause-panel,.puzzle-ui__ended-panel{width:min(480px,100vw - 16px);max-height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b));gap:7px;padding:10px 14px}.puzzle-ui__ended-panel .puzzle-ui__title{font-size:22px;line-height:1.2}.puzzle-ui__reveal-copy{font-size:12px;line-height:1.4}.puzzle-ui__reveal{font-size:16px;line-height:1.35}.puzzle-ui__signature{font-size:11px}.puzzle-ui__ended-panel .puzzle-ui__button,.puzzle-ui__pause-panel .puzzle-ui__button{min-height:32px;padding-block:6px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
