.bestiarium-video-nav-count {
    display: inline-grid;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-family: Georgia, serif;
    font-size: 12px;
    line-height: 1;
}
.bestiarium-video-tile {
    position: relative;
}
.bestiarium-video-tile-play {
    position: absolute;
    inset: 50% auto auto 50%;
    z-index: 4;
    width: 56px;
    height: 56px;
    transform: translate(-50%, -50%);
    border: 2px solid #f0c76a;
    border-radius: 50%;
    background: rgba(55, 27, 12, .9);
    color: #fff1bd;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .45);
}
.bestiarium-video-tile-play:hover,
.bestiarium-video-tile-play:focus-visible {
    background: #7f1d1d;
    outline: 3px solid rgba(240, 199, 106, .45);
}
.bestiarium-video-tile.needs-play video {
    opacity: .72;
}

.bestiarium-video-room {
    --video-ink: #2d2118;
    --video-wine: #8d2025;
    --video-gold: #b98525;
    --video-teal: #315f5a;
    color: var(--video-ink);
}

.bestiarium-video-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(137, 91, 25, 0.45);
}

.bestiarium-video-heading h2 {
    margin: 2px 0 0;
    color: #6f171c;
    font-family: Cinzel, Georgia, serif;
    font-size: 32px;
    letter-spacing: 0;
}

.bestiarium-video-kicker {
    color: var(--video-teal);
    font-family: Cinzel, Georgia, serif;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
}

.bestiarium-video-presence {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 7px 12px;
    border: 1px solid #b98a37;
    background: #f4e3b4;
    font-family: Cinzel, Georgia, serif;
    font-size: 13px;
}

.bestiarium-video-presence > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #27804d;
    box-shadow: 0 0 0 4px rgba(39, 128, 77, 0.14);
}

.bestiarium-video-presence-names,
.bestiarium-video-participants {
    margin: 10px 0;
    color: #654f39;
    overflow-wrap: anywhere;
}

.bestiarium-video-status {
    min-height: 24px;
    margin: 10px 0;
    font-weight: 700;
}

.bestiarium-video-status.is-error { color: #9d151e; }
.bestiarium-video-status.is-warning { color: #805513; }
.bestiarium-video-status.is-live { color: #286052; }
.bestiarium-video-status.is-busy { color: #315f5a; }

.bestiarium-video-weekly {
    display: grid;
    grid-template-columns: 68px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    margin: 16px 0 10px;
    padding: 15px 17px;
    border: 1px solid #b98525;
    border-left: 5px solid #315f5a;
    background: #efe0b5;
}

.bestiarium-video-weekly.is-live {
    border-color: #a9232a;
    border-left-color: #a9232a;
    background: #f4dca4;
    box-shadow: 0 0 0 3px rgba(169, 35, 42, 0.12);
}

.bestiarium-video-weekly.is-disabled { opacity: 0.72; }

.bestiarium-video-weekly-mark {
    display: grid;
    width: 62px;
    height: 62px;
    place-items: center;
    border: 3px double #e6be62;
    border-radius: 50%;
    background: #782027;
    color: #fff2c6;
    font-family: Cinzel, Georgia, serif;
    font-size: 23px;
    font-weight: 800;
}

.bestiarium-video-weekly.is-live .bestiarium-video-weekly-mark {
    animation: bestiarium-video-talk-pulse 1.8s ease-in-out infinite;
}

@keyframes bestiarium-video-talk-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(169, 35, 42, 0.18); }
    50% { box-shadow: 0 0 0 8px rgba(169, 35, 42, 0); }
}

.bestiarium-video-weekly-copy { min-width: 0; }

.bestiarium-video-weekly-copy > span {
    color: #7e1c22;
    font-family: Cinzel, Georgia, serif;
    font-size: 11px;
    font-weight: 800;
}

.bestiarium-video-weekly-copy h3 {
    margin: 2px 0 4px;
    color: #2e2218;
    font-family: Cinzel, Georgia, serif;
    font-size: 20px;
    letter-spacing: 0;
}

.bestiarium-video-weekly-copy p {
    margin: 0 0 6px;
    color: #614c35;
}

.bestiarium-video-weekly-copy time,
.bestiarium-video-weekly-copy strong,
.bestiarium-video-weekly-copy small {
    display: block;
    overflow-wrap: anywhere;
}

.bestiarium-video-weekly-copy time { color: #315f5a; font-weight: 700; }
.bestiarium-video-weekly-copy strong { margin-top: 2px; color: #7e1c22; }
.bestiarium-video-weekly-copy small { margin-top: 3px; color: #715b43; }

.bestiarium-video-calendar {
    min-width: 170px;
    border-color: #84611f;
    background: #fff3ca;
    color: #352316;
}

.bestiarium-video-lobby,
.bestiarium-video-locked {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.8fr);
    gap: 22px;
    padding: 22px;
    border: 1px solid #bd8b37;
    background: rgba(255, 247, 219, 0.88);
}

.bestiarium-video-locked {
    display: block;
}

.bestiarium-video-consent-notice {
    padding: 17px 19px;
    border-left: 5px solid var(--video-wine);
    background: #f0dbab;
}

.bestiarium-video-consent-notice strong {
    color: #77191f;
    font-family: Cinzel, Georgia, serif;
    font-size: 17px;
}

.bestiarium-video-consent-notice p {
    margin: 8px 0 0;
    line-height: 1.52;
}

.bestiarium-video-consent-notice p[lang="en"] {
    padding-top: 8px;
    border-top: 1px solid rgba(141, 32, 37, 0.22);
    color: #65594d;
    font-size: 0.92em;
}

.bestiarium-video-lobby-actions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
}

.bestiarium-video-language {
    display: grid;
    gap: 6px;
    color: #59432d;
    font-family: Cinzel, Georgia, serif;
    font-weight: 700;
}

.bestiarium-video-language select {
    width: 100%;
    min-height: 44px;
    border: 1px solid #a9782a;
    border-radius: 0;
    background: #fff9e7;
    color: #2d2118;
}

.bestiarium-video-consent-check {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    line-height: 1.4;
    cursor: pointer;
}

.bestiarium-video-consent-check input {
    width: 20px;
    height: 20px;
    margin: 1px 0 0;
}

body.bestiarium-video-ceremony-active { overflow: hidden; }

.bestiarium-video-ceremony {
    position: fixed;
    z-index: 2147480000;
    inset: 0;
    display: grid;
    width: 100vw;
    min-height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
    place-items: center;
    isolation: isolate;
    background: #17110d;
    color: #fff3c9;
}

.bestiarium-video-ceremony[hidden] { display: none; }

.bestiarium-video-ceremony-world,
.bestiarium-video-ceremony-film {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
}

.bestiarium-video-ceremony-world {
    background: #243a31 url('../img/world-map.jpg') center / cover no-repeat;
    filter: saturate(0.82) brightness(0.55);
    transform: scale(1.03);
}

.bestiarium-video-ceremony::before {
    content: "";
    position: absolute;
    z-index: 3;
    inset: 0;
    background: rgba(14, 9, 7, 0.36);
    pointer-events: none;
}

.bestiarium-video-ceremony-film {
    z-index: 2;
    object-fit: cover;
    opacity: 0;
    transition: opacity 420ms ease;
}

.bestiarium-video-ceremony.is-intro .bestiarium-video-ceremony-film { opacity: 1; }

.bestiarium-video-gate {
    position: absolute;
    z-index: 4;
    top: 0;
    bottom: 0;
    width: 50.5%;
    overflow: hidden;
    border: 8px solid #1b120d;
    background: #4a2816;
    box-shadow: inset 0 0 0 4px #815128, inset 0 0 0 12px #2b1a11, 0 0 28px rgba(0, 0, 0, 0.75);
    transition: transform 1350ms cubic-bezier(0.62, 0.02, 0.24, 1);
}

.bestiarium-video-gate.is-left {
    left: 0;
    border-left-width: 0;
    transform-origin: left center;
}

.bestiarium-video-gate.is-right {
    right: 0;
    border-right-width: 0;
    transform-origin: right center;
}

.bestiarium-video-gate::before,
.bestiarium-video-gate::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 18%;
    border-right: 4px solid #24160f;
    border-left: 2px solid #89532a;
    box-shadow: 9vw 0 0 rgba(91, 48, 24, 0.9), 18vw 0 0 rgba(56, 31, 19, 0.85), 27vw 0 0 rgba(94, 50, 24, 0.88);
}

.bestiarium-video-gate::before { left: 0; }
.bestiarium-video-gate::after { right: 0; transform: scaleX(-1); }

.bestiarium-video-gate > span,
.bestiarium-video-gate > i {
    position: absolute;
    z-index: 2;
    display: block;
    background: #171413;
    box-shadow: inset 0 0 0 2px #594735, 0 3px 8px rgba(0, 0, 0, 0.55);
}

.bestiarium-video-gate > span {
    left: 0;
    right: 0;
    top: 49%;
    height: 38px;
    border-top: 3px solid #8a744e;
    border-bottom: 3px solid #080706;
}

.bestiarium-video-gate > i {
    top: -12%;
    bottom: -12%;
    left: 47%;
    width: 32px;
    border-right: 3px solid #080706;
    border-left: 3px solid #8a744e;
    transform: rotate(13deg);
}

.bestiarium-video-ceremony.is-intro .bestiarium-video-gate.is-left,
.bestiarium-video-ceremony.is-opening .bestiarium-video-gate.is-left { transform: translateX(-101%); }

.bestiarium-video-ceremony.is-intro .bestiarium-video-gate.is-right,
.bestiarium-video-ceremony.is-opening .bestiarium-video-gate.is-right { transform: translateX(101%); }

.bestiarium-video-torch {
    position: absolute;
    z-index: 6;
    top: 23%;
    width: 18px;
    height: 150px;
    border: 3px solid #130f0c;
    background: #76502c;
    box-shadow: 0 5px 12px rgba(0, 0, 0, 0.55);
    transition: opacity 300ms ease;
}

.bestiarium-video-torch.is-left { left: 12%; }
.bestiarium-video-torch.is-right { right: 12%; }

.bestiarium-video-torch span {
    position: absolute;
    left: 50%;
    bottom: 136px;
    width: 28px;
    height: 42px;
    border: 3px solid #6f2518;
    border-radius: 50% 50% 44% 44%;
    background: #efb83f;
    box-shadow: 0 0 18px 7px rgba(239, 184, 63, 0.45), 0 0 54px 22px rgba(139, 32, 28, 0.22);
    transform: translateX(-50%);
    animation: bestiarium-video-flame 900ms ease-in-out infinite alternate;
}

.bestiarium-video-ceremony.is-intro .bestiarium-video-torch,
.bestiarium-video-ceremony.is-opening .bestiarium-video-torch { opacity: 0; }

@keyframes bestiarium-video-flame {
    from { transform: translateX(-50%) scale(0.92) rotate(-2deg); }
    to { transform: translateX(-50%) scale(1.05) rotate(2deg); }
}

.bestiarium-video-ceremony-copy {
    position: relative;
    z-index: 8;
    display: grid;
    width: min(880px, calc(100% - 40px));
    padding: max(28px, env(safe-area-inset-top)) 20px max(28px, env(safe-area-inset-bottom));
    place-items: center;
    text-align: center;
    text-shadow: 0 3px 7px #100805;
    transition: opacity 380ms ease, transform 700ms ease;
}

.bestiarium-video-wax-seal {
    display: grid;
    width: 72px;
    height: 72px;
    margin-bottom: 13px;
    place-items: center;
    border: 5px double #e2bd62;
    border-radius: 50%;
    background: #8f1e26;
    color: #ffe7a1;
    font-family: Cinzel, Georgia, serif;
    font-size: 31px;
    font-weight: 800;
    box-shadow: 0 7px 18px rgba(0, 0, 0, 0.55);
}

.bestiarium-video-ceremony-copy > span {
    color: #f1cb6b;
    font-family: Cinzel, Georgia, serif;
    font-size: 13px;
    font-weight: 800;
}

.bestiarium-video-ceremony-copy h3 {
    max-width: 820px;
    margin: 10px 0 12px;
    color: #fff0bd;
    font-family: Cinzel, Georgia, serif;
    font-size: 44px;
    line-height: 1.15;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.bestiarium-video-ceremony-copy > strong {
    color: #f5cd64;
    font-family: Cinzel, Georgia, serif;
    font-size: 72px;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.bestiarium-video-ceremony-copy p {
    max-width: 700px;
    margin: 16px 0 0;
    color: #fff5d5;
    font-size: 18px;
    line-height: 1.5;
}

.bestiarium-video-ceremony-sound {
    margin-top: 18px;
    border-color: #d2a646;
    background: #f0d48a;
    color: #291b13;
}

.bestiarium-video-ceremony.is-intro .bestiarium-video-ceremony-copy {
    align-self: end;
    padding-bottom: max(34px, env(safe-area-inset-bottom));
}

.bestiarium-video-ceremony.is-intro .bestiarium-video-wax-seal { width: 56px; height: 56px; font-size: 24px; }
.bestiarium-video-ceremony.is-intro .bestiarium-video-ceremony-copy h3 { font-size: 34px; }
.bestiarium-video-ceremony.is-intro .bestiarium-video-ceremony-copy > strong { font-size: 34px; }

.bestiarium-video-ceremony.is-opening .bestiarium-video-ceremony-copy {
    opacity: 0;
    transform: scale(1.04);
}

.bestiarium-video-stage {
    position: relative;
    min-height: 520px;
    padding: 16px;
    border: 2px solid #9f7025;
    background: #211914;
    color: #fff8e5;
}

.bestiarium-video-intro {
    position: absolute;
    z-index: 30;
    inset: 0;
    display: grid;
    min-height: 100%;
    overflow: hidden;
    place-items: end start;
    background: #120d0a;
}

.bestiarium-video-intro[hidden] { display: none; }

.bestiarium-video-intro::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    background: rgba(18, 10, 7, 0.33);
    pointer-events: none;
}

.bestiarium-video-intro video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bestiarium-video-intro-copy {
    position: relative;
    z-index: 2;
    width: min(760px, 92%);
    padding: clamp(22px, 5vw, 60px);
    color: #fff1c8;
    text-shadow: 0 2px 5px #120805;
}

.bestiarium-video-intro-copy > span {
    color: #f3c75f;
    font-family: Cinzel, Georgia, serif;
    font-size: 13px;
    font-weight: 800;
}

.bestiarium-video-intro-copy h3 {
    margin: 6px 0 9px;
    color: #fff4d1;
    font-family: Cinzel, Georgia, serif;
    font-size: 42px;
    line-height: 1.13;
    letter-spacing: 0;
}

.bestiarium-video-intro-copy p {
    max-width: 660px;
    margin: 0 0 18px;
    font-size: 18px;
    line-height: 1.5;
}

.bestiarium-video-intro-copy > div {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
}

.bestiarium-video-intro-copy .bestiarium-btn {
    border-color: #d5a83d;
    background: #f0d68f;
    color: #2e1d13;
}

.bestiarium-video-stage.is-intro-playing { overflow: hidden; }

.bestiarium-video-stage:fullscreen,
.bestiarium-video-stage:-webkit-full-screen {
    width: 100vw;
    height: 100vh;
    padding: max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));
    overflow: auto;
}

.bestiarium-video-recording {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #ffdca0;
    font-family: Cinzel, Georgia, serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0;
}

.bestiarium-video-recording-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ef3946;
    box-shadow: 0 0 0 4px rgba(239, 57, 70, 0.18);
    animation: bestiarium-video-heartbeat 1.7s ease-in-out infinite;
}

.bestiarium-video-recording.is-waiting .bestiarium-video-recording-dot {
    background: #d5a83d;
    box-shadow: 0 0 0 4px rgba(213, 168, 61, 0.18);
    animation-duration: 2.8s;
}

.bestiarium-video-recording.is-disabled .bestiarium-video-recording-dot {
    background: #8f8376;
    box-shadow: none;
    animation: none;
}

@keyframes bestiarium-video-heartbeat {
    0%, 100% { opacity: 0.72; transform: scale(0.9); }
    50% { opacity: 1; transform: scale(1.12); }
}

.bestiarium-video-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 14px 0 10px;
}

.bestiarium-video-toolbar .bestiarium-btn {
    min-height: 42px;
    padding: 8px 13px;
    border-color: #b88938;
    background: #f3dfab;
    color: #302117;
    font-size: 12px;
}

.bestiarium-video-toolbar .bestiarium-btn.is-off {
    background: #55463d;
    color: #f9e8bf;
}

.bestiarium-video-toolbar .bestiarium-btn.is-on {
    background: #315f5a;
    color: #fff;
}

.bestiarium-video-toolbar .bestiarium-video-leave {
    border-color: #c54a4f;
    background: #8d2025;
    color: #fff;
}

.bestiarium-video-layout {
    display: block;
    gap: 14px;
    min-height: 400px;
}

.bestiarium-video-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 10px;
    min-width: 0;
}

.bestiarium-video-grid.has-focus .bestiarium-video-tile:not(.is-focused) { display: none; }
.bestiarium-video-grid.has-focus .bestiarium-video-tile.is-focused { grid-column: 1 / -1; }

.bestiarium-video-tile {
    position: relative;
    min-width: 0;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border: 2px solid #8a682f;
    background: #090807;
}

.bestiarium-video-tile::before {
    content: "ELENDRIS";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: rgba(237, 208, 144, 0.22);
    font-family: Cinzel, Georgia, serif;
    font-size: 16px;
}

.bestiarium-video-tile.is-self { border-color: #39766f; }
.bestiarium-video-tile.is-sharing { border-color: #e3b453; box-shadow: inset 0 0 0 2px #e3b453; }
.bestiarium-video-tile.is-host {
    border-color: #e3b453;
    box-shadow: inset 0 0 0 2px rgba(227, 180, 83, 0.55);
}
.bestiarium-video-tile.has-connection-error { border-color: #c8323c; }

.bestiarium-video-tile video {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: transparent;
}

.bestiarium-video-tile-footer {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 38px;
    padding: 7px 10px;
    background: rgba(18, 12, 9, 0.86);
    color: #fff4d2;
}

.bestiarium-video-tile-footer strong,
.bestiarium-video-tile-footer span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bestiarium-video-host-badge {
    flex: 0 0 auto;
    padding: 3px 6px;
    border: 1px solid #e7bd58;
    background: #7c1d23;
    color: #fff0b7 !important;
    font-family: Cinzel, Georgia, serif !important;
    font-size: 9px !important;
    font-weight: 800;
}

.bestiarium-video-host-badge[hidden] { display: none; }

.bestiarium-video-tile-footer span {
    color: #d7bf88;
    font-family: Arial, sans-serif;
    font-size: 10px;
}

.bestiarium-video-archive {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    border: 1px solid #b88938;
    background: #f6e7bd;
    color: #2c2119;
}

.bestiarium-video-archive h3 {
    margin: 0;
    padding: 12px 14px;
    border-bottom: 1px solid #b88938;
    color: #731a20;
    font-family: Cinzel, Georgia, serif;
    font-size: 18px;
    letter-spacing: 0;
}

.bestiarium-video-interim {
    min-height: 32px;
    margin: 0;
    padding: 8px 12px;
    border-bottom: 1px dashed rgba(115, 26, 32, 0.35);
    color: #765c40;
    font-style: italic;
}

.bestiarium-video-transcript {
    flex: 1 1 auto;
    max-height: 520px;
    overflow: auto;
    overscroll-behavior: contain;
    padding: 8px 12px 16px;
}

.bestiarium-video-transcript-row {
    padding: 8px 2px;
    border-bottom: 1px solid rgba(139, 96, 31, 0.24);
    overflow-wrap: anywhere;
}

.bestiarium-video-transcript-row p { margin: 4px 0 0; line-height: 1.35; }
.bestiarium-video-transcript-row:not(.is-transcript) { color: #735f47; font-size: 13px; }

.bestiarium-video-transcript-meta {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    color: #6e171d;
}

.bestiarium-video-transcript-meta time { color: #75644e; font-size: 12px; }
.bestiarium-video-transcript-empty { color: #75644e; font-style: italic; }

@media (max-width: 900px) {
    .bestiarium-video-lobby { grid-template-columns: 1fr; }
    .bestiarium-video-weekly { grid-template-columns: 62px minmax(0, 1fr); }
    .bestiarium-video-calendar { grid-column: 1 / -1; width: 100%; }
}

@media (max-width: 620px) {
    .bestiarium-video-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
    .bestiarium-video-heading h2 { font-size: 24px; }
    .bestiarium-video-presence { min-height: 34px; padding: 5px 8px; }
    .bestiarium-video-lobby { padding: 12px; }
    .bestiarium-video-consent-notice { padding: 13px; }
    .bestiarium-video-weekly { grid-template-columns: 48px minmax(0, 1fr); gap: 10px; padding: 12px; }
    .bestiarium-video-weekly-mark { width: 46px; height: 46px; font-size: 17px; }
    .bestiarium-video-weekly-copy h3 { font-size: 17px; }
    .bestiarium-video-ceremony-copy { width: calc(100% - 24px); padding-right: 12px; padding-left: 12px; }
    .bestiarium-video-ceremony-copy h3 { font-size: 29px; }
    .bestiarium-video-ceremony-copy > strong { font-size: 50px; }
    .bestiarium-video-ceremony-copy p { font-size: 15px; }
    .bestiarium-video-wax-seal { width: 58px; height: 58px; font-size: 25px; }
    .bestiarium-video-torch { top: 18%; height: 112px; }
    .bestiarium-video-torch.is-left { left: 7%; }
    .bestiarium-video-torch.is-right { right: 7%; }
    .bestiarium-video-gate > span { height: 28px; }
    .bestiarium-video-gate > i { width: 24px; }
    .bestiarium-video-intro-copy { width: 100%; padding: 20px 16px; }
    .bestiarium-video-intro-copy h3 { font-size: 26px; }
    .bestiarium-video-intro-copy p { font-size: 15px; }
    .bestiarium-video-stage { min-height: 0; padding: 10px; }
    .bestiarium-video-toolbar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bestiarium-video-toolbar .bestiarium-btn { width: 100%; min-width: 0; white-space: normal; }
    .bestiarium-video-grid { grid-template-columns: 1fr; }
    .bestiarium-video-tile-footer { min-height: 34px; padding: 6px 8px; }
}

@media (prefers-reduced-motion: reduce) {
    .bestiarium-video-recording-dot { animation: none; }
    .bestiarium-video-weekly.is-live .bestiarium-video-weekly-mark { animation: none; }
    .bestiarium-video-torch span { animation: none; }
    .bestiarium-video-gate,
    .bestiarium-video-ceremony-film,
    .bestiarium-video-ceremony-copy { transition-duration: 1ms; }
}
