@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-gallery-wall: #c7ced4;--color-museum-wall: var(--color-gallery-wall);--bg1: var(--color-gallery-wall);--bg2: #d0d7dc;--bg3: #b6c0c9;--bg-deep: #adb8c1;--text: #12171b;--text-strong: #0a0e11;--text-muted: #4a5568;--text-inverse: #ffffff;--glass-bg: rgba(255, 255, 255, .76);--glass-bg-strong: rgba(255, 255, 255, .9);--glass-border: rgba(255, 255, 255, .5);--glass-border-strong: rgba(255, 255, 255, .82);--glass-blur: 26px;--accent: #11181d;--accent-soft: rgba(17, 24, 29, .08);--focus-ring: rgba(17, 24, 29, .85);--shadow-soft: 0 8px 32px rgba(0, 0, 0, .08);--shadow-medium: 0 12px 40px rgba(0, 0, 0, .14);--shadow-strong: 0 22px 60px rgba(0, 0, 0, .22);--radius-lg: 34px;--radius-md: 22px;--radius-sm: 14px;--radius-pill: 999px;--ease-out: cubic-bezier(.22, .78, .32, 1);--ease-gallery-out: cubic-bezier(.16, 1, .3, 1);--ease-gallery-in-out: cubic-bezier(.76, 0, .24, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-control: .18s;--dur-content: .5s;--dur-panel: .55s;--dur-timeline: .42s;--dur-reveal: .9s;--dur-fast: var(--dur-control);--dur-base: var(--dur-content);--dur-slow: var(--dur-reveal);--font: "Inter", system-ui, -apple-system, sans-serif;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--chrome-top: max(72px, calc(56px + var(--safe-top)));--chrome-bottom: max(200px, calc(180px + var(--safe-bottom)));--dur-chrome-reveal: .28s;--dur-chrome-hide: .52s;--dur-peek-pulse: 2s;--ease-chrome-reveal: cubic-bezier(0, 0, .2, 1);--ease-chrome-hide: cubic-bezier(.4, 0, 1, 1);--chrome-timeline-hide-offset: 14px;--chrome-infopanel-hide-offset: -22px;--chrome-nav-hide-offset: 10px;--chrome-peek-bg: rgba(255, 255, 255, .58);--chrome-peek-width-v: 10px;--chrome-peek-height-h: 14px;--chrome-peek-length-v: min(260px, 26vh);--chrome-peek-length-h: min(520px, 52vw);--chrome-peek-touch-target: 44px;--chrome-affordance-color: rgba(255, 255, 255, .9);--chrome-affordance-size: 22px;--chrome-affordance-weight: 3.5px}html,body{width:100%;height:100%;height:100dvh;overflow:hidden;background:var(--color-gallery-wall);font-family:var(--font);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;height:100%;position:relative;background:var(--color-gallery-wall)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}canvas{display:block;position:fixed;inset:0;width:100%!important;height:100%!important;touch-action:none}.gallery-canvas{transition:opacity 1.4s var(--ease-gallery-out),filter 1.4s var(--ease-gallery-out),transform 1.4s var(--ease-gallery-out)}.gallery-canvas--loading{opacity:0;filter:blur(12px);transform:scale(1.015)}.gallery-canvas--ready{opacity:1;filter:blur(0);transform:scale(1)}.topbar__room-view-btn{border-color:#ffe7a480}.topbar__room-view-btn[aria-pressed=true]{border-color:#ffe7a4f2;background:#3a3323;box-shadow:0 0 0 2px #ffe7a44d,var(--shadow-medium)}.topbar__room-view-btn[hidden]{display:none}.gallery-room-view{position:fixed;inset:0;z-index:1000;overflow:hidden;background:#c7ced4}.gallery-room-view[hidden]{display:none}.gallery-room-view__scene{position:absolute;inset:0;overflow:hidden;transform-origin:0 0;touch-action:none;user-select:none}.gallery-room-view__scene.is-camera-moving{will-change:transform}canvas.gallery-canvas.is-fine-pointer.is-pan-available,.gallery-room-view__scene.is-fine-pointer.is-pan-available{cursor:grab}canvas.gallery-canvas.is-fine-pointer.is-panning,.gallery-room-view__scene.is-fine-pointer.is-dragging{cursor:grabbing}.gallery-room-view__background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;user-select:none}.gallery-room-view__artwork-frame{position:absolute;inset:0 auto auto 0;max-width:none;transform-origin:0 0;perspective:1200px;pointer-events:auto}.gallery-room-view__artwork-frame[hidden]{display:none}.gallery-room-view__artwork-frame:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}.gallery-room-view__artwork{display:block;width:100%;height:100%;object-fit:fill;transform-origin:center;transform-style:preserve-3d;pointer-events:none;filter:drop-shadow(1px 2px 3px rgba(15,20,24,.42)) drop-shadow(4px 7px 10px rgba(15,20,24,.26)) drop-shadow(9px 14px 20px rgba(15,20,24,.17));transition:transform 1.1s cubic-bezier(.22,1,.36,1),filter .7s cubic-bezier(.22,1,.36,1);--artwork-tilt-x: 0deg;--artwork-tilt-y: 0deg}.gallery-room-view__utilities{position:absolute;top:calc(var(--safe-top) + 16px);right:calc(var(--safe-right) + 16px);z-index:1002;display:flex;align-items:center;gap:8px}.gallery-room-view__utilities .audio-controls,.gallery-room-view__utilities .fullscreen-btn,.gallery-room-view__utilities .prefs--embedded{position:relative;inset:auto;z-index:auto}.gallery-room-view__utilities .fullscreen-btn{flex:0 0 44px}.gallery-room-view__utilities .prefs__panel{top:calc(100% + 8px);right:0}.gallery-room-view__header{position:absolute;top:calc(var(--safe-top) + 16px);left:calc(var(--safe-left) + 16px);z-index:1002;display:flex;align-items:center;gap:10px}.gallery-room-view__back{flex:0 0 auto}.gallery-room-view__room-controls{display:flex;align-items:center;gap:8px;min-height:48px;padding:4px 8px 4px 12px;border:1px solid var(--glass-border);border-radius:var(--radius-pill);background:var(--glass-bg);box-shadow:var(--shadow-soft);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.gallery-room-view__room-label{color:var(--text-muted);font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.gallery-room-view__select{max-width:220px;min-height:38px;padding:0 30px 0 10px;border:1px solid var(--glass-border-strong);border-radius:var(--radius-pill);background:var(--glass-bg-strong);color:var(--text-strong);font:inherit;cursor:pointer}.gallery-room-view__select:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.gallery-room-view__timeline-host{display:contents}.gallery-room-view__timeline{z-index:1001}.gallery-room-view .zoom-controls.gallery-room-view__zoom-controls{z-index:1002}.gallery-room-view__motion-toggle{display:none}.gallery-room-view .zoom-controls__btn:disabled{cursor:default;opacity:.48}.gallery-room-view .zoom-controls__btn:disabled:hover{background:#ffffff8c;transform:none}.gallery-room-view__scene.is-sensor-tilt .gallery-room-view__artwork{transition:filter .7s cubic-bezier(.22,1,.36,1)}.gallery-room-view__artwork-frame:is(:hover,:focus-visible) .gallery-room-view__artwork,.gallery-room-view__scene.has-artwork-proximity .gallery-room-view__artwork-frame .gallery-room-view__artwork{transform:perspective(1200px) rotateX(var(--artwork-tilt-x)) rotateY(var(--artwork-tilt-y)) scale3d(1.002,1.002,1);filter:drop-shadow(1px 2px 3px rgba(15,20,24,.48)) drop-shadow(5px 8px 12px rgba(15,20,24,.3)) drop-shadow(10px 15px 22px rgba(15,20,24,.19))}.gallery-room-view__status{position:absolute;top:calc(var(--safe-top) + 16px);left:16px;z-index:1;width:fit-content;max-width:min(520px,100vw - 32px);padding:12px 16px;border-radius:var(--radius-pill);background:#12171b;color:#fff;font-size:14px;text-align:center}.gallery-room-view__status:empty{display:none}@media (max-width: 599px){.gallery-room-view__header{align-items:center;flex-direction:row;gap:6px;top:calc(var(--safe-top) + 10px);left:calc(var(--safe-left) + 10px);max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 20px);min-width:0}.gallery-room-view__room-controls{flex:0 1 auto;min-width:0}.gallery-room-view__select{min-width:0;flex:1 1 auto}.gallery-room-view__utilities{top:calc(var(--safe-top) + 62px)}.gallery-room-view__room-controls{min-height:44px;gap:4px;padding:2px 5px 2px 8px}.gallery-room-view__room-label{display:none}.gallery-room-view__back{padding:0 10px}.gallery-room-view__select{max-width:100%}.gallery-room-view .zoom-controls.gallery-room-view__zoom-controls{right:calc(16px + var(--safe-right))}}@media (min-width: 600px) and (max-width: 899px){.gallery-room-view__utilities{top:calc(var(--safe-top) + 72px)}}@media (min-width: 600px) and (max-height: 500px){.gallery-room-view__header,.gallery-room-view__utilities{top:calc(var(--safe-top) + 8px)}.gallery-room-view__room-controls{min-height:40px}.gallery-room-view__back{min-height:40px;padding:0 12px}.gallery-room-view .zoom-controls.gallery-room-view__zoom-controls{right:calc(var(--safe-right) + 16px);bottom:calc(var(--safe-bottom) + 164px);flex-direction:row;gap:4px;padding:6px}}@media (max-width: 599px) and (max-height: 500px){.gallery-room-view__header{align-items:center;flex-direction:row;gap:6px;top:calc(var(--safe-top) + 8px)}.gallery-room-view__utilities{top:calc(var(--safe-top) + 64px)}.gallery-room-view__room-controls{min-height:40px;gap:4px;padding:2px 5px 2px 8px}.gallery-room-view__room-label{display:none}.gallery-room-view__select{max-width:min(145px,100vw - 150px);min-height:34px;padding-right:24px}.gallery-room-view__back{min-height:40px;padding:0 10px}.gallery-room-view__status{top:calc(var(--safe-top) + 112px)}.gallery-room-view .zoom-controls.gallery-room-view__zoom-controls{right:calc(var(--safe-right) + 16px);bottom:calc(var(--safe-bottom) + 164px);flex-direction:row;gap:4px;padding:6px}}@media (any-pointer: coarse){.gallery-room-view__motion-toggle{position:absolute;right:calc(100% + 8px);bottom:8px;display:flex}}@media (prefers-reduced-motion: reduce){.gallery-room-view__artwork,.gallery-room-view__select{transition:none}.gallery-room-view__artwork-frame:is(:hover,:focus-visible) .gallery-room-view__artwork{transform:none}.gallery-room-view__scene.has-artwork-proximity .gallery-room-view__artwork-frame .gallery-room-view__artwork{transform:none}}:root[data-motion=reduced] .gallery-room-view__artwork,:root[data-motion=reduced] .gallery-room-view__select{transition:none}:root[data-motion=reduced] .gallery-room-view__artwork-frame:is(:hover,:focus-visible) .gallery-room-view__artwork{transform:none}:root[data-motion=reduced] .gallery-room-view__scene.has-artwork-proximity .gallery-room-view__artwork-frame .gallery-room-view__artwork{transform:none}.museum-hub{position:fixed;inset:0;z-index:80;overflow:hidden;background-color:var(--color-museum-wall);background-image:none;opacity:1;transition:opacity .52s var(--ease-gallery-in-out)}.museum-hub[hidden]{display:none}.museum-hub.is-exiting{opacity:0;pointer-events:none}.museum-hub__visual{--hub-aspect: 1.778646;--hub-focus-scale: 1;--hub-focus-x: 0%;position:absolute;top:50%;left:50%;width:min(100vw,100vh * var(--hub-aspect));height:min(100vh,100vw / var(--hub-aspect));transform:translate(-50%,-50%) translate(var(--hub-focus-x)) scale(var(--hub-focus-scale));transform-origin:center;transition:transform .45s var(--ease-gallery-out)}.museum-hub__stage{position:absolute;top:0;left:0;width:var(--hub-stage-width, 1366px);height:var(--hub-stage-height, 768px);overflow:hidden;background:var(--color-museum-wall);transform-origin:top left;transform:scale(var(--hub-stage-scale, 1))}.museum-hub.is-calibrating .museum-hub__stage{overflow:visible}.museum-hub__image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:fill;user-select:none;opacity:1}.museum-hub__canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.museum-hub.is-photographic .museum-hub__canvas,.museum-hub.is-calibrating .museum-hub__canvas{visibility:hidden;pointer-events:none}.museum-hub.has-image-error .museum-hub__image{opacity:0}.museum-hub.has-image-error .museum-hub__stage{background-color:var(--color-museum-wall);background-image:none}.museum-hub__shade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 52% 38% at 0% 0%,rgba(4,8,11,.4) 0%,rgba(4,8,11,.18) 42%,transparent 76%)}.museum-hub__header{position:absolute;z-index:2;top:max(26px,18px + var(--safe-top));left:max(28px,22px + var(--safe-left));color:var(--text-inverse);text-shadow:0 2px 18px rgba(0,0,0,.5);pointer-events:none}.museum-hub__eyebrow{margin-bottom:5px;font-size:.72rem;font-weight:700;letter-spacing:.25em}.museum-hub__title{font-size:clamp(1.8rem,4vw,3.6rem);font-weight:500;letter-spacing:-.04em;line-height:1}.museum-hub__introduction{max-width:34rem;margin-top:12px;font-size:clamp(.82rem,1.2vw,1rem);line-height:1.45}.museum-hub__destination{position:absolute;z-index:3;left:57.25%;top:43.2%;width:10.25%;height:16.7%;border-radius:2px;color:var(--text-inverse);cursor:pointer}.museum-hub__destination-frame{position:absolute;inset:-8px;border:2px solid rgba(255,255,255,.66);box-shadow:0 0 0 3px #0f141833;transition:border-color var(--dur-control) var(--ease-out),box-shadow var(--dur-control) var(--ease-out),transform var(--dur-control) var(--ease-out)}.museum-hub__destination-label{position:absolute;top:calc(100% + 18px);left:50%;width:max-content;max-width:min(240px,52vw);transform:translate(-50%) translateY(4px);padding:10px 16px;border:1px solid rgba(255,255,255,.72);border-radius:var(--radius-pill);background:#0a0e11c7;box-shadow:var(--shadow-medium);font-size:clamp(.72rem,1.1vw,.9rem);font-weight:700;letter-spacing:.02em;opacity:.88;transition:opacity var(--dur-control) var(--ease-out),transform var(--dur-control) var(--ease-out)}.museum-hub__destination:hover .museum-hub__destination-frame,.museum-hub__destination:focus-visible .museum-hub__destination-frame{border-color:#fffffff2;box-shadow:0 0 0 5px #0f14186b,0 0 32px #ffffff80;transform:scale(1.035)}.museum-hub__destination:hover .museum-hub__destination-label,.museum-hub__destination:focus-visible .museum-hub__destination-label{opacity:1;transform:translate(-50%) translateY(0)}.museum-hub__destination:focus-visible{outline:none}.museum-hub__destination:disabled{cursor:wait}.museum-hub__rooms{position:absolute;inset:0}.museum-hub__room{position:absolute;inset:0;visibility:hidden;pointer-events:none}.museum-hub__room.is-active{visibility:visible;pointer-events:auto}.museum-hub__shadows{position:absolute;inset:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none}.museum-hub__shadow-path{fill:rgba(10,13,15,var(--hub-shadow-fill-alpha, .24));opacity:var(--hub-shadow-opacity, .88);filter:drop-shadow(var(--hub-shadow-x, 0px) 2px var(--hub-shadow-contact-blur, 3px) rgba(10,13,15,var(--hub-shadow-contact-alpha, .48))) drop-shadow(var(--hub-shadow-x, 0px) var(--hub-shadow-y, 16px) var(--hub-shadow-directional-blur, 14px) rgba(10,13,15,var(--hub-shadow-directional-alpha, .36))) drop-shadow(0 8px var(--hub-shadow-ambient-blur, 24px) rgba(10,13,15,var(--hub-shadow-ambient-alpha, .2)));pointer-events:none;transition:fill .28s var(--ease-out),filter .28s var(--ease-out),opacity .28s var(--ease-out)}.museum-hub__shadow-path.is-empty{display:none}.museum-hub__artwork-light{position:absolute;z-index:2;inset:0;background:radial-gradient(ellipse at var(--hub-light-x, 50%) var(--hub-light-y, 42%),rgba(255,249,232,.16) 0%,rgba(255,249,232,.075) 19%,rgba(255,249,232,.025) 38%,transparent 66%);opacity:0;pointer-events:none;transition:opacity .28s var(--ease-out)}.museum-hub:not(.is-calibrating):not(.is-debug-geometry) .museum-hub__artwork.is-illuminated .museum-hub__artwork-light{opacity:1}.museum-hub__artwork{position:absolute;z-index:3;padding:0;border:0;background:none;color:var(--text-inverse);cursor:pointer;clip-path:var(--hub-clip-path, none);transition:none}.museum-hub__artwork:before{content:"";position:absolute;z-index:3;left:50%;bottom:12px;width:10px;height:10px;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:#d8b968;box-shadow:0 0 0 3px #0c1013b8;opacity:0;pointer-events:none;transform:translate(-50%) scale(.72);transition:opacity var(--dur-control) var(--ease-out),transform var(--dur-control) var(--ease-out)}.museum-hub:not(.is-calibrating):not(.is-debug-geometry) .museum-hub__artwork-label{display:none}.museum-hub__art{position:absolute;inset:0 auto auto 0;width:auto;height:auto;display:block;transform-origin:0 0;transform:var(--hub-artwork-transform, none);user-select:none;opacity:0;box-shadow:inset 0 0 0 1px #0c121624,inset 0 -1px 1px #0a0c0e33}.museum-hub.is-photographic .museum-hub__art,.museum-hub.is-2d .museum-hub__art,.museum-hub.is-calibrating .museum-hub__art,.museum-hub.is-2d .museum-hub__image{opacity:1}.museum-hub.is-2d .museum-hub__introduction:after{content:" Die räumliche Museumsansicht ist nicht verfügbar; Auswahl und Galerie bleiben bedienbar."}.museum-hub__art-placeholder{position:absolute;inset:0;display:none;align-items:center;justify-content:center;padding:6%;background:linear-gradient(135deg,#ffffff17,#0000001f),color-mix(in srgb,var(--color-museum-wall) 72%,#000000);color:#ffffffd1;font-size:clamp(.5rem,.9vw,.78rem);font-weight:600;letter-spacing:.04em;text-align:center}.museum-hub__artwork.has-missing-image .museum-hub__art{visibility:hidden}.museum-hub__artwork.has-missing-image .museum-hub__art-placeholder{display:flex}.museum-hub__artwork-label{position:absolute;top:calc(100% + 12px);left:50%;z-index:4;width:max-content;max-width:min(220px,46vw);transform:translate(-50%) translateY(4px);padding:7px 13px;border:1px solid rgba(255,255,255,.72);border-radius:var(--radius-pill);background:#0a0e11c7;box-shadow:var(--shadow-medium);font-size:clamp(.68rem,1vw,.82rem);font-weight:700;letter-spacing:.02em;opacity:0;pointer-events:none;transition:opacity var(--dur-control) var(--ease-out),transform var(--dur-control) var(--ease-out)}.museum-hub__artwork.is-focused:before,.museum-hub__artwork:focus-visible:before,.museum-hub__artwork.is-selected:before{opacity:1;transform:translate(-50%) scale(1)}.museum-hub__artwork.is-selected:before,.museum-hub__artwork[aria-current=true]:before{background:#ffe7a4;box-shadow:0 0 0 3px #0c1013c7,0 0 16px #ffe7a452}.museum-hub__artwork:focus-visible{outline:none}.museum-hub__artwork:disabled{cursor:wait}.museum-hub__artwork.is-disabled-slot,.museum-hub__artwork.is-invalid-geometry{cursor:default;opacity:.4}.museum-hub__artwork.is-disabled-slot .museum-hub__artwork-label,.museum-hub__artwork.is-invalid-geometry .museum-hub__artwork-label{display:none}.museum-hub__artwork.is-strip-focus:before{opacity:1;transform:translate(-50%) scale(1)}.museum-hub.is-panorama{--hub-pano-top: calc(var(--safe-top) + 84px);--hub-pano-bottom: calc(var(--safe-bottom) + 96px);--hub-strip-bottom: calc(var(--safe-bottom) + 12px);touch-action:none}.museum-hub.is-panorama.has-pager{--hub-pano-bottom: calc(var(--safe-bottom) + 150px);--hub-strip-bottom: calc(var(--safe-bottom) + 64px)}.museum-hub.is-panorama{overscroll-behavior:contain}.museum-hub.is-panorama .museum-hub__visual{top:var(--hub-pano-top);width:calc((100vh - var(--hub-pano-top) - var(--hub-pano-bottom)) * var(--hub-aspect));width:calc((100dvh - var(--hub-pano-top) - var(--hub-pano-bottom)) * var(--hub-aspect));height:calc(100vh - var(--hub-pano-top) - var(--hub-pano-bottom));height:calc(100dvh - var(--hub-pano-top) - var(--hub-pano-bottom));transform:translate(-50%) translate3d(var(--hub-pan-x, 0px),0,0);transition:none;will-change:transform}.museum-hub.is-panorama .museum-hub__header{top:calc(var(--safe-top) + 12px);left:calc(var(--safe-left) + 16px);right:calc(var(--safe-right) + 16px)}.museum-hub.is-panorama .museum-hub__eyebrow{margin-bottom:2px;font-size:.62rem}.museum-hub.is-panorama .museum-hub__title{font-size:1.55rem}.museum-hub.is-panorama .museum-hub__introduction{margin-top:6px;font-size:.8rem;line-height:1.35;transition:opacity var(--dur-control) var(--ease-out)}.museum-hub.is-panorama.has-panned .museum-hub__introduction{opacity:0}.museum-hub.is-panorama .museum-hub__pager{bottom:calc(var(--safe-bottom) + 10px);gap:4px;padding:2px 6px}.museum-hub.is-panorama .museum-hub__artwork{-webkit-touch-callout:none;user-select:none}.museum-hub.is-panorama.is-panning .museum-hub__artwork{cursor:grabbing}.museum-hub__strip{position:absolute;z-index:5;left:0;right:0;bottom:var(--hub-strip-bottom, calc(var(--safe-bottom) + 64px));height:76px;overflow:hidden;touch-action:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}.museum-hub__strip[hidden]{display:none}.museum-hub__strip-track{position:absolute;top:0;left:50%;display:flex;height:100%;will-change:transform}.museum-hub__strip-item{display:flex;flex:0 0 76px;align-items:center;justify-content:center;width:76px;height:76px;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.museum-hub__strip-item:focus-visible{outline:none}.museum-hub__strip-item:focus-visible .museum-hub__strip-thumb{box-shadow:0 0 0 3px #fffffff2,0 0 0 6px #0f141899}.museum-hub__strip-thumb{display:block;width:56px;height:56px;border-radius:10px;background-color:#0a0e1180;background-position:center;background-size:cover;box-shadow:0 2px 10px #00000047;opacity:.72;transform:scale(.88);transition:transform var(--dur-control) var(--ease-out),opacity var(--dur-control) var(--ease-out),box-shadow var(--dur-control) var(--ease-out)}.museum-hub__strip-item.is-centered .museum-hub__strip-thumb{opacity:1;transform:scale(1.06);box-shadow:0 0 0 2px #ffe7a4,0 4px 16px #0000005c}.museum-hub__pager{position:absolute;z-index:5;bottom:max(20px,14px + var(--safe-bottom));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:6px 10px;border-radius:var(--radius-pill);background:#0a0e11b8;border:1px solid rgba(255,255,255,.4);box-shadow:var(--shadow-medium)}.museum-hub__pager[hidden]{display:none}.museum-hub__pager-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--text-inverse);cursor:pointer;transition:background var(--dur-control) var(--ease-out)}.museum-hub__pager-arrow:hover:not(:disabled){background:#ffffff24}.museum-hub__pager-arrow:disabled{opacity:.35;cursor:default}.museum-hub__pager-arrow:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffffe6,0 0 0 6px #0f141899}.museum-hub__pager-counter{min-width:8ch;color:var(--text-inverse);font-size:.78rem;font-weight:600;letter-spacing:.03em;text-align:center;white-space:nowrap}.museum-hub__calibration-svg{position:absolute;inset:0;z-index:4;overflow:visible;pointer-events:none;transform-origin:0 0}.museum-hub__editor-viewport{position:absolute;inset:0;width:100%;height:100%;z-index:12;overflow:visible;pointer-events:none}.museum-hub__editor-viewport-wall{fill:#ff9d3d14;stroke:#ff9d3de6;stroke-width:3;vector-effect:non-scaling-stroke;pointer-events:none}.museum-hub__editor-viewport-guide{stroke:#ff9d3dd9;stroke-width:3;stroke-dasharray:8 6;vector-effect:non-scaling-stroke;pointer-events:none}.museum-hub__editor-viewport-corner{fill:#ff9d3d;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke;cursor:crosshair}.museum-hub__editor-viewport-corner:focus,.museum-hub__editor-viewport-corner:hover{fill:#ffe0a8;stroke:#7a2d00;outline:none}.museum-hub__editor-viewport-corner.is-edge-anchored{fill:#111;stroke:#fff;stroke-width:4}.museum-hub.is-calibrating .museum-hub__calibration-svg{pointer-events:none;touch-action:none}.museum-hub.is-debug-geometry:not(.is-calibrating) .museum-hub__calibration-svg{pointer-events:none}.museum-hub__calibration-wall{fill:#ffffff0a;stroke:#ffa478db;stroke-width:2.5}.museum-hub__calibration-wall-label{fill:#fff;paint-order:stroke;stroke:#0a0e11db;stroke-width:4px;stroke-linejoin:round;font-size:12px;font-weight:700;text-anchor:middle;pointer-events:none}.museum-hub__calibration-wall-label:not(.is-active){opacity:.5}.museum-hub__calibration-envelope{fill:#be96ff14;stroke:#be96fff2;stroke-width:2.5;stroke-dasharray:12 7;cursor:move;pointer-events:all;touch-action:none}.museum-hub__calibration-safe{fill:#64bfff14;stroke:#64bfffc7;stroke-width:2;stroke-dasharray:10 6;pointer-events:none}.museum-hub__calibration-mounting-zone{fill:#64ffaa1a;stroke:#64ffaaf2;stroke-width:2.5;stroke-dasharray:5 4;pointer-events:none}.museum-hub__calibration-mounting-zone.is-unconfirmed{stroke:#ffbe46fa}.museum-hub__calibration-wall.is-active,.museum-hub__calibration-safe.is-active,.museum-hub__calibration-mounting-zone.is-active{opacity:1}.museum-hub__calibration-wall:not(.is-active),.museum-hub__calibration-safe:not(.is-active),.museum-hub__calibration-mounting-zone:not(.is-active){opacity:.45}.museum-hub__calibration-handle{fill:#ff5a3cf2;stroke:#fffffff2;stroke-width:2;cursor:move;pointer-events:all}.museum-hub__calibration-handle--wall,.museum-hub__calibration-handle--safe,.museum-hub__calibration-handle--mounting-zone,.museum-hub__calibration-handle--envelope{width:8px;height:8px;r:4px}.museum-hub__calibration-edge-hit{stroke:transparent;stroke-width:18;fill:none;pointer-events:stroke;cursor:move;touch-action:none}.museum-hub__calibration-handle--safe{fill:#64bffff2}.museum-hub__calibration-handle--wall{fill:#f08a24;stroke:#fff;stroke-width:2;cursor:nwse-resize;touch-action:none}.museum-hub__calibration-handle--envelope{fill:#be96fffa}.museum-hub__calibration-svg polygon.museum-hub__calibration-wall.is-active{cursor:move;pointer-events:none;touch-action:none}.museum-hub__calibration-svg.is-guides-hidden :is(.museum-hub__calibration-safe,.museum-hub__calibration-mounting-zone,.museum-hub__calibration-handle--safe,.museum-hub__calibration-handle--mounting-zone){display:none}.museum-hub__calibration-corner-hit:focus-visible,.museum-hub__calibration-edge-hit:focus-visible,.museum-hub__calibration-wall:focus-visible,.museum-hub__calibration-envelope:focus-visible,.museum-hub__calibration-handle:focus-visible{outline:none;stroke:#fff;stroke-width:4;filter:drop-shadow(0 0 5px #000)}.museum-hub__calibration-background{display:grid;gap:8px;margin:12px 0}.museum-hub__calibration-background-info{font-size:.8rem;opacity:.8}.museum-hub__calibration-artwork-info{margin:0;color:#ffffffdb;font-size:.8rem;line-height:1.35}.museum-hub__calibration-handle--mounting-zone{fill:#46dc87fa}.museum-hub__artwork.is-calibration-selected{outline:3px solid rgba(100,255,170,.98);outline-offset:4px}.museum-hub__artwork.is-invalid-calibration{outline:4px solid rgba(255,65,45,.98);outline-offset:5px}.museum-hub.is-calibrating .museum-hub__artwork.is-placement-invalid{outline:3px dashed rgba(255,65,45,.98);outline-offset:5px}.museum-hub__calibration-limit{fill:none;stroke:#ffc43cfa;stroke-width:4;stroke-linecap:round;pointer-events:none}.museum-hub__calibration-limit--doorway{fill:#ffc43c33;stroke-dasharray:6 4}.museum-hub__debug-axis{stroke-width:2;stroke-linecap:round}.museum-hub__debug-axis--x{stroke:#ff7a58f5}.museum-hub__debug-axis--y{stroke:#70c6fff5}.museum-hub__debug-origin{fill:#fffffff2;stroke:#0c1013e0;stroke-width:1.2}.museum-hub__debug-slot-quad{fill:#70c6ff1f;stroke:#70c6fff0;stroke-width:1.8}.museum-hub__debug-slot-center{fill:#ff7a58fa;stroke:#fffffff2;stroke-width:1.2}.museum-hub__debug-slot-corner{fill:#fffffffa;stroke:#0c1013f2;stroke-width:1.1}.museum-hub__debug-doorway{fill:#ff5c5c2e;stroke:#ff5c5ceb;stroke-width:1.4;stroke-dasharray:6 4}.museum-hub__debug-wall-label,.museum-hub__debug-slot-label{fill:#fffffff5;stroke:#0000008c;stroke-width:.55;paint-order:stroke;font-size:11px;font-weight:700;letter-spacing:.01em}.museum-hub__debug-horizon{stroke:#ffcc5cf5;stroke-width:1.5;stroke-dasharray:7 5}.museum-hub__debug-vanishing{stroke:#c084fce0;stroke-width:1.15;stroke-dasharray:4 4}.museum-hub__debug-camera-label{fill:#ffe6a0fa;stroke:#0000008c;stroke-width:.55;paint-order:stroke;font-size:11px;font-weight:700}.museum-hub.is-calibrating .museum-hub__artwork{cursor:move;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;clip-path:none}.museum-hub.is-calibrating .museum-hub__art{will-change:transform}.museum-hub.is-calibrating .museum-hub__artwork.is-dragging{filter:none;transition:none;cursor:grabbing}.museum-hub.is-dragging-artwork .museum-hub__calibration{pointer-events:none}.museum-hub.is-calibrating .museum-hub__artwork:after{content:"";position:absolute;inset:0;clip-path:var(--hub-clip-path, none);transform-origin:0 0;border:2px dashed rgba(255,90,60,.92)}.museum-hub.is-calibrating .museum-hub__artwork-label{opacity:1;transform:translate(-50%) translateY(0)}.museum-hub__artwork-handle{position:absolute;right:6px;bottom:6px;z-index:5;width:18px;height:18px;border:2px solid rgba(255,255,255,.95);border-radius:4px;background:#ff5a3cf2;cursor:nwse-resize;pointer-events:auto;touch-action:none}.museum-hub__calibration{position:absolute;z-index:6;right:max(16px,12px + var(--safe-right));bottom:max(16px,12px + var(--safe-bottom));width:min(420px,100vw - 32px);padding:12px;border-radius:8px;background:#0a0e11db;color:var(--text-inverse);box-shadow:var(--shadow-medium)}.museum-hub__calibration-title{margin-bottom:8px;font-size:1.15rem;font-weight:700;letter-spacing:-.01em}.museum-hub__calibration-intro{margin-bottom:12px;color:#ffffffd1;font-size:.82rem;line-height:1.45}.museum-hub__calibration-steps{display:grid;gap:6px;margin:0 0 12px;padding-left:20px;font-size:.76rem;line-height:1.4}.museum-hub__calibration-help{margin:0 0 10px;font-size:.7rem;line-height:1.45;color:#fffc}.museum-hub__calibration-legend{display:grid;gap:6px;margin:0 0 12px;padding:10px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0f;font-size:.72rem;line-height:1.35}.museum-hub__calibration-legend h3{margin:0 0 2px;font-size:.78rem}.museum-hub__calibration-legend-item{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:7px}.museum-hub__calibration-legend-swatch{display:block;width:16px;height:12px;border:2px solid #fff;border-radius:3px}.museum-hub__calibration-legend-item--wall-corner .museum-hub__calibration-legend-swatch{width:12px;height:12px;border-radius:50%;background:#f08a24}.museum-hub__calibration-legend-item--wall-edge .museum-hub__calibration-legend-swatch{border-color:#f08a24;background:repeating-linear-gradient(135deg,#f08a24 0 3px,transparent 3px 6px)}.museum-hub__calibration-legend-item--safe-area .museum-hub__calibration-legend-swatch{border-color:#64bfff;background:#64bfff4d}.museum-hub__calibration-legend-item--mounting-area .museum-hub__calibration-legend-swatch{border-color:#64ffaa;background:#64ffaa4d}.museum-hub__calibration-legend-item--entrance-boundary .museum-hub__calibration-legend-swatch{border-color:#be96ff;border-style:dashed;background:#be96ff40}.museum-hub__calibration-controls{display:grid;gap:10px;margin-bottom:10px}.museum-hub__calibration-numeric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.museum-hub__calibration-number{display:grid;gap:4px;font-size:.68rem}.museum-hub__calibration-number input{min-width:0;padding:8px;border:1px solid rgba(255,255,255,.24);border-radius:6px;background:#00000057;color:inherit}.museum-hub__calibration-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.museum-hub__calibration-action,.museum-hub__calibration-import{min-height:38px;padding:8px 10px;border:1px solid rgba(255,255,255,.24);border-radius:7px;background:#00000057;color:inherit;font-size:.7rem}.museum-hub__calibration-action:disabled{opacity:.42}.museum-hub__calibration-import{display:grid;gap:5px;margin-bottom:8px}.museum-hub__calibration-action-status{margin:0 0 10px;padding:9px 10px;border-radius:7px;background:#ffffff14;font-size:.72rem;line-height:1.4}.museum-hub__calibration-label{margin-bottom:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em}.museum-hub__calibration-select,.museum-hub__calibration-restore{width:100%;min-height:40px;padding:10px 12px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#00000057;color:inherit}.museum-hub__calibration-restore:disabled{opacity:.45;cursor:default}.museum-hub__calibration-warnings{margin:0 0 12px;padding-left:18px;font-size:.72rem;line-height:1.45}.museum-hub__calibration-output{width:100%;resize:vertical;padding:8px;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#0006;color:inherit;font-family:monospace;font-size:.7rem;line-height:1.4}.museum-hub__calibration-advanced{margin-top:10px;font-size:.72rem}.museum-hub__calibration-advanced summary{padding:8px 0;cursor:pointer;font-weight:700}body.placement-editor{--placement-editor-width: clamp(360px, 31vw, 460px);overflow:hidden}body.placement-editor .museum-hub__header,body.placement-editor .museum-hub__shade,body.placement-editor .museum-hub__pager{display:none}body.placement-editor .museum-hub__visual{left:calc((100vw - var(--placement-editor-width)) / 2);width:min(100vw - var(--placement-editor-width),100vh * var(--hub-aspect));height:min(100vh,(100vw - var(--placement-editor-width)) / var(--hub-aspect))}body.placement-editor .museum-hub__calibration{position:fixed;inset:0 0 0 auto;width:var(--placement-editor-width);padding:22px;overflow:auto;border-radius:0;background:#0a0e11f5}body.placement-editor .museum-hub__calibration-title{font-size:1.45rem}body.placement-editor .museum-hub__calibration-help{padding:10px;border-radius:8px;background:#64bfff1f}body.placement-editor .museum-hub__calibration-action,body.placement-editor .museum-hub__calibration-import,body.placement-editor .museum-hub__calibration-select,body.placement-editor .museum-hub__calibration-restore,body.placement-editor .museum-hub__calibration-number input{font-size:.78rem}@media (max-width: 820px){body.placement-editor{--placement-editor-height: min(48vh, 430px)}body.placement-editor .museum-hub__visual{top:calc((100vh - var(--placement-editor-height)) / 2);left:50%;width:min(100vw,(100vh - var(--placement-editor-height)) * var(--hub-aspect));height:min(100vh - var(--placement-editor-height),100vw / var(--hub-aspect))}body.placement-editor .museum-hub__calibration{inset:auto 0 0;width:100%;height:var(--placement-editor-height);padding:16px;border-top:1px solid rgba(255,255,255,.18)}}body.placement-editor .audio-controls,body.placement-editor .prefs,body.placement-editor .fullscreen-btn,body.placement-editor .phone-menu{display:none!important}body.placement-editor .museum-hub__calibration{display:flex;flex-direction:column;gap:10px;padding:16px 16px 0;overflow:hidden}.museum-hub__calibration-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.museum-hub__calibration-header .museum-hub__calibration-title{margin:0}.museum-hub__editor-icon-button{width:32px;height:32px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:transparent;color:inherit;font-weight:700;cursor:pointer}.museum-hub__editor-guide{padding:10px 12px;border-radius:8px;background:#64bfff24;font-size:.78rem;line-height:1.45}.museum-hub__editor-guide ol{margin:4px 0 8px;padding-left:18px}.museum-hub__room-switcher{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px}.museum-hub__room-switcher .museum-hub__room-chips{grid-column:1/-1}.museum-hub__room-arrow{position:relative;width:36px;height:36px;border:1px solid rgba(255,255,255,.24);border-radius:7px;background:#00000057;color:inherit;cursor:pointer}.museum-hub__room-arrow:disabled{opacity:.35;cursor:default}.museum-hub__room-arrow.has-error:after,.museum-hub__room-arrow.has-hint:after{content:"";position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:#ffb347}.museum-hub__room-arrow.has-error:after{background:#ff6b5a}.museum-hub__room-counter{flex:1;margin:0;font-size:.95rem;font-weight:700;text-align:center}.museum-hub__room-chips{display:flex;flex-wrap:wrap;gap:4px}.museum-hub__room-chip{min-height:28px;padding:3px 9px;border:1px solid rgba(255,255,255,.24);border-left-width:4px;border-radius:6px;background:#0000004d;color:inherit;font-size:.72rem;cursor:pointer}.museum-hub__room-chip.is-ok{border-left-color:#64ffaa}.museum-hub__room-chip.is-hint{border-left-color:#ffb347}.museum-hub__room-chip.is-error{border-left-color:#ff6b5a}.museum-hub__room-chip[aria-current=true],.museum-hub__room-chip[aria-current=page]{background:#64bfff47;border-color:#64bfffe6}.museum-hub__editor-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.2)}.museum-hub__editor-tab{min-height:40px;border:0;border-bottom:3px solid transparent;background:transparent;color:#ffffffb8;font-size:.85rem;font-weight:700;cursor:pointer}.museum-hub__editor-tab.is-active,.museum-hub__editor-tab[aria-selected=true]{border-bottom-color:#64bfff;color:#fff}.museum-hub__editor-tabpanel{flex:1 1 auto;min-height:0;overflow:auto;padding:4px 2px 12px;overscroll-behavior:contain}.museum-hub__editor-tabpanel[hidden]{display:none}.museum-hub__editor-section,.museum-hub__room-manager,.museum-hub__editor-detail,.museum-hub__places,.museum-hub__library{display:grid;gap:8px;margin:0 0 14px;padding:0;border:0}.museum-hub__editor-section h3,.museum-hub__editor-section legend,.museum-hub__room-manager h3,.museum-hub__room-manager legend,.museum-hub__editor-detail h3,.museum-hub__editor-detail legend,.museum-hub__places h3,.museum-hub__places legend,.museum-hub__library h3,.museum-hub__library legend{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.02em}.museum-hub__editor-actions{display:flex;flex-wrap:wrap;gap:6px}.museum-hub__editor-actions>*{flex:1 1 140px}.museum-hub__editor-hint{margin:0;color:#ffffffb3;font-size:.72rem;line-height:1.4}.museum-hub__gallery-room-editor{display:grid;gap:10px;margin-top:16px;padding:12px;border:1px solid var(--glass-border-strong);border-radius:var(--radius-md);background:var(--glass-bg)}.museum-hub__gallery-room-editor h3{margin:0;color:var(--text-strong);font-size:.9rem}.museum-hub__gallery-room-editor fieldset{min-width:0;margin:0;padding:8px;border:1px solid var(--glass-border);border-radius:var(--radius-sm)}.museum-hub__gallery-room-editor legend,.museum-hub__gallery-room-editor .museum-hub__gallery-room-field{color:var(--text-strong);font-size:.68rem}.museum-hub__gallery-room-preview{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--glass-border-strong);border-radius:var(--radius-sm);background:#242424}.museum-hub__gallery-room-preview>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.museum-hub__gallery-room-preview>img:last-child{position:absolute;top:0;left:0;max-width:none;transform-origin:0 0;object-fit:fill;box-shadow:0 3px 8px #00000059}.museum-hub__gallery-room-quad,.museum-hub__gallery-room-placement{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.museum-hub__gallery-room-placement{grid-template-columns:repeat(3,minmax(0,1fr))}.museum-hub__gallery-room-field{display:grid;min-width:0;gap:3px}.museum-hub__gallery-room-field input{box-sizing:border-box;width:100%;min-height:36px;padding:5px;border:1px solid var(--glass-border-strong);border-radius:var(--radius-sm);color:var(--text-strong);background:var(--glass-bg-strong);font:inherit}.museum-hub__gallery-room-status.is-error{color:var(--danger, #ff9a9a)}.museum-hub__editor-check{display:flex;align-items:center;gap:8px;font-size:.78rem;cursor:pointer}.museum-hub__editor-segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.museum-hub__editor-segmented>button{border-radius:0}.museum-hub__editor-segmented>button:first-child{border-radius:7px 0 0 7px}.museum-hub__editor-segmented>button:last-child{border-radius:0 7px 7px 0}.museum-hub__calibration-action{cursor:pointer}.museum-hub__calibration-action[aria-pressed=true],.museum-hub__calibration-action.is-active{border-color:#64bffff2;background:#64bfff47}.museum-hub__calibration-action.is-primary{border-color:#64bfff;background:#2a7fc0;font-weight:700}.museum-hub__calibration-action.is-danger{border-color:#ff6b5ab3;color:#ffb4aa}.museum-hub__editor-dialog{max-width:min(360px,90vw);padding:16px;border:1px solid rgba(255,255,255,.3);border-radius:10px;background:#11171b;color:var(--text-inverse)}.museum-hub__editor-dialog::backdrop{background:#0000008c}.museum-hub__place-list,.museum-hub__library-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.museum-hub__place-list{grid-template-columns:repeat(2,minmax(0,1fr))}.museum-hub__place-card,.museum-hub__library-item{display:flex;align-items:center;gap:8px;width:100%;min-height:52px;padding:6px 8px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#0000004d;color:inherit;font-size:.72rem;text-align:left;cursor:pointer}.museum-hub__place-card.is-empty{border-style:dashed;color:#ffffffb3}.museum-hub__place-card.is-active{border-color:#64bfff;box-shadow:0 0 0 2px #64bfff73}.museum-hub__place-card.is-drop-target{background:#64ffaa2e;border-color:#64ffaa}.museum-hub__place-card.is-hint{border-left:4px solid #ffb347}.museum-hub__place-card.is-error{border-left:4px solid #ff6b5a}.museum-hub__library-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}.museum-hub__library-item{position:relative;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}.museum-hub__library-item.is-chosen{border-color:#64ffaa;box-shadow:0 0 0 2px #64ffaa73;background:#64ffaa1f}.museum-hub__drag-grip{flex:0 0 auto;color:#ffffff8c;font-size:1rem;line-height:1}.museum-hub__chosen-badge{display:none;margin-left:auto;padding:2px 6px;border-radius:999px;background:#64ffaa;color:#0b1a12;font-size:.66rem;font-weight:700}.is-chosen>.museum-hub__chosen-badge{display:inline-block}.museum-hub__library-more{padding:0 8px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#ffffff0f;color:inherit;font-size:.7rem;cursor:pointer}.museum-hub__library-status{margin:0;padding:6px 8px;border-radius:6px;background:#64ffaa24;color:#b6ffd6;font-size:.72rem;font-weight:700}.museum-hub__library.is-awaiting-artwork .museum-hub__library-item{border-color:#64ffaa99}.museum-hub__place-card{position:relative;touch-action:pan-y}.museum-hub__place-card.is-armed{border-color:#64ffaa;box-shadow:0 0 0 2px #64ffaa73}.museum-hub__place-card.is-drop-candidate.is-drop-free,.museum-hub__artwork.is-drop-candidate.is-drop-free{outline:3px solid rgba(100,255,170,.9);outline-offset:2px}.museum-hub__place-card.is-drop-candidate.is-drop-swap,.museum-hub__artwork.is-drop-candidate.is-drop-swap{outline:3px dashed rgba(255,179,71,.9);outline-offset:2px}.museum-hub__place-card.is-drop-candidate.is-drop-same,.museum-hub__artwork.is-drop-candidate.is-drop-same{opacity:.45}.museum-hub__place-card.is-drop-hover,.museum-hub__artwork.is-drop-hover{outline-width:5px;outline-style:solid;background-color:#64ffaa2e}.museum-hub__drop-badge{position:absolute;z-index:6;top:4px;left:50%;transform:translate(-50%);padding:2px 8px;border-radius:999px;background:#64ffaa;color:#0b1a12;font-size:.66rem;font-weight:700;white-space:nowrap;pointer-events:none}.is-drop-swap>.museum-hub__drop-badge{background:#ffb347}.is-drop-same>.museum-hub__drop-badge{background:#ffffffb3}.museum-hub__artwork>.museum-hub__drop-badge{font-size:.9rem}.museum-hub__drag-ghost{position:fixed;z-index:10000;top:0;left:0;display:grid;grid-template-columns:48px auto;grid-template-rows:auto auto;column-gap:8px;align-items:center;max-width:260px;padding:6px 10px 6px 6px;border:2px solid rgba(255,255,255,.4);border-radius:10px;background:#0a0e11eb;color:var(--text-inverse);font-size:.75rem;box-shadow:var(--shadow-medium);pointer-events:none;will-change:transform}.museum-hub__drag-ghost .museum-hub__thumb{grid-row:span 2;width:48px;height:48px}.museum-hub__drag-ghost[data-state=free]{border-color:#64ffaa}.museum-hub__drag-ghost[data-state=swap]{border-color:#ffb347}.museum-hub__drag-ghost[data-state=unplace]{border-color:#ff9b8a}.museum-hub__drag-ghost-label{color:#fffc}:root.is-placing-artwork,:root.is-placing-artwork *{cursor:grabbing!important}.museum-hub__popover{position:fixed;z-index:9000;display:grid;gap:8px;max-height:320px;padding:10px;border:1px solid rgba(255,255,255,.3);border-radius:10px;background:#11171b;color:var(--text-inverse);box-shadow:var(--shadow-medium);font-size:.78rem}.museum-hub__popover-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.museum-hub__popover-close{width:28px;height:28px;border:0;border-radius:6px;background:#ffffff1a;color:inherit;font-size:1rem;cursor:pointer}.museum-hub__popover-search{width:100%;padding:6px 8px;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:#0006;color:inherit}.museum-hub__popover-list{display:grid;gap:4px;margin:0;padding:0;overflow-y:auto;list-style:none}.museum-hub__popover-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff0a;color:inherit;text-align:left;cursor:pointer}.museum-hub__popover-item:hover,.museum-hub__popover-item:focus-visible{border-color:#64ffaa}.museum-hub__popover-item.is-danger{color:#ffb3a8}.museum-hub__toast{position:fixed;z-index:9500;left:50%;bottom:max(20px,16px + var(--safe-bottom));display:flex;align-items:center;gap:12px;max-width:min(560px,100vw - 32px);padding:10px 12px 10px 16px;border-radius:10px;background:#0a0e11f0;color:var(--text-inverse);font-size:.82rem;box-shadow:var(--shadow-medium);transform:translate(-50%)}.museum-hub__toast[hidden]{display:none}.museum-hub__toast-undo{padding:4px 10px;border:1px solid #64bfff;border-radius:6px;background:transparent;color:#9fd8ff;font-weight:700;cursor:pointer}.museum-hub__place-text{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.museum-hub__thumb{flex:0 0 auto;width:40px;height:40px;overflow:hidden;border-radius:4px;background:#ffffff14}.museum-hub__thumb img,.museum-hub__thumb canvas{display:block;position:static;width:100%;height:100%;object-fit:cover;touch-action:auto}.museum-hub__library-group{display:grid;gap:6px}.museum-hub__library-group h4{margin:4px 0 0;font-size:.74rem;color:#ffffffc7}.museum-hub__library-empty{margin:0;color:#fff9;font-size:.7rem}.museum-hub__save-status{padding:12px;border-left:4px solid #64ffaa;border-radius:8px;background:#64ffaa1a;font-size:.85rem;font-weight:700}.museum-hub__save-status.is-hint{border-left-color:#ffb347;background:#ffb3471a}.museum-hub__save-status.is-error{border-left-color:#ff6b5a;background:#ff6b5a1f}.museum-hub__save-primary,.museum-hub__publish-primary{width:100%;min-height:48px;font-size:.9rem!important}.museum-hub__publish,.museum-hub__artwork-upload{display:grid;gap:8px;padding:10px;border:1px solid rgba(214,176,112,.35);border-radius:8px}.museum-hub__publish[hidden],.museum-hub__artwork-upload[hidden]{display:none}.museum-hub__publish form,.museum-hub__publish .museum-hub__publish-body,.museum-hub__artwork-upload form,.museum-hub__artwork-upload .museum-hub__publish-body{display:grid;gap:8px}.museum-hub__publish form[hidden],.museum-hub__publish .museum-hub__publish-body[hidden],.museum-hub__publish [hidden],.museum-hub__artwork-upload form[hidden],.museum-hub__artwork-upload .museum-hub__publish-body[hidden],.museum-hub__artwork-upload [hidden]{display:none}.museum-hub__publish input[type=password],.museum-hub__publish input[type=text],.museum-hub__artwork-upload input[type=password],.museum-hub__artwork-upload input[type=text]{width:100%;min-height:40px;padding:6px 8px;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:#00000059;color:inherit;font:inherit}.museum-hub__publish-login-title{margin:0;font-weight:600}.museum-hub__publish-session{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;font-size:.78rem}.museum-hub__publish-error{margin:0;color:#ffb4aa;font-size:.78rem}.museum-hub__publish-error:empty{display:none}.museum-hub__publish-pending,.museum-hub__upload-list,.museum-hub__publish-history-list{display:grid;gap:4px;margin:0;padding:0;list-style:none;font-size:.78rem}.museum-hub__publish-pending li.is-empty,.museum-hub__upload-list li.is-empty,.museum-hub__publish-history-list li.is-empty{color:#fff9}.museum-hub__publish-pending li.is-total,.museum-hub__upload-list li.is-total,.museum-hub__publish-history-list li.is-total{font-weight:600}.museum-hub__publish-pending-item,.museum-hub__publish-history-item{display:flex;gap:8px;align-items:center;justify-content:space-between}.museum-hub__publish-progress{width:100%;height:8px}.museum-hub__publish-status{margin:0;font-size:.8rem}.museum-hub__publish-status:empty{display:none}.museum-hub__publish[data-publish-stage=online] .museum-hub__publish-status{color:#9be29b;font-weight:600}.museum-hub__publish[data-publish-stage=error] .museum-hub__publish-status{color:#ffb4aa}.museum-hub__publish-links:empty{display:none}.museum-hub__publish-link{color:#f0d39a}.museum-hub__publish-draft{padding:8px;border-radius:6px;background:#ffd59a1f;font-size:.78rem}.museum-hub__publish-draft p{margin:0 0 6px}.museum-hub__upload-drop{position:relative;display:grid;place-items:center;min-height:72px;padding:10px;border:1px dashed rgba(255,255,255,.45);border-radius:8px;font-size:.78rem;text-align:center;cursor:pointer}.museum-hub__upload-drop.is-dragover,.museum-hub__upload-drop:focus-within{border-color:#f0d39a;background:#f0d39a14}.museum-hub.is-editor-readonly .museum-hub__visual{cursor:not-allowed;opacity:.92}.museum-hub__calibration-warnings li.is-error{color:#ffb4aa}.museum-hub__calibration-warnings li.is-hint{color:#ffd59a}.museum-hub__issue-link{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;text-decoration:underline;cursor:pointer}.museum-hub__calibration-proofs{margin:0;padding-left:18px;color:#ffffffb3;font-size:.7rem}.museum-hub__file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.museum-hub__editor-bottom{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:6px;margin:0 -16px;padding:10px 16px max(10px,var(--safe-bottom));border-top:1px solid rgba(255,255,255,.18);background:#0a0e11fa}.museum-hub__editor-bottom .museum-hub__calibration-action-status{grid-column:1/-1;margin:0}.museum-hub__editor-status{min-height:34px;padding:4px 12px 4px 26px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:#00000057;color:inherit;font-size:.72rem;cursor:pointer;background-image:radial-gradient(circle at 13px 50%,var(--editor-status-color, #64ffaa) 0 5px,transparent 6px)}.museum-hub__editor-status.is-hint{--editor-status-color: #ffb347}.museum-hub__editor-status.is-error{--editor-status-color: #ff6b5a}.museum-hub__artwork.is-empty-slot{border:2px dashed rgba(255,255,255,.75);background:#ffffff14}.museum-hub__empty-slot-cta{position:absolute;inset:0;display:grid;place-content:center;gap:4px;color:#fff;font-size:.95rem;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.8);pointer-events:none}.museum-hub__empty-slot-cta span{font-size:.8rem;opacity:.85}.museum-hub__artwork.is-calibration-error{outline-color:#ff6b5a}#app:not([data-experience=gallery]) .topbar,#app:not([data-experience=gallery]) .info-panel,#app:not([data-experience=gallery]) .nav-controls,#app:not([data-experience=gallery]) .zoom-controls,#app:not([data-experience=gallery]) .timeline,#app:not([data-experience=gallery]) .hint-text,#app:not([data-experience=gallery]) .info-panel-peek-hit,#app:not([data-experience=gallery]) .info-panel-peek,#app:not([data-experience=gallery]) .info-panel-chevron{visibility:hidden!important;pointer-events:none!important}@media (max-aspect-ratio: 4/5){.museum-hub__header{right:max(24px,18px + var(--safe-right));text-align:center}.museum-hub__introduction{margin-inline:auto}.museum-hub__destination-label{opacity:1;transform:translate(-50%)}.museum-hub__artwork-label{opacity:.92;transform:translate(-50%) translateY(0)}}@media (prefers-reduced-motion: reduce){.museum-hub__shadow-path,.museum-hub__artwork-light,.museum-hub,.museum-hub__visual,.museum-hub__destination-frame,.museum-hub__destination-label,.museum-hub__artwork,.museum-hub__artwork-label,.museum-hub__strip-thumb{transition:none}}:root[data-motion=reduced] .museum-hub__shadow-path,:root[data-motion=reduced] .museum-hub__artwork-light{transition:none}:root[data-motion=reduced] .museum-hub,:root[data-motion=reduced] .museum-hub__visual,:root[data-motion=reduced] .museum-hub__destination-frame,:root[data-motion=reduced] .museum-hub__destination-label,:root[data-motion=reduced] .museum-hub__artwork,:root[data-motion=reduced] .museum-hub__artwork-label,:root[data-motion=reduced] .museum-hub__strip-thumb{transition:none}:focus{outline:none}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:12px}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}.topbar{position:fixed;top:0;left:0;right:0;height:calc(72px + var(--safe-top));padding:var(--safe-top) calc(36px + var(--safe-right)) 0 calc(36px + var(--safe-left));display:grid;grid-template-columns:minmax(0,auto) 1fr auto;align-items:center;column-gap:12px;z-index:100;pointer-events:none;animation:topbar-enter var(--dur-slow, .5s) var(--ease-out) both}@keyframes topbar-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.topbar__left{grid-column:1;pointer-events:auto;display:flex;align-items:center;gap:14px;min-width:0}.topbar__brand-group{display:flex;align-items:center;gap:14px;min-width:0;overflow:hidden}.topbar__right{grid-column:3;pointer-events:auto;display:flex;align-items:center;gap:10px;position:relative}.topbar__brand{font-size:30px;font-weight:700;letter-spacing:-.04em;color:var(--text);line-height:1}.topbar__badge{font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-pill);padding:6px 14px;pointer-events:none;animation:badge-enter var(--dur-slow, .5s) var(--ease-out) .15s both}@keyframes badge-enter{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.info-panel{position:fixed;bottom:calc(var(--chrome-bottom) + 20px);left:calc(36px + var(--safe-left));width:min(520px,100vw - 40px - var(--safe-left) - var(--safe-right));background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:30px 36px 32px;z-index:100;pointer-events:none;transition:opacity var(--dur-content) var(--ease-gallery-out),transform var(--dur-content) var(--ease-gallery-out);box-shadow:var(--shadow-soft)}.info-panel--compact{left:calc(12px + var(--safe-left));right:calc(12px + var(--safe-right));width:auto;bottom:calc(var(--chrome-bottom) + 80px);padding:14px 18px 16px;max-height:32vh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;pointer-events:auto}.info-panel--compact .info-panel__title{font-size:clamp(22px,6vw,34px);margin-bottom:8px}.info-panel--compact .info-panel__description{margin-bottom:8px}.info-panel--compact{transition:opacity var(--dur-content) var(--ease-gallery-out),transform var(--dur-content) var(--ease-gallery-out),max-height var(--dur-content) var(--ease-gallery-out)}.info-panel--compact.is-expanded{max-height:min(68vh,100dvh - var(--chrome-bottom) - 80px - var(--safe-top) - 88px)}.info-panel--compact.is-peek{max-height:var(--sheet-peek-height, 7.5rem);overflow-y:hidden}.info-panel--compact.is-dragging{max-height:var(--sheet-drag-height, 32vh)!important;overflow-y:hidden;transform:translateY(var(--sheet-drag, 0px))!important;transition:none!important}.info-panel__handle{display:none}.info-panel--compact .info-panel__handle{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:center;width:calc(100% + 36px);height:30px;margin:-14px -18px 2px;padding:0;border:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:transparent;color:var(--text-muted);cursor:grab;touch-action:none}.info-panel--compact .info-panel__handle:before{content:"";width:40px;height:5px;border-radius:3px;background:currentColor;opacity:.55}.info-panel--compact .info-panel__handle:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--focus-ring)}.info-panel.is-transitioning{opacity:0;transform:translateY(16px)}.info-panel__eyebrow{font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}.info-panel__title{font-size:clamp(36px,4.4vw,50px);font-weight:700;letter-spacing:-.06em;line-height:.94;color:var(--text);margin-bottom:12px}.info-panel__meta{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:16px}.info-panel__description{font-size:14px;line-height:1.7;color:var(--text-muted);margin-bottom:14px}.info-panel__credit{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);opacity:.7}.info-panel__share{pointer-events:auto;margin-top:10px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--glass-border);background:#ffffff8c;color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.info-panel__share:hover{background:#fffc}.info-panel__share:focus-visible{outline:2px solid var(--accent, currentColor);outline-offset:2px}.info-panel__share:disabled{cursor:progress;opacity:.6}.info-panel__share[hidden]{display:none}.nav-controls{position:fixed;bottom:calc(192px + var(--safe-bottom));left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:100;overflow:visible}.nav-btn{position:relative;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--text);isolation:isolate;user-select:none;-webkit-user-select:none}.nav-btn:before{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);z-index:-1}.nav-btn:hover:before{background:var(--glass-bg-strong);transform:scale(1.06);box-shadow:var(--shadow-soft)}.nav-btn:active:before{transform:scale(.96)}.nav-btn:focus-visible{outline:none}.nav-btn:focus-visible:before{background:var(--glass-bg-strong);box-shadow:var(--shadow-soft),0 0 0 3px #fffc}@keyframes nav-ring-pulse{0%{box-shadow:var(--shadow-medium),0 0 #fff6}60%{box-shadow:var(--shadow-medium),0 0 0 12px #fff0}to{box-shadow:var(--shadow-medium),0 0 #fff0}}:root[data-nav-hint=active] .nav-btn:before{animation:nav-ring-pulse 1.6s ease-out 3}:root[data-nav-hint=active] .nav-btn:last-child:before{animation-delay:.4s}:root[data-nav-hint=active] .nav-btn:hover:before,:root[data-nav-hint=active] .nav-btn:focus-visible:before{animation:none}.zoom-controls{position:fixed;bottom:var(--chrome-bottom);right:calc(36px + var(--safe-right));display:flex;flex-direction:column;gap:8px;z-index:100;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:8px;box-shadow:var(--shadow-soft)}.zoom-indicator{position:fixed;top:calc(var(--chrome-top) + 8px);left:50%;z-index:101;pointer-events:none;opacity:0;translate:-50% -4px;transition:opacity var(--dur-fast) var(--ease-out),translate var(--dur-fast) var(--ease-out)}.zoom-indicator.is-visible{opacity:1;translate:-50% 0}.zoom-indicator__badge{display:inline-block;min-width:4.5em;padding:6px 12px;border-radius:999px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);color:var(--text);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;text-align:center}.gallery-room-view .zoom-indicator.gallery-room-view__zoom-indicator{position:absolute;top:calc(var(--safe-top) + 72px);z-index:1002}@media (prefers-reduced-motion: reduce){.zoom-indicator,.zoom-indicator.is-visible{translate:-50% 0}}.zoom-controls__btn{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:#ffffff8c;color:var(--text);font-size:22px;font-weight:600;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.zoom-controls__btn:hover{background:var(--glass-bg-strong);transform:scale(1.05)}.zoom-controls__btn:active{transform:scale(.94)}.zoom-controls__btn--reset{margin-top:4px;border-top:1px solid rgba(0,0,0,.06);font-size:18px}.zoom-controls__icon{line-height:1}.audio-controls{position:fixed;top:var(--audio-ctrl-top, calc(var(--chrome-top) + 20px));right:var(--audio-ctrl-right, calc(146px + var(--safe-right)));display:flex;align-items:center;gap:0;z-index:100;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:22px;padding:0 8px 0 0;min-height:44px;box-shadow:var(--shadow-soft)}.audio-controls[hidden]{display:none}.audio-controls__btn{position:relative;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text);background:#ffffff8c;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.audio-controls__btn:hover{background:var(--glass-bg-strong);transform:scale(1.05)}.audio-controls__btn:active{transform:scale(.94)}.audio-controls__btn--muted{color:var(--text-muted)}.audio-controls__btn--blocked{animation:audio-blocked-pulse 2.4s ease-in-out infinite}@keyframes audio-blocked-pulse{0%,to{opacity:1}50%{opacity:.55}}.audio-controls__indicator{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:var(--accent);pointer-events:none;animation:audio-indicator-pop .3s var(--ease-spring) both}@keyframes audio-indicator-pop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.audio-controls__btn-icon{display:flex;align-items:center;justify-content:center;line-height:0}.audio-controls__btn-icon svg{display:block}.audio-controls__slider-wrap{display:flex;align-items:center;min-height:44px;padding-left:6px;padding-right:2px}.audio-controls__slider{-webkit-appearance:none;appearance:none;width:84px;height:4px;border-radius:2px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--volume-pct, 50%),rgba(0,0,0,.12) var(--volume-pct, 50%),rgba(0,0,0,.12) 100%);outline:none;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out)}.audio-controls__slider:disabled{opacity:.3;cursor:default}.audio-controls__slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid rgba(255,255,255,.9);box-shadow:0 1px 4px #0000002e;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out)}.audio-controls__slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid rgba(255,255,255,.9);box-shadow:0 1px 4px #0000002e;cursor:pointer}.audio-controls__slider:hover:not(:disabled)::-webkit-slider-thumb{transform:scale(1.2)}.fullscreen-btn{position:fixed;top:calc(var(--chrome-top) + 24px);right:calc(36px + var(--safe-right));width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;color:var(--text);box-shadow:var(--shadow-soft);transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);z-index:100}.fullscreen-btn:hover{background:var(--glass-bg-strong);transform:scale(1.05)}.fullscreen-btn .fullscreen-btn__icon{display:flex;align-items:center;justify-content:center;line-height:0}.fullscreen-btn .fullscreen-btn__icon svg{display:block}.fullscreen-btn .fullscreen-btn__exit,.fullscreen-btn[aria-pressed=true] .fullscreen-btn__enter{display:none}.fullscreen-btn[aria-pressed=true] .fullscreen-btn__exit{display:block}.prefs{position:fixed;top:calc(var(--chrome-top) + 20px);right:calc(86px + var(--safe-right));z-index:110;overflow:visible}.prefs__trigger{position:relative;width:52px;height:52px;min-width:52px;min-height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text);isolation:isolate}.prefs__trigger .prefs__trigger-icon{display:flex;align-items:center;justify-content:center;line-height:0}.prefs__trigger .prefs__trigger-icon svg{display:block}.prefs__trigger:before{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:var(--shadow-soft);transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);z-index:-1}.prefs__trigger:hover:before{background:var(--glass-bg-strong);transform:scale(1.05)}.prefs__trigger[aria-expanded=true]:before{background:var(--glass-bg-strong)}.prefs__panel{position:absolute;top:60px;right:0;width:min(320px,100vw - var(--safe-left) - var(--safe-right) - 24px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 120px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border-strong);border-radius:var(--radius-md);padding:18px 18px 20px;box-shadow:var(--shadow-medium);transform-origin:top right;animation:prefs-in var(--dur-panel) var(--ease-gallery-out)}@keyframes prefs-in{0%{opacity:0;transform:scale(.96) translateY(-10px)}to{opacity:1;transform:none}}.prefs__heading{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin:4px 0 10px}.prefs__heading:nth-of-type(2){margin-top:18px}.prefs__toggle.is-disabled{opacity:.55;cursor:default}.prefs__toggle[hidden]{display:none}.prefs__toggle{display:flex;align-items:center;gap:12px;padding:8px 6px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.prefs__toggle:hover{background:var(--accent-soft)}.prefs__toggle input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.prefs__toggle-track{flex-shrink:0;width:38px;height:22px;border-radius:var(--radius-pill);background:#11181d2e;position:relative;transition:background var(--dur-fast) var(--ease-out)}.prefs__toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform var(--dur-fast) var(--ease-out)}.prefs__toggle input:checked~.prefs__toggle-track{background:var(--accent)}.prefs__toggle input:checked~.prefs__toggle-track:after{transform:translate(16px)}.prefs__toggle input:focus-visible~.prefs__toggle-track{outline:3px solid var(--focus-ring);outline-offset:2px}.prefs__toggle-label{display:flex;flex-direction:column;gap:2px}.prefs__range{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 6px 4px}.prefs__range input[type=range]{width:100%;accent-color:var(--accent)}.prefs__range-label{font-size:12px;font-weight:600;color:var(--text)}.prefs__range-value{font-size:11px;color:var(--text-muted);min-width:36px;text-align:right}.prefs__note{margin:6px 6px 2px;font-size:11px;line-height:1.4;color:var(--text-muted)}.prefs__toggle-title,.prefs__radio-title{font-size:13px;font-weight:600;color:var(--text);line-height:1.2}.prefs__toggle-desc,.prefs__radio-desc{font-size:11px;color:var(--text-muted);line-height:1.4}.prefs__group{border:none;padding:0;margin:0}.prefs__legend{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.prefs__radio{display:flex;align-items:flex-start;gap:12px;padding:8px 6px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.prefs__radio:hover{background:var(--accent-soft)}.prefs__radio input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;border:2px solid rgba(17,24,29,.4);flex-shrink:0;margin-top:2px;position:relative;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out)}.prefs__radio input:checked{border-color:var(--accent)}.prefs__radio input:checked:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--accent)}.prefs__radio input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.prefs__radio-label{display:flex;flex-direction:column;gap:2px}.timeline{position:fixed;bottom:calc(22px + var(--safe-bottom));left:50%;transform:translate(-50%);width:min(1180px,100vw - 32px - var(--safe-left) - var(--safe-right));background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:22px;padding:13px 14px 10px;z-index:100;box-shadow:0 16px 48px #11181d2e,0 2px 8px #11181d14;display:flex;align-items:center;gap:12px;isolation:isolate}.timeline>*{position:relative;z-index:2}.timeline.timeline--at-start .timeline__list{scroll-padding-left:12px}.timeline.timeline--at-end .timeline__list{scroll-padding-right:12px}.timeline__list{list-style:none;display:flex;align-items:center;justify-content:space-evenly;gap:clamp(10px,1.5vw,20px);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x proximity;scroll-padding-inline:12px;-webkit-overflow-scrolling:touch;padding:10px 8px 8px;flex:1 1 0;width:0;min-width:0}.timeline__list::-webkit-scrollbar{display:none}.timeline.timeline--scrollable .timeline__list{justify-content:flex-start}.timeline.timeline--fits .timeline__arrow{display:none}.timeline__item{flex:0 0 clamp(120px,13vw,150px);scroll-snap-align:center;scroll-margin-inline:12px;height:clamp(68px,8vw,84px)}.timeline__thumb{display:block;position:relative;padding:0;border-radius:14px;overflow:hidden;cursor:pointer;width:100%;height:100%;transition:transform var(--dur-timeline) var(--ease-gallery-out),box-shadow var(--dur-timeline) var(--ease-gallery-out),border-color var(--dur-control) var(--ease-out),opacity var(--dur-control) var(--ease-out);border:2px solid rgba(17,24,29,.12);background:#ffffffb8;scroll-margin-inline:12px;opacity:.78}.timeline__thumb.is-active{transform:translateY(-3px) scale(1.045);border-color:#11181dd1;box-shadow:0 8px 22px #11181d42;opacity:1}.timeline__thumb:after{content:"";position:absolute;z-index:2;left:50%;bottom:2px;width:30px;height:3px;border-radius:999px;background:#11181d;box-shadow:0 1px 5px #ffffff8c;opacity:0;transform:translate(-50%) scaleX(.72);transition:opacity var(--dur-control) var(--ease-out),transform var(--dur-control) var(--ease-out);pointer-events:none}.timeline__thumb.is-active:after{opacity:1;transform:translate(-50%) scaleX(1)}.timeline__thumb:hover:not(.is-active){transform:translateY(-2px);box-shadow:var(--shadow-soft);opacity:1}.timeline__thumb:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.timeline__arrow{flex-shrink:0;width:38px;height:38px;border:1px solid rgba(17,24,29,.14);border-radius:50%;background:var(--glass-bg-strong);color:var(--text-strong);box-shadow:0 4px 14px #11181d1f;cursor:pointer;opacity:.72;font-size:25px;line-height:1;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);display:flex;align-items:center;justify-content:center}.timeline__arrow:hover:not(:disabled){opacity:1;transform:scale(1.06);background:#fff}.timeline__arrow:disabled{opacity:.24;pointer-events:none}.timeline__arrow:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;opacity:1}.timeline__counter{flex-shrink:0;min-width:68px;padding:8px 10px;border-radius:999px;background:#11181de0;color:#fff;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.08em;pointer-events:none;text-align:center}.timeline__frame{display:block;width:100%;height:100%;position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffff8c,#c8d2d78c)}.timeline__skeleton{position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff8c,#fff0);background-size:200% 100%;animation:timeline-skeleton 1.4s linear infinite;transition:opacity var(--dur-base) var(--ease-out)}.timeline__frame.is-loaded .timeline__skeleton{opacity:0}@keyframes timeline-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}.timeline__img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(100%,100% * var(--thumb-aspect, 1.5));height:min(100%,100% / var(--thumb-aspect, 1.5));max-width:100%;max-height:100%;aspect-ratio:var(--thumb-aspect, 1.5);object-fit:cover;display:block;pointer-events:none;opacity:0;transition:opacity var(--dur-base) var(--ease-out)}.timeline__frame.is-loaded .timeline__img{opacity:1}.timeline__thumb-label{position:absolute;bottom:7px;left:0;right:0;overflow:hidden;padding:14px 9px 0;background:linear-gradient(to top,rgba(0,0,0,.84),rgba(0,0,0,.28) 75%,transparent);font-size:11px;font-weight:650;color:#fff;letter-spacing:.01em;text-align:left;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.timeline__thumb-subtitle{position:absolute;z-index:1;left:9px;right:9px;bottom:27px;overflow:hidden;color:#ffffffdb;font-size:8px;font-weight:650;letter-spacing:.1em;text-align:left;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;pointer-events:none}.hint-text{position:fixed;bottom:calc(var(--chrome-bottom) - 12px);right:calc(96px + var(--safe-right));font-size:11px;letter-spacing:.05em;color:var(--text-muted);opacity:.7;pointer-events:none;z-index:100}@media (max-width: 950px){.hint-text{display:none}}.loading-overlay{--loading-accent: var(--color-gallery-wall, #c7ced4);--loading-accent-soft: rgba(199, 206, 212, .14);position:fixed;inset:0;background:#0d0d0e;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:200;transition:opacity 1.2s var(--ease-gallery-out)}.loading-overlay.is-hidden{opacity:0;pointer-events:none}.loading-card{position:relative;z-index:2;width:min(460px,100vw - 48px);padding:clamp(32px,7vw,54px);border-radius:28px;border:1px solid rgba(240,234,224,.16);background:#121214cc;backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%);box-shadow:0 34px 90px #0000007a;text-align:center;color:#f0eae0}.loading-wordmark{display:flex;align-items:center;justify-content:center;width:100%;font-size:clamp(36px,9vw,58px);line-height:.95;font-weight:700}.loading-wordmark__text{display:inline-block;letter-spacing:.18em;padding-left:.18em}.loading-subtitle{margin-top:14px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#f0eae0b3}.loading-progress-track{width:min(320px,100%);height:7px;margin:34px auto 10px;border-radius:999px;overflow:hidden;background:#f0eae01f}.loading-progress-fill{width:0%;height:100%;border-radius:inherit;background:var(--loading-accent);transition:width .26s var(--ease-out)}.loading-progress-pct{font-size:12px;font-weight:700;letter-spacing:.08em;color:#f0eae0db}.loading-hint{min-height:20px;margin-top:20px;font-size:13px;color:#f0eae0a8}.loading-start-btn{margin-top:2rem;padding:.9rem 2.4rem;border:1.5px solid var(--loading-accent);border-radius:4px;background:transparent;color:#f0eae0;font-size:1rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;opacity:0;transform:translateY(8px);transition:opacity .6s ease,transform .6s ease,background .2s ease}.loading-start-btn.is-visible{opacity:1;transform:translateY(0)}.loading-start-btn.is-visible:not(:disabled){will-change:background-color}.loading-start-btn:disabled{cursor:default}.loading-start-btn:not(:disabled):hover{background:var(--loading-accent-soft)}.loading-start-btn:focus-visible{outline:2px solid var(--loading-accent);outline-offset:3px}@media (prefers-reduced-motion: reduce){.loading-start-btn{transition:none}.loading-start-btn.is-visible{opacity:1;transform:none}}.loading-particle{position:absolute;width:var(--particle-size, 160px);height:var(--particle-size, 160px);left:var(--particle-x, 50%);top:var(--particle-y, 50%);border-radius:50%;background:radial-gradient(circle,var(--particle-color, rgba(181, 154, 106, .12)) 0%,transparent 68%);filter:blur(4px);opacity:.9;will-change:transform,opacity;animation:loading-wander var(--particle-duration, 4s) linear infinite alternate,loading-pulse calc(var(--particle-duration, 4s) * .85) ease-in-out infinite;animation-delay:var(--particle-delay, 0s),var(--particle-delay, 0s)}.webgl-restore-status{position:fixed;left:50%;top:calc(22px + var(--safe-top));transform:translate(-50%);z-index:260;padding:10px 16px;border-radius:999px;background:#121214d6;color:#f0eae0;border:1px solid rgba(240,234,224,.18);box-shadow:var(--shadow-soft);pointer-events:none;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.webgl-restore-status.is-visible{opacity:1}@keyframes loading-wander{0%{transform:translate3d(calc(var(--particle-drift-x, 20px) * -1),calc(var(--particle-drift-y, 15px) * -1),0) scale(.92)}28%{transform:translate3d(var(--particle-drift-x2, 30px),var(--particle-drift-y2, -20px),0) scale(1.06)}62%{transform:translate3d(var(--particle-drift-x3, -25px),var(--particle-drift-y3, 35px),0) scale(.97)}to{transform:translate3d(var(--particle-drift-x, 20px),var(--particle-drift-y, 15px),0) scale(1.1)}}@keyframes loading-pulse{0%,to{opacity:.6}50%{opacity:1}}.fallback-screen{position:fixed;inset:0;overflow:auto;padding:max(32px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--color-gallery-wall);z-index:300}.fallback-screen__card{margin:0 auto 32px;width:min(540px,100vw - var(--safe-left) - var(--safe-right) - 32px);background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);padding:clamp(24px,5vw,40px);box-shadow:var(--shadow-medium)}.fallback-screen__eyebrow{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.fallback-screen__title{font-size:clamp(26px,4vw,36px);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--text-strong);margin-bottom:16px}.fallback-screen__body{font-size:14px;line-height:1.7;color:var(--text-muted);margin-bottom:12px}.fallback-screen__detail{font-size:11px;letter-spacing:.04em;color:var(--text-muted);opacity:.7}.fallback-screen__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.fallback-screen__action{appearance:none;border:1px solid var(--glass-border-strong);border-radius:var(--radius-pill);padding:10px 16px;background:var(--glass-bg-strong);color:var(--text-strong);font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.fallback-screen__action:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.fallback-screen__museum{width:min(1080px,100%);margin:0 auto;display:grid;gap:20px}.fallback-screen__artwork{display:grid;grid-template-columns:minmax(180px,34%) 1fr;gap:clamp(18px,4vw,36px);align-items:center;padding:clamp(18px,4vw,32px);border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);background:var(--glass-bg-strong)}.fallback-screen__artwork img{width:100%;max-height:56vh;object-fit:contain;background:#00000014}.fallback-screen__artwork h2{margin-bottom:8px;color:var(--text-strong)}.fallback-screen__artwork p{margin-top:10px;color:var(--text-muted);line-height:1.65}.fallback-screen__metadata{font-size:.85rem}@media (max-width: 640px){.fallback-screen__artwork{grid-template-columns:1fr}}:root[data-contrast=high]{--bg1: #f2f5f7;--bg3: #99a4ad;--text: #000000;--text-strong: #000000;--text-muted: #1c2329;--glass-bg: rgba(255, 255, 255, .96);--glass-bg-strong: rgba(255, 255, 255, 1);--glass-border: rgba(0, 0, 0, .55);--glass-border-strong: rgba(0, 0, 0, .75);--glass-blur: 8px;--accent: #000000;--accent-soft: rgba(0, 0, 0, .12);--focus-ring: #000000}:root[data-contrast=high] .info-panel,:root[data-contrast=high] .topbar__badge,:root[data-contrast=high] .nav-btn,:root[data-contrast=high] .zoom-controls,:root[data-contrast=high] .zoom-controls__btn,:root[data-contrast=high] .audio-controls,:root[data-contrast=high] .audio-controls__btn,:root[data-contrast=high] .fullscreen-btn,:root[data-contrast=high] .prefs__trigger,:root[data-contrast=high] .prefs__panel,:root[data-contrast=high] .timeline{border-width:2px;border-color:var(--glass-border-strong)}:root[data-contrast=high] .nav-btn,:root[data-contrast=high] .zoom-controls__btn,:root[data-contrast=high] .audio-controls__btn,:root[data-contrast=high] .fullscreen-btn,:root[data-contrast=high] .prefs__trigger{color:var(--text-strong);font-weight:700}:root[data-contrast=high] .timeline__thumb-label{background:linear-gradient(to top,#000000d9,#0003);font-weight:600}:root[data-motion=reduced] .loading-particle{animation:none;display:none}:root[data-motion=reduced] .timeline__skeleton{animation:none;background:#ffffff73}:root[data-motion=reduced] .info-panel,:root[data-motion=reduced] .nav-btn,:root[data-motion=reduced] .zoom-controls__btn,:root[data-motion=reduced] .audio-controls__btn,:root[data-motion=reduced] .fullscreen-btn,:root[data-motion=reduced] .prefs__trigger,:root[data-motion=reduced] .timeline__thumb,:root[data-motion=reduced] .timeline__thumb:after{transition-duration:.001ms}:root[data-motion=reduced] .prefs__panel,:root[data-motion=reduced] .phone-menu__panel{animation:none}:root[data-motion=reduced] .audio-controls__btn--blocked{animation:none}:root[data-motion=reduced] .audio-controls__indicator{animation:none}@media (prefers-reduced-motion: reduce){:root:not([data-motion=full]) .loading-particle{display:none}:root:not([data-motion=full]) .timeline__skeleton{animation:none}:root:not([data-motion=full]) .prefs__panel{animation:none}:root:not([data-motion=full]) .topbar{animation:none}:root:not([data-motion=full]) .topbar__badge{animation:none}:root:not([data-motion=full]) .topbar__help-btn{transition:none}}:root[data-presentation=on] .topbar__brand-group,:root[data-presentation=on] .topbar__right,:root[data-presentation=on] .hint-text{opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}:root[data-presentation=on]:hover .topbar__brand-group,:root[data-presentation=on]:hover .topbar__right,:root[data-presentation=on]:hover .hint-text,:root[data-presentation=on]:focus-within .topbar__brand-group,:root[data-presentation=on]:focus-within .topbar__right,:root[data-presentation=on]:focus-within .hint-text{opacity:1;pointer-events:auto}:root[data-chrome-mode=clean] .info-panel{opacity:0;pointer-events:none;transform:translate(var(--chrome-infopanel-hide-offset));transition:opacity var(--dur-chrome-hide) var(--ease-chrome-hide),transform var(--dur-chrome-hide) var(--ease-chrome-hide)}:root[data-chrome-mode=clean] .info-panel.is-revealed{opacity:1;transform:translate(0);transition:opacity var(--dur-chrome-reveal) var(--ease-chrome-reveal),transform var(--dur-chrome-reveal) var(--ease-chrome-reveal)}:root[data-chrome-mode=clean] .info-panel--compact.is-revealed{pointer-events:auto}:root[data-chrome-mode=clean] .info-panel.info-panel--compact{transform:translateY(32px)}:root[data-chrome-mode=clean] .info-panel.info-panel--compact.is-revealed:not(.is-transitioning){transform:translateY(0)}:root[data-chrome-mode=clean] .info-panel.info-panel--compact.is-revealed{transition:opacity var(--dur-chrome-reveal) var(--ease-chrome-reveal),transform var(--dur-chrome-reveal) var(--ease-chrome-reveal),max-height var(--dur-content) var(--ease-gallery-out)}:root[data-chrome-mode=clean] .info-panel.is-revealed.is-transitioning{opacity:0;transform:translate(0) translateY(16px)}:root[data-chrome-mode=clean] .nav-controls{opacity:0;pointer-events:none;transform:translate(-50%) translateY(var(--chrome-nav-hide-offset));transition:opacity var(--dur-chrome-hide) var(--ease-chrome-hide),transform var(--dur-chrome-hide) var(--ease-chrome-hide)}:root[data-chrome-mode=clean] .nav-controls.is-revealed{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0);transition:opacity var(--dur-chrome-reveal) var(--ease-chrome-reveal),transform var(--dur-chrome-reveal) var(--ease-chrome-reveal)}:root[data-chrome-mode=clean] .timeline a,:root[data-chrome-mode=clean] .timeline button{scroll-margin-bottom:80px}:root[data-chrome-mode=clean] .info-panel a,:root[data-chrome-mode=clean] .info-panel button{scroll-margin-left:320px}.info-panel-peek-hit{position:fixed;top:50%;left:0;transform:translateY(-50%);width:var(--chrome-peek-touch-target);height:var(--chrome-peek-length-v);display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:7px;z-index:101;pointer-events:none;contain:layout paint}@media (pointer: coarse){.info-panel-peek-hit{pointer-events:auto}}.info-panel-peek{width:var(--chrome-peek-width-v);height:100%;border-radius:0 3px 3px 0;background:linear-gradient(90deg,rgba(255,255,255,.68),var(--chrome-peek-bg));-webkit-backdrop-filter:blur(10px) saturate(125%);backdrop-filter:blur(10px) saturate(125%);margin-left:var(--safe-left);contain:layout paint;will-change:opacity;box-shadow:1px 0 #0000002e,-1px 0 #ffffff24,0 0 12px #b5d7ff38}@keyframes peek-pulse{0%,to{opacity:.88}50%{opacity:1}}@keyframes peek-settle{0%{opacity:1}to{opacity:.88}}:root[data-chrome-mode=clean] .info-panel-peek{animation:peek-pulse var(--dur-peek-pulse) ease-in-out infinite}:root[data-chrome-mode=visible] .info-panel-peek-hit{display:none}.info-panel-chevron{width:var(--chrome-affordance-size);height:var(--chrome-affordance-size);border-top:var(--chrome-affordance-weight) solid var(--chrome-affordance-color);border-right:var(--chrome-affordance-weight) solid var(--chrome-affordance-color);transform:rotate(45deg) translate(-2px);border-radius:1px;flex-shrink:0;margin-left:0;filter:drop-shadow(1px 0 1px rgba(0,0,0,.5)) drop-shadow(-1px 0 0 rgba(255,255,255,.22)) drop-shadow(0 0 8px rgba(181,215,255,.28))}.info-panel-peek-hit:after{content:"";position:absolute;background:#ffffffe6;border-radius:1px;pointer-events:none}.info-panel-peek-hit:after{top:50%;left:calc(var(--safe-left) + 18px);transform:translateY(-50%);width:3px;height:32px;box-shadow:1px 0 1px #0000008f,-1px 0 #ffffff38,0 0 8px #b5d7ff3d}:root[data-chrome-mode=visible] .info-panel-peek-hit:after{display:none}:root[data-chrome-mode=clean] .info-panel-chevron{animation:peek-pulse var(--dur-peek-pulse) ease-in-out infinite}:root[data-chrome-mode=visible] .info-panel-chevron{display:none}:root[data-chrome-mode=clean] #app.affordance-settling .info-panel-peek,:root[data-chrome-mode=clean] #app.affordance-settling .info-panel-chevron{animation:peek-settle 2s ease-out forwards}:root[data-hover=false][data-chrome-mode=clean] .info-panel:not(.is-revealed){opacity:0;pointer-events:none}@media (prefers-reduced-motion: reduce){:root[data-chrome-mode=clean] .info-panel,:root[data-chrome-mode=clean] .nav-controls{transition-duration:.001ms}:root[data-chrome-mode=clean] .info-panel-peek{animation:none;opacity:1}:root[data-chrome-mode=clean] .info-panel-chevron{animation:none;opacity:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.45))}.info-panel-peek-hit:after{opacity:1}:root[data-nav-hint=active] .nav-btn:before{animation:none}}@media (forced-colors: active){.info-panel-peek{background:ButtonText;opacity:1;forced-color-adjust:none;box-shadow:none}.info-panel-chevron{border-color:ButtonText;opacity:1;forced-color-adjust:none;filter:none}.info-panel-peek-hit:after{background:ButtonText;opacity:1;forced-color-adjust:none;box-shadow:none}:root[data-nav-hint=active] .nav-btn:before{animation:none}}:root[data-layout-tier=phone-small] .hint-text,:root[data-layout-tier=phone-portrait] .hint-text{display:none}:root[data-layout-tier=phone-small] .topbar__badge,:root[data-layout-tier=phone-portrait] .topbar__badge{display:none}@media (max-width: 599px){.topbar{padding-left:calc(16px + var(--safe-left));padding-right:calc(16px + var(--safe-right))}.nav-controls{gap:4px}.zoom-controls,.fullscreen-btn{right:calc(16px + var(--safe-right))}.prefs{right:calc(66px + var(--safe-right))}.audio-controls__slider-wrap{display:none}.audio-controls{--audio-ctrl-right: calc(126px + var(--safe-right))}:root{--chrome-bottom: max(112px, calc(100px + var(--safe-bottom)))}.timeline{bottom:calc(10px + var(--safe-bottom));width:calc(100vw - 20px - var(--safe-left) - var(--safe-right));gap:6px;padding:6px 8px;border-radius:18px}.timeline__list{gap:8px;padding:6px 4px 4px}.timeline__item{flex-basis:84px;height:54px}.timeline__thumb{border-radius:10px}.timeline__thumb-subtitle{display:none}.timeline__thumb-label{bottom:4px;padding:10px 6px 0;font-size:10px}.timeline__arrow{width:32px;height:44px;font-size:22px}.timeline__counter{display:none}.nav-controls{bottom:calc(112px + var(--safe-bottom))}}@media (max-width: 599px) and (pointer: coarse){:root:not([data-chrome-mode=visible]) .zoom-controls:not(.gallery-room-view__zoom-controls){display:none}}.topbar,.timeline{transition-property:opacity,translate,visibility;transition-duration:.28s;transition-timing-function:cubic-bezier(.22,1,.36,1)}:root[data-phone-immersive=true] .topbar,:root[data-phone-immersive=true] .timeline,:root[data-phone-immersive=true] .nav-controls,:root[data-phone-immersive=true] .info-panel,:root[data-phone-immersive=true] .info-panel-peek,:root[data-phone-immersive=true] .info-panel-chevron{opacity:0;visibility:hidden;pointer-events:none}:root[data-phone-immersive=true] .topbar{translate:0 -12px}:root[data-phone-immersive=true] .timeline{translate:0 12px}@media (prefers-reduced-motion: reduce){.topbar,.timeline{transition-duration:.001ms}}@media (max-height: 499px) and (pointer: coarse) and (orientation: landscape){:root{--chrome-top: calc(48px + var(--safe-top));--chrome-bottom: calc(8px + var(--safe-bottom))}:root:not([data-chrome-mode=visible]) .zoom-controls:not(.gallery-room-view__zoom-controls){display:none}.timeline:not(.gallery-room-view__timeline){top:calc(56px + var(--safe-top));bottom:calc(8px + var(--safe-bottom));left:auto;right:calc(8px + var(--safe-right));transform:none;width:92px;flex-direction:column;gap:6px;padding:6px;border-radius:18px}.timeline:not(.gallery-room-view__timeline) .timeline__list{flex-direction:column;justify-content:flex-start;width:100%;height:0;min-height:0;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y proximity;scroll-padding-block:8px;padding:4px 2px;gap:8px}.timeline:not(.gallery-room-view__timeline) .timeline__item{flex:0 0 56px;width:100%;height:56px;scroll-margin-block:8px}.timeline:not(.gallery-room-view__timeline) .timeline__thumb-label,.timeline:not(.gallery-room-view__timeline) .timeline__arrow,.timeline:not(.gallery-room-view__timeline) .timeline__counter{display:none}:root[data-phone-immersive=true] .timeline:not(.gallery-room-view__timeline){translate:12px 0}:root:not([data-chrome-mode=visible]) .nav-controls{display:none}}@media (max-height: 499px){.topbar{height:calc(48px + var(--safe-top))}.info-panel{display:none}:root[data-chrome-mode=clean] .nav-controls{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.hint-text{display:none}}@media (min-width: 600px) and (max-width: 899px){.info-panel{width:min(360px,100vw - 80px - var(--safe-left) - var(--safe-right));left:calc(20px + var(--safe-left))}.prefs__panel{width:min(300px,100vw - 40px - var(--safe-left) - var(--safe-right))}}@media (min-width: 900px) and (max-width: 1179px){.info-panel{width:min(420px,42vw)}}@media (max-width: 720px){.info-panel:not(.info-panel--compact){bottom:calc(var(--chrome-bottom) + 28px);left:calc(16px + var(--safe-left));padding:22px 22px 24px}}:root[data-quality=battery]{--glass-blur: 12px}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.info-panel,.topbar__badge,.nav-btn,.zoom-controls,.zoom-controls__btn,.audio-controls,.audio-controls__btn,.fullscreen-btn,.prefs__trigger,.prefs__panel,.timeline{background:var(--glass-bg-strong)}}.topbar,.info-panel,.zoom-controls,.audio-controls,.fullscreen-btn,.prefs__panel,.timeline,.hint-text,.loading-overlay{contain:layout paint}.topbar.topbar--has-menu{contain:layout}.loading-particle{contain:strict}.keyboard-help{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(4px)}.keyboard-help[hidden]{display:none}.keyboard-help__panel{background:#13191df5;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:1.5rem 2rem;min-width:320px;max-width:90vw;position:relative}.keyboard-help__title{font-size:1rem;font-weight:600;margin:0 0 1rem;color:#fffffff2}.keyboard-help__table{width:100%;border-collapse:collapse}.keyboard-help__table td{padding:.3rem .5rem;color:#ffffffd1;font-size:.85rem}@media (max-width: 420px),(max-height: 420px){.keyboard-help .keyboard-help__panel{width:min(90vw,100vw - 32px);min-width:0;max-width:none;max-height:calc(100dvh - 32px);overflow-y:auto;padding:1.25rem 1rem}.keyboard-help .keyboard-help__table td{padding:.3rem .25rem;font-size:.78rem}}.keyboard-help__key{display:inline-block;background:#ffffff1f;border:1px solid rgba(255,255,255,.28);border-radius:4px;padding:.1rem .45rem;font-family:ui-monospace,monospace;font-size:.8rem;white-space:nowrap;color:#fffffff2}.keyboard-help__hint{margin:1rem 0 0;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;line-height:1.4;color:#ffffff9e}.keyboard-help__close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;min-width:unset;min-height:unset;font-size:16px;color:#ffffffb3}.keyboard-help__close:hover{color:#fff}.topbar__help-btn,.phone-menu__toggle{position:relative;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);box-shadow:var(--shadow-soft)}.topbar__help-btn svg,.phone-menu__toggle svg{display:block;flex-shrink:0}.topbar__help-btn:hover,.phone-menu__toggle:hover{background:var(--glass-bg-strong);border-color:var(--glass-border-strong);box-shadow:var(--shadow-medium)}.topbar__help-btn:active,.phone-menu__toggle:active{transform:scale(.94)}.topbar__help-btn:focus-visible,.phone-menu__toggle:focus-visible{outline:none;box-shadow:var(--shadow-soft),0 0 0 3px var(--focus-ring)}.phone-menu{position:relative;display:flex;flex:0 0 auto}.phone-menu.is-open .phone-menu__toggle{background:var(--glass-bg-strong);border-color:var(--glass-border-strong)}.phone-menu__panel{position:absolute;top:calc(100% + 10px);right:0;z-index:120;display:flex;align-items:center;gap:8px;padding:6px;border-radius:var(--radius-pill);background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border-strong);box-shadow:var(--shadow-medium);transform-origin:top right;animation:prefs-in var(--dur-panel) var(--ease-gallery-out)}.phone-menu__panel[hidden]{display:none}.phone-menu__panel .audio-controls,.phone-menu__panel .fullscreen-btn{position:relative;inset:auto;z-index:auto;box-shadow:none}.phone-menu__panel .fullscreen-btn{flex:0 0 44px}.phone-menu__panel .prefs--embedded{position:static;inset:auto;z-index:auto}.phone-menu__panel .prefs__panel{top:calc(100% + 8px);right:0;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 168px)}@media (prefers-reduced-motion: reduce){.phone-menu__panel{animation:none}}.topbar__chrome-btn{display:flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius-pill);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);color:var(--text);font-size:12px;font-weight:500;letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);box-shadow:var(--shadow-soft)}.topbar__chrome-btn svg{display:block;flex-shrink:0}.topbar__chrome-btn:hover{background:var(--glass-bg-strong);border-color:var(--glass-border-strong);box-shadow:var(--shadow-medium)}.topbar__chrome-btn:active{transform:scale(.95)}.topbar__chrome-btn:focus-visible{outline:none;box-shadow:var(--shadow-soft),0 0 0 3px var(--focus-ring)}:root[data-layout-tier=phone-small] .topbar__chrome-btn,:root[data-layout-tier=phone-portrait] .topbar__chrome-btn{padding:0 10px}:root[data-layout-tier=phone-small] .topbar__chrome-btn .topbar__chrome-btn-label,:root[data-layout-tier=phone-portrait] .topbar__chrome-btn .topbar__chrome-btn-label{display:none}:root[data-chrome-mode=visible] .topbar__chrome-btn{display:none}.topbar__back-btn{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border-radius:var(--radius-pill);background:#12171b;border:1px solid rgba(255,255,255,.22);color:var(--text-inverse);font-size:13px;font-weight:600;letter-spacing:.02em;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);box-shadow:var(--shadow-medium)}.topbar__back-btn svg{display:block;flex-shrink:0}.topbar__back-btn:hover:not(:disabled){background:#1d2731;box-shadow:var(--shadow-strong)}.topbar__back-btn:active:not(:disabled){transform:scale(.97)}.topbar__back-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #fffffff2,0 0 0 6px #0f1418d9}.topbar__back-btn:disabled{cursor:progress;opacity:.7}.topbar__back-btn-label--short{display:none}:root[data-layout-tier=phone-small] .topbar__back-btn,:root[data-layout-tier=phone-portrait] .topbar__back-btn{min-height:44px;padding:0 14px}:root[data-layout-tier=phone-small] .topbar__back-btn .topbar__back-btn-label--full,:root[data-layout-tier=phone-portrait] .topbar__back-btn .topbar__back-btn-label--full{display:none}:root[data-layout-tier=phone-small] .topbar__back-btn .topbar__back-btn-label--short,:root[data-layout-tier=phone-portrait] .topbar__back-btn .topbar__back-btn-label--short{display:inline}:root[data-layout-tier=phone-small] .topbar__brand-group{display:none}@media (forced-colors: active){.nav-btn,.zoom-btn,.topbar__help-btn,.topbar__chrome-btn,.topbar__back-btn,.museum-hub__artwork,.museum-hub__pager-arrow,.museum-hub__destination,.loading-start-btn,.prefs__toggle,.audio-btn{forced-color-adjust:none;border:2px solid ButtonText;background:ButtonFace;color:ButtonText}:focus-visible{outline:3px solid Highlight;outline-offset:2px}#gallery-canvas{forced-color-adjust:none}}
