:root{--idif-bg:#07101c;--idif-card:#0e1a29;--idif-card2:#132236;--idif-text:#f4f7fb;--idif-muted:#a9b6c7;--idif-accent:#20c997;--idif-accent2:#58e0b9;--idif-danger:#ff6470;--idif-warn:#ffc857;--idif-line:rgba(255,255,255,.1);--idif-radius:20px}
.idif-home,.idif-section,.idif-form-card,.idif-dashboard,.idif-live-card,.idif-cta{box-sizing:border-box;font-family:inherit}
.idif-home *,.idif-section *,.idif-form-card *,.idif-dashboard *,.idif-live-card *,.idif-cta *{box-sizing:border-box}
.idif-kicker{font-size:.76rem;letter-spacing:.14em;font-weight:800;color:var(--idif-accent2)}
.idif-section{margin:28px 0;padding:26px;border-radius:var(--idif-radius);background:linear-gradient(180deg,var(--idif-card),#09131f);color:var(--idif-text);border:1px solid var(--idif-line)}
.idif-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.idif-section-head h2{margin:.2rem 0 0;font-size:clamp(1.5rem,4vw,2.2rem);color:var(--idif-text)}
.idif-clock{color:var(--idif-muted);font-variant-numeric:tabular-nums}
.idif-live-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:0;overflow:hidden;margin:24px 0;border-radius:24px;background:var(--idif-bg);color:var(--idif-text);border:1px solid var(--idif-line);box-shadow:0 18px 60px rgba(0,0,0,.2)}
.idif-player-wrap{padding:18px;background:#050a11;display:flex;align-items:center}.idif-player{width:100%;height:150px;border:0;border-radius:15px;background:#fff}.idif-now{padding:26px;display:flex;flex-direction:column;justify-content:center}.idif-now h2{margin:8px 0 2px;color:var(--idif-text);font-size:clamp(1.6rem,4vw,2.35rem)}.idif-now p{margin:4px 0;color:var(--idif-muted)}.idif-host{font-weight:700;color:#fff!important}.idif-live-badge{display:inline-flex;align-self:flex-start;padding:6px 10px;border-radius:999px;background:rgba(255,100,112,.13);color:#ff8790;font-size:.78rem;font-weight:900;letter-spacing:.08em}.idif-next{margin-top:18px;padding-top:15px;border-top:1px solid var(--idif-line);color:var(--idif-muted)}
.idif-open-program,.idif-primary-btn{appearance:none;border:0;border-radius:12px;background:var(--idif-accent);color:#04110d!important;font-weight:800;padding:11px 15px;text-decoration:none!important;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:12px}.idif-open-program:hover,.idif-primary-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.idif-link{background:none!important;color:var(--idif-accent2)!important;padding:0!important;margin-top:7px!important}
.idif-empty{padding:24px;border:1px dashed var(--idif-line);border-radius:14px;color:var(--idif-muted)}
.idif-timeline{position:relative}.idif-timeline:before{content:"";position:absolute;left:83px;top:10px;bottom:10px;width:2px;background:var(--idif-line)}.idif-timeline-item{display:grid;grid-template-columns:70px 26px 1fr;gap:0;position:relative;padding:11px 0}.idif-time{font-size:.86rem;color:var(--idif-muted);padding-top:7px}.idif-dot{width:12px;height:12px;border-radius:50%;background:#526174;margin:8px 0 0 8px;z-index:2;border:3px solid var(--idif-card)}.idif-timeline-item.current .idif-dot{background:var(--idif-danger);box-shadow:0 0 0 6px rgba(255,100,112,.12)}.idif-timeline-item.upcoming .idif-dot{background:var(--idif-accent)}.idif-program-info{padding:4px 0 11px 10px}.idif-program-info h3{margin:2px 0;color:var(--idif-text);font-size:1.08rem}.idif-program-info p{margin:0;color:var(--idif-muted)}.idif-state-label{font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--idif-muted)}.idif-timeline-item.current .idif-state-label{color:#ff8790}.idif-timeline-item.upcoming .idif-state-label{color:var(--idif-accent2)}.idif-timeline-item.done{opacity:.55}
.idif-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.idif-program-card{overflow:hidden;border-radius:17px;background:var(--idif-card2);border:1px solid var(--idif-line)}.idif-program-image{height:150px;background:linear-gradient(135deg,#17304c,#0d1725);background-size:cover;background-position:center}.idif-program-card-body{padding:17px}.idif-program-card h3{margin:0 0 4px;color:var(--idif-text)}.idif-program-card p{margin:0 0 3px;color:var(--idif-muted)}.idif-program-card small{color:var(--idif-muted);display:block}
.idif-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}.idif-modal.is-open{display:flex}.idif-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.idif-modal-dialog{position:relative;z-index:1;width:min(680px,100%);max-height:88vh;overflow:auto;border-radius:22px;background:#0d1826;color:var(--idif-text);border:1px solid var(--idif-line);box-shadow:0 30px 100px rgba(0,0,0,.45)}.idif-modal-close{position:absolute;right:14px;top:10px;width:38px;height:38px;border-radius:50%;border:0;background:rgba(0,0,0,.5);color:white;font-size:24px;cursor:pointer;z-index:2}.idif-modal-cover{height:220px;background:linear-gradient(135deg,#17304c,#0d1725);background-size:cover;background-position:center}.idif-modal-body{padding:24px}.idif-modal-body h2{color:var(--idif-text);margin:0 0 5px}.idif-modal-body p{color:var(--idif-muted)}.idif-modal-host{font-weight:800;color:white!important}.idif-modal-schedules{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.idif-modal-schedules span{background:rgba(32,201,151,.1);color:var(--idif-accent2);padding:7px 10px;border-radius:999px;font-size:.82rem}
.idif-form-card{max-width:900px;margin:28px auto;padding:28px;border-radius:var(--idif-radius);background:var(--idif-card);color:var(--idif-text);border:1px solid var(--idif-line)}.idif-form-card h2{color:var(--idif-text);margin:.25rem 0 .6rem}.idif-form-card p{color:var(--idif-muted)}.idif-form-card label,.idif-dashboard label{display:block;font-weight:700;color:var(--idif-text);margin:0 0 15px}.idif-form-card input,.idif-form-card select,.idif-form-card textarea,.idif-dashboard input,.idif-dashboard select,.idif-dashboard textarea{width:100%;margin-top:6px;border:1px solid var(--idif-line);background:#07111c;color:var(--idif-text);border-radius:11px;padding:11px 12px;min-height:44px}.idif-fields-2{display:grid;grid-template-columns:1fr 1fr;gap:15px}.idif-slot-legend{display:flex;gap:15px;flex-wrap:wrap;margin:8px 0 12px;color:var(--idif-muted);font-size:.85rem}.idif-slot-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.idif-slot-legend .available{background:var(--idif-accent)}.idif-slot-legend .reserved{background:var(--idif-warn)}.idif-slot-legend .occupied{background:var(--idif-danger)}.idif-slot-legend .current{background:#7f8fa6}.idif-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:300px;overflow:auto;padding:4px 2px 12px;margin-bottom:16px}.idif-slot{border:1px solid var(--idif-line);border-radius:10px;padding:9px 6px;background:#07111c;color:var(--idif-muted);font-size:.8rem;cursor:pointer}.idif-slot.available{border-color:rgba(32,201,151,.32);color:#c9ffef}.idif-slot.available:hover,.idif-slot.selected{background:rgba(32,201,151,.16);border-color:var(--idif-accent);color:white}.idif-slot.reserved{border-color:rgba(255,200,87,.3);color:#d9be7f;cursor:not-allowed;opacity:.7}.idif-slot.occupied{border-color:rgba(255,100,112,.25);color:#d69ba0;cursor:not-allowed;opacity:.55}.idif-slot.current{border-color:rgba(127,143,166,.45);color:#b7c2d0;background:rgba(127,143,166,.08);cursor:not-allowed;opacity:.8}.idif-notice{padding:13px 16px;border-radius:11px;margin:15px 0}.idif-notice.success{background:#e8fff7;color:#075b43}.idif-notice.error{background:#fff0f1;color:#8b1f2a}.idif-notice.info{background:#eef5ff;color:#244a78}
.idif-dashboard{display:grid;grid-template-columns:250px 1fr;gap:20px;margin:28px 0;color:var(--idif-text)}.idif-dashboard-side,.idif-panel-block{background:var(--idif-card);border:1px solid var(--idif-line);border-radius:var(--idif-radius)}.idif-dashboard-side{padding:22px;height:max-content;position:sticky;top:20px}.idif-dashboard-side h2{color:var(--idif-text);margin:5px 0}.idif-dashboard-side p{color:var(--idif-muted);font-size:.9rem}.idif-dashboard-side nav{display:grid;gap:7px;margin-top:18px}.idif-dashboard-side a{color:var(--idif-text);text-decoration:none;padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.035)}.idif-dashboard-main{display:grid;gap:20px}.idif-panel-block{padding:22px}.idif-panel-block h3{color:var(--idif-text);margin-top:0}.idif-profile-head{display:flex;gap:18px;align-items:center;margin-bottom:14px}.idif-avatar{width:78px;height:78px;border-radius:50%;object-fit:cover}.idif-my-program{padding:15px;border:1px solid var(--idif-line);border-radius:14px;margin:12px 0;background:#0a1421}.idif-my-program>div{display:flex;justify-content:space-between;gap:12px}.idif-my-program p{color:var(--idif-muted)}.idif-status{font-size:.72rem;text-transform:uppercase;font-weight:900;padding:5px 8px;border-radius:999px}.idif-status.active{background:rgba(32,201,151,.12);color:var(--idif-accent2)}.idif-status.pending{background:rgba(255,200,87,.12);color:#ffd779}.idif-status.paused{background:rgba(255,255,255,.08);color:var(--idif-muted)}.idif-mini-schedules{display:flex;gap:7px;flex-wrap:wrap}.idif-mini-schedules span{font-size:.8rem;color:var(--idif-muted);padding:5px 8px;border-radius:8px;background:rgba(255,255,255,.04)}
.idif-cta{margin:28px 0;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:var(--idif-radius);background:linear-gradient(135deg,#0e2b2b,#0c1724);color:var(--idif-text);border:1px solid var(--idif-line)}.idif-cta h2{color:var(--idif-text);margin:4px 0}.idif-cta p{margin:0;color:var(--idif-muted)}
@media(max-width:900px){.idif-live-card{grid-template-columns:1fr}.idif-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.idif-dashboard{grid-template-columns:1fr}.idif-dashboard-side{position:static}.idif-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.idif-section,.idif-form-card{padding:18px}.idif-program-grid{grid-template-columns:1fr}.idif-fields-2{grid-template-columns:1fr}.idif-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.idif-timeline:before{left:70px}.idif-timeline-item{grid-template-columns:58px 24px 1fr}.idif-cta{align-items:flex-start;flex-direction:column}.idif-section-head{flex-direction:column}.idif-player{height:130px}}
.idif-program-image.idif-placeholder{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 25%,#1b4165 0,#11253a 38%,#0a1624 100%)}.idif-program-image.idif-placeholder span{font-size:1rem;font-weight:900;letter-spacing:.18em;color:rgba(255,255,255,.55)}
.idif-program-edit-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--idif-line)}.idif-current-cover{display:block;margin:9px 0}.idif-current-cover img{display:block;width:min(260px,100%);height:auto;border-radius:12px}.idif-help-text{font-size:.86rem;color:var(--idif-muted)!important;margin:4px 0 0}.idif-program-edit-form textarea{resize:vertical}

.idif-dashboard-side a.idif-logout{margin-top:8px;background:rgba(255,100,112,.08);color:#ffb7bd;text-align:center}

.idif-schedule-request-card{padding:16px;border:1px solid var(--idif-line);border-radius:14px;background:#0a1421;margin:14px 0}.idif-schedule-request-card>strong{display:block;margin-bottom:12px}.idif-schedule-request-form{margin-top:12px}.idif-schedule-request-form .idif-slots{margin-top:10px}.idif-schedule-request-form select{width:100%}

/* ===== IDIFUSIÓN v0.3.0 · portada modular + línea de tiempo horizontal ===== */
.idif-home-v3{max-width:1240px;margin:0 auto;padding:4px 0 18px}
.idif-home-hero{margin:24px 0 16px;padding:clamp(24px,4vw,48px);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:28px;align-items:center;border-radius:26px;background:radial-gradient(circle at 85% 15%,rgba(32,201,151,.16),transparent 34%),linear-gradient(135deg,#11233a,#09131f 58%,#07101c);border:1px solid var(--idif-line);color:var(--idif-text);overflow:hidden}
.idif-home-hero h1{margin:.35rem 0 .65rem;color:var(--idif-text);font-size:clamp(2rem,5vw,3.5rem);line-height:1.04;letter-spacing:-.035em;max-width:820px}
.idif-home-hero p{margin:0;color:var(--idif-muted);font-size:clamp(1rem,2vw,1.12rem);max-width:720px}
.idif-home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.idif-home-actions .idif-primary-btn,.idif-home-actions .idif-secondary-btn{margin-top:0}
.idif-secondary-btn{appearance:none;border:1px solid var(--idif-line);border-radius:12px;background:rgba(255,255,255,.045);color:var(--idif-text)!important;font-weight:800;padding:11px 15px;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center}.idif-secondary-btn:hover{background:rgba(255,255,255,.075);color:white!important}
.idif-home-status{padding:22px;border-radius:20px;background:rgba(5,10,17,.58);border:1px solid var(--idif-line);display:flex;flex-direction:column;gap:4px;min-height:170px;justify-content:center}.idif-home-status-label{font-size:.7rem;font-weight:900;letter-spacing:.13em;color:var(--idif-accent2)}.idif-home-status strong{font-size:1.35rem;line-height:1.2;color:white}.idif-home-status small{color:var(--idif-muted)}.idif-home-next{margin-top:14px;padding-top:12px;border-top:1px solid var(--idif-line);font-size:.85rem;color:var(--idif-muted)}
.idif-home-quicknav{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0 8px;margin-bottom:8px}.idif-home-quicknav::-webkit-scrollbar{display:none}.idif-home-quicknav a{flex:0 0 auto;text-decoration:none!important;color:var(--idif-muted)!important;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--idif-line);font-size:.86rem;font-weight:700}.idif-home-quicknav a:hover{color:white!important;border-color:rgba(32,201,151,.35)}
.idif-home-service-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:20px;margin:28px 0}.idif-home-module{padding:24px;border-radius:var(--idif-radius);background:linear-gradient(180deg,var(--idif-card),#09131f);border:1px solid var(--idif-line);color:var(--idif-text);min-width:0}.idif-module-head h2{margin:.25rem 0 .4rem;color:var(--idif-text);font-size:clamp(1.35rem,3vw,1.9rem)}.idif-module-head p{margin:0 0 16px;color:var(--idif-muted)}.idif-chat-inner{min-height:240px;border-radius:14px;overflow:hidden}.idif-chat-placeholder{min-height:240px;display:flex;flex-direction:column;justify-content:center;padding:24px;border:1px dashed var(--idif-line);border-radius:14px;background:rgba(255,255,255,.02);color:var(--idif-muted)}.idif-chat-placeholder strong{color:var(--idif-text);margin-bottom:5px}.idif-locutor-module{display:flex;flex-direction:column;justify-content:center}.idif-locutor-actions{display:flex;gap:9px;flex-wrap:wrap}.idif-locutor-actions .idif-primary-btn,.idif-locutor-actions .idif-secondary-btn{margin-top:0}.idif-mini-feature-list{display:grid;gap:8px;margin-top:20px;color:var(--idif-muted);font-size:.9rem}

/* Línea de tiempo horizontal */
.idif-horizontal-schedule{overflow:hidden}.idif-schedule-head{align-items:center}.idif-schedule-head p{margin:.3rem 0 0;color:var(--idif-muted)}.idif-schedule-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.idif-timeline-nav{display:flex;gap:7px}.idif-timeline-arrow{width:42px;height:42px;border-radius:50%;border:1px solid var(--idif-line);background:rgba(255,255,255,.045);color:var(--idif-text);font-size:1.65rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.idif-timeline-arrow:hover{border-color:rgba(32,201,151,.5);background:rgba(32,201,151,.08)}
.idif-timeline-shell{position:relative;min-width:0}.idif-timeline{position:relative;display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;padding:8px 4px 18px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.idif-timeline:before{display:none!important}.idif-timeline-item{flex:0 0 clamp(250px,29vw,330px);display:flex!important;flex-direction:column;gap:6px;min-height:205px;padding:18px!important;border-radius:17px;background:#0a1624;border:1px solid var(--idif-line);scroll-snap-align:center;position:relative;overflow:hidden}.idif-timeline-item.done{opacity:.56}.idif-timeline-item.current{opacity:1;border-color:rgba(32,201,151,.55);box-shadow:0 12px 36px rgba(0,0,0,.18),inset 0 0 0 1px rgba(32,201,151,.08);background:linear-gradient(180deg,rgba(32,201,151,.08),#0a1624 46%)}.idif-timeline-item.upcoming{opacity:1}.idif-timeline-item.is-music{background:linear-gradient(145deg,#102238,#0a1624)}.idif-timeline-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.idif-timeline-item .idif-time{padding:0;color:var(--idif-text);font-size:.9rem;font-weight:800}.idif-timeline-item .idif-state-label{font-size:.65rem;border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.055)}.idif-timeline-item.current .idif-state-label{color:#07150f;background:var(--idif-accent)}.idif-timeline-item.upcoming .idif-state-label{color:var(--idif-accent2);background:rgba(32,201,151,.1)}.idif-timeline-item h3{margin:7px 0 0;color:var(--idif-text);font-size:1.12rem;line-height:1.2}.idif-timeline-host,.idif-timeline-range{margin:0!important;color:var(--idif-muted)!important;font-size:.88rem}.idif-timeline-range{font-variant-numeric:tabular-nums}.idif-timeline-item .idif-link{margin-top:auto!important;align-self:flex-start}.idif-timeline-progress{height:4px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;margin:8px 0 2px}.idif-timeline-progress span{display:block;height:100%;background:var(--idif-accent);border-radius:inherit}.idif-music-note{margin-top:auto;color:var(--idif-muted);font-size:.8rem}.idif-swipe-hint{text-align:center;color:var(--idif-muted);font-size:.78rem;margin-top:3px;display:none}

/* Cupos del locutor */
.idif-quota-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 20px;padding:14px 16px;border-radius:14px;background:rgba(32,201,151,.055);border:1px solid rgba(32,201,151,.18)}.idif-quota-card>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.idif-quota-card strong{color:var(--idif-text)}.idif-quota-card small,.idif-quota-card p{color:var(--idif-muted);margin:0}

@media(max-width:900px){.idif-home-hero{grid-template-columns:1fr}.idif-home-status{min-height:0}.idif-home-service-grid{grid-template-columns:1fr}.idif-schedule-tools{width:100%;justify-content:space-between}.idif-timeline-item{flex-basis:min(72vw,330px)}}
@media(max-width:600px){.idif-home-v3{padding-inline:0}.idif-home-hero{padding:22px 18px;border-radius:20px}.idif-home-hero h1{font-size:2rem}.idif-home-actions>a{flex:1 1 140px}.idif-home-quicknav{margin-inline:-2px}.idif-home-module{padding:18px}.idif-schedule-head{gap:12px}.idif-schedule-tools{align-items:center}.idif-clock{font-size:.82rem}.idif-timeline-item{flex:0 0 calc(100vw - 86px);min-width:240px;max-width:340px;min-height:210px}.idif-swipe-hint{display:block}.idif-quota-card{align-items:flex-start;flex-direction:column}.idif-timeline-arrow{width:40px;height:40px}.idif-horizontal-schedule{padding-left:18px;padding-right:18px}}

/* ===== IDIFUSIÓN v0.3.1 · pulido de portada + móvil ===== */
.idif-home-v3{position:relative;min-width:0}
.idif-anchor-section{scroll-margin-top:84px}

/* Navegación real de la portada */
.idif-site-nav{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:10px 0 14px;padding:9px 10px;border:1px solid var(--idif-line);border-radius:16px;background:rgba(7,16,28,.9);backdrop-filter:blur(12px);position:relative;z-index:20}
.idif-site-nav-links{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}
.idif-site-nav a{color:var(--idif-muted)!important;text-decoration:none!important;font-size:.88rem;font-weight:750;padding:9px 11px;border-radius:10px;transition:.18s ease}
.idif-site-nav a:hover{color:#fff!important;background:rgba(255,255,255,.055)}
.idif-site-nav a.idif-nav-cta{color:#04110d!important;background:var(--idif-accent);padding-inline:14px}
.idif-nav-toggle{display:none;appearance:none;border:1px solid var(--idif-line);background:rgba(255,255,255,.04);color:var(--idif-text);font-weight:800;border-radius:10px;padding:9px 12px;cursor:pointer}

/* Reproductor embebido mejor integrado mientras llega el reproductor propio */
.idif-player-wrap{padding:14px;background:linear-gradient(145deg,#040910,#07111c)}
.idif-player-shell{width:100%;padding:12px;border-radius:17px;background:#07111c;border:1px solid rgba(255,255,255,.075)}
.idif-player-label{display:block;margin:0 0 9px;color:var(--idif-accent2);font-size:.68rem;font-weight:900;letter-spacing:.12em}
.idif-player{display:block;width:100%;border-radius:12px;background:#07111c}
.idif-now-heading{display:flex;align-items:center;gap:14px;min-width:0}
.idif-now-heading>div:last-child{min-width:0}
.idif-now-thumb{width:78px;height:78px;flex:0 0 78px;border-radius:15px;background-size:cover;background-position:center;border:1px solid var(--idif-line);box-shadow:0 10px 28px rgba(0,0,0,.24)}

/* Directorio escalable: 6 visibles inicialmente, carrusel y expansión opcional */
.idif-programs-head{align-items:center}
.idif-programs-head p{margin:.35rem 0 0;color:var(--idif-muted)}
.idif-programs-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.idif-programs-nav{display:flex;gap:7px}
.idif-programs-toggle{margin:0!important;cursor:pointer}
.idif-program-carousel{display:flex;gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;padding:4px 2px 14px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}
.idif-program-carousel .idif-program-card{flex:0 0 calc((100% - 32px)/3);min-width:250px;scroll-snap-align:start}
.idif-programs-section:not(.is-expanded) .idif-program-extra{display:none}
.idif-programs-section.is-expanded .idif-program-extra{display:block}

/* Modal siempre sobre la misma portada */
.idif-modal-dialog{overscroll-behavior:contain}
.idif-modal-cover.idif-photo-cover{background-size:cover;background-position:center}

/* El chat incrustado debe aprovechar el ancho del módulo */
.idif-chat-inner,.idif-chat-inner>div,.idif-chat-inner>section,.idif-chat-inner>main,.idif-chat-inner>form{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.idif-chat-inner [class*="chat"]{max-width:100%!important}

@media(max-width:900px){
  .idif-site-nav{justify-content:flex-start}
  .idif-program-carousel .idif-program-card{flex-basis:min(46vw,340px)}
  .idif-live-card{margin:18px 0}
}

@media(max-width:600px){
  html,body{max-width:100%;overflow-x:hidden}
  .idif-home-v3{width:100vw;max-width:none;margin-left:calc(50% - 50vw);padding:0 12px 18px;background:var(--idif-bg)}
  .idif-home-v3 .idif-section,.idif-home-v3 .idif-live-card,.idif-home-v3 .idif-home-service-grid,.idif-home-v3 .idif-cta{margin-top:14px;margin-bottom:14px}

  /* Cabecera/navegación móvil */
  .idif-site-nav{margin:8px 0 10px;padding:8px;display:block;border-radius:14px}
  .idif-nav-toggle{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;min-height:44px}
  .idif-site-nav-links{display:grid;grid-template-columns:1fr;gap:4px;max-height:0;overflow:hidden;opacity:0;transition:max-height .24s ease,opacity .18s ease,padding .18s ease;padding:0}
  .idif-site-nav.is-open .idif-site-nav-links{max-height:420px;opacity:1;padding-top:8px}
  .idif-site-nav a{display:flex;width:100%;justify-content:center;padding:11px 10px}
  .idif-site-nav a.idif-nav-cta{margin-top:2px}

  /* Hero: casi todo el ancho útil, menos altura y botones cómodos */
  .idif-home-hero{margin:10px 0 12px;padding:18px 16px;border-radius:18px;gap:18px}
  .idif-home-hero .idif-kicker{font-size:.68rem}
  .idif-home-hero h1{font-size:clamp(1.8rem,8.5vw,2.25rem);line-height:1.06;margin:.32rem 0 .55rem}
  .idif-home-hero p{font-size:1rem;line-height:1.55}
  .idif-home-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:17px}
  .idif-home-actions .idif-primary-btn,.idif-home-actions .idif-secondary-btn{width:100%;min-height:50px;margin:0}
  .idif-home-status{width:100%;padding:18px 16px;border-radius:17px;min-height:0}
  .idif-home-status strong{font-size:1.28rem}

  /* Reproductor + Ahora en vivo */
  .idif-live-card{border-radius:18px;overflow:hidden}
  .idif-player-wrap{padding:10px}
  .idif-player-shell{padding:9px;border-radius:14px}
  .idif-player{height:124px;border-radius:10px}
  .idif-now{padding:19px 16px}
  .idif-now h2{font-size:clamp(1.65rem,8vw,2.05rem);line-height:1.08}
  .idif-now-heading{align-items:flex-start;gap:11px}
  .idif-now-thumb{width:64px;height:64px;flex-basis:64px;border-radius:12px}
  .idif-now .idif-open-program{width:100%;min-height:48px;margin-top:14px}
  .idif-next{font-size:.95rem;line-height:1.5}

  /* Línea de tiempo: una tarjeta dominante, swipe y flechas */
  .idif-horizontal-schedule{padding:16px 14px!important;border-radius:18px}
  .idif-schedule-head{margin-bottom:12px!important}
  .idif-schedule-head h2{font-size:1.75rem}
  .idif-schedule-head p{font-size:.9rem;line-height:1.45}
  .idif-schedule-tools{display:flex;width:100%;justify-content:space-between;align-items:center;gap:8px}
  .idif-clock{font-size:.78rem}
  .idif-timeline-nav{margin-left:auto}
  .idif-timeline-arrow{width:38px;height:38px;font-size:1.45rem}
  .idif-timeline{gap:10px;padding:4px 0 10px;scrollbar-width:none;scroll-padding-inline:0}
  .idif-timeline::-webkit-scrollbar{display:none}
  .idif-timeline-item{flex:0 0 calc(100% - 18px)!important;min-width:0!important;max-width:none!important;min-height:205px;padding:16px!important;scroll-snap-align:center}
  .idif-timeline-item h3{font-size:1.15rem}
  .idif-swipe-hint{display:block;font-size:.74rem;margin:8px 0 0}

  /* Chat + conductores: una sola columna y todo el ancho */
  .idif-home-service-grid{grid-template-columns:1fr;gap:14px;width:100%}
  .idif-home-module{padding:16px;border-radius:18px;width:100%;min-width:0}
  .idif-chat-inner{width:100%!important;min-width:0!important;overflow:hidden}
  .idif-chat-inner *{max-width:100%}
  .idif-chat-inner input,.idif-chat-inner textarea,.idif-chat-inner select,.idif-chat-inner button{max-width:100%}
  .idif-locutor-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .idif-locutor-actions .idif-primary-btn,.idif-locutor-actions .idif-secondary-btn{width:100%;min-height:48px}

  /* Programas: una tarjeta por vista y 6 iniciales */
  .idif-programs-section{padding:16px 14px!important;border-radius:18px}
  .idif-programs-head{gap:12px!important}
  .idif-programs-tools{width:100%;justify-content:space-between}
  .idif-programs-toggle{flex:1;min-height:40px;padding:9px 11px!important;font-size:.8rem}
  .idif-program-carousel{gap:10px;padding:4px 0 10px;scrollbar-width:none}
  .idif-program-carousel::-webkit-scrollbar{display:none}
  .idif-program-carousel .idif-program-card{flex:0 0 calc(100% - 18px);min-width:0;scroll-snap-align:center}
  .idif-program-image{height:165px}
  .idif-program-card-body{padding:15px}
  .idif-program-card .idif-open-program{width:100%;min-height:46px}

  /* CTA final */
  .idif-cta{padding:18px 16px;border-radius:18px;align-items:stretch;gap:14px}
  .idif-cta .idif-primary-btn{width:100%;min-height:50px;margin:0}

  /* Modal optimizado para celular */
  .idif-modal{padding:10px}
  .idif-modal-dialog{width:100%;max-height:92svh;border-radius:18px}
  .idif-modal-cover{height:175px}
  .idif-modal-body{padding:20px 16px}
  .idif-modal-body h2{font-size:1.65rem;padding-right:34px}
  .idif-modal-close{right:10px;top:8px}

  /* Panel del locutor también más aprovechable en celular */
  .idif-dashboard{gap:12px}
  .idif-dashboard-side,.idif-panel-block{border-radius:16px}
  .idif-dashboard-side,.idif-panel-block{padding:16px}
  .idif-dashboard-side nav{grid-template-columns:1fr 1fr}
  .idif-dashboard-side a.idif-logout{grid-column:1/-1}
  .idif-my-program>div{align-items:flex-start;flex-direction:column}
}

/* ===== IDIFUSIÓN v0.3.2 · navegación fija, player inferior, chat modal y páginas amplias ===== */
body.idifusion-radio-page{padding-bottom:92px}
body.idifusion-radio-page.idif-chat-open{overflow:hidden}

/* En la portada, el reproductor principal vive abajo; aquí queda la ficha "Ahora". */
.idif-home-v3 .idif-live-card{grid-template-columns:1fr;background:linear-gradient(145deg,#07111c,#091725)}
.idif-home-v3 .idif-live-card .idif-player-wrap{display:none}
.idif-home-v3 .idif-now{min-height:230px}

/* Menú que permanece disponible durante el desplazamiento. */
.idif-site-nav{position:sticky!important;top:8px!important;z-index:950!important;justify-content:space-between!important;box-shadow:0 12px 34px rgba(0,0,0,.24)}
.idif-nav-brand{display:inline-flex!important;align-items:baseline;gap:6px;margin-right:auto;color:#fff!important;font-weight:950!important;letter-spacing:.06em!important;white-space:nowrap}
.idif-nav-brand span{color:#f0c85a;font-size:.68em;letter-spacing:.16em}

/* Tarjeta que sustituye al chat largo dentro de la portada. */
.idif-chat-launch-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border:1px solid var(--idif-line);border-radius:16px;background:linear-gradient(135deg,#10233a,#091724)}
.idif-chat-launch-card>div{min-width:0}.idif-chat-launch-card strong{color:var(--idif-text);display:inline-block;margin-left:7px}.idif-chat-launch-card p{margin:7px 0 0!important;color:var(--idif-muted)}
.idif-chat-live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--idif-accent);box-shadow:0 0 0 5px rgba(32,201,151,.1)}
.idif-chat-launch-card .idif-primary-btn{flex:0 0 auto;margin:0}

/* Reproductor fijo inferior inspirado en una barra de radio moderna. */
.idif-sticky-player{position:fixed;z-index:1200;left:0;right:0;bottom:0;min-height:76px;display:grid;grid-template-columns:54px minmax(180px,1fr) 58px minmax(120px,180px) auto auto;align-items:center;gap:14px;padding:10px max(18px,calc((100vw - 1320px)/2));background:rgba(4,9,16,.97);border-top:1px solid rgba(255,255,255,.14);box-shadow:0 -18px 45px rgba(0,0,0,.36);backdrop-filter:blur(16px);color:var(--idif-text);font-family:inherit}
.idif-sticky-art{width:50px;height:50px;border-radius:11px;border:1px solid var(--idif-line);display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3554,#0d1725);background-size:cover;background-position:center;color:#9fb1c8;font-size:.76rem;font-weight:900;letter-spacing:.08em;overflow:hidden}.idif-sticky-art.has-image span{display:none}
.idif-sticky-meta{display:flex;flex-direction:column;min-width:0;line-height:1.15}.idif-sticky-meta small{font-size:.64rem;color:var(--idif-accent2);font-weight:900;letter-spacing:.1em}.idif-sticky-meta strong{font-size:.96rem;color:#fff;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:3px 0}.idif-sticky-meta span{font-size:.78rem;color:var(--idif-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.idif-sticky-play{appearance:none;width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#fff;color:#07101c;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:950;font-size:1.05rem;transition:.18s ease}.idif-sticky-play:hover{transform:scale(1.04)}.idif-sticky-play.is-playing{background:var(--idif-accent)}.idif-sticky-play:disabled{opacity:.45;cursor:not-allowed}
.idif-sticky-volume{display:flex;align-items:center;gap:8px;color:var(--idif-muted)}.idif-sticky-volume input{width:100%;accent-color:var(--idif-accent)}
.idif-sticky-action{appearance:none;border:1px solid var(--idif-line);background:rgba(255,255,255,.045);color:var(--idif-text);height:42px;padding:0 14px;border-radius:12px;font-weight:800;cursor:pointer;white-space:nowrap}.idif-sticky-action:hover{background:rgba(255,255,255,.08);border-color:rgba(32,201,151,.38)}
.idif-sticky-player.has-audio-error:after{content:'No se pudo abrir el stream. Revisa la URL directa en Renovación.';position:absolute;right:16px;bottom:100%;margin-bottom:8px;padding:8px 10px;border-radius:9px;background:#391419;color:#ffc5ca;font-size:.75rem;box-shadow:0 8px 20px rgba(0,0,0,.25)}

/* Chat emergente: una sola instancia, accesible desde portada o player. */
.idif-chat-modal{position:fixed;z-index:1300;inset:0;display:none;align-items:center;justify-content:center;padding:24px}.idif-chat-modal.is-open{display:flex}
.idif-chat-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}
.idif-chat-modal-dialog{position:relative;z-index:1;width:min(820px,94vw);max-height:min(84vh,850px);display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:#0a1728;border:1px solid rgba(255,255,255,.15);box-shadow:0 28px 90px rgba(0,0,0,.5);color:var(--idif-text)}
.idif-chat-modal-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--idif-line);background:#0d1c30}.idif-chat-modal-dialog h2{margin:.15rem 0 0;color:#fff;font-size:1.4rem}.idif-chat-modal-close{appearance:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--idif-line);background:rgba(255,255,255,.05);color:#fff;font-size:1.55rem;cursor:pointer}
.idif-chat-modal-body{padding:14px;overflow:auto;min-height:260px}.idif-chat-modal-body>*,.idif-chat-modal-body [class*="chat"]{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}

/* Las páginas secundarias ya no quedan atrapadas en el ancho angosto del tema. */
body.idifusion-radio-page:not(.idifusion-home-page) .site-main>article>.entry-header,
body.idifusion-radio-page:not(.idifusion-home-page) article.page>.entry-header{display:none!important}
body.idifusion-radio-page:not(.idifusion-home-page) .entry-content{max-width:none!important;width:100%!important}
body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{
  width:min(1320px,calc(100vw - 44px));max-width:none!important;position:relative;left:50%;transform:translateX(-50%);margin-top:20px;margin-bottom:20px
}
body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card{padding:clamp(22px,3vw,38px)}
body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}
body.idifusion-page-registro-locutor .idif-form-card{max-width:1180px!important}
body.idifusion-page-programacion .idif-section{max-width:1320px!important}

/* El timeline jamás debe mover verticalmente la ventana; solo su propio eje horizontal. */
.idif-timeline{scroll-behavior:smooth;overscroll-behavior-x:contain;overflow-anchor:none}
.idif-schedule-section{overflow-anchor:none}

@media(max-width:900px){
  .idif-sticky-player{grid-template-columns:46px minmax(0,1fr) 50px auto auto;gap:10px;padding:9px 14px}.idif-sticky-art{width:44px;height:44px}.idif-sticky-volume{display:none}
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard{grid-template-columns:1fr}
}

@media(max-width:600px){
  body.idifusion-radio-page{padding-bottom:76px}
  .idif-site-nav{top:4px!important;margin:5px 0 9px!important;padding:7px 8px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;border-radius:13px!important}
  .idif-nav-brand{font-size:.78rem!important;padding:9px 7px!important;justify-content:flex-start!important}
  .idif-nav-toggle{display:flex!important;width:auto!important;min-width:82px!important;padding:9px 10px!important}
  .idif-site-nav-links{grid-column:1/-1}
  .idif-site-nav a:not(.idif-nav-brand){justify-content:flex-start!important}

  .idif-home-v3 .idif-now{min-height:0;padding:18px 15px}
  .idif-chat-launch-card{align-items:stretch;flex-direction:column;padding:16px;gap:13px}.idif-chat-launch-card .idif-primary-btn{width:100%;min-height:48px}

  .idif-sticky-player{min-height:68px;grid-template-columns:38px minmax(0,1fr) 46px 48px;gap:8px;padding:7px 9px}.idif-sticky-art{width:38px;height:38px;border-radius:9px}.idif-sticky-meta small{font-size:.55rem}.idif-sticky-meta strong{font-size:.82rem}.idif-sticky-meta span{font-size:.68rem}.idif-sticky-play{width:44px;height:44px}.idif-sticky-action{width:46px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.idif-sticky-action:not(.idif-chat-button){display:none}.idif-chat-button span{display:none}

  .idif-chat-modal{padding:7px 7px 78px}.idif-chat-modal-dialog{width:100%;max-height:calc(100svh - 92px);border-radius:18px}.idif-chat-modal-dialog>header{padding:13px 14px}.idif-chat-modal-dialog h2{font-size:1.15rem}.idif-chat-modal-body{padding:7px;overflow:auto}

  body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{width:calc(100vw - 18px);margin-top:10px;margin-bottom:12px}
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card{padding:18px 15px;border-radius:18px}
  body.idifusion-page-registro-locutor .idif-form-card h2{font-size:clamp(1.65rem,8vw,2rem);line-height:1.08}
  body.idifusion-page-registro-locutor .idif-form-card>p{font-size:.94rem;line-height:1.55}
  body.idifusion-page-registro-locutor .idif-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:360px}
  body.idifusion-page-registro-locutor .idif-slot{font-size:.72rem;padding:9px 4px}
  body.idifusion-page-panel-locutor .idif-dashboard-side,body.idifusion-page-panel-locutor .idif-panel-block{padding:15px}
  body.idifusion-page-programacion .idif-section{padding-left:13px!important;padding-right:13px!important}
}

/* ===== IDIFUSIÓN v0.3.3 · cabecera única, chat full-height y pulido general ===== */
:root{--idif-header-h:76px;--idif-player-h:76px}
html{scroll-padding-top:calc(var(--idif-header-h) + 12px)}
body.idifusion-radio-page{padding-top:var(--idif-header-h)!important;padding-bottom:calc(var(--idif-player-h) + 16px)!important}
body.idifusion-radio-page.idif-chat-open{overflow:hidden!important}

/* Oculta la cabecera original del tema en las páginas de la plataforma. La cabecera propia queda como única identidad superior. */
body.idifusion-radio-page #masthead,
body.idifusion-radio-page header.site-header,
body.idifusion-radio-page .site-header,
body.idifusion-radio-page .wp-site-blocks>header.wp-block-template-part,
body.idifusion-radio-page .wp-block-template-part.site-header{display:none!important}

/* Evita títulos de página duplicados, incluidos los que algunos temas colocan fuera de .entry-header. */
body.idifusion-radio-page .entry-header,
body.idifusion-radio-page .page-header,
body.idifusion-radio-page h1.entry-title,
body.idifusion-radio-page h1.page-title,
body.idifusion-radio-page .wp-block-post-title{display:none!important}

/* Cabecera global fija: logotipo + menú en una sola línea. */
.idif-global-header{position:fixed;z-index:1800;top:0;left:0;right:0;height:var(--idif-header-h);background:rgba(5,13,24,.97);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 10px 32px rgba(0,0,0,.28);backdrop-filter:blur(16px);font-family:inherit;color:var(--idif-text)}
.idif-global-header *{box-sizing:border-box}
.idif-global-header-inner{height:100%;width:min(1440px,calc(100vw - 34px));margin:0 auto;display:flex;align-items:center;gap:18px;position:relative}
.idif-global-brand{display:inline-flex;align-items:center;gap:11px;min-width:max-content;text-decoration:none!important;color:#fff!important;margin-right:auto}
.idif-global-logo{width:52px;height:52px;flex:0 0 52px;border-radius:13px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f2c858,#dca93d);box-shadow:0 7px 18px rgba(0,0,0,.2)}
.idif-global-logo img,.idif-global-logo-img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;max-width:none!important}
.idif-global-logo-fallback{color:#10213a;font-weight:950;letter-spacing:.08em}
.idif-global-brand-text{display:flex;flex-direction:column;line-height:1;gap:5px}
.idif-global-brand-text strong{font-size:1.05rem;letter-spacing:.09em;color:#fff}
.idif-global-brand-text small{font-size:.62rem;letter-spacing:.28em;color:#f0c85a;font-weight:850}
.idif-global-header .idif-global-menu{display:flex!important;align-items:center;justify-content:flex-end;gap:3px;flex-wrap:nowrap;max-height:none!important;opacity:1!important;overflow:visible!important;padding:0!important}
.idif-global-header .idif-global-menu a{display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;color:var(--idif-muted)!important;text-decoration:none!important;font-size:.84rem;font-weight:760;padding:9px 10px;border-radius:10px;white-space:nowrap}
.idif-global-header .idif-global-menu a:hover{color:#fff!important;background:rgba(255,255,255,.06)}
.idif-global-header .idif-global-menu a.idif-nav-cta{background:var(--idif-accent);color:#04110d!important;padding-inline:13px}
.idif-global-menu-toggle{display:none!important}

/* La antigua barra interna ya no se necesita si alguna caché deja restos de markup. */
.idif-home-v3>.idif-site-nav{display:none!important}

/* Hero más limpio: una sola pieza de identidad; el estado real queda en el bloque En vivo y en el player. */
.idif-home-v3{padding-top:10px}
.idif-home-hero{grid-template-columns:minmax(0,1fr)!important;max-width:none}
.idif-home-hero-copy{max-width:920px}
.idif-home-status{display:none!important}
.idif-anchor-section{scroll-margin-top:calc(var(--idif-header-h) + 12px)}

/* El player debe quedar por encima del chat para seguir siendo operable aun con la ventana abierta. */
.idif-sticky-player{z-index:1750!important;min-height:var(--idif-player-h)}

/* Chat: ocupa toda la altura útil entre cabecera y player. */
.idif-chat-modal{z-index:1600!important;top:var(--idif-header-h)!important;right:0!important;bottom:var(--idif-player-h)!important;left:0!important;display:none;align-items:stretch!important;justify-content:center!important;padding:10px 14px!important}
.idif-chat-modal.is-open{display:flex!important}
.idif-chat-modal-backdrop{position:fixed!important;z-index:0;top:var(--idif-header-h)!important;right:0!important;bottom:var(--idif-player-h)!important;left:0!important;background:rgba(0,0,0,.76)!important;backdrop-filter:blur(7px)}
.idif-chat-modal-dialog{position:relative;z-index:1;width:min(980px,100%)!important;height:100%!important;max-height:none!important;margin:0 auto!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border-radius:18px!important;background:#091729!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 26px 90px rgba(0,0,0,.52)!important}
.idif-chat-modal-dialog>header{flex:0 0 auto;padding:14px 18px!important;background:#0d1f35!important}
.idif-chat-modal-dialog>header .idif-kicker{font-size:.67rem}
.idif-chat-modal-dialog h2{font-size:1.32rem!important}
.idif-chat-modal-close{width:42px!important;height:42px!important;flex:0 0 42px!important}
.idif-chat-modal-body{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:12px!important;background:#091729!important;overscroll-behavior:contain}
.idif-chat-modal-body>*{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
.idif-chat-modal-body [class*="chat"]{width:100%!important;max-width:none!important;box-sizing:border-box!important}

/* Normaliza el chat existente cuando su CSS fue pensado para una página independiente. */
.idif-chat-modal-body input:not([type="checkbox"]):not([type="radio"]),
.idif-chat-modal-body textarea,
.idif-chat-modal-body select{display:block!important;width:100%!important;max-width:none!important;min-height:44px!important;margin:6px 0 12px!important;padding:10px 12px!important;border:1px solid #294563!important;border-radius:10px!important;background:#081421!important;color:#f4f7fb!important;box-shadow:none!important;font:inherit!important;line-height:1.35!important}
.idif-chat-modal-body textarea{min-height:92px!important;resize:vertical!important}
.idif-chat-modal-body label{display:block!important;width:100%!important;max-width:none!important;margin:9px 0 3px!important;color:#eef4fb!important;font-weight:750!important;line-height:1.25!important}
.idif-chat-modal-body button,
.idif-chat-modal-body input[type="submit"]{max-width:100%;min-height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.14);font:inherit;font-weight:750;cursor:pointer}
.idif-chat-modal-body input[type="submit"],
.idif-chat-modal-body button[type="submit"]{background:var(--idif-accent)!important;color:#05120e!important;border-color:transparent!important;padding:9px 14px!important}
.idif-chat-modal-body [id*="messages"],
.idif-chat-modal-body [class*="chat-messages"],
.idif-chat-modal-body [class*="messages-list"]{max-height:none!important;min-height:220px!important;overflow-y:auto!important;overscroll-behavior:contain}

/* Páginas secundarias: libera también los wrappers del tema y aprovecha el ancho real. */
body.idifusion-radio-page .site-content,
body.idifusion-radio-page .content-area,
body.idifusion-radio-page main.site-main,
body.idifusion-radio-page article.page,
body.idifusion-radio-page article.type-page,
body.idifusion-radio-page .entry-content{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
body.idifusion-radio-page .content-area,
body.idifusion-radio-page main.site-main,
body.idifusion-radio-page article.page,
body.idifusion-radio-page article.type-page{padding-left:0!important;padding-right:0!important}
body.idifusion-radio-page #secondary,
body.idifusion-radio-page .widget-area{display:none!important}
body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{width:min(1440px,calc(100vw - 32px))!important}
body.idifusion-page-registro-locutor .idif-form-card{max-width:1320px!important}
body.idifusion-page-programacion .idif-section{max-width:1440px!important}

/* Algunos gestores de cookies colocan su botón sobre el player. Los más comunes se elevan por encima de la barra. */
body.idifusion-radio-page .cky-btn-revisit-wrapper,
body.idifusion-radio-page #cookie-law-info-again,
body.idifusion-radio-page .cli_settings_button[style*="fixed"]{bottom:calc(var(--idif-player-h) + 12px)!important}

@media(max-width:1050px){
  .idif-global-header .idif-global-menu a{font-size:.76rem;padding:8px 7px}
  .idif-global-header-inner{width:min(100%,calc(100vw - 24px));gap:10px}
}

@media(max-width:820px){
  :root{--idif-header-h:68px;--idif-player-h:68px}
  body.idifusion-radio-page{padding-bottom:calc(var(--idif-player-h) + 8px)!important}
  .idif-global-header-inner{width:100%;padding:0 12px;gap:10px}
  .idif-global-logo{width:46px;height:46px;flex-basis:46px;border-radius:12px}
  .idif-global-brand{gap:9px}
  .idif-global-brand-text strong{font-size:.95rem}
  .idif-global-brand-text small{font-size:.56rem}
  .idif-global-menu-toggle{display:inline-flex!important;width:auto!important;min-width:84px!important;min-height:42px;align-items:center;justify-content:center;gap:7px;margin-left:auto;padding:8px 10px!important;border-radius:11px!important}
  .idif-global-header .idif-global-menu{position:absolute!important;top:calc(100% + 7px);left:10px;right:10px;display:grid!important;grid-template-columns:1fr!important;gap:4px!important;max-height:0!important;opacity:0!important;overflow:hidden!important;padding:0!important;background:rgba(7,16,28,.985);border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.4);transition:max-height .24s ease,opacity .18s ease,padding .18s ease}
  .idif-global-header.is-open .idif-global-menu{max-height:460px!important;opacity:1!important;padding:8px!important;overflow:auto!important}
  .idif-global-header .idif-global-menu a{justify-content:flex-start!important;width:100%!important;font-size:.88rem!important;padding:11px 12px!important}
  .idif-global-header .idif-global-menu a.idif-nav-cta{justify-content:center!important}

  .idif-chat-modal{padding:6px!important}
  .idif-chat-modal-dialog{border-radius:14px!important}
  .idif-chat-modal-dialog>header{padding:11px 12px!important}
  .idif-chat-modal-body{padding:8px!important}
}

@media(max-width:600px){
  .idif-global-brand-text strong{font-size:.9rem;letter-spacing:.07em}
  .idif-global-brand-text small{font-size:.52rem;letter-spacing:.24em}
  .idif-global-menu-toggle{min-width:78px!important;font-size:.84rem!important}
  .idif-home-v3{padding:4px 9px 16px!important}
  .idif-home-hero{margin-top:8px!important}
  .idif-home-hero .idif-kicker{font-size:.66rem!important}
  .idif-chat-modal-dialog{border-radius:10px!important}
  .idif-chat-modal-dialog h2{font-size:1.13rem!important}
  .idif-chat-modal-body{font-size:.92rem!important}
  .idif-chat-modal-body [id*="messages"],
  .idif-chat-modal-body [class*="chat-messages"],
  .idif-chat-modal-body [class*="messages-list"]{min-height:260px!important}

  body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{width:calc(100vw - 10px)!important;margin-top:7px!important;margin-bottom:9px!important}
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card{padding:16px 12px!important;border-radius:15px!important}
}

/* Compatibilidad con más estructuras de cabecera y con la barra de administración de WordPress. */
body.idifusion-radio-page #site-header,
body.idifusion-radio-page #header,
body.idifusion-radio-page .main-header,
body.idifusion-radio-page .header-area,
body.idifusion-radio-page .site-header-wrapper{display:none!important}
body.admin-bar.idifusion-radio-page .idif-global-header{top:32px}
body.admin-bar.idifusion-radio-page{padding-top:calc(var(--idif-header-h) + 32px)!important}
body.admin-bar.idifusion-radio-page .idif-chat-modal,
body.admin-bar.idifusion-radio-page .idif-chat-modal-backdrop{top:calc(var(--idif-header-h) + 32px)!important}
@media(max-width:782px){
  body.admin-bar.idifusion-radio-page .idif-global-header{top:46px}
  body.admin-bar.idifusion-radio-page{padding-top:calc(var(--idif-header-h) + 46px)!important}
  body.admin-bar.idifusion-radio-page .idif-chat-modal,
  body.admin-bar.idifusion-radio-page .idif-chat-modal-backdrop{top:calc(var(--idif-header-h) + 46px)!important}
}

/* ===== IDIFUSIÓN v0.3.4 · chat con formulario fijo, navegación persistente y limpieza de duplicados ===== */
body.idifusion-radio-page.idif-navigating .entry-content,
body.idifusion-radio-page.idif-navigating .wp-block-post-content{opacity:.55;transition:opacity .15s ease;pointer-events:none}

/* El contenido secundario empieza inmediatamente debajo de la cabecera propia. */
body.idifusion-radio-page:not(.idifusion-home-page) main,
body.idifusion-radio-page:not(.idifusion-home-page) .site-main,
body.idifusion-radio-page:not(.idifusion-home-page) .site-content,
body.idifusion-radio-page:not(.idifusion-home-page) .content-area,
body.idifusion-radio-page:not(.idifusion-home-page) .entry-content,
body.idifusion-radio-page:not(.idifusion-home-page) .wp-block-post-content{padding-top:0!important;margin-top:0!important}
body.idifusion-radio-page [data-idif-duplicate-header="1"]{display:none!important}

/* Chat: una sola cabecera; mensajes desplazables y formulario siempre visible. */
.idif-chat-modal-body{overflow:hidden!important;display:flex!important;flex-direction:column!important;padding:0!important}
.idif-chat-modal-body>.idif-chat-layout-root,
.idif-chat-layout-root{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#091729!important}
.idif-chat-inner-header{display:none!important}
.idif-chat-scroll-pane{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;padding:12px 16px 10px!important;scrollbar-gutter:stable}
.idif-chat-scroll-pane>*{max-width:none!important}
.idif-chat-scroll-pane [id*="messages"],
.idif-chat-scroll-pane [class*="chat-messages"],
.idif-chat-scroll-pane [class*="messages-list"]{max-height:none!important;height:auto!important;min-height:0!important;overflow:visible!important}
.idif-chat-composer{flex:0 0 auto!important;position:relative!important;z-index:2!important;width:100%!important;max-width:none!important;margin:0!important;padding:12px 16px 14px!important;background:#0d1f35!important;border-top:1px solid rgba(255,255,255,.12)!important;box-shadow:0 -12px 30px rgba(0,0,0,.18)!important}
.idif-chat-composer label{margin:4px 0 2px!important;font-size:.82rem!important}
.idif-chat-composer input:not([type="checkbox"]):not([type="radio"]),
.idif-chat-composer select{min-height:38px!important;margin:4px 0 8px!important;padding:8px 10px!important}
.idif-chat-composer textarea{min-height:58px!important;max-height:92px!important;margin:4px 0 8px!important;padding:8px 10px!important;resize:vertical!important}
.idif-chat-composer button[type="submit"],
.idif-chat-composer input[type="submit"]{min-height:40px!important;margin:0!important;padding:8px 15px!important}

/* La barra de reproducción siempre queda en primer plano respecto del chat y de botones flotantes. */
.idif-sticky-player{z-index:2147483000!important}
.idif-global-header{z-index:2147483100!important}
.idif-chat-modal{z-index:2147482900!important}

/* Reduce espacios heredados por algunos temas en las páginas de registro/panel/programación. */
body.idifusion-radio-page:not(.idifusion-home-page) article,
body.idifusion-radio-page:not(.idifusion-home-page) .page,
body.idifusion-radio-page:not(.idifusion-home-page) .type-page{padding-top:0!important;margin-top:0!important}

@media(max-width:820px){
  .idif-chat-modal{padding:5px!important}
  .idif-chat-modal-dialog{width:100%!important;border-radius:10px!important}
  .idif-chat-modal-dialog>header{padding:9px 11px!important;min-height:58px}
  .idif-chat-modal-dialog>header .idif-kicker{font-size:.58rem!important}
  .idif-chat-modal-dialog>header h2{font-size:1.02rem!important;margin:2px 0 0!important}
  .idif-chat-modal-close{width:38px!important;height:38px!important;flex-basis:38px!important}
  .idif-chat-scroll-pane{padding:9px 10px 7px!important}
  .idif-chat-composer{padding:8px 10px 9px!important}
  .idif-chat-composer label{font-size:.76rem!important;margin:2px 0!important}
  .idif-chat-composer input:not([type="checkbox"]):not([type="radio"]){min-height:36px!important;margin:2px 0 5px!important;padding:7px 9px!important}
  .idif-chat-composer textarea{min-height:52px!important;max-height:68px!important;margin:2px 0 6px!important;padding:7px 9px!important}
  .idif-chat-composer button[type="submit"],.idif-chat-composer input[type="submit"]{width:100%!important;min-height:38px!important}
}

@media(max-width:600px){
  body.idifusion-radio-page:not(.idifusion-home-page) .entry-content,
  body.idifusion-radio-page:not(.idifusion-home-page) .wp-block-post-content{padding-left:4px!important;padding-right:4px!important}
  .idif-chat-scroll-pane{font-size:.9rem!important}
}

/* ===== IDIFUSIÓN v0.3.5 · chat estable, formulario compacto, menú SPA y eliminación de franjas ===== */
/* El tema no debe reservar una segunda franja/hero encima del contenido de la plataforma. */
body.idifusion-radio-page #content,
body.idifusion-radio-page #primary,
body.idifusion-radio-page .site-content,
body.idifusion-radio-page .content-area,
body.idifusion-radio-page main,
body.idifusion-radio-page main.site-main,
body.idifusion-radio-page article.page,
body.idifusion-radio-page article.type-page,
body.idifusion-radio-page .entry-content,
body.idifusion-radio-page .wp-block-post-content{
  margin-top:0!important;
  padding-top:0!important;
  min-height:0!important;
}
body.idifusion-radio-page .entry-header,
body.idifusion-radio-page .page-header,
body.idifusion-radio-page .page-title,
body.idifusion-radio-page .page-title-area,
body.idifusion-radio-page .page-banner,
body.idifusion-radio-page .inner-banner,
body.idifusion-radio-page .title-bar,
body.idifusion-radio-page .breadcrumb,
body.idifusion-radio-page .breadcrumbs,
body.idifusion-radio-page .breadcrumb-area,
body.idifusion-radio-page .page-hero,
body.idifusion-radio-page .page-hero-section,
body.idifusion-radio-page .hero-banner{
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}
body.idifusion-radio-page .idif-home-v3,
body.idifusion-radio-page .entry-content>.idif-home,
body.idifusion-radio-page .entry-content>.idif-form-card,
body.idifusion-radio-page .entry-content>.idif-dashboard,
body.idifusion-radio-page .entry-content>.idif-section{
  margin-top:0!important;
}
body.idifusion-home-page .idif-home-v3{padding-top:6px!important}

/* v0.3.4 movía físicamente el formulario; v0.3.5 conserva intacto el DOM del chat
   para que su AJAX siga encontrando mensajes y usa un formulario proxy compacto. */
.idif-chat-modal-body{
  display:block!important;
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:10px 12px!important;
  background:#091729!important;
  overscroll-behavior:contain;
}
.idif-chat-layout-root,.idif-chat-scroll-pane{display:contents!important}
.idif-chat-original-composer{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  max-height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  clip-path:inset(50%)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.idif-chat-proxy-composer{
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(150px,.7fr) minmax(260px,2fr) auto;
  gap:8px!important;
  align-items:stretch!important;
  width:100%!important;
  margin:0!important;
  padding:9px 12px 10px!important;
  background:#0d1f35!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 -12px 30px rgba(0,0,0,.2)!important;
  box-sizing:border-box!important;
}
.idif-chat-proxy-composer input,
.idif-chat-proxy-composer textarea{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  border:1px solid #294563!important;
  border-radius:10px!important;
  background:#081421!important;
  color:#f4f7fb!important;
  font:inherit!important;
  box-shadow:none!important;
}
.idif-chat-proxy-composer input{height:44px!important;padding:9px 11px!important}
.idif-chat-proxy-composer textarea{height:44px!important;min-height:44px!important;max-height:84px!important;padding:9px 11px!important;resize:vertical!important;line-height:1.3!important}
.idif-chat-proxy-composer button{
  min-width:145px!important;
  min-height:44px!important;
  margin:0!important;
  padding:8px 15px!important;
  border:0!important;
  border-radius:10px!important;
  background:var(--idif-accent)!important;
  color:#04110d!important;
  font:inherit!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.idif-chat-proxy-composer button:disabled{opacity:.6;cursor:wait!important}
.idif-chat-modal-body [id*="messages"],
.idif-chat-modal-body [class*="chat-messages"],
.idif-chat-modal-body [class*="messages-list"]{
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}

/* El modal usa todo el alto útil; el player permanece delante. */
.idif-chat-modal-dialog{height:100%!important;max-height:none!important}
.idif-chat-modal-body{scrollbar-gutter:stable}
.idif-sticky-player{z-index:2147483000!important}
.idif-global-header{z-index:2147483100!important}
.idif-chat-modal{z-index:2147482900!important}

@media(max-width:820px){
  body.idifusion-home-page .idif-home-v3{padding-top:4px!important}
  .idif-chat-modal{padding:4px!important}
  .idif-chat-modal-dialog>header{min-height:56px!important;padding:9px 11px!important}
  .idif-chat-modal-body{padding:7px 8px!important}
  .idif-chat-proxy-composer{
    grid-template-columns:1fr!important;
    gap:5px!important;
    padding:7px 8px 8px!important;
  }
  .idif-chat-proxy-composer input{height:38px!important;min-height:38px!important;padding:7px 9px!important}
  .idif-chat-proxy-composer textarea{height:50px!important;min-height:50px!important;max-height:62px!important;padding:7px 9px!important;resize:none!important}
  .idif-chat-proxy-composer button{width:100%!important;min-width:0!important;min-height:39px!important;padding:7px 10px!important}
}

@media(max-width:600px){
  body.idifusion-radio-page #content,
  body.idifusion-radio-page #primary,
  body.idifusion-radio-page .site-content,
  body.idifusion-radio-page .content-area,
  body.idifusion-radio-page main.site-main,
  body.idifusion-radio-page article.page,
  body.idifusion-radio-page article.type-page,
  body.idifusion-radio-page .entry-content,
  body.idifusion-radio-page .wp-block-post-content{margin-top:0!important;padding-top:0!important}
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
  body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{margin-top:4px!important}
}
.idif-chat-original-control,
.idif-chat-original-control-wrap{
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  max-height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  clip-path:inset(50%)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

/* ===== IDIFUSIÓN v0.3.6 · cabecera sin solapamiento, chat compacto y login limpio ===== */
/* Todos los bloques principales respetan la cabecera fija, incluso tras navegación interna. */
body.idifusion-radio-page .idif-home,
body.idifusion-radio-page .idif-form-card,
body.idifusion-radio-page .idif-dashboard,
body.idifusion-radio-page .idif-section{scroll-margin-top:calc(var(--idif-header-h) + 10px)!important}
body.idifusion-radio-page [data-idif-content-guard="1"]{box-sizing:border-box!important}

/* WordPress pinta el checkbox "Recuérdame" enorme por la regla general de inputs. */
.idif-form-card .login-remember label{display:flex!important;align-items:center!important;gap:8px!important;margin:8px 0 14px!important;font-weight:650!important}
.idif-form-card .login-remember input[type="checkbox"],
.idif-form-card input[type="checkbox"]{
  appearance:auto!important;-webkit-appearance:checkbox!important;
  width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
  max-width:18px!important;max-height:18px!important;margin:0!important;padding:0!important;
  border-radius:3px!important;box-shadow:none!important;accent-color:var(--idif-accent)!important
}
.idif-form-card .login-submit input[type="submit"]{width:100%!important;min-height:46px!important;margin-top:4px!important}

/* Chat: primera línea COMUNIDAD / Chat de IDIFUSIÓN; bienvenida en una segunda línea pequeña. */
.idif-chat-modal-dialog>header{padding:8px 12px!important;min-height:0!important;gap:10px!important}
.idif-chat-heading{min-width:0;flex:1 1 auto;display:grid;gap:3px}
.idif-chat-titleline{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.idif-chat-titleline .idif-kicker{font-size:.62rem!important;line-height:1!important;white-space:nowrap}
.idif-chat-short-title{font-size:.78rem!important;font-weight:800!important;color:#dce6f2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idif-chat-welcome{grid-column:1/-1;margin:0!important;color:var(--idif-muted)!important;font-size:.72rem!important;line-height:1.25!important;font-weight:500!important}
.idif-chat-modal-close{width:34px!important;height:34px!important;flex:0 0 34px!important;font-size:1.25rem!important}
/* La bienvenida original del plugin del chat queda oculta; su texto ya vive en la cabecera compacta. */
.idif-chat-original-welcome{display:none!important}

/* Más alto útil para mensajes; el compositor proxy ocupa lo mínimo indispensable. */
.idif-chat-modal-body{min-height:0!important;flex:1 1 auto!important}
.idif-chat-proxy-composer{padding:7px 10px 8px!important;gap:6px!important}
.idif-chat-proxy-composer input{height:38px!important;min-height:38px!important}
.idif-chat-proxy-composer textarea{height:42px!important;min-height:42px!important;max-height:64px!important}
.idif-chat-proxy-composer button{min-height:38px!important}

@media(max-width:820px){
  .idif-chat-modal{padding:3px!important}
  .idif-chat-modal-dialog>header{padding:6px 9px!important;gap:8px!important}
  .idif-chat-titleline .idif-kicker{font-size:.56rem!important}
  .idif-chat-short-title{font-size:.68rem!important}
  .idif-chat-welcome{font-size:.64rem!important;line-height:1.15!important}
  .idif-chat-modal-close{width:31px!important;height:31px!important;flex-basis:31px!important;font-size:1.12rem!important}
  .idif-chat-modal-body{padding:4px 6px!important}
  .idif-chat-proxy-composer{gap:4px!important;padding:5px 7px 6px!important}
  .idif-chat-proxy-composer input{height:34px!important;min-height:34px!important;padding:6px 8px!important}
  .idif-chat-proxy-composer textarea{height:40px!important;min-height:40px!important;max-height:48px!important;padding:6px 8px!important}
  .idif-chat-proxy-composer button{min-height:35px!important;padding:6px 9px!important}
}


/* ===== IDIFUSIÓN v0.3.7 · primer render sin huecos + chat desktop aprovechado ===== */
/* La compensación de la cabecera la hace únicamente el body. Esto evita el hueco
   enorme que podía aparecer en la primera visita cuando el navegador restauraba scroll. */
body.idifusion-radio-page [data-idif-content-guard="1"]{padding-top:0!important;margin-top:0!important}
body.idifusion-radio-page .idif-home-v3{margin-top:0!important}
body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{margin-top:0!important}

/* En escritorio, el historial del chat ocupa todo el espacio entre su cabecera y
   el compositor fijo. Así no queda una franja vacía debajo de la caja de mensajes. */
@media(min-width:821px){
  .idif-chat-modal-body{display:flex!important;flex-direction:column!important;min-height:0!important}
  .idif-chat-content-root{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:0!important;height:100%!important;max-height:none!important;width:100%!important}
  .idif-chat-message-region{display:block!important;flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  /* Fallback para la estructura del chat existente cuando el historial no expone
     una clase específica que pueda marcar JavaScript. */
  .idif-chat-content-root>[id*="messages" i],
  .idif-chat-content-root>[class*="chat-messages" i],
  .idif-chat-content-root>[class*="messages-list" i],
  .idif-chat-content-root>[class*="message-list" i],
  .idif-chat-content-root>[class*="chat-list" i],
  .idif-chat-content-root>[class*="chat-history" i]{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:auto!important}
}


/* ===== IDIFUSIÓN v0.3.8 · contenido visible bajo cabecera + chat sin hueco ===== */
/* La cabecera fija se compensa en el body. Los módulos conservan su padding interno
   y reciben solo una separación breve y constante; nunca una altura calculada con scroll. */
body.idifusion-radio-page .entry-content,
body.idifusion-radio-page .wp-block-post-content,
body.idifusion-radio-page main.site-main{scroll-margin-top:calc(var(--idif-header-h) + 12px)!important}
body.idifusion-radio-page .entry-content>.idif-home,
body.idifusion-radio-page .entry-content>.idif-form-card,
body.idifusion-radio-page .entry-content>.idif-dashboard,
body.idifusion-radio-page .entry-content>.idif-section,
body.idifusion-radio-page .wp-block-post-content>.idif-home,
body.idifusion-radio-page .wp-block-post-content>.idif-form-card,
body.idifusion-radio-page .wp-block-post-content>.idif-dashboard,
body.idifusion-radio-page .wp-block-post-content>.idif-section{
  margin-top:12px!important;
}
body.idifusion-home-page .idif-home-v3{padding-top:4px!important;margin-top:10px!important}
body.idifusion-radio-page:not(.idifusion-home-page) .idif-form-card,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-dashboard,
body.idifusion-radio-page:not(.idifusion-home-page) .idif-section{
  margin-top:12px!important;
}
/* Chat de escritorio: cada wrapper entre el shortcode y la lista de mensajes participa
   en el flex vertical. La lista crece hasta tocar el compositor inferior. */
@media(min-width:821px){
  .idif-chat-modal-body{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    padding:10px 12px!important;
  }
  .idif-chat-content-root,
  .idif-chat-flex-chain{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    width:100%!important;
  }
  .idif-chat-message-region{
    display:block!important;
    flex:1 1 auto!important;
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }
  .idif-chat-message-region>[class*="messages" i],
  .idif-chat-message-region>[id*="messages" i]{max-height:none!important}
}

@media(max-width:820px){
  body.idifusion-radio-page .entry-content>.idif-home,
  body.idifusion-radio-page .entry-content>.idif-form-card,
  body.idifusion-radio-page .entry-content>.idif-dashboard,
  body.idifusion-radio-page .entry-content>.idif-section,
  body.idifusion-radio-page .wp-block-post-content>.idif-home,
  body.idifusion-radio-page .wp-block-post-content>.idif-form-card,
  body.idifusion-radio-page .wp-block-post-content>.idif-dashboard,
  body.idifusion-radio-page .wp-block-post-content>.idif-section{
    margin-top:9px!important;
  }
  body.idifusion-home-page .idif-home-v3{margin-top:7px!important}
}


/* ===== IDIFUSIÓN v0.3.9 · chat centrado en mensajes + compositor bajo demanda ===== */
.idif-chat-modal-dialog{position:relative!important;overflow:hidden!important}
.idif-chat-modal-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  overflow:hidden!important;
}
.idif-chat-content-root,.idif-chat-flex-chain{
  min-height:0!important;
  max-height:none!important;
  width:100%!important;
}
.idif-chat-message-region{
  width:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
}
/* En primera vista solo queda un botón para escribir. El formulario no roba alto al historial. */
.idif-chat-compose-launch{
  position:absolute!important;
  right:18px!important;
  bottom:16px!important;
  z-index:14!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:44px!important;
  padding:10px 17px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:999px!important;
  background:var(--idif-accent)!important;
  color:#04110d!important;
  font:inherit!important;
  font-weight:850!important;
  box-shadow:0 12px 32px rgba(0,0,0,.38)!important;
  cursor:pointer!important;
}
.idif-chat-compose-launch.is-hidden{display:none!important}
.idif-chat-proxy-composer{
  position:absolute!important;
  left:50%!important;
  bottom:14px!important;
  transform:translate(-50%,18px)!important;
  z-index:16!important;
  display:grid!important;
  grid-template-columns:minmax(180px,.75fr) minmax(320px,2fr) auto!important;
  gap:9px!important;
  align-items:end!important;
  width:min(920px,calc(100% - 28px))!important;
  margin:0!important;
  padding:13px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:16px!important;
  background:#0d1f35!important;
  box-shadow:0 18px 55px rgba(0,0,0,.58)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .16s ease,transform .16s ease,visibility .16s!important;
}
.idif-chat-proxy-composer.is-open{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate(-50%,0)!important;
}
.idif-chat-compose-head{display:none!important}
.idif-chat-proxy-composer input{height:48px!important;min-height:48px!important;padding:11px 13px!important}
.idif-chat-proxy-composer textarea{height:74px!important;min-height:74px!important;max-height:130px!important;padding:11px 13px!important;resize:vertical!important}
.idif-chat-proxy-composer .idif-chat-send-button{height:48px!important;min-height:48px!important;align-self:end!important}

@media(max-width:820px){
  .idif-chat-modal-body{padding:3px 5px!important}
  .idif-chat-compose-launch{
    left:10px!important;right:10px!important;bottom:10px!important;
    width:auto!important;min-height:44px!important;border-radius:12px!important;
  }
  .idif-chat-proxy-composer{
    left:7px!important;right:7px!important;bottom:7px!important;transform:translateY(18px)!important;
    width:auto!important;grid-template-columns:1fr!important;gap:8px!important;padding:11px!important;border-radius:16px!important;
  }
  .idif-chat-proxy-composer.is-open{transform:translateY(0)!important}
  .idif-chat-compose-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;color:#f4f7fb!important}
  .idif-chat-compose-head strong{font-size:.92rem!important}
  .idif-chat-compose-close{
    width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
    padding:0!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:50%!important;
    background:#13283f!important;color:#fff!important;font-size:1.35rem!important;line-height:1!important;cursor:pointer!important
  }
  .idif-chat-proxy-composer input{height:46px!important;min-height:46px!important;padding:10px 12px!important}
  .idif-chat-proxy-composer textarea{height:132px!important;min-height:132px!important;max-height:180px!important;padding:11px 12px!important;resize:none!important}
  .idif-chat-proxy-composer .idif-chat-send-button{width:100%!important;height:48px!important;min-height:48px!important}
}


/* ===== IDIFUSIÓN v0.3.10 · offsets reales de cabecera/player en primera carga ===== */
/* JavaScript actualiza estas variables con las medidas reales. Los valores de aquí
   son fallbacks para el instante anterior a DOMContentLoaded. */
:root{
  --idif-adminbar-h:0px;
  --idif-content-top-gap:14px;
  --idif-content-bottom-gap:28px;
}

/* El espacio del player se reserva con holgura suficiente para que botones y campos
   finales puedan desplazarse totalmente por encima de la barra fija. */
body.idifusion-radio-page{
  padding-bottom:calc(var(--idif-player-h) + var(--idif-content-bottom-gap) + env(safe-area-inset-bottom,0px))!important;
}

/* La corrección superior se aplica al root real detectado por JS. No se usa una
   altura fija por página ni cálculos dependientes de la posición actual del scroll. */
body.idifusion-radio-page [data-idif-content-guard="1"]{
  box-sizing:border-box!important;
  margin-top:0!important;
  scroll-margin-top:calc(var(--idif-header-h) + var(--idif-adminbar-h) + var(--idif-content-top-gap))!important;
}

/* La primera tarjeta conserva siempre una pequeña zona respirable debajo del header. */
body.idifusion-radio-page .entry-content>.idif-home,
body.idifusion-radio-page .entry-content>.idif-form-card,
body.idifusion-radio-page .entry-content>.idif-dashboard,
body.idifusion-radio-page .entry-content>.idif-section,
body.idifusion-radio-page .wp-block-post-content>.idif-home,
body.idifusion-radio-page .wp-block-post-content>.idif-form-card,
body.idifusion-radio-page .wp-block-post-content>.idif-dashboard,
body.idifusion-radio-page .wp-block-post-content>.idif-section{
  margin-top:14px!important;
}

/* Los widgets flotantes pequeños se mantienen por encima del reproductor. */
body.idifusion-radio-page .cky-btn-revisit-wrapper,
body.idifusion-radio-page #cookie-law-info-again,
body.idifusion-radio-page [class*="cookie"][style*="fixed"],
body.idifusion-radio-page [class*="consent"][style*="fixed"]{
  bottom:calc(var(--idif-player-h) + 14px + env(safe-area-inset-bottom,0px))!important;
}

@media(max-width:820px){
  :root{--idif-content-top-gap:10px;--idif-content-bottom-gap:32px}
  body.idifusion-radio-page{
    padding-bottom:calc(var(--idif-player-h) + var(--idif-content-bottom-gap) + env(safe-area-inset-bottom,0px))!important;
  }
  body.idifusion-radio-page .entry-content>.idif-home,
  body.idifusion-radio-page .entry-content>.idif-form-card,
  body.idifusion-radio-page .entry-content>.idif-dashboard,
  body.idifusion-radio-page .entry-content>.idif-section,
  body.idifusion-radio-page .wp-block-post-content>.idif-home,
  body.idifusion-radio-page .wp-block-post-content>.idif-form-card,
  body.idifusion-radio-page .wp-block-post-content>.idif-dashboard,
  body.idifusion-radio-page .wp-block-post-content>.idif-section{
    margin-top:10px!important;
  }
}

/* v0.3.12 — portada oficial servida por plantilla propia del plugin. */
body.idifusion-plugin-official-home .idifusion-official-home-main,
body.idifusion-plugin-official-home .idifusion-official-home-article,
body.idifusion-plugin-official-home .idifusion-official-home-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.idifusion-plugin-official-home .idifusion-official-home-main{min-height:calc(100svh - var(--idif-header-h) - var(--idif-player-h));}

/* ===== IDIFUSIÓN v0.4.0 · biblioteca MP3 para locutores ===== */
.idif-media-panel{overflow:hidden}
.idif-media-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.idif-media-head h3{margin:.25rem 0 .35rem!important}
.idif-media-quota{padding:14px 16px;border:1px solid var(--idif-line);border-radius:14px;background:rgba(255,255,255,.025);margin:14px 0 18px}
.idif-media-quota-top{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--idif-text);font-size:.9rem}
.idif-media-quota-top span{color:var(--idif-muted);font-size:.82rem}
.idif-media-meter{height:8px;margin-top:10px;border-radius:999px;background:#07111c;overflow:hidden;border:1px solid rgba(255,255,255,.06)}
.idif-media-meter i{display:block;height:100%;border-radius:inherit;background:var(--idif-accent);min-width:0;transition:width .25s ease}
.idif-media-uploader{padding:16px;border:1px solid var(--idif-line);border-radius:15px;background:#0a1421;margin-bottom:14px}
.idif-media-drop{position:relative!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:150px;margin:0!important;padding:20px;border:1px dashed rgba(255,255,255,.2);border-radius:13px;background:rgba(255,255,255,.018);cursor:pointer}
.idif-media-drop:hover{border-color:var(--idif-accent);background:rgba(32,201,151,.045)}
.idif-media-drop-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:rgba(32,201,151,.12);color:var(--idif-accent2);font-size:1.45rem;margin-bottom:9px}
.idif-media-drop strong{font-size:1rem;color:var(--idif-text)}
.idif-media-drop small{margin-top:5px;color:var(--idif-muted);font-weight:500}
.idif-media-drop input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important;padding:0!important;min-height:0!important}
.idif-media-selected{margin:10px 0 0;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.035);color:var(--idif-muted);font-size:.82rem;overflow-wrap:anywhere}
.idif-media-selected.has-error{background:rgba(255,100,112,.09);color:#ffb7bd}
.idif-media-uploader .idif-primary-btn{margin-top:12px}
.idif-media-uploader .idif-primary-btn:disabled{opacity:.55;cursor:wait;transform:none}
.idif-media-progress{margin-top:12px}
.idif-media-progress>div{height:8px;border-radius:999px;background:#07111c;overflow:hidden;border:1px solid rgba(255,255,255,.06)}
.idif-media-progress i{display:block;width:0;height:100%;background:var(--idif-accent);transition:width .2s ease}
.idif-media-progress span{display:block;margin-top:7px;color:var(--idif-muted);font-size:.82rem}
.idif-media-progress.has-error span{color:#ffb7bd}
.idif-media-rules{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px;color:var(--idif-muted);font-size:.78rem}
.idif-media-rules span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05)}
.idif-media-list{display:grid;gap:10px}
.idif-media-empty{padding:20px;border:1px dashed var(--idif-line);border-radius:14px;text-align:center;color:var(--idif-muted)}
.idif-media-empty strong{color:var(--idif-text)}
.idif-media-empty p{margin:5px 0 0}
.idif-media-item{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(230px,300px);gap:13px;align-items:center;padding:13px;border:1px solid var(--idif-line);border-radius:14px;background:#0a1421}
.idif-media-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:rgba(255,200,87,.1);color:#ffd779;font-size:.7rem;font-weight:900;letter-spacing:.08em}
.idif-media-info{min-width:0}
.idif-media-info>strong,.idif-media-info>small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idif-media-info>strong{color:var(--idif-text);font-size:.92rem}
.idif-media-info>small{margin-top:3px;color:var(--idif-muted);font-size:.75rem}
.idif-media-info>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;color:var(--idif-muted);font-size:.72rem}
.idif-media-info>div span{padding:3px 6px;border-radius:7px;background:rgba(255,255,255,.035)}
.idif-media-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.idif-media-actions audio{width:190px;max-width:100%;height:34px}
.idif-media-delete{appearance:none;border:1px solid rgba(255,100,112,.24);background:rgba(255,100,112,.08);color:#ffb7bd;border-radius:9px;padding:8px 10px;cursor:pointer;font-weight:700;font-size:.75rem}
.idif-media-delete:hover{background:rgba(255,100,112,.14)}
.idif-media-delete:disabled{opacity:.55;cursor:wait}
.idif-media-folder-note{margin-top:14px!important;overflow-wrap:anywhere}
.idif-media-folder-note code{color:#c9ffef;background:rgba(255,255,255,.04);padding:2px 5px;border-radius:6px}

@media(max-width:1100px){
  .idif-media-item{grid-template-columns:52px minmax(0,1fr)}
  .idif-media-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}
  .idif-media-actions audio{width:min(100%,260px)}
}
@media(max-width:640px){
  .idif-media-head{display:block}
  .idif-media-quota-top{align-items:flex-start;flex-direction:column;gap:4px}
  .idif-media-uploader{padding:12px}
  .idif-media-drop{min-height:135px;padding:16px 12px}
  .idif-media-uploader .idif-primary-btn{width:100%;min-height:48px}
  .idif-media-rules{display:grid;grid-template-columns:1fr}
  .idif-media-item{grid-template-columns:44px minmax(0,1fr);padding:11px;gap:10px}
  .idif-media-icon{width:42px;height:42px;border-radius:10px}
  .idif-media-actions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%}
  .idif-media-actions audio{width:100%;min-width:0}
  .idif-media-delete{min-height:38px}
}

/* ===== IDIFUSIÓN v0.4.1 · moderación previa de audios ===== */
.idif-media-status{display:inline-flex!important;align-items:center;width:max-content;margin-top:8px;padding:5px 9px!important;border-radius:999px!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.02em;border:1px solid transparent}
.idif-media-status.is-pending{color:#ffe7a0;background:rgba(255,200,87,.10)!important;border-color:rgba(255,200,87,.22)!important}
.idif-media-status.is-approved{color:#9ff5d7;background:rgba(32,201,151,.10)!important;border-color:rgba(32,201,151,.24)!important}
.idif-media-status.is-rejected{color:#ffb7bd;background:rgba(255,100,112,.09)!important;border-color:rgba(255,100,112,.22)!important}
.idif-media-status.is-available{color:var(--idif-muted);background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.08)!important}
.idif-media-reason{display:block!important;margin-top:6px!important;color:#ffb7bd!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.45}

/* ===== IDIFUSIÓN v0.4.2 · descargas privadas para locutores ===== */
.idif-download-panel{overflow:hidden}
.idif-download-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.idif-download-head h3{margin:.25rem 0 .35rem!important}
.idif-download-list{display:grid;gap:11px}
.idif-download-empty{padding:20px;border:1px dashed var(--idif-line);border-radius:14px;text-align:center;color:var(--idif-muted);background:rgba(255,255,255,.018)}
.idif-download-empty strong{display:block;color:var(--idif-text)}
.idif-download-empty p{margin:5px 0 0}
.idif-download-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--idif-line);border-radius:14px;background:#0a1421}
.idif-download-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:12px;background:rgba(32,201,151,.10);color:var(--idif-accent2);font-size:.68rem;font-weight:900;letter-spacing:.05em;overflow:hidden}
.idif-download-info{min-width:0}
.idif-download-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.idif-download-title-row>strong{color:var(--idif-text);font-size:.96rem}
.idif-download-title-row>span{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:rgba(255,200,87,.10);border:1px solid rgba(255,200,87,.18);color:#ffe29a;font-size:.72rem;font-weight:800}
.idif-download-info p{margin:6px 0;color:var(--idif-muted);line-height:1.45}
.idif-download-info small{display:block;color:var(--idif-muted);font-size:.74rem;overflow-wrap:anywhere}
.idif-download-btn{white-space:nowrap;text-align:center;min-width:110px}
@media(max-width:700px){
  .idif-download-item{grid-template-columns:46px minmax(0,1fr);gap:11px;padding:12px}
  .idif-download-icon{width:44px;height:44px;border-radius:10px}
  .idif-download-btn{grid-column:1/-1;width:100%;min-height:46px;display:flex;align-items:center;justify-content:center}
}

/* v0.4.3 · Soporte por WhatsApp y comunidades */
.idif-whatsapp-btn{appearance:none;border:0;border-radius:12px;background:#25D366;color:#04110d!important;font-weight:900;padding:11px 15px;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.2;white-space:nowrap;transition:transform .16s ease,filter .16s ease}
.idif-whatsapp-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.idif-support-contact,.idif-community-official{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px;border:1px solid var(--idif-line);border-radius:14px;background:#0a1421;margin-top:15px}
.idif-support-contact strong,.idif-community-official strong{color:var(--idif-text)}
.idif-support-contact p,.idif-community-official p{margin:5px 0 0;color:var(--idif-muted)}
.idif-community-programs{margin-top:20px;padding-top:18px;border-top:1px solid var(--idif-line)}
.idif-community-programs h4{margin:0 0 5px;color:var(--idif-text)}
.idif-community-program-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--idif-line);border-radius:14px;background:#0a1421;margin-top:12px}
.idif-community-program-form label{margin:0}
.idif-community-program-form .idif-secondary-btn{margin:0;min-height:44px}
.idif-modal-community{margin-top:18px;padding-top:16px;border-top:1px solid var(--idif-line)}
@media(max-width:700px){.idif-support-contact,.idif-community-official{align-items:stretch;flex-direction:column}.idif-support-contact .idif-whatsapp-btn,.idif-community-official .idif-whatsapp-btn{width:100%;min-height:48px}.idif-community-program-form{grid-template-columns:1fr}.idif-community-program-form .idif-secondary-btn{width:100%}}


/* v0.4.4 · Banner de comunidad oficial de WhatsApp */
.idif-community-banner{margin:18px 0 20px;min-height:clamp(280px,38vw,430px);border-radius:26px;overflow:hidden;position:relative;display:flex;align-items:center;padding:clamp(24px,4vw,44px);background-size:cover;background-position:center right;border:1px solid var(--idif-line);box-shadow:0 20px 48px rgba(2,8,18,.24)}
.idif-community-banner-copy{max-width:min(520px,100%);color:var(--idif-text);position:relative;z-index:1}
.idif-community-banner-copy h2{margin:.35rem 0 .7rem;color:#fff;font-size:clamp(1.8rem,4.2vw,3rem);line-height:1.04;letter-spacing:-.03em}
.idif-community-banner-copy p{margin:0 0 18px;color:rgba(236,244,252,.9);font-size:clamp(1rem,2vw,1.08rem);line-height:1.6}
.idif-community-banner .idif-primary-btn{margin-top:0;min-height:48px;padding-inline:18px}
@media(max-width:900px){.idif-community-banner{background-position:68% center;min-height:320px}}
@media(max-width:600px){.idif-community-banner{margin:12px 0 16px;padding:18px 16px;min-height:340px;align-items:flex-end;background-position:72% center;border-radius:20px}.idif-community-banner-copy{max-width:100%}.idif-community-banner .idif-primary-btn{width:100%}}

/* ===== IDIFUSIÓN v0.4.5 · selector de estructuras de portada ===== */
.idif-home-v3.idif-layout-warm,
.idif-home-v3.idif-layout-editorial,
.idif-home-v3.idif-layout-community,
.idif-home-v3.idif-layout-vibrant,.idif-home-v3.idif-layout-kids{max-width:1320px;margin-left:auto;margin-right:auto}

/* 2. Hogar & Familia */
body.idifusion-home-layout-warm,
body.idifusion-home-layout-warm .idifusion-official-home-main,
body.idifusion-home-layout-warm .idifusion-official-home-article,
body.idifusion-home-layout-warm .idifusion-official-home-content{background:#f4efe7!important}
.idif-layout-warm{
  --idif-bg:#f4efe7;
  --idif-card:#fffaf4;
  --idif-card2:#fffdf9;
  --idif-text:#26332f;
  --idif-muted:#68736e;
  --idif-accent:#28b98d;
  --idif-accent2:#19795e;
  --idif-line:rgba(70,79,73,.14);
  --idif-radius:24px;
  padding:12px 16px 26px!important;
  background:#f4efe7!important;
}
.idif-layout-warm .idif-home-hero{background:linear-gradient(135deg,#fffaf4 0%,#f8efe3 58%,#edf7f1 100%)!important;border-color:rgba(105,91,70,.13)!important;box-shadow:0 18px 42px rgba(76,61,43,.08)}
.idif-layout-warm .idif-home-hero h1,
.idif-layout-warm .idif-home-hero p,
.idif-layout-warm .idif-section h2,
.idif-layout-warm .idif-program-card h3,
.idif-layout-warm .idif-module-head h2,
.idif-layout-warm .idif-chat-launch-card strong,
.idif-layout-warm .idif-now h2{color:var(--idif-text)!important}
.idif-layout-warm .idif-home-hero p,
.idif-layout-warm .idif-section p,
.idif-layout-warm .idif-program-card p,
.idif-layout-warm .idif-program-card small,
.idif-layout-warm .idif-module-head p,
.idif-layout-warm .idif-chat-launch-card p,
.idif-layout-warm .idif-now p,
.idif-layout-warm .idif-mini-feature-list{color:var(--idif-muted)!important}
.idif-layout-warm .idif-section,
.idif-layout-warm .idif-home-module,
.idif-layout-warm .idif-home-v3 .idif-live-card,
.idif-layout-warm .idif-live-card,
.idif-layout-warm .idif-program-card{background:#fffaf4!important;border-color:rgba(82,73,59,.12)!important;box-shadow:0 12px 32px rgba(72,58,41,.055)}
.idif-layout-warm .idif-chat-launch-card{background:#f7f2ea!important;border-color:rgba(82,73,59,.12)!important}
.idif-layout-warm .idif-program-image.idif-placeholder{background:linear-gradient(135deg,#e8dfd2,#d9ede4)!important}
.idif-layout-warm .idif-host{color:#385149!important}
.idif-layout-warm .idif-secondary-btn{background:#fff!important;color:#3f514a!important;border-color:rgba(76,93,85,.2)!important}
.idif-layout-warm .idif-secondary-btn:hover{background:#f2f8f5!important;color:#213b32!important}
.idif-layout-warm .idif-cta{background:linear-gradient(135deg,#fff7ed,#eaf6ef)!important;border-color:rgba(82,73,59,.13)!important;box-shadow:0 14px 36px rgba(72,58,41,.06)}
.idif-layout-warm .idif-cta h2{color:#26332f!important}.idif-layout-warm .idif-cta p{color:#68736e!important}
.idif-warm-feature-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);gap:18px;align-items:stretch;margin:18px 0 24px}
.idif-warm-feature-grid>.idif-anchor-section,.idif-warm-feature-grid>.idif-community-banner{min-width:0;margin:0!important}
.idif-warm-feature-grid .idif-live-card{height:100%;margin:0!important;min-height:100%}
.idif-warm-feature-grid .idif-community-banner{min-height:310px;height:100%;border-radius:24px}

/* 3. Editorial Claro */
body.idifusion-home-layout-editorial,
body.idifusion-home-layout-editorial .idifusion-official-home-main,
body.idifusion-home-layout-editorial .idifusion-official-home-article,
body.idifusion-home-layout-editorial .idifusion-official-home-content{background:#f8fafc!important}
.idif-layout-editorial{
  --idif-bg:#f8fafc;
  --idif-card:#ffffff;
  --idif-card2:#ffffff;
  --idif-text:#1d2a38;
  --idif-muted:#667585;
  --idif-accent:#22b88a;
  --idif-accent2:#16745a;
  --idif-line:rgba(31,55,78,.13);
  --idif-radius:16px;
  padding:18px 20px 32px!important;
  background:#f8fafc!important;
}
.idif-editorial-lead{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:20px;align-items:stretch;margin:14px 0 26px}
.idif-editorial-lead>.idif-home-hero,.idif-editorial-lead>.idif-community-banner{margin:0!important;height:100%;min-height:390px}
.idif-layout-editorial .idif-home-hero{background:#fff!important;border:1px solid rgba(31,55,78,.11)!important;border-radius:16px!important;box-shadow:none!important;display:flex!important;align-items:flex-end!important}
.idif-layout-editorial .idif-home-hero h1{color:#172433!important;font-size:clamp(2.35rem,4.8vw,4.25rem)!important;line-height:.98!important}
.idif-layout-editorial .idif-home-hero p{color:#607080!important;max-width:620px}
.idif-layout-editorial .idif-community-banner{border-radius:16px!important;box-shadow:none!important}
.idif-layout-editorial .idif-section,
.idif-layout-editorial .idif-home-module,
.idif-layout-editorial .idif-live-card,
.idif-layout-editorial .idif-program-card{background:#fff!important;border-color:rgba(31,55,78,.11)!important;box-shadow:none!important;border-radius:16px!important}
.idif-layout-editorial .idif-chat-launch-card{background:#f4f7fa!important;border-color:rgba(31,55,78,.11)!important}
.idif-layout-editorial .idif-home-module h2,
.idif-layout-editorial .idif-section h2,
.idif-layout-editorial .idif-program-card h3,
.idif-layout-editorial .idif-chat-launch-card strong,
.idif-layout-editorial .idif-now h2{color:#1d2a38!important}
.idif-layout-editorial .idif-home-module p,
.idif-layout-editorial .idif-section p,
.idif-layout-editorial .idif-program-card p,
.idif-layout-editorial .idif-program-card small,
.idif-layout-editorial .idif-chat-launch-card p,
.idif-layout-editorial .idif-now p,
.idif-layout-editorial .idif-mini-feature-list{color:#667585!important}
.idif-layout-editorial .idif-host{color:#344a5d!important}
.idif-layout-editorial .idif-secondary-btn{background:#fff!important;color:#254053!important;border-color:rgba(31,55,78,.2)!important}
.idif-layout-editorial .idif-cta{background:#eef4f1!important;border:0!important;border-radius:16px!important}.idif-layout-editorial .idif-cta h2{color:#1d2a38!important}.idif-layout-editorial .idif-cta p{color:#667585!important}
.idif-editorial-content-flow{display:grid;gap:20px}
.idif-editorial-content-flow>.idif-anchor-section{margin:0}
.idif-layout-editorial .idif-home-service-grid{grid-template-columns:1fr 1fr;gap:20px}

/* 4. Comunidad Viva */
body.idifusion-home-layout-community,
body.idifusion-home-layout-community .idifusion-official-home-main,
body.idifusion-home-layout-community .idifusion-official-home-article,
body.idifusion-home-layout-community .idifusion-official-home-content{background:#eef5f2!important}
.idif-layout-community{
  --idif-bg:#eef5f2;
  --idif-card:#fbfdfc;
  --idif-card2:#ffffff;
  --idif-text:#233631;
  --idif-muted:#66766f;
  --idif-accent:#23b98c;
  --idif-accent2:#18745b;
  --idif-line:rgba(42,74,64,.13);
  --idif-radius:26px;
  padding:14px 16px 30px!important;
  background:#eef5f2!important;
}
.idif-layout-community>.idif-community-banner{margin-top:10px!important;min-height:clamp(360px,44vw,520px);border-radius:30px}
.idif-layout-community .idif-home-hero{background:linear-gradient(135deg,#fbfdfc,#f3eadf)!important;border-color:rgba(42,74,64,.11)!important;box-shadow:0 16px 40px rgba(45,73,64,.06)}
.idif-layout-community .idif-home-hero h1,
.idif-layout-community .idif-section h2,
.idif-layout-community .idif-home-module h2,
.idif-layout-community .idif-program-card h3,
.idif-layout-community .idif-chat-launch-card strong,
.idif-layout-community .idif-now h2{color:var(--idif-text)!important}
.idif-layout-community .idif-home-hero p,
.idif-layout-community .idif-section p,
.idif-layout-community .idif-home-module p,
.idif-layout-community .idif-program-card p,
.idif-layout-community .idif-program-card small,
.idif-layout-community .idif-chat-launch-card p,
.idif-layout-community .idif-now p,
.idif-layout-community .idif-mini-feature-list{color:var(--idif-muted)!important}
.idif-layout-community .idif-section,
.idif-layout-community .idif-home-module,
.idif-layout-community .idif-live-card,
.idif-layout-community .idif-program-card{background:#fbfdfc!important;border-color:rgba(42,74,64,.11)!important;box-shadow:0 12px 30px rgba(45,73,64,.05)!important}
.idif-layout-community .idif-chat-launch-card{background:#f2f8f5!important;border-color:rgba(42,74,64,.12)!important}
.idif-layout-community .idif-host{color:#36554b!important}
.idif-layout-community .idif-secondary-btn{background:#fff!important;color:#36554b!important;border-color:rgba(42,74,64,.18)!important}
.idif-layout-community .idif-cta{background:linear-gradient(135deg,#fff7ec,#e1f2ea)!important;border-color:rgba(42,74,64,.1)!important}.idif-layout-community .idif-cta h2{color:#233631!important}.idif-layout-community .idif-cta p{color:#66766f!important}
.idif-community-action-grid{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);gap:18px;align-items:stretch;margin:20px 0}
.idif-community-action-grid>.idif-home-module,.idif-community-action-grid>.idif-anchor-section{margin:0!important;min-width:0}
.idif-community-action-grid .idif-live-card{height:100%;margin:0!important}
.idif-community-conductor-wrap{margin:20px 0}.idif-community-conductor-wrap>.idif-home-module{min-height:220px}

/* Afinación común para los tres diseños claros: el player y chat global quedan intactos. */
.idif-layout-warm .idif-kicker,.idif-layout-editorial .idif-kicker,.idif-layout-community .idif-kicker{color:var(--idif-accent2)!important}
.idif-layout-warm .idif-section,.idif-layout-editorial .idif-section,.idif-layout-community .idif-section{overflow:hidden}
.idif-layout-warm .idif-program-info h3,.idif-layout-editorial .idif-program-info h3,.idif-layout-community .idif-program-info h3{color:var(--idif-text)!important}
.idif-layout-warm .idif-program-info p,.idif-layout-editorial .idif-program-info p,.idif-layout-community .idif-program-info p,
.idif-layout-warm .idif-time,.idif-layout-editorial .idif-time,.idif-layout-community .idif-time,
.idif-layout-warm .idif-clock,.idif-layout-editorial .idif-clock,.idif-layout-community .idif-clock{color:var(--idif-muted)!important}
.idif-layout-warm .idif-dot,.idif-layout-editorial .idif-dot,.idif-layout-community .idif-dot{border-color:var(--idif-card)!important}

@media(max-width:980px){
  .idif-warm-feature-grid,.idif-editorial-lead,.idif-community-action-grid{grid-template-columns:1fr}
  .idif-editorial-lead>.idif-home-hero,.idif-editorial-lead>.idif-community-banner{min-height:320px}
  .idif-layout-editorial .idif-home-service-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .idif-layout-warm,.idif-layout-editorial,.idif-layout-community{padding-left:9px!important;padding-right:9px!important}
  .idif-warm-feature-grid,.idif-editorial-lead,.idif-community-action-grid{gap:12px;margin:12px 0 16px}
  .idif-warm-feature-grid .idif-community-banner,.idif-editorial-lead>.idif-community-banner,.idif-layout-community>.idif-community-banner{min-height:350px}
  .idif-layout-editorial .idif-home-hero h1{font-size:2.2rem!important}
  .idif-layout-community>.idif-community-banner{border-radius:20px}
}


/* ===== IDIFUSIÓN v0.4.6 · imágenes persistentes, selector público y Color & Esperanza ===== */
/* Las portadas/fotografías cargadas por los locutores deben prevalecer sobre cualquier tema. */
.idif-layout-warm .idif-program-image:not(.idif-placeholder),
.idif-layout-editorial .idif-program-image:not(.idif-placeholder),
.idif-layout-community .idif-program-image:not(.idif-placeholder),
.idif-layout-vibrant .idif-program-image:not(.idif-placeholder),
.idif-layout-kids .idif-program-image:not(.idif-placeholder){background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}

/* Editorial Claro: nunca puede ensanchar la ventana completa ni crear scroll horizontal global. */
body.idifusion-home-layout-editorial{overflow-x:clip!important}
.idif-home-v3.idif-layout-editorial{width:min(1320px,calc(100% - 28px))!important;max-width:1320px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;overflow-x:clip!important}
.idif-layout-editorial>.idif-anchor-section,
.idif-layout-editorial>.idif-home-service-grid,
.idif-layout-editorial>.idif-cta,
.idif-editorial-lead,
.idif-editorial-lead>*,
.idif-editorial-content-flow,
.idif-editorial-content-flow>*{min-width:0!important;max-width:100%!important}
.idif-layout-editorial .idif-section,
.idif-layout-editorial .idif-live-card,
.idif-layout-editorial .idif-home-module{width:100%!important;max-width:100%!important;left:auto!important;right:auto!important;transform:none!important}
.idif-layout-editorial .idif-program-carousel,
.idif-layout-editorial .idif-timeline{max-width:100%!important}

/* 5. Color & Esperanza */
body.idifusion-home-layout-vibrant,
body.idifusion-home-layout-vibrant .idifusion-official-home-main,
body.idifusion-home-layout-vibrant .idifusion-official-home-article,
body.idifusion-home-layout-vibrant .idifusion-official-home-content{background:#fff9f2!important}
.idif-layout-vibrant{
  --idif-bg:#fff9f2;
  --idif-card:#ffffff;
  --idif-card2:#ffffff;
  --idif-text:#22233a;
  --idif-muted:#67697b;
  --idif-accent:#19c49a;
  --idif-accent2:#6b45df;
  --idif-line:rgba(68,57,103,.13);
  --idif-radius:25px;
  padding:14px 16px 30px!important;
  background:
    radial-gradient(circle at 6% 8%,rgba(255,192,67,.22) 0 72px,transparent 73px),
    radial-gradient(circle at 94% 18%,rgba(115,80,230,.14) 0 98px,transparent 99px),
    linear-gradient(180deg,#fff9f2 0%,#f9f7ff 48%,#f2fbf8 100%)!important;
  overflow:hidden;
}
.idif-vibrant-stage{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:18px;align-items:stretch;margin:12px 0 26px;padding:10px 0 24px}
.idif-vibrant-stage:before{content:"";position:absolute;left:3%;right:7%;bottom:2px;height:18px;border-top:4px solid rgba(247,107,93,.34);border-radius:50%;transform:rotate(-1deg);pointer-events:none}
.idif-vibrant-stage:after{content:"";position:absolute;width:122px;height:122px;right:-32px;top:-20px;border:18px solid rgba(25,196,154,.15);border-radius:50%;pointer-events:none}
.idif-vibrant-stage>.idif-home-hero,.idif-vibrant-stage>.idif-anchor-section{margin:0!important;min-width:0;position:relative;z-index:2}
.idif-layout-vibrant .idif-home-hero{background:linear-gradient(135deg,#6d49df 0%,#8067ee 42%,#f06f83 100%)!important;border:0!important;box-shadow:0 20px 46px rgba(86,57,163,.19)!important;min-height:390px}
.idif-layout-vibrant .idif-home-hero h1,.idif-layout-vibrant .idif-home-hero p{color:#fff!important}
.idif-layout-vibrant .idif-home-hero .idif-kicker{color:#fff0a7!important}
.idif-layout-vibrant .idif-home-hero .idif-secondary-btn{background:rgba(255,255,255,.15)!important;color:#fff!important;border-color:rgba(255,255,255,.36)!important}
.idif-layout-vibrant .idif-live-card{height:100%;margin:0!important;background:linear-gradient(145deg,#0d1d33,#102a3c)!important;border-color:rgba(25,196,154,.28)!important;box-shadow:0 20px 46px rgba(15,39,55,.13)}
.idif-vibrant-shape{position:absolute;pointer-events:none;z-index:1}
.idif-vibrant-shape-one{width:54px;height:54px;border-radius:50%;background:#ffc44d;left:-12px;top:34%;box-shadow:74px -104px 0 -19px #19c49a}
.idif-vibrant-shape-two{width:120px;height:22px;right:35%;bottom:2px;border-top:4px solid #744be3;border-bottom:4px solid #f36f61;border-radius:50%;transform:rotate(-7deg)}
.idif-layout-vibrant .idif-section,
.idif-layout-vibrant .idif-home-module,
.idif-layout-vibrant .idif-program-card{background:rgba(255,255,255,.94)!important;border-color:rgba(68,57,103,.12)!important;box-shadow:0 13px 32px rgba(72,57,112,.075)!important}
.idif-layout-vibrant .idif-section h2,.idif-layout-vibrant .idif-program-card h3,.idif-layout-vibrant .idif-home-module h2,.idif-layout-vibrant .idif-chat-launch-card strong{color:#22233a!important}
.idif-layout-vibrant .idif-section p,.idif-layout-vibrant .idif-program-card p,.idif-layout-vibrant .idif-program-card small,.idif-layout-vibrant .idif-home-module p,.idif-layout-vibrant .idif-chat-launch-card p,.idif-layout-vibrant .idif-mini-feature-list{color:#67697b!important}
.idif-layout-vibrant .idif-kicker{color:#6b45df!important}
.idif-layout-vibrant .idif-program-image.idif-placeholder{background:linear-gradient(135deg,#ffd465,#f3a7c4 52%,#9de8d5)!important}
.idif-layout-vibrant .idif-program-card:nth-child(3n+1){border-top:4px solid #6d49df!important}.idif-layout-vibrant .idif-program-card:nth-child(3n+2){border-top:4px solid #19c49a!important}.idif-layout-vibrant .idif-program-card:nth-child(3n){border-top:4px solid #f0a72e!important}
.idif-layout-vibrant .idif-secondary-btn{background:#fff!important;color:#5136b4!important;border-color:rgba(81,54,180,.22)!important}
.idif-layout-vibrant .idif-chat-launch-card{background:linear-gradient(135deg,#f5f1ff,#effbf7)!important;border-color:rgba(107,69,223,.12)!important}
.idif-vibrant-community-row{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr);gap:18px;align-items:stretch;margin:22px 0}
.idif-vibrant-community-row>.idif-community-banner,.idif-vibrant-community-row>.idif-home-module{margin:0!important;height:100%;min-width:0}
.idif-vibrant-community-row .idif-community-banner{min-height:350px;border-radius:26px;box-shadow:0 16px 38px rgba(33,43,67,.12)}
.idif-layout-vibrant .idif-cta{position:relative;overflow:hidden;background:linear-gradient(100deg,#fff0c9,#f8e9ff 48%,#dff7ef)!important;border-color:rgba(107,69,223,.12)!important;box-shadow:0 15px 36px rgba(91,66,135,.08)!important}
.idif-layout-vibrant .idif-cta:after{content:"";position:absolute;width:120px;height:120px;right:-45px;top:-48px;border-radius:50%;background:rgba(244,111,97,.13)}
.idif-layout-vibrant .idif-cta h2{color:#27223c!important}.idif-layout-vibrant .idif-cta p{color:#6c6877!important}

/* Selector público de apariencia */
.idif-style-picker{margin:30px 0 14px;padding:clamp(20px,3vw,30px);border-radius:24px;background:rgba(255,255,255,.72);border:1px solid rgba(71,78,91,.14);box-shadow:0 12px 34px rgba(20,29,40,.06);backdrop-filter:blur(8px);color:#263238}
.idif-layout-classic .idif-style-picker{background:#0d1928;border-color:rgba(255,255,255,.12);color:#f3f7fb}
.idif-style-picker-head h2{margin:.3rem 0 .45rem;color:inherit;font-size:clamp(1.45rem,3vw,2rem)}
.idif-style-picker-head p{margin:0 0 18px;color:#68727d}.idif-layout-classic .idif-style-picker-head p{color:#99a7b8}
.idif-style-picker-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.idif-style-choice{display:flex;flex-direction:column;gap:10px;min-width:0;padding:10px;border:1px solid rgba(67,75,86,.14);border-radius:16px;background:#fff;color:#27313a!important;text-decoration:none!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.idif-style-choice:hover{transform:translateY(-2px);border-color:rgba(25,196,154,.55);box-shadow:0 10px 24px rgba(24,34,44,.08)}
.idif-style-choice.is-active{outline:2px solid #19b98e;outline-offset:1px}
.idif-style-preview{height:58px;border-radius:11px;position:relative;overflow:hidden;display:block;background:#0b1726}
.idif-style-preview i,.idif-style-preview b,.idif-style-preview em{position:absolute;display:block}
.idif-style-choice-classic .idif-style-preview{background:linear-gradient(135deg,#07111d,#15304c)}.idif-style-choice-classic .idif-style-preview i{inset:9px 36% 9px 9px;border-radius:7px;background:#17283c}.idif-style-choice-classic .idif-style-preview b{right:9px;top:9px;width:28%;height:16px;border-radius:999px;background:#22c899}
.idif-style-choice-warm .idif-style-preview{background:#f5eee5}.idif-style-choice-warm .idif-style-preview i{inset:8px 8px 8px 42%;border-radius:12px;background:#fffaf4}.idif-style-choice-warm .idif-style-preview b{left:8px;top:8px;width:28%;height:42px;border-radius:50%;background:#d8eee4}
.idif-style-choice-editorial .idif-style-preview{background:#f7fafc}.idif-style-choice-editorial .idif-style-preview i{left:8px;top:8px;bottom:8px;width:42%;background:#fff;border:1px solid #dfe5eb}.idif-style-choice-editorial .idif-style-preview b{right:8px;top:8px;width:42%;height:18px;background:#e9f1ed}.idif-style-choice-editorial .idif-style-preview em{right:8px;bottom:8px;width:42%;height:18px;background:#fff;border:1px solid #dfe5eb}
.idif-style-choice-community .idif-style-preview{background:#ecf5f1}.idif-style-choice-community .idif-style-preview i{inset:8px 8px 27px;background:#d8ece4;border-radius:9px}.idif-style-choice-community .idif-style-preview b{left:8px;right:54%;bottom:8px;height:13px;background:#21bd8f;border-radius:999px}
.idif-style-choice-vibrant .idif-style-preview{background:linear-gradient(135deg,#ffe8a8,#efdcff 52%,#c8f1e6)}.idif-style-choice-vibrant .idif-style-preview i{width:24px;height:24px;border-radius:50%;left:10px;top:9px;background:#f26f62}.idif-style-choice-vibrant .idif-style-preview b{width:36px;height:36px;border:8px solid #6d49df;border-radius:50%;right:9px;bottom:-7px}.idif-style-choice-vibrant .idif-style-preview em{left:42px;right:42px;bottom:14px;height:10px;border-top:3px solid #16bd91;border-radius:50%}
.idif-style-choice-copy{display:flex;flex-direction:column;gap:4px}.idif-style-choice-copy strong{font-size:.9rem;line-height:1.2}.idif-style-choice-copy small{font-size:.73rem;line-height:1.35;color:#75808b}.idif-style-current{margin-top:2px;font-size:.68rem;font-weight:850;color:#138a69}
.idif-style-reset{display:inline-block;margin-top:14px;color:inherit!important;font-size:.8rem;text-decoration:underline!important;text-underline-offset:3px}

@media(max-width:1050px){.idif-style-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.idif-vibrant-stage,.idif-vibrant-community-row{grid-template-columns:1fr}.idif-vibrant-stage .idif-home-hero{min-height:330px}}
@media(max-width:720px){.idif-style-picker-grid{grid-template-columns:1fr 1fr}.idif-home-v3.idif-layout-editorial{width:calc(100% - 12px)!important}.idif-vibrant-stage{padding-bottom:14px}.idif-layout-vibrant{padding-left:9px!important;padding-right:9px!important}.idif-vibrant-community-row{gap:12px;margin:14px 0}.idif-vibrant-stage:after{width:80px;height:80px;border-width:12px}}
@media(max-width:480px){.idif-style-picker-grid{grid-template-columns:1fr}.idif-style-choice{display:grid;grid-template-columns:92px 1fr;align-items:center}.idif-style-preview{height:62px}.idif-style-picker{padding:17px 14px;border-radius:18px}}


/* v0.4.8 · Plantilla Niñez con Alegría */
.idif-layout-kids{position:relative;background:radial-gradient(circle at 8% 12%,rgba(255,211,92,.22),transparent 18%),radial-gradient(circle at 92% 8%,rgba(88,191,255,.18),transparent 16%),linear-gradient(180deg,#fffdf7 0%,#f9fcff 42%,#fff9ff 100%);padding-inline:14px;color:#25333c}
.idif-layout-kids .idif-kicker{color:#ff7b55!important;letter-spacing:.22em}
.idif-layout-kids .idif-home-hero{background:linear-gradient(135deg,#fff7b8 0%,#fff0d9 42%,#e3f8ff 100%)!important;border:1px solid rgba(105,111,132,.12)!important;box-shadow:0 18px 40px rgba(80,76,116,.09)!important;position:relative;overflow:hidden}
.idif-layout-kids .idif-home-hero:before{content:'';position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(255,122,122,.16);right:-55px;top:-48px}
.idif-layout-kids .idif-home-hero:after{content:'';position:absolute;left:38px;bottom:-34px;width:180px;height:62px;border:4px solid rgba(86,157,255,.28);border-color:rgba(86,157,255,.28) transparent transparent transparent;border-radius:50%}
.idif-layout-kids .idif-home-hero h1,.idif-layout-kids .idif-home-hero p,.idif-layout-kids .idif-section h2,.idif-layout-kids .idif-home-module h2,.idif-layout-kids .idif-program-card h3,.idif-layout-kids .idif-now h2,.idif-layout-kids .idif-chat-launch-card strong{color:#223346!important}
.idif-layout-kids .idif-home-hero p,.idif-layout-kids .idif-section p,.idif-layout-kids .idif-home-module p,.idif-layout-kids .idif-program-card p,.idif-layout-kids .idif-program-card small,.idif-layout-kids .idif-now p,.idif-layout-kids .idif-chat-launch-card p,.idif-layout-kids .idif-mini-feature-list{color:#61717d!important}
.idif-layout-kids .idif-section,.idif-layout-kids .idif-live-card,.idif-layout-kids .idif-home-module,.idif-layout-kids .idif-program-card{background:rgba(255,255,255,.94)!important;border:1px solid rgba(87,103,124,.12)!important;box-shadow:0 12px 28px rgba(93,87,126,.07)!important;border-radius:22px!important}
.idif-layout-kids .idif-program-card{overflow:hidden;position:relative}.idif-layout-kids .idif-program-card:nth-child(3n+1){border-top:5px solid #ff8d67!important}.idif-layout-kids .idif-program-card:nth-child(3n+2){border-top:5px solid #24c39a!important}.idif-layout-kids .idif-program-card:nth-child(3n){border-top:5px solid #5a7dff!important}
.idif-layout-kids .idif-program-image.idif-placeholder{background:linear-gradient(135deg,#ffe680,#ffd4df 44%,#c9f5ff)!important}
.idif-layout-kids .idif-primary-btn{background:#27c39d!important;color:#05271f!important}.idif-layout-kids .idif-secondary-btn{background:#fff!important;color:#406189!important;border-color:rgba(64,97,137,.18)!important}
.idif-layout-kids .idif-chat-launch-card{background:linear-gradient(135deg,#fff8e8,#f2fbff)!important;border-color:rgba(87,103,124,.12)!important}
.idif-layout-kids .idif-community-banner{border-radius:24px!important;box-shadow:0 18px 34px rgba(55,52,84,.09)!important}
.idif-layout-kids .idif-cta{background:linear-gradient(135deg,#fff2b6,#ffe4f0 52%,#dff7ff)!important;border-color:rgba(87,103,124,.12)!important;box-shadow:0 16px 34px rgba(93,87,126,.08)!important}.idif-layout-kids .idif-cta h2{color:#233348!important}.idif-layout-kids .idif-cta p{color:#66747e!important}
.idif-layout-kids .idif-host{color:#4a6a58!important}.idif-layout-kids .idif-style-picker{background:rgba(255,255,255,.9)!important;color:#223346!important}
.idif-kids-stage{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:18px;align-items:stretch;margin:8px 0 18px}.idif-kids-stage-main{display:grid;gap:18px}
.idif-kids-showcase{display:grid;grid-template-columns:1fr;gap:16px;padding:22px;border-radius:26px;background:linear-gradient(145deg,#ffffff 0%,#fff7ef 45%,#f0fbff 100%);border:1px solid rgba(87,103,124,.12);box-shadow:0 14px 32px rgba(93,87,126,.08);position:relative;overflow:hidden}.idif-kids-showcase:before{content:'';position:absolute;right:-28px;top:-22px;width:120px;height:120px;border-radius:50%;background:rgba(255,169,83,.16)}.idif-kids-showcase:after{content:'';position:absolute;left:-30px;bottom:-24px;width:110px;height:110px;border-radius:50%;background:rgba(90,125,255,.11)}
.idif-kids-showcase-copy h2{margin:.35rem 0 .5rem;color:#223346;font-size:clamp(1.45rem,3vw,2rem)}.idif-kids-showcase-copy p{margin:0;color:#61717d;line-height:1.65}.idif-kids-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.idif-kids-badges span{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid rgba(87,103,124,.13);font-size:.88rem;font-weight:700;color:#3d5a7b}
.idif-kids-illustration-card{background:linear-gradient(135deg,#fff7b8 0%,#ffe7f3 50%,#daf7ff 100%);border-radius:22px;padding:10px;border:1px solid rgba(87,103,124,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)}.idif-kids-illustration-card img{display:block;width:100%;height:auto;border-radius:18px}
.idif-style-choice-kids .idif-style-preview{background:linear-gradient(135deg,#fff4a5,#ffe2ef 50%,#cff4ff)}.idif-style-choice-kids .idif-style-preview i{width:22px;height:22px;border-radius:50%;left:10px;top:9px;background:#ff7b55}.idif-style-choice-kids .idif-style-preview b{width:38px;height:12px;border-radius:999px;right:10px;top:16px;background:#25c39b}.idif-style-choice-kids .idif-style-preview em{left:36px;right:28px;bottom:10px;height:18px;background:transparent;border-bottom:3px solid #5a7dff;border-radius:0 0 28px 28px}
@media(max-width:1100px){.idif-kids-stage{grid-template-columns:1fr}.idif-kids-showcase{order:2}}
@media(max-width:720px){.idif-layout-kids{padding-left:9px!important;padding-right:9px!important}.idif-kids-showcase{padding:18px;border-radius:20px}.idif-kids-badges span{font-size:.82rem}}


/* v0.4.9 · Ajustes de color y legibilidad para Niñez con Alegría */
.idif-layout-kids{background:radial-gradient(circle at 10% 10%,rgba(255,234,168,.34),transparent 18%),radial-gradient(circle at 88% 16%,rgba(255,255,255,.18),transparent 14%),linear-gradient(180deg,#ff8c24 0%,#ffae36 38%,#ffc85b 100%)!important;color:#233348}
.idif-layout-kids .idif-home-hero{background:linear-gradient(135deg,#fff2a8 0%,#ffe6c3 44%,#dbf6ff 100%)!important}
.idif-layout-kids .idif-kids-showcase{background:linear-gradient(145deg,#fffaf0 0%,#fff2e2 42%,#f5fbff 100%)!important}
.idif-layout-kids .idif-kids-showcase-copy h2{color:#20334a!important}.idif-layout-kids .idif-kids-showcase-copy p{color:#4f6070!important;font-weight:600}
.idif-layout-kids .idif-kids-badges span{color:#24446a!important;background:#ffffff!important;border-color:rgba(74,99,129,.16)!important}
.idif-layout-kids .idif-community-banner-copy h2,.idif-layout-kids .idif-community-banner-copy p,.idif-layout-kids .idif-community-banner-copy .idif-kicker{color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.28)}
.idif-layout-kids .idif-section h2,.idif-layout-kids .idif-home-module h2,.idif-layout-kids .idif-program-card h3,.idif-layout-kids .idif-now h2,.idif-layout-kids .idif-chat-launch-card strong,.idif-layout-kids .idif-time,.idif-layout-kids .idif-clock,.idif-layout-kids .idif-program-info h3,.idif-layout-kids .idif-timeline-item .idif-time,.idif-layout-kids .idif-timeline-item h3{color:#223346!important}
.idif-layout-kids .idif-section p,.idif-layout-kids .idif-home-module p,.idif-layout-kids .idif-program-card p,.idif-layout-kids .idif-program-card small,.idif-layout-kids .idif-now p,.idif-layout-kids .idif-chat-launch-card p,.idif-layout-kids .idif-mini-feature-list,.idif-layout-kids .idif-program-info p,.idif-layout-kids .idif-timeline-host,.idif-layout-kids .idif-timeline-range,.idif-layout-kids .idif-next,.idif-layout-kids .idif-state-label,.idif-layout-kids .idif-music-note{color:#5d6d7a!important}
.idif-layout-kids .idif-live-card{background:linear-gradient(145deg,#fffdf8,#fff4dd)!important;border-color:rgba(87,103,124,.12)!important}
.idif-layout-kids .idif-now{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,251,242,.94))!important}
.idif-layout-kids .idif-now-thumb{border-color:rgba(74,99,129,.16)!important;box-shadow:0 10px 22px rgba(93,87,126,.09)!important}
.idif-layout-kids .idif-timeline-item{background:#fffefb!important;border-color:rgba(87,103,124,.14)!important;box-shadow:0 10px 22px rgba(93,87,126,.06)!important}
.idif-layout-kids .idif-timeline-item.current{background:linear-gradient(180deg,#fff8dd,#fffefb 60%)!important;border-color:rgba(39,195,157,.46)!important;box-shadow:0 12px 26px rgba(93,87,126,.08),inset 0 0 0 1px rgba(39,195,157,.12)!important}
.idif-layout-kids .idif-timeline-item.is-music{background:linear-gradient(145deg,#fff7e5,#f4fdff)!important}
.idif-layout-kids .idif-timeline-item .idif-state-label{background:rgba(34,51,70,.06)!important}.idif-layout-kids .idif-timeline-item.current .idif-state-label{background:#27c39d!important;color:#04241b!important}.idif-layout-kids .idif-timeline-item.upcoming .idif-state-label{background:rgba(39,195,157,.12)!important;color:#14775f!important}
.idif-layout-kids .idif-timeline-progress{background:rgba(34,51,70,.08)!important}.idif-layout-kids .idif-timeline-progress span{background:#27c39d!important}
.idif-layout-kids .idif-link,.idif-layout-kids .idif-open-program{color:#0d5f4b!important;font-weight:800}
.idif-layout-kids .idif-player-wrap{background:linear-gradient(145deg,#fff4d7,#ffe9c1)!important}


/* v0.4.10 · Fondo exterior completo para Niñez con Alegría */
body.idifusion-home-layout-kids,
body.idifusion-home-layout-kids .idifusion-official-home-main,
body.idifusion-home-layout-kids .idifusion-official-home-article,
body.idifusion-home-layout-kids .idifusion-official-home-content{background:#ff9b2d!important}
body.idifusion-home-layout-kids .entry-content,
body.idifusion-home-layout-kids .wp-block-post-content{background:transparent!important}
body.idifusion-home-layout-kids .idif-home-v3.idif-layout-kids{background:transparent!important}


/* v0.4.12 · Colaboración dentro del Panel de Locutor y moderación de chat */
.idif-collaboration-nav{border:1px solid rgba(32,201,151,.24)!important;background:rgba(32,201,151,.09)!important;color:#bff7e7!important;font-weight:800}
.idif-collaboration-panel{position:relative;overflow:hidden}
.idif-collaboration-panel:before{content:"";position:absolute;right:-48px;top:-52px;width:150px;height:150px;border-radius:50%;background:rgba(32,201,151,.065);pointer-events:none}
.idif-collab-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:17px 0 20px}
.idif-collab-permission-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:15px;border:1px solid var(--idif-line);border-radius:14px;background:#0a1421}
.idif-collab-permission-card>strong{color:var(--idif-text);font-size:.98rem}
.idif-collab-permission-card p{color:var(--idif-muted);font-size:.86rem;line-height:1.45;margin:6px 0 10px;flex:1}
.idif-collab-permission-card .idif-secondary-btn{margin-top:auto}
.idif-chat-moderation-box{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:16px;border:1px solid rgba(32,201,151,.25);background:linear-gradient(135deg,rgba(32,201,151,.09),rgba(14,36,49,.78));margin-top:16px}
.idif-chat-moderation-box h4{margin:4px 0 6px;color:var(--idif-text);font-size:1.15rem}.idif-chat-moderation-box p{margin:0;color:var(--idif-muted);max-width:690px}.idif-chat-moderation-box .idif-primary-btn{margin:0;white-space:nowrap}
.idif-chat-removed-list{margin-top:18px}.idif-chat-removed-list>h4{margin:0 0 10px;color:var(--idif-text)}
.idif-chat-removed-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;align-items:center;padding:12px 14px;border-radius:13px;border:1px solid var(--idif-line);background:#09131f;margin-top:8px}
.idif-chat-removed-item strong{display:inline-block;color:var(--idif-text);margin-right:8px}.idif-chat-removed-item small{color:var(--idif-muted)}.idif-chat-removed-item p{margin:5px 0 0;color:var(--idif-muted);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:720px}.idif-chat-removed-item .idif-secondary-btn{margin:0}
.idif-chat-moderatable{position:relative!important;padding-right:78px!important}
.idif-chat-mod-delete{position:absolute;right:7px;top:50%;transform:translateY(-50%);z-index:8;border:1px solid rgba(255,100,112,.35);background:#3a1720;color:#ffd9dc;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 5px 14px rgba(0,0,0,.18)}
.idif-chat-mod-delete:hover{background:#56212c;color:#fff}.idif-chat-mod-delete:disabled{opacity:.55;cursor:wait}
.idif-chat-message-removed{display:none!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-modal-dialog{box-shadow:0 0 0 2px rgba(255,100,112,.22),0 30px 100px rgba(0,0,0,.45)}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-short-title:after{content:" · Modo moderación";color:#ff9ba3;font-weight:800}
@media(max-width:920px){.idif-collab-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.idif-collab-permission-grid{grid-template-columns:1fr}.idif-chat-moderation-box{align-items:stretch;flex-direction:column}.idif-chat-moderation-box .idif-primary-btn{width:100%}.idif-chat-removed-item{grid-template-columns:1fr}.idif-chat-removed-item .idif-secondary-btn{width:100%}.idif-chat-moderatable{padding-right:70px!important}.idif-chat-mod-delete{right:5px;padding:5px 7px}}


/* v0.4.13 · Panel público de colaboradores */
body.idifusion-page-colaboracion{background:#07111c!important}
body.idifusion-page-colaboracion .idifusion-official-home-main,body.idifusion-page-colaboracion .idifusion-official-home-article,body.idifusion-page-colaboracion .idifusion-official-home-content{background:#07111c!important}
.idif-public-collab{width:min(1240px,calc(100% - 28px));margin:22px auto 34px;color:#edf5fb;font-family:inherit}
.idif-public-collab-login{min-height:calc(100svh - 230px);display:flex;align-items:center;justify-content:center}
.idif-collab-login-card{width:min(520px,100%);padding:28px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(145deg,#0f1d2d,#0a1522);box-shadow:0 20px 60px rgba(0,0,0,.25)}
.idif-collab-login-card h1,.idif-collab-public-head h1{margin:.35rem 0 .6rem;color:#f4f8fb;font-size:clamp(1.8rem,4vw,2.7rem)}
.idif-collab-login-card p,.idif-collab-public-head p{color:#aab8c6;line-height:1.6}
.idif-collab-login-card form p{margin:0 0 14px}.idif-collab-login-card label{display:block;color:#dce8f1;font-weight:700;margin-bottom:6px}
.idif-collab-login-card input[type=text],.idif-collab-login-card input[type=password]{width:100%;min-height:46px;padding:10px 12px;border-radius:11px;border:1px solid rgba(255,255,255,.13);background:#07111c;color:#fff}
.idif-collab-login-card .login-remember label{font-weight:500;display:flex;gap:8px;align-items:center}.idif-collab-login-card .button-primary{border:0;border-radius:11px;background:#20c997;color:#04110d;font-weight:850;padding:12px 18px;cursor:pointer}
.idif-collab-public-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(135deg,#0e2230,#0c1826)}
.idif-collab-public-head-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.idif-collab-public-head-actions .idif-secondary-btn{margin:0}
.idif-collab-public-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.idif-collab-public-nav-card{display:flex;flex-direction:column;gap:6px;min-height:116px;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#0c1826;text-decoration:none!important;color:#eef5fb!important;transition:.16s ease}
.idif-collab-public-nav-card:hover,.idif-collab-public-nav-card.is-active{transform:translateY(-2px);border-color:rgba(32,201,151,.42);background:#102131}.idif-collab-public-nav-card span{font-weight:850;font-size:1rem}.idif-collab-public-nav-card small{color:#9eafbd;font-size:.82rem;line-height:1.45}
.idif-collab-security-note{padding:13px 16px;border-radius:13px;background:rgba(32,201,151,.08);border:1px solid rgba(32,201,151,.2);color:#bfeadd;font-size:.88rem}
.idif-collab-public-tool{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#0a1522;overflow:hidden}.idif-collab-tool-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;color:#eaf4fa}.idif-collab-tool-top .idif-secondary-btn{margin:0}
.idif-public-tool-card{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#0d1b2a;margin:0 0 14px}.idif-public-tool-card h2,.idif-public-tool-card h3{color:#f1f7fb;margin:.35rem 0 .55rem}.idif-public-tool-card p{color:#a6b6c4}.idif-public-tool-card .idif-primary-btn{margin-top:8px}
.idif-public-program-list{display:grid;gap:14px}.idif-public-program-editor{margin:0}.idif-public-program-head{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;margin-bottom:16px}.idif-public-program-head img,.idif-public-program-placeholder{display:block;width:120px;height:82px;object-fit:cover;border-radius:12px;background:#14283b}.idif-public-program-placeholder{display:grid;place-items:center;color:#a8b8c7;font-weight:900}.idif-public-program-head h3{margin:.2rem 0;color:#f4f8fb}.idif-public-program-head p{margin:0;color:#9fb0bd}
.idif-public-form label{display:block;color:#dce7ef;font-weight:750;margin-bottom:12px}.idif-public-form input[type=text],.idif-public-form input[type=url],.idif-public-form input[type=email],.idif-public-form input[type=number],.idif-public-form input[type=password],.idif-public-form input[type=file],.idif-public-form select,.idif-public-form textarea,.idif-public-collab .wrap input[type=text],.idif-public-collab .wrap input[type=url],.idif-public-collab .wrap input[type=email],.idif-public-collab .wrap input[type=number],.idif-public-collab .wrap input[type=password],.idif-public-collab .wrap input[type=file],.idif-public-collab .wrap select,.idif-public-collab .wrap textarea{width:100%;margin-top:6px;min-height:42px;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:#07111c;color:#edf5fb;padding:9px 11px;box-sizing:border-box}
.idif-public-schedule-summary{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 16px;color:#a7b5c2}.idif-public-schedule-summary strong{width:100%;color:#dfe9f0}.idif-public-schedule-summary span{padding:6px 9px;border-radius:999px;background:rgba(32,201,151,.09);border:1px solid rgba(32,201,151,.16)}
/* Convierte las herramientas administrativas reutilizadas a una interfaz pública */
.idif-public-collab .wrap{margin:0!important;color:#eaf3f9}.idif-public-collab .wrap>h1{color:#f4f8fb!important;font-size:1.65rem}.idif-public-collab .wrap>p,.idif-public-collab .description{color:#9eafbd!important}.idif-public-collab .card{max-width:none!important;background:#0d1b2a!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:15px!important;box-shadow:none!important;color:#e8f1f7!important}.idif-public-collab .card h2,.idif-public-collab .card h3{color:#f1f7fb!important}
.idif-public-collab table.widefat,.idif-public-collab table.form-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:13px!important;overflow:hidden!important;background:#0c1826!important;color:#dce6ee!important}.idif-public-collab table.widefat th,.idif-public-collab table.widefat td,.idif-public-collab table.form-table th,.idif-public-collab table.form-table td{padding:11px 12px!important;border-bottom:1px solid rgba(255,255,255,.075)!important;text-align:left;vertical-align:top;color:#dce6ee!important}.idif-public-collab table.widefat th,.idif-public-collab table.form-table th{background:#102131!important;color:#f0f6fa!important;font-weight:800}.idif-public-collab table.widefat tr:last-child td{border-bottom:0!important}
.idif-public-collab .button,.idif-public-collab .button-primary,.idif-public-collab input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px!important;border-radius:9px!important;border:1px solid rgba(255,255,255,.15)!important;background:#13263a!important;color:#eef6fb!important;text-decoration:none!important;font-weight:750;box-shadow:none!important;cursor:pointer}.idif-public-collab .button-primary,.idif-public-collab input.button-primary[type=submit]{background:#20c997!important;border-color:#20c997!important;color:#04110d!important}.idif-public-collab .notice{padding:10px 13px;border-radius:10px;margin:12px 0;border:1px solid rgba(255,255,255,.12);background:#102131;color:#dce8f0}.idif-public-collab .notice-success{border-color:rgba(32,201,151,.32);background:rgba(32,201,151,.09)}.idif-public-collab .notice-error{border-color:rgba(255,100,112,.32);background:rgba(255,100,112,.08)}
@media(max-width:900px){.idif-collab-public-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.idif-collab-public-head{flex-direction:column}.idif-collab-public-head-actions{justify-content:flex-start}.idif-public-collab .wrap{overflow-x:auto}}
@media(max-width:620px){.idif-public-collab{width:calc(100% - 16px);margin-top:12px}.idif-collab-public-nav{grid-template-columns:1fr}.idif-collab-public-tool{padding:12px}.idif-collab-tool-top{align-items:flex-start;flex-direction:column}.idif-public-program-head{grid-template-columns:84px 1fr}.idif-public-program-head img,.idif-public-program-placeholder{width:84px;height:70px}.idif-public-collab .idif-fields-2{grid-template-columns:1fr}.idif-public-collab table.widefat{min-width:760px}}


/* v0.4.15 · Controles de moderación visibles aun con estilos del chat externo */
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-moderatable{position:relative!important;padding-right:104px!important;overflow:visible!important;min-height:42px}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-delete{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;position:absolute!important;right:8px!important;top:50%!important;transform:translateY(-50%)!important;z-index:999!important;min-width:88px!important;min-height:30px!important;border:1px solid #ff6672!important;background:#5a1821!important;color:#fff!important;border-radius:9px!important;padding:6px 9px!important;font-size:11px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important;box-shadow:0 5px 15px rgba(0,0,0,.28)!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-delete:hover{background:#7a202c!important}
@media(max-width:620px){.idif-chat-modal[data-idif-moderation="1"] .idif-chat-moderatable{padding-right:82px!important}.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-delete{min-width:68px!important;font-size:10px!important;padding:5px 6px!important}}


/* v0.4.16 · Botón de moderación compacto y retiro persistente */
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-moderatable{position:relative!important;padding-right:0!important;padding-bottom:34px!important;overflow:visible!important;min-height:52px!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-delete{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;position:absolute!important;left:auto!important;right:4px!important;top:auto!important;bottom:3px!important;transform:none!important;width:auto!important;min-width:72px!important;max-width:78px!important;height:25px!important;min-height:25px!important;max-height:25px!important;margin:0!important;padding:3px 7px!important;border:1px solid rgba(255,100,112,.58)!important;background:#4f1720!important;color:#fff!important;border-radius:8px!important;font-size:10px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:0 3px 10px rgba(0,0,0,.18)!important;z-index:50!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-delete:hover{background:#741e2b!important}
@media(max-width:620px){.idif-chat-modal[data-idif-moderation="1"] .idif-chat-moderatable{padding-right:0!important;padding-bottom:33px!important}.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-delete{right:3px!important;bottom:3px!important;min-width:68px!important;max-width:74px!important;height:24px!important;min-height:24px!important;font-size:9.5px!important;padding:3px 6px!important}}

/* v0.4.21 · Seguridad del chat: herramientas compactas y honeypot invisible */
.idif-chat-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-moderatable{position:relative!important;padding-right:0!important;padding-bottom:36px!important;overflow:visible!important;min-height:54px!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools{position:absolute!important;right:4px!important;bottom:3px!important;z-index:60!important;display:flex!important;align-items:center!important;gap:5px!important;width:auto!important;max-width:100%!important;margin:0!important;padding:0!important;background:transparent!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-delete,
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-block{position:static!important;inset:auto!important;transform:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:68px!important;max-width:none!important;height:25px!important;min-height:25px!important;max-height:25px!important;margin:0!important;padding:3px 7px!important;border-radius:8px!important;font-size:10px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:0 3px 10px rgba(0,0,0,.18)!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-delete{border:1px solid rgba(255,100,112,.58)!important;background:#4f1720!important;color:#fff!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-block{border:1px solid rgba(255,190,90,.58)!important;background:#493111!important;color:#fff4d6!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-delete:hover{background:#741e2b!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-block:hover{background:#684818!important}
.idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools button:disabled{opacity:.58!important;cursor:wait!important}
@media(max-width:620px){
  .idif-chat-modal[data-idif-moderation="1"] .idif-chat-moderatable{padding-bottom:35px!important}
  .idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools{right:3px!important;gap:4px!important}
  .idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-delete,
  .idif-chat-modal[data-idif-moderation="1"] .idif-chat-mod-tools .idif-chat-mod-block{min-width:62px!important;height:24px!important;min-height:24px!important;font-size:9px!important;padding:3px 5px!important}
}
