/* Local light only; the room remains a single, unchanged 2D composition. */
.pantheon-lights{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;mix-blend-mode:screen}
.pantheon-lamp{position:absolute;display:block;width:17%;height:34%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#ffe4aaa6 0,#f6b65b66 14%,#d8833238 35%,transparent 72%);opacity:.2;animation:pantheon-lamplight 4.8s ease-in-out infinite;will-change:opacity}
.pantheon-lamp:after{content:'';position:absolute;left:43%;top:41%;width:14%;height:18%;border-radius:50%;background:radial-gradient(ellipse,#fff4dccc,#ffd38d80 38%,transparent 75%);}
.lamp-left{left:8.5%;top:27%}
.lamp-right{left:91.5%;top:27%;animation-duration:6.1s;animation-delay:-2s}
.lamp-back{left:98.3%;top:31.5%;width:10%;height:23%;animation-duration:5.7s;animation-delay:-3s}
@keyframes pantheon-lamplight{0%,100%{opacity:.12}38%{opacity:.72}55%{opacity:.5}78%{opacity:.65}}
.pantheon-lights[data-paused=true] .pantheon-lamp{animation-play-state:paused}

.pantheon-dust{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.pantheon-dust i{position:absolute;display:block;border-radius:50%;background:#e3cfaa;opacity:0;animation:pantheon-dust-drift 27s linear infinite;will-change:transform,opacity}

@keyframes pantheon-dust-drift{0%{opacity:0;transform:translate3d(0,12px,0)}18%{opacity:var(--mote-opacity)}78%{opacity:var(--mote-opacity)}100%{opacity:0;transform:translate3d(var(--drift),var(--rise),0)}}
.pantheon-dust[data-paused=true] i{animation-play-state:paused}
@media(max-width:750px){.pantheon-dust i:nth-child(n+23){display:none}}
@media(prefers-reduced-motion:reduce){.pantheon-dust{display:none}.pantheon-dust i{animation:none;will-change:auto}}

/* Upright photographs rest directly on their lower moulding, without rails. */
.pantheon-view .barmen-photo,.pantheon-view .pantheon-portrait{transform:none}
.pantheon-view .barmen-photo:before,.pantheon-view .barmen-photo:after,.pantheon-portrait:before,.pantheon-portrait:after{content:none}
.pantheon-view .barmen-photo-frame,.pantheon-view .throne-photo-frame{box-shadow:0 2px 2px #000e,2px 4px 5px #0008}

/* Painted covers replace the old flat leather rectangles; titles stay readable. */
.pantheon-view .hall-register{border:0;border-radius:0;background:none;box-shadow:none;padding:0;isolation:isolate;transform:none;overflow:visible;transition:filter .2s ease!important}
.pantheon-view .hall-register:before,.pantheon-view .hall-register:after{content:none}
.grimoire-cover{position:absolute;left:0;top:-1%;width:100%;height:103%;object-fit:fill;image-rendering:auto;filter:brightness(.84) drop-shadow(3px 3px 3px #0009);z-index:-1;pointer-events:none}
.pantheon-view .hall-register:hover .grimoire-cover{filter:brightness(.98) drop-shadow(3px 3px 3px #0009)}
.pantheon-view .hall-register .register-ornament{position:absolute;top:25%;left:53%;transform:translateX(-50%);width:auto;border:0;padding:0;font:16px Georgia,serif;color:#b5a48a;text-shadow:0 1px 1px #000}
.pantheon-view .hall-register>span:last-child{position:absolute;left:21%;right:13%;top:44%;color:#c4b299;font:18px/1.4 Georgia,serif;text-shadow:0 1px 1px #000;text-align:center}
.pantheon-view .register-all .register-ornament{color:#b1ac94;font-size:15px}
.pantheon-view .register-all>span:last-child{color:#b9b29a;font-size:16px}
@media(min-width:751px){
 .pantheon-registers{left:5%;gap:24px;justify-content:center}
 .pantheon-view .register-week{width:clamp(140px,19.5svh,175px);height:clamp(190px,27svh,242px)}
 .pantheon-view .register-all{width:clamp(118px,16.5svh,149px);height:clamp(164px,23svh,207px);margin-left:0}
}
@media(max-width:750px){
 .pantheon-lights{display:none}
 .pantheon-view .register-week{width:145px;height:215px}
 .pantheon-view .register-all{width:125px;height:185px}
 .pantheon-view .hall-register>span:last-child{font-size:18px}
 .pantheon-view .register-all>span:last-child{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.pantheon-lamp{animation:none;opacity:.14;will-change:auto}.pantheon-view .hall-register{transition:none!important}}
