/* AIO Resto — emplacements des vidéos (voir aio-videos.js). Rien ne s'affiche hors repérage tant qu'aucune vidéo n'est posée. */
.aio-video{margin:clamp(20px,4vw,40px) auto;max-width:min(960px,100%);inline-size:100%;border-radius:20px;overflow:hidden;background:#000;box-shadow:0 12px 40px rgb(0 0 0 / .18)}
.aio-video video{display:block;inline-size:100%;block-size:100%;object-fit:cover}
.aio-vslot{box-sizing:border-box;display:grid;align-content:center;justify-items:center;gap:8px;margin:clamp(20px,4vw,40px) auto;padding:24px;max-width:min(960px,100%);inline-size:100%;min-block-size:160px;text-align:center;
  border:2px dashed #d0421a;border-radius:20px;background:color-mix(in srgb,#d0421a 7%,transparent);color:inherit;animation:aio-vslot-in 240ms cubic-bezier(.23,1,.32,1) both}
.aio-vslot strong{font-size:clamp(18px,2.4vw,26px);line-height:1.2}
.aio-vslot-id{font:700 12px/1 system-ui,sans-serif;letter-spacing:.08em;padding:6px 10px;border-radius:999px;background:#d0421a;color:#fff}
.aio-vslot-meta{font-size:14px;opacity:.75}
.aio-vpanel{position:fixed;inset-block-end:16px;inset-inline-end:16px;z-index:99999;max-inline-size:min(360px,calc(100vw - 32px));max-block-size:70vh;overflow:auto;padding:14px 16px;border-radius:16px;
  background:#1c1c1e;color:#f5f5f7;font:14px/1.45 system-ui,sans-serif;box-shadow:0 12px 40px rgb(0 0 0 / .35);animation:aio-vslot-in 240ms cubic-bezier(.23,1,.32,1) both}
.aio-vpanel p{margin:6px 0}
.aio-vpanel a{color:#ff8a66}
.aio-vpanel-head{display:flex;justify-content:space-between;gap:12px}
.aio-vpanel ul{margin:8px 0 0;padding-inline-start:18px;display:grid;gap:4px}
.aio-vpanel b{color:#ff6b3d}
@keyframes aio-vslot-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.aio-vslot,.aio-vpanel{animation:none}}

.aio-video{position:relative}
.aio-video-sound{position:absolute;inset-block-end:14px;inset-inline-end:14px;inline-size:44px;block-size:44px;display:grid;place-items:center;padding:0;border:0;border-radius:999px;cursor:pointer;
  background:rgb(20 20 22 / .55);color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform 160ms cubic-bezier(.23,1,.32,1),background 160ms}
.aio-video-sound:hover{background:rgb(20 20 22 / .75)}
.aio-video-sound:active{transform:scale(.94)}
.aio-video-sound:focus-visible{outline:2px solid #fff;outline-offset:2px}
.aio-video-sound[aria-pressed="false"] .on{display:none}
