/* One original slide at a time, with controls kept outside the artwork. */
body:has(.web-present-page) .footer{display:none}
.web-present-main{min-height:0;background:linear-gradient(180deg,#0f223d,#122b4b)}
.web-present-page{padding-bottom:24px}
.web-present-stage{display:grid;grid-template-rows:minmax(0,1fr) auto;aspect-ratio:auto}
.present-slide-canvas{position:relative;min-height:0;aspect-ratio:16/9;max-height:calc(100svh - 265px);display:flex;align-items:center;justify-content:center;background:#050c16}
.present-slide-image{display:block;width:100%;height:100%;object-fit:contain;min-height:0;user-select:none;touch-action:pan-y}
.present-slide-controls{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 18px;color:#f5e4ac;background:#10223d;border-top:1px solid #e2c35f40}
.present-slide-controls button,.present-slide-controls select,.present-slide-error button{min-height:42px;font:inherit;font-size:.78rem;border:1px solid #d7b15a80;border-radius:10px;background:#172e4e;color:#fff;padding:8px 12px}
.present-slide-controls button{display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:800}
.present-slide-controls button:disabled{opacity:.35;cursor:default}
.present-slide-controls button:not(:disabled):hover{background:#28456b}
#present-next{background:#e2c35f;color:#10223d;border-color:#e2c35f}
#present-counter{white-space:nowrap;font-size:.8rem;font-weight:800;font-variant-numeric:tabular-nums}
.present-slide-controls select{width:100%;max-width:540px;justify-self:center;cursor:pointer;text-overflow:ellipsis}
.present-slide-controls :focus-visible,.present-fullscreen:focus-visible,.present-fullscreen-bar button:focus-visible{outline:3px solid #ffdd7c;outline-offset:3px}
.present-slide-error{position:absolute;inset:0;display:grid;align-content:center;justify-items:center;gap:12px;background:#091528;color:#fff}
.present-slide-error[hidden]{display:none}
.present-actions{color:#fff;align-items:center}
.present-actions .btn-outline{color:#f5e4ac;border-color:#d7b15a80;background:transparent}
.web-present-stage:fullscreen,.web-present-stage.is-fullscreen{height:100dvh;width:100vw;grid-template-rows:auto minmax(0,1fr) auto;border-radius:0}
.web-present-stage.is-fullscreen .present-fullscreen-bar,.web-present-stage:fullscreen .present-fullscreen-bar{position:static;background:#10223d;padding:5px 16px;pointer-events:auto;gap:15px}
.present-fullscreen-bar span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.present-fullscreen-bar button{flex-shrink:0}
.web-present-stage.is-fullscreen .present-slide-canvas,.web-present-stage:fullscreen .present-slide-canvas{max-height:none;aspect-ratio:auto}
.web-present-stage.fullscreen-fallback{position:fixed;inset:0;z-index:10000}
body.presentation-fullscreen{overflow:hidden}
@media(max-width:760px){
 .web-present-page{padding-bottom:12px}
 .present-slide-canvas{max-height:none}
 .present-slide-controls{grid-template-columns:44px 1fr 44px;gap:8px;padding:9px}
 .present-slide-controls button{padding:8px;font-size:1.1rem}
 .present-slide-controls button span{display:none}
 #present-counter{text-align:center}
 #present-jump{grid-row:2;grid-column:1/-1;max-width:none;min-height:38px;font-size:.72rem}
 #present-next{grid-column:3;grid-row:1}
 .present-actions{gap:8px;margin-top:10px}
 .present-actions .btn{font-size:.66rem;padding:10px 8px}
 .present-actions .btn:last-child:nth-child(3){grid-column:1/-1}
 .web-present-stage.is-fullscreen .present-slide-controls,.web-present-stage:fullscreen .present-slide-controls{grid-template-columns:44px auto minmax(0,1fr) 44px}
 .web-present-stage.is-fullscreen #present-jump,.web-present-stage:fullscreen #present-jump{grid-row:1;grid-column:3}
 .web-present-stage.is-fullscreen #present-next,.web-present-stage:fullscreen #present-next{grid-column:4}
}
@media(max-height:550px) and (orientation:landscape){
 body:has(.web-present-page) .site-header{display:none}
 .web-present-page{padding:8px 0}
 .present-slide-canvas{max-height:calc(100svh - 200px)}
 .web-present-stage.is-fullscreen .present-slide-canvas,.web-present-stage:fullscreen .present-slide-canvas{max-height:none}
}
