/* Immersive scene controls. The cover/start screen retains its own design. */
.adventure{height:100svh;min-height:480px;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 35%,#283527,#080e12 78%);overflow:hidden}
.adventure-header{flex-shrink:0;height:68px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(#12232b,#0b151c);border-bottom:1px solid #d4a55c45;z-index:2}
.adventure-header .brand{font-size:1.4rem}.place{text-align:center}.place span{display:block;font-size:.75rem;letter-spacing:.08em;color:#a7aaa1}.place strong{display:block;font-family:Georgia,serif;font-size:1rem;font-weight:400;color:#e9cd95;margin-top:5px}.menu-button{border-color:#be985944;color:#e4c58d;font-size:.875rem}
.world-shell{position:relative;flex:1;min-height:0;display:grid;place-items:center;overflow:hidden;background:#070c10}
.world{position:relative;aspect-ratio:1672/941;width:min(100%,calc((100svh - 228px)*1.7768));overflow:hidden;box-shadow:0 0 80px #000;border-left:1px solid #b98d4340;border-right:1px solid #b98d4340;touch-action:manipulation;isolation:isolate}
.world-layer{position:absolute;inset:0;transform-origin:0 0;transition:transform .65s cubic-bezier(.2,.7,.2,1);will-change:transform}
.world-art{width:100%;height:100%;display:block;user-select:none;-webkit-user-drag:none}
.atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;mix-blend-mode:screen}
.warm-light{position:absolute;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#ffb64e45 0%,#ffa52d1c 35%,transparent 70%);animation:lantern-light 4.6s ease-in-out infinite;animation-delay:var(--phase)}
.motes i{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffe1a0;opacity:0;box-shadow:0 0 4px #ffd18b;animation:drift 12s linear infinite;animation-delay:var(--delay)}
@keyframes lantern-light{0%,100%{opacity:.6}23%{opacity:.85}27%{opacity:.7}51%{opacity:1}54%{opacity:.85}78%{opacity:.7}}
@keyframes drift{0%{opacity:0;transform:translate(0,20px)}20%,65%{opacity:.3}100%{opacity:0;transform:translate(var(--drift),-40px)}}
.scene-target{position:absolute;transform:translate(-50%,-50%);border:0;border-radius:15%;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;cursor:zoom-in;min-width:20px;min-height:20px;touch-action:manipulation}
.scene-target:hover{background:radial-gradient(ellipse,#ffdd8a12,transparent 65%);border:0}.person-target{cursor:pointer}.object-target{cursor:grab}.holding-item .scene-target{cursor:crosshair}
.scene-target:focus-visible{outline:2px solid #ffe2a3;outline-offset:-2px;background:#ffda8020}
.target-dot{position:absolute;display:grid;place-items:center;width:28px;height:28px;line-height:1;border-radius:50%;border:1px solid #eed096;background:#111c25d9;color:#ffe0a0;font-size:20px;opacity:0;box-shadow:0 0 16px #ffce6840;transition:opacity .2s;transform:scale(var(--label-scale,1));pointer-events:none}
.target-label{position:absolute;top:60%;left:50%;transform:translateX(-50%) scale(var(--label-scale,1));transform-origin:top center;font-size:.875rem;color:#ffe5af;padding:7px 11px;white-space:nowrap;background:#0d1822ed;border:1px solid #b99759;border-radius:4px;opacity:0;pointer-events:none;box-shadow:0 3px 18px #0008}
.scene-target:hover .target-dot,.scene-target:focus-visible .target-dot,.scene-target:hover .target-label,.scene-target:focus-visible .target-label,.reveal-targets .target-dot{opacity:1}
.scene-target:hover,.scene-target:focus-visible{z-index:5}.hint-flash .target-dot{animation:reveal 3s ease-out}.reveal-targets .target-dot{opacity:1}
@keyframes reveal{0%,80%{opacity:1;box-shadow:0 0 20px #ffd272}100%{opacity:0}}
.back-button{position:absolute;left:18px;top:18px;z-index:8;background:#10202bef;border-color:#c7a469;color:#f5d89e;box-shadow:0 4px 15px #0007;font-size:.875rem}.view-name{position:absolute;top:20px;right:20px;font-family:Georgia,serif;color:#f9dfa9;text-shadow:0 2px 5px #000;font-size:1.1rem;padding:8px;background:#0a151dad;border-radius:4px;pointer-events:none}
.scene-toast{position:absolute;z-index:10;bottom:20px;left:50%;transform:translateX(-50%);width:max-content;max-width:min(690px,calc(100% - 32px));display:flex;align-items:start;gap:18px;padding:15px 16px 15px 21px;color:#f6e5c5;background:#101c26f2;border:1px solid #bd9759;border-radius:7px;box-shadow:0 8px 30px #0009;font-size:1rem;line-height:1.5}.scene-toast button{padding:0 4px;border:0;font-size:1.3rem;color:#d8b879}.scene-toast[hidden],.back-button[hidden],.view-name[hidden],#cancel-item[hidden]{display:none}
.click-ripple{position:absolute;z-index:11;pointer-events:none;width:34px;height:34px;border:1px solid #ffe3a0;border-radius:50%;animation:click-ring .45s ease-out forwards}
@keyframes click-ring{from{opacity:.85;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.8)}}
.adventure-dock{flex-shrink:0;background:linear-gradient(#273039,#15222b 32%,#101a22);border-top:2px solid #a17a40;box-shadow:0 -6px 25px #0006;padding:0 25px 9px;z-index:3}
.selection-line{display:flex;align-items:center;justify-content:center;gap:15px;min-height:32px;padding:5px 0;color:#ddc79f;font-size:.875rem}.selection-line button{font-size:.75rem;padding:3px 7px;color:#f4d895}.dock-row{display:flex;align-items:stretch;gap:14px;max-width:1300px;margin:0 auto}.dock-control{width:88px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:.75rem;color:#ddc398;border:1px solid #a3844c60;border-radius:7px;background:linear-gradient(#31404a60,#121c26);box-shadow:inset 0 0 0 3px #07131d70;min-height:86px;padding:7px}.dock-control>span{font-family:Georgia,serif;font-size:1.75rem}.dock-control[aria-pressed=true]{border-color:#ffe0a0;background:#a47d3230}.hint-control{border-radius:50%;width:86px;color:#ffe0a1;box-shadow:inset 0 0 0 3px #07131d70,0 0 16px #be8c3320}.hint-control img{height:43px;width:43px;object-fit:contain;filter:drop-shadow(0 2px 5px #000)}
.inventory-strip{flex:1;min-width:0;border:1px solid #8b70464d;border-radius:7px;background:#08131bc9;box-shadow:inset 0 2px 14px #0008;overflow:hidden}.pocket-items{display:flex;align-items:stretch;gap:6px;overflow-x:auto;padding:6px;min-height:86px;scrollbar-width:thin;scrollbar-color:#887047 #111c23}.pocket-item{position:relative;flex:0 0 102px;border:1px solid #b8985633;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:.75rem;line-height:1.2;padding:5px;min-height:74px;background:linear-gradient(#32404b55,#12202a);color:#e6dbc3;transition:background .2s,border-color .2s;box-shadow:inset 0 0 0 2px #09131b33}.inventory-symbol{font-size:1.85rem;line-height:1;color:#dfbd79;font-family:Georgia,serif;text-shadow:0 2px 5px #000}.pocket-item small{position:absolute;right:5px;top:2px;font-size:1rem;color:#eed29c}.pocket-item.selected{border-color:#f9d58d;background:#9c793338;box-shadow:inset 0 0 10px #dfb65d15,0 0 7px #dfb65d30}.pocket-item.just-found{animation:found .65s ease-out}.pocket-empty{display:flex;align-items:center;justify-content:center;gap:13px;flex:1;font-size:.875rem;color:#9a9f9d}.pocket-empty>span{color:#a68953;font-size:1.5rem}.dock-caption{display:flex;justify-content:space-between;gap:20px;padding-top:6px;font-size:.75rem;color:#848e94}.dock-caption>span:first-child{font-family:Georgia,serif;font-style:italic}
@keyframes found{0%{transform:translateY(12px) scale(.8);opacity:0;box-shadow:0 0 25px #e9bf66}100%{transform:none;opacity:1}}
.game-dialog{width:min(660px,calc(100% - 32px));max-width:660px;max-height:85svh;padding:30px;background:linear-gradient(135deg,#27313a,#10212c 70%);border:1px solid #c9a362;border-radius:9px;box-shadow:0 0 0 5px #0a131a,0 0 0 6px #7e653840,0 25px 100px #000b}.game-dialog::backdrop{background:#02080e9c;backdrop-filter:blur(2px)}.game-dialog h2{font-size:2rem;margin-bottom:14px;color:#f5d695}.dialog-heading{display:flex;align-items:center;gap:18px;margin-bottom:18px;padding-right:22px}.dialog-heading h2{margin:5px 0 0}.dialog-portrait{width:82px;height:90px;flex-shrink:0;background-size:700% auto;border:1px solid #bb9958;border-radius:45% 45% 12% 12%;box-shadow:0 5px 15px #0005}.dialog-x{position:absolute;right:12px;top:10px;font-size:1.5rem;line-height:1;border:0;color:#d6bd8b;padding:5px 8px}.game-dialog p{font-size:1rem;line-height:1.65;color:#e2dfd4}.dialog-options{display:flex;flex-direction:column;gap:9px;margin:20px 0}.dialog-options button{display:flex;justify-content:space-between;gap:15px;text-align:left;color:#efd5a3;padding:12px 15px;background:#07162260;border-color:#bc965b50}.dialog-options .asked{color:#a8afa8}.leave-dialog{font-size:.875rem;color:#babbaa;border:0;padding-left:0}.menu-options{display:flex;flex-direction:column;gap:12px}.journal-list{list-style:none;padding:0;color:#d8c69e;font-size:1rem;line-height:2}
.still .atmosphere,.paused .atmosphere{animation:none}.still .atmosphere{display:none}.paused .atmosphere *{animation-play-state:paused}.still .world-layer{transition:none}.still .just-found,.still .click-ripple{animation:none}
@media(max-width:800px){.adventure-header{height:58px;padding:0 14px}.place span{font-size:.65rem}.place strong{font-size:.875rem}.adventure-header .brand{font-size:1.1rem}.adventure-dock{padding:0 10px 7px}.dock-row{gap:7px}.dock-control{width:67px;font-size:.75rem}.hint-control{width:67px}.pocket-item{flex-basis:88px}.world{width:min(100%,calc((100svh - 218px)*1.7768))}.selection-line{font-size:.75rem}.dock-caption{font-size:.65rem}}
@media(max-width:600px) and (orientation:portrait){.adventure{min-height:550px}.adventure-header .brand{font-size:1.1rem}.place{display:none}.world{width:100%;aspect-ratio:1672/941}.world-art{object-fit:fill}.world-shell{background:radial-gradient(ellipse,#2c3025,#071018)}.adventure-dock{padding:0 8px 10px}.selection-line{min-height:52px;font-size:.8125rem;text-align:center;flex-wrap:wrap;gap:0;padding:7px 4px}.dock-row{flex-wrap:wrap;justify-content:center;gap:8px}.inventory-strip{order:-1;flex:1 0 100%}.pocket-items{min-height:89px}.pocket-item{flex-basis:87px}.dock-control{min-height:48px;width:auto;flex:1;flex-direction:row;gap:7px;border-radius:5px}.dock-control>span{font-size:1.3rem}.hint-control img{width:31px;height:31px}.dock-caption>span:first-child{display:none}.dock-caption{justify-content:center;font-size:.75rem}.scene-toast{bottom:10px;font-size:.875rem;max-height:calc(100% - 60px);overflow-y:auto;line-height:1.45;padding:12px}.back-button{left:8px;top:8px;font-size:.75rem;padding:8px}.view-name{font-size:.75rem;right:8px;top:8px}.game-dialog{padding:24px 20px}.dialog-heading{gap:12px}.dialog-heading .eyebrow{font-size:.65rem}.game-dialog h2{font-size:1.8rem}}
@media(max-height:600px) and (orientation:landscape){.adventure{min-height:320px}.adventure-header{height:43px}.adventure-dock{padding-bottom:3px}.selection-line{min-height:26px;font-size:.75rem}.dock-caption{display:none}.dock-control{min-height:62px;width:64px}.pocket-items{min-height:64px;padding:3px}.pocket-item{min-height:58px;flex-basis:85px;font-size:.65rem}.inventory-symbol{font-size:1.3rem}.hint-control img{height:32px;width:32px}.world{width:min(100%,calc((100svh - 147px)*1.7768))}.game-dialog{max-height:90svh}}
@media(prefers-reduced-motion:reduce){.atmosphere{display:none}.world-layer{transition:none}.click-ripple{display:none}.just-found{animation:none!important}.hint-flash .target-dot{animation:none;opacity:1}}
/* Painted tavern interface: the scene is the stage, controls float above it. */
.adventure{position:relative;min-height:420px;background:#131b1b;isolation:isolate}
.adventure-header{position:absolute;inset:0 0 auto;height:104px;padding:17px 28px 27px;align-items:flex-start;background:linear-gradient(#050d16d9,#07101975 70%,transparent);border:0;z-index:12;pointer-events:none}
.adventure-header button{pointer-events:auto}.adventure-header .brand{margin-top:8px;font-size:1.65rem;line-height:1.15;text-shadow:0 2px 9px #000;background:none;box-shadow:none;border:0;color:#f6e6c3}.adventure-header .brand em{display:block;font-size:1.2rem;text-align:left;margin-top:2px}
.place{padding:0 32px 11px;max-width:50%;position:absolute;left:50%;transform:translateX(-50%);text-shadow:0 2px 5px #000}.place span{font-size:.6875rem;color:#e2c79b;letter-spacing:.18em;text-transform:uppercase}.place strong{font-family:'Libre Caslon Display',Georgia,serif;font-size:1.9rem;line-height:1.2;color:#ffdfa2;margin-top:4px;white-space:nowrap}.place small{display:block;font-size:.6875rem;color:#cfb98e;margin-top:5px;letter-spacing:.035em}.place::after{content:'';display:block;height:1px;background:linear-gradient(90deg,transparent,#d8b370,transparent);margin:9px auto 0;width:85%}
.menu-button{margin-top:5px;margin-left:auto;border:1px solid #bc93585c;color:#f8d89e;background:linear-gradient(#332a2090,#0c151cd9);box-shadow:inset 0 0 0 3px #080e1640,0 3px 12px #0004;border-radius:5px;padding:10px 15px}
.world-shell{position:absolute;inset:0;display:block;background:#172025;overflow:hidden}
.world-shell::before{content:'';position:absolute;inset:-35px;background:url('assets/tavern.png') center/cover;filter:blur(22px) brightness(.5);transform:scale(1.04);pointer-events:none}
.world{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border:0;box-shadow:none;overflow:hidden}
.world-layer{inset:auto;left:0;top:0;transform-origin:0 0;transition:transform .75s cubic-bezier(.2,.7,.2,1);will-change:transform}
.world-art{object-fit:fill;filter:saturate(1.08) contrast(1.035)}
.world::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 110px #02071165;background:linear-gradient(0deg,#060e1780,transparent 23%,transparent 83%,#04080b20)}
.warm-light{background:radial-gradient(ellipse,#ffc25265,#ee982824 35%,transparent 70%)}
.back-button{top:111px;left:24px;background:linear-gradient(#302b22ed,#111a20f2);border-color:#b79859;border-radius:5px;box-shadow:inset 0 0 0 3px #b79a4930,0 4px 14px #0008}.view-name{top:110px;right:24px;font-size:1.1rem;background:#14202ac9;border:1px solid #bda16955;font-family:Georgia,serif}
.scene-toast{bottom:calc(var(--dock-height,160px) + 15px);border-color:#c6a266;padding:16px 18px 16px 22px;background:linear-gradient(115deg,#342b20f5,#0e1a22f7 40%);box-shadow:inset 0 0 0 3px #b79a4930,0 8px 35px #0009;font-family:Georgia,serif;border-radius:5px;font-size:1.05rem;line-height:1.55}
.adventure-dock{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:min(1130px,calc(100% - 54px));border:0;box-shadow:none;padding:0;background:none;z-index:14;pointer-events:none}
.adventure-dock button,.inventory-strip{pointer-events:auto}.selection-line{min-height:28px;width:fit-content;max-width:92%;margin:0 auto 7px;padding:6px 18px;color:#f4dfb5;font-family:Georgia,serif;text-shadow:0 2px 4px #000;background:linear-gradient(90deg,transparent,#081019c9 15%,#081019c9 85%,transparent);border-radius:20px;font-size:.875rem}.selection-line button{pointer-events:auto;background:#101b23;border-color:#b69a6350}
.dock-row{gap:12px;align-items:center;min-height:116px;padding:13px 20px;background:url('assets/inventory-tray.png') center/100% 100%;border-radius:12px;box-shadow:0 8px 28px #000b,0 1px 0 #d1aa6644;position:relative}
.inventory-strip{position:relative;align-self:stretch;min-width:0;border:0;box-shadow:none;background:transparent;border-radius:0;padding:0 3px}.pocket-items{height:90px;min-height:90px;align-items:center;justify-content:flex-start;gap:7px;padding:3px;scrollbar-width:thin;scrollbar-color:#bca06455 transparent}.pocket-item{height:83px;min-height:83px;flex:0 0 88px;padding:2px 4px 4px;border-radius:5px;background:radial-gradient(ellipse at 50% 30%,#b7874030,transparent 73%);border:1px solid #a082453d;box-shadow:inset 0 0 0 2px #060f132f;color:#f3e2bb;text-shadow:0 1px 3px #000;font-family:Georgia,serif;font-size:.75rem;gap:1px}.pocket-item:hover{background:radial-gradient(ellipse,#ca9b4a45,transparent);border-color:#dfbd70a8}.pocket-item.selected{background:radial-gradient(ellipse,#e6b85155,#14242680);border-color:#ffdc83;box-shadow:inset 0 0 10px #e9bb4840,0 0 14px #ffd06424}.pocket-item small{font-family:Georgia,serif;color:#ffdf8a;right:4px;top:2px;text-shadow:0 1px 3px #000}.pocket-item>span:not(.item-art){line-height:1.15;max-width:100%}
.item-art{display:block;flex-shrink:0;width:58px;height:58px;background-image:url('assets/inventory-items.png');background-size:400% 350%;background-position:var(--sprite-x) var(--sprite-y);background-repeat:no-repeat;filter:drop-shadow(0 4px 3px #0008)}
.empty-slot{flex:1;min-width:50px;height:72px;border:1px solid #b1914940;border-radius:4px;background:linear-gradient(135deg,#06121440,#05111e88);box-shadow:inset 0 2px 7px #0007;pointer-events:none}.empty-inventory-note{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;font-family:Georgia,serif;font-style:italic;color:#c6b899;font-size:.875rem;text-shadow:0 2px 3px #000;pointer-events:none;padding:6px 17px;background:#0a1c22c9;border-radius:15px}
.dock-control{position:relative;min-height:91px;flex-shrink:0;width:82px;gap:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;overflow:visible;color:#efd8a8}.dock-control:hover{background:transparent;border:0;filter:brightness(1.15)}.dock-control .control-label{font-family:Georgia,serif;font-size:.875rem;color:#efd8a8;text-shadow:0 2px 4px #000;line-height:1.2}.dock-control .journal-art{height:67px;width:67px;transform:rotate(-9deg);transition:transform .2s;filter:drop-shadow(2px 5px 4px #000b)}.journal-button:hover .journal-art{transform:rotate(-4deg) translateY(-3px)}
.dock-control .spot-emblem{display:grid;place-items:center;width:52px;height:52px;font-family:Georgia,serif;font-size:2.8rem;color:#efd296;border:1px solid #cba66d9c;border-radius:50%;background:radial-gradient(ellipse at 35% 25%,#49616a,#10232d 60%,#09121b);box-shadow:inset 0 0 0 3px #091320,inset 0 0 0 4px #997841,0 3px 8px #000a;margin:1px 0 8px;line-height:1;transform:rotate(-15deg)}.dock-control[aria-pressed=true]{background:none}.dock-control[aria-pressed=true] .spot-emblem{box-shadow:inset 0 0 0 3px #091320,inset 0 0 0 4px #cda763,0 0 19px #ffc55488}
.hint-control{width:82px;isolation:isolate}.hint-control::before{content:'';position:absolute;width:76px;height:76px;top:-4px;left:3px;z-index:-1;border-radius:50%;border:2px solid #d3a65b;background:radial-gradient(ellipse at 40% 20%,#66808b,#173846 50%,#071721 80%);box-shadow:inset 0 0 0 3px #10232a,inset 0 0 0 4px #a27842,0 5px 11px #000b,0 0 20px #e4ab4130}.hint-control img{height:79px;width:73px;margin-top:-11px;transform:rotate(8deg);filter:drop-shadow(3px 5px 4px #0009);transition:transform .2s}.hint-control:hover img{transform:rotate(13deg) translateY(-2px)}.hint-control .control-label{padding-top:4px}
.dock-caption{justify-content:center;padding-top:5px;color:#c4b397;font-size:.625rem;text-shadow:0 1px 3px #000}.dock-caption>span:first-child{display:none}
.game-dialog{background:linear-gradient(115deg,#322b21f7,#142b34f7 45%,#10202bf7);border:1px solid #d1ab69;box-shadow:inset 0 0 0 5px #10232d,inset 0 0 0 6px #a280444f,0 0 0 2px #473825,0 25px 100px #000c;padding:34px}.game-dialog h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:2.4rem}.game-dialog p{font-family:Georgia,serif;line-height:1.75;color:#efe3cd}.dialog-portrait{border:2px solid #c89c56;box-shadow:0 0 0 3px #14232e,0 0 0 4px #aa864950,0 4px 15px #0007}.dialog-options button{background:linear-gradient(90deg,#a97f3228,#132a3440);color:#f6ddb1;border-color:#bd945455;font-family:Georgia,serif;border-radius:4px}.game-dialog::backdrop{background:#02080e78;backdrop-filter:blur(3px)}
@media(max-width:1000px){.adventure-dock{width:calc(100% - 28px)}.dock-row{padding:12px 14px;gap:7px}.dock-control{width:69px}.hint-control{width:73px}.pocket-item{flex-basis:78px}.adventure-header{padding:14px 18px}.place strong{font-size:1.65rem}}
@media(max-width:650px) and (orientation:portrait){.adventure{min-height:550px}.adventure-header{height:90px;padding:13px 15px}.adventure-header .brand{font-size:1.3rem}.adventure-header .brand em{font-size:1rem}.place{display:none}.menu-button{font-size:.875rem;padding:9px 12px}.world{width:100%;height:100%;aspect-ratio:auto}.world-shell{background:#18272d}.adventure-dock{width:calc(100% - 16px);bottom:8px}.selection-line{max-width:98%;font-size:.8125rem;min-height:28px;padding:5px 12px;margin-bottom:6px}.dock-row{padding:13px 13px 9px;gap:5px;flex-wrap:wrap;justify-content:center;background-size:100% 100%}.inventory-strip{order:-1;flex:1 0 100%;padding:0}.pocket-items{height:86px;min-height:86px}.pocket-item{flex-basis:75px;height:80px;min-height:80px}.item-art{height:53px;width:53px}.empty-slot{height:68px;min-width:32px}.empty-inventory-note{font-size:.8125rem}.dock-control{width:31%;flex:none;min-height:52px;flex-direction:row;gap:6px}.dock-control .journal-art{height:45px;width:45px}.dock-control .spot-emblem{width:36px;height:36px;font-size:2rem;margin:0}.dock-control .control-label{font-size:.75rem}.hint-control img{height:53px;width:48px;margin:0}.hint-control::before{width:42px;height:42px;top:4px;left:calc(50% - 34px)}.hint-control .control-label{padding:0}.dock-caption{font-size:.625rem;padding-top:5px}.back-button{top:91px;left:9px;font-size:.75rem}.view-name{top:92px;right:9px;font-size:.75rem}.scene-toast{max-width:calc(100% - 20px);padding:12px 15px;font-size:.9375rem;max-height:35svh}.game-dialog{padding:28px 22px}.game-dialog h2{font-size:2rem}}
@media(max-height:620px) and (orientation:landscape){.adventure{min-height:320px}.adventure-header{height:65px;padding:8px 20px}.adventure-header .brand{font-size:1.2rem;margin-top:0}.adventure-header .brand em{display:inline;font-size:1.1rem}.place span,.place small{display:none}.place strong{font-size:1.45rem}.place::after{margin-top:4px}.menu-button{margin-top:0;padding:7px 12px}.adventure-dock{bottom:5px;width:min(1000px,calc(100% - 40px))}.dock-row{min-height:79px;padding:8px 15px}.selection-line{font-size:.75rem;margin-bottom:3px;padding:3px 12px;min-height:22px}.pocket-items{height:66px;min-height:66px}.pocket-item{height:61px;min-height:61px;flex-basis:78px;font-size:.6875rem}.item-art{width:42px;height:42px}.empty-slot{height:53px}.dock-control{min-height:64px;width:65px}.dock-control .journal-art{height:48px;width:48px}.dock-control .spot-emblem{height:40px;width:40px;font-size:2rem;margin:0 0 5px}.dock-control .control-label{font-size:.75rem}.hint-control::before{height:53px;width:53px;left:5px;top:0}.hint-control img{width:53px;height:58px;margin-top:-7px}.dock-caption{display:none}.back-button{top:63px}.view-name{top:63px}.world{width:100%;height:100%;aspect-ratio:auto}}
@media(prefers-reduced-motion:reduce){.hint-control:hover img{transform:rotate(8deg)}.journal-button:hover .journal-art{transform:rotate(-9deg)}}
.dock-row{pointer-events:auto}
.adventure-header .brand{display:flex;align-items:center;gap:18px;text-align:left}
.adventure-header .game-logo{width:65px;height:51px;opacity:.86;border-left:1px solid #caa35b38}
.adventure-header .game-logo img{width:78px;height:78px;left:-6px;top:-13px}
@media(max-width:1000px){.adventure-header .brand{gap:10px}.adventure-header .game-logo{width:52px;height:41px}.adventure-header .game-logo img{width:63px;height:63px;left:-5px;top:-10px}}
@media(max-width:650px) and (orientation:portrait){.adventure-header .brand{gap:12px}.adventure-header .game-logo{width:56px;height:44px}.adventure-header .game-logo img{width:67px;height:67px;left:-5px;top:-11px}}
@media(max-height:620px) and (orientation:landscape){.adventure-header .game-logo{width:46px;height:36px}.adventure-header .game-logo img{width:55px;height:55px;left:-4px;top:-9px}}
.living-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen;z-index:1}
.living-atmosphere[hidden]{display:none}
#targets{position:absolute;inset:0;z-index:2}
.top-actions{display:flex;align-items:center;gap:10px;margin-left:auto;pointer-events:auto}
.top-actions .menu-button{margin-left:0}
.motion-button{font-size:.75rem;color:#edc886;border:1px solid #c8a66565;background:#0b1720d9;border-radius:20px;padding:8px 12px;margin-top:5px;white-space:nowrap;box-shadow:0 3px 12px #0004}
.motion-button[aria-pressed=false]{color:#c4c8c9;border-color:#7b879a88}
@media(max-width:1000px){.top-actions{flex-direction:column-reverse;align-items:flex-end;gap:5px}.motion-button{margin:0;padding:6px 10px}}
@media(max-height:620px) and (orientation:landscape){.top-actions{flex-direction:row;align-items:center}.motion-button{margin-top:0}.place{max-width:35%}}
.living-characters{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;filter:saturate(1.08) contrast(1.035);z-index:0}
.living-characters[hidden]{display:none}
.game-publisher{position:absolute;left:14px;bottom:16px;width:76px;height:59px;z-index:15;opacity:.86;pointer-events:none}
.game-publisher img{width:91px;height:91px;left:-7px;top:-15px}
@media(max-width:1320px){.adventure-dock{bottom:46px}.game-publisher{left:12px;bottom:5px;width:48px;height:37px}.game-publisher img{width:58px;height:58px;left:-5px;top:-10px}}
@media(max-width:650px) and (orientation:portrait){.adventure-dock{bottom:43px}.game-publisher{width:43px;height:33px;bottom:5px;left:12px}.game-publisher img{width:52px;height:52px;left:-4px;top:-9px}}
@media(max-height:620px) and (orientation:landscape){.adventure-dock{width:calc(100% - 128px);bottom:5px}.game-publisher{left:7px;bottom:9px;width:48px;height:37px}}
.audio-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0 8px;border-top:1px solid #d8b77433;font-size:1rem}
.audio-row input{width:23px;height:23px;accent-color:#dfb564;cursor:pointer}
.audio-slider{display:grid;grid-template-columns:1fr 1.2fr 50px;gap:12px;align-items:center;margin:10px 0 20px;font-size:.875rem}.audio-slider input{width:100%;accent-color:#dfb564;cursor:pointer}.audio-slider output{text-align:right;color:#e8c88e}
.game-dialog .audio-note{font-family:'DM Sans',sans-serif;font-size:.875rem;color:#b9c3c5;margin-top:18px}.voice-choice{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:15px;font-size:.875rem;margin:9px 0}.voice-choice select{width:100%;min-width:0;padding:8px;background:#122630;border:1px solid #b79b6355;border-radius:4px;color:#eddfc4;font:inherit}#audio-status{font-size:.875rem;color:#efd18c;margin:10px 0}#audio-status:empty{display:none}
@media(max-width:1000px){.top-actions{display:grid;grid-template-columns:auto auto;gap:6px}.top-actions #motion-toggle{grid-column:1 / -1;grid-row:2;justify-self:end}.top-actions #audio-settings{grid-column:1;grid-row:1}.top-actions #menu{grid-column:2;grid-row:1}}
@media(max-width:600px){.audio-slider{grid-template-columns:1fr 50px}.audio-slider label{grid-column:1/-1}.voice-choice{grid-template-columns:1fr}.top-actions{gap:4px}.top-actions .motion-button{font-size:.6875rem;padding:6px 9px}}
