/* Gutter permanente: al cambiar la altura del contenido no cambia el centrado. */
html{overflow-y:scroll;scrollbar-gutter:stable}
#shell,.workspace,.workspace main,#content{min-width:0}
.workspace main{min-height:calc(100svh - 160px)}
.calendar-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);min-width:0}
.calendar-layout>*{min-width:0}.month-card{position:static}.month-grid{min-width:0}
#boot-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--fervor-full-gradient);color:#fff;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
.loader-content{text-align:center}.loader-content p{font-size:13px;font-weight:400;margin:28px 0 0;letter-spacing:.2px}
.loader-logo{position:relative;width:clamp(150px,32vw,260px);aspect-ratio:726/325;margin:auto}
.loader-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.loader-fill{clip-path:inset(100% 0 0 0);animation:fervor-fill 1.6s ease-in-out infinite}
@keyframes fervor-fill{0%,8%{clip-path:inset(100% 0 0 0)}50%,65%{clip-path:inset(0 0 0 0)}94%,100%{clip-path:inset(100% 0 0 0)}}
body.is-loading>.skip{visibility:hidden}
@media(max-width:800px){.calendar-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.workspace main{min-height:calc(100svh - 190px)}}
@media(prefers-reduced-motion:reduce){.loader-fill{animation:none;clip-path:inset(0 0 0 0)}}
/* Carga: las mismas 3 barritas que festivalfervor.com */
#boot-loader .eq{display:flex;align-items:flex-end;gap:6px;height:34px}
#boot-loader .eq i{display:block;width:9px;height:100%;background:#fff;transform-origin:bottom;transform:scaleY(.3);animation:eq-rise 1100ms cubic-bezier(.77,0,.175,1) infinite}
#boot-loader .eq i:nth-child(2){transform:scaleY(.6);animation-delay:140ms}
#boot-loader .eq i:nth-child(3){transform:scaleY(.9);animation-delay:280ms}
@keyframes eq-rise{0%,100%{transform:scaleY(.12)}45%{transform:scaleY(1)}70%{transform:scaleY(.45)}}
@media (prefers-reduced-motion:reduce){#boot-loader .eq i{animation:none}}
