/* D03–D06, D08, D10–D11. Se carga tras los estilos publicados. */
.calendar-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,1fr);gap:24px;align-items:start}
.calendar-month-pane{min-width:0;position:sticky;top:16px}
#calendar-selection{min-width:0}
#calendar-selection>h3{margin-top:0;font-size:22px}
.calendar-grid .calendar-day{position:relative}
.calendar-grid .calendar-day>span{pointer-events:none}
.calendar-grid .calendar-day button{min-height:70px;width:100%;border-radius:8px}
.calendar-grid .calendar-day button[data-empty-day]{background:transparent;border:1px solid transparent;color:var(--muted)}
.calendar-grid .calendar-day button[aria-pressed=true]{outline:3px solid var(--yellow);outline-offset:-3px;background:var(--surface)}
.calendar-grid .calendar-day button:focus-visible{outline:3px solid var(--white);outline-offset:-3px}
.calendar-grid .calendar-day .desktop-title{font-size:11px;line-height:1.25;overflow-wrap:anywhere}
.calendar-grid .calendar-mini button{min-height:40px}
.calendar-next-date{margin:12px 0}
.event-card .card-body{min-width:0}
.event-card h3{font-size:clamp(21px,2.3vw,30px);line-height:1.12;margin-block:8px}
.event-card .meta,.event-card .record-dates{font-weight:650;color:var(--white)}
.event-card .card-body>p:not(.meta):not(.record-dates){font-size:13px;line-height:1.5}
.event-card .record-actions{gap:6px 12px;flex-wrap:wrap}
.event-card .social-widget{margin-top:14px;padding:12px 0 0;border-top:1px solid var(--line);background:transparent;min-height:160px}
.event-card .social-widget .social-heading{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;align-items:baseline}
.event-card .social-widget .social-faces{display:flex;flex-wrap:nowrap;align-items:center;gap:5px;margin:8px 0;min-height:32px;overflow:hidden}
.event-card .social-widget .social-faces>a{flex:0 0 auto}
.event-card .social-widget .social-avatar{width:28px;height:28px;min-width:28px;font-size:10px}
.event-card .social-widget .social-avatar img{width:28px;height:28px}
.event-card .social-widget .social-face-name{display:none}
.event-card .social-widget .social-faces>[data-all]{margin-left:4px;white-space:nowrap;min-height:32px;font-size:12px}
.event-card .social-widget .social-actions{gap:6px;font-size:12px}
.event-card .social-widget .button{padding:7px 10px;min-height:36px;font-size:12px}
.event-card .social-widget .social-caption{font-size:11px;margin-block:6px}
.social-widget .social-followed{font-size:12px;margin:6px 0;border:0;padding:0;background:transparent}
.social-widget .social-faces [data-followed]{outline:2px solid var(--yellow);outline-offset:2px;border-radius:50%}
.social-privacy-link{white-space:normal}
.profile-section-nav{display:flex;flex-wrap:wrap;gap:10px 20px;border-block:1px solid var(--line);padding:16px 0;margin:24px 0}
.profile-section-nav a{color:var(--white);font-size:13px}
.ux-profile-section{margin:32px 0;scroll-margin-top:24px}
.ux-profile-section>h2{font-size:28px;margin:0 0 12px}
.social-profile-hero.ux-profile-identity{align-items:center;gap:24px;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.ux-profile-identity .social-avatar,.ux-profile-identity .social-avatar img{width:88px;height:88px;min-width:88px}
.ux-profile-identity h2{margin:0;font-size:clamp(27px,4vw,42px)}
.ux-profile-bio{max-width:68ch;white-space:pre-wrap;line-height:1.7}
.ux-profile-section .social-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ux-profile-section .social-event{margin:0}
.ux-alert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.ux-alert-block{min-width:0;border:1px solid var(--line);border-radius:16px;padding:24px;background:var(--surface)}
.ux-alert-block h2{font-size:25px;margin-top:0}
.ux-alert-block fieldset{margin:0;padding:0;border:0;min-width:0}
.ux-alert-block legend{font-weight:700;margin-bottom:14px;font-size:18px}
.ux-alert-block .social-check{display:flex;align-items:flex-start;gap:10px;margin-block:16px;font-size:14px;line-height:1.6}
.ux-alert-block .social-check input{flex:0 0 auto;margin-top:5px}
.ux-alert-block select{width:100%}
.ux-alert-block [role=status]{min-height:1.5em}
.ux-follow-block{margin:24px 0;border-top:1px solid var(--line);padding-top:24px}
.ux-follow-block .social-search{align-items:end}
.ux-follow-block .watch-list{padding:0;list-style:none}
.ux-follow-block .watch-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
[data-notifications]{min-height:240px}
.social-notification{border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:12px;padding:20px;margin:12px 0;background:var(--surface)}
.social-notification.read{border-left-color:var(--line)}
.social-notification h3{font-size:23px;margin:8px 0}
.ux-loading{min-height:220px}
.ux-skeleton{height:150px;border-radius:12px;background:linear-gradient(100deg,var(--surface) 25%,var(--line) 45%,var(--surface) 65%);background-size:250% 100%;animation:ux-pulse 1.8s ease infinite;opacity:.4}
.social-widget.ux-loading{min-height:160px}
.social-widget .ux-skeleton{height:80px}
#community-page{min-height:420px}
@keyframes ux-pulse{to{background-position:-170% 0}}
@media(prefers-reduced-motion:reduce){.ux-skeleton{animation:none}}
@media(max-width:900px){.calendar-layout,.ux-alert-grid{grid-template-columns:minmax(0,1fr)}.calendar-month-pane{position:static}}
@media(max-width:720px){
 body .header.agenda-header{display:flex;flex-wrap:nowrap;min-height:68px;gap:12px;padding-block:12px}
 body .agenda-header .brand.agenda-wordmark{font-size:clamp(28px,7.8vw,48px);min-height:44px;align-items:center;grid-column:auto;flex:0 1 auto}
 body .agenda-header .agenda-menu{grid-column:auto;flex:0 0 auto}
 body .agenda-header .agenda-menu>summary{min-width:72px;padding:10px;gap:7px}
 body .agenda-header .agenda-menu nav{max-height:calc(100dvh - 105px)}
 .ux-alert-block{padding:18px}.social-profile-hero.ux-profile-identity{padding:18px;gap:14px}
 .ux-profile-identity .social-avatar,.ux-profile-identity .social-avatar img{width:64px;height:64px;min-width:64px}
 .ux-profile-section .social-event-list{grid-template-columns:minmax(0,1fr)}
 .calendar-grid .calendar-day button{min-height:52px}.calendar-grid .calendar-day button[data-empty-day]{min-height:52px}
 .calendar-grid .calendar-mini button{min-height:32px}
}

.calendar-layout.calendar-annual{grid-template-columns:minmax(0,1fr)}
.calendar-annual .calendar-month-pane{position:static}
.social-preview-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}
.event-card .social-preview-row{flex-wrap:nowrap;gap:8px}
.event-card .social-followed{font-size:11px;line-height:1.3;min-width:0}
.event-card .social-widget .social-faces{flex:0 1 auto;overflow:visible;gap:4px}
.event-card .social-widget .social-avatar,.event-card .social-widget .social-avatar img{width:24px;height:24px;min-width:24px}

/* Reservar preferencias desde el HTML inicial y conservar el espacio al resolver. */
.ux-alert-grid>[data-personalized]{min-height:760px}
.ux-alert-grid>.ux-alert-block:nth-child(2){min-height:600px}
.calendar-full .calendar-day button>span:first-child{display:block;text-align:left;font-size:12px;margin-bottom:8px}
@media(max-width:900px){.ux-alert-grid>[data-personalized]{min-height:900px}}
@media(max-width:360px){.ux-alert-grid>[data-personalized]{min-height:1050px}.event-card .social-faces>a:nth-of-type(n+4){display:none}}
