@charset "UTF-8";
:root{color-scheme:dark;--ink:#201a29;--paper:#f3ead9;--muted:#c3b4c6;--amber:#ddbd7d;--cyan:#a1e0e3;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif;--hud-height:62px;--bottom-height:116px}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{font:14px/1.5 var(--sans);color:var(--paper);background:#15101e}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}a{color:#e9d4a7;text-underline-offset:3px}p,h1,h2,h3{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:normal}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#game-window{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;overflow:hidden;background:#21152b;isolation:isolate}#exploration-layer{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden;min-width:0;min-height:0}.game-hud{position:relative;z-index:12;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-height:var(--hud-height);gap:18px;padding:7px 18px;background:#1e1827f5;border-bottom:1px solid #b398674d}.game-identity{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:2px 12px;min-width:0}.game-title{grid-column:1/-1;font-size:8px;text-transform:uppercase;letter-spacing:1.6px;color:#cfb794;line-height:1.3}#room-name{font:20px/1.15 var(--serif);color:#f1e3d0;margin:0;min-width:0}.progress-text,#progress-text{font-size:10px;color:#bca6c6;white-space:nowrap}.hud-actions{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.hud-actions button{min-height:44px;padding:10px 17px;white-space:nowrap;font-size:11px}.hud-actions kbd{display:none}
button,.primary-button{border:0;border-radius:0;background-color:#2b2035;background-image:url("assets/menu-ui.png");background-repeat:no-repeat;background-size:200% 240.051%;background-position:100% 0;color:#352439;text-shadow:0 1px #f5e7dc44;min-height:44px;padding:12px 19px;line-height:1.2;font-weight:600;font-size:12px;box-shadow:0 2px 6px #09051133}.primary-button{background-position:0 0;color:#3a2635}button:hover{filter:brightness(1.08)}button[aria-pressed=true],button.selected{filter:brightness(1.12)}button>kbd{display:none}
#scene-stage{position:relative;flex:1 1 0;min-width:0;min-height:0;overflow:hidden;background:#2a1b38;touch-action:none;cursor:grab;isolation:isolate}#scene-stage.dragging,#scene-stage:active{cursor:grabbing}#scene{position:absolute;left:50%;top:50%;width:100%;height:auto;aspect-ratio:836/470;background-image:url("assets/manor-rooms.png");background-repeat:no-repeat;background-size:200% 200%;background-position:0 0;transform:translate(-50%,-50%) translate(var(--pan-x,0px),var(--pan-y,0px));transform-origin:center;will-change:transform;touch-action:none;user-select:none;-webkit-user-select:none}#scene[data-room=foyer],.examine-scene[data-room=foyer]{background-position:0 0}#scene[data-room=library],.examine-scene[data-room=library]{background-position:100% 0}#scene[data-room=conservatory],.examine-scene[data-room=conservatory]{background-position:0 100%}#scene[data-room=attic],.examine-scene[data-room=attic]{background-position:100% 100%}#hotspots{position:absolute;inset:0;pointer-events:none}.hotspot{position:absolute;transform:translate(-50%,-50%);width:64px;height:64px;min-width:44px;min-height:44px;padding:0;border:0;background:none!important;box-shadow:none;color:var(--paper);text-shadow:none;pointer-events:auto;cursor:pointer;touch-action:none;isolation:isolate}.hotspot:before{content:"";position:absolute;inset:-12px;background-image:url("assets/menu-ui.png");background-repeat:no-repeat;background-size:800% 342.8051%;background-position:42.85714% 100%;opacity:0;mix-blend-mode:screen;transition:opacity .18s;pointer-events:none}.hotspot:hover:before,.hotspot:focus-visible:before,.discover-mode .hotspot:before{opacity:.55}.hotspot:focus-visible{outline:2px solid #e0c894;outline-offset:3px}.hotspot-label{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);padding:7px 12px;max-width:230px;white-space:nowrap;background:#21192af0;border:1px solid #b99c6c;color:#fff0d5;font:12px/1.3 var(--sans);box-shadow:0 3px 8px #10091c55;opacity:0;visibility:hidden;pointer-events:none}.hotspot:hover .hotspot-label,.hotspot:focus-visible .hotspot-label,.discover-mode .hotspot-label{opacity:1;visibility:visible}.hotspot.solved:before{filter:hue-rotate(25deg)}.camera-control{position:absolute;z-index:5;width:58px;height:44px;min-height:44px;padding:7px 8px;font-size:10px;line-height:1.15;color:#38283f;opacity:.84;touch-action:manipulation}.camera-control:hover,.camera-control:focus-visible{opacity:1}#camera-left{left:9px;top:50%;transform:translateY(-50%)}#camera-right{right:9px;top:50%;transform:translateY(-50%)}#camera-up{left:50%;top:9px;transform:translateX(-50%);width:70px}#camera-down{left:50%;bottom:24px;transform:translateX(-50%);width:70px}#camera-tip{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);max-width:85%;width:max-content;margin:0;padding:4px 9px;font-size:9px;color:#eddfc9;background:#1d1628dd;pointer-events:none}
.bottom-hud{position:relative;z-index:10;min-height:var(--bottom-height);flex-shrink:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:4px 22px;align-content:center;padding:12px 20px;background:#1f1929f7;border-top:1px solid #b3986755}.story-panel{grid-column:1;grid-row:1;min-width:0;max-width:1050px}#story-text{font:14px/1.5 var(--sans);color:#eadfd6;margin:0;overflow-wrap:break-word}.story-pagination{display:none;align-items:center;gap:9px;margin-top:5px}.story-pagination:has(button:not([hidden])){display:flex}.story-pagination button{min-height:24px;padding:5px 11px;font-size:8px}.story-pagination span{font-size:8px;color:#a88fb4}.inventory-row{grid-column:2;grid-row:1/3;min-width:0;display:flex;align-items:center;gap:12px}.inventory-label{font:16px var(--serif);color:#d7c0db}.inventory,#inventory{display:flex;align-items:center;gap:6px;min-width:0}.inventory-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:59px;height:66px;min-height:44px;padding:3px 4px;background-size:200% 171.4026%;background-position:100% 100%;color:#4a3143;box-shadow:none}.inventory-item.selected{outline:2px solid #a9e1e2;outline-offset:1px}.item-art,.clue-art,.token-art{display:block;width:28px;height:36px;background-image:url("assets/menu-ui.png");background-repeat:no-repeat;background-size:800% 342.8051%;background-position:0 58.8147%;pointer-events:none}.item-art-attic-key{filter:hue-rotate(18deg)}.item-art-front-door-key{filter:brightness(1.14)}.clue-art{background-position:28.57143% 58.8147%}.inventory-item-name{font-size:8px;line-height:1.2;font-weight:600;text-align:center;max-width:100%;overflow-wrap:anywhere}.inventory-empty{height:55px;width:49px;background:#35253f;border:1px solid #68506e55}#inventory-note{font-size:10px;line-height:1.4;color:#bfaec7;max-width:135px;margin:0}#inventory-note:empty{display:none}.objective-text{grid-column:1;grid-row:2;font-size:10px;line-height:1.4;color:#d1b586;margin:4px 0 0}.pickup-layer{position:fixed;inset:0;z-index:70;pointer-events:none}.pickup-flight{position:fixed;z-index:70;left:0;top:0;width:50px;height:60px;display:grid;place-items:center;pointer-events:none;transform-origin:center}.pickup-flight .item-art,.pickup-flight .clue-art{width:42px;height:55px;filter:drop-shadow(0 0 7px #e8d39888)}
dialog{position:absolute;z-index:45;left:50%;top:50%;transform:translate(-50%,-50%);width:min(610px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 24px);margin:0;padding:8px;border:0;border-radius:0;color:var(--paper);background-image:url("assets/menu-ui.png");background-repeat:no-repeat;background-size:200% 171.4026%;background-position:100% 100%;box-shadow:0 16px 70px #090411dd;overflow:hidden;isolation:isolate}dialog:not([open]){display:none}dialog[open]{display:block}dialog::backdrop{background:transparent}.dialog-inner{position:relative;padding:27px 30px;background:#241c2dfc;min-height:0;width:100%;overflow:hidden}.dialog-inner h2{font-size:30px;line-height:1.12;letter-spacing:-.5px;color:#f4e8d0;margin:0 57px 16px 0;overflow-wrap:break-word}.eyebrow{font-size:8px;line-height:1.3;letter-spacing:1.8px;font-weight:700;text-transform:uppercase;color:#d5b580;margin:0 0 8px}.dialog-prose,#puzzle-prompt,#examine-text{font:14px/1.6 var(--sans);color:#decede;white-space:pre-line;margin:0 0 17px;overflow-wrap:break-word}.small-note{font-size:11px;line-height:1.5;color:#b7a2c1;margin:15px 0 0}.close-button{position:absolute;right:15px;top:16px;min-width:44px;min-height:32px;width:auto;height:32px;padding:8px 12px;font-size:10px;z-index:3}.dialog-actions,.welcome-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:19px}.dialog-actions>*{flex:1}.dialog-inner form{margin:0}.dialog-inner label{display:block;font-size:12px;font-weight:600;color:#d8c5db;margin:10px 0 7px}.dialog-inner input[type=text]{display:block;width:100%;height:44px;padding:10px 12px;background:#130f1bd9;color:#f6ead7;border:1px solid #8f738e;border-radius:0;font-size:16px}.dialog-inner input[aria-invalid=true]{border-color:#e6a289}.dialog-inner input::placeholder{color:#a68fac}.puzzle-feedback,#puzzle-feedback{font-size:12px;line-height:1.4;color:#f1bba6;min-height:0;margin:9px 0 0}.puzzle-feedback:empty{display:none}.dialog-inner .primary-button{margin-top:12px}.dialog-actions .primary-button{margin-top:0}.welcome-dialog{width:min(600px,calc(100vw - 28px))}.welcome-dialog .dialog-inner{text-align:center;padding:34px 38px 29px}.welcome-dialog h2{font-size:38px;line-height:1.1;margin:0 0 16px}.welcome-dialog h2 em{color:#d8bfdd;font-weight:normal}.welcome-dialog .dialog-prose{font:16px/1.6 var(--serif);color:#dfcfe0;margin:0 0 16px}.welcome-dialog .start-audio{display:flex;align-items:center;justify-content:center;gap:9px;font-size:11px;font-weight:400;margin:17px 0 0;color:#c8b4ce}.start-audio input{width:17px;height:17px;accent-color:#d9bd80;flex-shrink:0;margin:0}.welcome-actions{justify-content:center;margin-top:16px}.welcome-actions button{min-width:185px;margin-top:0!important}.welcome-dialog .small-note{font-size:10px;max-width:380px;margin:17px auto 0}.compact-dialog{width:min(480px,calc(100vw - 28px))}.menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:17px}.menu-actions button,.menu-link{width:100%;min-height:44px;font-size:12px;text-align:center}.menu-link{display:flex;align-items:center;justify-content:center;background:#3b2c44;text-decoration:none;color:#ead2a5;border:1px solid #886b8d;padding:10px 15px}.page-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px}.page-controls button{min-width:88px;min-height:44px;padding:11px 16px;font-size:11px}.page-controls span{font-size:11px;color:#b7a2c1;text-align:center}.journal-page-content{font-size:14px;line-height:1.6;color:#dfcede;max-width:100%;overflow:hidden}.journal-page-content h3{font-size:22px;color:#eacfa4;line-height:1.2;margin:0 0 12px}.journal-page-content p{margin:0;white-space:pre-line;overflow-wrap:break-word}.journal-page-content p+p{margin-top:13px}.journal-page-content ul,.journal-page-content ol{padding-left:18px;margin:12px 0 0}.journal-page-content li{margin:0 0 8px}.examine-scene{width:100%;aspect-ratio:836/470;max-height:180px;background-image:url("assets/manor-rooms.png");background-repeat:no-repeat;background-size:200% 200%;margin:0 0 16px;border:1px solid #6f536f}.puzzle-choices{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.puzzle-choice{min-height:46px;min-width:84px;padding:12px 18px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:8px}.puzzle-choice[aria-pressed=true]{background-position:0 0}.puzzle-choice.book-choice,.puzzle-choice.growth-choice{min-width:90px;flex:1}.puzzle-choice.guardian-choice{min-width:92px;flex:1}.token-art{width:25px;height:32px;flex-shrink:0}.token-art-moon{background-position:0 100%}.token-art-moth{background-position:14.28571% 100%}.token-art-rose{background-position:28.57143% 100%}.token-art-star{background-position:42.85714% 100%}.sequence-slots{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;margin:14px 0 5px;padding:9px 12px;background:#16111dd9;border:1px solid #715271;color:#e8d0a5;font-size:13px;flex-wrap:wrap}.sequence-token{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:3px 6px;background:#3b2b43;font-size:12px;color:#e7ccab}.puzzle-reset{font-size:10px;min-height:32px;padding:8px 13px;margin:4px 0}.room-navigation{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px 0}.room-choice{width:100%;display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:55px;text-align:left;padding:12px 15px;font-size:12px}.room-choice[aria-current=true],.room-choice.current{background-position:0 0}.room-choice.locked{opacity:.62}.room-choice small,.lock-indicator{font-size:8px;font-weight:400}.sound-controls{display:grid;gap:14px}.sound-controls>button{width:100%;font-size:12px}.sound-channel{display:grid;grid-template-columns:99px minmax(0,1fr) 34px;gap:5px 12px;align-items:center}.sound-channel button{grid-column:1;grid-row:1/3;min-height:46px;padding:10px;font-size:10px;white-space:nowrap}.sound-channel label{grid-column:2/4;font-size:11px;color:#d1bfd4;margin:0;font-weight:400}.sound-channel input{width:100%;min-width:0;grid-column:2;height:26px;accent-color:#d3b783;cursor:pointer}.sound-channel output{grid-column:3;font-size:10px;color:#c9b4cf;text-align:right}#audio-status{font-size:11px;line-height:1.4;color:#baa6c4;margin:0}#victory-dialog .dialog-prose{font-size:15px}#victory-stats{font-size:11px;color:#c7adce;padding:12px 0;margin:16px 0;border-top:1px solid #665069;border-bottom:1px solid #665069}#replay-button{display:block;margin:15px 0 0}.noscript{position:fixed;z-index:80;inset:25% 15%;padding:35px;background:#241c2d;color:#f5e4c8;border:1px solid #d5b88b;text-align:center}
@media(min-width:1500px){:root{--hud-height:68px;--bottom-height:125px}.game-hud{padding-inline:25px}#room-name{font-size:23px}.game-title{font-size:9px}.hud-actions button{font-size:12px;min-height:44px;padding-inline:21px}.bottom-hud{padding:16px 28px;gap:5px 30px}#story-text{font-size:15px}.inventory-item{width:64px;height:73px}.inventory-item-name{font-size:9px}.item-art{width:32px;height:41px}.objective-text{font-size:11px}}
@media(max-width:950px){:root{--hud-height:61px;--bottom-height:125px}.game-hud{padding:7px 12px;gap:10px}.game-title{font-size:7px;letter-spacing:1.2px}#room-name{font-size:18px}.game-identity{gap:2px 8px}.progress-text,#progress-text{font-size:8px}.hud-actions{gap:2px}.hud-actions button{padding:10px 12px;font-size:10px;min-height:44px}.bottom-hud{gap:5px 15px;padding:12px 15px}#story-text{font-size:12px}.inventory-row{gap:8px}.inventory-label{font-size:15px}.inventory-item{width:49px;height:59px}.inventory-item-name{font-size:7px}.item-art{width:24px;height:31px}#inventory-note{display:none}.objective-text{font-size:9px}dialog{width:min(560px,calc(100vw - 24px))}.dialog-inner{padding:24px 27px}.dialog-inner h2{font-size:28px}.compact-dialog{width:min(460px,calc(100vw - 24px))}}
@media(max-width:600px) and (orientation:portrait){:root{--hud-height:100px;--bottom-height:167px}.game-hud{min-height:var(--hud-height);display:flex;flex-wrap:wrap;gap:6px 10px;align-content:center;padding:8px 10px}.game-identity{width:100%;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px}.game-title{font-size:7px;grid-column:1/-1;letter-spacing:1.5px}#room-name{font-size:18px}.progress-text,#progress-text{font-size:8px;text-align:right}.hud-actions{flex:1 1 100%;justify-content:space-between;gap:3px}.hud-actions button{flex:1;min-width:0;min-height:40px;padding:10px 5px;font-size:9px;letter-spacing:-.1px}.bottom-hud{min-height:var(--bottom-height);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:7px;padding:10px 12px}.story-panel{grid-column:1;grid-row:1;max-width:100%}#story-text{font-size:12px;line-height:1.45}.inventory-row{grid-column:1;grid-row:2;justify-content:space-between;gap:10px}.inventory-label{font-size:15px}.inventory,#inventory{gap:5px}.inventory-item{width:47px;height:52px;padding:3px}.inventory-item-name{font-size:7px}.item-art{width:23px;height:29px}.inventory-empty{height:46px;width:42px}.objective-text{grid-column:1;grid-row:3;margin:0;font-size:9px;line-height:1.3}.story-pagination{margin-top:4px;gap:7px}.story-pagination button{min-height:23px;padding:5px 10px;font-size:8px}.camera-control{width:55px;height:44px;font-size:9px}#camera-left{left:5px}#camera-right{right:5px}#camera-up{top:5px}#camera-down{bottom:22px}#camera-tip{font-size:8px;bottom:4px;max-width:85%}.hotspot{width:52px;height:52px}.hotspot-label{font-size:11px;max-width:190px;padding:6px 10px}dialog{width:calc(100vw - 18px);max-height:calc(100dvh - 16px);padding:6px}.dialog-inner{padding:24px 20px}.dialog-inner h2{font-size:25px;margin-right:49px;margin-bottom:13px;line-height:1.15}.close-button{right:10px;top:12px;min-width:44px;padding:8px 11px;min-height:32px;font-size:9px}.eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:7px}.dialog-prose,#puzzle-prompt,#examine-text{font-size:13px;line-height:1.55;margin-bottom:14px}.welcome-dialog .dialog-inner{padding:28px 24px}.welcome-dialog h2{font-size:31px;margin:0 0 14px}.welcome-dialog .dialog-prose{font-size:15px;line-height:1.5;margin-bottom:14px}.welcome-dialog .start-audio{font-size:10px;line-height:1.4;gap:7px;margin-top:14px}.welcome-actions{flex-direction:column;gap:9px;margin-top:15px}.welcome-actions button{width:100%;min-height:44px;font-size:12px}.welcome-dialog .small-note{font-size:10px;margin-top:15px}.dialog-actions{gap:7px;margin-top:14px}.dialog-actions button{font-size:10px;padding:11px 12px;min-height:44px}.small-note{font-size:10px}.journal-page-content{font-size:13px;line-height:1.55}.journal-page-content h3{font-size:20px;margin-bottom:11px}.journal-page-content li{margin-bottom:8px}.page-controls{margin-top:16px;gap:7px}.page-controls button{min-height:44px;min-width:68px;font-size:10px;padding:10px 12px}.page-controls span{font-size:10px}.examine-scene{max-height:150px;margin-bottom:13px}.puzzle-choices{gap:7px;margin:12px 0}.puzzle-choice{min-height:44px;padding:10px 12px;font-size:12px;min-width:74px}.puzzle-choice.guardian-choice{min-width:105px}.puzzle-choice.book-choice,.puzzle-choice.growth-choice{min-width:80px}.token-art{width:20px;height:27px}.sequence-slots{gap:5px;font-size:11px;padding:8px;min-height:43px;margin:10px 0 4px}.sequence-token{font-size:10px;padding:3px 5px}.puzzle-reset{min-height:32px;font-size:9px;padding:8px 12px}.puzzle-feedback{font-size:11px;line-height:1.35;margin-top:7px}.room-choice{font-size:11px;min-height:52px;padding:11px 12px;flex-direction:column;align-items:flex-start;gap:4px}.room-navigation{gap:7px;margin:14px 0}.sound-controls{gap:12px}.sound-channel{grid-template-columns:89px minmax(0,1fr) 30px;gap:5px 9px}.sound-channel button{font-size:9px}.sound-channel label{font-size:10px}#audio-status{font-size:10px}.menu-actions{gap:8px;margin-top:16px}.menu-actions button,.menu-link{font-size:11px;min-height:46px;padding:11px 12px}#victory-dialog .dialog-prose{font-size:14px}#victory-stats{font-size:10px;margin:14px 0;padding:10px 0}}
@media(max-width:350px) and (orientation:portrait){:root{--hud-height:96px;--bottom-height:157px}.game-hud{padding:6px 8px;gap:5px}#room-name{font-size:16px}.game-title{font-size:6px}.hud-actions button{font-size:8px;min-height:40px;padding-inline:3px}.bottom-hud{padding:9px 10px;gap:6px}#story-text{font-size:11px;line-height:1.4}.inventory-item{width:43px;height:46px}.inventory-item-name{font-size:6px}.item-art{width:19px;height:24px}.inventory-label{font-size:14px}.inventory-empty{height:43px;width:38px}.objective-text{font-size:8px}.dialog-inner{padding:21px 16px}.dialog-inner h2{font-size:23px;line-height:1.15}.dialog-prose,#puzzle-prompt,#examine-text,.journal-page-content{font-size:12px;line-height:1.48}.welcome-dialog .dialog-inner{padding:24px 19px}.welcome-dialog h2{font-size:28px}.welcome-dialog .dialog-prose{font-size:14px}.welcome-dialog .start-audio{font-size:9px}.welcome-dialog .small-note{font-size:9px}.eyebrow{font-size:6px;letter-spacing:1.1px}.examine-scene{max-height:120px;margin-bottom:11px}.puzzle-choice{font-size:11px;min-height:44px;padding:10px}.puzzle-choice.guardian-choice{min-width:92px}.puzzle-choice.book-choice,.puzzle-choice.growth-choice{min-width:71px}.token-art{width:18px;height:24px}.sequence-token{font-size:9px}.sequence-slots{padding:6px;gap:4px}.journal-page-content h3{font-size:18px}.dialog-actions button,.dialog-inner .primary-button{font-size:10px}.page-controls{margin-top:12px}.puzzle-feedback{font-size:10px}.menu-actions{gap:7px}.menu-actions button,.menu-link{font-size:10px;min-height:44px}.sound-channel{grid-template-columns:82px minmax(0,1fr) 28px;gap:4px 7px}.sound-channel button{font-size:8px;padding:8px}.sound-channel label{font-size:9px}.sound-controls>button{font-size:11px}}
@media(max-height:540px) and (orientation:landscape){:root{--hud-height:49px;--bottom-height:81px}.game-hud{min-height:49px;padding:2px 9px;gap:9px}.game-identity{gap:1px 6px}.game-title{font-size:6px;letter-spacing:.8px}#room-name{font-size:15px}.hud-actions{gap:2px}.hud-actions button{font-size:9px;min-height:44px;padding:8px 10px}.progress-text,#progress-text{font-size:7px}.bottom-hud{min-height:81px;padding:7px 12px;gap:3px 12px;grid-template-columns:minmax(0,1fr) auto}#story-text{font-size:11px;line-height:1.4}.objective-text{font-size:8px;margin:0}.inventory-label{display:none}.inventory-row{gap:5px}.inventory-item{width:43px;height:47px;padding:3px}.item-art{width:19px;height:25px}.inventory-item-name{font-size:6px}#inventory-note{display:none}.inventory-empty{width:39px;height:43px}.story-pagination{margin-top:3px}.story-pagination button{min-height:22px;padding:4px 8px;font-size:7px}.camera-control{width:54px;height:44px;min-height:44px;font-size:9px}#camera-tip{font-size:8px;bottom:4px}.hotspot{width:49px;height:49px}.hotspot-label{font-size:10px;padding:5px 9px}dialog{width:min(580px,calc(100vw - 18px));max-height:calc(100dvh - 12px);padding:5px}.dialog-inner{padding:17px 25px}.dialog-inner h2{font-size:23px;margin-bottom:10px;margin-right:50px}.eyebrow{font-size:6px;letter-spacing:1.3px;margin-bottom:5px}.dialog-prose,#puzzle-prompt,#examine-text{font-size:12px;line-height:1.45;margin-bottom:9px}.close-button{right:11px;top:10px;min-height:31px;height:31px;min-width:44px;font-size:9px;padding:7px 10px}.dialog-inner label{font-size:10px;margin:7px 0 4px}.dialog-inner input[type=text]{height:39px;font-size:14px;padding:8px 10px}.dialog-inner .primary-button{min-height:44px;margin-top:7px;padding:10px 15px;font-size:10px}.puzzle-feedback{font-size:10px;line-height:1.3;margin-top:6px}.welcome-dialog{width:min(560px,calc(100vw - 18px))}.welcome-dialog .dialog-inner{padding:18px 28px}.welcome-dialog h2{font-size:29px;line-height:1.05;margin:0 0 9px}.welcome-dialog .dialog-prose{font-size:14px;line-height:1.35;margin:0 0 10px}.welcome-dialog .dialog-prose br{display:none}.welcome-dialog .start-audio{font-size:10px;margin-top:10px}.welcome-actions{flex-direction:row;gap:8px;margin-top:10px}.welcome-actions button{min-width:175px;min-height:44px;font-size:10px;padding:10px 15px}.welcome-dialog .small-note{font-size:9px;margin-top:11px}.compact-dialog{width:min(500px,calc(100vw - 18px))}.menu-actions{gap:7px;margin-top:12px}.menu-actions button,.menu-link{min-height:44px;font-size:10px;padding:10px 15px}.dialog-actions{margin-top:10px;gap:8px}.dialog-actions button{min-height:44px;font-size:10px;padding:10px 14px}.small-note{font-size:9px;line-height:1.4;margin-top:10px}.journal-page-content{font-size:12px;line-height:1.45}.journal-page-content li{margin-bottom:6px}.page-controls{margin-top:10px}.page-controls button{min-height:40px;font-size:10px;padding:9px 14px}.page-controls span{font-size:10px}.journal-page-content h3{font-size:20px;margin-bottom:8px}.examine-scene{float:left;width:39%;max-height:135px;margin:0 16px 0 0}.puzzle-choices{gap:6px;margin:9px 0}.puzzle-choice{font-size:11px;min-height:44px;padding:9px 13px;min-width:80px}.puzzle-choice.guardian-choice,.puzzle-choice.growth-choice,.puzzle-choice.book-choice{min-width:80px}.token-art{width:18px;height:24px}.sequence-slots{min-height:35px;padding:6px 9px;margin:8px 0 3px;font-size:11px}.sequence-token{font-size:10px;min-height:22px;padding:2px 5px}.puzzle-reset{min-height:29px;font-size:9px;padding:7px 11px}.room-navigation{gap:6px;margin:12px 0}.room-choice{font-size:11px;min-height:46px;padding:11px 13px}.sound-controls{gap:9px}.sound-controls>button{min-height:40px;font-size:11px}.sound-channel{grid-template-columns:96px minmax(0,1fr) 32px;gap:2px 10px}.sound-channel button{min-height:40px;font-size:9px}.sound-channel label{font-size:10px}.sound-channel input{height:23px}#audio-status{font-size:9px}#victory-dialog .dialog-prose{font-size:13px}#victory-stats{font-size:10px;margin:11px 0;padding:8px 0}#replay-button{min-height:44px;margin:10px 0 0;font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.pickup-flight{display:none!important}#scene{will-change:auto}}
#game-window{height:var(--game-height,100dvh)}dialog{max-height:calc(var(--game-height,100dvh) - 24px)}#scene-exits{position:absolute;z-index:6;left:13px;right:13px;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:20px;pointer-events:none}.scene-exit{pointer-events:auto;min-height:44px;padding:11px 20px;font-size:11px;max-width:42%;line-height:1.2;background-position:0 0;opacity:.94}.scene-exit:only-child{margin-right:auto}.scene-exit:hover,.scene-exit:focus-visible{opacity:1}
@media(max-width:600px) and (orientation:portrait){#scene-exits{left:8px;right:8px;bottom:24px;gap:10px}.scene-exit{font-size:9px;min-height:44px;max-width:44%;padding:9px 11px}dialog{max-height:calc(var(--game-height,100dvh) - 16px)}}
@media(max-height:540px) and (orientation:landscape){#scene-exits{left:9px;right:9px;bottom:23px}.scene-exit{font-size:9px;padding:10px 14px;min-height:44px}dialog{max-height:calc(var(--game-height,100dvh) - 12px)}.sound-channel{min-height:38px}.sound-channel button{min-height:38px}}
#inventory-note{display:none!important}.inventory-row{min-width:0;max-width:100%}.inventory-placeholder{font-size:10px;color:#ae98b9;max-width:160px;white-space:normal}.inventory-label{flex-shrink:0}.inventory-item{flex-shrink:0}.story-panel,.objective-text{min-width:0}
.hud-actions button,.close-button,.puzzle-reset,.page-controls button,.sound-channel button,.sound-controls>button,.story-pagination button{min-height:44px}.close-button{height:44px;display:flex;align-items:center;justify-content:center}.story-pagination button{min-width:44px}
.menu-open .bottom-hud{display:none}
@media(max-width:600px) and (orientation:portrait){.hud-actions button{font-size:10px}}
@media(max-width:350px) and (orientation:portrait){.hud-actions button{font-size:9px}}
/* Painted location plate and the manor's four guardian seals. */
.game-identity{display:flex;align-items:center;gap:12px;flex:0 1 390px;min-width:210px;max-width:410px;min-height:48px}
.location-nameplate{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 0;min-width:0;height:48px;padding:6px 24px;background-image:url("assets/menu-ui.png");background-repeat:no-repeat;background-size:200% 171.403%;background-position:100% 100%;text-align:center}
.location-nameplate .game-title{display:block;max-width:100%;font:600 6px/1.15 var(--sans);letter-spacing:1.55px;color:#86613f;text-transform:uppercase;margin:0 0 2px}
.location-nameplate #room-name{font:normal 17px/1.06 var(--serif);letter-spacing:-.15px;color:#402a3b;text-shadow:0 1px #fff2d0;max-width:100%;margin:0;white-space:normal;overflow-wrap:normal}
.seal-track{flex:0 0 116px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;height:46px;min-width:0}
.seal-label{font:600 6px/1.15 var(--sans);letter-spacing:1.5px;text-transform:uppercase;color:#d9bc86}
.seal-medallions{display:flex;align-items:center;justify-content:center;gap:3px;max-width:100%;height:36px}
.seal-medallion{display:block;flex:0 0 26px;width:26px;height:35px;opacity:.38;filter:saturate(.32) brightness(.8);transition:opacity .3s,filter .3s}
.seal-medallion .seal-art{display:block;width:26px;height:35px;background-image:url("assets/menu-ui.png");background-repeat:no-repeat;background-size:800% 342.805%;pointer-events:none}
.seal-art-moon{background-position:0% 100%}.seal-art-moth{background-position:14.286% 100%}.seal-art-rose{background-position:28.571% 100%}.seal-art-star{background-position:42.857% 100%}
.seal-medallion.awakened{opacity:1;filter:none}.seal-medallion.awakened .seal-art{filter:drop-shadow(0 0 4px #d4e1c65c)}
.seal-track #progress-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:950px){.game-identity{gap:8px;flex-basis:350px;min-width:200px}.location-nameplate{padding:6px 21px}.location-nameplate #room-name{font-size:14px;line-height:1.08}.location-nameplate .game-title{font-size:5px;letter-spacing:1.1px}.seal-track{flex-basis:106px}.seal-medallion,.seal-medallion .seal-art{width:24px;height:32px}.seal-medallion{flex-basis:24px}.seal-medallions{height:33px;gap:2px}}
@media(max-width:600px) and (orientation:portrait){.game-hud{height:100px;min-height:100px;padding:4px 10px;gap:4px 10px;align-content:center}.game-identity{width:100%;height:44px;min-height:44px;max-width:none;min-width:0;flex:1 1 100%;gap:10px}.location-nameplate{height:44px;padding:5px 24px}.location-nameplate .game-title{font-size:5px;letter-spacing:1.2px;line-height:1.1;margin-bottom:2px}.location-nameplate #room-name{font-size:15px;line-height:1.03;letter-spacing:-.1px}.seal-track{height:44px;flex:0 0 111px;gap:0}.seal-label{font-size:6px;line-height:1.1}.seal-medallions{height:33px;gap:3px}.seal-medallion,.seal-medallion .seal-art{width:25px;height:33px}.seal-medallion{flex-basis:25px}.hud-actions{height:44px;flex:1 1 100%}.hud-actions button{height:44px;min-height:44px}}
@media(max-width:350px) and (orientation:portrait){.game-hud{height:100px;min-height:100px;padding:4px 8px;gap:4px 8px}.game-identity{gap:7px}.location-nameplate{padding:5px 20px}.location-nameplate #room-name{font-size:12px;line-height:1.06}.location-nameplate .game-title{font-size:4.5px;letter-spacing:1px}.seal-track{flex-basis:96px}.seal-label{font-size:5px}.seal-medallions{gap:2px;height:31px}.seal-medallion,.seal-medallion .seal-art{width:22px;height:29px}.seal-medallion{flex-basis:22px}}
@media(max-height:540px) and (orientation:landscape){.game-identity{min-height:44px;height:44px;min-width:185px;gap:8px;flex-basis:335px}.location-nameplate{height:44px;padding:5px 20px}.location-nameplate .game-title{display:block;font-size:5px;line-height:1.1;letter-spacing:1px;margin-bottom:2px}.location-nameplate #room-name{font-size:14px;line-height:1.04}.seal-track{height:42px;flex-basis:96px;gap:0}.seal-label{font-size:5px}.seal-medallions{height:31px;gap:2px}.seal-medallion,.seal-medallion .seal-art{width:22px;height:29px}.seal-medallion{flex-basis:22px}}
/* Channel names already appear on their buttons; keep labels available to assistive tools. */
.sound-channel label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.sound-channel button,.sound-channel input,.sound-channel output{grid-row:1}
.sound-channel button{min-height:44px}
.sound-controls{gap:8px}
/* Keep the compact navigation visible and usable above every in-game panel. */
dialog{top:calc(50% + var(--hud-height)/2);max-height:calc(var(--game-height,100dvh) - var(--hud-height) - 16px)}
