/* Isolated presentation styling; original homepage composition is retained. */
:root { --frontiers-presentation-background: linear-gradient(135deg, #ded9ca, #b8ae99); }
.presentation { margin-top: 32px; padding: 22px; border: 1px solid #a59c86; background: var(--frontiers-presentation-background); box-shadow: inset 1px 1px #fff7e2, inset -1px -1px #817c6e; }
.presentation h2 { margin-bottom: 18px; color: #273244; letter-spacing: .04em; }
.presentation-screen { background: #1a273d; border: 1px solid #77786f; }
.presentation video { display: block; width: 100%; height: auto; aspect-ratio: 1106 / 578; object-fit: contain; }
.presentation-chapters { display: grid; grid-template-columns: 1.5fr 1fr 1.1fr 1.1fr .7fr; gap: 5px; margin-top: 16px; }
.presentation button { appearance: none; font: bold 12px/1.4 Arial, sans-serif; cursor: pointer; color: #303843; border: 1px solid #77796f; border-radius: 2px; background: linear-gradient(120deg, #e3e2d7, #a5a8a5 55%, #d0d0c6); box-shadow: inset 1px 1px #ffffe9b0, inset -1px -1px #656d7660; min-height: 44px; padding: 9px 12px; }
.presentation button:hover { filter: brightness(1.07); }
.presentation-chapters button { position: relative; padding-left: 25px; text-align: left; text-shadow: 0 1px #ffffef85; }
.presentation-chapters button::before { content: ''; position: absolute; left: 10px; top: calc(50% - 3px); width: 6px; height: 6px; transform: rotate(45deg); background: #7b8284; border: 1px solid #efeddb; box-shadow: 1px 1px 2px #343e49; }
.presentation-chapters button[aria-pressed=true] { background: linear-gradient(#8c928e, #c3c6ba); box-shadow: inset 1px 2px 4px #333c4860, inset -1px -1px #eee9d5; }
.presentation-chapters button[aria-current=true]::before, .presentation-chapters button[aria-pressed=true]::before { background: #ae4242; box-shadow: 0 0 4px #c48767; }
.presentation-status { min-height: 1.5em; margin: 14px 0 0; color: #283346; font-size: 12px; }
.presentation-transport { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px; color: #eee5cd; background: #233148; font-size: 12px; }
.presentation-transport button { color: #eee5cd; background: linear-gradient(#465164, #283449); border-color: #777d7c; box-shadow: inset 0 1px #e2d8bb50; }
.presentation-transport label { display: flex; align-items: center; gap: 7px; }
.presentation-transport .presentation-seek { flex: 1 1 170px; }
.presentation input[type=range] { appearance: none; height: 6px; min-width: 0; background: #aaa898; border: 1px solid #e0d9bf; border-radius: 0; cursor: pointer; }
.presentation-seek input { width: 100%; }
.presentation input[data-volume] { width: 65px; }
.presentation input[type=range]::-webkit-slider-thumb { appearance: none; width: 14px; height: 18px; background: linear-gradient(#e5dec7, #999b93); border: 1px solid #5b626a; }
.presentation input[type=range]::-moz-range-thumb { width: 12px; height: 16px; border-radius: 0; background: #c9c8b8; border: 1px solid #5b626a; }
.presentation input:focus-visible { outline: 3px solid #c89d70; outline-offset: 5px; }
.presentation:fullscreen { overflow: auto; margin: 0; background: #172438; display: flex; flex-direction: column; justify-content: center; }
.presentation:fullscreen h2, .presentation:fullscreen .presentation-status { color: #eee5cd; }
.presentation:fullscreen .presentation-screen { min-height: 0; }
.presentation:fullscreen video { max-height: 72vh; }
.demo-button { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
nav a[aria-current=location] { background: linear-gradient(#aaa795, #e5dcc1); color: #643b30; box-shadow: inset 0 2px 4px #6c675c50; text-shadow: 0 1px #fff4d2; }
@media (max-width: 800px) { .presentation { padding: 14px; } .presentation-chapters { grid-template-columns: repeat(2, minmax(0, 1fr)); } .presentation-chapters button:last-child { grid-column: 1 / -1; text-align: center; } }
@media (max-width: 560px) { .presentation { padding: 8px; margin-top: 24px; } .presentation h2 { font-size: 15px; margin: 6px 4px 12px; } .presentation-transport { gap: 8px; padding: 8px; } .presentation-transport .presentation-seek { flex-basis: 100%; order: -1; } .presentation-chapters button { font-size: 11px; } }

/* Transparent hit targets follow the recorded menu's source-pixel geometry. */
.presentation-media { position: relative; }
.presentation-hotspots { position: absolute; pointer-events: none; }
.presentation button.presentation-hotspot { position: absolute; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; text-shadow: none; filter: none; pointer-events: auto; }
.presentation button.presentation-hotspot:focus-visible { outline: 2px solid #e1cda5; outline-offset: -3px; }
