/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#45464a;--rust:#b64b31;--paper:#f6f0e5;--kraft:#b79a70;--gold:#d9ac4c;--blue:#76b6ba;--shadow:0 12px 34px #2c23174d}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:#171914;width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;font-family:Hiragino Sans GB,PingFang SC,Microsoft YaHei,Arial,sans-serif}button{min-width:48px;min-height:48px;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0}button:focus-visible{outline-offset:2px;outline:3px solid #ffe3a0}img{pointer-events:none}.boot{color:#d6c399;letter-spacing:.18em;background:#1b201b;place-items:center;width:100%;height:100%;display:grid}.game-root{background:#1b1d19;position:fixed;inset:0}.portrait-guard{display:none}.game-frame{grid-template-rows:55px 3px 1fr 42px;display:grid;position:absolute;inset:0}.paper-header{z-index:40;padding:max(5px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 4px max(16px,env(safe-area-inset-left));background:#b89c70 url(/pdf-torn-paper.png) 50%/100% 220% no-repeat;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;box-shadow:0 3px 12px #2b211340}.brand{align-items:center;gap:9px;min-width:0;display:flex}.brand>span{width:34px;height:34px;color:var(--rust);border:2px solid var(--rust);place-items:center;font-weight:900;display:grid;transform:rotate(-3deg)}.brand>div{min-width:0;display:grid}.brand b{white-space:nowrap;font-size:13px;font-weight:900}.brand small{color:#665d50;white-space:nowrap;font-size:7px}.chapter{justify-items:center;line-height:1.05;display:grid}.chapter small{color:var(--rust);letter-spacing:.14em;font-size:7px;font-weight:800}.chapter strong{color:#fff;text-shadow:0 2px 2px #3828154d;margin-top:4px;font-size:18px;font-weight:900}.tools{justify-self:end;gap:7px;display:flex}.tools button{color:#4b4b48;background:#ffffff75;border-radius:9px;width:44px;min-width:44px;height:44px;min-height:44px;font-size:18px}.progress{z-index:41;background:#40332238}.progress i{background:var(--rust);height:100%;transition:width .5s;display:block}.stage{min-height:0;animation:.55s both stage-in;position:relative;overflow:hidden}.scene-bg{background-position:50%;background-size:cover}.stage:before,.stage:after{content:"";z-index:30;pointer-events:none;background:url(/pdf-torn-paper.png) 50%/100% 150px no-repeat;height:13px;position:absolute;left:0;right:0}.stage:before{background-position:top;top:-4px}.stage:after{background-position:bottom;bottom:-4px}.instruction{z-index:40;padding:0 max(18px,env(safe-area-inset-right)) max(2px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:#fffffff5;align-items:center;gap:9px;display:flex;box-shadow:0 -3px 10px #3127181f}.instruction b{background:var(--rust);color:#fff;padding:5px 8px;font-size:9px}.instruction p{white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:10px;font-weight:650;overflow:hidden}.instruction span{color:#75716b;font-size:8px}.start-screen{background:linear-gradient(90deg,#f6f1e5eb 0 47%,#f6f1e50a 73%),url(/game-assets/workroom.png) 50%/cover;position:absolute;inset:0;overflow:hidden}.start-screen:before,.start-screen:after{content:"";z-index:5;background:url(/pdf-torn-paper.png) 50%/100% 190px no-repeat;height:34px;position:absolute;left:0;right:0}.start-screen:before{background-position:top;top:-8px}.start-screen:after{background-position:bottom;bottom:-8px}.start-copy{z-index:4;left:max(5vw,env(safe-area-inset-left));width:48%;position:absolute;top:50%;transform:translateY(-53%)}.start-copy>small{color:var(--rust);letter-spacing:.18em;font-size:9px;font-weight:850}.start-copy h1{color:#414246;letter-spacing:.04em;margin:7px 0 0;font-size:clamp(35px,7.4vh,58px);font-weight:950;line-height:.95}.start-copy h1 span{color:#414246}.start-copy h2{color:var(--rust);letter-spacing:.16em;margin:12px 0 8px;font-size:15px}.start-copy p{color:#55575b;margin:0 0 13px;font-size:11px;font-weight:650;line-height:1.65}.start-copy button,.paper-button,.success-overlay button,.report-paper button,.drawer-open button,.poem-scene>button,.clue-next,.warehouse-caption button,.typewriter button,.ending-copy>button{color:#fff;background:#55575a;border-radius:8px;padding:0 24px;font-weight:850;box-shadow:0 6px 15px #2a272238}.start-owl{z-index:3;object-fit:contain;filter:drop-shadow(0 12px 13px #2c231959);width:33%;height:86%;position:absolute;top:50%;left:71%;transform:translate(-50%,-50%)}.start-note{z-index:6;text-align:center;letter-spacing:.15em;background:#ffffffb8;padding:4px 12px;font-size:8px;position:absolute;bottom:12px;left:3%;right:3%}.home-scene{background-image:url(/game-assets/workroom.png);width:100%;height:100%}.home-object{z-index:4;color:#fff;background:0 0;border-radius:18px;position:absolute}.home-object img{object-fit:contain;width:100%;height:100%}.home-object span{background:#32302ad4;border-radius:12px;width:max-content;padding:4px 8px;font-size:8px;font-weight:800;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.object-books{width:145px;height:105px;top:46%;left:65%}.object-owl{width:115px;height:185px;top:18%;left:72%}.object-rubbing{width:105px;height:150px;top:42%;left:43%;transform:rotate(-7deg)}.glow{animation:2s ease-in-out infinite object-glow}.home-guide{z-index:5;border-left:5px solid var(--rust);box-shadow:var(--shadow);background:#ffffffeb;border-radius:10px;padding:9px 18px;font-size:12px;font-weight:900;position:absolute;bottom:15px;left:50%;transform:translate(-50%)}.object-pop{z-index:12;border:3px solid #fff;border-left:6px solid var(--rust);box-shadow:var(--shadow);background:#fffffff2;border-radius:12px;align-items:center;gap:12px;padding:10px 13px;display:flex;position:absolute;bottom:16px;left:8%;right:8%}.object-pop p{flex:1;margin:0;font-size:11px;font-weight:650;line-height:1.5}.object-pop button{color:#fff;background:#56585b;border-radius:7px;padding:0 14px;font-size:10px;font-weight:800}.glyph-scene{background:url(/game-assets/glyph-desk.jpg) 50%/cover;grid-template-columns:43% 57%;height:100%;display:grid}.glyph-rubbing{place-items:center;padding:13px;display:grid;position:relative}.glyph-rubbing img{object-fit:contain;filter:contrast(1.2);width:75%;height:88%}.glyph-rubbing span{color:var(--rust);background:#ffffffe6;border-radius:7px;padding:5px 8px;font-size:8px;font-weight:850;position:absolute;bottom:9px;left:7%}.glyph-work{z-index:3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f5efe2c7;padding:15px 16px 10px;position:relative}.glyph-cards{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.glyph-card{background:#f4e9d3;border:3px solid #333;grid-template-rows:1fr 36px;min-width:0;height:132px;padding:4px;display:grid;position:relative;box-shadow:0 4px 9px #2520182e}.glyph-card img{object-fit:cover;width:100%;height:100%}.glyph-card div{color:#777;border-top:2px dashed #545454;place-items:center;font-size:18px;font-weight:900;display:grid}.glyph-card.current{border-color:var(--rust);transform:translateY(-4px);box-shadow:0 0 0 3px #b64b312e}.glyph-card.done div{color:var(--rust)}.glyph-card.gold-flash{animation:.5s both gold-flash}.comparison-book{border-left:5px solid var(--rust);background:#ffffffe6;border-radius:8px;margin:8px 0 6px;padding:7px 10px}.comparison-book b{font-size:10px}.comparison-book p{color:#666;margin-left:9px;font-size:8px;display:inline}.modern-options{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.modern-options button{color:#3e3f42;background:#fff8e9;border:2px solid #3d3e3f;min-width:0;height:52px;min-height:48px;font-size:21px;font-weight:900}.modern-options button:active{background:#e7d3ad}.success-overlay{z-index:20;text-align:center;background:#f6efe1f5;border:9px solid #fff;border-radius:16px;place-content:center;place-items:center;display:grid;position:absolute;inset:8% 16%;box-shadow:0 20px 60px #271e136b}.success-overlay:before{content:"";border:1px solid #c6b393;position:absolute;inset:10px}.success-overlay small{color:var(--rust);letter-spacing:.2em;font-weight:850;position:relative}.success-overlay h2{color:#9a6429;letter-spacing:.22em;text-shadow:0 0 16px #dfaf4a73;margin:9px 0;font-size:34px;position:relative}.success-overlay p{margin:0 0 12px;font-size:10px;position:relative}.success-overlay button{position:relative}.report-scene{background-image:url(/game-assets/report-scene.jpg);height:100%}.report-paper{z-index:5;border:4px solid #fff;border-left:7px solid var(--rust);width:48%;box-shadow:var(--shadow);background:#ffffffed;border-radius:12px;padding:14px 18px;position:absolute;bottom:7%;left:5%}.report-paper small{color:var(--rust);font-size:8px;font-weight:900}.report-paper h2{margin:4px 0;font-size:19px}.report-paper p{margin:0 0 8px;font-size:10px;line-height:1.55}.report-paper button{width:100%;height:43px;min-height:43px}.lineart-reference{z-index:4;object-fit:contain;width:43%;height:78%;box-shadow:var(--shadow);background:#fff;border:7px solid #f8edd6;position:absolute;top:8%;right:5%;transform:rotate(1deg)}.puzzle-scene{background-image:url(/game-assets/board-scene.jpg);height:100%}.puzzle-board{z-index:4;aspect-ratio:1.48;background:#eeddb752 url(/game-assets/feather-pattern.jpg) 50%/cover;border:4px solid #282828;border-radius:5px;grid-template-rows:repeat(5,1fr);grid-template-columns:repeat(5,1fr);gap:2px;width:min(40vw,295px);padding:7px;display:grid;position:absolute;top:5%;left:8%;box-shadow:0 8px 20px #2a20134d}.puzzle-slot{background:#f5e6c3ad;border:1px dashed #4a3e2b61;min-width:0;min-height:0;padding:0;position:relative;overflow:visible}.puzzle-slot.missing{background:#533c286b;box-shadow:inset 0 0 9px #25180e73}.pattern-tile{filter:saturate(.8)contrast(1.08);background-image:url(/game-assets/feather-pattern.jpg);background-repeat:no-repeat;background-size:500% 500%;border:1px solid #3b3023;display:block;position:absolute;inset:-1px}.pattern-tile.tile-1{clip-path:polygon(0 0,42% 0,50% 10%,58% 0,100% 0,100% 100%,0 100%)}.pattern-tile.tile-2{clip-path:polygon(0 0,100% 0,100% 42%,90% 50%,100% 58%,100% 100%,0 100%)}.pattern-tile.tile-3{clip-path:polygon(0 0,100% 0,100% 100%,58% 100%,50% 90%,42% 100%,0 100%)}.pattern-tile.placed{animation:.25s both snap-in}.puzzle-side{z-index:5;border:4px solid #fff;border-left:7px solid var(--rust);width:42%;box-shadow:var(--shadow);background:#ffffffeb;border-radius:12px;padding:14px 17px;position:absolute;top:7%;right:4%}.puzzle-side small{color:var(--rust);font-size:8px;font-weight:900}.puzzle-side h2{margin:4px 0;font-size:20px}.puzzle-side p{margin:0;font-size:10px;line-height:1.55}.piece-count{align-items:end;gap:4px;margin:8px 0;display:flex}.piece-count b{color:var(--rust);font-size:28px}.piece-count span{margin-bottom:5px;font-size:10px}.puzzle-side .paper-button{width:100%;height:40px;min-height:40px;font-size:9px}.piece-tray{z-index:12;touch-action:pan-x;background:#ffffffe0;border:3px solid #fff;border-radius:10px;gap:5px;padding:5px 7px;display:flex;position:absolute;bottom:3%;left:4%;right:4%;overflow-x:auto;box-shadow:0 5px 15px #2c23182e}.piece-tray>button{background:#d5ba87;border:2px solid #4e4433;flex:0 0 51px;width:51px;min-width:51px;height:51px;min-height:51px;padding:0;position:relative;overflow:hidden}.piece-tray>button.selected{border-color:var(--rust);transform:translateY(-3px);box-shadow:0 0 0 3px #b64b3140}.piece-tray .pattern-tile{inset:0}.glow-blue{box-shadow:0 0 28px #62bfcbb3,0 8px 20px #2a20134d}.lock-scene{background-image:url(/game-assets/drawer-scene.jpg);height:100%}.lock-panel{z-index:4;width:54%;box-shadow:var(--shadow);background:#f6ecd8f0;border:5px solid #fff;border-radius:14px;padding:13px 16px;position:absolute;top:6%;right:5%}.lock-panel>small{color:var(--rust);letter-spacing:.08em;font-size:9px;font-weight:900}.lock-panel h2{margin:0 0 0 10px;font-size:19px;display:inline}.lock-panel p{margin:5px 0 7px;font-size:9px}.lock-wheels{grid-template-columns:repeat(6,1fr);gap:7px;display:grid}.lock-wheel{background:#c7a879;border:3px solid #333;border-radius:6px;grid-template-rows:24px 46px 24px;display:grid;overflow:hidden}.lock-wheel button{color:#fff;background:#3f3f3f;min-width:0;height:24px;min-height:0;font-size:12px}.lock-wheel b{background:#eee1c8;place-items:center;font:900 25px/1 monospace;display:grid}.password-readout{color:#6f4432;letter-spacing:.7em;text-align:center;margin-top:6px;font:900 10px monospace}.drawer-open{z-index:15;background:#c19b6c url(/game-assets/drawer-scene.jpg) 50%/cover;border:8px solid #8a6543;border-radius:8px;grid-template-rows:1fr auto auto auto;grid-template-columns:32% 1fr;align-items:center;padding:14px 22px;display:grid;position:absolute;inset:5% 10%;box-shadow:0 20px 60px #1d160f7a}.flashlight-icon{color:#163d40;text-shadow:0 5px 10px #00000040;grid-row:1/5;place-items:center;font-size:57px;display:grid;transform:rotate(-16deg)}.last-pieces{justify-content:center;gap:15px;display:flex}.last-pieces .pattern-tile{filter:drop-shadow(0 4px 5px #00000040);background-color:#ead7ad;width:67px;height:53px;position:relative}.drawer-open h3{text-align:center;margin:4px 0 0}.drawer-open p{text-align:center;margin:0 0 6px;font-size:9px}.drawer-open button{height:42px;min-height:42px}.poem-scene,.flashlight-scene{background-image:url(/game-assets/board-scene.jpg);height:100%}.poem-pattern,.full-pattern{background:url(/game-assets/feather-pattern.jpg) 50%/contain no-repeat;width:50%;height:82%;position:absolute;top:8%;left:27%}.blue-aura{background:radial-gradient(circle,#64c7d35c,#0000 66%);border-radius:50%;width:58%;height:94%;animation:2s ease-in-out infinite blue-breathe;position:absolute;top:2%;left:23%}.poem-scene blockquote{z-index:5;box-shadow:var(--shadow);background:#ffffffe6;border:4px solid #fff;border-left:7px solid #6c9ea1;border-radius:12px;margin:0;padding:15px 17px;font-size:17px;font-weight:850;line-height:1.7;position:absolute;top:15%;left:7%}.poem-scene blockquote small{color:#67787a;margin-top:5px;font-size:8px;display:block}.poem-scene>button{z-index:6;position:absolute;bottom:10%;right:7%}.flashlight-scene{touch-action:none}.dark-mask{z-index:4;-webkit-mask-image:radial-gradient(circle 82px at var(--light-x) var(--light-y),transparent 0 65px,#000 92px);-webkit-mask-image:radial-gradient(circle 82px at var(--light-x) var(--light-y),transparent 0 65px,#000 92px);-webkit-mask-image:radial-gradient(circle 82px at var(--light-x) var(--light-y),transparent 0 65px,#000 92px);-webkit-mask-image:radial-gradient(circle 82px at var(--light-x) var(--light-y),transparent 0 65px,#000 92px);mask-image:radial-gradient(circle 82px at var(--light-x) var(--light-y),transparent 0 65px,#000 92px);background:#040706e0;position:absolute;inset:0}.fluorescent-clue{z-index:3;color:#77f4b0;letter-spacing:.12em;text-shadow:0 0 5px #44d98b,0 0 15px #44d98b;opacity:0;font-size:17px;font-weight:900;transition:opacity .35s;position:absolute;bottom:20%;left:25%}.fluorescent-clue.found{opacity:1;animation:1.4s infinite clue-flicker}.torch{z-index:7;left:calc(var(--light-x) - 22px);top:calc(var(--light-y) - 20px);filter:drop-shadow(0 4px 5px #000);font-size:35px;position:absolute;transform:rotate(-32deg)}.flash-hint{z-index:7;background:#ffffffe6;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:800;position:absolute;top:8%;left:5%}.clue-next{z-index:8;position:absolute;bottom:8%;right:6%}.warehouse-scene{background:linear-gradient(90deg,#111714,#2e3530 50%,#121713);height:100%;overflow:hidden}.warehouse-depth{perspective:700px;background:repeating-linear-gradient(90deg,#ffffff08 0 2px,#0000 2px 100px),linear-gradient(#000000b3,#0000 30%,#0009);position:absolute;inset:0}.cabinet-wall{z-index:3;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr);gap:8px;display:grid;position:absolute;inset:7% 40% 8% 8%;transform:perspective(700px)rotateY(6deg)}.cabinet-wall>button{color:#d8c7a4;background:linear-gradient(145deg,#4f534b,#292e2a);border:4px solid #79644a;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #20241f}.cabinet-wall>button span{font:800 10px monospace;position:absolute;top:6px;left:7px}.cabinet-wall>button.target{border-color:#c79c50;box-shadow:0 0 18px #d3a44c73,inset 0 0 0 2px #20241f}.cabinet-wall img{object-fit:contain;pointer-events:auto;width:80%;height:80%;position:absolute;inset:10%}.cabinet-wall em{color:#91c7a2;font-size:10px}.warehouse-caption{z-index:5;border:4px solid #fff;border-left:7px solid var(--rust);width:32%;box-shadow:var(--shadow);background:#f7f0e2f0;border-radius:12px;padding:16px 18px;position:absolute;top:17%;right:5%}.warehouse-caption small{color:var(--rust);font-size:8px;font-weight:900}.warehouse-caption h2{margin:5px 0 10px;font-size:18px;line-height:1.45}.warehouse-caption button{width:100%}.assembly-scene{touch-action:none;background-image:url(/game-assets/board-scene.jpg);height:100%}.assembly-body{z-index:3;object-fit:contain;filter:drop-shadow(0 12px 10px #2b201359);width:48%;height:88%;position:absolute;top:54%;left:49%;transform:translate(-50%,-50%)}.assembly-lid{z-index:8;object-fit:contain;pointer-events:auto;touch-action:none;filter:drop-shadow(0 7px 7px #00000059);width:150px;height:105px;animation:1.7s infinite lid-pulse;position:absolute;transform:translate(-50%,-50%)}.assembly-target{z-index:6;border-left:6px solid var(--rust);background:#ffffffe6;border-radius:10px;padding:9px 13px;font-size:11px;font-weight:850;position:absolute;bottom:8%;left:7%}.assembled-owl{z-index:4;object-fit:contain;filter:drop-shadow(0 12px 12px #2a1f1261);width:38%;height:92%;animation:4s ease-in-out infinite owl-turn;position:absolute;top:50%;left:34%;transform:translate(-50%,-50%)}.water-port{z-index:8;color:var(--rust);background:#ffffffe6;border-radius:14px;align-items:center;gap:7px;padding:5px 8px;font-size:9px;font-weight:900;display:flex;position:absolute;top:24%;left:35%}.water-port i{background:var(--rust);border-radius:50%;width:13px;height:13px;animation:1.2s infinite pulse;box-shadow:0 0 0 5px #b64b3140}.typewriter{z-index:6;border:5px solid #fff;border-left:8px solid var(--rust);width:45%;box-shadow:var(--shadow);background:#ffffffed;border-radius:12px;padding:17px 20px;position:absolute;top:16%;right:5%}.typewriter p,.typewriter h2{white-space:nowrap;border-right:2px solid #444;margin:0;animation:2.2s steps(20,end) both typing,.7s step-end infinite caret;overflow:hidden}.typewriter p{font-size:11px}.typewriter h2{color:var(--rust);margin:10px 0 13px;font-size:21px;animation-delay:2.2s}.typewriter button{width:100%}.ending-scene{background-image:linear-gradient(90deg,#f5efe21a,#f5efe2d1 46%,#f5efe2f5),url(/game-assets/workroom.png);height:100%}.ending-owl{z-index:3;object-fit:contain;filter:drop-shadow(0 10px 12px #2b211559);width:34%;height:91%;position:absolute;top:51%;left:27%;transform:translate(-50%,-50%)}.ending-books{z-index:4;object-fit:contain;width:19%;height:29%;position:absolute;bottom:4%;left:3%}.ending-rubbing{z-index:4;object-fit:contain;width:12%;height:30%;position:absolute;bottom:3%;left:44%;transform:rotate(7deg)}.ending-copy{z-index:7;width:52%;box-shadow:var(--shadow);background:#ffffffed;border:5px solid #fff;border-radius:14px;padding:13px 18px;position:absolute;top:5%;bottom:5%;right:3%}.ending-copy>small{color:var(--rust);letter-spacing:.16em;font-size:8px;font-weight:900}.ending-copy h2{margin:3px 0 5px;font-size:19px}.ending-copy>p{margin:0 0 7px;font-size:8px;line-height:1.45}.achievements{grid-template-columns:1fr 1fr;gap:5px;display:grid}.achievements article{border-left:4px solid var(--gold);background:#f3eadb;align-items:center;gap:7px;padding:5px 7px;display:flex}.achievements article:last-child{grid-column:1/-1}.achievements article>span{font-size:18px}.achievements article div{display:grid}.achievements b{font-size:9px}.achievements small{color:#6e6d69;font-size:6px}.ending-copy>button{height:39px;min-height:39px;position:absolute;bottom:12px;right:17px}@keyframes stage-in{0%{opacity:0;transform:scale(1.012)}to{opacity:1;transform:none}}@keyframes object-glow{0%,to{filter:drop-shadow(0 0 2px #ffffff80)}50%{filter:drop-shadow(0 0 11px #fff6be)}}@keyframes gold-flash{0%{box-shadow:0 0 #dcab4000}55%{filter:brightness(1.35);box-shadow:0 0 28px 8px #edbf57d9}to{box-shadow:0 0 #dcab4000}}@keyframes snap-in{0%{filter:brightness(1.45);transform:scale(1.28)}to{transform:none}}@keyframes blue-breathe{0%,to{opacity:.45;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}@keyframes clue-flicker{0%,92%,to{opacity:1}95%{opacity:.55}}@keyframes lid-pulse{0%,to{filter:drop-shadow(0 7px 7px #00000059)}50%{filter:drop-shadow(0 0 14px #fff4b5)}}@keyframes owl-turn{0%,to{transform:translate(-50%,-50%)perspective(500px)rotateY(-5deg)}50%{transform:translate(-50%,-50%)perspective(500px)rotateY(7deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes caret{50%{border-color:#0000}}@media (orientation:portrait){.portrait-guard{z-index:1000;color:#eee1c4;text-align:center;background:radial-gradient(circle,#3d4a42,#171c18 70%);place-content:center;place-items:center;padding:38px;display:grid;position:fixed;inset:0}.portrait-guard span{font-size:55px;animation:2s infinite turn}.portrait-guard h1{margin:6px 0;font-size:25px}.portrait-guard p{color:#aeb6ad;margin:0;font-size:12px;line-height:1.6}@keyframes turn{50%{transform:rotate(90deg)}}}@media (height<=375px) and (orientation:landscape){.game-frame{grid-template-rows:49px 3px 1fr 36px}.paper-header{padding-top:3px;padding-bottom:2px}.brand>span{width:30px;height:30px}.brand b{font-size:11px}.chapter strong{font-size:15px}.tools button{width:38px;min-width:38px;height:38px;min-height:38px}.start-copy h1{font-size:36px}.glyph-card{height:110px}.puzzle-board{width:250px}.puzzle-side{padding:10px 13px}.puzzle-side h2{font-size:17px}.piece-tray>button{width:47px;min-width:47px;height:47px;min-height:47px}.ending-copy{padding:9px 14px}.achievements article{padding:3px 6px}.lock-panel{padding:9px 13px;top:3%}.lock-wheel{grid-template-rows:20px 39px 20px}.lock-wheel button{height:20px}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
