/*
Theme Name: ReyfFix
Theme URI: https://alhauringr.com/
Author: REYTONI
Description: Tema visual principal para Turnos Técnicos de Cultura. Gestiona la portada, cabecera elegante, navegación interna y estilo gráfico general, dejando a los plugins solo la lógica funcional.
Version: 2.0.19
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: reyffix
*/
:root{--rfx-bg:#070916;--rfx-bg2:#0f172a;--rfx-card:rgba(15,23,42,.62);--rfx-card2:rgba(255,255,255,.08);--rfx-text:#f8fafc;--rfx-muted:rgba(226,232,240,.72);--rfx-border:rgba(255,255,255,.14);--rfx-accent:#f59e0b;--rfx-accent2:#d946ef;--rfx-soft:#f8fafc;--rfx-ink:#111827;--rfx-radius:28px;--rfx-shadow:0 28px 70px rgba(0,0,0,.34)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.rfx-body{margin:0;background:#f3f6fb;color:#111827;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.5}.rfx-site{min-height:100vh;display:flex;flex-direction:column}.rfx-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(15,23,42,.08)}body.admin-bar .rfx-header{top:32px}.rfx-header-inner{width:100%;max-width:1880px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px clamp(16px,2.2vw,36px)}.rfx-brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:#111827;min-width:260px}.rfx-brand-mark{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.10);overflow:hidden;border:1px solid rgba(15,23,42,.08)}.rfx-brand-mark img{width:100%;height:100%;object-fit:contain;padding:5px}.rfx-brand-text strong{display:block;font-size:1.08rem;line-height:1.05;font-weight:950;letter-spacing:.01em}.rfx-brand-text small{display:block;color:#64748b;font-size:.82rem;margin-top:3px}.rfx-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.rfx-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rfx-menu a,.rfx-menu summary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;border-radius:999px;text-decoration:none;color:#334155;background:rgba(248,250,252,.92);border:1px solid transparent;font-weight:850;font-size:.94rem;cursor:pointer;white-space:nowrap}.rfx-menu a:hover,.rfx-menu summary:hover,.rfx-menu .current-menu-item>a{background:#fff;border-color:rgba(245,158,11,.36);color:#0f172a;box-shadow:0 10px 24px rgba(15,23,42,.08)}.rfx-menu details{position:relative}.rfx-menu details[open] summary{background:#fff}.rfx-submenu{position:absolute;top:calc(100% + 8px);right:0;z-index:20;list-style:none;margin:0;padding:8px;min-width:245px;border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(15,23,42,.18);border:1px solid rgba(15,23,42,.08)}.rfx-submenu li a{display:flex;justify-content:flex-start;width:100%;border-radius:14px;background:transparent}.rfx-profile-link img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid rgba(245,158,11,.55);box-shadow:0 10px 24px rgba(15,23,42,.16)}.rfx-main{flex:1;width:100%;}.rfx-container{width:100%;max-width:1880px;margin:0 auto;padding:clamp(12px,1.8vw,28px)}.rfx-content{width:100%;}.rfx-footer{border-top:1px solid rgba(15,23,42,.08);background:#fff;color:#64748b}.rfx-footer-inner{max-width:1880px;margin:0 auto;padding:18px clamp(16px,2.2vw,36px);display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.rfx-home{min-height:100vh;background:#050714;color:#fff;position:relative;overflow:hidden}.rfx-home-hero{position:relative;min-height:760px;padding:26px clamp(18px,4vw,76px) 72px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.rfx-home-bg{position:absolute;inset:-30px;z-index:-3;background-image:var(--rfx-hero);background-size:cover;background-position:center center;filter:saturate(1.12) contrast(1.08);transform:scale(1.045);animation:rfxHeroBreath 26s ease-in-out infinite alternate}.rfx-home-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(3,6,16,.86) 0%,rgba(3,6,16,.56) 35%,rgba(3,6,16,.18) 66%,rgba(3,6,16,.58) 100%),linear-gradient(180deg,rgba(3,6,16,.18) 0%,rgba(3,6,16,.34) 64%,rgba(3,6,16,.94) 100%)}.rfx-home-hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(105deg,transparent 44%,rgba(255,178,92,.0) 49%,rgba(255,178,92,.32) 53%,rgba(217,70,239,.18) 58%,transparent 68%);mix-blend-mode:screen;animation:rfxLightSweep 12s ease-in-out infinite}.rfx-home-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-radius:28px;background:rgba(15,23,42,.55);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 80px rgba(0,0,0,.32)}.rfx-home-brand{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none}.rfx-home-brand .rfx-brand-mark{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.16)}.rfx-home-brand strong{display:block;color:#fff;font-size:1.06rem;font-weight:950}.rfx-home-brand small{display:block;color:rgba(226,232,240,.72);font-size:.80rem}.rfx-home-topbar .rfx-menu a,.rfx-home-topbar .rfx-menu summary{background:rgba(255,255,255,.08);color:rgba(255,255,255,.92);border-color:transparent}.rfx-home-topbar .rfx-menu a:hover,.rfx-home-topbar .rfx-menu summary:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.16);color:#fff}.rfx-hero-copy{max-width:780px;padding:clamp(42px,8vh,110px) 0 0;text-shadow:0 18px 60px rgba(0,0,0,.74)}.rfx-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.85);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.rfx-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(46px,6vw,96px);line-height:.94;letter-spacing:-.055em;margin:24px 0 18px;color:#fff}.rfx-hero-copy p{max-width:650px;margin:0;color:rgba(248,250,252,.82);font-size:clamp(17px,1.45vw,22px);line-height:1.55;font-weight:500}.rfx-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.rfx-btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:14px 22px;border-radius:16px;text-decoration:none;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.09);backdrop-filter:blur(12px);box-shadow:0 18px 40px rgba(0,0,0,.24)}.rfx-btn.primary{background:linear-gradient(135deg,#f59e0b,#d946ef);border-color:transparent}.rfx-btn:hover{transform:translateY(-1px);box-shadow:0 22px 52px rgba(0,0,0,.32)}.rfx-home-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 auto;max-width:1500px;position:relative;z-index:5}.rfx-home-card{display:flex;gap:18px;align-items:flex-start;padding:28px;border-radius:24px;background:rgba(15,23,42,.58);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.13);box-shadow:0 20px 70px rgba(0,0,0,.26);text-decoration:none;color:#fff;min-height:170px}.rfx-card-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;border:1px solid rgba(217,70,239,.45);color:#fb923c;font-size:30px;flex:0 0 auto}.rfx-home-card h2{margin:4px 0 8px;font-size:1.22rem;color:#fff}.rfx-home-card p{margin:0;color:rgba(226,232,240,.72)}.rfx-home-card:hover{transform:translateY(-2px);background:rgba(15,23,42,.70)}.rfx-particles{position:absolute;inset:0;pointer-events:none;z-index:1;background-image:radial-gradient(circle,rgba(255,219,157,.9) 0 1px,transparent 1.5px),radial-gradient(circle,rgba(217,70,239,.8) 0 1px,transparent 1.5px);background-size:220px 220px,310px 310px;background-position:12% 18%,70% 30%;opacity:.22;animation:rfxParticles 18s linear infinite}.rfx-content .tt-public-shell,.rfx-content .tt-main-portal,.rfx-content .tt-card-section,.rfx-content .tag-ch-app,.rfx-content .tga-accesos-app,.rfx-content .reytoni-mp-app,.rfx-content .ttc-pv-app{width:100%!important;max-width:1200px!important;margin-left:auto!important;margin-right:auto!important}.rfx-content .tt-public-table-scroll,.rfx-content .tt-month-board-wrap,.rfx-content .tt-admin-board-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.rfx-content .tt-public-week-table{min-width:980px}.rfx-content .tt-theatre-topbar,.rfx-content .reytoni-page-shell>h1,.rfx-content .reytoni-page-shell>p,.rfx-content .tag-ch-header,.rfx-content .ttc-pv-header,.rfx-content .tga-accesos-header{display:none!important}.rfx-content .reytoni-page-shell{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}.rfx-page-title{max-width:1200px;margin:0 auto 18px;padding:30px;border-radius:28px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);box-shadow:0 16px 40px rgba(15,23,42,.06)}.rfx-page-title h1{margin:0;font-size:clamp(32px,4vw,56px);letter-spacing:-.04em}.rfx-page-title p{margin:8px 0 0;color:#64748b}.rfx-content .tt-profile-premium-wrap,.rfx-content .tt-profile-section,.rfx-content .tt-profile-card{max-width:920px!important;margin-left:auto!important;margin-right:auto!important}.rfx-content img{max-width:100%;height:auto}@keyframes rfxHeroBreath{0%{transform:scale(1.045) translate3d(-.5%,0,0)}100%{transform:scale(1.075) translate3d(.6%,-.4%,0)}}@keyframes rfxLightSweep{0%,35%{transform:translateX(-55%);opacity:0}48%,64%{opacity:.9}100%{transform:translateX(55%);opacity:0}}@keyframes rfxParticles{0%{background-position:12% 18%,70% 30%}100%{background-position:34% 46%,48% 60%}}
@media(max-width:1000px){body.admin-bar .rfx-header{top:0}.rfx-header{position:relative}.rfx-header-inner,.rfx-home-topbar{align-items:flex-start;flex-direction:column}.rfx-nav{width:100%;justify-content:flex-start;overflow:auto;padding-bottom:4px}.rfx-menu{flex-wrap:nowrap}.rfx-home-cards{grid-template-columns:1fr}.rfx-home-hero{min-height:720px;padding:18px 18px 52px}.rfx-hero-copy{padding-top:70px}.rfx-submenu{left:0;right:auto}.rfx-content .tt-public-week-table{min-width:860px}}@media(max-width:640px){.rfx-brand-mark{width:46px;height:46px}.rfx-brand-text strong{font-size:.98rem}.rfx-menu a,.rfx-menu summary{min-height:38px;padding:8px 12px;font-size:.88rem}.rfx-home-hero{min-height:680px}.rfx-hero-copy h1{font-size:clamp(42px,13vw,64px)}.rfx-home-card{padding:20px}.rfx-card-icon{width:56px;height:56px;font-size:24px}.rfx-container{padding:8px}}@media print{.rfx-header,.rfx-footer,.rfx-home-topbar,.no-print{display:none!important}.rfx-container{max-width:100%;padding:0}.rfx-main{background:#fff}.rfx-content .tt-public-shell{max-width:none!important}}
/* ReyfFix oculta cabeceras internas antiguas de plugins activos. */
.rfx-content .reytoni-coord-header,
.rfx-content .reytoni-perfil-head,
.rfx-content .tga-accesos-header,
.rfx-content .tag-ch-header,
.rfx-content .ttc-pv-header{display:none!important}
.rfx-content .reytoni-perfil{max-width:920px;margin:0 auto}.rfx-content .reytoni-preview.firma{min-height:220px;display:flex;align-items:center;justify-content:center}.rfx-content .reytoni-preview.firma img{max-width:100%;max-height:210px;object-fit:contain}


/* ReyfFix 2.0.1 - menú Gestiona antes del perfil y submenu legible */
.rfx-menu .rfx-submenu{background:#ffffff!important;color:#0f172a!important;}
.rfx-menu .rfx-submenu li a,
.rfx-home-topbar .rfx-menu .rfx-submenu li a{color:#0f172a!important;background:transparent!important;text-shadow:none!important;font-weight:850;justify-content:flex-start;}
.rfx-menu .rfx-submenu li a:hover,
.rfx-home-topbar .rfx-menu .rfx-submenu li a:hover{background:#f1f5f9!important;color:#020617!important;box-shadow:none!important;}
.rfx-menu .rfx-gestiona summary{gap:8px;}
.rfx-menu .rfx-gestiona summary:after{content:'▾';font-size:.7em;opacity:.75;}
.rfx-profile-link{padding:4px!important;min-width:50px!important;}

/* ReyfFix 2.0.4 - contraste de formularios de acceso y separación de responsabilidades */
.rfx-content .reytoni-access-app,
.rfx-content .reytoni-profile-app{width:100%;max-width:1200px;margin:0 auto;}
.rfx-content .reytoni-access-card,
.rfx-content .reytoni-profile-card{color:#0f172a!important;background:rgba(255,255,255,.94)!important;border:1px solid rgba(15,23,42,.08)!important;box-shadow:0 20px 60px rgba(15,23,42,.10)!important;}
.rfx-content .reytoni-access-card h2,
.rfx-content .reytoni-access-card h3,
.rfx-content .reytoni-access-card p,
.rfx-content .reytoni-access-card label,
.rfx-content .reytoni-profile-card h2,
.rfx-content .reytoni-profile-card h3,
.rfx-content .reytoni-profile-card p,
.rfx-content .reytoni-profile-card label{color:#0f172a!important;text-shadow:none!important;}
.rfx-content .reytoni-access-card p,
.rfx-content .reytoni-profile-card p{color:#475569!important;}
.rfx-content .reytoni-access-card input,
.rfx-content .reytoni-profile-card input,
.rfx-content .reytoni-profile-card select{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;border-radius:14px!important;min-height:46px;padding:10px 14px;}
.rfx-content .reytoni-access-card button,
.rfx-content .reytoni-profile-card button{background:#0f766e!important;color:#fff!important;border:0!important;border-radius:14px!important;min-height:48px;padding:12px 18px;font-weight:900;cursor:pointer;}
.rfx-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1180px;margin:0 auto;}
@media(max-width:900px){.rfx-access-grid{grid-template-columns:1fr}.rfx-header-inner{align-items:flex-start;flex-direction:column}.rfx-nav{width:100%;justify-content:flex-start;overflow:auto}}


/* ReyfFix 2.0.10 - acceso integrado, área técnica sin sesión y calendario */
body.rfx-body.page-template-default.rfx-logged-out .rfx-main,
body.rfx-body.page-id-0 .rfx-main{background:#f8fafc;}
body.rfx-access-layout .rfx-main{background:#070a18!important;min-height:calc(100vh - 82px);}
body.rfx-access-layout .rfx-container{max-width:1380px!important;padding:38px 18px 70px!important;}
body.rfx-access-layout .rfx-page-title{display:none!important;}
.rfx-access-stage{position:relative;overflow:hidden;border-radius:34px;background:
  linear-gradient(90deg,rgba(7,10,24,.96),rgba(30,18,54,.88),rgba(7,10,24,.94)),
  url('assets/img/portada-inicio.jpg') center/cover no-repeat;box-shadow:0 30px 90px rgba(2,6,23,.40);border:1px solid rgba(255,255,255,.10);padding:36px;}
.rfx-access-stage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0%,rgba(245,158,11,.20),transparent 34%),radial-gradient(circle at 84% 18%,rgba(217,70,239,.24),transparent 38%);pointer-events:none;}
.rfx-access-stage>*{position:relative;z-index:1;}
.rfx-access-head{max-width:920px;margin:0 0 28px;color:#fff;}
.rfx-access-head .rfx-kicker{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);color:#fff;}
.rfx-access-head h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5vw,76px);line-height:.98;letter-spacing:-.055em;margin:18px 0 12px;color:#fff;}
.rfx-access-head p{font-size:18px;line-height:1.55;color:rgba(226,232,240,.84);margin:0;max-width:760px;}
body.rfx-access-layout .rfx-content{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
body.rfx-access-layout .reytoni-access-app{max-width:1180px!important;margin:0 auto!important;padding:0!important;}
body.rfx-access-layout .reytoni-access-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;}
body.rfx-access-layout .reytoni-access-card{background:rgba(255,255,255,.96)!important;color:#0f172a!important;border:1px solid rgba(255,255,255,.40)!important;border-radius:28px!important;padding:28px!important;box-shadow:0 24px 80px rgba(0,0,0,.30)!important;text-shadow:none!important;}
body.rfx-access-layout .reytoni-access-card h2,
body.rfx-access-layout .reytoni-access-card h3,
body.rfx-access-layout .reytoni-access-card p,
body.rfx-access-layout .reytoni-access-card label,
body.rfx-access-layout .reytoni-access-card a{color:#0f172a!important;text-shadow:none!important;}
body.rfx-access-layout .reytoni-access-card p{color:#475569!important;}
body.rfx-access-layout .reytoni-access-card input{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:none!important;}
body.rfx-access-layout .reytoni-access-card button{background:#0f766e!important;color:#fff!important;border:0!important;}
body.rfx-access-layout .reytoni-access-icon{background:#dff6f4!important;color:#0f766e!important;}
@media(max-width:900px){
  body.rfx-access-layout .rfx-container{padding:14px 10px 40px!important;}
  .rfx-access-stage{border-radius:24px;padding:22px 14px;}
  body.rfx-access-layout .reytoni-access-grid{grid-template-columns:1fr!important;}
  .rfx-access-head h1{font-size:clamp(36px,12vw,58px);}
}

/* Calendario laboral: encajar el cuadrante completo sin scroll horizontal en móvil */
.rfx-content .tt-public-table-scroll,
.rfx-content .tt-month-board-wrap .tt-public-table-scroll,
.rfx-content .tt-public-calendar-section .tt-public-table-scroll{overflow-x:visible!important;width:100%!important;max-width:100%!important;}
.rfx-content .tt-public-week-table,
.rfx-content .tt-month-board-wrap .tt-public-week-table,
.rfx-content .tt-public-calendar-section .tt-public-week-table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:fixed!important;}
@media(max-width:900px){
  .rfx-content .tt-month-board-wrap,
  .rfx-content .tt-public-calendar-section,
  .rfx-content .tt-card-section{overflow:visible!important;max-width:100%!important;}
  .rfx-content .tt-public-week-table{font-size:8px!important;line-height:1.05!important;}
  .rfx-content .tt-public-week-table th,
  .rfx-content .tt-public-week-table td{padding:1px!important;min-width:0!important;}
  .rfx-content .tt-pub-tech-head,
  .rfx-content .tt-pub-tech-name{width:78px!important;min-width:78px!important;max-width:78px!important;padding-left:3px!important;padding-right:3px!important;}
  .rfx-content .tt-pub-day-head{height:40px!important;padding:1px!important;}
  .rfx-content .tt-pub-day-num{font-size:12px!important;line-height:1!important;}
  .rfx-content .tt-pub-day-name,.rfx-content .tt-pub-subhead,.rfx-content .tt-pub-shift-label{font-size:7px!important;line-height:1!important;}
  .rfx-content .tt-pub-tech-name{height:34px!important;}
  .rfx-content .tt-pub-tech-name .tt-tech-photo{width:20px!important;height:20px!important;min-width:20px!important;flex-basis:20px!important;}
  .rfx-content .tt-pub-tech-name strong{font-size:9px!important;white-space:normal!important;line-height:1.05!important;overflow:hidden!important;display:block!important;}
  .rfx-content .tt-pub-cell{height:32px!important;min-height:32px!important;padding:0!important;}
  .rfx-content .tt-pub-turn,.rfx-content .tt-pub-code,.rfx-content .tt-pub-act{font-size:8px!important;line-height:1!important;padding:1px 2px!important;margin:0!important;border-radius:4px!important;}
  .rfx-content .tt-public-week-head{font-size:11px!important;padding:7px 9px!important;}
  .rfx-content .tt-board-legend span{font-size:9px!important;padding:4px 6px!important;}
}
@media(max-width:480px){
  .rfx-content .tt-pub-tech-head,
  .rfx-content .tt-pub-tech-name{width:64px!important;min-width:64px!important;max-width:64px!important;}
  .rfx-content .tt-public-week-table{font-size:7px!important;}
  .rfx-content .tt-pub-tech-name .tt-tech-photo{width:16px!important;height:16px!important;min-width:16px!important;flex-basis:16px!important;}
  .rfx-content .tt-pub-tech-name strong{font-size:8px!important;}
  .rfx-content .tt-pub-day-num{font-size:11px!important;}
  .rfx-content .tt-pub-cell{height:28px!important;min-height:28px!important;}
}

/* ═══════════════════════════════════════════════════════════════
   ReyfFix 2.0.6 – Correcciones de cuadrante y layout
   ═══════════════════════════════════════════════════════════════ */

/* 1. Scroll horizontal contenido dentro del rfx-container */
.rfx-content {
  overflow-x: hidden;
  width: 100%;
  max-width: 100%;
}

/* 2. Wrapper de scroll para el cuadrante: scroll interno, no del body */
.rfx-content .tt-public-table-scroll,
.rfx-content .tt-month-board-ficha {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
  width: 100% !important;
  max-width: 100% !important;
}

/* 3. La tabla del cuadrante no rompe el layout: ancho mínimo dentro del scroll */
.rfx-content .tt-public-week-table {
  min-width: 860px !important;
  width: 100% !important;
  max-width: none !important;
}

/* 4. Shell principal del plugin: máx. ancho coherente con el theme */
.rfx-content .tt-public-shell,
.rfx-content .tt-theatre-home {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* 5. Topbar interna del plugin: oculta porque la cabecera la pone el theme */
.rfx-content .tt-theatre-topbar,
.rfx-content .tt-public-shell > .tt-theatre-topbar {
  display: none !important;
}

/* 6. Semana tipo grid (vista semanal): scroll horizontal controlado */
.rfx-content .tt-public-week {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}
.rfx-content .tt-week-grid {
  min-width: 640px;
}

/* 7. Vista ficha mensual */
.rfx-content .tt-month-board-wrap {
  overflow-x: auto !important;
  width: 100% !important;
}

/* 8. Controles de navegación de mes: flex responsive */
.rfx-content .tt-public-week-head,
.rfx-content .tt-top-nav {
  flex-wrap: wrap !important;
}

/* 9. FIX LOGIN: La barra de admin cuando el usuario es técnico */
body.rfx-logged-in.rfx-access-layout .rfx-header {
  top: 0 !important;
}

/* 10. Botones del plugin coherentes con el theme */
.rfx-content .tt-btn,
.rfx-content .tt-action-btn {
  border-radius: 14px !important;
}

@media (max-width: 1200px) {
  .rfx-content .tt-public-week-table { min-width: 760px !important; }
}

@media (max-width: 900px) {
  .rfx-content .tt-public-week-table { min-width: 680px !important; }
  .rfx-content .tt-public-shell { padding: 0 !important; }
}

@media (max-width: 640px) {
  .rfx-content .tt-public-week-table { min-width: 580px !important; }
  .rfx-content .tt-public-table-scroll { border-radius: 12px; }
}

/* ═══════════════════════════════════════════════════════════════
   ReyfFix 2.0.7 – Vista rápida: imagen a ancho completo, sin barra lateral
   ═══════════════════════════════════════════════════════════════ */

/* La imagen generada debe ocupar todo el ancho disponible */
.rfx-content .tt-quick-board-image {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 12px !important;
}

/* El stage no necesita scroll horizontal si la imagen es 100% */
.rfx-content .tt-quick-image-stage {
    overflow: hidden !important;
    padding: 8px !important;
}

/* El app de la vista rápida: sin márgenes laterales extras */
.rfx-content .tt-quick-image-app,
.rfx-content .tt-quick-page-v71 .tt-quick-image-app {
    padding: 20px 0 !important;
    overflow: visible !important;
}

/* Controles de la vista rápida */
.rfx-content .tt-quick-image-tools,
.rfx-content .tt-export-tools.tt-quick-image-tools {
    margin-bottom: 16px !important;
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

/* El shell principal de la vista rápida: ancho completo */
.rfx-content .tt-quick-page-v71 {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
}

/* La sección hero de la vista rápida */
.rfx-content .tt-quick-image-hero-v71 {
    border-radius: 20px !important;
    margin-bottom: 20px !important;
}

/* Editar cuadrante frontal */
.rfx-content .tt-frontal-editor {
    background: #fff;
    border-radius: 20px;
    padding: 24px !important;
    border: 1px solid rgba(15,23,42,.08);
    box-shadow: 0 10px 30px rgba(15,23,42,.06);
}
.rfx-content .tt-frontal-editor .tt-semana-bloque {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 18px;
}
.rfx-content .tt-frontal-editor .tt-tabla-semana {
    min-width: 720px;
    width: 100%;
}
/* Barra de admin cuando se usa en frontal */
.rfx-content .tt-frontal-editor .button {
    border-radius: 8px !important;
    text-decoration: none !important;
}


/* ═══════════════════════════════════════════════════════════════
   ReyfFix 2.0.8 – Menú alineado a la izquierda, perfil a la derecha
   ═══════════════════════════════════════════════════════════════ */
.rfx-header-inner,
.rfx-home-topbar{justify-content:flex-start!important;}
.rfx-nav{flex:1 1 auto!important;justify-content:flex-start!important;min-width:0;}
.rfx-menu{width:100%!important;justify-content:flex-start!important;}
.rfx-menu > li:last-child:has(.rfx-profile-link){margin-left:auto!important;}
.rfx-profile-link{padding:0!important;background:transparent!important;border:0!important;min-width:46px!important;}
.rfx-profile-link:hover{box-shadow:none!important;background:transparent!important;}
.rfx-submenu a{color:#0f172a!important;}
.rfx-submenu{color:#0f172a!important;}
@media(max-width:1000px){
  .rfx-header-inner,.rfx-home-topbar{align-items:stretch!important;}
  .rfx-nav{overflow-x:auto!important;}
  .rfx-menu{width:max-content!important;min-width:100%;}
  .rfx-menu > li:last-child:has(.rfx-profile-link){margin-left:auto!important;}
}


/* ═══════════════════════════════════════════════════════════════
   ReyfFix 2.0.9 — cabecera única del tema + editor frontal estable
   ═══════════════════════════════════════════════════════════════ */
/* Todas las páginas internas usan la cabecera del tema con el mismo carácter visual. */
.rfx-header{
  background:linear-gradient(90deg,rgba(7,10,24,.96),rgba(44,24,71,.92))!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 18px 60px rgba(2,6,23,.22)!important;
}
.rfx-header .rfx-brand,
.rfx-header .rfx-brand-text strong{color:#fff!important;}
.rfx-header .rfx-brand-text small{color:rgba(226,232,240,.78)!important;}
.rfx-header .rfx-menu a,
.rfx-header .rfx-menu summary{
  background:rgba(255,255,255,.08)!important;
  color:rgba(255,255,255,.94)!important;
  border-color:transparent!important;
}
.rfx-header .rfx-menu a:hover,
.rfx-header .rfx-menu summary:hover{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.16)!important;
}
.rfx-header .rfx-submenu{background:#fff!important;color:#0f172a!important;}
.rfx-header .rfx-submenu a{color:#0f172a!important;background:transparent!important;}
.rfx-header .rfx-submenu a:hover{background:#f1f5f9!important;color:#020617!important;}
/* Evita márgenes raros/encabezados incrustados cuando la página es el editor frontal. */
body.rfx-editor-layout .rfx-container{max-width:100%!important;padding:0!important;}
body.rfx-editor-layout .rfx-page-title{display:none!important;}
body.rfx-editor-layout .rfx-content{max-width:100%!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;}
body.rfx-editor-layout .rfx-main{overflow:visible!important;}
body.rfx-editor-layout .tt-frontal-editor{max-width:100%!important;margin:0!important;padding:12px!important;overflow:visible!important;}
/* En el editor frontal deben quedar visibles los controles de edición y la leyenda. */
body.rfx-editor-layout .tt-frontal-editor .tt-manual-panel{
  position:sticky!important;
  top:88px!important;
  z-index:12000!important;
  background:rgba(255,255,255,.98)!important;
  backdrop-filter:blur(14px)!important;
  box-shadow:0 18px 50px rgba(15,23,42,.18)!important;
  border:1px solid rgba(15,23,42,.12)!important;
}
body.rfx-editor-layout .tt-frontal-editor .tt-leyenda{
  position:sticky!important;
  top:188px!important;
  z-index:11990!important;
  background:rgba(255,255,255,.98)!important;
  backdrop-filter:blur(12px)!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  box-shadow:0 14px 40px rgba(15,23,42,.13)!important;
  border:1px solid rgba(15,23,42,.10)!important;
}
body.rfx-editor-layout .tt-frontal-editor .tt-semana-bloque{scroll-margin-top:260px;}
@media(max-width:900px){
  body.rfx-editor-layout .tt-frontal-editor .tt-manual-panel{top:6px!important;max-height:44vh!important;overflow:auto!important;}
  body.rfx-editor-layout .tt-frontal-editor .tt-leyenda{top:calc(44vh + 14px)!important;max-height:22vh!important;overflow:auto!important;}
}


/* ReyfFix 2.0.10 - el acceso del área técnica debe coger siempre el tema */
body.rfx-access-layout .tt-area-only-page,
body.rfx-access-layout .tt-main-portal.tt-area-only-page{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;max-width:1180px!important;margin:0 auto!important;color:#0f172a!important;}
body.rfx-access-layout .tt-area-hero,
body.rfx-access-layout .tt-area-only-topbar,
body.rfx-access-layout .tt-theatre-topbar{display:none!important;}
body.rfx-access-layout .tt-area-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;margin:0!important;}
body.rfx-access-layout .tt-area-card{background:rgba(255,255,255,.96)!important;color:#0f172a!important;border:1px solid rgba(255,255,255,.40)!important;border-radius:28px!important;padding:28px!important;box-shadow:0 24px 80px rgba(0,0,0,.30)!important;text-shadow:none!important;}
body.rfx-access-layout .tt-area-card h2,
body.rfx-access-layout .tt-area-card p,
body.rfx-access-layout .tt-area-card label,
body.rfx-access-layout .tt-area-card summary{color:#0f172a!important;text-shadow:none!important;}
body.rfx-access-layout .tt-area-card p{color:#475569!important;}
body.rfx-access-layout .tt-area-card input{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:none!important;}
body.rfx-access-layout .tt-area-card button,
body.rfx-access-layout .tt-primary-link{background:#0f766e!important;color:#fff!important;border:0!important;}
body.rfx-access-layout .tt-secondary-link{background:#fff!important;color:#0f172a!important;border:1px solid #e2e8f0!important;}
body.rfx-access-layout .tt-area-icon{background:#dff6f4!important;color:#0f766e!important;}
@media(max-width:900px){body.rfx-access-layout .tt-area-grid{grid-template-columns:1fr!important;}}


/* REYFFIX v2.0.11 — ajustes de acceso, perfil y menú de usuario */
.rfx-profile-item{margin-left:auto!important;}
.rfx-profile-menu{position:relative;}
.rfx-profile-menu summary{padding:0!important;min-height:46px!important;width:46px!important;height:46px!important;border-radius:50%!important;overflow:hidden;background:rgba(255,255,255,.92)!important;border:1px solid rgba(245,158,11,.45)!important;box-shadow:0 10px 24px rgba(15,23,42,.14)!important;list-style:none!important;}
.rfx-profile-menu summary::-webkit-details-marker{display:none!important;}
.rfx-profile-menu[open] summary{outline:2px solid rgba(245,158,11,.35);}
.rfx-profile-link img{width:100%!important;height:100%!important;border:0!important;border-radius:50%!important;box-shadow:none!important;display:block;object-fit:cover;}
.rfx-profile-initial{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:#0f766e;color:#fff;font-weight:950;}
.rfx-profile-submenu{right:0!important;min-width:190px!important;}
.rfx-profile-submenu a{color:#0f172a!important;background:transparent!important;text-align:left!important;justify-content:flex-start!important;}
.rfx-profile-submenu a:hover{background:#f1f5f9!important;color:#0f766e!important;}

/* Las pantallas de acceso deben parecer del tema, no tarjetas antiguas verdosas ni texto blanco */
body.rfx-access-layout{background:#050714!important;}
body.rfx-access-layout .rfx-main{background:radial-gradient(circle at top left,rgba(217,70,239,.22),transparent 34%),linear-gradient(135deg,#050714,#0b1023 58%,#160b2c)!important;}
body.rfx-access-layout .rfx-container{max-width:1500px!important;padding-top:24px!important;}
.rfx-access-stage{max-width:1400px;margin:0 auto;padding:0 16px 42px;}
.rfx-access-head{background:linear-gradient(135deg,rgba(15,23,42,.82),rgba(88,28,135,.56));border:1px solid rgba(255,255,255,.12);box-shadow:0 26px 80px rgba(0,0,0,.32);border-radius:30px;color:#fff;padding:clamp(26px,4vw,56px);margin-bottom:26px;}
.rfx-access-head h1{color:#fff!important;margin:10px 0 8px;font-size:clamp(42px,6vw,78px);line-height:.96;letter-spacing:-.055em;}
.rfx-access-head p{color:rgba(255,255,255,.78)!important;margin:0;font-size:1.1rem;}
body.rfx-access-layout .reytoni-access-app,body.rfx-access-layout .tt-area-only-page{max-width:1400px!important;margin:0 auto!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#0f172a!important;}
body.rfx-access-layout .reytoni-access-grid,body.rfx-access-layout .tt-area-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;}
body.rfx-access-layout .reytoni-access-card,body.rfx-access-layout .tt-area-card{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,250,252,.94))!important;color:#0f172a!important;border:1px solid rgba(226,232,240,.9)!important;border-radius:30px!important;padding:clamp(24px,3vw,34px)!important;box-shadow:0 24px 80px rgba(0,0,0,.25)!important;text-shadow:none!important;}
body.rfx-access-layout .reytoni-access-card *,body.rfx-access-layout .tt-area-card *{text-shadow:none!important;}
body.rfx-access-layout .reytoni-access-card h1,body.rfx-access-layout .reytoni-access-card h2,body.rfx-access-layout .reytoni-access-card h3,body.rfx-access-layout .reytoni-access-card p,body.rfx-access-layout .reytoni-access-card label,body.rfx-access-layout .tt-area-card h1,body.rfx-access-layout .tt-area-card h2,body.rfx-access-layout .tt-area-card h3,body.rfx-access-layout .tt-area-card p,body.rfx-access-layout .tt-area-card label{color:#0f172a!important;}
body.rfx-access-layout .reytoni-access-card p,body.rfx-access-layout .tt-area-card p{color:#475569!important;}
body.rfx-access-layout .reytoni-access-card input,body.rfx-access-layout .tt-area-card input{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:none!important;}
body.rfx-access-layout .reytoni-access-card button,body.rfx-access-layout .tt-area-card button,body.rfx-access-layout .tt-primary-link{background:#0f766e!important;color:#fff!important;border:0!important;}
body.rfx-access-layout .tt-area-hero,body.rfx-access-layout .tt-area-only-topbar,body.rfx-access-layout .tt-theatre-topbar{display:none!important;}
@media(max-width:900px){body.rfx-access-layout .reytoni-access-grid,body.rfx-access-layout .tt-area-grid{grid-template-columns:1fr!important}.rfx-profile-item{margin-left:0!important}.rfx-profile-submenu{left:0!important;right:auto!important}}

/* Perfil: que se integre con ReyfFix y no use colores antiguos fuertes */
body.rfx-page-mi-perfil-tecnico .reytoni-perfil{max-width:1180px!important;padding:0 12px 28px!important;color:#0f172a!important;}
body.rfx-page-mi-perfil-tecnico .reytoni-perfil-head{display:none!important;}
body.rfx-page-mi-perfil-tecnico .reytoni-profile-cover{background:linear-gradient(135deg,#101827,#243047 52%,#e2e8f0)!important;}
body.rfx-page-mi-perfil-tecnico .reytoni-perfil-card h2{color:#0f766e!important;}


/* ReyfFix 2.0.14 - corrige desplegable Gestiona en móvil.
   El menú horizontal puede desplazarse, pero los submenús ya no quedan recortados
   dentro de la barra: se pintan por encima del contenido. */
@media(max-width:1000px){
  .rfx-header,
  .rfx-header-inner,
  .rfx-home-topbar,
  .rfx-menu,
  .rfx-menu li,
  .rfx-menu details{
    overflow:visible!important;
  }
  .rfx-home-topbar,
  .rfx-header-inner{
    position:relative;
    z-index:99990;
  }
  .rfx-nav{
    width:100%;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch;
    position:relative;
    z-index:99991;
  }
  .rfx-menu details[open] .rfx-submenu{
    position:fixed!important;
    top:var(--rfx-submenu-top, 170px)!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    max-height:calc(100vh - var(--rfx-submenu-top, 170px) - 14px)!important;
    overflow-y:auto!important;
    z-index:999999!important;
    border-radius:20px!important;
    background:#fff!important;
    box-shadow:0 24px 80px rgba(15,23,42,.34)!important;
  }
  .rfx-menu details[open] .rfx-submenu li a{
    min-height:46px;
    justify-content:flex-start!important;
    white-space:normal!important;
  }
}


/* ReyfFix v2.0.16 - Gestiona centralizado, Calculadora Portal Horario y Convenio */
.rfx-gestiona-strong{font-weight:950!important;color:#0f766e!important;}
.rfx-plugin-fallback{max-width:980px;margin:24px auto;padding:28px;border-radius:28px;background:linear-gradient(135deg,#ffffff,#f8fafc);border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 50px rgba(15,23,42,.08);color:#0f172a;}
.rfx-plugin-fallback h2{margin:8px 0 10px;font-size:clamp(26px,3vw,40px);letter-spacing:-.035em;color:#0f172a;}
.rfx-plugin-fallback p{margin:8px 0;color:#475569;}
.rfx-plugin-fallback code{background:#e2e8f0;border-radius:8px;padding:3px 7px;color:#0f172a;}
.rfx-fallback-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;background:#ecfeff;color:#0f766e;font-weight:950;font-size:.78rem;letter-spacing:.08em;}


/* ReyfFix 2.0.17 - Calidad visual HD */
.rfx-content img,
.rfx-home-bg,
.rfx-brand-mark img,
.rfx-profile-link img,
.rfx-hd-image,
.rfx-hd-image img,
figure.wp-block-image img,
.wp-block-cover__image-background{
    image-rendering:auto!important;
    -ms-interpolation-mode:bicubic;
}
.rfx-content .wp-block-image img,
.rfx-content img.size-full,
.rfx-content img.size-reyffix_banner_hd,
.rfx-content img.size-reyffix_banner_2k,
.rfx-content img.size-reyffix_poster_a4_hd{
    width:auto;
    max-width:100%;
    height:auto;
}
.rfx-hd-poster,
.rfx-content .rfx-hd-poster img{
    max-width:min(100%,980px);
    margin-left:auto;
    margin-right:auto;
    display:block;
}
.rfx-visual-hd-note{
    border:1px solid rgba(14,165,233,.22);
    background:linear-gradient(135deg,rgba(14,165,233,.08),rgba(245,158,11,.08));
    border-radius:18px;
    padding:14px 16px;
    color:#0f172a;
    font-weight:800;
}


/* ReyfFix 2.0.18 - Identidad pública limpia + colores TedY
   Público: desaparece REYTONI de cabecera/pie. Autor técnico se mantiene solo en metadatos del theme/plugin.
   Paleta inspirada en TedY: azul noche, azul neón, dorado y tarjetas claras. */
:root{
  --rfx-tedy-navy:#071426;
  --rfx-tedy-navy-2:#0b1f3a;
  --rfx-tedy-blue:#0ea5e9;
  --rfx-tedy-cyan:#22d3ee;
  --rfx-tedy-gold:#f6c65b;
  --rfx-tedy-orange:#f59e0b;
  --rfx-tedy-cream:#fff7e6;
}
.rfx-header{background:rgba(255,255,255,.92);border-bottom:1px solid rgba(14,165,233,.20);box-shadow:0 10px 34px rgba(7,20,38,.08)}
.rfx-brand-mark{border-radius:16px;border:1px solid rgba(14,165,233,.18);box-shadow:0 14px 30px rgba(14,165,233,.14);background:linear-gradient(135deg,#fff,#eef9ff)}
.rfx-brand-text strong{color:var(--rfx-tedy-navy);letter-spacing:-.02em}.rfx-brand-text small{color:#256c8f;font-weight:800}
.rfx-menu a,.rfx-menu summary{background:#f4fbff;color:var(--rfx-tedy-navy);border:1px solid rgba(14,165,233,.10)}
.rfx-menu a:hover,.rfx-menu summary:hover,.rfx-menu .current-menu-item>a{background:linear-gradient(135deg,#ffffff,#e7f8ff);border-color:rgba(14,165,233,.35);color:#04111f;box-shadow:0 12px 28px rgba(14,165,233,.16)}
.rfx-menu .rfx-gestiona summary{background:linear-gradient(135deg,var(--rfx-tedy-blue),#075985)!important;color:#fff!important;border-color:rgba(34,211,238,.45)!important;box-shadow:0 14px 30px rgba(14,165,233,.24)}
.rfx-home{background:var(--rfx-tedy-navy)}
.rfx-home-topbar{background:rgba(7,20,38,.70);border:1px solid rgba(34,211,238,.18);box-shadow:0 24px 80px rgba(7,20,38,.42)}
.rfx-home-brand .rfx-brand-mark{background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(246,198,91,.10));border-color:rgba(34,211,238,.26)}
.rfx-home-brand strong{color:#fff}.rfx-home-brand small{color:#aeeeff;font-weight:800}
.rfx-kicker{background:rgba(14,165,233,.14);border-color:rgba(34,211,238,.25);color:#dff9ff}
.rfx-btn.primary{background:linear-gradient(135deg,var(--rfx-tedy-blue),#0369a1 55%,var(--rfx-tedy-gold));border:1px solid rgba(255,255,255,.18)}
.rfx-card-icon{border-color:rgba(34,211,238,.42);color:var(--rfx-tedy-gold);background:rgba(14,165,233,.08)}
.rfx-home-card{background:rgba(7,20,38,.64);border-color:rgba(34,211,238,.15)}
.rfx-home-card:hover{background:rgba(7,20,38,.76);border-color:rgba(246,198,91,.26)}
.rfx-page-title{background:linear-gradient(135deg,#fff,#f1fbff);border-color:rgba(14,165,233,.12)}
.rfx-page-title h1{color:var(--rfx-tedy-navy)}
.rfx-footer{background:var(--rfx-tedy-navy);color:#bcecff;border-top:1px solid rgba(34,211,238,.18)}
.rfx-footer-inner{font-weight:800}.rfx-footer-inner span:last-child{color:var(--rfx-tedy-gold)}
.rfx-plugin-fallback{border:1px solid rgba(14,165,233,.18)!important;background:linear-gradient(135deg,#fff,#f3fbff)!important;color:var(--rfx-tedy-navy)!important;border-radius:24px!important;padding:24px!important;box-shadow:0 18px 44px rgba(7,20,38,.08)!important}
.rfx-fallback-pill{display:inline-flex!important;padding:6px 10px!important;border-radius:999px!important;background:rgba(14,165,233,.12)!important;color:#075985!important;font-weight:900!important;text-transform:uppercase!important;font-size:.78rem!important;letter-spacing:.08em!important}
body.rfx-access-layout .reytoni-access-card button,body.rfx-access-layout .tt-area-card button,body.rfx-access-layout .tt-primary-link{background:linear-gradient(135deg,var(--rfx-tedy-blue),#075985)!important;color:#fff!important}
body.rfx-page-mi-perfil-tecnico .reytoni-perfil-card h2{color:#075985!important}
body.rfx-page-mi-perfil-tecnico .reytoni-profile-cover{background:linear-gradient(135deg,var(--rfx-tedy-navy),#0b3a5a 52%,#eaf8ff)!important}
