*{box-sizing:border-box}html,body,#stage{margin:0;width:100%;height:100%;overflow:hidden;background:transparent}#stage{--accent:#d7b46a;--panel:rgba(13,31,24,.94);--text:#fff;position:relative;font-family:"DM Sans",sans-serif;color:var(--text)}#stage.theme-light{--panel:rgba(246,242,232,.96);--text:#17231c}#stage.theme-ocean{--panel:rgba(4,28,39,.95);--text:#fff}.brand-bug{position:absolute;top:5.5%;left:4.2%;display:flex;align-items:center;gap:12px;opacity:0;transform:translateY(-15px);transition:.6s cubic-bezier(.2,.8,.2,1)}.brand-bug.show{opacity:1;transform:none}.brand-bug span{display:grid;place-items:center;width:50px;height:50px;border:1.5px solid var(--accent);border-radius:50%;color:var(--accent);font:600 18px Georgia}.brand-bug b{font:600 clamp(13px,1.15vw,22px) Manrope;letter-spacing:.02em;text-shadow:0 2px 10px #0008}.live-bug{position:absolute;top:6.3%;right:4.2%;display:flex;align-items:center;gap:9px;background:#b32625;color:#fff;padding:.72em 1.1em;border-radius:4px;font-size:clamp(10px,.75vw,14px);font-weight:700;letter-spacing:.14em;opacity:0;transform:translateX(20px);transition:.45s}.live-bug.show{opacity:1;transform:none}.live-bug i{width:8px;height:8px;background:white;border-radius:50%;animation:pulse 1.8s infinite}.graphic{position:absolute;opacity:0;pointer-events:none}.lower-third{left:5%;bottom:8%;display:flex;align-items:stretch;filter:drop-shadow(0 12px 22px #0004);transform:translateX(-50px);transition:.55s cubic-bezier(.16,.8,.25,1)}.lower-third.show{opacity:1;transform:none}.gold-rule{width:7px;background:var(--accent);transform:scaleY(0);transform-origin:bottom;transition:.4s .1s}.show .gold-rule{transform:scaleY(1)}.lower-copy{min-width:min(470px,38vw);background:var(--panel);padding:18px 30px 17px;clip-path:inset(0 100% 0 0);transition:clip-path .55s .08s cubic-bezier(.2,.8,.2,1)}.show .lower-copy{clip-path:inset(0)}.lower-copy h1{font:600 clamp(20px,1.85vw,35px) Manrope;margin:0;letter-spacing:-.02em}.lower-copy p{font-size:clamp(10px,.85vw,16px);color:var(--accent);margin:5px 0 0;text-transform:uppercase;letter-spacing:.14em}.scripture{left:7%;right:7%;bottom:7%;background:var(--panel);padding:clamp(28px,2.4vw,48px) clamp(40px,4vw,78px) clamp(25px,2vw,40px);border-top:3px solid var(--accent);filter:drop-shadow(0 15px 35px #0004);transform:translateY(50px);transition:.65s cubic-bezier(.2,.8,.2,1)}.scripture.show{opacity:1;transform:none}.quote-mark{position:absolute;left:25px;top:20px;color:var(--accent);font:64px Georgia;line-height:1}.scripture blockquote{font:500 clamp(20px,2vw,38px)/1.35 Manrope;margin:0;max-width:90%}.verse-meta{display:flex;align-items:center;gap:14px;margin-top:20px;color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:clamp(10px,.8vw,15px)}.verse-meta span{color:var(--text);opacity:.55;border-left:1px solid currentColor;padding-left:14px}.announcement{right:5%;bottom:8%;background:var(--panel);border-right:6px solid var(--accent);padding:18px 28px;min-width:330px;text-align:right;filter:drop-shadow(0 12px 22px #0004);transform:translateX(50px);transition:.55s cubic-bezier(.16,.8,.25,1)}.announcement.show{opacity:1;transform:none}.announcement p{margin:0 0 4px;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.15em}.announcement h2{margin:0;font:600 clamp(18px,1.7vw,32px) Manrope}@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 #fff5}50%{opacity:.7;box-shadow:0 0 0 7px #fff0}}

/* Identidad institucional División */
#stage{--accent:#003366;--panel:rgba(0,51,102,.96)}#stage.theme-light{--panel:rgba(245,248,252,.97);--text:#003366}#stage.theme-ocean{--panel:rgba(0,37,74,.96)}.brand-bug img{display:block;width:58px;height:58px;border-radius:50%;object-fit:cover;filter:drop-shadow(0 3px 8px #0004)}.gold-rule{background:#fff}.lower-copy p,.quote-mark,.verse-meta,.announcement p{color:#fff}.lower-copy p,.announcement p{opacity:.78}.scripture{border-top-color:#fff}.announcement{border-right-color:#fff}
.brand-bug img{width:88px;height:88px}.brand-bug b{font-size:clamp(16px,1.3vw,25px)}

/* Esquema de la Creación: seis columnas de contenido + columna del sábado */
#stage{--sabbath-column:14.2857%}
.brand-bug{z-index:5;top:0;right:0;bottom:0;left:auto;width:var(--sabbath-column);height:100%;padding:0 0 5.2%;display:flex;align-items:flex-end;justify-content:center;background:#003366;border-left:1px solid rgba(255,255,255,.35);transform:translateX(100%);filter:drop-shadow(-8px 0 20px #00172e33)}
.brand-bug.show{transform:translateX(0)}
.sabbath-mark{display:grid;place-items:center;width:100%}
.brand-bug img{width:clamp(72px,6vw,116px);height:clamp(72px,6vw,116px);border-radius:50%;object-fit:cover;filter:none}
.live-bug{z-index:6;right:calc(var(--sabbath-column) + 2.2%)}
.graphic{z-index:3}
.scripture{left:4.25%;right:calc(var(--sabbath-column) + 2%);background-color:var(--panel);background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(16.666% - 1px),rgba(255,255,255,.13) calc(16.666% - 1px),rgba(255,255,255,.13) 16.666%)}
.lower-third{max-width:calc(100% - var(--sabbath-column) - 9%)}
.lower-copy{background-color:var(--panel);background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(16.666% - 1px),rgba(255,255,255,.11) calc(16.666% - 1px),rgba(255,255,255,.11) 16.666%)}
.announcement{right:calc(var(--sabbath-column) + 2%);background-color:var(--panel);background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(16.666% - 1px),rgba(255,255,255,.11) calc(16.666% - 1px),rgba(255,255,255,.11) 16.666%)}

/* Tipografía oficial de la Iglesia Adventista */
@font-face{font-family:"Advent Sans";src:url("/assets/fonts/AdventSans-Logo.otf") format("opentype");font-style:normal;font-weight:100 900;font-display:swap}
#stage,.lower-copy h1,.scripture blockquote,.announcement h2{font-family:"Advent Sans","DM Sans",Arial,sans-serif}.lower-copy h1,.announcement h2{font-weight:650}.scripture blockquote{font-weight:500}

/* Símbolo oficial monocromático en la columna del sábado */
.brand-bug img{width:clamp(86px,7.2vw,138px);height:clamp(86px,7.2vw,138px);border-radius:0;object-fit:contain;filter:brightness(0) invert(1)}
.official-symbol-crop{position:relative;display:block;width:clamp(76px,5.8vw,112px);aspect-ratio:1;overflow:visible}
.adventist-symbol{display:block;width:100%;height:100%;overflow:visible;--fill-color:#fff;fill:#fff}

/* Identidad compacta cuando la séptima columna está fuera de aire */
.floating-brand{position:absolute;z-index:6;top:5.35%;right:4.2%;width:clamp(44px,3.5vw,66px);height:clamp(44px,3.5vw,66px);border-radius:50%;background:#003366;opacity:0;transform:translateY(-14px) scale(.9);transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 5px 12px #0004)}.floating-brand.show{opacity:1;transform:none}.floating-brand img{display:block;width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.compact-brand .live-bug{right:calc(4.2% + clamp(56px,4.6vw,88px))}.compact-brand .scripture{right:4.25%}.compact-brand .announcement{right:4.25%}.compact-brand .lower-third{max-width:86%}

/* Paquete TV compacto: la retícula organiza, pero no se dibuja sobre el contenido */
.lower-copy,.scripture,.announcement{background-image:none}
.channel-bug{position:absolute;z-index:6;top:5%;right:calc(var(--sabbath-column) + 2.2%);display:flex;align-items:center;gap:10px;filter:drop-shadow(0 5px 12px #0004)}
.live-bug{position:relative;top:auto;right:auto;justify-content:center;gap:8px;height:clamp(28px,1.65vw,32px);min-width:clamp(86px,4.8vw,94px);padding:0 13px;border-radius:5px;font-size:clamp(10px,.67vw,13px);font-weight:750;letter-spacing:.1em;transform:translateX(12px);transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1);filter:none}
.live-bug i{flex:0 0 auto;width:7px;height:7px;animation-duration:2.4s}
.floating-brand{position:relative;z-index:auto;top:auto;right:auto;display:none;place-items:center;width:clamp(48px,2.75vw,54px);height:clamp(48px,2.75vw,54px);border-radius:8px;overflow:hidden;isolation:isolate;transform:translateY(-10px) scale(.94);filter:none}
.compact-brand .floating-brand{display:grid}.floating-brand.show{transform:none}
.compact-creation-sweep{position:absolute;z-index:1;inset:0;display:grid;grid-template-columns:repeat(7,1fr);pointer-events:none}
.compact-creation-sweep i{background:#0a4278;border-right:1px solid rgba(255,255,255,.17);opacity:0;transform:translateY(-110%);will-change:transform,opacity}
.compact-creation-sweep i:nth-child(2),.compact-creation-sweep i:nth-child(5){background:#073d72}.compact-creation-sweep i:nth-child(3){background:#0b477f}.compact-creation-sweep i:nth-child(4){background:#06396c}.compact-creation-sweep i:nth-child(7){background:#002a54;border-right:0}
.floating-brand.show .compact-creation-sweep i{animation:compact-column-drop .72s cubic-bezier(.22,.72,.22,1) both}
.floating-brand.show .compact-creation-sweep i:nth-child(2){animation-delay:.045s}.floating-brand.show .compact-creation-sweep i:nth-child(3){animation-delay:.09s}.floating-brand.show .compact-creation-sweep i:nth-child(4){animation-delay:.135s}.floating-brand.show .compact-creation-sweep i:nth-child(5){animation-delay:.18s}.floating-brand.show .compact-creation-sweep i:nth-child(6){animation-delay:.225s}.floating-brand.show .compact-creation-sweep i:nth-child(7){animation-delay:.27s}
.floating-brand.refresh .compact-creation-sweep{z-index:3}
.floating-brand.refresh .compact-creation-sweep i{background:rgba(255,255,255,.46);animation-name:compact-column-refresh}
.compact-symbol-crop{position:relative;z-index:2;display:block;width:72%;height:72%;overflow:hidden;opacity:0;transform:translateY(5px) scale(.88)}
.floating-brand.show .compact-symbol-crop{animation:compact-symbol-in .42s .43s cubic-bezier(.2,.8,.2,1) both}
.compact-brand .channel-bug{right:4.2%}
.compact-brand .live-bug{right:auto}
.lower-copy{width:clamp(620px,44vw,860px);min-width:0;padding:24px 36px 22px}
.lower-copy h1{width:100%;font-size:clamp(32px,2.55vw,49px);line-height:1.08;text-wrap:balance}
.lower-copy p{width:100%;font-size:clamp(15px,1.1vw,21px);line-height:1.15;letter-spacing:.1em;white-space:nowrap}
.scripture{left:5%;right:calc(var(--sabbath-column) + 2.4%);padding:clamp(30px,2.35vw,45px) clamp(44px,3vw,58px) clamp(27px,2vw,38px)}
.scripture blockquote{width:100%;max-width:100%;font-size:clamp(26px,2.35vw,46px);line-height:1.3}
.quote-mark{left:23px;top:20px;font-size:60px}
.verse-meta{margin-top:18px;font-size:clamp(12px,.9vw,17px);letter-spacing:.12em}
.announcement{right:calc(var(--sabbath-column) + 2.4%);width:clamp(420px,31vw,620px);min-width:0;padding:19px 28px}
.announcement p{width:100%;font-size:clamp(12px,.85vw,16px);letter-spacing:.13em;white-space:nowrap}
.announcement h2{width:100%;font-size:clamp(24px,2vw,40px);line-height:1.14}
.compact-brand .scripture,.compact-brand .announcement,.compact-brand .social{right:5%}
.compact-brand .lower-third{max-width:90%}

/* Redes sociales: identificación breve y discreta */
.social{right:calc(var(--sabbath-column) + 2.4%);bottom:8%;display:flex;align-items:center;max-width:64%;min-height:76px;background:var(--panel);border-top:2px solid rgba(255,255,255,.9);border-radius:7px 0 0 7px;padding:14px 22px 14px 14px;filter:drop-shadow(0 12px 24px #0004);transform:translateY(24px);transition:opacity .4s,transform .5s cubic-bezier(.2,.8,.2,1)}.social.show{opacity:1;transform:none}.social-mark{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;margin-right:16px;border-radius:50%;background:#fff;color:#003366;font-size:23px;font-weight:750}.social-copy{min-width:0}.social-copy>p{margin:0 0 7px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.72}.social-links{display:flex;align-items:center;gap:16px;min-width:0}.social-links span{display:flex;align-items:center;gap:6px;min-width:0}.social-links b{display:grid;place-items:center;flex:0 0 auto;width:23px;height:23px;border:1px solid rgba(255,255,255,.45);border-radius:5px;color:#fff;font-size:8px;letter-spacing:.04em}.social-links strong{overflow:hidden;color:#fff;font-size:clamp(13px,.84vw,16px);font-weight:550;text-overflow:ellipsis;white-space:nowrap}.theme-light .social-copy>p,.theme-light .social-links strong{color:#003366}.theme-light .social-links b{border-color:#00336655;color:#003366}

/* Entrada inspirada en los siete días: aparece, recorre y se limpia */
.lower-copy{position:relative;overflow:hidden}
.scripture{position:absolute;overflow:hidden}
.creation-sweep{position:absolute;z-index:1;inset:0;display:grid;grid-template-columns:repeat(7,1fr);pointer-events:none}
.creation-sweep span{opacity:0;background:rgba(255,255,255,.075);border-right:1px solid rgba(255,255,255,.14);transform:translateY(-102%);will-change:transform,opacity}
.creation-sweep span:last-child{border-right:0;background:rgba(255,255,255,.17)}
.show .creation-sweep span{animation:creation-column-drop .82s cubic-bezier(.22,.72,.22,1) both}
.show .creation-sweep span:nth-child(2){animation-delay:.07s}.show .creation-sweep span:nth-child(3){animation-delay:.14s}.show .creation-sweep span:nth-child(4){animation-delay:.21s}.show .creation-sweep span:nth-child(5){animation-delay:.28s}.show .creation-sweep span:nth-child(6){animation-delay:.35s}.show .creation-sweep span:nth-child(7){animation-delay:.42s}
.lower-copy h1,.lower-copy p,.scripture blockquote,.verse-meta{position:relative;z-index:2}
.quote-mark{position:absolute;z-index:2}
.show .lower-copy h1,.show .scripture blockquote{animation:creation-copy-in .5s .34s cubic-bezier(.2,.8,.2,1) both}
.show .lower-copy p,.show .verse-meta{animation:creation-copy-in .45s .46s cubic-bezier(.2,.8,.2,1) both}
.show .quote-mark{animation:creation-copy-in .4s .3s cubic-bezier(.2,.8,.2,1) both}
.theme-light .creation-sweep span{background:rgba(0,51,102,.055);border-right-color:rgba(0,51,102,.11)}
.theme-light .creation-sweep span:last-child{background:rgba(0,51,102,.13)}
@keyframes creation-column-drop{0%{opacity:0;transform:translateY(-102%)}18%{opacity:1}68%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(0)}}
@keyframes creation-copy-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes compact-column-drop{0%{opacity:0;transform:translateY(-110%)}15%{opacity:1}68%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(0)}}
@keyframes compact-column-refresh{0%{opacity:0;transform:translateY(-110%)}18%{opacity:.34}68%{opacity:.34;transform:translateY(0)}100%{opacity:0;transform:translateY(0)}}
@keyframes compact-symbol-in{from{opacity:0;transform:translateY(5px) scale(.88)}to{opacity:1;transform:none}}
/* La salida broadcast conserva su coreografía aunque el PC operador tenga
   activada la reducción de movimiento: vMix puede heredar esa preferencia. */

/* Pantalla completa de apertura y cierre */
.broadcast-slate{position:absolute;z-index:20;inset:0;display:grid;place-items:center;overflow:hidden;opacity:0;transition:none}
.broadcast-slate.show,.broadcast-slate.exit{opacity:1}
.slate-grid{position:absolute;z-index:0;inset:0;display:grid;grid-template-columns:repeat(7,1fr)}
.slate-grid span{transform:translateY(-102%);background:#0a4278;border-right:1px solid rgba(255,255,255,.16);will-change:transform}
.slate-grid span:nth-child(2){background:#073d72}.slate-grid span:nth-child(3){background:#0b477f}.slate-grid span:nth-child(4){background:#06396c}.slate-grid span:nth-child(5){background:#0a4278}.slate-grid span:nth-child(6){background:#073d72}.slate-grid span:nth-child(7){background:#002a54;border-right:0}
.broadcast-slate.show .slate-grid span{animation:slate-column-in .86s cubic-bezier(.2,.78,.2,1) both}
.broadcast-slate.show .slate-grid span:nth-child(2){animation-delay:.09s}.broadcast-slate.show .slate-grid span:nth-child(3){animation-delay:.18s}.broadcast-slate.show .slate-grid span:nth-child(4){animation-delay:.27s}.broadcast-slate.show .slate-grid span:nth-child(5){animation-delay:.36s}.broadcast-slate.show .slate-grid span:nth-child(6){animation-delay:.45s}.broadcast-slate.show .slate-grid span:nth-child(7){animation-delay:.54s}
.slate-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:min(760px,62vw);text-align:center;color:#fff;opacity:0;transform:translateY(16px)}
.broadcast-slate.show .slate-content{animation:slate-content-in .75s 1s cubic-bezier(.2,.8,.2,1) both}
.broadcast-slate.show[data-mode="start"] .slate-grid span{animation:none;transform:none}
.broadcast-slate.show[data-mode="start"] .slate-content{animation:none;opacity:1;transform:none}
.broadcast-slate.exit .slate-grid span{animation:slate-column-out .72s cubic-bezier(.4,0,.25,1) both}
.broadcast-slate.exit .slate-grid span:nth-child(2){animation-delay:.08s}.broadcast-slate.exit .slate-grid span:nth-child(3){animation-delay:.16s}.broadcast-slate.exit .slate-grid span:nth-child(4){animation-delay:.24s}.broadcast-slate.exit .slate-grid span:nth-child(5){animation-delay:.32s}.broadcast-slate.exit .slate-grid span:nth-child(6){animation-delay:.4s}.broadcast-slate.exit .slate-grid span:nth-child(7){animation-delay:.48s}
.broadcast-slate.exit .slate-content{animation:slate-content-out .28s ease both}
.slate-content img{display:block;width:min(680px,54vw);max-height:30vh;object-fit:contain;filter:brightness(0) invert(1) drop-shadow(0 8px 24px rgba(0,20,42,.28))}
.slate-divider{width:54px;height:2px;margin:clamp(26px,2.5vw,46px) 0 clamp(20px,1.7vw,30px);background:rgba(255,255,255,.9)}
.slate-content p{width:100%;margin:0 0 9px;font-size:clamp(15px,1.15vw,22px);font-weight:650;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;opacity:.72}
.slate-content h2{width:100%;max-width:900px;margin:0;font:550 clamp(32px,3.2vw,62px)/1.12 "Advent Sans",Arial,sans-serif;letter-spacing:-.015em}
.slate-countdown-wrap{display:flex;flex-direction:column;align-items:center;margin-top:clamp(20px,2vw,34px)}
.slate-countdown{display:flex;align-items:center;justify-content:center;font:600 clamp(54px,5vw,96px)/.9 "Advent Sans",Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.025em;text-shadow:0 6px 24px rgba(0,24,48,.24)}
.slate-countdown i{margin:0 .09em;font-style:normal;font-weight:400;opacity:.56;transform:translateY(-.05em)}
.slate-countdown-wrap small{margin-top:12px;font-size:clamp(10px,.65vw,13px);font-weight:650;letter-spacing:.24em;opacity:.58}
.slate-countdown.is-zero{opacity:.72}
.broadcast-slate[data-mode="end"] .slate-countdown-wrap{display:none}
.broadcast-slate.countdown-off .slate-countdown-wrap{display:none}
.broadcast-slate[data-mode="end"] .slate-divider{width:86px}
@keyframes slate-column-in{from{transform:translateY(-102%)}to{transform:translateY(0)}}
@keyframes slate-column-out{from{transform:translateY(0)}to{transform:translateY(102%)}}
@keyframes slate-content-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes slate-content-out{from{opacity:1;transform:none}to{opacity:0;transform:translateY(10px)}}
