/* Scrolling layout and fixed navigation. */
html,body { height:auto; min-height:100%; overscroll-behavior:auto; }
html { overflow-x:clip; overflow-y:auto; scroll-behavior:smooth; } body { overflow:visible; }
.scene { touch-action:pan-y pinch-zoom; height:calc(100dvh - 48px); margin-top:0; --content-top:max(240px,24%); --art-size:min(var(--face-size),48vw,calc(100dvh - 270px)); }
.matrix { color:#8fffff; opacity:.6; }
.site-header { position:fixed; inset:0 0 auto; z-index:30; width:100%; max-width:none; height:80px; min-height:80px; margin:0; padding:8px var(--margin); gap:24px; border:0; border-radius:0; background:#0072bdcc; backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); box-shadow:none; }
.site-header .navbar-forum-logo { display:block; width:clamp(160px,22vw,300px); height:auto; flex:none; }
.site-header .unadm-logo { width:68px; height:60px; margin-left:8px; }
.site-header .carousel__track { padding:0; align-items:center; }
.site-header .resource-card { min-height:44px; height:auto; padding:8px 12px; }
.site-header .resource-card__label { font-size:clamp(14px,1.2vw,18px); }
.site-header .resource-card__icon { width:20px; height:20px; }
.scene .internet-symbol { top:auto; bottom:calc(var(--art-size) * .96 + 12px); width:clamp(74px,7vw,110px); }
.history-panel { z-index:60; background:#0072bd; border-color:#ffffff55; color:#fff; }
.history-panel p,.history-panel button { color:#fff; }.history-panel button { background:#ffffff18; }.history-panel button:hover { background:#ffffff35; }
/* Equal spacing includes the seam between the two identical sponsor groups. */
.sponsors { height:180px; background:#fe3e2c; display:flex; align-items:center; overflow:hidden; border:0; }
.sponsors-track { display:flex; width:max-content; animation:sponsors-marquee 34s linear infinite; }
.sponsors-group { flex:none; display:flex; align-items:center; gap:64px; padding-right:64px; }
.sponsors-group img { flex:none; object-fit:contain; filter:brightness(0) invert(1); }
.sponsors-group img:nth-child(1) { width:312px; height:64px; }.sponsors-group img:nth-child(2) { width:114px; height:64px; }.sponsors-group img:nth-child(3) { width:110px; height:71px; }.sponsors-group img:nth-child(4) { width:112px; height:69px; }.sponsors-group img:nth-child(5) { width:171px; height:42px; }
@keyframes sponsors-marquee { to { transform:translateX(-50%); } }
/* Program and the decorative layer behind it. */
.program-wrap { position:relative; isolation:isolate; padding-block:100px; overflow:hidden; }
.program-wrap::after { content:''; position:absolute; inset:auto 0 0; height:90px; background:url('../../assets/brand/textura.svg') repeat-x bottom / auto 100%; pointer-events:none; z-index:0; }
.program-wave { position:absolute; top:0; bottom:0; width:calc(var(--margin) + 440px); height:100%; z-index:0; pointer-events:none; }
.program-wave--left { left:0; }.program-wave--right { right:0; transform:scaleX(-1); }
.program-section { position:relative; z-index:1; max-width:1240px; margin:0 auto; width:calc(100% - 2 * var(--margin)); background:#f9fffe; color:#0072bd; border-radius:4px; overflow:hidden; scroll-margin-top:100px; }
.program-head { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:40px 32px 28px; background:#0072bd; }
.program-head h2 { font-family:var(--font-title); font-size:48px; color:#fff; margin:0; }
.download-program { display:inline-flex; gap:10px; align-items:center; background:#ff7a4d; color:white; padding:14px 20px; border-radius:4px; font-weight:700; text-decoration:none; }
.download-program img { width:24px; height:24px; flex:none; }
.program-days { display:flex; background:#0072bd; gap:8px; padding:0 32px; align-items:stretch; }
.program-days button { flex:1; border:1px solid #ffffff40; padding:16px; border-radius:4px 4px 0 0; background:#ffffff66; color:#fff; font-weight:700; }
.program-days button[aria-pressed=true] { background:#f9fffe; color:#0072bd; border-bottom-color:#f9fffe; }
.program-content { padding:40px 16px; }.program-content[hidden] { display:none; }
.program-date { font-size:24px; margin:0 16px 12px; }.program-theme { font-size:32px; margin:0 16px 32px; }
.schedule-columns,.schedule-row { display:grid; grid-template-columns:25% 1fr; }
.schedule-columns { background:#0072bd; color:white; font-size:20px; font-weight:700; border-radius:4px; }.schedule-columns span { padding:24px; }
.schedule-row { border-bottom:1px solid #0072bd33; min-height:150px; }
.schedule-time { min-width:0; padding:30px clamp(10px,1.5vw,24px); background:#61a9e91a; font-weight:700; font-size:20px; }
.schedule-activity { padding:24px 32px; font-size:20px; line-height:1.6; }.schedule-activity p { margin:0 0 20px; }.schedule-activity p:last-child { margin-bottom:0; }
.schedule-group { padding:24px; margin:0; background:#8fffff66; font-size:22px; }
.participant { display:grid; grid-template-columns:24px minmax(0,1fr); gap:10px; }.participant strong,.schedule-activity strong { font-weight:700; }.participant-continuation { padding-left:34px; }
.live-broadcast { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; max-width:228px; min-height:61px; padding:14px 8px; margin-top:20px; border-radius:4px; background:#ff784c; box-shadow:0 2px 16px #ff784c; color:white; font-size:clamp(14px,1.35vw,20px); font-weight:700; text-decoration:none; }
.live-broadcast span { white-space:nowrap; }.live-broadcast img { flex:none; width:23px; height:23px; object-fit:contain; }.live-broadcast[aria-disabled=true] { opacity:.65; cursor:default; }
.download-program,.live-broadcast,.back-top { transition:background-color 180ms ease,box-shadow 180ms ease; }
.download-program:hover,.download-program:focus-visible,.live-broadcast:not([aria-disabled=true]):hover,.live-broadcast:not([aria-disabled=true]):focus-visible,.site-footer .back-top:hover,.site-footer .back-top:focus-visible { background:#fe3e2c; box-shadow:0 2px 16px #fe3e2c55; }
/* Footer content and a separate, readable decorative area. */
.site-footer { position:relative; isolation:isolate; overflow:hidden; min-height:579px; padding:48px var(--margin) 120px; color:#fff; background:#0072bd; }
.footer-grid { position:relative; z-index:1; max-width:1240px; margin:auto; min-height:294px; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; align-items:start; }
.footer-grid>img { grid-column:1; }.footer-grid>nav { grid-column:2; }.footer-grid>div { grid-column:3; }.footer-grid>.back-top { grid-column:5; justify-self:end; }
.site-footer h2 { color:#8fffff; font:700 18px var(--font-body); margin:0 0 24px; }.site-footer nav { display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.site-footer a,.site-footer button { color:white; font-size:18px; text-decoration:none; }.site-footer button { padding:0; background:none; border:0; }.site-footer a:hover,.site-footer button:hover { text-decoration:underline; }
.foro-social-icons { display:flex; flex-direction:column; gap:18px; }.foro-social-icons img { display:block; object-fit:contain; }
.site-footer .back-top { width:56px; height:56px; border-radius:50%; background:#ff784c; display:grid; place-items:center; font-size:32px; }
.footer-words { position:absolute; z-index:0; left:65%; right:3%; top:140px; bottom:24px; display:flex; justify-content:space-around; gap:16px; color:#8fffff; opacity:.6; pointer-events:none; overflow:hidden; }
.footer-word-lane { position:relative; width:40px; flex:none; height:100%; overflow:hidden; }
/* Horizontal text rotated as one strip avoids vertical-writing intrinsic-size clipping. */
.footer-word-loop { position:absolute; bottom:0; left:0; display:flex; width:max-content; height:40px; transform-origin:0 0; transform:rotate(-90deg); }
.footer-word-loop>span { flex:none; white-space:nowrap; line-height:40px; padding-right:32px; font-size:18px; animation:footer-word-flow 42s linear infinite; }
.footer-word-lane:nth-child(2) span { font-size:23px; animation-duration:48s; }.footer-word-lane:nth-child(3) span { font-size:16px; animation-duration:38s; }
@keyframes footer-word-flow { from { transform:translateX(-100%); } to { transform:translateX(0); } }
/* Tablet and mobile menu. */
.mobile-menu-toggle { display:none; }.mobile-menu { position:fixed; inset:0; margin:0; width:100vw; max-width:none; height:100dvh; max-height:none; border:0; padding:40px 24px; background:#0072bd; color:#fff; overflow-y:auto; }.mobile-menu::backdrop { background:#0072bd; }
.mobile-menu-close { display:block; margin-left:auto; width:48px; height:48px; border:0; background:none; color:#fff; font-size:40px; }
.mobile-menu nav { display:flex; flex-direction:column; align-items:flex-start; gap:20px; border-block:1px solid #ffffff55; padding:32px 0; margin-top:40px; }.mobile-menu h2 { margin:0 0 8px; font-size:20px; color:#fff; }.mobile-menu nav button { background:none; border:0; color:#fff; font-size:22px; padding:8px 0; text-align:left; }.mobile-menu #mobile-history { padding-left:24px; }.mobile-menu #mobile-history button { font-size:18px; }.mobile-menu-social { margin-top:32px; }.mobile-menu-social .foro-social-icons { flex-direction:row; gap:24px; } html.menu-open { overflow:hidden; }
@media(max-width:1100px) { .site-header { gap:12px; }.site-header .resource-card { padding:8px; }.site-header .resource-card__label { font-size:14px; } }
@media(min-width:701px) and (max-width:1100px) { .live-broadcast { flex-direction:column; font-size:14px; gap:8px; padding:12px 4px; } }
@media(max-width:900px) {
 .scene { --art-size:min(58dvh,65vw,calc(100dvh - 270px)); --content-top:240px; }
 .site-header { padding-inline:16px; }.site-header .carousel { display:none; }.site-header .navbar-forum-logo { width:clamp(150px,35vw,280px); }.site-header .unadm-logo { margin-left:auto; }
 .mobile-menu-toggle { display:grid; place-items:center; width:44px; height:44px; flex:none; padding:6px; border:0; background:none; }.mobile-menu-toggle img { width:32px; height:32px; }
}
@media(max-width:700px) {
 .sponsors { height:150px; }.sponsors-group { gap:40px; padding-right:40px; }
 .program-wrap { padding-block:48px 90px; }.program-section { width:calc(100% - 32px); }.program-head { flex-wrap:wrap; padding:24px 16px; }.program-head h2 { font-size:32px; }.download-program { font-size:14px; }
 .program-days { padding:0 12px; gap:4px; }.program-days button { padding:12px 4px; }.program-content { padding:24px 12px; }.program-theme { font-size:24px; }
 .schedule-columns { display:none; }.schedule-row { grid-template-columns:1fr; }.schedule-time { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px; font-size:17px; }.schedule-activity { padding:20px 18px; font-size:17px; }.schedule-group { font-size:18px; }
 .schedule-time .live-broadcast { margin:0; flex:0 1 190px; width:auto; min-height:44px; padding:10px 8px; font-size:14px; }.schedule-time .live-broadcast img { width:20px; height:20px; }
 .site-footer { padding:48px 24px 290px; }.footer-grid { grid-template-columns:1fr 1fr; gap:32px; }.footer-grid>img { grid-column:1/-1; }.footer-grid>nav { grid-column:1; }.footer-grid>div,.footer-grid>.back-top { grid-column:2; }
 .footer-words { left:38%; right:24px; top:auto; bottom:24px; height:240px; gap:8px; }
}
@media(max-width:600px) { .scene { height:calc(100dvh - 32px); min-height:720px; --art-size:min(43dvh,84vw); }.scene .internet-symbol { width:74px; }.site-header { padding-inline:12px; }.site-header .unadm-logo { width:46px; height:42px; } }
@media(max-width:380px) { .schedule-time { font-size:14px; gap:6px; }.schedule-time .live-broadcast { flex-basis:150px; font-size:12px; }.mobile-menu nav { margin-top:16px; padding-block:24px; gap:12px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.sponsors-track,.footer-word-loop>span { animation:none; } }

.site-loader { position:fixed; inset:0; z-index:100; display:grid; place-content:center; justify-items:center; background:#ff6140; color:#fff; pointer-events:none; animation:loader-failsafe .25s 4s forwards; transition:opacity .25s; }
.site-loader.is-ready { opacity:0; }.site-loader img { width:180px; height:180px; }.site-loader span { font-size:14px; }
@keyframes loader-failsafe { to { opacity:0; visibility:hidden; } }
@media(prefers-reduced-motion:reduce) { .site-loader img { visibility:hidden; } }

/* Linked identities retain their original dimensions and grid positions. */
.site-header>.forum-home,.site-header>.unadm-home { display:block; flex:none; }
.site-header>.unadm-home { margin-left:8px; }.site-header .unadm-logo { display:block; margin-left:0; }
.footer-grid>.unadm-home { grid-column:1; }.footer-grid>.unadm-home img { display:block; }
.footer-history summary { cursor:pointer; font-size:18px; }.footer-history button { margin-top:14px; padding-left:12px; font-size:16px; }
.foro-social-icons a { display:block; width:30px; height:30px; }.foro-social-icons a:hover { opacity:.8; }
@media(max-width:900px) { .site-header>.unadm-home { margin-left:auto; } }
@media(max-width:700px) { .footer-grid>.unadm-home { grid-column:1/-1; } }

/* Institutional shell: reserve the actual height injected by Gob.mx. */
.site-header { top:var(--gobmx-header-offset,0px); }
.program-section { scroll-margin-top:calc(100px + var(--gobmx-header-offset,0px)); }
.scene { --art-size:min(var(--face-size),48vw,calc(100dvh - 270px - var(--gobmx-header-offset,0px))); }
.scene p,.program-section p,.site-footer p { text-align:left; }
.schedule-group { background:rgb(143 255 255 / 60%); color:#0063a4; font-weight:700; text-align:center; }
.schedule-group--inline { margin:16px -16px; padding:16px; }
.sponsors-group>.unadm-home img { width:114px; height:64px; }
.sponsors-group[aria-hidden=true] { pointer-events:none; }
/* Fit the complete menu to the viewport instead of scrolling a full-height dialog. */
.mobile-menu { overflow:hidden; overscroll-behavior:none; padding:clamp(12px,3dvh,32px) 24px; }
.mobile-menu[open] { display:flex; flex-direction:column; gap:clamp(8px,2dvh,20px); }
.mobile-menu-close { flex:none; width:40px; height:40px; line-height:1; }
.mobile-menu nav { flex:1; min-height:0; margin:0; padding:clamp(8px,2dvh,24px) 0; gap:clamp(4px,1.4dvh,14px); }
.mobile-menu nav button { padding:4px 0; font-size:clamp(16px,2.7dvh,22px); line-height:1.2; }
.mobile-menu nav h2,.mobile-menu-social h2 { font-size:18px; margin:0 0 8px; }
.mobile-menu-social { margin:0; flex:none; }.mobile-menu .mobile-unadm { width:54px; height:44px; }
.mobile-menu #mobile-history button { font-size:16px; }
@media(max-height:570px) { .mobile-menu nav { display:grid; grid-template-columns:1fr 1fr; align-content:center; gap:8px 24px; }.mobile-menu nav h2 { grid-column:1/-1; }.mobile-menu nav>.unadm-home { justify-self:end; }.mobile-menu-social { display:flex; align-items:center; gap:24px; }.mobile-menu-social h2 { margin:0; } }
@media(max-width:900px) { .scene { --art-size:min(58dvh,65vw,calc(100dvh - 270px - var(--gobmx-header-offset,0px))); } }
@media(max-width:600px) { .scene { --art-size:min(43dvh,84vw,calc(720px - 270px - var(--gobmx-header-offset,0px))); } }

.program-overview { padding:20px 32px; color:#0072bd; background:#f9fffe; }.program-overview summary { cursor:pointer; font-weight:700; }.program-overview>div { max-width:900px; padding-top:20px; font-size:17px; line-height:1.6; }.program-overview li { margin-bottom:12px; }
@media(max-width:700px) { .program-overview { padding:16px; } }

/* Keep both linked identities optically aligned within the 80px navbar. */
.site-header .forum-home,.site-header .unadm-home { display:flex; align-items:center; }
.site-header .navbar-forum-logo { width:auto; height:44px; max-width:none; }
.site-header .unadm-logo { width:auto; height:44px; object-fit:contain; }
.program-overview #overview-title { margin:0; font:700 18px/1.4 var(--font-body); }
.site-footer .foro-social-icons { position:static; float:none; inset:auto; margin:0; padding:0; align-items:flex-start; width:auto; }
.site-footer .foro-social-icons a { position:static; float:none; margin:0; }
@media(max-width:900px) {
 .site-header .navbar-forum-logo,.site-header .unadm-logo { height:38px; }
}
@media(max-width:700px) {
 .site-header .navbar-forum-logo,.site-header .unadm-logo { height:clamp(25px,6vw,38px); }
 .site-header { gap:10px; }
 .schedule-group { text-align:left; }
 .footer-grid>.back-top { grid-row:3; align-self:start; }
}


/* Bootstrap clearfix pseudo-elements must not become flex items in the government header. */


/* Final typography and interaction colors, scoped to the Foro. */
.program-section .program-theme { text-align:left; }
.site-footer a:hover,.site-footer a:focus-visible,.site-footer button:hover,.site-footer button:focus-visible,.site-footer summary:hover,.site-footer summary:focus-visible { color:#8fffff; }
.site-footer .back-top:hover,.site-footer .back-top:focus-visible { background:#8fffff; color:#0063a4; box-shadow:0 2px 16px #8fffff55; }
.download-program:hover,.download-program:focus-visible { color:#8fffff; }
.site-footer .foro-social-icons a:hover img,.site-footer .foro-social-icons a:focus-visible img { filter:brightness(0) saturate(100%) invert(91%) sepia(33%) saturate(657%) hue-rotate(113deg) brightness(105%) contrast(101%); }


/* Tablet/mobile time labels: independent lines, without changing the surrounding layout. */
@media(max-width:1100px) {
 .schedule-time { text-align:left; text-align-last:left; }
 .schedule-range { display:inline-flex; flex-direction:column; align-items:flex-start; flex-shrink:0; line-height:1.4; }
 .schedule-range__join,.schedule-range__unit { display:block; }
}

.schedule-unit-compact { display:none; }
@media(max-width:1100px) { .schedule-unit-desktop { display:none; }.schedule-unit-compact { display:inline; } }

/* Explicit component styles take precedence over the scoped base defaults. */
#foro-site .download-program,#foro-site .download-program:hover,#foro-site .download-program:focus-visible,#foro-site .download-program:visited { color:#fff; }
#foro-site .program-days button { font-weight:700; }
#foro-site .program-days button[aria-pressed=false] { color:#fff; }
#foro-site .program-days button[aria-pressed=true] { color:#0072bd; }
@media(max-width:700px) {
 .program-head { flex-direction:column; align-items:flex-start; gap:16px; }
 .program-head .download-program { align-self:flex-start; max-width:100%; }
}

/* Preserve component colors against the scoped base link/button inheritance. */
#foro-site .site-header .resource-card,
#foro-site .live-broadcast,
#foro-site .live-broadcast[aria-disabled=true],
#foro-site .live-broadcast:visited,
#foro-site .live-broadcast:hover,
#foro-site .live-broadcast:focus-visible { color:#fff; }
#foro-site .site-footer a:hover,
#foro-site .site-footer a:focus-visible,
#foro-site .site-footer button:hover,
#foro-site .site-footer button:focus-visible,
#foro-site .site-footer summary:hover,
#foro-site .site-footer summary:focus-visible { color:#8fffff; }
#foro-site .site-footer h2,
#foro-site .mobile-menu h2 { color:#8fffff; }
#foro-site .site-footer .back-top:hover,
#foro-site .site-footer .back-top:focus-visible { background:#8fffff; color:#0063a4; }
#foro-site .mobile-menu-close { display:grid; place-items:center; flex:none; width:56px; height:56px; padding:0; color:#fff; font:400 54px/1 var(--font-body); }
#foro-site .mobile-menu-social h2 { margin-bottom:clamp(16px,3dvh,28px); }
@media(max-height:570px) {
 #foro-site .mobile-menu-close { width:48px; height:48px; font-size:46px; }
 #foro-site .mobile-menu-social { column-gap:clamp(20px,5vw,36px); }
 #foro-site .mobile-menu-social h2 { margin-bottom:0; }
}

/* Requested final interaction corrections. */
#foro-site .live-broadcast[aria-disabled=true] { pointer-events:none; }
#foro-site .live-broadcast[aria-disabled=true]:hover { color:#fff; background:#ff784c; box-shadow:0 2px 16px #ff784c; text-decoration:none; }
#foro-site .site-footer .back-top:hover,
#foro-site .site-footer .back-top:focus-visible { background:#fe3e2c; color:#fff; box-shadow:0 2px 16px #fe3e2c55; }
@media(max-width:700px) {
 #foro-site .schedule-time,#foro-site .schedule-range { text-align:left; text-align-last:left; direction:ltr; }
}

/* Historical lists show five rows, with independent vertical scrolling. */
.history-panel { max-height:calc(100dvh - 180px); overflow-y:auto; }
.history-days { display:grid; grid-template-columns:minmax(0,1fr); grid-auto-rows:44px; gap:6px; max-height:min(244px,32dvh); overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:#8fffff80 transparent; touch-action:pan-y; }
#foro-site .history-days a { display:flex; align-items:center; min-height:44px; color:inherit; padding:8px 12px; font-size:14px; text-decoration:none; border-radius:4px; background:#ffffff15; }
#foro-site .history-days a:hover,#foro-site .history-days a:focus-visible { background:#ffffff30; }
.history-edition { margin-top:12px; }.history-edition>summary { margin-bottom:12px; }
#foro-site .site-footer .history-days { display:grid; grid-template-columns:minmax(0,1fr); gap:6px; width:100%; align-items:stretch; }
#foro-site .mobile-menu #mobile-history { padding:0; width:100%; }
#foro-site .mobile-menu #mobile-history p { margin:0 0 4px; font-size:14px; }
#foro-site .mobile-menu nav.history-days { display:grid; flex:none; grid-template-columns:minmax(0,1fr); align-content:start; margin:0; padding:0; border:0; gap:6px; width:100%; }
@media(max-height:700px) { #foro-site .mobile-menu #mobile-history { grid-column:1/-1; } }

/* Enlarge the complete character from its original bottom-right anchor. */
.scene .face { bottom:0; transform:scale(1.04); transform-origin:100% 100%; }
.scene .internet-symbol { right:calc(var(--art-size) * .52); bottom:calc(var(--art-size) * .9984 + 12px); }

/* Institution logos keep their own proportions as the strip grows. */
.sponsors-group img[alt="CIIES · Universidad Veracruzana"] { width:278px; height:64px; filter:none; }
.sponsors-group img[alt="COMIE"] { width:112px; height:69px; }

/* Program actions and recordings. */
.program-actions { display:flex; flex-wrap:nowrap; align-items:center; gap:16px; max-width:100%; }
#foro-site .download-program { padding:14px; }
#foro-site .jump-live { background:none; border:0; padding:8px 0; color:white; font:inherit; font-weight:700; text-decoration:underline; cursor:pointer; }
#foro-site .jump-live[hidden],#foro-site .session-replay[hidden] { display:none; }
.day-replay:has(>a) { margin:16px 0 24px; }
#foro-site .day-replay .live-broadcast { width:228px; max-width:100%; flex-direction:row; margin:0; }
#foro-site .live-broadcast { scroll-margin-block:180px; }

/* Compact recording buttons and adjacent program actions. */
#foro-site .program-actions .download-program { flex:none; align-self:center; }
#foro-site .program-actions .jump-live { white-space:nowrap; }
.session-replay-label { display:flex; justify-content:center; gap:.25em; }
@media(max-width:1100px) {
 #foro-site .schedule-time .session-replay { flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:6px; width:100%; max-width:160px; flex:0 1 160px; min-width:0; }
 #foro-site .session-replay-label { flex-direction:column; align-items:center; gap:0; line-height:1.3; }
 #foro-site .session-replay-label span { display:block; white-space:nowrap; }
}

/* Requested spacing and compact mobile navigation. */
#foro-site .live-broadcast { box-sizing:border-box; padding:14px 20px; gap:8px; text-align:center; text-align-last:center; }
#foro-site .live-broadcast > span { white-space:normal; overflow-wrap:normal; }
#foro-site .day-replay .live-broadcast { width:fit-content; max-width:100%; padding-inline:24px; }
#foro-site .schedule-time .live-broadcast { padding:12px 16px; }
@media(max-width:600px) {
 #foro-site .schedule-time:has(.session-replay:not([hidden])) { flex-wrap:wrap; }
 #foro-site .schedule-time .session-replay { flex:0 0 auto; width:160px; max-width:100%; margin-top:8px; }
 #foro-site .schedule-time:has(.session-replay:not([hidden])) .schedule-range { flex-basis:100%; }
 #foro-site .mobile-menu nav.history-days { grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:40px; gap:6px; max-height:132px; scrollbar-gutter:auto; }
 #foro-site .mobile-menu .history-days a { min-height:40px; justify-content:center; padding:6px 4px; font-size:14px; }
 #foro-site .mobile-menu > nav { flex:1 1 auto; gap:clamp(4px,1dvh,8px); padding-block:8px; }
 #foro-site .mobile-menu > nav > * { flex-shrink:0; }
 #foro-site .mobile-menu-social { margin-top:8px; }
 #foro-site .mobile-menu[open] { animation:foro-menu-enter 220ms cubic-bezier(.2,.8,.2,1) both; }
 @keyframes foro-menu-enter { from { opacity:0; transform:translateY(-18px); } to { opacity:1; transform:translateY(0); } }
}
@media(max-width:600px) and (max-height:650px) {
 #foro-site .mobile-menu { padding:10px 18px; }
 #foro-site .mobile-menu[open] { gap:4px; }
 #foro-site .mobile-menu-close { width:40px; height:40px; font-size:40px; }
 #foro-site .mobile-menu > nav { gap:4px; }
 #foro-site .mobile-menu-social h2 { margin-bottom:8px; }
}
@media(prefers-reduced-motion:reduce) { #foro-site .mobile-menu[open] { animation:none; } }
