.season-slideshow-card{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#591b30;color:#fff;padding:22px;border-radius:12px;margin:24px 0}.season-slideshow-card h3{margin:0;color:#fff}.season-slideshow-card p{margin:5px 0 0}.season-slideshow-card button{border:2px solid #fff;border-radius:8px;background:#fff;color:#591b30;font:800 1rem inherit;padding:13px 20px;cursor:pointer}.viewer-open{overflow:hidden}#photo-viewer{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(8,10,16,.97);color:white}#photo-viewer::backdrop{background:#080a10}.viewer-shell{height:100%;display:flex;flex-direction:column;padding:18px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom));box-sizing:border-box}.viewer-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-right:60px;min-height:52px}.viewer-top h2{font-size:1.2rem;margin:0;color:white}.viewer-top p{font-size:.85rem;margin:2px 0;color:#d4d4dc}#viewer-close{position:absolute;right:16px;top:16px;width:48px;height:48px;font-size:30px;z-index:2}.viewer-stage{flex:1;min-height:0;position:relative;display:flex;justify-content:center;align-items:center;margin:12px 0}.viewer-stage img{width:100%;height:100%;object-fit:contain;touch-action:pan-y}#photo-viewer button{cursor:pointer;background:#262934;color:#fff;border:1px solid #777b89;border-radius:8px;min-height:44px;padding:8px 14px;font-weight:700}#photo-viewer button:hover{background:#591b30}#photo-viewer button:focus-visible,.season-slideshow-card button:focus-visible{outline:3px solid #f6c656;outline-offset:3px}.viewer-arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:32px;opacity:.95}#viewer-prev{left:0}#viewer-next{right:0}#viewer-caption{margin:0;text-align:center;line-height:1.4}#viewer-caption strong,#viewer-caption span{display:block}#viewer-caption span{font-size:.9rem;color:#ddd;margin-top:3px}.viewer-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}.viewer-controls label{display:flex;align-items:center;gap:8px;font-size:.85rem}.viewer-controls input{width:90px}.viewer-hint{text-align:center;font-size:.75rem;color:#c5c5ce;margin:7px 0 0}.spotlight-stats .honor-streak dd{font-size:1.1rem;line-height:1.5;margin-top:8px}.spotlight-stats .honor-streak dd strong{font:inherit}@media(max-width:600px){.viewer-top h2{font-size:1rem}.viewer-shell{padding-top:12px}.viewer-controls{gap:8px}.viewer-controls button{font-size:.8rem}.viewer-hint{display:none}.viewer-stage{margin:6px 0}.viewer-top{padding-right:50px}.season-slideshow-card button{width:100%}}

#photo-viewer .viewer-controls[hidden]{display:none}
/* A quiet, photo-first presentation for the season slideshow. */
#photo-viewer.season-mode{background:#08090c}
#photo-viewer.season-mode .viewer-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr) auto;gap:12px 20px;padding:18px 24px 20px;height:100dvh}
#photo-viewer.season-mode .viewer-top{grid-column:1/-1;min-height:32px;padding-right:52px;display:block}
#photo-viewer.season-mode .viewer-top>div{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
#photo-viewer.season-mode .viewer-top h2{font-size:.9rem;font-weight:600;color:#ddd}
#photo-viewer.season-mode #viewer-counter{font-size:.75rem;color:#96969f;margin:0;font-variant-numeric:tabular-nums}
#photo-viewer.season-mode .viewer-stage{grid-column:1/-1;margin:0;min-height:0;overflow:hidden}
#photo-viewer.season-mode #viewer-image{object-fit:contain;width:100%;height:100%}
#photo-viewer.season-mode #viewer-caption{grid-column:1;grid-row:3;align-self:center;text-align:left;font-size:.85rem;color:#d7d7df;max-width:65ch}
#photo-viewer.season-mode #viewer-caption strong{font-weight:500}
#photo-viewer.season-mode .photo-actions,#photo-viewer.season-mode .viewer-hint{display:none}
#photo-viewer.season-mode .viewer-controls{grid-column:2;grid-row:3;align-self:center;margin:0;gap:6px;flex-wrap:nowrap;background:#17191f;border:1px solid #30333c;border-radius:30px;padding:3px 8px}
#photo-viewer.season-mode .viewer-controls button{border:0;background:transparent;border-radius:22px;font-size:.8rem;font-weight:500;min-height:38px;padding:7px 12px}
#photo-viewer.season-mode .viewer-controls label{font-size:0;gap:0}
#photo-viewer.season-mode .viewer-controls input{width:65px;accent-color:#d8a2b6;margin-right:8px}
#photo-viewer.season-mode .viewer-arrow{border:0;background:rgba(12,13,18,.45);border-radius:50%;width:44px;height:44px;padding:0;font-size:28px;opacity:.65}
#photo-viewer.season-mode .viewer-arrow:hover{opacity:1;background:#4b1d2c}
#photo-viewer.season-mode #viewer-close{width:40px;height:40px;min-height:40px;top:12px;right:16px;border:0;background:transparent;font-size:27px;padding:0;color:#ddd}
@media(max-width:600px){#photo-viewer.season-mode .viewer-shell{padding:12px 12px max(14px,env(safe-area-inset-bottom));gap:8px;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto auto}#photo-viewer.season-mode #viewer-caption{grid-column:1;grid-row:3;text-align:center;font-size:.8rem}#photo-viewer.season-mode .viewer-controls{grid-column:1;grid-row:4;justify-self:center}#photo-viewer.season-mode .viewer-top h2{font-size:.8rem}#photo-viewer.season-mode .viewer-arrow{width:38px;height:38px}#photo-viewer.season-mode .viewer-top>div{gap:6px 12px}}
.slide-highlight[hidden]{display:none}.slide-highlight{display:none}#photo-viewer.season-mode .slide-highlight{display:flex;position:absolute;left:clamp(18px,6vw,90px);bottom:clamp(20px,5vh,65px);max-width:75%;flex-direction:column;align-items:flex-start;pointer-events:none;text-shadow:0 2px 15px #000;padding:14px 22px;border-left:4px solid #c56386;background:linear-gradient(90deg,rgba(20,8,15,.84),rgba(20,8,15,.35),transparent)}#photo-viewer.season-mode .slide-highlight[hidden]{display:none}.slide-highlight span{font:700 .7rem/1.4 Arial,sans-serif;letter-spacing:.19em;color:#f4c8d8}.slide-highlight strong{font:800 clamp(1.3rem,3vw,2.6rem)/1.15 Arial,sans-serif;letter-spacing:-.035em;color:#fff;margin-top:5px}#photo-viewer.season-mode .viewer-arrow{z-index:2}#photo-viewer.season-mode #viewer-image{will-change:transform}@media(max-width:600px){#photo-viewer.season-mode .slide-highlight{left:14px;bottom:18px;padding:9px 12px;max-width:82%}.slide-highlight span{font-size:.58rem}.slide-highlight strong{font-size:1.25rem}#photo-viewer.season-mode .viewer-controls input{width:48px}}
/* Hype sequence: the stage is the frame; all cuts follow the soundtrack clock. */
#photo-viewer.season-mode #viewer-image{object-fit:cover;object-position:50% 50%}
#photo-viewer.season-mode .viewer-stage{aspect-ratio:16/9;width:100%;max-height:100%;align-self:center}
#photo-viewer.season-mode .slide-highlight strong{text-transform:uppercase;font-style:italic}
@media(orientation:portrait){#photo-viewer.season-mode .viewer-stage{aspect-ratio:4/3}#photo-viewer.season-mode #viewer-image{object-fit:contain;background:#08090c}}
/* A rotated phone should show the photo, not a taller metadata panel. */
@media(orientation:landscape) and (max-height:600px){
 #photo-viewer .viewer-shell,#photo-viewer.season-mode .viewer-shell{display:block;padding:0;height:100dvh}
 #photo-viewer .viewer-stage,#photo-viewer.season-mode .viewer-stage{position:absolute;inset:0;margin:0;width:100%;height:100dvh;max-height:none;aspect-ratio:auto}
 #photo-viewer #viewer-image{object-fit:contain;width:100%;height:100%}
 #photo-viewer.season-mode #viewer-image{object-fit:cover}
 #photo-viewer .viewer-top,#photo-viewer .photo-actions,#photo-viewer .viewer-hint,#photo-viewer #viewer-caption span{display:none}
 #photo-viewer #viewer-caption,#photo-viewer.season-mode #viewer-caption{position:absolute;bottom:max(8px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));max-width:55%;font-size:.75rem;background:#0008;padding:4px 8px;border-radius:4px;z-index:3;text-align:left}
 #photo-viewer #viewer-close,#photo-viewer.season-mode #viewer-close{top:8px;right:max(10px,env(safe-area-inset-right));background:#0008;z-index:5}
 #photo-viewer .viewer-controls,#photo-viewer.season-mode .viewer-controls{position:absolute;bottom:6px;right:max(12px,env(safe-area-inset-right));z-index:4;margin:0;background:#0009}
 #photo-viewer.season-mode .viewer-controls label{display:none}
 #photo-viewer.season-mode .slide-highlight{bottom:58px;left:5%;padding:8px 12px}
 #photo-viewer.season-mode .slide-highlight strong{font-size:1.6rem}
 #photo-viewer .viewer-arrow{z-index:4;background:#0006}
}
@media(prefers-reduced-motion:reduce){#photo-viewer.season-mode #viewer-image{transform:none!important;filter:none!important}}
