/* The projected composition is preserved; reading mode reflows the same content. */
.deck-menu { position:fixed; top:8px; right:10px; z-index:100; font:14px/1.4 Aptos,"Segoe UI",Arial,sans-serif; color:#17212b; }
.deck-menu > summary { list-style:none; cursor:pointer; background:#fff; border:1px solid #c8d3d7; padding:9px 15px; border-radius:4px; box-shadow:0 2px 8px #17212b14; }
.deck-menu > summary::-webkit-details-marker { display:none; }
.deck-menu[open] { width:min(360px,calc(100vw - 20px)); background:#fff; border:1px solid #c8d3d7; border-radius:4px; box-shadow:0 8px 30px #17212b24; }
.deck-menu[open] > summary { border:0; border-bottom:1px solid #d9dedf; box-shadow:none; }
.deck-menu nav { display:grid; gap:12px; padding:16px; }
.deck-menu a { color:#087580; display:block; padding:5px 0; }
.deck-menu label { font:inherit; text-transform:none; letter-spacing:0; color:inherit; margin:0; }
.deck-menu select { width:100%; padding:9px; font:inherit; background:white; color:#17212b; border:1px solid #9caeb7; }
.deck-menu small { color:#526273; }
:focus-visible { outline:3px solid #365cf5; outline-offset:4px; }
.reader-notes { display:none; }
.reveal .frame footer, .reveal .kicker span { color:#526273!important; }
.presentation-availability { display:flex; align-items:center; gap:15px; color:var(--ink); text-decoration:none; font:14px/1.35 Aptos,"Segoe UI",Arial,sans-serif; }
.presentation-availability img { display:block; width:112px; height:112px; background:white; padding:0; }
.presentation-availability span { display:block; font-size:14px; overflow-wrap:anywhere; }
.footer-qr { position:absolute; bottom:9px; left:7px; display:block; width:64px; height:64px; background:white; z-index:3; }
.footer-qr img { display:block; width:64px; height:64px; margin:0!important; padding:0; }
#A1 .title-team { display:grid; grid-template-columns:minmax(0,1fr) 142px; gap:28px; align-items:end; }
#A1 .presentation-availability { display:flex; flex-direction:column; gap:5px; text-align:center; color:white; }
#A1 .presentation-availability span { font-size:12px; line-height:1.3; }
#F24 .presentation-availability { align-self:flex-end; margin:0 0 8px; }
#F24 .presentation-availability img { width:88px; height:88px; }
html[data-reader="true"], html[data-reader="true"] body { height:auto!important; overflow:visible!important; }
html[data-reader="true"] { scroll-padding-top:60px; }
html[data-reader="true"] .reveal { width:100%; height:auto!important; overflow:visible; font-size:18px; line-height:1.5; }
html[data-reader="true"] .reveal .slides { position:static!important; width:auto!important; height:auto!important; transform:none!important; inset:auto!important; margin:0 auto; max-width:1000px; text-align:left; perspective:none; }
html[data-reader="true"] .reveal .slides > section { display:block!important; position:relative!important; height:auto!important; min-height:0!important; inset:auto!important; transform:none!important; opacity:1!important; visibility:visible!important; padding:0!important; border-bottom:2px solid #c4d3d7; scroll-margin-top:60px; }
html[data-reader="true"] .reveal .slides > section:first-child { padding-top:38px!important; }
html[data-reader="true"] .reveal .slides,
html[data-reader="true"] .reveal .slides > section { pointer-events:auto!important; }
html[data-reader="true"] .reveal .slides > section *:not(svg *) { min-width:0!important; max-width:100%; }
html[data-reader="true"] .reveal .slides > section :is(div,article,figure) { height:auto!important; min-height:0!important; max-height:none!important; }
html[data-reader="true"] .reveal .slides > section div { grid-template-columns:1fr!important; grid-template-rows:auto!important; }
html[data-reader="true"] .reveal .slides > section .frame,
html[data-reader="true"] .reveal .slides > section .cover-inner { padding:30px 22px!important; }
html[data-reader="true"] .reveal .content { display:flex; overflow:visible; gap:18px; padding:20px 0!important; }
html[data-reader="true"] .reveal :is(h1,h2,h3,p,li,td,th,pre,blockquote,figcaption,label,small,span,strong,b,a) { overflow-wrap:anywhere; }
html[data-reader="true"] .reveal :is(p,li,td,th,blockquote,figcaption,small,label,pre) { font-size:17px!important; line-height:1.5!important; }
html[data-reader="true"] .reveal :is(span,strong,b,a) { font-size:inherit!important; }
html[data-reader="true"] .reveal h1 { font-size:46px!important; line-height:1.08!important; margin:25px 0!important; }
html[data-reader="true"] .reveal h2 { font-size:29px!important; line-height:1.16!important; margin:16px 0!important; }
html[data-reader="true"] .reveal h3 { font-size:23px!important; line-height:1.25!important; margin:10px 0!important; }
html[data-reader="true"] .reveal ul, html[data-reader="true"] .reveal ol { display:block; padding-left:23px!important; margin:10px 0; }
html[data-reader="true"] .reveal li { margin:8px 0!important; }
html[data-reader="true"] .reveal :is(article,.white-panel) { padding:18px!important; }
html[data-reader="true"] .reveal figure { margin:12px 0!important; }
html[data-reader="true"] .reveal img { width:auto!important; max-width:100%!important; height:auto!important; max-height:75vh!important; object-fit:contain; }
html[data-reader="true"] .reveal img[src*="brand/"] { max-height:90px!important; }
html[data-reader="true"] .reveal svg { width:100%; height:auto!important; }
html[data-reader="true"] .reveal table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; }
html[data-reader="true"] .reveal :is(td,th) { min-width:135px!important; padding:12px!important; }
html[data-reader="true"] .reveal pre { width:100%; padding:15px!important; white-space:pre-wrap!important; margin:12px 0!important; }
html[data-reader="true"] .reveal math { font-size:20px!important; max-width:100%; overflow-x:auto; padding:8px 0; }
html[data-reader="true"] .reveal .fragment { opacity:1!important; visibility:visible!important; transform:none!important; }
html[data-reader="true"] :is(.build-indicator,.motif,.controls,.progress,.pipeline > i,.handoff > span) { display:none!important; }
html[data-reader="true"] .reveal .kicker { font-size:12px!important; line-height:1.4!important; flex-wrap:wrap; }
html[data-reader="true"] .reveal .kicker a { padding:8px 0; }
html[data-reader="true"] .reveal footer { display:flex; flex-wrap:wrap; gap:8px; font-size:11px!important; line-height:1.5; padding-top:15px; }
html[data-reader="true"] .reveal .reader-notes { display:block; padding:0 22px 25px; color:#526273; }
html[data-reader="true"] .reader-notes summary { cursor:pointer; color:#087580; padding:10px 0; font-size:16px; }
html[data-reader="true"] .reader-notes div { border-top:1px solid #d9dedf; padding:12px 0; }
html[data-reader="true"] .reader-notes p,html[data-reader="true"] .reader-notes li { font-size:15px!important; }
html[data-reader="true"] .core-only .reveal .slides > section[data-optional="true"] { display:none!important; }
html[data-reader="true"] .reveal .title-team { margin-top:25px!important; }
html[data-reader="true"] .reveal .presentation-availability { margin:20px 0!important; align-items:flex-start; text-align:left!important; }
html[data-reader="true"] .reveal .presentation-availability img { width:112px!important; height:112px!important; }
html[data-reader="true"] .reveal .footer-qr { position:static; display:block; width:64px!important; height:64px!important; margin:12px 0; }
html[data-reader="true"] .reveal .footer-qr img { width:64px!important; height:64px!important; }
html[data-reader="true"] .reveal .title-hero { gap:25px!important; margin-top:25px!important; }
html[data-reader="true"] .reveal .title-brand { display:none; }
html[data-reader="true"] .reveal .title-affiliations { gap:12px!important; }
html[data-reader="true"] .reveal .intro-team { margin-top:15px!important; }
html[data-reader="true"] .reveal .cover-top { font-size:12px!important; flex-wrap:wrap; gap:8px; }
@media print { .deck-menu { display:none!important; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }

/* Keep the availability caption next to every footer QR. */
.reveal .slides section .footer-qr { position:relative!important; left:0; bottom:0; display:flex!important; align-items:center; gap:9px; width:165px; height:64px; flex:0 0 165px; background:transparent; text-decoration:none; }
.reveal .slides section .footer-qr img { flex:0 0 64px; width:64px; height:64px; background:white; }
.reveal .slides section .footer-qr .qr-caption { display:block; flex:1; font:12px/1.3 Aptos,"Segoe UI",Arial,sans-serif!important; letter-spacing:0; text-transform:none; color:#087580; }
html[data-reader="true"] .reveal .slides section .footer-qr { width:165px!important; height:64px!important; }
