/* estas clases son del bloque 3 hay que eliminarlas
.mgym-clean-meso-section
.mgym-clean-meso-rail
.mgym-clean-meso-chip
.mgym-clean-meso-detail
.mgym-clean-meso-panel
.mgym-clean-meso-summary
.mgym-clean-micro-list
.mgym-clean-micro
.mgym-clean-days
.meso-card
.tech-block
.micro-row
.readonly-grid
*/
/* MacroGym Entrenos v264a — Configuración ordenada, sin tocar lógica funcional */
html body .mgym-html-config-page{
  --mg-bg:#191919;
  --mg-bg-deep:#070707;
  --mg-panel:rgba(47,54,63,.74);
  --mg-panel-soft:rgba(75,85,99,.28);
  --mg-panel-float:rgba(35,40,47,.54);
  --mg-line:rgba(156,163,175,.24);
  --mg-line-strong:rgba(243,244,246,.20);
  --mg-text:#F3F4F6;
  --mg-muted:#C7CDD6;
  --mg-soft:#9CA3AF;
  --mg-radius:26px;
  --mg-radius-sm:18px;
  width:min(1500px,96vw)!important;
  max-width:96vw!important;
  margin:10px auto 42px!important;
  padding:0!important;
  color:var(--mg-text)!important;
  background:transparent!important;
}
html body .mgym-html-config-page,
html body .mgym-html-config-page *{
  box-sizing:border-box!important;
}
html body .mgym-html-config-page *::before,
html body .mgym-html-config-page *::after{
  animation:none!important;
}
html body .mgym-html-config-page :is(.card,.soft,.mgym-config-workspace,.mgym-config-silver-hero,.mgym-config-summary-wide,.mgym-calendar-routines-hub,.mgym-hub-section,.methodSubsection,.mgym-plan-meso-panel,.mgym-meso-horizontal-shell,.mgym-plan-block,.mgym-plan-info-card,.chartCard,.note,.summaryBar,.mgym-config-final-summary){
  border-radius:var(--mg-radius)!important;
  border:1px solid var(--mg-line)!important;
  background-color:var(--mg-panel-float)!important;
  background-image:linear-gradient(145deg,rgba(243,244,246,.07),rgba(75,85,99,.14) 44%,rgba(25,25,25,.18))!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.08),0 20px 48px rgba(0,0,0,.26)!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page :is(.mgym-config-silver-hero__glow,[class*="__glow"],.glow,.shine){
  display:none!important;
}
html body .mgym-html-config-page :is(p,.muted,.note,.description,small){
  color:var(--mg-muted)!important;
  line-height:1.55!important;
  letter-spacing:-.01em!important;
}
html body .mgym-html-config-page :is(h1,h2,h3,.cardTitle){
  color:var(--mg-text)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
}
html body .mgym-html-config-page .label{
  color:#D4DAE3!important;
  letter-spacing:.14em!important;
  font-weight:850!important;
  text-transform:uppercase!important;
  font-size:.72rem!important;
}

/* Division */
.mgym-training-logic-hero .mgym-training-logic-controls .mgym-training-logic-controls__head--save{
	margin-top:12px;
	
}

/* Navegación local compacta */
html body .mgym-html-config-page .mgym-config-local-nav{
  position:sticky!important;
  top:8px!important;
  z-index:30!important;
  display:flex!important;
  justify-content:center!important;
  gap:8px!important;
  margin:0 auto 12px!important;
  padding:8px!important;
  width:max-content!important;
  max-width:calc(100vw - 32px)!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(19,22,26,.68)!important;
  backdrop-filter:blur(16px)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.28)!important;
}
html body .mgym-html-config-page .mgym-config-local-nav a{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:38px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  color:#D8DEE8!important;
  text-decoration:none!important;
  border:1px solid transparent!important;
}
html body .mgym-html-config-page .mgym-config-local-nav a:is(.is-active,:hover){
  background:rgba(75,85,99,.42)!important;
  border-color:rgba(243,244,246,.18)!important;
}

/* Hero inicial: más pegado arriba, ancho controlado y sin azules */
html body .mgym-html-config-page .mgym-config-silver-hero{
  margin-top:0!important;
  padding:22px!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__inner{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr)!important;
  gap:22px!important;
  align-items:stretch!important;
  background:transparent!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__content,
html body .mgym-html-config-page .mgym-config-silver-hero__console{
  padding:22px!important;
  border-radius:22px!important;
  background:rgba(31,36,42,.42)!important;
  border:1px solid rgba(156,163,175,.16)!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__title{
  font-size:clamp(2rem,4vw,4.1rem)!important;
  max-width:780px!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__lead,
html body .mgym-html-config-page .mgym-config-silver-hero__message{
  max-width:780px!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap{
  margin-top:18px!important;
  padding:18px!important;
  border-radius:20px!important;
  background:rgba(75,85,99,.18)!important;
  border:1px solid rgba(156,163,175,.16)!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__meta{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__meta span{
  min-height:88px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:rgba(75,85,99,.24)!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
  padding:12px!important;
}
html body .mgym-html-config-page .mgym-config-silver-hero__status{
  margin-top:14px!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  gap:14px!important;
  align-items:center!important;
  padding:15px!important;
  border-radius:20px!important;
  background:rgba(75,85,99,.18)!important;
  border:1px solid rgba(156,163,175,.16)!important;
}

/* Flow strip */
html body .mgym-html-config-page .mgym-config-flow-strip{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  margin:14px 0 18px!important;
}
html body .mgym-html-config-page .mgym-config-flow-card{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-areas:"num title" "num desc"!important;
  column-gap:12px!important;
  row-gap:2px!important;
  padding:16px!important;
  border-radius:22px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.36),rgba(25,25,25,.18))!important;
  color:var(--mg-text)!important;
  text-decoration:none!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.08),0 16px 32px rgba(0,0,0,.20)!important;
}
html body .mgym-html-config-page .mgym-config-flow-card span{
  grid-area:num!important;
  width:34px!important;height:34px!important;
  display:grid!important;place-items:center!important;
  border-radius:14px!important;
  background:rgba(156,163,175,.22)!important;
  border:1px solid rgba(243,244,246,.18)!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-config-flow-card strong{grid-area:title!important;font-size:.98rem!important;}
html body .mgym-html-config-page .mgym-config-flow-card small{grid-area:desc!important;color:#BFC6D1!important;font-size:.82rem!important;}

/* Base del plan */
html body .mgym-html-config-page .mgym-config-main-grid,
html body .mgym-html-config-page .grid.mgym-config-main-grid{
  display:block!important;
}
html body .mgym-html-config-page .mgym-config-workspace{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .mgym-html-config-page .mgym-config-plan-carbon-block{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(280px,360px)!important;
  gap:20px!important;
  padding:24px!important;
}
html body .mgym-html-config-page .mgym-config-plan-carbon-block__main,
html body .mgym-html-config-page .mgym-config-plan-carbon-block__side{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
html body .mgym-html-config-page .mgym-plan-config-fields{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:18px!important;
}
html body .mgym-html-config-page .field{
  display:grid!important;
  gap:8px!important;
  min-width:0!important;
}
html body .mgym-html-config-page .field span{
  color:#DDE3EC!important;
  font-size:.82rem!important;
  font-weight:800!important;
}
html body .mgym-html-config-page :is(input,select,textarea){
  min-height:48px!important;
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:rgba(20,23,27,.42)!important;
  color:#F3F4F6!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.06)!important;
}
html body .mgym-html-config-page textarea{min-height:118px!important;padding:14px!important;}
html body .mgym-html-config-page .mgym-config-plan-carbon-block__media{
  display:grid!important;
  align-content:end!important;
  gap:14px!important;
}
html body .mgym-html-config-page .mgym-config-plan-carbon-block__image{
  width:100%!important;
  max-height:260px!important;
  object-fit:contain!important;
  padding:16px!important;
  border-radius:24px!important;
  background:rgba(75,85,99,.16)!important;
  border:1px solid rgba(156,163,175,.18)!important;
}
html body .mgym-html-config-page .mgym-config-plan-carbon-block__info-boxes{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:18px!important;
  background:transparent!important;
}
html body .mgym-html-config-page .mgym-config-plan-carbon-block__info-card{
  min-height:118px!important;
  padding:18px 18px 16px 62px!important;
}

/* Resumen inicial más limpio */
html body .mgym-html-config-page .mgym-config-summary-wide{
  margin:18px 0!important;
  padding:22px!important;
}
html body .mgym-html-config-page .mgym-config-summary-shell{
  display:grid!important;
  grid-template-columns:minmax(260px,.48fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
html body .mgym-html-config-page .mgym-config-summary-kpi-zone .kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
html body .mgym-html-config-page .kpi{
  min-height:96px!important;
  padding:16px!important;
  border-radius:20px!important;
  background:rgba(75,85,99,.20)!important;
  border:1px solid rgba(156,163,175,.18)!important;
}

/* Lógica técnica compacta */
html body .mgym-html-config-page .mgym-config-training-logic{
  padding:22px!important;
  margin-top:18px!important;
}
html body .mgym-html-config-page .mgym-config-training-logic .cardHeader,
html body .mgym-html-config-page .mgym-periodization-editor .cardHeader,
html body .mgym-html-config-page .mgym-hub-titlebar{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:14px!important;
}
html body .mgym-html-config-page .mgym-config-training-logic .summaryBar{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
html body .mgym-html-config-page .mgym-config-training-logic .summaryBar .note,
html body .mgym-html-config-page .chartCard{
  padding:16px!important;
}
html body .mgym-html-config-page .mgym-config-training-logic .form.cols-3{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
html body .mgym-html-config-page .methodDetailGrid{
  display:grid!important;
  grid-template-columns:1fr 1.4fr!important;
  gap:14px!important;
}

/* Mesociclos */
html body .mgym-html-config-page .mgym-periodization-editor{
  padding:22px!important;
  margin-top:18px!important;
}
html body .mgym-html-config-page #configMesoPlanner{
  margin-top:14px!important;
}
html body .mgym-html-config-page .mgym-plan-workbench,
html body .mgym-html-config-page .mgym-plan-workbench--horizontal{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
}
html body .mgym-html-config-page .mgym-meso-horizontal-shell{
  padding:20px!important;
}
html body .mgym-html-config-page .mgym-meso-horizontal-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:14px!important;
}
html body .mgym-html-config-page .mgym-meso-horizontal-row{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(310px,390px)!important;
  gap:14px!important;
  overflow-x:auto!important;
  padding:4px 4px 14px!important;
  scroll-snap-type:x proximity!important;
}

/* =========================================================
   MacroGym · Configuración Bloque 1
   Basado en bloque1_scroll_premium
   Clase raíz: .configuracion_bloque_1
   Paleta: Acero Space / Gris Espacial
   ========================================================= */

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 {
  --cb1-bg: #191919;
  --cb1-deep: #070707;
  --cb1-text: #F3F4F6;
  --cb1-muted: #A3A4A5;
  --cb1-muted-2: #747678;
  --cb1-steel: #4B5563;
  --cb1-border: rgba(243, 244, 246, 0.12);
  --cb1-border-soft: rgba(243, 244, 246, 0.075);

  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;

  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 24px !important;
  padding: 0 !important;

  border-radius: 34px !important;
  border: 1px solid var(--cb1-border) !important;

  background:
    linear-gradient(135deg, rgba(243, 244, 246, 0.08), rgba(243, 244, 246, 0.025) 45%, rgba(156, 163, 175, 0.055)),
    linear-gradient(180deg, rgba(25, 25, 25, 0.98), rgba(8, 8, 8, 0.98)) !important;

  box-shadow:
    0 38px 110px rgba(0, 0, 0, 0.62),
    inset 0 1px 0 rgba(243, 244, 246, 0.10) !important;

  color: var(--cb1-text) !important;
}

/* Apaga capas antiguas si existieran */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1::before,
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1::after,
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .mgym-config-silver-hero__glow {
  display: none !important;
  content: none !important;
}

/* Fondo scroll controlado */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__bg {
  position: absolute !important;
  inset: -10% !important;
  z-index: -3 !important;

  background-image:
    linear-gradient(180deg, rgba(7, 7, 7, 0.06), rgba(7, 7, 7, 0.34)),
    var(--cb1-bg-image) !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;

  opacity: 0.52 !important;
  filter: grayscale(12%) contrast(1.08) brightness(0.96) !important;

  transform: translateY(0) scale(1.12) !important;
  transform-origin: center center !important;
  will-change: transform !important;
  transition: transform 0.18s linear !important;
}

/* Capas internas */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__inner::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;

  background:
    radial-gradient(circle at 18% 16%, rgba(243, 244, 246, 0.14), transparent 24%),
    radial-gradient(circle at 84% 22%, rgba(156, 163, 175, 0.14), transparent 24%),
    radial-gradient(circle at 70% 110%, rgba(243, 244, 246, 0.06), transparent 25%),
    linear-gradient(180deg, rgba(7, 7, 7, 0.18), rgba(7, 7, 7, 0.82)) !important;

  pointer-events: none !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__inner::after {
  content: "" !important;
  position: absolute !important;
  inset: 18px !important;
  z-index: -1 !important;

  border: 1px solid rgba(243, 244, 246, 0.055) !important;
  border-radius: 24px !important;

  pointer-events: none !important;
}

/* Reset interno */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 *,
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 *::before,
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 *::after {
  box-sizing: border-box !important;
}

/* Interior */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__inner {
  position: relative !important;
  z-index: 2 !important;

  display: grid !important;
  gap: 26px !important;

  padding: clamp(22px, 4vw, 42px) !important;
}

/* Top */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;

  width: fit-content !important;
  padding: 9px 13px !important;

  border-radius: 999px !important;
  border: 1px solid rgba(243, 244, 246, 0.12) !important;

  color: var(--cb1-muted) !important;
  background: rgba(243, 244, 246, 0.055) !important;

  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;

  box-shadow: inset 0 1px 0 rgba(243, 244, 246, 0.08) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__label::before {
  content: "" !important;

  width: 7px !important;
  height: 7px !important;

  border-radius: 999px !important;
  background: var(--cb1-muted) !important;
  box-shadow: 0 0 18px rgba(156, 163, 175, 0.70) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__mini-status {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;

  padding: 9px 13px !important;

  border-radius: 999px !important;

  color: var(--cb1-text) !important;
  background: rgba(156, 163, 175, 0.16) !important;
  border: 1px solid rgba(243, 244, 246, 0.14) !important;

  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Hero */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 340px) !important;
  gap: clamp(22px, 4vw, 42px) !important;
  align-items: end !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__copy {
  min-width: 0 !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__title {
  max-width: 760px !important;
  margin: 0 !important;

  color: var(--cb1-text) !important;

  font-size: clamp(36px, 5.4vw, 76px) !important;
  line-height: 0.91 !important;
  letter-spacing: -0.065em !important;
  font-weight: 900 !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__lead {
  max-width: 720px !important;
  margin: 20px 0 0 !important;

  color: var(--cb1-muted) !important;

  font-size: clamp(15px, 1.5vw, 17px) !important;
  line-height: 1.7 !important;
}

/* Score */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__score {
  position: relative !important;

  min-height: 210px !important;

  display: grid !important;
  place-items: center !important;

  padding: 24px !important;

  border-radius: 28px !important;
  border: 1px solid rgba(243, 244, 246, 0.105) !important;

  background:
    linear-gradient(145deg, rgba(243, 244, 246, 0.09), rgba(243, 244, 246, 0.028)),
    rgba(243, 244, 246, 0.04) !important;

  box-shadow: inset 0 1px 0 rgba(243, 244, 246, 0.09) !important;

  overflow: hidden !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__score::before {
  content: "" !important;

  position: absolute !important;

  width: 190px !important;
  height: 190px !important;

  border-radius: 50% !important;
  border: 1px solid rgba(243, 244, 246, 0.08) !important;

  box-shadow:
    inset 0 0 42px rgba(243, 244, 246, 0.04),
    0 0 70px rgba(243, 244, 246, 0.04) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__score-content {
  position: relative !important;
  text-align: center !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__score-kicker {
  display: block !important;

  color: var(--cb1-muted-2) !important;

  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__score-number {
  display: block !important;

  margin-top: 8px !important;

  color: var(--cb1-text) !important;

  font-size: 54px !important;
  line-height: 0.9 !important;
  font-weight: 900 !important;
  letter-spacing: -0.06em !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__score-text {
  display: block !important;

  margin-top: 12px !important;

  color: var(--cb1-muted) !important;

  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Mensaje */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__message {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  gap: 16px !important;
  align-items: center !important;

  padding: 18px !important;

  border-radius: 24px !important;
  border: 1px solid rgba(243, 244, 246, 0.105) !important;

  background:
    linear-gradient(135deg, rgba(243, 244, 246, 0.075), rgba(243, 244, 246, 0.028)),
    rgba(243, 244, 246, 0.035) !important;

  box-shadow: inset 0 1px 0 rgba(243, 244, 246, 0.08) !important;

  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__message-icon {
  display: grid !important;
  place-items: center !important;

  width: 46px !important;
  height: 46px !important;

  border-radius: 16px !important;

  color: #070707 !important;
  background: rgba(243, 244, 246, 0.86) !important;

  font-size: 18px !important;
  font-weight: 900 !important;

  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__message p {
  margin: 0 !important;

  color: var(--cb1-text) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__message-action,
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__primary-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 42px !important;
  padding: 0 16px !important;

  border-radius: 999px !important;
  border: 1px solid rgba(243, 244, 246, 0.18) !important;

  color: var(--cb1-text) !important;
  background: rgba(243, 244, 246, 0.075) !important;
  text-decoration: none !important;

  font-size: 13px !important;
  font-weight: 850 !important;
  white-space: nowrap !important;
}

/* Mapa */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__map {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__step {
  min-height: 166px !important;

  display: grid !important;
  align-content: space-between !important;
  gap: 14px !important;

  padding: 18px !important;

  border-radius: 24px !important;
  border: 1px solid rgba(243, 244, 246, 0.10) !important;

  background:
    radial-gradient(circle at 12% 0%, rgba(243, 244, 246, 0.10), transparent 34%),
    linear-gradient(145deg, rgba(75, 85, 99, 0.22), rgba(7, 7, 7, 0.22)) !important;

  box-shadow: inset 0 1px 0 rgba(243, 244, 246, 0.07) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__step-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__step-num {
  color: var(--cb1-muted) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__step-dot {
  width: 8px !important;
  height: 8px !important;

  border-radius: 999px !important;
  background: var(--cb1-muted) !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__step strong {
  display: block !important;

  color: var(--cb1-text) !important;

  font-size: 18px !important;
  line-height: 1.16 !important;
  letter-spacing: -0.03em !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__step > span:last-child {
  color: var(--cb1-muted) !important;

  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Footer */
html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__footer {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__footer-info {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;

  min-height: 34px !important;
  padding: 0 11px !important;

  border-radius: 999px !important;
  border: 1px solid rgba(243, 244, 246, 0.11) !important;

  background: rgba(243, 244, 246, 0.055) !important;
  color: var(--cb1-muted) !important;

  font-size: 12px !important;
  font-weight: 800 !important;
}

html body .mgym-html-config-page #mgymConfigSilverHero.configuracion_bloque_1 .configuracion_bloque_1__chip i {
  width: 6px !important;
  height: 6px !important;

  border-radius: 999px !important;
  background: var(--cb1-muted) !important;
}


/* Final */
html body .mgym-html-config-page .mgym-config-final-summary{
  padding:22px!important;
}
html body .mgym-html-config-page .mgym-config-final-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:16px!important;
}
html body .mgym-html-config-page .mgym-config-final-card{
  min-height:118px!important;
  padding:18px!important;
  border-radius:22px!important;
  background:rgba(75,85,99,.24)!important;
  border:1px solid rgba(156,163,175,.22)!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.08),0 14px 30px rgba(0,0,0,.20)!important;
}
html body .mgym-html-config-page .mgym-config-final-card span{
  display:block!important;
  color:#D8DEE8!important;
  font-size:.72rem!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
}
html body .mgym-html-config-page .mgym-config-final-card strong{
  display:block!important;
  margin-top:10px!important;
  font-size:1.08rem!important;
}
html body .mgym-html-config-page .mgym-config-final-actions{
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:16px!important;
}

/* Botones */
html body .mgym-html-config-page :is(button,.btn){
  border-radius:16px!important;
  min-height:44px!important;
  border:1px solid rgba(243,244,246,.20)!important;
  background:linear-gradient(145deg,rgba(92,101,113,.72),rgba(45,51,60,.72))!important;
  color:#F3F4F6!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.10),0 10px 22px rgba(0,0,0,.22)!important;
}
html body .mgym-html-config-page .btn.success,
html body .mgym-html-config-page .btn.primary{
  background:linear-gradient(145deg,rgba(156,163,175,.82),rgba(75,85,99,.76))!important;
}

@media(max-width:1180px){
  html body .mgym-html-config-page .mgym-config-silver-hero__inner,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block,
  html body .mgym-html-config-page .mgym-config-summary-shell,
  html body .mgym-html-config-page .mgym-hub-routines-grid,
  html body .mgym-html-config-page .mgym-hub-planning-grid,
  html body .mgym-html-config-page .methodDetailGrid{grid-template-columns:1fr!important;}
  html body .mgym-html-config-page .mgym-config-flow-strip,
  html body .mgym-html-config-page .mgym-plan-config-fields,
  html body .mgym-html-config-page .mgym-config-training-logic .form.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .mgym-html-config-page .mgym-config-summary-kpi-zone .kpis,
  html body .mgym-html-config-page .mgym-config-final-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  html body .mgym-html-config-page{width:100%!important;max-width:100%!important;margin:0 auto 28px!important;padding:0 8px!important;}
  html body .mgym-html-config-page .mgym-config-local-nav{overflow-x:auto!important;justify-content:flex-start!important;width:100%!important;}
  html body .mgym-html-config-page .mgym-config-flow-strip,
  html body .mgym-html-config-page .mgym-plan-config-fields,
  html body .mgym-html-config-page .mgym-config-training-logic .summaryBar,
  html body .mgym-html-config-page .mgym-config-training-logic .form.cols-3,
  html body .mgym-html-config-page .mgym-plan-micro-grid,
  html body .mgym-html-config-page .mgym-config-summary-kpi-zone .kpis,
  html body .mgym-html-config-page .mgym-config-final-grid,
  html body .mgym-html-config-page .mgym-config-silver-hero__meta{grid-template-columns:1fr!important;}
  html body .mgym-html-config-page .mgym-meso-horizontal-row{grid-auto-columns:minmax(280px,86vw)!important;}
  html body .mgym-html-config-page .mgym-config-silver-hero,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block,
  html body .mgym-html-config-page .mgym-config-training-logic,
  html body .mgym-html-config-page .mgym-periodization-editor,
  html body .mgym-html-config-page .mgym-hub-routines,
  html body .mgym-html-config-page .mgym-hub-planning,
  html body .mgym-html-config-page .mgym-config-final-summary{padding:16px!important;border-radius:22px!important;}
}

/* v264d — Configuración limpia real: mesociclos cerrados, microciclos del activo y rutinas legibles */
html body .mgym-html-config-page #configMesoPlanner{
  width:100%!important;
  margin-top:14px!important;
}
html body .mgym-html-config-page #mgymMobilePlanningUi,
html body .mgym-html-config-page .mgym-mobile-plan-shell,
html body .mgym-html-config-page .mgym-mobile-plan-ui{
  display:none!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean{
  display:block!important;
  width:100%!important;
  padding:22px!important;
  border-radius:28px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:linear-gradient(145deg,rgba(55,62,72,.68),rgba(31,36,42,.58) 48%,rgba(25,25,25,.28))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 22px 55px rgba(0,0,0,.22)!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean__head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:start!important;
  margin-bottom:18px!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean__head h3{
  margin:.15rem 0 .35rem!important;
  font-size:clamp(1.8rem,3vw,3rem)!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean__head p{
  max-width:880px!important;
  margin:0!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean__kpis{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(96px,1fr))!important;
  gap:10px!important;
  min-width:260px!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean__kpis span{
  display:grid!important;
  gap:2px!important;
  padding:12px!important;
  border-radius:18px!important;
  background:rgba(75,85,99,.34)!important;
  border:1px solid rgba(243,244,246,.14)!important;
  color:#DDE3EC!important;
  font-size:.78rem!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}
html body .mgym-html-config-page .mgym-config-planner-clean__kpis b{
  color:#fff!important;
  font-size:1.45rem!important;
  line-height:1!important;
}
html body .mgym-html-config-page .mgym-config-meso-strip{
  display:flex!important;
  gap:12px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 2px 14px!important;
  scroll-snap-type:x proximity!important;
  -webkit-overflow-scrolling:touch!important;
}
html body .mgym-html-config-page .mgym-config-meso-strip::-webkit-scrollbar{height:9px!important}
html body .mgym-html-config-page .mgym-config-meso-strip::-webkit-scrollbar-thumb{background:rgba(156,163,175,.38)!important;border-radius:999px!important}
html body .mgym-html-config-page .mgym-config-meso-card{
  flex:0 0 clamp(250px,28vw,360px)!important;
  min-width:250px!important;
  scroll-snap-align:start!important;
  padding:0!important;
  border-radius:22px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:linear-gradient(145deg,rgba(84,94,108,.48),rgba(36,41,48,.55))!important;
  box-shadow:0 14px 36px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.08)!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-config-meso-card.is-active{
  border-color:rgba(243,244,246,.36)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.28),0 0 0 1px rgba(243,244,246,.10) inset!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__button{
  appearance:none!important;
  width:100%!important;
  border:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:16px!important;
  background:transparent!important;
  color:#F3F4F6!important;
  text-align:left!important;
  cursor:pointer!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__number,
html body .mgym-html-config-page .mgym-plan-step-dot{
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(156,163,175,.30)!important;
  border:1px solid rgba(243,244,246,.18)!important;
  color:#fff!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__text{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__text strong{
  white-space:normal!important;
  line-height:1.15!important;
  font-size:1rem!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__text small{
  white-space:normal!important;
  font-size:.78rem!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__state{
  min-width:48px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:rgba(25,25,25,.22)!important;
  border:1px solid rgba(243,244,246,.16)!important;
  text-align:center!important;
  color:#fff!important;
  font-weight:800!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  padding:0 16px 16px!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__meta span{
  padding:6px 9px!important;
  border-radius:999px!important;
  background:rgba(25,25,25,.18)!important;
  border:1px solid rgba(243,244,246,.12)!important;
  color:#DDE3EC!important;
  font-size:.74rem!important;
  line-height:1.1!important;
}
html body .mgym-html-config-page .mgym-config-active-meso,
html body .mgym-html-config-page .mgym-config-preview-card{
  margin-top:16px!important;
  padding:20px!important;
  border-radius:26px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:rgba(31,36,42,.46)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:16px!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__head h4{
  margin:.15rem 0 .25rem!important;
  color:#fff!important;
  font-size:clamp(1.35rem,2.2vw,2.2rem)!important;
  letter-spacing:-.035em!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__head p{margin:0!important}
html body .mgym-html-config-page .mgym-config-active-meso__controls{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin-bottom:18px!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__controls .field,
html body .mgym-html-config-page .mgym-config-micro-card .field{
  display:grid!important;
  gap:6px!important;
  margin:0!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__controls :is(input,select),
html body .mgym-html-config-page .mgym-config-micro-card :is(input,select){
  width:100%!important;
  min-height:44px!important;
  border-radius:15px!important;
  background:rgba(12,14,16,.38)!important;
  border:1px solid rgba(156,163,175,.22)!important;
  color:#F3F4F6!important;
  padding:0 12px!important;
}


/* =========================================================
   Flow configuración · tarjetas con imagen
   Responsive estable
   ========================================================= */

html body .mgym-html-config-page .mgym-config-flow-strip.mgym-config-flow-strip--cards {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 18px 0 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body .mgym-html-config-page .mgym-config-flow-strip--cards .mgym-config-flow-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: 0 !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  text-decoration: none !important;
  color: #F3F4F6 !important;
  border: 1px solid rgba(156, 163, 175, 0.20) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(243, 244, 246, 0.08), transparent 34%),
    linear-gradient(145deg, rgba(75, 85, 99, 0.24), rgba(7, 7, 7, 0.22)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 16px 36px rgba(0, 0, 0, 0.22) !important;
  transition:
    transform 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease !important;
}

html body .mgym-html-config-page .mgym-config-flow-strip--cards .mgym-config-flow-card:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(243, 244, 246, 0.34) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 22px 48px rgba(0, 0, 0, 0.30) !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 165px !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #191919 !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.01) !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(7, 7, 7, 0.04), rgba(7, 7, 7, 0.34)) !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__step {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  z-index: 2 !important;
  width: 38px !important;
  height: 38px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(243, 244, 246, 0.88) !important;
  color: #070707 !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  border: 1px solid rgba(255, 255, 255, 0.36) !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28) !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__body {
  display: grid !important;
  gap: 8px !important;
  padding: 18px !important;
  min-height: 128px !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__body strong {
  display: block !important;
  color: #F3F4F6 !important;
  font-size: 18px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
}

html body .mgym-html-config-page .mgym-config-flow-card__body small {
  display: block !important;
  color: #C7CDD6 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Tablet grande */
@media (max-width: 1280px) {
  html body .mgym-html-config-page .mgym-config-flow-strip.mgym-config-flow-strip--cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__media {
    height: 180px !important;
  }
}

/* Tablet / móvil horizontal */
@media (max-width: 900px) {
  html body .mgym-html-config-page .mgym-config-flow-strip.mgym-config-flow-strip--cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__media {
    height: 170px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__body {
    min-height: 112px !important;
  }
}

/* Móvil */
@media (max-width: 620px) {
  html body .mgym-html-config-page .mgym-config-flow-strip.mgym-config-flow-strip--cards {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin: 14px 0 20px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card {
    border-radius: 22px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__media {
    height: 210px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__body {
    min-height: auto !important;
    padding: 16px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__body strong {
    font-size: 19px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__step {
    width: 36px !important;
    height: 36px !important;
    font-size: 15px !important;
  }
}
html body .mgym-html-config-page .mgym-config-structure-panel{
  display:grid!important;
  grid-template-columns:minmax(220px,.28fr) minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  padding:16px!important;
  border-radius:22px!important;
  background:rgba(75,85,99,.18)!important;
  border:1px solid rgba(156,163,175,.16)!important;
  margin-bottom:18px!important;
}
html body .mgym-html-config-page .mgym-config-structure-panel p{margin:.35rem 0 0!important}
html body .mgym-html-config-page .mgym-config-structure-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:10px!important;
}
html body .mgym-html-config-page .mgym-config-structure-card{
  min-height:94px!important;
  text-align:left!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  padding:13px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(25,25,25,.20)!important;
  color:#F3F4F6!important;
}
html body .mgym-html-config-page .mgym-config-structure-card.is-active{
  background:rgba(156,163,175,.24)!important;
  border-color:rgba(243,244,246,.30)!important;
}
html body .mgym-html-config-page .mgym-config-structure-card span:last-child{display:grid!important;gap:4px!important;min-width:0!important}
html body .mgym-html-config-page .mgym-config-structure-card small,
html body .mgym-html-config-page .mgym-config-structure-card em{font-style:normal!important;color:#C7CDD6!important;line-height:1.25!important}
html body .mgym-html-config-page .mgym-config-micro-section__head{
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-config-micro-section__head p{margin:.25rem 0 0!important}
html body .mgym-html-config-page .mgym-config-micro-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  max-height:680px!important;
  overflow:auto!important;
  padding-right:8px!important;
}
html body .mgym-html-config-page .mgym-config-micro-card{
  padding:16px!important;
  border-radius:22px!important;
  background:rgba(75,85,99,.22)!important;
  border:1px solid rgba(156,163,175,.18)!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-config-micro-card.is-active{
  border-color:rgba(243,244,246,.28)!important;
  background:rgba(75,85,99,.30)!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__head{
  display:flex!important;
  gap:12px!important;
  align-items:center!important;
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__head > div{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__head strong,
html body .mgym-html-config-page .mgym-config-micro-card__head small{
  white-space:normal!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__inputs{
  display:grid!important;
  grid-template-columns:1fr 180px!important;
  gap:12px!important;
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-config-micro-days{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
}
html body .mgym-html-config-page .mgym-config-micro-days [data-micro-day],
html body .mgym-html-config-page .mgym-plan-days button{
  width:auto!important;
  min-width:74px!important;
  min-height:42px!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:rgba(75,85,99,.34)!important;
  color:#F3F4F6!important;
  line-height:1.1!important;
  white-space:normal!important;
  text-align:center!important;
}
html body .mgym-html-config-page .mgym-config-micro-days [data-micro-day].is-active,
html body .mgym-html-config-page .mgym-plan-days button.is-active{
  background:rgba(156,163,175,.32)!important;
  border-color:rgba(243,244,246,.38)!important;
}
html body .mgym-html-config-page .mgym-config-preview-card .mgym-meso-preview{
  display:grid!important;
  gap:10px!important;
  margin-top:12px!important;
}
html body .mgym-html-config-page .mgym-config-preview-card .mgym-meso-preview > *{
  padding:14px!important;
  border-radius:16px!important;
  background:rgba(25,25,25,.18)!important;
  border:1px solid rgba(156,163,175,.14)!important;
}

/* Rutinas antes que calendario y con tarjetas limpias */
html body .mgym-html-config-page .mgym-calendar-routines-hub{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
}
html body .mgym-html-config-page .mgym-calendar-routines-hub .mgym-hub-routines{order:1!important}
html body .mgym-html-config-page .mgym-calendar-routines-hub .mgym-hub-planning{order:2!important}
html body .mgym-html-config-page .mgym-hub-routines-grid{
  display:grid!important;
  grid-template-columns:minmax(300px,.42fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
html body .mgym-html-config-page .mgym-hub-planned-days,
html body .mgym-html-config-page .mgym-hub-routine-library{
  border-radius:24px!important;
  padding:16px!important;
  background:rgba(31,36,42,.42)!important;
  border:1px solid rgba(156,163,175,.18)!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page #mgymHubPlannedDaysList,
html body .mgym-html-config-page #mgymHubRoutineLibraryList{
  max-height:720px!important;
  overflow:auto!important;
  padding-right:6px!important;
}
html body .mgym-html-config-page .mgym-hub-meso-assign-strip,
html body .mgym-html-config-page .mgym-hub-routine-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
}
html body .mgym-html-config-page .mgym-hub-meso-assign-card,
html body .mgym-html-config-page .mgym-hub-routine-card{
  width:100%!important;
  min-width:0!important;
  padding:16px!important;
  border-radius:22px!important;
  background:rgba(75,85,99,.20)!important;
  border:1px solid rgba(156,163,175,.18)!important;
  color:#F3F4F6!important;
  box-shadow:none!important;
}
html body .mgym-html-config-page .mgym-hub-routine-card__top{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-hub-routine-card__top div{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}
html body .mgym-html-config-page .mgym-hub-routine-card__top b,
html body .mgym-html-config-page .mgym-hub-routine-card__top small{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
html body .mgym-html-config-page .mgym-routine-special-meta{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;
  gap:8px!important;
  margin:12px 0!important;
}
html body .mgym-html-config-page .mgym-routine-special-meta span{
  display:grid!important;
  gap:2px!important;
  padding:9px 10px!important;
  border-radius:14px!important;
  background:rgba(25,25,25,.18)!important;
  border:1px solid rgba(156,163,175,.12)!important;
  color:#DDE3EC!important;
  overflow-wrap:anywhere!important;
}
html body .mgym-html-config-page .mgym-routine-special-meta b{
  display:block!important;
  color:#AEB6C4!important;
  font-size:.68rem!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
html body .mgym-html-config-page .mgym-routine-special-kpis{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:12px 0!important;
}
html body .mgym-html-config-page .mgym-routine-special-kpis span{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:8px 10px!important;
  border-radius:999px!important;
  background:rgba(25,25,25,.18)!important;
  border:1px solid rgba(156,163,175,.12)!important;
}
html body .mgym-html-config-page .mgym-routine-special-notes{
  margin:10px 0 12px!important;
  padding:12px!important;
  border-radius:16px!important;
  background:rgba(25,25,25,.14)!important;
}
html body .mgym-html-config-page .mgym-hub-planning-grid{
  display:grid!important;
  grid-template-columns:minmax(240px,.30fr) minmax(380px,1fr) minmax(240px,.32fr)!important;
  gap:18px!important;
}
html body .mgym-html-config-page .mgym-hub-calendar-wrap,
html body .mgym-html-config-page .mgym-hub-plan-summary,
html body .mgym-html-config-page .mgym-hub-meso-sidebar{
  border-radius:24px!important;
  padding:16px!important;
  background:rgba(31,36,42,.42)!important;
  border:1px solid rgba(156,163,175,.18)!important;
}



/* v264e — Ajuste radical de orden: Configuración como cockpit limpio, no lista cruda */
html body .mgym-html-config-page #configMesoPlanner > #mgymMobilePlanningUi,
html body .mgym-html-config-page .mgym-mobile-planning-ui,
html body .mgym-html-config-page .mgym-mobile-plan-panel,
html body .mgym-html-config-page .mgym-mobile-plan-footer,
html body .mgym-html-config-page .mgym-mobile-plan-sheet,
html body .mgym-html-config-page .mgym-mobile-plan-overlay{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  overflow:hidden!important;
}

/* Mesociclos: carrusel limpio y tarjetas sin abrir todo */
html body .mgym-html-config-page .mgym-config-planner-clean{
  padding:24px!important;
  background:linear-gradient(145deg,rgba(63,70,81,.64),rgba(31,35,42,.68) 48%,rgba(22,24,28,.46))!important;
}
html body .mgym-html-config-page .mgym-config-meso-strip{
  display:flex!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:4px 2px 18px!important;
}
html body .mgym-html-config-page .mgym-config-meso-card{
  flex:0 0 min(360px,84vw)!important;
  min-height:160px!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__button{
  min-height:92px!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__meta{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  padding:0 16px 16px!important;
}
html body .mgym-html-config-page .mgym-config-meso-card__meta span{
  width:100%!important;
  text-align:center!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Panel activo más sobrio */
html body .mgym-html-config-page .mgym-config-active-meso{
  display:grid!important;
  gap:16px!important;
  background:rgba(36,41,48,.55)!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__controls{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  padding:14px!important;
  border-radius:22px!important;
  background:rgba(75,85,99,.16)!important;
  border:1px solid rgba(156,163,175,.14)!important;
}
html body .mgym-html-config-page .mgym-config-active-meso__controls .field:nth-child(6){
  display:none!important;
}

/* La estructura de rutinas se decide en el bloque Rutinas, no dentro de Mesociclos */
html body .mgym-html-config-page .mgym-config-structure-panel,
html body .mgym-html-config-page .mgym-config-preview-card{
  display:none!important;
}

/* Microciclos desplegables: solo el activo abierto */
html body .mgym-html-config-page .mgym-config-micro-section{
  padding:16px!important;
  border-radius:24px!important;
  background:rgba(75,85,99,.14)!important;
  border:1px solid rgba(156,163,175,.14)!important;
}
html body .mgym-html-config-page .mgym-config-micro-list{
  max-height:none!important;
  overflow:visible!important;
  padding-right:0!important;
}
html body .mgym-html-config-page .mgym-config-micro-card{
  padding:0!important;
  background:rgba(25,29,34,.42)!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__head{
  position:relative!important;
  margin:0!important;
  padding:15px 52px 15px 15px!important;
  cursor:pointer!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__head::after{
  content:'+'!important;
  position:absolute!important;
  right:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.18)!important;
  border:1px solid rgba(243,244,246,.14)!important;
  color:#F3F4F6!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-config-micro-card.is-active .mgym-config-micro-card__head::after{
  content:'−'!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__body{
  display:none!important;
  padding:0 15px 15px!important;
}
html body .mgym-html-config-page .mgym-config-micro-card.is-active .mgym-config-micro-card__body{
  display:block!important;
}
html body .mgym-html-config-page .mgym-config-micro-card__inputs{
  grid-template-columns:minmax(0,1fr) minmax(120px,180px)!important;
}
html body .mgym-html-config-page .mgym-config-micro-days{
  gap:7px!important;
}
html body .mgym-html-config-page .mgym-config-micro-days [data-micro-day]{
  min-width:58px!important;
  min-height:38px!important;
  padding:7px 8px!important;
  border-radius:13px!important;
  font-size:.78rem!important;
}

/* Rutinas primero, calendario después: bloque separado y con aire */
html body .mgym-html-config-page .mgym-calendar-routines-hub{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .mgym-html-config-page .mgym-calendar-routines-hub .mgym-hub-routines{
  order:1!important;
  padding:22px!important;
}
html body .mgym-html-config-page .mgym-calendar-routines-hub .mgym-hub-planning{
  order:2!important;
  padding:22px!important;
}
html body .mgym-html-config-page .mgym-hub-routines-grid{
  display:grid!important;
  grid-template-columns:minmax(300px,390px) minmax(0,1fr)!important;
  gap:18px!important;
}
html body .mgym-html-config-page #mgymHubPlannedDaysList,
html body .mgym-html-config-page #mgymHubRoutineLibraryList{
  max-height:620px!important;
  overflow:auto!important;
}
html body .mgym-html-config-page .mgym-hub-routine-list--horizontal{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;
  gap:14px!important;
}
html body .mgym-html-config-page .mgym-hub-routine-card{
  min-height:260px!important;
  display:flex!important;
  flex-direction:column!important;
}
html body .mgym-html-config-page .mgym-hub-routine-card .mgym-select-routine-btn{
  margin-top:auto!important;
}
html body .mgym-html-config-page .mgym-hub-meso-micro-list{
  display:none!important;
}
html body .mgym-html-config-page .mgym-hub-meso-assign-card.is-active .mgym-hub-meso-micro-list{
  display:grid!important;
  gap:8px!important;
  margin-top:12px!important;
}

/* Calendario más compacto para no competir con rutinas */
html body .mgym-html-config-page .mgym-hub-planning-grid{
  grid-template-columns:minmax(220px,320px) minmax(0,1fr) minmax(220px,320px)!important;
}
html body .mgym-html-config-page .mgym-hub-calendar{
  min-height:420px!important;
}
html body .mgym-html-config-page .mgym-hub-day{
  min-height:82px!important;
  padding:8px!important;
}
html body .mgym-html-config-page .mgym-hub-plan-pill b,
html body .mgym-html-config-page .mgym-hub-plan-pill small,
html body .mgym-html-config-page .mgym-hub-plan-pill em{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}



/* === v264g Configuración limpia: neutraliza hub viejo y pinta planner estable === */
.mgym-calendar-routines-hub,
.mgym-hub-section,
.mgym-hub-planning,
.mgym-hub-routines,
.mgym-hub-planning-grid,
.mgym-hub-calendar-wrap,
.mgym-hub-calendar,
.mgym-hub-meso-sidebar,
.mgym-hub-plan-summary,
.mgym-hub-routines-grid,
.mgym-hub-planned-days,
.mgym-hub-routine-library {
  box-sizing: border-box;
}

.mgym-config-clean-planner {
  width: min(100%, 1320px);
  margin-inline: auto;
  border: 1px solid rgba(156,163,175,.22);
  border-radius: 28px;
  padding: 24px;
  background:
    linear-gradient(135deg, rgba(75,85,99,.32), rgba(25,25,25,.46) 55%, rgba(156,163,175,.12)),
    rgba(25,25,25,.58);
  box-shadow: 0 24px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
  overflow: hidden;
}

.mgym-clean-head,
.mgym-clean-section-title,
.mgym-clean-calendar-layout,
.mgym-clean-routine-grid {
  display: grid;
  gap: 16px;
}

.mgym-clean-head,
.mgym-clean-section-title {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.mgym-clean-head .cardTitle,
.mgym-clean-section-title h3 {
  margin: 0;
  color: #f3f4f6;
  letter-spacing: -0.03em;
}

.mgym-clean-head p,
.mgym-clean-note,
.mgym-clean-section-title p {
  max-width: 860px;
  margin-top: 8px;
  color: rgba(243,244,246,.72);
  line-height: 1.55;
}

.mgym-clean-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0;
}

.mgym-clean-steps > div,
.mgym-clean-card,
.mgym-clean-meso-chip,
.mgym-clean-micro,
.mgym-clean-routine-item,
.mgym-clean-summary-card,
.mgym-clean-day {
  border: 1px solid rgba(156,163,175,.22);
  background: linear-gradient(135deg, rgba(75,85,99,.30), rgba(25,25,25,.34));
  border-radius: 20px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 16px 36px rgba(0,0,0,.18);
}

.mgym-clean-steps > div {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
}

.mgym-clean-steps b {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(156,163,175,.20);
}

.mgym-clean-card {
  padding: 18px;
  margin-top: 16px;
}

.mgym-clean-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.mgym-clean-meso-rail {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 14px 2px 8px;
  scrollbar-width: thin;
}

.mgym-clean-meso-chip {
  min-width: 230px;
  padding: 14px 16px;
  color: #f3f4f6;
  text-align: left;
  cursor: pointer;
}

.mgym-clean-meso-chip.is-active {
  border-color: rgba(156,163,175,.55);
  background: linear-gradient(135deg, rgba(156,163,175,.24), rgba(75,85,99,.36));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 18px 42px rgba(0,0,0,.22);
}

.mgym-clean-meso-chip b,
.mgym-clean-meso-chip span,
.mgym-clean-meso-chip small {
  display: block;
}

.mgym-clean-meso-chip small,
.mgym-clean-routine-item small,
.mgym-clean-summary-card small,
.mgym-clean-day small {
  color: rgba(243,244,246,.62);
}

.mgym-clean-meso-detail {
  margin-top: 14px;
}

.mgym-clean-meso-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}

.mgym-clean-meso-summary > div {
  padding: 14px;
  border: 1px solid rgba(156,163,175,.18);
  border-radius: 18px;
  background: rgba(25,25,25,.20);
}

.mgym-clean-meso-summary small,
.mgym-clean-meso-summary strong {
  display: block;
}

.mgym-clean-micro-list {
  display: grid;
  gap: 10px;
}

.mgym-clean-micro {
  padding: 0;
  overflow: hidden;
}

.mgym-clean-micro summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.mgym-clean-micro summary::-webkit-details-marker { display: none; }
.mgym-clean-micro summary span,
.mgym-clean-micro summary small { display: block; }
.mgym-clean-micro summary em { font-style: normal; color: #f3f4f6; opacity: .86; }

.mgym-clean-days {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 16px 16px;
}

.mgym-clean-days span {
  min-width: 86px;
  padding: 9px 10px;
  border-radius: 14px;
  border: 1px solid rgba(156,163,175,.22);
  background: rgba(75,85,99,.26);
  color: #f3f4f6;
}

.mgym-clean-days small { display: block; color: rgba(243,244,246,.62); }

.mgym-clean-routine-grid {
  grid-template-columns: 280px minmax(0,1fr);
  align-items: start;
}

.mgym-clean-routine-current,
.mgym-clean-routine-library {
  padding: 16px;
  border: 1px solid rgba(156,163,175,.20);
  border-radius: 20px;
  background: rgba(25,25,25,.18);
}

.mgym-clean-routine-current small,
.mgym-clean-routine-current strong,
.mgym-clean-routine-current span { display: block; }

.mgym-clean-routine-list {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

.mgym-clean-routine-item {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 14px;
}

.mgym-clean-routine-item p { margin: 6px 0 0; color: rgba(243,244,246,.68); }

.mgym-clean-calendar-layout {
  grid-template-columns: 260px minmax(0, 1fr);
  align-items: start;
}

.mgym-clean-calendar-summary {
  display: grid;
  gap: 10px;
}

.mgym-clean-summary-card {
  padding: 14px;
}

.mgym-clean-summary-card strong { display:block; margin-top: 4px; }

.mgym-clean-calendar-main {
  min-width: 0;
  border: 1px solid rgba(156,163,175,.20);
  border-radius: 22px;
  padding: 16px;
  background: rgba(25,25,25,.18);
}

.mgym-clean-calendar-title {
  font-weight: 900;
  color: #f3f4f6;
  margin-bottom: 12px;
}

.mgym-clean-weekdays,
.mgym-clean-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}

.mgym-clean-weekdays span {
  text-align: center;
  font-size: 11px;
  font-weight: 900;
  color: rgba(243,244,246,.68);
  padding: 6px 0;
}

.mgym-clean-day {
  min-height: 88px;
  padding: 10px;
  overflow: hidden;
}

.mgym-clean-day b,
.mgym-clean-day span,
.mgym-clean-day small { display:block; }
.mgym-clean-day.is-muted { opacity: .25; background: transparent; }
.mgym-clean-day.is-planned { border-color: rgba(156,163,175,.42); background: linear-gradient(145deg, rgba(75,85,99,.48), rgba(25,25,25,.34)); }
.mgym-clean-day span { margin-top: 10px; font-weight: 800; font-size: 12px; }



/* v264h · Configuración renderizada en servidor: ciclos, rutinas y calendario estables */
.mgym-config-clean-planner {
  width: min(96%, 1320px);
  margin-inline: auto;
  overflow: hidden;
}

.mgym-config-clean-planner .mgym-clean-meso-rail {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 6px 4px 14px;
  scroll-snap-type: x proximity;
}

.mgym-config-clean-planner .mgym-clean-meso-chip {
  min-width: 210px;
  max-width: 260px;
  text-align: left;
  border: 1px solid rgba(226,232,240,.18);
  background: linear-gradient(145deg, rgba(156,163,175,.18), rgba(31,41,55,.32));
  color: #f8fafc;
  border-radius: 18px;
  padding: 14px 16px;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 18px 40px rgba(0,0,0,.18);
  scroll-snap-align: start;
}

.mgym-config-clean-planner .mgym-clean-meso-chip.is-active {
  border-color: rgba(56,189,248,.55);
  box-shadow: 0 0 0 1px rgba(56,189,248,.22), 0 18px 50px rgba(56,189,248,.10);
}

.mgym-config-clean-planner .mgym-clean-meso-chip b,
.mgym-config-clean-planner .mgym-clean-meso-chip span,
.mgym-config-clean-planner .mgym-clean-meso-chip small {
  display: block;
  line-height: 1.35;
}

.mgym-config-clean-planner .mgym-clean-meso-chip span {
  margin-top: 6px;
  color: rgba(248,250,252,.88);
}

.mgym-config-clean-planner .mgym-clean-meso-chip small {
  margin-top: 6px;
  color: rgba(203,213,225,.74);
}

.mgym-config-clean-planner .mgym-clean-meso-panel,
.mgym-config-clean-planner .mgym-clean-calendar-panel {
  display: none;
}

.mgym-config-clean-planner .mgym-clean-meso-panel.is-active,
.mgym-config-clean-planner .mgym-clean-calendar-panel.is-active {
  display: block;
}

.mgym-config-clean-planner .mgym-clean-meso-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.mgym-config-clean-planner .mgym-clean-meso-summary > div,
.mgym-config-clean-planner .mgym-clean-summary-card,
.mgym-config-clean-planner .mgym-clean-routine-current,
.mgym-config-clean-planner .mgym-clean-routine-item,
.mgym-config-clean-planner .mgym-clean-micro {
  border: 1px solid rgba(226,232,240,.15);
  background: linear-gradient(145deg, rgba(156,163,175,.14), rgba(15,23,42,.20));
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 16px 34px rgba(0,0,0,.16);
}

.mgym-config-clean-planner .mgym-clean-meso-summary > div {
  padding: 12px 14px;
}

.mgym-config-clean-planner .mgym-clean-meso-summary small,
.mgym-config-clean-planner .mgym-clean-summary-card small,
.mgym-config-clean-planner .mgym-clean-routine-current small {
  display: block;
  color: rgba(203,213,225,.7);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: 5px;
}

.mgym-config-clean-planner .mgym-clean-meso-summary strong,
.mgym-config-clean-planner .mgym-clean-summary-card strong,
.mgym-config-clean-planner .mgym-clean-routine-current strong {
  color: #f8fafc;
  font-size: 15px;
}

.mgym-config-clean-planner .mgym-clean-micro-list {
  display: grid;
  gap: 10px;
}

.mgym-config-clean-planner .mgym-clean-micro {
  padding: 0;
  overflow: hidden;
}

.mgym-config-clean-planner .mgym-clean-micro summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.mgym-config-clean-planner .mgym-clean-micro summary::-webkit-details-marker {
  display: none;
}

.mgym-config-clean-planner .mgym-clean-micro summary span,
.mgym-config-clean-planner .mgym-clean-micro summary small {
  display: block;
}

.mgym-config-clean-planner .mgym-clean-micro summary small {
  margin-top: 4px;
  color: rgba(203,213,225,.72);
}

.mgym-config-clean-planner .mgym-clean-micro summary em {
  font-style: normal;
  border: 1px solid rgba(226,232,240,.16);
  border-radius: 999px;
  padding: 6px 10px;
  color: #e5e7eb;
  background: rgba(255,255,255,.06);
}

.mgym-config-clean-planner .mgym-clean-days {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 16px 16px;
}

.mgym-config-clean-planner .mgym-clean-days span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 36px;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(148,163,184,.16);
  border: 1px solid rgba(226,232,240,.13);
  color: #f8fafc;
}

.mgym-config-clean-planner .mgym-clean-days small {
  color: rgba(203,213,225,.72);
}

.mgym-config-clean-planner .mgym-clean-routine-grid,
.mgym-config-clean-planner .mgym-clean-calendar-layout {
  display: grid;
  grid-template-columns: minmax(220px, 300px) 1fr;
  gap: 16px;
  align-items: start;
}

.mgym-config-clean-planner .mgym-clean-routine-current,
.mgym-config-clean-planner .mgym-clean-summary-card {
  padding: 16px;
}

.mgym-config-clean-planner .mgym-clean-routine-current span {
  display: block;
  margin-top: 8px;
  color: rgba(203,213,225,.78);
}

.mgym-config-clean-planner .mgym-clean-routine-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  max-height: 430px;
  overflow: auto;
  padding-right: 4px;
}

.mgym-config-clean-planner .mgym-clean-routine-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  padding: 14px;
}

.mgym-config-clean-planner .mgym-clean-routine-item strong,
.mgym-config-clean-planner .mgym-clean-routine-item small,
.mgym-config-clean-planner .mgym-clean-routine-item p {
  display: block;
  margin: 0;
}

.mgym-config-clean-planner .mgym-clean-routine-item small {
  margin-top: 5px;
  color: rgba(203,213,225,.72);
}

.mgym-config-clean-planner .mgym-clean-routine-item p {
  margin-top: 8px;
  color: rgba(226,232,240,.78);
}

.mgym-config-clean-planner .mgym-clean-calendar-summary {
  display: grid;
  gap: 10px;
}

.mgym-config-clean-planner .mgym-clean-calendar-main {
  border: 1px solid rgba(226,232,240,.16);
  border-radius: 20px;
  padding: 16px;
  background: rgba(15,23,42,.12);
}

.mgym-config-clean-planner .mgym-clean-calendar-title {
  font-weight: 800;
  margin-bottom: 12px;
  color: #f8fafc;
}

.mgym-config-clean-planner .mgym-clean-weekdays {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
  margin-bottom: 8px;
}

.mgym-config-clean-planner .mgym-clean-weekdays span {
  text-align: center;
  font-size: 11px;
  color: rgba(203,213,225,.72);
  font-weight: 800;
  letter-spacing: .07em;
}

.mgym-config-clean-planner .mgym-clean-calendar-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 10px;
}

.mgym-config-clean-planner .mgym-clean-day {
  min-height: 86px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.14);
  background: linear-gradient(145deg, rgba(75,85,99,.28), rgba(17,24,39,.24));
  padding: 12px;
}

.mgym-config-clean-planner .mgym-clean-day b,
.mgym-config-clean-planner .mgym-clean-day span,
.mgym-config-clean-planner .mgym-clean-day small {
  display: block;
}

.mgym-config-clean-planner .mgym-clean-day b {
  color: #f8fafc;
  margin-bottom: 7px;
}

.mgym-config-clean-planner .mgym-clean-day span {
  color: #e5e7eb;
  font-weight: 800;
}

.mgym-config-clean-planner .mgym-clean-day small {
  color: rgba(203,213,225,.76);
  margin-top: 6px;
}




/* v264i — Ajuste real Configuración: ancho 96%, tarjetas mesociclo premium y datos conectados */
html body .entry-content .mgym-html-config-page,
html body .ct-container .mgym-html-config-page,
html body .site-main .mgym-html-config-page,
html body .mgym-html-config-page{
  width:96vw!important;
  max-width:96vw!important;
  margin-left:calc(50% - 48vw)!important;
  margin-right:calc(50% - 48vw)!important;
}

html body .mgym-html-config-page .mgym-config-clean-planner{
  width:100%!important;
  max-width:100%!important;
  padding:28px!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-clean-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin-bottom:24px!important;
}

html body .mgym-html-config-page .mgym-clean-head h2{
  margin:3px 0 8px!important;
  letter-spacing:-.035em!important;
}

html body .mgym-html-config-page .mgym-clean-steps{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:18px 0 14px!important;
}

html body .mgym-html-config-page .mgym-clean-steps > div{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:52px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.30),rgba(25,25,25,.34))!important;
}

html body .mgym-html-config-page .mgym-clean-steps b{
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.24)!important;
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-clean-linked-summary{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:10px!important;
  margin:0 0 18px!important;
}

html body .mgym-html-config-page .mgym-clean-linked-summary > div{
  min-height:72px!important;
  padding:13px 14px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:
    radial-gradient(circle at 15% 0%,rgba(243,244,246,.08),transparent 36%),
    linear-gradient(150deg,rgba(75,85,99,.24),rgba(7,7,7,.20))!important;
}

html body .mgym-html-config-page .mgym-clean-linked-summary small,
html body .mgym-html-config-page .mgym-clean-meso-summary small,
html body .mgym-html-config-page .mgym-clean-summary-card small{
  display:block!important;
  margin-bottom:6px!important;
  font-size:10px!important;
  line-height:1!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  color:#9CA3AF!important;
  font-weight:800!important;
}

html body .mgym-html-config-page .mgym-clean-linked-summary strong,
html body .mgym-html-config-page .mgym-clean-meso-summary strong{
  display:block!important;
  font-size:14px!important;
  line-height:1.2!important;
  color:#F3F4F6!important;
  white-space:normal!important;
}

html body .mgym-html-config-page .mgym-clean-card{
  padding:20px!important;
  margin-top:14px!important;
  border-radius:24px!important;
}

html body .mgym-html-config-page .mgym-clean-section-title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:16px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-rail{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(255px,1fr)!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:4px 4px 14px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-color:rgba(156,163,175,.65) rgba(255,255,255,.08)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-height:132px!important;
  padding:18px!important;
  text-align:left!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 0% 0%,rgba(243,244,246,.11),transparent 35%),
    linear-gradient(145deg,rgba(75,85,99,.36),rgba(25,25,25,.30))!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.10),0 14px 30px rgba(0,0,0,.18)!important;
  color:#F3F4F6!important;
  cursor:pointer!important;
  scroll-snap-align:start!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:4px!important;
  border-radius:18px 0 0 18px!important;
  background:rgba(156,163,175,.26)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip.is-active{
  border-color:rgba(243,244,246,.38)!important;
  background:
    radial-gradient(circle at 0% 0%,rgba(243,244,246,.16),transparent 38%),
    linear-gradient(145deg,rgba(75,85,99,.52),rgba(31,36,43,.44))!important;
  transform:translateY(-1px)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip.is-active::before{
  background:linear-gradient(180deg,#F3F4F6,#9CA3AF)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip b{
  font-size:15px!important;
  line-height:1.15!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip span{
  font-size:13px!important;
  line-height:1.3!important;
  color:#D8DEE7!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip small{
  font-size:12px!important;
  color:#B9C0CA!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip em{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:4px!important;
  font-style:normal!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip em span{
  padding:5px 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.20)!important;
  color:#F3F4F6!important;
  font-size:10px!important;
  font-weight:800!important;
}

html body .mgym-html-config-page .mgym-clean-meso-detail{
  margin-top:10px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:14px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary > div{
  min-height:72px!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.18)!important;
}

html body .mgym-html-config-page .mgym-clean-micro-list{
  display:grid!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-clean-micro{
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.24),rgba(7,7,7,.18))!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-clean-micro summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:16px 18px!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-clean-micro summary b{
  display:block!important;
  margin-bottom:4px!important;
  font-size:14px!important;
}

html body .mgym-html-config-page .mgym-clean-micro summary small{
  color:#B9C0CA!important;
  font-size:12px!important;
}

html body .mgym-html-config-page .mgym-clean-micro summary em{
  min-width:48px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  text-align:center!important;
  font-style:normal!important;
  background:rgba(156,163,175,.16)!important;
  border:1px solid rgba(156,163,175,.22)!important;
}

html body .mgym-html-config-page .mgym-clean-days{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  padding:0 18px 16px!important;
}

html body .mgym-html-config-page .mgym-clean-days span{
  min-width:76px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(75,85,99,.26)!important;
  font-weight:800!important;
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-clean-days small{
  display:block!important;
  margin-top:2px!important;
  color:#D2D8E1!important;
  font-size:11px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-grid,
html body .mgym-html-config-page .mgym-clean-calendar-layout{
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
}

html body .mgym-html-config-page .mgym-clean-routine-current,
html body .mgym-html-config-page .mgym-clean-routine-library,
html body .mgym-html-config-page .mgym-clean-calendar-summary,
html body .mgym-html-config-page .mgym-clean-calendar-main{
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:rgba(7,7,7,.16)!important;
  padding:16px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  gap:10px!important;
  max-height:380px!important;
  overflow:auto!important;
  padding-right:4px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:14px!important;
  border-radius:17px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.18))!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item strong,
html body .mgym-html-config-page .mgym-clean-routine-current strong{
  display:block!important;
  color:#F3F4F6!important;
  font-size:14px!important;
  line-height:1.25!important;
  margin-bottom:6px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item small,
html body .mgym-html-config-page .mgym-clean-routine-current span{
  display:block!important;
  color:#B9C0CA!important;
  font-size:12px!important;
  line-height:1.35!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item p{
  margin:8px 0 0!important;
  color:#D2D8E1!important;
  font-size:12px!important;
  line-height:1.45!important;
}

html body .mgym-html-config-page .mgym-clean-calendar-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-clean-day{
  min-height:116px!important;
  padding:14px!important;
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.24),rgba(7,7,7,.18))!important;
}

html body .mgym-html-config-page .mgym-clean-day b{
  display:block!important;
  font-size:15px!important;
  margin-bottom:12px!important;
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-clean-day span,
html body .mgym-html-config-page .mgym-clean-day small{
  display:block!important;
  font-size:12px!important;
  color:#D2D8E1!important;
  line-height:1.35!important;
}

@media (max-width:1200px){
  html body .mgym-html-config-page .mgym-clean-linked-summary{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  html body .mgym-html-config-page .mgym-clean-calendar-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

  html body .mgym-html-config-page .mgym-config-clean-planner{
    padding:16px!important;
  }
  html body .mgym-html-config-page .mgym-clean-steps,
  html body .mgym-html-config-page .mgym-clean-linked-summary,
  html body .mgym-html-config-page .mgym-clean-meso-summary,
  html body .mgym-html-config-page .mgym-clean-routine-grid,
  html body .mgym-html-config-page .mgym-clean-calendar-layout{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-clean-calendar-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}




html body .mgym-html-config-page .mgym-config-summary-wide{
  margin-top:10px!important;
}
html body .mgym-html-config-page .mgym-config-summary-wide .kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
html body .mgym-html-config-page .mgym-config-summary-wide .kpi{
  min-height:86px!important;
  border-radius:18px!important;
  background:radial-gradient(circle at 15% 0%,rgba(243,244,246,.09),transparent 34%),linear-gradient(145deg,rgba(75,85,99,.26),rgba(7,7,7,.18))!important;
}

html body .mgym-html-config-page .mgym-clean-actions,
html body .mgym-html-config-page .mgym-clean-routine-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
html body .mgym-html-config-page .mgym-clean-actions .btn,
html body .mgym-html-config-page .mgym-clean-routine-actions .btn{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:900!important;
  color:#F3F4F6!important;
  border:1px solid rgba(243,244,246,.24)!important;
  background:radial-gradient(circle at 30% 18%,rgba(243,244,246,.22),transparent 34%),linear-gradient(145deg,rgba(75,85,99,.55),rgba(7,7,7,.26))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 24px rgba(0,0,0,.24)!important;
}
html body .mgym-html-config-page .mgym-clean-actions .btn:hover,
html body .mgym-html-config-page .mgym-clean-routine-actions .btn:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(243,244,246,.42)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-rail{
  grid-auto-columns:minmax(235px,1fr)!important;
  gap:12px!important;
  padding-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip{
  min-height:120px!important;
  padding:16px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-section{
  position:relative!important;
}
html body .mgym-html-config-page .mgym-clean-routine-grid{
  grid-template-columns:240px minmax(0,1fr)!important;
  gap:14px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-current{
  min-height:178px!important;
  background:radial-gradient(circle at 20% 0%,rgba(243,244,246,.10),transparent 38%),linear-gradient(145deg,rgba(75,85,99,.30),rgba(7,7,7,.20))!important;
}
html body .mgym-html-config-page .mgym-clean-routine-library{
  min-width:0!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-clean-routine-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:12px 0 10px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-toolbar small{
  display:block!important;
  margin-bottom:4px!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  font-size:10px!important;
  color:#9CA3AF!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-clean-routine-toolbar strong{
  display:block!important;
  font-size:13px!important;
  color:#F3F4F6!important;
  line-height:1.25!important;
}
html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  grid-template-rows:repeat(2,minmax(118px,1fr))!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(265px,31%)!important;
  gap:12px!important;
  max-height:none!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 4px 14px 2px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-color:rgba(156,163,175,.65) rgba(255,255,255,.08)!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item{
  min-height:118px!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:14px!important;
  border-radius:18px!important;
  scroll-snap-align:start!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:radial-gradient(circle at 10% 0%,rgba(243,244,246,.10),transparent 36%),linear-gradient(145deg,rgba(75,85,99,.28),rgba(7,7,7,.18))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 14px 26px rgba(0,0,0,.18)!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item:hover{
  border-color:rgba(243,244,246,.34)!important;
  transform:translateY(-1px)!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item__top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-bottom:8px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item__top span{
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.10em!important;
  color:#9CA3AF!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item__top b{
  min-width:34px!important;
  height:26px!important;
  padding:0 8px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.18)!important;
  border:1px solid rgba(156,163,175,.22)!important;
  color:#F3F4F6!important;
  font-size:11px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item strong{
  font-size:14px!important;
  margin:0 0 9px!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .mgym-html-config-page .mgym-clean-routine-tags{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-bottom:8px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-tags span{
  padding:5px 7px!important;
  border-radius:999px!important;
  background:rgba(7,7,7,.22)!important;
  border:1px solid rgba(156,163,175,.16)!important;
  font-size:10px!important;
  line-height:1!important;
  color:#D8DEE7!important;
  font-weight:800!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item p{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  margin:0!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item .btn{
  align-self:flex-start!important;
  min-height:32px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-size:12px!important;
}




/* v264k — ajuste real: 96% global, desktop limpio, sincronización visual y tarjetas tipo glass premium */
html body:has(.mgym-html-config-page) :is(.ct-container,.ct-container-full,.entry-content,.site-main > .ct-container,.site-main > .ct-container-full){
  width:96vw!important;
  max-width:96vw!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html body:has(.mgym-ent-page) :is(.mgym-ent-page,.mgym-html-config-page,.mgym-ent-page--configuracion,.mgym-ent-page--inicio,.mgym-ent-page--sesiones,.mgym-ent-page--registros,.mgym-ent-page--biblioteca,.mgym-ent-page--rutinas){
  width:96vw!important;
  max-width:96vw!important;
  margin-left:calc(50% - 48vw)!important;
  margin-right:calc(50% - 48vw)!important;
}

  html body .mgym-html-config-page .mgym-config-local-nav,
  html body .mgym-html-config-page :is(.mgym-mobile-plan-shell,.mgym-mobile-plan-ui,.mgym-mobile-planning-ui,.mgym-mobile-plan-panel,.mgym-mobile-plan-footer,.mgym-mobile-plan-sheet,.mgym-mobile-plan-overlay){
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body .mgym-html-config-page .mgym-config-silver-hero{
    margin-top:0!important;
  }
  html body .mgym-html-config-page .mgym-config-flow-strip{
    margin-top:10px!important;
  }
}


html body .mgym-html-config-page{
  --mg-card-cyan:rgba(48,219,236,.42);
  --mg-card-cyan-soft:rgba(48,219,236,.16);
  --mg-card-bg-a:rgba(31,42,50,.76);
  --mg-card-bg-b:rgba(15,19,24,.72);
}
html body .mgym-html-config-page :is(.card,.soft,.methodSubsection,.mgym-config-workspace,.mgym-config-silver-hero,.mgym-config-summary-wide,.mgym-plan-config-card,.mgym-config-plan-carbon-block,.mgym-clean-card,.mgym-clean-meso-chip,.mgym-clean-meso-summary > div,.mgym-clean-micro,.mgym-clean-routine-current,.mgym-clean-routine-library,.mgym-clean-routine-item,.mgym-clean-calendar-summary,.mgym-clean-calendar-main,.mgym-clean-day,.mgym-config-plan-carbon-block__info-card,.chartCard,.note,.summaryBar),
html body .mgym-ent-page :is([class*="exercise-card"],[class*="library-card"],[class*="routine-card"],[data-routine-card]){
  border-color:var(--mg-card-cyan)!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(48,219,236,.13),transparent 35%),
    radial-gradient(circle at 92% 100%,rgba(48,219,236,.08),transparent 34%),
    linear-gradient(145deg,var(--mg-card-bg-a),var(--mg-card-bg-b))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 18px 42px rgba(0,0,0,.28)!important;
}
html body .mgym-html-config-page :is(.card,.soft,.methodSubsection,.mgym-clean-card,.mgym-plan-config-card,.mgym-config-plan-carbon-block){
  border-radius:30px!important;
}
html body .mgym-html-config-page :is(.btn,button.btn){
  border-color:rgba(48,219,236,.30)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.44),rgba(7,7,7,.30))!important;
  color:#F3F4F6!important;
}
html body .mgym-html-config-page .btn.primary,
html body .mgym-html-config-page .btn.success,
html body .mgym-html-config-page .mgym-clean-routine-item .btn{
  background:linear-gradient(135deg,rgba(48,219,236,.85),rgba(48,219,236,.46))!important;
  border-color:rgba(48,219,236,.72)!important;
  color:#071014!important;
  font-weight:900!important;
  box-shadow:0 14px 26px rgba(48,219,236,.16), inset 0 1px 0 rgba(255,255,255,.25)!important;
}

/* Método principal: solo se ven los dos caminos reales */
html body .mgym-html-config-page #techniqueMainPick option:not([value="LINEAL"]):not([value="PIRAMIDAL"]){
  display:none!important;
}

/* Flechas redondas premium */
html body .mgym-html-config-page .mgym-clean-actions,
html body .mgym-html-config-page .mgym-clean-routine-actions{
  gap:10px!important;
}
html body .mgym-html-config-page :is([data-mgym-clean-prev],[data-mgym-clean-next],[data-mgym-routine-prev],[data-mgym-routine-next]){
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  padding:0!important;
  border-radius:999px!important;
  font-size:0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(48,219,236,.42)!important;
  background:
    radial-gradient(circle at 28% 20%,rgba(255,255,255,.25),transparent 34%),
    linear-gradient(145deg,rgba(48,219,236,.34),rgba(18,22,27,.78))!important;
  box-shadow:0 12px 28px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
html body .mgym-html-config-page :is([data-mgym-clean-prev],[data-mgym-routine-prev])::before{content:"‹";font-size:28px;line-height:1;color:#F3F4F6;font-weight:900;}
html body .mgym-html-config-page :is([data-mgym-clean-next],[data-mgym-routine-next])::before{content:"›";font-size:28px;line-height:1;color:#F3F4F6;font-weight:900;}
html body .mgym-html-config-page :is([data-mgym-clean-prev],[data-mgym-clean-next],[data-mgym-routine-prev],[data-mgym-routine-next]):hover{
  transform:translateY(-1px) scale(1.03)!important;
  border-color:rgba(48,219,236,.72)!important;
}

/* Mesociclos más consistentes */
html body .mgym-html-config-page .mgym-clean-meso-section .mgym-clean-section-title{
  align-items:center!important;
}
html body .mgym-html-config-page .mgym-clean-meso-rail{
  grid-auto-columns:minmax(260px,calc((100% - 48px)/5))!important;
  gap:12px!important;
  padding:6px 4px 18px!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip{
  min-height:132px!important;
  padding:18px!important;
  border-radius:22px!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip b{
  font-size:15px!important;
  letter-spacing:-.015em!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip.is-active{
  border-color:rgba(48,219,236,.85)!important;
  box-shadow:0 0 0 1px rgba(48,219,236,.18),0 18px 48px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip.is-active::before{
  background:linear-gradient(180deg,#67e8f9,#22d3ee)!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip em span{
  border-color:rgba(48,219,236,.24)!important;
  background:rgba(48,219,236,.08)!important;
}

/* Rutinas por mesociclo: carrusel de 2 filas, tarjetas compactas estilo ejemplo */
html body .mgym-html-config-page .mgym-clean-routine-section{
  padding:22px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-grid{
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:16px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-current{
  min-height:190px!important;
  border-radius:22px!important;
  padding:18px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-library{
  border-radius:22px!important;
  padding:16px!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-clean-routine-toolbar{
  margin:12px 0 12px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  grid-template-rows:repeat(2,minmax(166px,1fr))!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(290px,calc((100% - 24px)/3))!important;
  gap:12px!important;
  max-height:360px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:3px 6px 18px 3px!important;
  scroll-snap-type:x proximity!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item{
  position:relative!important;
  min-height:166px!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:space-between!important;
  gap:10px!important;
  padding:16px!important;
  border-radius:24px!important;
  scroll-snap-align:start!important;
  border-color:rgba(48,219,236,.38)!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:linear-gradient(120deg,rgba(48,219,236,.16),transparent 36%,rgba(255,255,255,.06))!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item__body{position:relative!important;z-index:1!important;}
html body .mgym-html-config-page .mgym-clean-routine-item__top{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 10px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item__top span{
  padding:4px 8px!important;
  border-radius:999px!important;
  background:rgba(48,219,236,.12)!important;
  border:1px solid rgba(48,219,236,.24)!important;
  color:#DFFBFF!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item__top b{
  min-width:38px!important;
  height:28px!important;
  color:#071014!important;
  background:linear-gradient(135deg,#67e8f9,#22d3ee)!important;
  border-color:rgba(255,255,255,.24)!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item strong{
  font-size:16px!important;
  line-height:1.18!important;
  white-space:normal!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-clean-routine-tags{
  margin:10px 0 8px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-tags span{
  border-color:rgba(48,219,236,.24)!important;
  background:rgba(7,7,7,.25)!important;
  color:#DFFBFF!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item p{
  color:rgba(243,244,246,.72)!important;
  font-size:12px!important;
  -webkit-line-clamp:2!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item .btn{
  position:relative!important;
  z-index:1!important;
  align-self:end!important;
  justify-self:start!important;
  min-height:36px!important;
  border-radius:14px!important;
  padding:9px 16px!important;
}
@media (max-width:1200px){
  html body .mgym-html-config-page .mgym-clean-routine-grid{grid-template-columns:1fr!important;}
  html body .mgym-html-config-page .mgym-clean-routine-list{grid-auto-columns:minmax(270px,45%)!important;}
}
@media (max-width:820px){
  html body .mgym-html-config-page .mgym-clean-routine-list{
    grid-template-rows:none!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    grid-template-columns:1fr!important;
    max-height:none!important;
    overflow:visible!important;
  }
}


/* v264l — Configuración: todos los sistemas visibles, manteniendo lógica técnica */
html body .mgym-html-config-page #techniqueMainPick option{color:#F3F4F6;background:#191919;}
html body .mgym-html-config-page .methodSubsection .field select#techniqueMainPick{
  border-color:rgba(31,196,221,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 0 0 1px rgba(31,196,221,.08)!important;
}
html body .mgym-html-config-page .methodSubsection .field:has(#techniqueMainPick)::after{
  content:"Todos los sistemas activos";
  display:inline-flex;
  margin-top:8px;
  padding:6px 9px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#DFFBFF;
  border:1px solid rgba(31,196,221,.35);
  background:rgba(31,196,221,.10);
}




/* v264m — corrección: 96 global sí, pero el estilo de tarjeta destacado SOLO en mesociclos */
@media (min-width:821px){
  html body:has(.mgym-ent-page) :is(.ct-container,.ct-container-full,.entry-content,.site-main > .ct-container,.site-main > .ct-container-full),
  html body:has(.mgym-ent-page) :is(.mgym-ent-page,.mgym-html-config-page,.mgym-ent-page--configuracion,.mgym-ent-page--inicio,.mgym-ent-page--sesiones,.mgym-ent-page--registros,.mgym-ent-page--biblioteca,.mgym-ent-page--rutinas){
    width:96vw!important;
    max-width:96vw!important;
    margin-left:calc(50% - 48vw)!important;
    margin-right:calc(50% - 48vw)!important;
  }
  html body .mgym-html-config-page{margin-top:-72px!important;}
  html body .mgym-html-config-page .mgym-config-local-nav,
  html body .mgym-html-config-page :is(.mgym-mobile-plan-shell,.mgym-mobile-plan-ui,.mgym-mobile-planning-ui,.mgym-mobile-plan-panel,.mgym-mobile-plan-footer,.mgym-mobile-plan-sheet,.mgym-mobile-plan-overlay){display:none!important;visibility:hidden!important;pointer-events:none!important;}
}

/* Neutralizamos el cyan aplicado por error a toda la página */
html body .mgym-html-config-page :is(.card,.soft,.methodSubsection,.mgym-config-workspace,.mgym-config-silver-hero,.mgym-config-summary-wide,.mgym-plan-config-card,.mgym-config-plan-carbon-block,.mgym-clean-card,.mgym-clean-meso-summary > div,.mgym-clean-micro,.mgym-clean-routine-current,.mgym-clean-routine-library,.mgym-clean-routine-item,.mgym-clean-calendar-summary,.mgym-clean-calendar-main,.mgym-clean-day,.mgym-config-plan-carbon-block__info-card,.chartCard,.note,.summaryBar){
  border-color:rgba(156,163,175,.18)!important;
  background:linear-gradient(145deg,rgba(35,39,44,.72),rgba(18,20,23,.78))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 16px 36px rgba(0,0,0,.24)!important;
}

/* El selector de sistemas debe enseñar TODOS los métodos, manteniendo la lógica JS existente */
html body .mgym-html-config-page #techniqueMainPick option{display:block!important;color:#F3F4F6!important;background:#191919!important;}
html body .mgym-html-config-page #techniqueMainPick option:disabled{display:none!important;}

/* Organización de ciclos: solo aquí usamos tarjetas tipo glass con colores lógicos */
html body .mgym-html-config-page .mgym-clean-meso-section{
  --meso-border:rgba(156,163,175,.22);
}
html body .mgym-html-config-page .mgym-clean-meso-rail{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(250px,calc((100% - 56px)/5))!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:8px 6px 20px!important;
  scroll-snap-type:x proximity!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip{
  --meso-accent:#94a3b8;
  --meso-accent-soft:rgba(148,163,184,.14);
  position:relative!important;
  min-height:142px!important;
  padding:18px!important;
  border-radius:24px!important;
  border:1px solid color-mix(in srgb,var(--meso-accent) 58%,transparent)!important;
  background:
    radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--meso-accent) 22%,transparent),transparent 42%),
    radial-gradient(circle at 100% 100%,color-mix(in srgb,var(--meso-accent) 10%,transparent),transparent 42%),
    linear-gradient(145deg,rgba(38,45,53,.78),rgba(15,18,22,.82))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 18px 38px rgba(0,0,0,.30)!important;
  scroll-snap-align:start!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n+1),
html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type="adaptacion"]{--meso-accent:#22d3ee;}
html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n+2){--meso-accent:#60a5fa;}
html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n+3){--meso-accent:#818cf8;}
html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n+4){--meso-accent:#a78bfa;}
html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n+5){--meso-accent:#38bdf8;}
html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n+6){--meso-accent:#f59e0b;}
html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type="descarga"]{--meso-accent:#86efac;}
html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type="pico"]{--meso-accent:#f97316;}
html body .mgym-html-config-page .mgym-clean-meso-chip::before{
  content:""!important;position:absolute!important;inset:0 auto 0 0!important;width:5px!important;border-radius:24px 0 0 24px!important;background:var(--meso-accent)!important;box-shadow:0 0 22px color-mix(in srgb,var(--meso-accent) 50%,transparent)!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip::after{
  content:""!important;position:absolute!important;right:-40px!important;bottom:-40px!important;width:110px!important;height:110px!important;border-radius:999px!important;background:color-mix(in srgb,var(--meso-accent) 16%,transparent)!important;filter:blur(2px)!important;pointer-events:none!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip.is-active{
  transform:translateY(-2px)!important;
  border-color:color-mix(in srgb,var(--meso-accent) 86%,white 8%)!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--meso-accent) 28%,transparent),0 22px 54px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip b{font-size:15px!important;color:#F8FAFC!important;}
html body .mgym-html-config-page .mgym-clean-meso-chip span{color:#D9E3EE!important;}
html body .mgym-html-config-page .mgym-clean-meso-chip small{color:#B8C2CE!important;}
html body .mgym-html-config-page .mgym-clean-meso-chip em span{
  border-color:color-mix(in srgb,var(--meso-accent) 38%,transparent)!important;
  background:color-mix(in srgb,var(--meso-accent) 12%,rgba(7,7,7,.20))!important;
  color:#F3F4F6!important;
}

/* Flechas redondas del carrusel de mesociclos */
html body .mgym-html-config-page :is([data-mgym-clean-prev],[data-mgym-clean-next]){
  width:42px!important;height:42px!important;min-width:42px!important;border-radius:999px!important;padding:0!important;font-size:0!important;display:grid!important;place-items:center!important;
  border:1px solid rgba(156,163,175,.32)!important;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.20),transparent 34%),linear-gradient(145deg,rgba(75,85,99,.50),rgba(7,7,7,.42))!important;
  box-shadow:0 14px 28px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
html body .mgym-html-config-page [data-mgym-clean-prev]::before{content:"‹";font-size:28px;line-height:1;color:#F3F4F6;font-weight:900;}
html body .mgym-html-config-page [data-mgym-clean-next]::before{content:"›";font-size:28px;line-height:1;color:#F3F4F6;font-weight:900;}

/* Rutinas: compactas neutras, no con el estilo de mesociclos */
html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  grid-template-rows:repeat(2,minmax(138px,1fr))!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(265px,calc((100% - 24px)/3))!important;
  gap:12px!important;
  overflow-x:auto!important;overflow-y:hidden!important;
  max-height:320px!important;
  padding:4px 8px 18px 2px!important;
  scroll-snap-type:x proximity!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item{
  border-radius:20px!important;
  min-height:138px!important;
  padding:14px!important;
  background:linear-gradient(145deg,rgba(38,43,49,.72),rgba(13,15,18,.74))!important;
  border-color:rgba(156,163,175,.18)!important;
  scroll-snap-align:start!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item .btn{
  background:linear-gradient(145deg,rgba(75,85,99,.48),rgba(7,7,7,.32))!important;
  color:#F3F4F6!important;
  border-color:rgba(156,163,175,.26)!important;
}




/* ==========================================================================
   v264n — Alineación global 96%, orden visual premium y bloques consistentes
   --------------------------------------------------------------------------
   Regla: el look de color fuerte queda SOLO en mesociclos.
   El resto de bloques usa glass acero neutro, consistente y alineado.
   ========================================================================== */

:root{
  --mgym-page-w:96vw;
  --mgym-page-max:1760px;
  --mgym-header-gap:4px;
}

/* 1) Contenedor WordPress: ancho real para todas las páginas MacroGym Entrenos */
html body:has(.mgym-ent-page) .site-main,
html body:has(.mgym-ent-page) #main,
html body:has(.mgym-ent-page) .content-area,
html body:has(.mgym-ent-page) .entry-content,
html body:has(.mgym-ent-page) .ct-container,
html body:has(.mgym-ent-page) .ct-constrained-width,
html body:has(.mgym-ent-page) .wp-block-group,
html body:has(.mgym-ent-page) .wp-site-blocks{
  max-width:none!important;
  width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}

html body:has(.mgym-ent-page) .site-content,
html body:has(.mgym-ent-page) .ct-main,
html body:has(.mgym-ent-page) main{
  overflow-x:hidden!important;
}

/* 2) Página MacroGym: todo al 96%, centrado y subido cerca del header */
html body .mgym-ent-page,
html body .mgym-html-config-page,
html body .mgym-premium-aligned-page{
  width:min(var(--mgym-page-max),var(--mgym-page-w))!important;
  max-width:min(var(--mgym-page-max),var(--mgym-page-w))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-top:var(--mgym-header-gap)!important;
  margin-bottom:36px!important;
  padding:0!important;
  transform:none!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  float:none!important;
  clear:both!important;
}

/* Evita márgenes heredados del tema encima del plugin */
html body:has(.mgym-ent-page) article,
html body:has(.mgym-ent-page) .entry-content > *:has(.mgym-ent-page){
  margin-top:0!important;
  padding-top:0!important;
}

/* 3) El nav local era el que parecía móvil en escritorio: solo móvil */
@media (min-width: 900px){
  html body .mgym-html-config-page .mgym-config-local-nav{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }
}

/* 4) Todos los bloques importantes tienen ancho consistente */
html body .mgym-ent-page :is(
  .card,
  .soft,
  .mgym-config-workspace,
  .mgym-config-silver-hero,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-clean-card,
  .mgym-hub-section,
  .mgym-section-card,
  .mgym-plan-block,
  .mgym-plan-info-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-final-summary,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .planBoardShell,
  .mgym-calendar-routines-hub,
  .mgym-plan-meso-panel
){
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* 5) Diseño premium neutro para todos los bloques, sin pintar todo con color de mesociclo */
html body .mgym-ent-page :is(
  .card,
  .soft,
  .mgym-config-workspace,
  .mgym-config-silver-hero,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-clean-card,
  .mgym-hub-section,
  .mgym-section-card,
  .mgym-plan-block,
  .mgym-plan-info-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-final-summary,
  .methodSubsection,
  .chartCard,
  .summaryBar,
  .planBoardShell,
  .mgym-calendar-routines-hub
){
  border-radius:26px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:
    radial-gradient(circle at 10% 0%,rgba(243,244,246,.08),transparent 34%),
    radial-gradient(circle at 90% 8%,rgba(156,163,175,.07),transparent 28%),
    linear-gradient(145deg,rgba(47,54,63,.58),rgba(25,25,25,.50) 58%,rgba(7,7,7,.34))!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.10),
    0 24px 70px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px) saturate(128%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(128%)!important;
}

/* Separación y ritmo entre bloques */
html body .mgym-ent-page :is(.card,.mgym-clean-card,.mgym-hub-section,.mgym-section-card,.methodSubsection,.chartCard){
  margin-top:16px!important;
}

html body .mgym-html-config-page .mgym-config-clean-planner{
  padding:26px!important;
  margin-top:12px!important;
}

/* 6) Tipografía y cabeceras más consistentes */
html body .mgym-ent-page :is(h1,h2,h3,.cardTitle){
  letter-spacing:-.035em!important;
  color:#F3F4F6!important;
}

html body .mgym-ent-page :is(.muted,p,small){
  color:#B9C0CA!important;
}

html body .mgym-ent-page .label{
  color:#9CA3AF!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  font-weight:800!important;
}

/* 7) Inputs/selects premium y alineados */
html body .mgym-ent-page :is(input,select,textarea){
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:rgba(7,7,7,.24)!important;
  color:#F3F4F6!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.08)!important;
}

html body .mgym-ent-page .field{
  min-width:0!important;
}

/* 8) Grid general sin desplazamientos */
html body .mgym-ent-page :is(.form,.cols-2,.cols-3,.mgym-plan-config-fields){
  align-items:stretch!important;
  gap:14px!important;
}

html body .mgym-ent-page .form.cols-3,
html body .mgym-ent-page .mgym-plan-config-fields{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

/* 9) Flechas redondas premium: ciclos y rutinas */
html body .mgym-html-config-page :is(.mgym-clean-actions,.mgym-clean-routine-actions){
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}

html body .mgym-html-config-page :is(.mgym-clean-actions,.mgym-clean-routine-actions) .btn,
html body .mgym-html-config-page [data-mgym-clean-prev],
html body .mgym-html-config-page [data-mgym-clean-next],
html body .mgym-html-config-page [data-mgym-routine-prev],
html body .mgym-html-config-page [data-mgym-routine-next]{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  padding:0!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.28)!important;
  background:
    radial-gradient(circle at 30% 20%,rgba(243,244,246,.22),transparent 34%),
    linear-gradient(145deg,rgba(75,85,99,.55),rgba(7,7,7,.32))!important;
  color:#F3F4F6!important;
  font-size:24px!important;
  line-height:1!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 12px 26px rgba(0,0,0,.28)!important;
  transition:transform .18s ease, border-color .18s ease, background .18s ease!important;
}

html body .mgym-html-config-page :is([data-mgym-clean-prev],[data-mgym-clean-next],[data-mgym-routine-prev],[data-mgym-routine-next]):hover{
  transform:translateY(-1px) scale(1.03)!important;
  border-color:rgba(243,244,246,.44)!important;
}

/* 10) Mesociclos: aquí sí va color/lógica diferente por tarjeta */
html body .mgym-html-config-page .mgym-clean-meso-rail{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(270px,1fr)!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:4px 4px 16px!important;
  scroll-snap-type:x proximity!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip{
  position:relative!important;
  min-height:142px!important;
  padding:18px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  scroll-snap-align:start!important;
  isolation:isolate!important;
  border:1px solid rgba(243,244,246,.24)!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(103,232,249,.28),transparent 38%),
    linear-gradient(145deg,rgba(8,145,178,.36),rgba(17,24,39,.54))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 18px 44px rgba(0,0,0,.30)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(2){
  background:
    radial-gradient(circle at 18% 0%,rgba(129,140,248,.30),transparent 38%),
    linear-gradient(145deg,rgba(67,56,202,.40),rgba(17,24,39,.56))!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(3){
  background:
    radial-gradient(circle at 18% 0%,rgba(167,139,250,.30),transparent 38%),
    linear-gradient(145deg,rgba(91,33,182,.40),rgba(17,24,39,.56))!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(4){
  background:
    radial-gradient(circle at 18% 0%,rgba(45,212,191,.28),transparent 38%),
    linear-gradient(145deg,rgba(15,118,110,.38),rgba(17,24,39,.56))!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(5){
  background:
    radial-gradient(circle at 18% 0%,rgba(251,146,60,.28),transparent 38%),
    linear-gradient(145deg,rgba(154,52,18,.38),rgba(17,24,39,.56))!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip:nth-child(6n){
  background:
    radial-gradient(circle at 18% 0%,rgba(74,222,128,.28),transparent 38%),
    linear-gradient(145deg,rgba(22,101,52,.38),rgba(17,24,39,.56))!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:5px!important;
  background:rgba(243,244,246,.72)!important;
  z-index:1!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip::after{
  content:""!important;
  position:absolute!important;
  inset:auto -24px -34px auto!important;
  width:118px!important;
  height:118px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.08)!important;
  z-index:-1!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip.is-active{
  transform:translateY(-2px)!important;
  border-color:rgba(255,255,255,.44)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 24px 60px rgba(0,0,0,.36)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip b{
  font-size:16px!important;
  color:#fff!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip span,
html body .mgym-html-config-page .mgym-clean-meso-chip small{
  color:rgba(255,255,255,.84)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip em span{
  background:rgba(255,255,255,.13)!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#fff!important;
}

/* 11) Rutinas: neutras, premium, compactas, carrusel de dos filas */
html body .mgym-html-config-page .mgym-clean-routine-grid{
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}

html body .mgym-html-config-page .mgym-clean-routine-current,
html body .mgym-html-config-page .mgym-clean-routine-library{
  border-radius:22px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:
    radial-gradient(circle at 15% 0%,rgba(243,244,246,.08),transparent 35%),
    linear-gradient(145deg,rgba(31,36,43,.58),rgba(7,7,7,.24))!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.09)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:10px 0 12px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.18)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-rows:repeat(2,minmax(154px,auto))!important;
  grid-auto-columns:minmax(310px,340px)!important;
  gap:12px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  max-height:none!important;
  padding:4px 4px 16px!important;
  scroll-snap-type:x proximity!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item{
  min-height:154px!important;
  padding:15px!important;
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(243,244,246,.10),transparent 32%),
    linear-gradient(145deg,rgba(75,85,99,.30),rgba(7,7,7,.24))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 14px 30px rgba(0,0,0,.22)!important;
  scroll-snap-align:start!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item__top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:8px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item__top span{
  color:#9CA3AF!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.10em!important;
  font-weight:800!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item__top b{
  display:grid!important;
  place-items:center!important;
  min-width:34px!important;
  height:28px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item strong{
  display:block!important;
  min-height:34px!important;
  margin-bottom:8px!important;
  color:#F3F4F6!important;
  font-size:14px!important;
  line-height:1.2!important;
}

html body .mgym-html-config-page .mgym-clean-routine-tags{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 8px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-tags span{
  padding:5px 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(156,163,175,.10)!important;
  color:#D8DEE7!important;
  font-size:10px!important;
  font-weight:800!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item p{
  margin:0!important;
  color:#B9C0CA!important;
  font-size:12px!important;
  line-height:1.38!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item .btn{
  align-self:flex-end!important;
  border-radius:999px!important;
  padding:9px 13px!important;
}

/* 12) Calendario y resumen: tarjetas alineadas */
html body .mgym-html-config-page .mgym-clean-calendar-layout{
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:16px!important;
}

html body .mgym-html-config-page .mgym-clean-calendar-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-clean-day,
html body .mgym-html-config-page .mgym-clean-summary-card,
html body .mgym-html-config-page .mgym-clean-linked-summary > div,
html body .mgym-html-config-page .mgym-clean-meso-summary > div{
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.19)!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(243,244,246,.08),transparent 34%),
    linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.18))!important;
  box-shadow:inset 0 1px 0 rgba(243,244,246,.08)!important;
}

/* 13) Responsive limpio */
@media (max-width:1200px){
  html body .mgym-ent-page .form.cols-3,
  html body .mgym-ent-page .mgym-plan-config-fields,
  html body .mgym-html-config-page .mgym-clean-linked-summary,
  html body .mgym-html-config-page .mgym-clean-meso-summary{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body .mgym-html-config-page .mgym-clean-calendar-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media (max-width:899px){
  html body .mgym-ent-page,
  html body .mgym-html-config-page,
  html body .mgym-premium-aligned-page{
    width:100%!important;
    max-width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
    margin-top:8px!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav{
    display:flex!important;
  }

  html body .mgym-html-config-page .mgym-config-clean-planner{
    padding:16px!important;
  }

  html body .mgym-ent-page .form.cols-3,
  html body .mgym-ent-page .mgym-plan-config-fields,
  html body .mgym-html-config-page .mgym-clean-linked-summary,
  html body .mgym-html-config-page .mgym-clean-meso-summary,
  html body .mgym-html-config-page .mgym-clean-routine-grid,
  html body .mgym-html-config-page .mgym-clean-calendar-layout{
    grid-template-columns:1fr!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-list{
    grid-template-rows:none!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    overflow-x:visible!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}




/* ==========================================================================
   v264o — Anti-desbordes definitivo para Configuración
   ========================================================================== */

:root{
  --mgym-page-w:96vw;
  --mgym-page-max:1760px;
  --mgym-header-gap:4px;
}

html body .mgym-ent-page,
html body .mgym-html-config-page,
html body .mgym-premium-aligned-page{
  width:min(var(--mgym-page-max),var(--mgym-page-w))!important;
  max-width:min(var(--mgym-page-max),var(--mgym-page-w))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-top:var(--mgym-header-gap)!important;
  padding-left:0!important;
  padding-right:0!important;
  overflow-x:clip!important;
  contain:layout paint!important;
}

html body .mgym-ent-page *,
html body .mgym-html-config-page *{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

html body .mgym-ent-page :is(
  .card,
  .soft,
  .mgym-config-workspace,
  .mgym-config-silver-hero,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-clean-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-final-summary,
  .methodSubsection,
  .chartCard,
  .planBoardShell
){
  overflow:hidden!important;
}

/* Grids/formularios: evita que la columna derecha se salga del div */
html body .mgym-ent-page :is(
  .form,
  .cols-2,
  .cols-3,
  .mgym-no-overflow-grid,
  .mgym-plan-config-fields,
  .mgym-config-plan-carbon-block__grid,
  .mgym-config-main-grid,
  .mgym-config-input-grid,
  .mgym-config-controls-grid
){
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  gap:18px!important;
  overflow:hidden!important;
}

html body .mgym-ent-page :is(.form.cols-2,.cols-2,.mgym-config-plan-carbon-block__grid){
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

html body .mgym-ent-page :is(.form.cols-3,.cols-3,.mgym-plan-config-fields){
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

html body .mgym-ent-page :is(.field,label.field,.mgym-config-plan-carbon-block__field){
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  grid-column:auto!important;
}

html body .mgym-ent-page :is(.field > span,label > span,.mgym-config-plan-carbon-block__field > span){
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

html body .mgym-ent-page :is(input,select,textarea){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:block!important;
}

/* Si algún input heredó width inline, lo neutralizamos dentro de Configuración */
html body .mgym-html-config-page :is(input,select,textarea)[style]{
  width:100%!important;
  max-width:100%!important;
}

/* KPIs y resúmenes: todo dentro de su padre */
html body .mgym-ent-page :is(
  .mgym-config-kpi-grid,
  .mgym-config-summary-cards,
  .mgym-config-overview-grid,
  .summaryGrid,
  .statsGrid
){
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  overflow:hidden!important;
}

html body .mgym-ent-page :is(.mgym-config-kpi-grid,.mgym-config-summary-cards,.summaryGrid,.statsGrid) > *{
  min-width:0!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-clean-linked-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}

/* Scroll interno permitido solo en carruseles, no en la página */
html body .mgym-html-config-page :is(.mgym-clean-meso-section,.mgym-clean-routine-section,.mgym-clean-calendar-section){
  overflow:hidden!important;
}

html body .mgym-html-config-page :is(.mgym-clean-meso-rail,.mgym-clean-routine-list){
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain!important;
}

html body .mgym-ent-page :is(.btn,button){
  max-width:100%!important;
  white-space:normal!important;
}

/* Ajuste específico del bloque "Configura tu plan" de la captura */
html body .mgym-html-config-page :is(.mgym-config-plan-carbon-block,.mgym-config-workspace) > :is(.form,.cols-2,.cols-3){
  padding-right:0!important;
}

html body .mgym-html-config-page :is(.mgym-config-plan-carbon-block,.mgym-config-workspace) .field:nth-child(odd),
html body .mgym-html-config-page :is(.mgym-config-plan-carbon-block,.mgym-config-workspace) .field:nth-child(even){
  grid-column:auto!important;
}

/* Responsive */
@media (max-width:1200px){
  html body .mgym-ent-page :is(.form.cols-3,.cols-3,.mgym-plan-config-fields),
  html body .mgym-ent-page :is(.mgym-config-kpi-grid,.mgym-config-summary-cards,.summaryGrid,.statsGrid){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  html body .mgym-html-config-page .mgym-clean-meso-summary{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media (max-width:820px){
  html body .mgym-ent-page,
  html body .mgym-html-config-page,
  html body .mgym-premium-aligned-page{
    width:100%!important;
    max-width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }

  html body .mgym-ent-page :is(.form.cols-2,.cols-2,.form.cols-3,.cols-3,.mgym-plan-config-fields),
  html body .mgym-ent-page :is(.mgym-config-kpi-grid,.mgym-config-summary-cards,.summaryGrid,.statsGrid),
  html body .mgym-html-config-page :is(.mgym-clean-linked-summary,.mgym-clean-meso-summary){
    grid-template-columns:1fr!important;
  }
}

@supports not (overflow: clip){
  html body .mgym-ent-page,
  html body .mgym-html-config-page,
  html body .mgym-premium-aligned-page{
    overflow-x:hidden!important;
  }
}


/* ==========================================================================
   v264p — Configuración premium: métodos completos, mesociclos con días y resumen saneado
   ========================================================================== */

/* Bloques más atractivos y menos texto corrido */
html body .mgym-html-config-page .mgym-config-training-logic,
html body .mgym-html-config-page .mgym-periodization-editor,
html body .mgym-html-config-page .mgym-planning-register{
  padding:28px!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(103,232,249,.10),transparent 34%),
    radial-gradient(circle at 96% 0%,rgba(156,163,175,.10),transparent 30%),
    linear-gradient(145deg,rgba(35,40,47,.72),rgba(7,7,7,.30))!important;
  border:1px solid rgba(156,163,175,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 26px 68px rgba(0,0,0,.30)!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-technique-compact .cardHeader p.muted{
  max-width:820px!important;
  font-size:14px!important;
  line-height:1.5!important;
}

html body .mgym-html-config-page .mgym-technique-compact .summaryBar{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}

html body .mgym-html-config-page .mgym-technique-compact .summaryBar > .note{
  min-height:118px!important;
  padding:18px!important;
  border-radius:22px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.30),rgba(7,7,7,.20))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  font-size:13px!important;
  line-height:1.45!important;
}

html body .mgym-html-config-page .methodDetailGrid{
  display:grid!important;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;
  gap:16px!important;
}

html body .mgym-html-config-page .methodDetailGrid .chartCard{
  padding:22px!important;
  border-radius:24px!important;
}

html body .mgym-html-config-page .methodMetricRow{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:14px!important;
}

html body .mgym-html-config-page .methodMetricRow > *{
  padding:12px!important;
  border-radius:16px!important;
  background:rgba(243,244,246,.07)!important;
  border:1px solid rgba(156,163,175,.16)!important;
}

/* Selector con todos los sistemas: que no parezca un select pobre */
html body .mgym-html-config-page #techniqueMainPick{
  min-height:52px!important;
  font-weight:800!important;
  background:
    radial-gradient(circle at 10% 0%,rgba(103,232,249,.10),transparent 32%),
    linear-gradient(145deg,rgba(7,7,7,.34),rgba(75,85,99,.24))!important;
}

/* Mesociclos: tarjetas con color lógico y días directamente visibles */
html body .mgym-html-config-page .mgym-clean-meso-rail{
  grid-auto-columns:minmax(335px,380px)!important;
  gap:18px!important;
  padding:6px 6px 18px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip{
  min-height:210px!important;
  align-items:flex-start!important;
  padding:22px!important;
  gap:9px!important;
  border-radius:28px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip .mgym-meso-index{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.16)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  font-size:18px!important;
  font-weight:900!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip b{
  max-width:calc(100% - 58px)!important;
  font-size:17px!important;
  line-height:1.2!important;
}

html body .mgym-html-config-page .mgym-meso-day-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:8px!important;
}

html body .mgym-html-config-page .mgym-meso-day-chip{
  width:auto!important;
  max-width:none!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}

html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type="adaptacion"],
html body .mgym-html-config-page .mgym-meso-tone-adaptacion{
  background:radial-gradient(circle at 12% 0%,rgba(103,232,249,.35),transparent 38%),linear-gradient(145deg,rgba(8,145,178,.48),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type="descarga"],
html body .mgym-html-config-page .mgym-meso-tone-descarga{
  background:radial-gradient(circle at 12% 0%,rgba(74,222,128,.32),transparent 38%),linear-gradient(145deg,rgba(22,101,52,.48),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type="pico"],
html body .mgym-html-config-page .mgym-meso-tone-pico{
  background:radial-gradient(circle at 12% 0%,rgba(251,146,60,.34),transparent 38%),linear-gradient(145deg,rgba(154,52,18,.48),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-clean-meso-chip[data-meso-type^="carga"],
html body .mgym-html-config-page .mgym-meso-tone-carga-1,
html body .mgym-html-config-page .mgym-meso-tone-carga-2,
html body .mgym-html-config-page .mgym-meso-tone-carga-3,
html body .mgym-html-config-page .mgym-meso-tone-carga-4,
html body .mgym-html-config-page .mgym-meso-tone-carga-5{
  background:radial-gradient(circle at 12% 0%,rgba(129,140,248,.34),transparent 38%),linear-gradient(145deg,rgba(67,56,202,.48),rgba(17,24,39,.60))!important;
}

/* El calendario reutiliza los colores por mesociclo */
html body .mgym-html-config-page .mgym-clean-calendar-grid .mgym-clean-day{
  min-height:118px!important;
  border-radius:18px!important;
  position:relative!important;
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid .mgym-clean-day::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:5px!important;
  background:rgba(255,255,255,.62)!important;
}

/* Resumen final: estaba roto por dl/dd vertical; ahora son tarjetas */
html body .mgym-html-config-page .mgym-planning-register{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

html body .mgym-html-config-page .mgym-planning-register__head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:18px!important;
}

html body .mgym-html-config-page .mgym-planning-register__grid{
  display:grid!important;
  grid-template-columns:minmax(300px,.38fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}

html body .mgym-html-config-page .mgym-planning-list,
html body .mgym-html-config-page .mgym-planning-final-summary{
  padding:20px!important;
  border-radius:24px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.20))!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-planning-list__head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:14px!important;
}

html body .mgym-html-config-page .mgym-planning-summary-dl,
html body .mgym-html-config-page .mgym-planning-summary-dl.is-cardified{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:14px 0!important;
}

html body .mgym-html-config-page .mgym-planning-summary-dl dt,
html body .mgym-html-config-page .mgym-planning-summary-dl dd{
  display:none!important;
}

html body .mgym-html-config-page .mgym-final-summary-card{
  display:block!important;
  min-height:96px!important;
  padding:15px!important;
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:radial-gradient(circle at 15% 0%,rgba(243,244,246,.09),transparent 32%),linear-gradient(145deg,rgba(75,85,99,.24),rgba(7,7,7,.18))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}

html body .mgym-html-config-page .mgym-final-summary-card small{
  display:block!important;
  margin-bottom:8px!important;
  font-size:10px!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  color:#9CA3AF!important;
  font-weight:900!important;
}

html body .mgym-html-config-page .mgym-final-summary-card strong{
  display:block!important;
  color:#F3F4F6!important;
  font-size:14px!important;
  line-height:1.35!important;
}

html body .mgym-html-config-page .mgym-planning-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:16px!important;
}

html body .mgym-html-config-page .mgym-planning-empty{
  padding:16px!important;
  border-radius:18px!important;
  border:1px dashed rgba(156,163,175,.25)!important;
  background:rgba(7,7,7,.16)!important;
}

@media (max-width:1200px){
  html body .mgym-html-config-page .mgym-planning-register__grid,
  html body .mgym-html-config-page .methodDetailGrid{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-planning-summary-dl,
  html body .mgym-html-config-page .mgym-planning-summary-dl.is-cardified{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body .mgym-html-config-page .mgym-technique-compact .summaryBar{
    grid-template-columns:1fr!important;
  }
}

@media (max-width:760px){
  html body .mgym-html-config-page .mgym-planning-summary-dl,
  html body .mgym-html-config-page .mgym-planning-summary-dl.is-cardified{
    grid-template-columns:1fr!important;
  }
}



/* ========================================================================
   v264q — Mesociclos configurables en tarjeta + drawer de microciclos
   ======================================================================== */
html body .mgym-html-config-page .mgym-clean-meso-section{
  overflow:hidden!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-rail{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(390px,calc((100% - 42px) / 4))!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:4px 4px 18px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:thin!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:610px!important;
  padding:16px!important;
  border-radius:24px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 15% 0%,rgba(243,244,246,.10),transparent 36%),
    linear-gradient(145deg,rgba(75,85,99,.30),rgba(7,7,7,.24))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 18px 44px rgba(0,0,0,.30)!important;
  scroll-snap-align:start!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-card:hover,
html body .mgym-html-config-page .mgym-v264q-meso-card.is-active{
  transform:translateY(-2px)!important;
  border-color:rgba(243,244,246,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 24px 60px rgba(0,0,0,.36)!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-adaptacion{
  background:radial-gradient(circle at 18% 0%,rgba(103,232,249,.25),transparent 38%),linear-gradient(145deg,rgba(8,145,178,.26),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-descarga{
  background:radial-gradient(circle at 18% 0%,rgba(74,222,128,.24),transparent 38%),linear-gradient(145deg,rgba(22,101,52,.25),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-pico{
  background:radial-gradient(circle at 18% 0%,rgba(251,146,60,.24),transparent 38%),linear-gradient(145deg,rgba(154,52,18,.25),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-carga-1,
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-carga-2,
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-carga-3,
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-carga-4,
html body .mgym-html-config-page .mgym-v264q-meso-card.mgym-meso-tone-carga-5{
  background:radial-gradient(circle at 18% 0%,rgba(129,140,248,.24),transparent 38%),linear-gradient(145deg,rgba(67,56,202,.24),rgba(17,24,39,.60))!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:14px!important;
}
html body .mgym-html-config-page .mgym-v264q-kicker{
  margin:0 0 6px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-head h3{
  margin:0!important;
  color:#F3F4F6!important;
  font-size:20px!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-head p:not(.mgym-v264q-kicker){
  margin:6px 0 0!important;
  color:#D2D8E1!important;
  font-size:12px!important;
}
html body .mgym-html-config-page .mgym-v264q-score{
  display:grid!important;
  place-items:center!important;
  width:58px!important;
  height:58px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.22)!important;
  background:rgba(7,7,7,.32)!important;
  color:#F3F4F6!important;
  font-weight:900!important;
  cursor:pointer!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid label{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid label.is-wide{
  grid-column:1 / -1!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid span,
html body .mgym-v264q-drawer label>span{
  color:#9CA3AF!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid :is(input,select,textarea),
html body .mgym-v264q-drawer :is(input,select,textarea){
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:38px!important;
  border-radius:13px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:rgba(7,7,7,.24)!important;
  color:#F3F4F6!important;
  padding:9px 10px!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid textarea,
html body .mgym-v264q-drawer textarea{
  min-height:68px!important;
  resize:vertical!important;
}
html body .mgym-html-config-page .mgym-v264q-form-grid option,
html body .mgym-v264q-drawer option{color:#111827!important;}
html body .mgym-html-config-page .mgym-v264q-micros{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  margin-top:auto!important;
  padding:13px!important;
  border-radius:18px!important;
  border:1px solid rgba(243,244,246,.12)!important;
  background:rgba(7,7,7,.22)!important;
}
html body .mgym-html-config-page .mgym-v264q-micros-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}
html body .mgym-html-config-page .mgym-v264q-micros-head b{
  display:block!important;
  color:#F3F4F6!important;
  font-size:13px!important;
}
html body .mgym-html-config-page .mgym-v264q-micros-head small{
  display:block!important;
  color:#9CA3AF!important;
  font-size:11px!important;
}
html body .mgym-html-config-page .mgym-v264q-micros-head em{
  display:inline-flex!important;
  border-radius:999px!important;
  padding:7px 9px!important;
  border:1px solid rgba(243,244,246,.14)!important;
  background:rgba(243,244,246,.08)!important;
  color:#F3F4F6!important;
  font-size:11px!important;
  font-style:normal!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-list{
  display:grid!important;
  gap:8px!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-row{
  display:grid!important;
  grid-template-columns:minmax(130px,1fr)!important;
  gap:8px!important;
  width:100%!important;
  padding:11px!important;
  border-radius:16px!important;
  border:1px solid rgba(243,244,246,.12)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.20))!important;
  color:#F3F4F6!important;
  text-align:left!important;
  cursor:pointer!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-row:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(243,244,246,.36)!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-title{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-title i{
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  width:28px!important;
  height:28px!important;
  border-radius:999px!important;
  background:rgba(243,244,246,.10)!important;
  border:1px solid rgba(243,244,246,.14)!important;
  font-style:normal!important;
  font-size:11px!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-title b{
  display:block!important;
  font-size:13px!important;
  line-height:1.15!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-title small{
  display:block!important;
  margin-top:3px!important;
  color:#9CA3AF!important;
  font-size:11px!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-days{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
html body .mgym-html-config-page .mgym-v264q-day-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:6px 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:rgba(156,163,175,.10)!important;
  color:#D8DEE7!important;
  font-size:10px!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-v264q-day-chip small{color:inherit!important;font-size:10px!important;}
html body .mgym-html-config-page .mgym-v264q-progress em{
  display:flex!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-bottom:5px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}
html body .mgym-html-config-page .mgym-v264q-progress i{
  display:block!important;
  height:7px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.18)!important;
}
html body .mgym-html-config-page .mgym-v264q-progress i b{
  display:block!important;
  height:100%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,rgba(103,232,249,.65),rgba(243,244,246,.85))!important;
}
html body .mgym-html-config-page .mgym-v264q-micro-action{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.16)!important;
  background:rgba(243,244,246,.08)!important;
  font-size:11px!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-v264q-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
  margin-top:12px!important;
}
html body .mgym-html-config-page .mgym-v264q-inline-note{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:rgba(7,7,7,.16)!important;
  color:#D8DEE7!important;
}
html body .mgym-html-config-page .mgym-v264q-inline-note b{font-size:13px!important;color:#F3F4F6!important;}
html body .mgym-html-config-page .mgym-v264q-inline-note span{font-size:12px!important;color:#9CA3AF!important;}
html body.mgym-v264q-modal-open{overflow:hidden!important;}
html body .mgym-v264q-modal{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:none!important;
  justify-content:flex-end!important;
  align-items:stretch!important;
  background:rgba(7,7,7,.62)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
html body .mgym-v264q-modal.is-open{display:flex!important;}
html body .mgym-v264q-drawer{
  width:min(540px,calc(100vw - 28px))!important;
  height:100%!important;
  overflow:auto!important;
  padding:22px!important;
  border-left:1px solid rgba(156,163,175,.24)!important;
  background:radial-gradient(circle at 18% 0%,rgba(103,232,249,.16),transparent 32%),linear-gradient(145deg,rgba(44,44,46,.94),rgba(7,7,7,.94))!important;
  box-shadow:-28px 0 80px rgba(0,0,0,.46)!important;
}
html body .mgym-v264q-drawer-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:18px!important;
}
html body .mgym-v264q-drawer-head h3{
  margin:0!important;
  color:#F3F4F6!important;
  font-size:30px!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
}
html body .mgym-v264q-drawer-head p:not(.mgym-v264q-kicker){
  margin:8px 0 0!important;
  color:#9CA3AF!important;
  font-size:13px!important;
  line-height:1.45!important;
}
html body .mgym-v264q-close{
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.08)!important;
  color:#F3F4F6!important;
  cursor:pointer!important;
}
html body .mgym-v264q-drawer-card{
  padding:16px!important;
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.22)!important;
  margin-bottom:14px!important;
}
html body .mgym-v264q-days-grid{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:8px!important;
}
html body .mgym-v264q-day-toggle{position:relative!important;display:block!important;}
html body .mgym-v264q-day-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important;}
html body .mgym-v264q-day-toggle span{
  display:grid!important;
  place-items:center!important;
  min-height:58px!important;
  border-radius:14px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(243,244,246,.06)!important;
  color:#9CA3AF!important;
  font-size:11px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
html body .mgym-v264q-day-toggle span small{display:block!important;margin-top:3px!important;color:inherit!important;font-size:10px!important;opacity:.78!important;}
html body .mgym-v264q-day-toggle input:checked + span{
  transform:translateY(-1px)!important;
  border-color:rgba(103,232,249,.50)!important;
  background:rgba(103,232,249,.14)!important;
  color:#F3F4F6!important;
  box-shadow:0 0 0 4px rgba(103,232,249,.06)!important;
}
html body .mgym-v264q-selection{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-top:12px!important;
  padding:12px!important;
  border-radius:15px!important;
  border:1px solid rgba(243,244,246,.10)!important;
  background:rgba(243,244,246,.05)!important;
  color:#9CA3AF!important;
  font-size:12px!important;
}
html body .mgym-v264q-selection strong{color:#F3F4F6!important;}
html body .mgym-v264q-error{
  display:none!important;
  margin-top:10px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
  color:#fecaca!important;
  background:rgba(239,68,68,.12)!important;
  border:1px solid rgba(239,68,68,.25)!important;
  font-size:12px!important;
  line-height:1.4!important;
}
html body .mgym-v264q-error.is-visible{display:block!important;}
html body .mgym-v264q-drawer-actions{
  position:sticky!important;
  bottom:0!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  padding-top:14px!important;
  background:linear-gradient(180deg,transparent,rgba(7,7,7,.78) 28%)!important;
}
@media (max-width: 1280px){
  html body .mgym-html-config-page .mgym-v264q-meso-rail{grid-auto-columns:minmax(390px,calc((100% - 14px) / 2))!important;}
}
@media (max-width: 760px){
  html body .mgym-html-config-page .mgym-v264q-meso-rail{grid-auto-columns:minmax(88%,1fr)!important;}
  html body .mgym-v264q-modal{align-items:flex-end!important;justify-content:center!important;}
  html body .mgym-v264q-drawer{width:100%!important;height:min(92vh,760px)!important;border-left:0!important;border-top:1px solid rgba(156,163,175,.24)!important;border-radius:26px 26px 0 0!important;}
  html body .mgym-v264q-days-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .mgym-html-config-page .mgym-v264q-form-grid{grid-template-columns:1fr!important;}
}




/* ==========================================================================
   v264r — Microciclos en tarjeta, días visibles, botón Guardar y flechas
   ========================================================================== */

/* Menos aire muerto dentro de la tarjeta del mesociclo */
html body .mgym-html-config-page .mgym-v264q-meso-card{
  gap:12px!important;
  min-height:auto!important;
  padding:18px!important;
}

html body .mgym-html-config-page .mgym-v264q-meso-card .mgym-v264q-form-grid{
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-v264q-meso-card textarea[data-v264q-meso-input="notes"]{
  min-height:52px!important;
  max-height:76px!important;
  resize:vertical!important;
}

/* La tarjeta de mesociclo mantiene el bloque de micros pegado, sin vacío excesivo */
html body .mgym-html-config-page .mgym-v264q-micros{
  position:relative!important;
  margin-top:8px!important;
  padding:12px!important;
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(243,244,246,.08),transparent 34%),
    linear-gradient(145deg,rgba(7,7,7,.28),rgba(75,85,99,.10))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}

html body .mgym-html-config-page .mgym-v264q-micros-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}

html body .mgym-html-config-page .mgym-v264q-micros-head b{
  color:#F3F4F6!important;
  font-size:13px!important;
}

html body .mgym-html-config-page .mgym-v264q-micros-head small{
  display:block!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

html body .mgym-html-config-page .mgym-v264q-micros-head em{
  flex:0 0 auto!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.14)!important;
  background:rgba(243,244,246,.08)!important;
  color:#F3F4F6!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:800!important;
}

/* Navegación interna de microciclos: una tarjeta visible y las demás con flechas */
html body .mgym-html-config-page .mgym-v264r-micro-nav{
  display:grid!important;
  grid-template-columns:38px 1fr 38px!important;
  align-items:center!important;
  gap:8px!important;
  margin:8px 0 10px!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-nav span{
  display:grid!important;
  place-items:center!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:rgba(7,7,7,.22)!important;
  color:#D8DEE7!important;
  font-size:11px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow{
  width:38px!important;
  height:38px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.20)!important;
  background:
    radial-gradient(circle at 30% 20%,rgba(243,244,246,.20),transparent 38%),
    linear-gradient(145deg,rgba(75,85,99,.42),rgba(7,7,7,.22))!important;
  color:#F3F4F6!important;
  font-size:22px!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.10)!important;
  transition:transform .18s ease,border-color .18s ease,opacity .18s ease!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(103,232,249,.48)!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow:disabled{
  opacity:.32!important;
  cursor:not-allowed!important;
  transform:none!important;
}

/* Contenedor de microcards: no lista vertical, solo tarjeta activa */
html body .mgym-html-config-page .mgym-v264q-micro-list{
  display:block!important;
  width:100%!important;
  overflow:hidden!important;
  min-height:0!important;
  max-height:none!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-row{
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-row.is-v264r-active{
  display:grid!important;
}

/* Microciclo como tarjeta compacta premium */
html body .mgym-html-config-page .mgym-v264r-micro-card{
  width:100%!important;
  padding:14px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 14% 0%,rgba(243,244,246,.10),transparent 32%),
    linear-gradient(145deg,rgba(75,85,99,.34),rgba(7,7,7,.20))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 16px 36px rgba(0,0,0,.26)!important;
  color:#F3F4F6!important;
  text-align:left!important;
  animation:mgymV264rMicroIn .18s ease-out both!important;
}

@keyframes mgymV264rMicroIn{
  from{opacity:.65; transform:translateX(10px);}
  to{opacity:1; transform:translateX(0);}
}

html body .mgym-html-config-page .mgym-v264r-micro-card__head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:12px!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title i{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title b{
  display:block!important;
  color:#F3F4F6!important;
  font-size:13px!important;
  line-height:1.15!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title small{
  display:block!important;
  margin-top:3px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-status{
  flex:0 0 auto!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(103,232,249,.24)!important;
  background:rgba(103,232,249,.10)!important;
  color:#E6FBFF!important;
  font-size:10px!important;
  font-weight:850!important;
}

/* Días visibles dentro de la tarjeta */
html body .mgym-html-config-page .mgym-v264r-micro-days{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:0 0 12px!important;
}

html body .mgym-html-config-page .mgym-v264q-day-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-height:30px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(156,163,175,.12)!important;
  color:#F3F4F6!important;
  font-size:10px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264q-day-chip small{
  color:#C9D1DC!important;
  font-size:10px!important;
}

/* Barra de intensidad dentro de la tarjeta */
html body .mgym-html-config-page .mgym-v264r-micro-progress{
  display:block!important;
  margin:0 0 12px!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress em{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:7px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-style:normal!important;
  text-transform:uppercase!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress strong{
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress > i{
  display:block!important;
  height:8px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.18)!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress > i > b{
  display:block!important;
  height:100%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,rgba(103,232,249,.72),rgba(243,244,246,.82))!important;
}

/* Guardar por microciclo */
html body .mgym-html-config-page .mgym-v264r-micro-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
}

html body .mgym-html-config-page .mgym-v264r-save-micro{
  width:100%!important;
  min-height:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-size:12px!important;
  font-weight:850!important;
  cursor:pointer!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  transition:transform .18s ease, background .18s ease, border-color .18s ease!important;
}

html body .mgym-html-config-page .mgym-v264r-save-micro:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(103,232,249,.42)!important;
  background:rgba(103,232,249,.13)!important;
}

html body .mgym-html-config-page .mgym-v264r-save-micro.is-saved{
  border-color:rgba(34,197,94,.42)!important;
  background:rgba(34,197,94,.16)!important;
}

html body .mgym-html-config-page .mgym-v264r-saved-stamp{
  display:block!important;
  text-align:center!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

/* Quita el mensaje duplicado de "drawer" porque ahora el micro se guarda desde tarjeta */
html body .mgym-html-config-page .mgym-v264q-inline-note{
  display:none!important;
}

/* El bloque canónico es Planificación limpia */
html body .mgym-html-config-page #mgymConfigCleanPlanner{
  margin-top:10px!important;
}

/* Mayor fuerza para el selector de sistemas: no debe verse limitado a 3 */
html body .mgym-html-config-page #techniqueMainPick option{
  display:block!important;
  visibility:visible!important;
}

@media (max-width:820px){
  html body .mgym-html-config-page .mgym-v264r-micro-card{
    padding:12px!important;
  }

  html body .mgym-html-config-page .mgym-v264r-micro-days{
    gap:6px!important;
  }
}




/* ==========================================================================
   v264s — Bloque único + microciclos visibles + métodos completos
   ========================================================================== */

/* El bloque antiguo se elimina por template y también se blinda por CSS si queda cacheado. */
html body .mgym-html-config-page #mgymPeriodizationEditor,
html body .mgym-html-config-page #configMesoPlanner,
html body .mgym-html-config-page .mgym-config-planner-clean:not(.mgym-v264s-main-planner){
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
}

/* El bloque nuevo ocupa el sitio de la planificación. */
html body .mgym-html-config-page #mgymConfigCleanPlanner,
html body .mgym-html-config-page .mgym-v264s-main-planner{
  margin-top:10px!important;
  border-radius:28px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-section{
  margin-top:0!important;
}

/* Método global: fuerza apertura normal con todas las opciones reales. */
html body .mgym-html-config-page #techniqueMainPick option{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}

/* Las tarjetas de mesociclo son compactas; sin huecos muertos. */
html body .mgym-html-config-page .mgym-v264q-meso-card{
  min-height:auto!important;
  height:auto!important;
  padding:16px!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-v264q-meso-head{
  margin-bottom:6px!important;
}

html body .mgym-html-config-page .mgym-v264q-form-grid{
  gap:9px!important;
}

html body .mgym-html-config-page .mgym-v264q-form-grid label.is-wide{
  min-height:0!important;
}

html body .mgym-html-config-page .mgym-v264q-form-grid textarea{
  min-height:46px!important;
  max-height:58px!important;
  resize:vertical!important;
  scrollbar-width:thin!important;
}

/* Microciclos: ahora SIEMPRE se ve una tarjeta activa dentro del mesociclo. */
html body .mgym-html-config-page .mgym-v264q-micros{
  margin-top:8px!important;
  padding:12px!important;
  min-height:0!important;
  border-radius:20px!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-list{
  display:block!important;
  width:100%!important;
  overflow:hidden!important;
  min-height:168px!important;
  max-height:none!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-row,
html body .mgym-html-config-page .mgym-v264s-micro-card{
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-row.is-v264r-active,
html body .mgym-html-config-page .mgym-v264q-micro-row.is-v264s-active,
html body .mgym-html-config-page .mgym-v264q-micro-list .mgym-v264q-micro-row:first-child{
  display:grid!important;
}

/* Cuando JS ya marca un activo, evita que el first-child aparezca duplicado. */
html body .mgym-html-config-page .mgym-v264q-micros[data-v264r-ready="1"] .mgym-v264q-micro-list .mgym-v264q-micro-row:first-child:not(.is-v264r-active):not(.is-v264s-active){
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-nav{
  display:grid!important;
  grid-template-columns:38px 1fr 38px!important;
  gap:8px!important;
  align-items:center!important;
  margin:8px 0 10px!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-nav span{
  display:grid!important;
  place-items:center!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:rgba(7,7,7,.24)!important;
  color:#D8DEE7!important;
  font-size:11px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow{
  width:38px!important;
  height:38px!important;
  padding:0!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(243,244,246,.22)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.46),rgba(7,7,7,.26))!important;
  color:#F3F4F6!important;
  font-size:22px!important;
  line-height:1!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow:disabled{
  opacity:.35!important;
  cursor:not-allowed!important;
}

html body .mgym-html-config-page .mgym-v264s-micro-card,
html body .mgym-html-config-page .mgym-v264r-micro-card{
  width:100%!important;
  padding:14px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 14% 0%,rgba(243,244,246,.11),transparent 34%),
    linear-gradient(145deg,rgba(75,85,99,.34),rgba(7,7,7,.20))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 15px 34px rgba(0,0,0,.25)!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-card__head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin-bottom:12px!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title i{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-style:normal!important;
  font-weight:850!important;
  font-size:12px!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title b{
  display:block!important;
  color:#F3F4F6!important;
  font-size:13px!important;
  line-height:1.2!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-title small{
  display:block!important;
  margin-top:3px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-status{
  flex:0 0 auto!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(103,232,249,.24)!important;
  background:rgba(103,232,249,.10)!important;
  color:#E6FBFF!important;
  font-size:10px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-days{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:0 0 12px!important;
}

html body .mgym-html-config-page .mgym-v264q-day-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-height:30px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(156,163,175,.12)!important;
  color:#F3F4F6!important;
  font-size:10px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress em{
  display:flex!important;
  justify-content:space-between!important;
  margin-bottom:7px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-style:normal!important;
  text-transform:uppercase!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress > i{
  display:block!important;
  height:8px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.18)!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-progress > i > b{
  display:block!important;
  height:100%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,rgba(103,232,249,.72),rgba(243,244,246,.82))!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin-top:12px!important;
}

html body .mgym-html-config-page .mgym-v264r-save-micro{
  width:100%!important;
  min-height:38px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-size:12px!important;
  font-weight:850!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-v264r-save-micro.is-saved{
  border-color:rgba(34,197,94,.44)!important;
  background:rgba(34,197,94,.16)!important;
}

/* Scroll horizontal del rail: oculto visual, navegación por flechas. */
html body .mgym-html-config-page .mgym-v264q-meso-rail,
html body .mgym-html-config-page .mgym-clean-meso-rail{
  scrollbar-width:none!important;
}
html body .mgym-html-config-page .mgym-v264q-meso-rail::-webkit-scrollbar,
html body .mgym-html-config-page .mgym-clean-meso-rail::-webkit-scrollbar{
  display:none!important;
}




/* ==========================================================================
   v264t — Fix bloqueo + días lunes-domingo asignables dentro del microciclo
   ========================================================================== */

/* Oculta por CSS el bloque viejo si por caché/markup aparece */
html body .mgym-html-config-page #mgymPeriodizationEditor,
html body .mgym-html-config-page #configMesoPlanner{
  display:none!important;
}

/* Evita que observers viejos/de navegación creen scroll horizontal feo */
html body .mgym-html-config-page .mgym-v264q-meso-rail,
html body .mgym-html-config-page .mgym-clean-meso-rail{
  scrollbar-width:none!important;
}

html body .mgym-html-config-page .mgym-v264q-meso-rail::-webkit-scrollbar,
html body .mgym-html-config-page .mgym-clean-meso-rail::-webkit-scrollbar{
  display:none!important;
}

/* La zona de microciclos debe mostrar una tarjeta activa con días asignables */
html body .mgym-html-config-page .mgym-v264q-micros{
  min-height:0!important;
  padding:12px!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-list{
  display:block!important;
  overflow:hidden!important;
  width:100%!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-row{
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264q-micro-row.is-v264r-active,
html body .mgym-html-config-page .mgym-v264q-micro-row.is-v264s-active,
html body .mgym-html-config-page .mgym-v264q-micro-row.is-v264t-active{
  display:grid!important;
}

/* Tarjeta de microciclo compacta */
html body .mgym-html-config-page .mgym-v264t-micro-card{
  width:100%!important;
  padding:13px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 16% 0%,rgba(243,244,246,.10),transparent 32%),
    linear-gradient(145deg,rgba(75,85,99,.34),rgba(7,7,7,.20))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 14px 32px rgba(0,0,0,.24)!important;
  animation:mgymV264tMicroIn .16s ease-out both!important;
}

@keyframes mgymV264tMicroIn{
  from{opacity:.65; transform:translateX(8px);}
  to{opacity:1; transform:translateX(0);}
}

/* Días de lunes a domingo, asignables directamente */
html body .mgym-html-config-page .mgym-v264t-week-days{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0 0 12px!important;
}

html body .mgym-html-config-page .mgym-v264t-day-toggle{
  position:relative!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-v264t-day-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}

html body .mgym-html-config-page .mgym-v264t-day-toggle span{
  display:grid!important;
  place-items:center!important;
  min-height:38px!important;
  padding:6px!important;
  border-radius:12px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(156,163,175,.10)!important;
  color:#D8DEE7!important;
  font-size:10px!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease!important;
}

html body .mgym-html-config-page .mgym-v264t-day-toggle span small{
  display:block!important;
  margin-top:2px!important;
  color:inherit!important;
  opacity:.76!important;
  font-size:9px!important;
}

html body .mgym-html-config-page .mgym-v264t-day-toggle:hover span{
  transform:translateY(-1px)!important;
  border-color:rgba(243,244,246,.32)!important;
}

html body .mgym-html-config-page .mgym-v264t-day-toggle input:checked + span,
html body .mgym-html-config-page .mgym-v264t-day-toggle.is-selected span{
  border-color:rgba(103,232,249,.52)!important;
  background:rgba(103,232,249,.16)!important;
  color:#F3F4F6!important;
  box-shadow:0 0 0 3px rgba(103,232,249,.06)!important;
}

/* Flechas internas de microciclos */
html body .mgym-html-config-page .mgym-v264r-micro-nav{
  display:grid!important;
  grid-template-columns:38px 1fr 38px!important;
  gap:8px!important;
  align-items:center!important;
  margin:8px 0 10px!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-nav span{
  display:grid!important;
  place-items:center!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:rgba(7,7,7,.22)!important;
  color:#D8DEE7!important;
  font-size:11px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.20)!important;
  background:
    radial-gradient(circle at 30% 20%,rgba(243,244,246,.20),transparent 38%),
    linear-gradient(145deg,rgba(75,85,99,.42),rgba(7,7,7,.22))!important;
  color:#F3F4F6!important;
  font-size:22px!important;
  cursor:pointer!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.10)!important;
}

html body .mgym-html-config-page .mgym-v264r-micro-arrow:disabled{
  opacity:.34!important;
  cursor:not-allowed!important;
}

/* Guardar microciclo */
html body .mgym-html-config-page .mgym-v264t-save-micro,
html body .mgym-html-config-page .mgym-v264r-save-micro{
  width:100%!important;
  min-height:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-size:12px!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease!important;
}

html body .mgym-html-config-page .mgym-v264t-save-micro:hover,
html body .mgym-html-config-page .mgym-v264r-save-micro:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(103,232,249,.42)!important;
  background:rgba(103,232,249,.13)!important;
}

html body .mgym-html-config-page .mgym-v264t-save-micro.is-saved,
html body .mgym-html-config-page .mgym-v264r-save-micro.is-saved{
  border-color:rgba(34,197,94,.42)!important;
  background:rgba(34,197,94,.16)!important;
}

html body .mgym-html-config-page .mgym-v264t-micro-feedback{
  display:block!important;
  min-height:14px!important;
  margin-top:6px!important;
  text-align:center!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

/* Reducir huecos muertos */
html body .mgym-html-config-page .mgym-v264q-meso-card{
  gap:10px!important;
  min-height:auto!important;
}

html body .mgym-html-config-page .mgym-v264q-meso-card textarea[data-v264q-meso-input="notes"]{
  min-height:48px!important;
  max-height:70px!important;
}

/* El desplegable global no se toca al abrirse: solo estilos */
html body .mgym-html-config-page #techniqueMainPick option{
  display:block!important;
  visibility:visible!important;
}

@media (max-width:820px){
  html body .mgym-html-config-page .mgym-v264t-week-days{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}




/* ==========================================================================
   v264u — configuración estable: sin bloqueo, tarjetas meso + micro L-D
   ========================================================================== */

html body .mgym-html-config-page #mgymPeriodizationEditor,
html body .mgym-html-config-page #configMesoPlanner{
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264u-main{
  margin-top:10px!important;
}

/* Carrusel de mesociclos: tarjetas configurables */
html body .mgym-html-config-page .mgym-v264u-meso-rail{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(330px,390px)!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 2px 14px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-rail::-webkit-scrollbar{
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-card{
  scroll-snap-align:start!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  padding:18px!important;
  border-radius:24px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 14% 0%,rgba(103,232,249,.18),transparent 32%),
    linear-gradient(145deg,rgba(75,85,99,.32),rgba(7,7,7,.22))!important;
  box-shadow:0 20px 54px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.10)!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-meso-tone-carga-1,
html body .mgym-html-config-page .mgym-meso-tone-carga-2,
html body .mgym-html-config-page .mgym-meso-tone-carga-3,
html body .mgym-html-config-page .mgym-meso-tone-carga-4,
html body .mgym-html-config-page .mgym-meso-tone-carga-5{
  background:
    radial-gradient(circle at 14% 0%,rgba(129,140,248,.22),transparent 32%),
    linear-gradient(145deg,rgba(49,46,129,.42),rgba(7,7,7,.24))!important;
}

html body .mgym-html-config-page .mgym-meso-tone-descarga{
  background:
    radial-gradient(circle at 14% 0%,rgba(74,222,128,.22),transparent 32%),
    linear-gradient(145deg,rgba(20,83,45,.42),rgba(7,7,7,.24))!important;
}

html body .mgym-html-config-page .mgym-meso-tone-pico{
  background:
    radial-gradient(circle at 14% 0%,rgba(251,146,60,.24),transparent 32%),
    linear-gradient(145deg,rgba(124,45,18,.42),rgba(7,7,7,.24))!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:12px!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-head p{
  margin:0 0 5px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-head h3{
  margin:0!important;
  color:#F3F4F6!important;
  font-size:18px!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-head small{
  display:block!important;
  margin-top:6px!important;
  color:#C9D1DC!important;
  font-size:11px!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-head > span{
  width:54px!important;
  height:54px!important;
  flex:0 0 54px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:18px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-weight:900!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid label{
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid label.is-wide{
  grid-column:1/-1!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid span{
  display:block!important;
  margin:0 0 6px!important;
  color:#9CA3AF!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid :is(input,select,textarea){
  width:100%!important;
  min-width:0!important;
  border-radius:13px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:rgba(7,7,7,.26)!important;
  color:#F3F4F6!important;
  padding:9px 10px!important;
  font-size:13px!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid textarea{
  min-height:50px!important;
  max-height:74px!important;
  resize:vertical!important;
}

/* Microciclos internos */
html body .mgym-html-config-page .mgym-v264u-micros{
  padding:12px!important;
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.20)!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(243,244,246,.08),transparent 34%),
    linear-gradient(145deg,rgba(7,7,7,.28),rgba(75,85,99,.10))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}

html body .mgym-html-config-page .mgym-v264u-micros-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-micros-head b{
  color:#F3F4F6!important;
  font-size:13px!important;
}

html body .mgym-html-config-page .mgym-v264u-micros-head small{
  display:block!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-micros-head em{
  flex:0 0 auto!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.14)!important;
  background:rgba(243,244,246,.08)!important;
  color:#F3F4F6!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-nav{
  display:grid!important;
  grid-template-columns:38px 1fr 38px!important;
  gap:8px!important;
  align-items:center!important;
  margin:8px 0 10px!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-nav span{
  display:grid!important;
  place-items:center!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:rgba(7,7,7,.22)!important;
  color:#D8DEE7!important;
  font-size:11px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-nav button{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.20)!important;
  background:
    radial-gradient(circle at 30% 20%,rgba(243,244,246,.20),transparent 38%),
    linear-gradient(145deg,rgba(75,85,99,.42),rgba(7,7,7,.22))!important;
  color:#F3F4F6!important;
  font-size:22px!important;
  cursor:pointer!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.10)!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-nav button:disabled{
  opacity:.34!important;
  cursor:not-allowed!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-list{
  width:100%!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-card{
  display:none!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-card.is-active{
  display:grid!important;
  gap:12px!important;
  width:100%!important;
  padding:13px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 16% 0%,rgba(243,244,246,.10),transparent 32%),
    linear-gradient(145deg,rgba(75,85,99,.34),rgba(7,7,7,.20))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 14px 32px rgba(0,0,0,.24)!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-title i{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-title b{
  display:block!important;
  color:#F3F4F6!important;
  font-size:13px!important;
  line-height:1.15!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-title small{
  display:block!important;
  margin-top:3px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-status{
  flex:0 0 auto!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(103,232,249,.24)!important;
  background:rgba(103,232,249,.10)!important;
  color:#E6FBFF!important;
  font-size:10px!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264u-week-days{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
}

html body .mgym-html-config-page .mgym-v264u-day-toggle{
  position:relative!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-v264u-day-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}

html body .mgym-html-config-page .mgym-v264u-day-toggle span{
  display:grid!important;
  place-items:center!important;
  min-height:38px!important;
  padding:6px!important;
  border-radius:12px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(156,163,175,.10)!important;
  color:#D8DEE7!important;
  font-size:10px!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease!important;
}

html body .mgym-html-config-page .mgym-v264u-day-toggle span small{
  display:block!important;
  margin-top:2px!important;
  color:inherit!important;
  opacity:.76!important;
  font-size:9px!important;
}

html body .mgym-html-config-page .mgym-v264u-day-toggle input:checked + span,
html body .mgym-html-config-page .mgym-v264u-day-toggle.is-selected span{
  border-color:rgba(103,232,249,.52)!important;
  background:rgba(103,232,249,.16)!important;
  color:#F3F4F6!important;
  box-shadow:0 0 0 3px rgba(103,232,249,.06)!important;
}

html body .mgym-html-config-page .mgym-v264u-progress em{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:7px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-style:normal!important;
  text-transform:uppercase!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-v264u-progress strong{
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-v264u-progress > i{
  display:block!important;
  height:8px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.18)!important;
}

html body .mgym-html-config-page .mgym-v264u-progress > i > b{
  display:block!important;
  height:100%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,rgba(103,232,249,.72),rgba(243,244,246,.82))!important;
}

html body .mgym-html-config-page .mgym-v264u-micro-actions{
  display:grid!important;
  gap:7px!important;
}

html body .mgym-html-config-page .mgym-v264u-save-micro{
  width:100%!important;
  min-height:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.10)!important;
  color:#F3F4F6!important;
  font-size:12px!important;
  font-weight:850!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-v264u-save-micro:hover{
  border-color:rgba(103,232,249,.42)!important;
  background:rgba(103,232,249,.13)!important;
}

html body .mgym-html-config-page .mgym-v264u-save-micro.is-saved{
  border-color:rgba(34,197,94,.42)!important;
  background:rgba(34,197,94,.16)!important;
}

html body .mgym-html-config-page .mgym-v264u-feedback{
  min-height:14px!important;
  text-align:center!important;
  color:#9CA3AF!important;
  font-size:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-clean-note{
  padding:14px!important;
  border-radius:18px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.20)!important;
}

html body .mgym-html-config-page .mgym-v264u-clean-note b,
html body .mgym-html-config-page .mgym-v264u-clean-note span{
  display:block!important;
}

html body .mgym-html-config-page .mgym-v264u-clean-note span{
  margin-top:5px!important;
  color:#9CA3AF!important;
  font-size:12px!important;
}

@media (max-width:900px){
  html body .mgym-html-config-page .mgym-v264u-meso-rail{
    grid-auto-columns:minmax(86%,1fr)!important;
  }
  html body .mgym-html-config-page .mgym-v264u-week-days{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* v264v — Configuración limpia: métodos completos, rutinas por mesociclo y sin scroll horizontal muerto */
html:has(.mgym-html-config-page), body:has(.mgym-html-config-page){max-width:100%!important;overflow-x:hidden!important;}
html body .mgym-html-config-page,
html body .mgym-html-config-page *{box-sizing:border-box!important;min-width:0;}
html body .mgym-html-config-page #techniqueMainPick option,
html body .mgym-html-config-page #techniqueMainPick option:not([value="LINEAL"]):not([value="PIRAMIDAL"]){
  display:block!important;
  color:#F3F4F6!important;
  background:#191919!important;
}
html body .mgym-html-config-page #techniqueMainPick option:disabled{display:none!important;}

html body .mgym-html-config-page .mgym-clean-meso-rail,
html body .mgym-html-config-page .mgym-v264u-meso-rail{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-columns:unset!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  scroll-snap-type:none!important;
  padding:8px 0 10px!important;
  gap:16px!important;
}
html body .mgym-html-config-page .mgym-clean-meso-rail::-webkit-scrollbar,
html body .mgym-html-config-page .mgym-v264u-meso-rail::-webkit-scrollbar,
html body .mgym-html-config-page .mgym-clean-routine-list::-webkit-scrollbar{display:none!important;}
html body .mgym-html-config-page .mgym-clean-meso-rail,
html body .mgym-html-config-page .mgym-v264u-meso-rail,
html body .mgym-html-config-page .mgym-clean-routine-list{scrollbar-width:none!important;}

html body .mgym-html-config-page .mgym-v264u-meso-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  cursor:pointer!important;
}
html body .mgym-html-config-page .mgym-v264u-meso-card.is-active{
  outline:2px solid rgba(103,232,249,.36)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 1px rgba(103,232,249,.22),0 24px 54px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
html body .mgym-html-config-page .mgym-v264u-meso-assigned,
html body .mgym-html-config-page .mgym-v264u-micro-routine{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:10px 0 14px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  border:1px solid rgba(103,232,249,.22)!important;
  background:linear-gradient(145deg,rgba(48,219,236,.10),rgba(7,7,7,.22))!important;
}
html body .mgym-html-config-page .mgym-v264u-meso-assigned small,
html body .mgym-html-config-page .mgym-v264u-micro-routine span{
  color:rgba(243,244,246,.66)!important;
  font-size:11px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
html body .mgym-html-config-page .mgym-v264u-meso-assigned strong,
html body .mgym-html-config-page .mgym-v264u-micro-routine b{
  color:#F8FAFC!important;
  font-size:13px!important;
  text-align:right!important;
}
html body .mgym-html-config-page .mgym-v264u-day-toggle.is-routine-assigned span{
  border-color:rgba(34,197,94,.42)!important;
  box-shadow:0 0 0 1px rgba(34,197,94,.15),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
html body .mgym-html-config-page .mgym-v264u-day-toggle.is-routine-assigned span::after{
  content:"Rutina"!important;
  display:block!important;
  margin-top:4px!important;
  font-size:9px!important;
  font-weight:900!important;
  color:#BBF7D0!important;
}

html body .mgym-html-config-page .mgym-clean-routine-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,2fr)!important;}
html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important;
  grid-template-rows:none!important;
  grid-auto-flow:row!important;
  grid-auto-columns:unset!important;
  max-height:none!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:2px!important;
  gap:14px!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item.is-selected{
  border-color:rgba(34,197,94,.48)!important;
  background:linear-gradient(145deg,rgba(34,197,94,.10),rgba(17,24,39,.78))!important;
}
html body .mgym-html-config-page .mgym-clean-routine-item.is-selected .btn::after{content:""!important;}
html body .mgym-html-config-page .mgym-clean-routine-feedback{
  margin:12px 0 0!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  border:1px solid rgba(34,197,94,.32)!important;
  background:rgba(34,197,94,.08)!important;
  color:#DCFCE7!important;
  font-weight:800!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-panel:not(.is-active){display:none!important;}
html body .mgym-html-config-page .mgym-clean-card,
html body .mgym-html-config-page .mgym-config-clean-planner{overflow:hidden!important;max-width:100%!important;}
@media (max-width:980px){
  html body .mgym-html-config-page .mgym-clean-routine-grid{grid-template-columns:1fr!important;}
  html body .mgym-html-config-page .mgym-clean-section-title{gap:12px!important;align-items:flex-start!important;}
}

/* v264w — Rutinas: selección múltiple de mesociclos + resumen lateral + carrusel limpio de 3 tarjetas */
html body .mgym-html-config-page .mgym-v264u-meso-rail{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-columns:unset!important;
  gap:16px!important;
  overflow:hidden!important;
  padding:8px 0 10px!important;
  width:100%!important;
  max-width:100%!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-clean-meso-section{
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-clean-actions .btn[data-mgym-clean-prev],
html body .mgym-html-config-page .mgym-clean-actions .btn[data-mgym-clean-next]{
  position:relative!important;
  z-index:2!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector{
  margin:14px 0 16px!important;
  padding:14px!important;
  border-radius:22px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(103,232,249,.13),transparent 34%),
    linear-gradient(145deg,rgba(31,41,55,.78),rgba(7,7,7,.30))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(0,0,0,.20)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector__head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:12px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector__head small,
html body .mgym-html-config-page .mgym-clean-routine-current > small{
  display:block!important;
  margin:0 0 4px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector__head strong{
  color:#F3F4F6!important;
  font-size:14px!important;
  line-height:1.2!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector__head em{
  flex:0 0 auto!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(103,232,249,.24)!important;
  background:rgba(103,232,249,.10)!important;
  color:#E6FBFF!important;
  font-size:11px!important;
  font-style:normal!important;
  font-weight:850!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector__rail{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(34px,1fr))!important;
  gap:8px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-number{
  min-height:38px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border-radius:13px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.18))!important;
  color:#D8DEE7!important;
  font-size:13px!important;
  font-weight:900!important;
  cursor:pointer!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease!important;
}

html body .mgym-html-config-page .mgym-clean-meso-number:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(103,232,249,.42)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-number.is-selected{
  border-color:rgba(34,197,94,.54)!important;
  background:linear-gradient(145deg,rgba(34,197,94,.24),rgba(7,7,7,.24))!important;
  color:#F3F4F6!important;
  box-shadow:0 0 0 3px rgba(34,197,94,.08),inset 0 1px 0 rgba(255,255,255,.12)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-number.is-active{
  outline:2px solid rgba(103,232,249,.42)!important;
  outline-offset:2px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-number.is-assigned span::after{
  content:""!important;
  width:6px!important;
  height:6px!important;
  display:block!important;
  margin:3px auto 0!important;
  border-radius:999px!important;
  background:#22C55E!important;
  box-shadow:0 0 0 3px rgba(34,197,94,.12)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-grid{
  grid-template-columns:minmax(290px,.72fr) minmax(0,2fr)!important;
  align-items:start!important;
}

html body .mgym-html-config-page .mgym-clean-routine-current{
  max-height:640px!important;
  overflow:auto!important;
  scrollbar-width:none!important;
}
html body .mgym-html-config-page .mgym-clean-routine-current::-webkit-scrollbar{display:none!important;}

html body .mgym-html-config-page .mgym-clean-meso-summary-list{
  display:grid!important;
  gap:9px!important;
  margin-top:12px!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row{
  width:100%!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  gap:9px!important;
  align-items:center!important;
  padding:10px!important;
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.18)!important;
  color:#F3F4F6!important;
  text-align:left!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row i{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
  border:1px solid rgba(243,244,246,.16)!important;
  background:rgba(243,244,246,.08)!important;
  color:#F3F4F6!important;
  font-style:normal!important;
  font-weight:900!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row b,
html body .mgym-html-config-page .mgym-clean-meso-summary-row small{
  display:block!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row b{
  color:#F8FAFC!important;
  font-size:12px!important;
  line-height:1.2!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row small{
  margin-top:2px!important;
  color:#AEB7C4!important;
  font-size:10px!important;
  line-height:1.25!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row em{
  padding:6px 8px!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.10)!important;
  color:#C9D1DC!important;
  font-size:9px!important;
  font-style:normal!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-configured em{
  background:rgba(34,197,94,.13)!important;
  color:#BBF7D0!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-selected{
  border-color:rgba(34,197,94,.42)!important;
  background:rgba(34,197,94,.08)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-active{
  outline:2px solid rgba(103,232,249,.34)!important;
  outline-offset:2px!important;
}

@media (max-width:1100px){
  html body .mgym-html-config-page .mgym-v264u-meso-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .mgym-html-config-page .mgym-clean-meso-selector__rail{grid-template-columns:repeat(6,minmax(38px,1fr))!important;}
}

@media (max-width:720px){
  html body .mgym-html-config-page .mgym-v264u-meso-rail{grid-template-columns:1fr!important;}
  html body .mgym-html-config-page .mgym-clean-meso-selector__rail{grid-template-columns:repeat(4,minmax(40px,1fr))!important;}
  html body .mgym-html-config-page .mgym-clean-meso-selector__head{align-items:flex-start!important;flex-direction:column!important;}
  html body .mgym-html-config-page .mgym-clean-routine-grid{grid-template-columns:1fr!important;}
  html body .mgym-html-config-page .mgym-clean-routine-current{max-height:none!important;}
}


/* v264x — Rutinas en carrusel 2 filas x 3 columnas + preview de ejercicios + modal */
html body .mgym-html-config-page .mgym-clean-routine-library{
  overflow:hidden!important;
  min-width:0!important;
}

html body .mgym-html-config-page .mgym-clean-routine-list{
  display:grid!important;
  grid-template-rows:repeat(2,minmax(310px,auto))!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 28px) / 3)!important;
  grid-template-columns:none!important;
  gap:14px!important;
  overflow-x:hidden!important;
  overflow-y:hidden!important;
  scroll-behavior:smooth!important;
  scroll-snap-type:x mandatory!important;
  padding:4px 2px 8px!important;
  width:100%!important;
  max-width:100%!important;
  scrollbar-width:none!important;
}

html body .mgym-html-config-page .mgym-clean-routine-list::-webkit-scrollbar{display:none!important;}

html body .mgym-html-config-page .mgym-clean-routine-item{
  scroll-snap-align:start!important;
  min-height:310px!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  padding:18px!important;
  gap:14px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item__body{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:0!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises{
  display:grid!important;
  gap:7px!important;
  margin:4px 0 0!important;
  padding:0!important;
  list-style:none!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises li{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:start!important;
  padding:7px 8px!important;
  border-radius:12px!important;
  border:1px solid rgba(156,163,175,.14)!important;
  background:rgba(7,7,7,.18)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises i{
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:rgba(103,232,249,.11)!important;
  color:#E6FBFF!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:950!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises b,
html body .mgym-html-config-page .mgym-clean-routine-exercises small{
  display:block!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises b{
  color:#F8FAFC!important;
  font-size:11px!important;
  line-height:1.18!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises small{
  margin-top:2px!important;
  color:#AEB7C4!important;
  font-size:9px!important;
  line-height:1.25!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises.is-empty{
  margin-top:4px!important;
  padding:10px!important;
  border-radius:13px!important;
  border:1px dashed rgba(156,163,175,.22)!important;
  background:rgba(7,7,7,.16)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises.is-empty span,
html body .mgym-html-config-page .mgym-clean-routine-exercises.is-empty small{
  display:block!important;
  color:#AEB7C4!important;
  font-size:10px!important;
  font-weight:800!important;
}

html body .mgym-html-config-page .mgym-clean-routine-more{
  width:100%!important;
  margin-top:2px!important;
  padding:8px 10px!important;
  border:1px solid rgba(103,232,249,.22)!important;
  border-radius:999px!important;
  background:rgba(103,232,249,.08)!important;
  color:#E6FBFF!important;
  font-size:10px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-clean-routine-card-actions{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:8px!important;
  align-items:center!important;
  margin-top:auto!important;
}

html body .mgym-html-config-page .mgym-clean-routine-card-actions .btn{
  min-height:38px!important;
  white-space:nowrap!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:22px!important;
  background:rgba(0,0,0,.66)!important;
  backdrop-filter:blur(10px)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal.is-open{
  display:flex!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__panel{
  position:relative!important;
  width:min(920px,96vw)!important;
  max-height:min(820px,88vh)!important;
  overflow:auto!important;
  border-radius:28px!important;
  border:1px solid rgba(156,163,175,.28)!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(103,232,249,.14),transparent 34%),
    linear-gradient(145deg,rgba(31,41,55,.96),rgba(7,7,7,.94))!important;
  box-shadow:0 32px 90px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.10)!important;
  padding:24px!important;
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  border:1px solid rgba(243,244,246,.18)!important;
  background:rgba(243,244,246,.08)!important;
  color:#F8FAFC!important;
  font-size:24px!important;
  line-height:1!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head{
  padding-right:48px!important;
  margin-bottom:12px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head small,
html body .mgym-html-config-page .mgym-clean-routine-modal__head span{
  display:block!important;
  color:#9CA3AF!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head strong{
  display:block!important;
  margin:5px 0!important;
  color:#F8FAFC!important;
  font-size:24px!important;
  line-height:1.12!important;
}

html body .mgym-html-config-page #mgymCleanRoutineDetailsNotes{
  margin:0 0 16px!important;
  color:#C9D1DC!important;
  line-height:1.5!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-list article{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:10px!important;
  padding:12px!important;
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(7,7,7,.22)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-list article > i{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
  background:rgba(103,232,249,.12)!important;
  color:#E6FBFF!important;
  font-style:normal!important;
  font-weight:950!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-list strong,
html body .mgym-html-config-page .mgym-clean-routine-detail-list span,
html body .mgym-html-config-page .mgym-clean-routine-detail-list small{
  display:block!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-list strong{color:#F8FAFC!important;font-size:13px!important;line-height:1.2!important;}
html body .mgym-html-config-page .mgym-clean-routine-detail-list span{margin-top:3px!important;color:#AEB7C4!important;font-size:11px!important;font-weight:850!important;}
html body .mgym-html-config-page .mgym-clean-routine-detail-list small{margin-top:3px!important;color:#E5E7EB!important;font-size:11px!important;}
html body .mgym-html-config-page .mgym-clean-routine-detail-list p{margin:7px 0 0!important;color:#AEB7C4!important;font-size:11px!important;line-height:1.35!important;}

html body .mgym-html-config-page .mgym-clean-routine-empty-detail{
  padding:18px!important;
  border-radius:18px!important;
  border:1px dashed rgba(156,163,175,.28)!important;
  background:rgba(7,7,7,.20)!important;
}
html body .mgym-html-config-page .mgym-clean-routine-empty-detail strong,
html body .mgym-html-config-page .mgym-clean-routine-empty-detail span{display:block!important;}
html body .mgym-html-config-page .mgym-clean-routine-empty-detail span{margin-top:6px!important;color:#AEB7C4!important;}

@media (max-width:1200px){
  html body .mgym-html-config-page .mgym-clean-routine-list{
    grid-auto-columns:calc((100% - 14px) / 2)!important;
  }
}

@media (max-width:720px){
  html body .mgym-html-config-page .mgym-clean-routine-list{
    grid-template-rows:1fr!important;
    grid-auto-columns:100%!important;
  }
  html body .mgym-html-config-page .mgym-clean-routine-detail-list{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-clean-routine-card-actions{
    grid-template-columns:1fr!important;
  }
}

/* v264y — Rutinas: ejercicios visibles dentro de cada tarjeta con scroll interno */
html body .mgym-html-config-page .mgym-clean-routine-list{
  grid-template-rows:repeat(2,minmax(390px,auto))!important;
  grid-auto-columns:calc((100% - 28px) / 3)!important;
  gap:14px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item{
  min-height:390px!important;
  padding:18px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-item__body{
  min-height:0!important;
  flex:1 1 auto!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises-scroll{
  position:relative!important;
  max-height:182px!important;
  min-height:158px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px 8px 8px 0!important;
  margin-top:2px!important;
  border-radius:16px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:linear-gradient(180deg,rgba(7,7,7,.22),rgba(7,7,7,.12))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(103,232,249,.45) rgba(255,255,255,.06)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises-scroll::-webkit-scrollbar{
  width:7px!important;
  display:block!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises-scroll::-webkit-scrollbar-track{
  background:rgba(255,255,255,.06)!important;
  border-radius:999px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises-scroll::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(103,232,249,.62),rgba(34,197,94,.40))!important;
  border-radius:999px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises{
  gap:6px!important;
  padding:0 2px 0 8px!important;
  margin:0!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises li{
  grid-template-columns:26px minmax(0,1fr)!important;
  min-height:34px!important;
  padding:6px 7px!important;
  background:rgba(15,23,42,.26)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises li:hover{
  border-color:rgba(103,232,249,.22)!important;
  background:rgba(103,232,249,.055)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises b{
  font-size:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises small{
  font-size:9px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .mgym-html-config-page .mgym-clean-routine-more{
  margin-top:6px!important;
  min-height:30px!important;
  padding:7px 10px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-card-actions{
  margin-top:10px!important;
}

@media (max-width:1200px){
  html body .mgym-html-config-page .mgym-clean-routine-list{
    grid-auto-columns:calc((100% - 14px) / 2)!important;
  }
}

@media (max-width:720px){
  html body .mgym-html-config-page .mgym-clean-routine-list{
    grid-template-rows:1fr!important;
    grid-auto-columns:100%!important;
  }
  html body .mgym-html-config-page .mgym-clean-routine-item{
    min-height:390px!important;
  }
}


/* v264z · tarjetas de rutinas mostrando ejercicios por día */
html body .mgym-html-config-page .mgym-clean-routine-exercises-scroll{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  max-height:230px!important;
  overflow:auto!important;
  padding-right:4px!important;
  scrollbar-width:thin!important;
}

html body .mgym-html-config-page .mgym-clean-routine-day-block{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:10px!important;
  border-radius:14px!important;
  border:1px solid rgba(156,163,175,.14)!important;
  background:rgba(7,7,7,.18)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-day-block h5{
  margin:0!important;
  color:#E6FBFF!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises{
  display:grid!important;
  gap:6px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises li{
  display:block!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  border:1px solid rgba(156,163,175,.12)!important;
  background:rgba(15,23,42,.42)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises li span{
  display:block!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises b,
html body .mgym-html-config-page .mgym-clean-routine-exercises small{
  display:block!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises b{
  color:#F8FAFC!important;
  font-size:11px!important;
  line-height:1.18!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises small{
  margin-top:2px!important;
  color:#AEB7C4!important;
  font-size:9px!important;
  line-height:1.25!important;
}


/* v264aa · sin numeración en ejercicios + modal lateral bloqueante */
html.mgym-routine-modal-open,
html.mgym-routine-modal-open body{
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises,
html body .mgym-html-config-page .mgym-clean-routine-exercises li,
html body .mgym-clean-routine-exercises,
html body .mgym-clean-routine-exercises li{
  list-style:none!important;
  counter-reset:none!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises li::before,
html body .mgym-html-config-page .mgym-clean-routine-exercises li::marker,
html body .mgym-html-config-page .mgym-clean-routine-detail-list article::before,
html body .mgym-html-config-page .mgym-clean-routine-detail-list article::marker,
html body .mgym-html-config-page .mgym-clean-routine-detail-day article::before,
html body .mgym-html-config-page .mgym-clean-routine-detail-day article::marker{
  content:none!important;
  display:none!important;
}

html body .mgym-html-config-page .mgym-clean-routine-exercises i,
html body .mgym-html-config-page .mgym-clean-routine-detail-list i,
html body .mgym-html-config-page .mgym-clean-routine-detail-day-list i{
  display:none!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal,
html body .mgym-clean-routine-modal{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-end!important;
  width:100vw!important;
  height:100vh!important;
  padding:0!important;
  background:rgba(0,0,0,.72)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .18s ease, visibility .18s ease!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal.is-open,
html body .mgym-clean-routine-modal.is-open{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__panel,
html body .mgym-clean-routine-modal__panel{
  width:min(560px,96vw)!important;
  max-width:96vw!important;
  height:100vh!important;
  max-height:100vh!important;
  margin:0!important;
  border-radius:26px 0 0 26px!important;
  border:1px solid rgba(148,163,184,.22)!important;
  border-right:0!important;
  background:linear-gradient(180deg,rgba(24,28,34,.98),rgba(10,12,16,.98))!important;
  box-shadow:-28px 0 70px rgba(0,0,0,.55)!important;
  transform:translateX(105%)!important;
  transition:transform .22s ease!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  position:relative!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal.is-open .mgym-clean-routine-modal__panel,
html body .mgym-clean-routine-modal.is-open .mgym-clean-routine-modal__panel{
  transform:translateX(0)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__close,
html body .mgym-clean-routine-modal__close{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  z-index:2!important;
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  border:1px solid rgba(148,163,184,.26)!important;
  background:rgba(7,7,7,.42)!important;
  color:#F3F4F6!important;
  font-size:24px!important;
  line-height:1!important;
  cursor:pointer!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head,
html body .mgym-clean-routine-modal__head{
  padding:28px 68px 16px 24px!important;
  border-bottom:1px solid rgba(148,163,184,.14)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head small,
html body .mgym-clean-routine-modal__head small{
  display:block!important;
  color:#67E8F9!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  font-weight:900!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head strong,
html body .mgym-clean-routine-modal__head strong{
  display:block!important;
  margin-top:5px!important;
  color:#F8FAFC!important;
  font-size:21px!important;
  line-height:1.15!important;
  font-weight:950!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__head span,
html body .mgym-clean-routine-modal__head span{
  display:block!important;
  margin-top:8px!important;
  color:#AEB7C4!important;
  font-size:12px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__panel > p,
html body .mgym-clean-routine-modal__panel > p{
  margin:0!important;
  padding:14px 24px!important;
  color:#CBD5E1!important;
  font-size:12px!important;
  line-height:1.45!important;
  border-bottom:1px solid rgba(148,163,184,.10)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-modal__body,
html body .mgym-clean-routine-modal__body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:auto!important;
  padding:18px 20px 28px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-day-list,
html body .mgym-clean-routine-detail-day-list{
  display:grid!important;
  gap:14px!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-day,
html body .mgym-clean-routine-detail-day{
  display:grid!important;
  gap:9px!important;
  padding:14px!important;
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.16)!important;
  background:rgba(7,7,7,.26)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-day h4,
html body .mgym-clean-routine-detail-day h4{
  margin:0!important;
  color:#E6FBFF!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.09em!important;
  font-weight:950!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-exercise,
html body .mgym-clean-routine-detail-exercise{
  display:block!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  border:1px solid rgba(148,163,184,.12)!important;
  background:rgba(15,23,42,.42)!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-exercise strong,
html body .mgym-clean-routine-detail-exercise strong{
  display:block!important;
  color:#F8FAFC!important;
  font-size:13px!important;
  line-height:1.2!important;
}

html body .mgym-html-config-page .mgym-clean-routine-detail-exercise small,
html body .mgym-clean-routine-detail-exercise small,
html body .mgym-html-config-page .mgym-clean-routine-detail-exercise p,
html body .mgym-clean-routine-detail-exercise p{
  display:block!important;
  margin:4px 0 0!important;
  color:#AEB7C4!important;
  font-size:11px!important;
  line-height:1.35!important;
}

@media (max-width:720px){
  html body .mgym-html-config-page .mgym-clean-routine-modal__panel,
  html body .mgym-clean-routine-modal__panel{
    width:100vw!important;
    max-width:100vw!important;
    border-radius:20px 0 0 20px!important;
  }
}


/* v264ab · fuerza drawer lateral real del detalle de rutina */
body > .mgym-clean-routine-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
}
body > .mgym-clean-routine-modal .mgym-clean-routine-modal__panel{
  margin-left:auto!important;
}


/* v264ac · aviso de filtro por días compatibles */
html body .mgym-html-config-page .mgym-clean-routine-compatible-hint,
html body .mgym-clean-routine-compatible-hint{
  display:inline-flex!important;
  align-items:center!important;
  width:fit-content!important;
  margin-top:6px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(103,232,249,.22)!important;
  background:rgba(103,232,249,.08)!important;
  color:#DFFBFF!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.03em!important;
}


/* v264ad · calendario completo con navegación mensual y colores por mesociclo */
html body .mgym-html-config-page .mgym-clean-calendar-layout--full{
  grid-template-columns: minmax(240px, 300px) minmax(0, 1fr)!important;
  align-items:start!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-legend{
  display:grid!important;
  gap:10px!important;
  margin-top:10px!important;
  max-height:420px!important;
  overflow:auto!important;
}
html body .mgym-html-config-page .mgym-clean-summary-card--legend{
  width:100%!important;
  text-align:left!important;
  cursor:pointer!important;
}
html body .mgym-html-config-page .mgym-clean-summary-card--legend span{
  display:block!important;
  margin-top:4px!important;
  color:#cdd5df!important;
  font-size:11px!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-nav{
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  gap:14px!important;
  align-items:center!important;
  margin-bottom:14px!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-title-wrap{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  align-items:center!important;
  text-align:center!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-title-wrap small{
  color:#9CA3AF!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:10px!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day{
  min-height:124px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day.is-empty{
  min-height:124px!important;
  border:1px dashed rgba(156,163,175,.10)!important;
  background:rgba(7,7,7,.08)!important;
  box-shadow:none!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day b{
  font-size:17px!important;
  line-height:1.1!important;
}
html body .mgym-html-config-page .mgym-clean-day-pill{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:4px 10px!important;
  border-radius:999px!important;
  background:rgba(56,189,248,.10)!important;
  border:1px solid rgba(56,189,248,.20)!important;
  color:#E6FBFF!important;
  font-size:11px!important;
  font-weight:700!important;
}
html body .mgym-html-config-page .mgym-clean-day-pill.is-empty{
  background:rgba(156,163,175,.08)!important;
  border-color:rgba(156,163,175,.12)!important;
  color:#AEB7C4!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day small{
  display:block!important;
  color:#D6DDE6!important;
  font-size:11px!important;
  line-height:1.3!important;
}
@media (max-width: 980px){
  html body .mgym-html-config-page .mgym-clean-calendar-layout--full{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-clean-calendar-nav{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-clean-calendar-grid--full{
    gap:8px!important;
  }
}
@media (max-width: 720px){
  html body .mgym-html-config-page .mgym-clean-calendar-grid--full{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* v264ae · fallback PHP del calendario completo */
html body .mgym-html-config-page .mgym-clean-calendar-section > .mgym-clean-calendar-panel[data-clean-calendar-panel="full-calendar"]{
  display:block!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
}
html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day{
  min-height:124px!important;
}


/* ==========================================================================
   v264ag · Bloque final: Planificaciones guardadas con estilo Acero Space
   ========================================================================== */

html body .mgym-html-config-page .mgym-final-planning-block{
  position:relative!important;
  margin-top:28px!important;
  padding:30px!important;
  border-radius:32px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(34,211,238,.12),transparent 34%),
    radial-gradient(circle at 92% 8%,rgba(75,85,99,.28),transparent 30%),
    linear-gradient(145deg,rgba(31,36,43,.86),rgba(7,7,7,.42))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 28px 80px rgba(0,0,0,.34)!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-final-planning-block::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,rgba(34,211,238,.12),transparent 26%,rgba(156,163,175,.08) 100%)!important;
  opacity:.55!important;
}

html body .mgym-html-config-page .mgym-planning-register__head,
html body .mgym-html-config-page .mgym-planning-register__grid{
  position:relative!important;
  z-index:1!important;
}

html body .mgym-html-config-page .mgym-planning-register__head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:start!important;
  margin-bottom:22px!important;
}

html body .mgym-html-config-page .mgym-planning-register__title .label{
  color:#AEB7C4!important;
  letter-spacing:.16em!important;
}

html body .mgym-html-config-page .mgym-planning-register__title .cardTitle{
  margin:2px 0 8px!important;
  color:#F8FAFC!important;
  font-size:28px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

html body .mgym-html-config-page .mgym-planning-register__title .muted{
  max-width:860px!important;
  color:#C7D0DC!important;
  font-size:14px!important;
  line-height:1.55!important;
}

html body .mgym-html-config-page .mgym-planning-register__badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  border:1px solid rgba(34,211,238,.28)!important;
  background:rgba(34,211,238,.12)!important;
  color:#E6FBFF!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 12px 34px rgba(34,211,238,.10)!important;
}

html body .mgym-html-config-page .mgym-planning-register__grid{
  display:grid!important;
  grid-template-columns:minmax(360px,.42fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}

html body .mgym-html-config-page .mgym-planning-list,
html body .mgym-html-config-page .mgym-planning-final-summary{
  padding:22px!important;
  border-radius:26px!important;
  border:1px solid rgba(156,163,175,.22)!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(243,244,246,.08),transparent 34%),
    linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.22))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}

html body .mgym-html-config-page .mgym-planning-list__head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding-bottom:14px!important;
  margin-bottom:16px!important;
  border-bottom:1px solid rgba(156,163,175,.14)!important;
}

html body .mgym-html-config-page .mgym-planning-list__head small,
html body .mgym-html-config-page .mgym-planning-final-summary__head .label{
  display:block!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  margin-bottom:4px!important;
}

html body .mgym-html-config-page .mgym-planning-list__head strong{
  color:#F3F4F6!important;
  font-size:16px!important;
}

html body .mgym-html-config-page .mgym-planning-items{
  display:grid!important;
  gap:12px!important;
  max-height:520px!important;
  overflow:auto!important;
  padding-right:4px!important;
  scrollbar-width:thin!important;
}

html body .mgym-html-config-page .mgym-planning-item{
  position:relative!important;
  padding:16px!important;
  border-radius:22px!important;
  border:1px solid rgba(156,163,175,.16)!important;
  background:linear-gradient(145deg,rgba(17,24,39,.70),rgba(7,7,7,.22))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
  overflow:hidden!important;
}

html body .mgym-html-config-page .mgym-planning-item::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:14px!important;
  bottom:14px!important;
  width:3px!important;
  border-radius:999px!important;
  background:rgba(156,163,175,.30)!important;
}

html body .mgym-html-config-page .mgym-planning-item.is-active{
  border-color:rgba(34,211,238,.30)!important;
  background:
    radial-gradient(circle at 0% 0%,rgba(34,211,238,.11),transparent 46%),
    linear-gradient(145deg,rgba(17,24,39,.78),rgba(7,7,7,.20))!important;
}

html body .mgym-html-config-page .mgym-planning-item.is-active::before{
  background:#22D3EE!important;
  box-shadow:0 0 18px rgba(34,211,238,.36)!important;
}

html body .mgym-html-config-page .mgym-planning-item.is-draft::before{
  background:#9CA3AF!important;
}

html body .mgym-html-config-page .mgym-planning-item__top{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  margin-bottom:10px!important;
}

html body .mgym-html-config-page .mgym-planning-status-pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:rgba(156,163,175,.10)!important;
  color:#D6DDE6!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

html body .mgym-html-config-page .mgym-planning-item.is-active .mgym-planning-status-pill{
  border-color:rgba(34,211,238,.28)!important;
  background:rgba(34,211,238,.14)!important;
  color:#E6FBFF!important;
}

html body .mgym-html-config-page .mgym-planning-item__top strong{
  min-width:0!important;
  color:#F8FAFC!important;
  font-size:14px!important;
  line-height:1.3!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .mgym-html-config-page .mgym-planning-item p{
  margin:0 0 8px!important;
  color:#C7D0DC!important;
  font-size:12px!important;
  line-height:1.45!important;
}

html body .mgym-html-config-page .mgym-planning-item > small{
  display:block!important;
  margin-bottom:12px!important;
  color:#9CA3AF!important;
  font-size:11px!important;
}

html body .mgym-html-config-page .mgym-planning-item__actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}

html body .mgym-html-config-page .mgym-planning-item__actions .btn,
html body .mgym-html-config-page .mgym-planning-actions .btn{
  min-height:36px!important;
  border-radius:999px!important;
  padding:8px 13px!important;
  font-size:12px!important;
  font-weight:800!important;
}

html body .mgym-html-config-page .mgym-planning-final-summary__head{
  display:flex!important;
  justify-content:space-between!important;
  gap:14px!important;
  align-items:flex-start!important;
  padding-bottom:14px!important;
  margin-bottom:14px!important;
  border-bottom:1px solid rgba(156,163,175,.14)!important;
}

html body .mgym-html-config-page .mgym-planning-final-summary__head h3{
  margin:0!important;
  color:#F8FAFC!important;
  font-size:18px!important;
  letter-spacing:-.02em!important;
}

html body .mgym-html-config-page .mgym-final-status-dot{
  width:12px!important;
  height:12px!important;
  margin-top:6px!important;
  border-radius:999px!important;
  background:#F59E0B!important;
  box-shadow:0 0 0 6px rgba(245,158,11,.10),0 0 22px rgba(245,158,11,.30)!important;
}

html body .mgym-html-config-page .mgym-final-planning-block.is-ready .mgym-final-status-dot{
  background:#22C55E!important;
  box-shadow:0 0 0 6px rgba(34,197,94,.12),0 0 22px rgba(34,197,94,.35)!important;
}

html body .mgym-html-config-page .mgym-planning-summary-cards{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:0!important;
}

html body .mgym-html-config-page .mgym-final-summary-card{
  min-height:104px!important;
  padding:15px!important;
  border-radius:20px!important;
  border:1px solid rgba(156,163,175,.18)!important;
  background:
    radial-gradient(circle at 16% 0%,rgba(243,244,246,.08),transparent 34%),
    linear-gradient(145deg,rgba(31,41,55,.54),rgba(7,7,7,.18))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}

html body .mgym-html-config-page .mgym-final-summary-card small{
  display:block!important;
  margin-bottom:8px!important;
  color:#9CA3AF!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}

html body .mgym-html-config-page .mgym-final-summary-card strong{
  display:block!important;
  color:#F3F4F6!important;
  font-size:14px!important;
  line-height:1.35!important;
  word-break:break-word!important;
}

html body .mgym-html-config-page .mgym-final-summary-card.is-ready{
  border-color:rgba(34,197,94,.28)!important;
  background:radial-gradient(circle at 18% 0%,rgba(34,197,94,.12),transparent 38%),linear-gradient(145deg,rgba(31,41,55,.54),rgba(7,7,7,.18))!important;
}

html body .mgym-html-config-page .mgym-final-summary-card.is-warning{
  border-color:rgba(245,158,11,.28)!important;
  background:radial-gradient(circle at 18% 0%,rgba(245,158,11,.13),transparent 38%),linear-gradient(145deg,rgba(31,41,55,.54),rgba(7,7,7,.18))!important;
}

html body .mgym-html-config-page .mgym-planning-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:18px!important;
  padding-top:16px!important;
  border-top:1px solid rgba(156,163,175,.14)!important;
}

html body .mgym-html-config-page .mgym-planning-actions .btn.success{
  background:linear-gradient(135deg,#21C7D9,#1393A3)!important;
  color:#061014!important;
  border-color:rgba(34,211,238,.46)!important;
  box-shadow:0 12px 36px rgba(34,211,238,.16)!important;
}

html body .mgym-html-config-page .mgym-planning-empty{
  padding:18px!important;
  border-radius:20px!important;
  border:1px dashed rgba(156,163,175,.26)!important;
  background:rgba(7,7,7,.18)!important;
}

html body .mgym-html-config-page .mgym-planning-empty strong,
html body .mgym-html-config-page .mgym-planning-empty small{
  display:block!important;
}

html body .mgym-html-config-page .mgym-planning-empty strong{
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-planning-empty small{
  margin-top:4px!important;
  color:#9CA3AF!important;
}

@media (max-width:1280px){
  html body .mgym-html-config-page .mgym-planning-register__grid{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-planning-items{
    max-height:360px!important;
  }
}

@media (max-width:980px){
  html body .mgym-html-config-page .mgym-planning-summary-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:680px){
  html body .mgym-html-config-page .mgym-final-planning-block{
    padding:20px!important;
    border-radius:26px!important;
  }
  html body .mgym-html-config-page .mgym-planning-register__head{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-planning-summary-cards{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-planning-actions{
    justify-content:stretch!important;
  }
  html body .mgym-html-config-page .mgym-planning-actions .btn{
    width:100%!important;
  }
}


/* ==========================================================================
   v264ag · fallback sin scope: si el bloque se renderiza fuera de .mgym-html-config-page
   ========================================================================== */
#mgymPlanningRegister.mgym-final-planning-block{
  position:relative!important;
  margin:28px 0!important;
  padding:30px!important;
  border-radius:32px!important;
  border:1px solid rgba(156,163,175,.24)!important;
  background:radial-gradient(circle at 8% 0%,rgba(34,211,238,.12),transparent 34%),radial-gradient(circle at 92% 8%,rgba(75,85,99,.28),transparent 30%),linear-gradient(145deg,rgba(31,36,43,.86),rgba(7,7,7,.42))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 28px 80px rgba(0,0,0,.34)!important;
  overflow:hidden!important;
  color:#F3F4F6!important;
}
#mgymPlanningRegister.mgym-final-planning-block *{box-sizing:border-box!important;}
#mgymPlanningRegister .mgym-planning-register__head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:start!important;margin-bottom:22px!important;}
#mgymPlanningRegister .mgym-planning-register__title .label{display:block!important;color:#AEB7C4!important;font-size:11px!important;font-weight:900!important;letter-spacing:.16em!important;text-transform:uppercase!important;margin-bottom:4px!important;}
#mgymPlanningRegister .mgym-planning-register__title .cardTitle{margin:0 0 8px!important;color:#F8FAFC!important;font-size:28px!important;line-height:1.08!important;letter-spacing:-.035em!important;}
#mgymPlanningRegister .mgym-planning-register__title .muted{margin:0!important;max-width:860px!important;color:#C7D0DC!important;font-size:14px!important;line-height:1.55!important;}
#mgymPlanningRegister .mgym-planning-register__badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:8px 14px!important;border-radius:999px!important;border:1px solid rgba(34,211,238,.28)!important;background:rgba(34,211,238,.12)!important;color:#E6FBFF!important;font-size:11px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
#mgymPlanningRegister .mgym-planning-register__grid{display:grid!important;grid-template-columns:minmax(360px,.42fr) minmax(0,1fr)!important;gap:18px!important;align-items:start!important;}
#mgymPlanningRegister .mgym-planning-list,#mgymPlanningRegister .mgym-planning-final-summary{padding:22px!important;border-radius:26px!important;border:1px solid rgba(156,163,175,.22)!important;background:radial-gradient(circle at 8% 0%,rgba(243,244,246,.08),transparent 34%),linear-gradient(145deg,rgba(75,85,99,.22),rgba(7,7,7,.22))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;}
#mgymPlanningRegister .mgym-planning-list__head,#mgymPlanningRegister .mgym-planning-final-summary__head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding-bottom:14px!important;margin-bottom:16px!important;border-bottom:1px solid rgba(156,163,175,.14)!important;}
#mgymPlanningRegister .mgym-planning-list__head small,#mgymPlanningRegister .mgym-planning-final-summary__head .label{display:block!important;color:#9CA3AF!important;font-size:10px!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important;margin-bottom:4px!important;}
#mgymPlanningRegister .mgym-planning-list__head strong,#mgymPlanningRegister .mgym-planning-final-summary__head h3{margin:0!important;color:#F3F4F6!important;font-size:16px!important;line-height:1.25!important;}
#mgymPlanningRegister .mgym-planning-items{display:grid!important;gap:12px!important;max-height:520px!important;overflow:auto!important;padding-right:4px!important;scrollbar-width:thin!important;}
#mgymPlanningRegister .mgym-planning-item{position:relative!important;display:block!important;padding:16px!important;border-radius:22px!important;border:1px solid rgba(156,163,175,.16)!important;background:linear-gradient(145deg,rgba(17,24,39,.70),rgba(7,7,7,.22))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;overflow:hidden!important;color:#F3F4F6!important;}
#mgymPlanningRegister .mgym-planning-item::before{content:""!important;position:absolute!important;left:0!important;top:14px!important;bottom:14px!important;width:3px!important;border-radius:999px!important;background:rgba(156,163,175,.30)!important;}
#mgymPlanningRegister .mgym-planning-item.is-active{border-color:rgba(34,211,238,.30)!important;background:radial-gradient(circle at 0% 0%,rgba(34,211,238,.11),transparent 46%),linear-gradient(145deg,rgba(17,24,39,.78),rgba(7,7,7,.20))!important;}
#mgymPlanningRegister .mgym-planning-item.is-active::before{background:#22D3EE!important;box-shadow:0 0 18px rgba(34,211,238,.36)!important;}
#mgymPlanningRegister .mgym-planning-item__top{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:10px!important;align-items:center!important;margin-bottom:10px!important;}
#mgymPlanningRegister .mgym-planning-status-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:5px 9px!important;border-radius:999px!important;border:1px solid rgba(156,163,175,.18)!important;background:rgba(156,163,175,.10)!important;color:#D6DDE6!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;}
#mgymPlanningRegister .mgym-planning-item__top strong{min-width:0!important;color:#F8FAFC!important;font-size:14px!important;line-height:1.3!important;}
#mgymPlanningRegister .mgym-planning-item p{margin:0 0 8px!important;color:#C7D0DC!important;font-size:12px!important;line-height:1.45!important;}
#mgymPlanningRegister .mgym-planning-item>small{display:block!important;margin-bottom:12px!important;color:#9CA3AF!important;font-size:11px!important;}
#mgymPlanningRegister .mgym-planning-item__actions,#mgymPlanningRegister .mgym-planning-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;}
#mgymPlanningRegister .mgym-planning-actions{justify-content:flex-end!important;margin-top:18px!important;padding-top:16px!important;border-top:1px solid rgba(156,163,175,.14)!important;}
#mgymPlanningRegister .btn{appearance:none!important;border-radius:999px!important;border:1px solid rgba(156,163,175,.18)!important;background:rgba(75,85,99,.20)!important;color:#F3F4F6!important;min-height:36px!important;padding:8px 13px!important;font-size:12px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important;text-decoration:none!important;}
#mgymPlanningRegister .btn.ghost{background:rgba(156,163,175,.08)!important;color:#E5E7EB!important;}
#mgymPlanningRegister .btn.success,#mgymPlanningRegister .btn.primary{background:linear-gradient(135deg,#21C7D9,#1393A3)!important;color:#061014!important;border-color:rgba(34,211,238,.46)!important;box-shadow:0 12px 36px rgba(34,211,238,.16)!important;}
#mgymPlanningRegister .mgym-final-status-dot{width:12px!important;height:12px!important;margin-top:6px!important;border-radius:999px!important;background:#F59E0B!important;box-shadow:0 0 0 6px rgba(245,158,11,.10),0 0 22px rgba(245,158,11,.30)!important;}
#mgymPlanningRegister.is-ready .mgym-final-status-dot{background:#22C55E!important;box-shadow:0 0 0 6px rgba(34,197,94,.12),0 0 22px rgba(34,197,94,.35)!important;}
#mgymPlanningRegister .mgym-planning-summary-cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin:0!important;}
#mgymPlanningRegister .mgym-final-summary-card{min-height:104px!important;padding:15px!important;border-radius:20px!important;border:1px solid rgba(156,163,175,.18)!important;background:radial-gradient(circle at 16% 0%,rgba(243,244,246,.08),transparent 34%),linear-gradient(145deg,rgba(31,41,55,.54),rgba(7,7,7,.18))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;}
#mgymPlanningRegister .mgym-final-summary-card small{display:block!important;margin-bottom:8px!important;color:#9CA3AF!important;font-size:10px!important;font-weight:900!important;letter-spacing:.10em!important;text-transform:uppercase!important;}
#mgymPlanningRegister .mgym-final-summary-card strong{display:block!important;color:#F3F4F6!important;font-size:14px!important;line-height:1.35!important;word-break:break-word!important;}
#mgymPlanningRegister .mgym-final-summary-card.is-ready{border-color:rgba(34,197,94,.28)!important;background:radial-gradient(circle at 18% 0%,rgba(34,197,94,.12),transparent 38%),linear-gradient(145deg,rgba(31,41,55,.54),rgba(7,7,7,.18))!important;}
#mgymPlanningRegister .mgym-final-summary-card.is-warning{border-color:rgba(245,158,11,.28)!important;background:radial-gradient(circle at 18% 0%,rgba(245,158,11,.13),transparent 38%),linear-gradient(145deg,rgba(31,41,55,.54),rgba(7,7,7,.18))!important;}
@media (max-width:1280px){#mgymPlanningRegister .mgym-planning-register__grid{grid-template-columns:1fr!important;}#mgymPlanningRegister .mgym-planning-items{max-height:360px!important;}}
@media (max-width:980px){#mgymPlanningRegister .mgym-planning-summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media (max-width:720px){#mgymPlanningRegister.mgym-final-planning-block{padding:20px!important;border-radius:24px!important;}#mgymPlanningRegister .mgym-planning-register__head{grid-template-columns:1fr!important;}#mgymPlanningRegister .mgym-planning-summary-cards{grid-template-columns:1fr!important;}}


/* =========================================================
   v264ah · MOBILE PREMIUM CONFIGURACIÓN
   Mantiene el estilo Acero Space real de la web, pero reorganiza
   toda la página en móvil como la maqueta validada:
   - bloques compactos
   - sin imagen del bloque base
   - rutinas con flechas visibles
   - nav inferior glass opaco
   ========================================================= */
@media (max-width: 782px){
  html body .mgym-html-config-page,
  html body .mgym-ent-page--configuracion{
    width:min(100%,430px)!important;
    max-width:430px!important;
    margin:0 auto!important;
    padding:12px 12px 104px!important;
    overflow-x:hidden!important;
  }

  html body .mgym-html-config-page *{
    box-sizing:border-box!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
    top:auto!important;
    z-index:999999!important;
    width:min(calc(100% - 24px),430px)!important;
    max-width:430px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    padding:9px!important;
    border-radius:24px!important;
    border:1px solid rgba(243,244,246,.18)!important;
    background:linear-gradient(145deg,rgba(35,38,44,.78),rgba(7,7,7,.60))!important;
    backdrop-filter:blur(22px)!important;
    -webkit-backdrop-filter:blur(22px)!important;
    box-shadow:0 20px 60px rgba(0,0,0,.56)!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav a{
    min-width:0!important;
    min-height:46px!important;
    padding:6px 4px!important;
    border-radius:15px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
    font-size:10px!important;
    line-height:1!important;
    background:rgba(243,244,246,.055)!important;
    border:1px solid rgba(243,244,246,.12)!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav a span{
    font-size:15px!important;
    line-height:1!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav a b{
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  html body .mgym-html-config-page .mgym-config-flow-strip{
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    padding-bottom:3px!important;
    scrollbar-width:none!important;
  }

  html body .mgym-html-config-page .mgym-config-flow-strip::-webkit-scrollbar,
  html body .mgym-html-config-page .mgym-clean-meso-rail::-webkit-scrollbar,
  html body .mgym-html-config-page .mgym-clean-routine-list::-webkit-scrollbar{
    display:none!important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card{
    min-width:158px!important;
    scroll-snap-align:start!important;
    border-radius:16px!important;
  }

  html body .mgym-html-config-page .grid,
  html body .mgym-html-config-page .mgym-config-main-grid,
  html body .mgym-html-config-page .mgym-config-summary-shell,
  html body .mgym-html-config-page .mgym-config-silver-hero__inner,
  html body .mgym-html-config-page .mgym-clean-routine-grid,
  html body .mgym-html-config-page .mgym-clean-calendar-layout,
  html body .mgym-html-config-page .mgym-clean-calendar-layout--full{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  html body .mgym-html-config-page .mgym-config-workspace,
  html body .mgym-html-config-page .mgym-config-summary-wide,
  html body .mgym-html-config-page .mgym-config-silver-hero,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block,
  html body .mgym-html-config-page .mgym-clean-card,
  html body .mgym-html-config-page #mgymPlanningRegister{
    border-radius:22px!important;
    overflow:hidden!important;
  }

  html body .mgym-html-config-page .mgym-config-silver-hero,
  html body .mgym-html-config-page .mgym-config-summary-wide,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block,
  html body .mgym-html-config-page .mgym-clean-card,
  html body .mgym-html-config-page #mgymPlanningRegister{
    margin-top:12px!important;
  }

  html body .mgym-html-config-page .mgym-config-plan-carbon-block{
    display:block!important;
    padding:0!important;
  }

  html body .mgym-html-config-page .mgym-config-plan-carbon-block__main,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__side,
  html body .mgym-html-config-page .mgym-config-silver-hero__content,
  html body .mgym-html-config-page .mgym-config-silver-hero__console{
    padding:14px!important;
  }

  html body .mgym-html-config-page .mgym-config-plan-carbon-block__media,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__image,
  html body .mgym-html-config-page .mgym-plan-config-card__side img,
  html body .mgym-html-config-page .mgym-plan-config-card__image{
    display:none!important;
  }

  html body .mgym-html-config-page .mgym-config-plan-carbon-block__fields,
  html body .mgym-html-config-page .form.cols-3,
  html body .mgym-html-config-page .cols-3{
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }

  html body .mgym-html-config-page .field,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__field{
    min-width:0!important;
  }

  html body .mgym-html-config-page .field input,
  html body .mgym-html-config-page .field select,
  html body .mgym-html-config-page .field textarea,
  html body .mgym-html-config-page input,
  html body .mgym-html-config-page select,
  html body .mgym-html-config-page textarea{
    min-height:42px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }

  html body .mgym-html-config-page .mgym-config-plan-carbon-block__info-boxes,
  html body .mgym-html-config-page .mgym-config-summary-kpis,
  html body .mgym-html-config-page .mgym-clean-linked-summary,
  html body .mgym-html-config-page .mgym-clean-meso-summary,
  html body .mgym-html-config-page .mgym-v264af-summary-grid,
  html body .mgym-html-config-page .mgym-planning-summary-cards{
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }

  html body .mgym-html-config-page .mgym-config-plan-carbon-block__info-card,
  html body .mgym-html-config-page .mgym-config-summary-kpis .kpi,
  html body .mgym-html-config-page .mgym-clean-linked-summary > div,
  html body .mgym-html-config-page .mgym-clean-meso-summary > div{
    min-height:62px!important;
    padding:10px!important;
    border-radius:16px!important;
  }

  html body .mgym-html-config-page .mgym-clean-head,
  html body .mgym-html-config-page .mgym-clean-section-title,
  html body .mgym-html-config-page .mgym-v264af-head,
  html body .mgym-html-config-page .mgym-planning-register__head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:14px!important;
  }

  html body .mgym-html-config-page .mgym-clean-head h2,
  html body .mgym-html-config-page .mgym-clean-section-title h3,
  html body .mgym-html-config-page .cardTitle,
  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-register__title .cardTitle{
    font-size:17px!important;
    line-height:1.10!important;
    letter-spacing:-.035em!important;
  }

  html body .mgym-html-config-page .mgym-clean-steps{
    display:flex!important;
    overflow-x:auto!important;
    gap:8px!important;
    padding:0 14px 14px!important;
    scrollbar-width:none!important;
  }

  html body .mgym-html-config-page .mgym-clean-steps span{
    min-width:116px!important;
    border-radius:999px!important;
  }

  html body .mgym-html-config-page .mgym-clean-meso-rail{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:10px!important;
    padding:14px!important;
  }

  html body .mgym-html-config-page .mgym-clean-meso-chip,
  html body .mgym-html-config-page .mgym-clean-meso-card{
    min-width:86%!important;
    scroll-snap-align:start!important;
    border-radius:20px!important;
  }

  html body .mgym-html-config-page .mgym-clean-meso-detail,
  html body .mgym-html-config-page .mgym-clean-meso-panel{
    padding:0 14px 14px!important;
  }

  html body .mgym-html-config-page .mgym-clean-micro-list{
    display:grid!important;
    gap:10px!important;
  }

  html body .mgym-html-config-page .mgym-clean-micro{
    border-radius:17px!important;
  }

  /* Rutinas mobile: mismo estilo del mockup y flechas visibles */
  html body .mgym-html-config-page .mgym-clean-routine-grid{
    grid-template-columns:1fr!important;
    padding:0 14px 14px!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-current{
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    border-radius:17px!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-selector,
  html body .mgym-html-config-page .mgym-clean-routine-meso-selector{
    display:flex!important;
    gap:7px!important;
    overflow-x:auto!important;
    padding-bottom:2px!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-toolbar{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:10px!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-actions{
    display:grid!important;
    grid-template-columns:44px 44px!important;
    gap:8px!important;
  }

  html body .mgym-html-config-page [data-mgym-routine-prev],
  html body .mgym-html-config-page [data-mgym-routine-next],
  html body .mgym-html-config-page .mgym-clean-routine-actions .btn{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:16px!important;
    border:1px solid rgba(243,244,246,.14)!important;
    background:linear-gradient(145deg,rgba(243,244,246,.075),rgba(243,244,246,.03))!important;
    color:#F8FAFC!important;
    font-size:24px!important;
    font-weight:950!important;
    line-height:1!important;
    box-shadow:0 12px 30px rgba(0,0,0,.24)!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-list{
    display:flex!important;
    grid-template-columns:none!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:10px!important;
    padding-bottom:2px!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-item{
    min-width:100%!important;
    scroll-snap-align:start!important;
    display:grid!important;
    gap:10px!important;
    padding:13px!important;
    border-radius:20px!important;
    background:radial-gradient(circle at 0 0,rgba(56,221,248,.10),transparent 38%),rgba(243,244,246,.045)!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-exercises-scroll{
    max-height:158px!important;
    overflow:auto!important;
    display:grid!important;
    gap:8px!important;
    padding-right:3px!important;
  }

  html body .mgym-html-config-page .mgym-clean-routine-day-block{
    border-radius:15px!important;
  }

  /* Calendario mobile completo, compacto y con flechas */
  html body .mgym-html-config-page .mgym-clean-calendar-summary{
    order:2!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-main{
    order:1!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-nav{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    gap:8px!important;
    align-items:center!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-nav .btn{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    overflow:hidden!important;
    font-size:0!important;
    border-radius:16px!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-nav .btn:first-child::before{
    content:'‹';
    font-size:24px!important;
    line-height:1!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-nav .btn:last-child::before{
    content:'›';
    font-size:24px!important;
    line-height:1!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-title-wrap{
    min-height:44px!important;
    justify-content:center!important;
    padding:6px 10px!important;
    border-radius:16px!important;
    border:1px solid rgba(243,244,246,.10)!important;
    background:rgba(7,7,7,.20)!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-title{
    font-size:12px!important;
    line-height:1.15!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-title-wrap small{
    display:none!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-grid,
  html body .mgym-html-config-page .mgym-clean-calendar-grid--full{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:5px!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day,
  html body .mgym-html-config-page .mgym-clean-day{
    min-height:56px!important;
    padding:5px!important;
    border-radius:12px!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day b,
  html body .mgym-html-config-page .mgym-clean-day b{
    font-size:10px!important;
  }

  html body .mgym-html-config-page .mgym-clean-day-pill{
    padding:3px 5px!important;
    font-size:8px!important;
  }

  html body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day small,
  html body .mgym-html-config-page .mgym-clean-day small{
    font-size:8px!important;
    line-height:1.15!important;
  }

  /* Bloque final mobile como mockup validado */
  html body .mgym-html-config-page #mgymPlanningRegister.mgym-final-planning-block{
    margin-top:12px!important;
    padding:14px!important;
    border-radius:22px!important;
  }

  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-register__head,
  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-register__grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-list,
  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-final-summary{
    padding:14px!important;
    border-radius:18px!important;
  }

  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-items{
    max-height:none!important;
    gap:10px!important;
  }

  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-item{
    padding:12px!important;
    border-radius:18px!important;
  }

  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-item__actions,
  html body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }

  html body .mgym-html-config-page #mgymPlanningRegister .btn{
    min-height:34px!important;
    padding:7px 8px!important;
    font-size:10px!important;
    border-radius:12px!important;
    white-space:normal!important;
  }
}

@media (max-width: 370px){
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__fields,
  html body .mgym-html-config-page .form.cols-3,
  html body .mgym-html-config-page .cols-3,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__info-boxes,
  html body .mgym-html-config-page .mgym-config-summary-kpis,
  html body .mgym-html-config-page .mgym-clean-linked-summary,
  html body .mgym-html-config-page .mgym-clean-meso-summary,
  html body .mgym-html-config-page .mgym-v264af-summary-grid,
  html body .mgym-html-config-page .mgym-planning-summary-cards{
    grid-template-columns:1fr!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:4px!important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav a b{
    font-size:8px!important;
  }
}


/* =========================================================
   v264ai · SOLO MÓVIL · NO TOCA ESCRITORIO
   Corrección agresiva para evitar desktop encogido, textos verticales,
   huecos muertos, scroll lateral y bloques rotos en Configuración.
   ========================================================= */
@media screen and (max-width: 768px){
  html, body{
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  body .mgym-html-config-page,
  body .mgym-ent-page--configuracion,
  body .mgym-premium-aligned-page{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding-left:10px!important;
    padding-right:10px!important;
    padding-bottom:108px!important;
    overflow-x:hidden!important;
  }

  body .mgym-html-config-page *,
  body .mgym-html-config-page *::before,
  body .mgym-html-config-page *::after{
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }

  body .mgym-html-config-page h1,
  body .mgym-html-config-page h2,
  body .mgym-html-config-page h3,
  body .mgym-html-config-page h4,
  body .mgym-html-config-page p,
  body .mgym-html-config-page span,
  body .mgym-html-config-page strong,
  body .mgym-html-config-page small,
  body .mgym-html-config-page label,
  body .mgym-html-config-page button,
  body .mgym-html-config-page a,
  body .mgym-html-config-page b,
  body .mgym-html-config-page em{
    white-space:normal!important;
    transform:none!important;
  }

  /* Navegación inferior glass: compacta, usable y sin romper textos */
  body .mgym-html-config-page .mgym-config-local-nav{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    top:auto!important;
    z-index:99999!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    padding:8px!important;
    border-radius:22px!important;
    border:1px solid rgba(243,244,246,.18)!important;
    background:linear-gradient(145deg,rgba(35,38,44,.78),rgba(7,7,7,.62))!important;
    backdrop-filter:blur(22px)!important;
    -webkit-backdrop-filter:blur(22px)!important;
    box-shadow:0 20px 60px rgba(0,0,0,.58)!important;
    overflow:hidden!important;
  }

  body .mgym-html-config-page .mgym-config-local-nav a{
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    padding:5px 3px!important;
    border-radius:15px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:2px!important;
    font-size:0!important;
    line-height:1!important;
    text-align:center!important;
    overflow:hidden!important;
  }

  body .mgym-html-config-page .mgym-config-local-nav a span{
    display:block!important;
    font-size:16px!important;
    line-height:1!important;
  }

  body .mgym-html-config-page .mgym-config-local-nav a b{
    display:block!important;
    max-width:100%!important;
    font-size:8px!important;
    line-height:1.05!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* Todos los layouts principales pasan a una sola columna */
  body .mgym-html-config-page .grid,
  body .mgym-html-config-page .mgym-config-main-grid,
  body .mgym-html-config-page .mgym-config-summary-shell,
  body .mgym-html-config-page .mgym-config-silver-hero__inner,
  body .mgym-html-config-page .mgym-config-plan-carbon-block,
  body .mgym-html-config-page .mgym-clean-routine-grid,
  body .mgym-html-config-page .mgym-clean-calendar-layout,
  body .mgym-html-config-page .mgym-clean-calendar-layout--full,
  body .mgym-html-config-page .mgym-planning-register__grid,
  body .mgym-html-config-page .mgym-planning-register__head,
  body .mgym-html-config-page .mgym-v264af-grid,
  body .mgym-html-config-page .mgym-v264af-register,
  body .mgym-html-config-page .mgym-v264af-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  body .mgym-html-config-page .form.cols-3,
  body .mgym-html-config-page .cols-3,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__fields,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__info-boxes,
  body .mgym-html-config-page .mgym-config-summary-kpis,
  body .mgym-html-config-page .mgym-clean-linked-summary,
  body .mgym-html-config-page .mgym-clean-meso-summary,
  body .mgym-html-config-page .mgym-v264af-summary-grid,
  body .mgym-html-config-page .mgym-planning-summary-cards,
  body .mgym-html-config-page .mgym-planning-final-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }

  body .mgym-html-config-page .card,
  body .mgym-html-config-page .mgym-config-workspace,
  body .mgym-html-config-page .mgym-config-summary-wide,
  body .mgym-html-config-page .mgym-clean-card,
  body .mgym-html-config-page .mgym-config-silver-hero,
  body .mgym-html-config-page .mgym-config-plan-carbon-block,
  body .mgym-html-config-page #mgymPlanningRegister,
  body .mgym-html-config-page .mgym-final-planning-block,
  body .mgym-html-config-page .mgym-v264af-register{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }

  body .mgym-html-config-page .mgym-config-workspace,
  body .mgym-html-config-page .card,
  body .mgym-html-config-page .mgym-clean-card{
    padding-left:0!important;
    padding-right:0!important;
  }

  /* Ocultar imagen/decoración del segundo bloque solo en móvil */
  body .mgym-html-config-page .mgym-config-plan-carbon-block__media,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__image,
  body .mgym-html-config-page .mgym-plan-config-card__side img,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__media img,
  body .mgym-html-config-page .mgym-config-silver-hero__glow{
    display:none!important;
  }

  body .mgym-html-config-page .mgym-config-plan-carbon-block__main,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__fields,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__info-boxes,
  body .mgym-html-config-page .mgym-config-summary-kpis,
  body .mgym-html-config-page .mgym-clean-linked-summary,
  body .mgym-html-config-page .mgym-clean-meso-summary,
  body .mgym-html-config-page .mgym-plan-config-card__main{
    width:100%!important;
  }

  body .mgym-html-config-page input,
  body .mgym-html-config-page select,
  body .mgym-html-config-page textarea,
  body .mgym-html-config-page .field,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__field{
    width:100%!important;
    max-width:100%!important;
  }

  /* Títulos y cabeceras compactas */
  body .mgym-html-config-page .mgym-clean-head,
  body .mgym-html-config-page .mgym-clean-section-title,
  body .mgym-html-config-page .mgym-v264af-head,
  body .mgym-html-config-page .mgym-planning-register__head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
  }

  body .mgym-html-config-page h1,
  body .mgym-html-config-page .cardTitle,
  body .mgym-html-config-page .mgym-config-silver-hero__title,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__title{
    font-size:22px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }

  body .mgym-html-config-page h2,
  body .mgym-html-config-page .mgym-clean-head h2,
  body .mgym-html-config-page .mgym-clean-section-title h3{
    font-size:18px!important;
    line-height:1.12!important;
  }

  /* Chips/steps sin scroll lateral feo */
  body .mgym-html-config-page .mgym-config-flow-strip,
  body .mgym-html-config-page .mgym-clean-steps,
  body .mgym-html-config-page .mgym-clean-routine-selector,
  body .mgym-html-config-page .mgym-clean-calendar-legend{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    gap:8px!important;
    scrollbar-width:none!important;
  }
  body .mgym-html-config-page .mgym-config-flow-strip::-webkit-scrollbar,
  body .mgym-html-config-page .mgym-clean-steps::-webkit-scrollbar,
  body .mgym-html-config-page .mgym-clean-routine-selector::-webkit-scrollbar{
    display:none!important;
  }

  body .mgym-html-config-page .mgym-config-flow-card,
  body .mgym-html-config-page .mgym-clean-steps span{
    flex:0 0 auto!important;
    min-width:150px!important;
  }

  /* Mesociclos: carrusel de tarjetas grandes */
  body .mgym-html-config-page .mgym-clean-meso-rail{
    display:flex!important;
    grid-template-columns:none!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:10px!important;
    padding-bottom:2px!important;
    scrollbar-width:none!important;
  }
  body .mgym-html-config-page .mgym-clean-meso-rail::-webkit-scrollbar{display:none!important;}

  body .mgym-html-config-page .mgym-clean-meso-chip,
  body .mgym-html-config-page .mgym-meso-card{
    flex:0 0 88%!important;
    width:88%!important;
    min-width:88%!important;
    scroll-snap-align:start!important;
  }

  body .mgym-html-config-page .mgym-clean-micro-list,
  body .mgym-html-config-page .mgym-clean-meso-detail,
  body .mgym-html-config-page .mgym-clean-meso-panel{
    width:100%!important;
  }

  body .mgym-html-config-page .mgym-clean-days{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  /* Rutinas: flechas visibles + carrusel de 1 tarjeta */
  body .mgym-html-config-page .mgym-clean-routine-library,
  body .mgym-html-config-page .mgym-clean-routine-current{
    width:100%!important;
  }

  body .mgym-html-config-page .mgym-clean-routine-toolbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
  }

  body .mgym-html-config-page .mgym-clean-routine-actions,
  body .mgym-html-config-page .mgym-clean-actions{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    justify-content:flex-end!important;
  }

  body .mgym-html-config-page [data-mgym-routine-prev],
  body .mgym-html-config-page [data-mgym-routine-next],
  body .mgym-html-config-page .mgym-clean-routine-actions .btn,
  body .mgym-html-config-page .mgym-clean-actions .btn.ghost{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:16px!important;
    font-size:24px!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  body .mgym-html-config-page .mgym-clean-routine-list{
    display:flex!important;
    grid-template-columns:none!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:10px!important;
    padding-bottom:4px!important;
    scrollbar-width:none!important;
  }
  body .mgym-html-config-page .mgym-clean-routine-list::-webkit-scrollbar{display:none!important;}

  body .mgym-html-config-page .mgym-clean-routine-item{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    scroll-snap-align:start!important;
    padding:13px!important;
    border-radius:20px!important;
  }

  body .mgym-html-config-page .mgym-clean-routine-exercises-scroll{
    max-height:170px!important;
    overflow:auto!important;
    display:grid!important;
    gap:8px!important;
    padding-right:3px!important;
  }

  /* Calendario: compacto y sin romper ancho */
  body .mgym-html-config-page .mgym-clean-calendar-main,
  body .mgym-html-config-page .mgym-clean-calendar-summary{
    width:100%!important;
  }

  body .mgym-html-config-page .mgym-clean-calendar-nav{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    gap:8px!important;
    align-items:center!important;
  }

  body .mgym-html-config-page .mgym-clean-calendar-nav .btn{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    overflow:hidden!important;
    font-size:0!important;
    border-radius:16px!important;
  }
  body .mgym-html-config-page .mgym-clean-calendar-nav .btn:first-child::before{content:'‹';font-size:24px!important;}
  body .mgym-html-config-page .mgym-clean-calendar-nav .btn:last-child::before{content:'›';font-size:24px!important;}

  body .mgym-html-config-page .mgym-clean-calendar-title-wrap{
    min-height:44px!important;
    padding:6px 8px!important;
    justify-content:center!important;
    text-align:center!important;
    border-radius:16px!important;
    border:1px solid rgba(243,244,246,.10)!important;
    background:rgba(7,7,7,.20)!important;
  }
  body .mgym-html-config-page .mgym-clean-calendar-title{font-size:12px!important;line-height:1.15!important;}
  body .mgym-html-config-page .mgym-clean-calendar-title-wrap small{display:none!important;}

  body .mgym-html-config-page .mgym-clean-calendar-grid,
  body .mgym-html-config-page .mgym-clean-calendar-grid--full{
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:4px!important;
    width:100%!important;
  }

  body .mgym-html-config-page .mgym-clean-weekdays{
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:4px!important;
  }

  body .mgym-html-config-page .mgym-clean-weekdays span{
    font-size:8px!important;
    text-align:center!important;
    padding:0!important;
  }

  body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day,
  body .mgym-html-config-page .mgym-clean-day{
    min-height:54px!important;
    padding:4px!important;
    border-radius:10px!important;
  }
  body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day b,
  body .mgym-html-config-page .mgym-clean-day b{font-size:9px!important;line-height:1.1!important;}
  body .mgym-html-config-page .mgym-clean-day-pill{padding:2px 4px!important;font-size:7px!important;max-width:100%!important;}
  body .mgym-html-config-page .mgym-clean-calendar-grid--full .mgym-clean-day small,
  body .mgym-html-config-page .mgym-clean-day small{font-size:7px!important;line-height:1.1!important;}

  /* Final: tarjetas compactas y botones sin pegarse */
  body .mgym-html-config-page #mgymPlanningRegister,
  body .mgym-html-config-page .mgym-v264af-register{
    padding:14px!important;
    margin-top:12px!important;
  }

  body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-item__actions,
  body .mgym-html-config-page #mgymPlanningRegister .mgym-planning-actions,
  body .mgym-html-config-page .mgym-v264af-plan-actions,
  body .mgym-html-config-page .mgym-v264af-footer-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }

  body .mgym-html-config-page #mgymPlanningRegister .btn,
  body .mgym-html-config-page #mgymPlanningRegister button,
  body .mgym-html-config-page .mgym-v264af-register .btn,
  body .mgym-html-config-page .mgym-v264af-register button{
    min-height:34px!important;
    padding:7px 8px!important;
    font-size:10px!important;
    border-radius:12px!important;
    white-space:normal!important;
    line-height:1.15!important;
  }
}

@media screen and (max-width: 390px){
  body .mgym-html-config-page .form.cols-3,
  body .mgym-html-config-page .cols-3,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__fields,
  body .mgym-html-config-page .mgym-config-plan-carbon-block__info-boxes,
  body .mgym-html-config-page .mgym-config-summary-kpis,
  body .mgym-html-config-page .mgym-clean-linked-summary,
  body .mgym-html-config-page .mgym-clean-meso-summary,
  body .mgym-html-config-page .mgym-v264af-summary-grid,
  body .mgym-html-config-page .mgym-planning-summary-cards,
  body .mgym-html-config-page .mgym-planning-final-grid{
    grid-template-columns:1fr!important;
  }

  body .mgym-html-config-page .mgym-clean-meso-chip,
  body .mgym-html-config-page .mgym-meso-card{
    flex-basis:94%!important;
    width:94%!important;
    min-width:94%!important;
  }

  body .mgym-html-config-page .mgym-config-local-nav{
    gap:4px!important;
    padding:7px!important;
  }

  body .mgym-html-config-page .mgym-config-local-nav a b{
    font-size:7.5px!important;
  }
}


/* v264aj · Mesociclo unificado: config general como primera tarjeta + microciclos por flechas */
html body .mgym-html-config-page .mgym-v264ak-unified-slider{
  margin-top:14px!important;
}
html body .mgym-html-config-page .mgym-v264ak-inner-list{
  position:relative!important;
  min-height:0!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-card,
html body .mgym-html-config-page .mgym-v264u-config-card{
  display:none!important;
  border-radius:20px!important;
  border:1px solid rgba(243,244,246,.10)!important;
  background:linear-gradient(145deg,rgba(243,244,246,.055),rgba(7,7,7,.20))!important;
  padding:14px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.28)!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-card.is-active,
html body .mgym-html-config-page .mgym-v264u-config-card.is-active{
  display:block!important;
}
html body .mgym-html-config-page .mgym-v264u-config-card{
  background:
    radial-gradient(circle at 0 0,rgba(156,163,175,.16),transparent 38%),
    linear-gradient(145deg,rgba(243,244,246,.065),rgba(7,7,7,.22))!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  align-items:flex-start!important;
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-title{
  display:flex!important;
  gap:10px!important;
  align-items:center!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-title i{
  width:36px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  border-radius:14px!important;
  background:rgba(75,85,99,.32)!important;
  border:1px solid rgba(156,163,175,.18)!important;
  color:#F3F4F6!important;
  font-style:normal!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-title b{
  display:block!important;
  color:#F3F4F6!important;
  font-size:15px!important;
  line-height:1.15!important;
}
html body .mgym-html-config-page .mgym-v264u-inner-title small{
  display:block!important;
  color:#9CA3AF!important;
  font-size:11px!important;
  margin-top:3px!important;
}
html body .mgym-html-config-page .mgym-v264u-config-assigned{
  margin-bottom:12px!important;
}
html body .mgym-html-config-page .mgym-v264ak-inner-nav span[data-v264u-micro-counter]{
  min-height:40px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:rgba(75,85,99,.22)!important;
  border:1px solid rgba(156,163,175,.16)!important;
  color:#F3F4F6!important;
  font-weight:900!important;
}
html body .mgym-html-config-page .mgym-v264ak-inner-nav button:disabled{
  opacity:.38!important;
  cursor:not-allowed!important;
}
html body .mgym-html-config-page .mgym-v264u-meso-card > .mgym-v264u-meso-assigned,
html body .mgym-html-config-page .mgym-v264u-meso-card > .mgym-v264u-form-grid,
html body .mgym-html-config-page .mgym-v264u-meso-card > .mgym-v264u-meso-actions{
  display:none!important;
}
@media (max-width:768px){
  html body .mgym-html-config-page .mgym-v264u-config-card,
  html body .mgym-html-config-page .mgym-v264u-micro-card{
    min-height:unset!important;
  }
  html body .mgym-html-config-page .mgym-v264u-form-grid{
    grid-template-columns:1fr 1fr!important;
  }
  html body .mgym-html-config-page .mgym-v264u-form-grid .is-wide{
    grid-column:1/-1!important;
  }
}
@media (max-width:420px){
  html body .mgym-html-config-page .mgym-v264u-form-grid{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================================
   v264ak · Mesociclos 2 en 2 + tarjetas más anchas
   - No cambia la estructura interna: primera tarjeta = configuración general.
   - Flechas exteriores avanzan de 2 en 2 en escritorio.
   - En móvil/tablet estrecho se mantiene 1 tarjeta visible.
   ============================================================================ */
html body .mgym-html-config-page .mgym-v264u-meso-rail{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 24px) / 2)!important;
  gap:24px!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:2px 2px 16px!important;
  align-items:stretch!important;
}

html body .mgym-html-config-page .mgym-v264u-meso-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  scroll-snap-align:start!important;
  padding:26px!important;
  border-radius:30px!important;
}

html body .mgym-html-config-page .mgym-v264u-micros{
  padding:18px!important;
  border-radius:26px!important;
}

html body .mgym-html-config-page .mgym-v264u-inner-card,
html body .mgym-html-config-page .mgym-v264u-config-card,
html body .mgym-html-config-page .mgym-v264u-micro-card{
  padding:20px!important;
  border-radius:24px!important;
}

html body .mgym-html-config-page .mgym-v264u-form-grid{
  gap:14px!important;
}

html body .mgym-html-config-page .mgym-v264u-week-days{
  gap:10px!important;
}

html body .mgym-html-config-page .mgym-v264u-day-toggle{
  min-height:76px!important;
}

html body .mgym-html-config-page .mgym-v264ak-inner-nav{
  grid-template-columns:64px minmax(0,1fr) 64px!important;
  gap:14px!important;
}

html body .mgym-html-config-page .mgym-v264ak-inner-nav button{
  width:64px!important;
  height:64px!important;
  border-radius:24px!important;
  font-size:30px!important;
}

html body .mgym-html-config-page .mgym-v264ak-inner-nav span[data-v264u-micro-counter]{
  min-height:58px!important;
  font-size:15px!important;
}

@media (max-width: 900px){
  html body .mgym-html-config-page .mgym-v264u-meso-rail{
    grid-template-columns:1fr!important;
    grid-auto-columns:100%!important;
    gap:14px!important;
    overflow-x:hidden!important;
  }
  html body .mgym-html-config-page .mgym-v264u-meso-card{
    padding:18px!important;
    border-radius:24px!important;
  }
  html body .mgym-html-config-page .mgym-v264u-micros{
    padding:12px!important;
    border-radius:20px!important;
  }
  html body .mgym-html-config-page .mgym-v264u-inner-card,
  html body .mgym-html-config-page .mgym-v264u-config-card,
  html body .mgym-html-config-page .mgym-v264u-micro-card{
    padding:14px!important;
    border-radius:20px!important;
  }
  html body .mgym-html-config-page .mgym-v264ak-inner-nav{
    grid-template-columns:52px minmax(0,1fr) 52px!important;
    gap:10px!important;
  }
  html body .mgym-html-config-page .mgym-v264ak-inner-nav button{
    width:52px!important;
    height:52px!important;
    border-radius:18px!important;
    font-size:26px!important;
  }
}

/* =========================================================
   V264AN · SOLO CONFIGURACIÓN
   Cambio mínimo pedido: solo el div informativo del hero.
   Glass espejo gris espacial: brillante, opaco y texto legible.
   ========================================================= */
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 12% -18%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.56) 24%, transparent 54%),
    linear-gradient(135deg, rgba(255,255,255,.72) 0%, rgba(228,228,229,.58) 36%, rgba(156,163,175,.42) 68%, rgba(75,85,99,.34) 100%)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -18px 42px rgba(7,7,7,.16),
    0 16px 42px rgba(0,0,0,.34),
    0 0 0 1px rgba(75,85,99,.18)!important;
  backdrop-filter:blur(18px) saturate(138%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(138%)!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap::before{
  content:""!important;
  position:absolute!important;
  inset:-42% -18% auto -18%!important;
  height:86%!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.78) 43%, rgba(255,255,255,.32) 52%, transparent 68%)!important;
  transform:rotate(-4deg)!important;
  opacity:.72!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:linear-gradient(180deg, rgba(255,255,255,.30), rgba(255,255,255,.06) 42%, rgba(7,7,7,.08) 100%)!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap *,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message{
  color:#070707!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.42)!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message{
  font-weight:700!important;
  line-height:1.55!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-icon{
  color:#070707!important;
  background:rgba(255,255,255,.42)!important;
  border:1px solid rgba(7,7,7,.16)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.80),
    0 8px 18px rgba(7,7,7,.18)!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Ajuste pedido: más espejo, menos degradado y letras más grandes.
   Solo afecta al div informativo del hero.
   ========================================================= */
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    rgba(228,228,229,.78)!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(7,7,7,.10),
    inset 0 18px 34px rgba(255,255,255,.34),
    inset 0 -18px 32px rgba(75,85,99,.16),
    0 18px 46px rgba(0,0,0,.28),
    0 0 0 1px rgba(75,85,99,.16)!important;
  backdrop-filter:blur(20px) saturate(145%) contrast(108%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(145%) contrast(108%)!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:
    linear-gradient(105deg,
      transparent 0%,
      transparent 27%,
      rgba(255,255,255,.88) 42%,
      rgba(255,255,255,.46) 49%,
      transparent 63%,
      transparent 100%)!important;
  opacity:.78!important;
  transform:none!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap::after{
  content:""!important;
  position:absolute!important;
  inset:1px!important;
  z-index:-2!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    linear-gradient(180deg,
      rgba(255,255,255,.62) 0%,
      rgba(255,255,255,.18) 20%,
      rgba(228,228,229,.08) 58%,
      rgba(7,7,7,.08) 100%)!important;
  opacity:.92!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap *,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message{
  color:#050505!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.58)!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap p{
  font-size:15.5px!important;
  font-weight:800!important;
  line-height:1.58!important;
  letter-spacing:.005em!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-icon{
  color:#050505!important;
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(7,7,7,.12)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    inset 0 -1px 0 rgba(7,7,7,.10),
    0 10px 22px rgba(7,7,7,.16)!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Ajuste pedido: más glass, más espejo, menos degradado.
   Solo afecta al div informativo del hero.
   ========================================================= */
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:rgba(228,228,229,.58)!important;
  border:1px solid rgba(255,255,255,.92)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(7,7,7,.08),
    inset 0 22px 36px rgba(255,255,255,.44),
    inset 0 -16px 28px rgba(75,85,99,.10),
    0 18px 50px rgba(0,0,0,.30),
    0 0 0 1px rgba(255,255,255,.34)!important;
  backdrop-filter:blur(28px) saturate(170%) contrast(112%) brightness(112%)!important;
  -webkit-backdrop-filter:blur(28px) saturate(170%) contrast(112%) brightness(112%)!important;
}

/* banda espejo más limpia, menos degradado de color */
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap::before{
  content:""!important;
  position:absolute!important;
  inset:-55% -28% auto -28%!important;
  height:118%!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:
    linear-gradient(108deg,
      transparent 0%,
      transparent 34%,
      rgba(255,255,255,.98) 45%,
      rgba(255,255,255,.48) 52%,
      transparent 64%,
      transparent 100%)!important;
  opacity:.88!important;
  transform:rotate(-3deg)!important;
}

/* capa de cristal neutra, casi sin degradado */
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap::after{
  content:""!important;
  position:absolute!important;
  inset:1px!important;
  z-index:-2!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:rgba(255,255,255,.18)!important;
  opacity:1!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap *,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message{
  color:#030303!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.72)!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message,
html body .mgym-html-config-page .mgym-config-silver-hero__message-wrap p{
  font-size:16.5px!important;
  font-weight:850!important;
  line-height:1.6!important;
  letter-spacing:.004em!important;
}

html body .mgym-html-config-page .mgym-config-silver-hero__message-icon{
  color:#030303!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(255,255,255,.85)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(7,7,7,.09),
    0 10px 24px rgba(7,7,7,.17)!important;
  backdrop-filter:blur(16px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(155%)!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección visual:
   - El glass espejo va SOLO detrás, en el padre del bloque.
   - Los 2 divs internos recuperan su color oscuro original.
   - El padre se ve en el fondo/marco/espacio entre ambos divs.
   ========================================================= */

/* Fondo padre visible detrás de los dos bloques */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:rgba(228,228,229,.52)!important;
  border:1px solid rgba(255,255,255,.66)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    inset 0 -1px 0 rgba(7,7,7,.08),
    inset 0 26px 54px rgba(255,255,255,.22),
    inset 0 -22px 42px rgba(75,85,99,.10),
    0 24px 62px rgba(0,0,0,.36),
    0 0 0 1px rgba(255,255,255,.16)!important;
  backdrop-filter:blur(28px) saturate(170%) contrast(112%) brightness(112%)!important;
  -webkit-backdrop-filter:blur(28px) saturate(170%) contrast(112%) brightness(112%)!important;
}

/* Reflejo espejo del padre */
html body .mgym-html-config-page #mgymConfigSilverHero::before{
  content:""!important;
  position:absolute!important;
  inset:-62% -22% auto -22%!important;
  height:126%!important;
  z-index:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(108deg,
      transparent 0%,
      transparent 35%,
      rgba(255,255,255,.82) 45%,
      rgba(255,255,255,.24) 54%,
      transparent 67%,
      transparent 100%)!important;
  opacity:.72!important;
  transform:rotate(-3deg)!important;
}

/* Capa glass del padre, detrás de los hijos */
html body .mgym-html-config-page #mgymConfigSilverHero::after{
  content:""!important;
  position:absolute!important;
  inset:1px!important;
  z-index:0!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    linear-gradient(180deg,
      rgba(255,255,255,.20),
      rgba(255,255,255,.05) 42%,
      rgba(7,7,7,.05) 100%)!important;
}

/* El wrapper NO debe ponerse gris: deja ver el fondo padre solo por detrás */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__inner{
  position:relative!important;
  z-index:1!important;
  background:transparent!important;
}

/* Apaga el glow antiguo para que no tape el glass del padre */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__glow{
  opacity:.12!important;
}

/* Los 2 divs internos vuelven a su color oscuro original */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  position:relative!important;
  z-index:2!important;
  background:
    linear-gradient(145deg, rgba(25,25,25,.96), rgba(7,7,7,.88))!important;
  border:1px solid rgba(156,163,175,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.08),
    0 18px 44px rgba(0,0,0,.28)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Texto dentro de los 2 divs como estaba: claro sobre fondo oscuro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console *{
  color:#F3F4F6!important;
  text-shadow:none!important;
}

/* Textos secundarios dentro del hero */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content .muted,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console .muted,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content p,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console p{
  color:#CBD5E1!important;
}

/* Los botones/pills del bloque derecho se quedan oscuros como antes */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  background:rgba(31,34,40,.92)!important;
  border:1px solid rgba(156,163,175,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.08),
    0 10px 24px rgba(0,0,0,.18)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* El aviso queda por encima y mantiene el estilo anterior de v264bs */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap{
  position:relative!important;
  z-index:3!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección:
   - Los elementos con fondo gris espacial llevan texto negro.
   - Las 4 tarjetitas bajan debajo del bloque/parrafo PAR-Q.
   - Las 4 tarjetitas usan el mismo glass gris espacial del div pequeño.
   ========================================================= */

/* El aviso gris pequeño debe leer en negro aunque el panel izquierdo sea oscuro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap p,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap .mgym-config-silver-hero__message{
  color:#050505!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.62)!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-icon{
  color:#050505!important;
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(7,7,7,.12)!important;
}

/* Reordenar el panel derecho:
   primero PAR-Q, después las 4 tarjetas */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
}

/* PAR-Q con el mismo lenguaje gris espacial/glass y texto negro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  background:
    rgba(228,228,229,.72)!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(7,7,7,.08),
    inset 0 18px 32px rgba(255,255,255,.24),
    0 14px 34px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(20px) saturate(150%) contrast(108%) brightness(108%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(150%) contrast(108%) brightness(108%)!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status p,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status b{
  color:#050505!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.58)!important;
}

/* Botón Revisar PAR-Q visible sobre gris */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status .btn,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status a{
  color:#050505!important;
  background:rgba(255,255,255,.34)!important;
  border:1px solid rgba(7,7,7,.18)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 8px 18px rgba(7,7,7,.12)!important;
}

/* Las 4 tarjetitas: mismo diseño glass gris espacial del div pequeño */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:0!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  min-height:88px!important;
  padding:14px 12px!important;
  border-radius:18px!important;
  background:
    rgba(228,228,229,.72)!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(7,7,7,.08),
    inset 0 18px 32px rgba(255,255,255,.22),
    0 14px 34px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(20px) saturate(150%) contrast(108%) brightness(108%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(150%) contrast(108%) brightness(108%)!important;
}

/* Texto negro en las 4 tarjetitas */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span b,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span small,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span i{
  color:#050505!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.58)!important;
}

/* Si los iconos internos existieran, que no metan azul ni gris oscuro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span i{
  background:rgba(255,255,255,.38)!important;
  border-color:rgba(7,7,7,.10)!important;
}

/* Responsive: en tablet/móvil se apilan mejor */
@media (max-width:900px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:520px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Pedido:
   - Bajar más las 4 tarjetitas del panel derecho.
   - El div PAR-Q debe tener fondo #171717.
   ========================================================= */

/* PAR-Q oscuro #171717 */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
  background:#171717!important;
  border:1px solid rgba(156,163,175,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 14px 34px rgba(0,0,0,.26)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Texto del PAR-Q claro porque el fondo ahora es oscuro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status p,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status b{
  color:#F3F4F6!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* Botón Revisar PAR-Q visible sobre fondo oscuro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status .btn,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status a{
  color:#F3F4F6!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(56,221,248,.28)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 8px 18px rgba(0,0,0,.18)!important;
}

/* Bajar las 4 tarjetitas: más separación respecto al PAR-Q */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
  margin-top:34px!important;
  align-self:stretch!important;
}

/* Mantener las 4 tarjetitas en gris espacial glass con texto negro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:rgba(228,228,229,.72)!important;
  border:1px solid rgba(255,255,255,.78)!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span b{
  color:#050505!important;
  text-shadow:0 1px 0 rgba(255,255,255,.58)!important;
}

/* En desktop, empujar visualmente las tarjetas hacia la zona baja del panel derecho */
@media (min-width:901px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    justify-content:flex-start!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:42px!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección visual:
   - Baja todos los bloques del panel derecho.
   - Alinea las 4 tarjetitas con el div/aviso gris del panel izquierdo.
   - Mantiene PAR-Q con fondo #171717.
   ========================================================= */

/* Panel derecho: empuja todo el contenido hacia abajo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding-top:26px!important;
}

/* PAR-Q sigue arriba, pero más bajo dentro del panel */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
  margin-top:0!important;
  background:#171717!important;
}

/* Las 4 tarjetitas bajan para quedar alineadas visualmente con el div gris del panel izquierdo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
  margin-top:68px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-self:stretch!important;
}

/* Ajuste fino para pantallas grandes: mantiene la alineación con el aviso izquierdo */
@media (min-width:1100px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:28px!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:72px!important;
  }
}

/* Evita que otros overrides anteriores vuelvan a subir las tarjetas */
@media (min-width:901px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    justify-content:flex-start!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:72px!important;
  }
}

/* Tablet/móvil: menos separación para no crear hueco muerto */
@media (max-width:900px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:14px!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:24px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:520px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección visual:
   - Las 4 tarjetitas del panel derecho bajan más.
   - Quedan alineadas visualmente con el div gris del panel izquierdo.
   - PAR-Q mantiene fondo #171717.
   ========================================================= */

/* Mantener PAR-Q arriba con su fondo oscuro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
  margin-top:0!important;
  background:#171717!important;
}

/* Alineación real con el div gris del panel izquierdo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
  margin-top:124px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-self:stretch!important;
}

/* Desktop ancho: ajuste fino para que el grupo baje a la línea visual del aviso izquierdo */
@media (min-width:1100px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:28px!important;
    justify-content:flex-start!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:132px!important;
  }
}

/* Desktop medio */
@media (min-width:901px) and (max-width:1099px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:104px!important;
  }
}

/* Tablet/móvil: se reduce para no crear hueco muerto */
@media (max-width:900px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:28px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:520px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección visual:
   - Baja mucho más las 4 tarjetitas del panel derecho.
   - Las alinea con el div gris/aviso del panel izquierdo.
   - PAR-Q mantiene fondo #171717.
   ========================================================= */

/* PAR-Q se mantiene arriba */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
  margin-top:0!important;
  background:#171717!important;
}

/* Las 4 tarjetitas bajan hasta la línea del div gris izquierdo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
  margin-top:190px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-self:stretch!important;
}

/* Desktop ancho: más bajo para alinear con el aviso grande del panel izquierdo */
@media (min-width:1100px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:28px!important;
    justify-content:flex-start!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:205px!important;
  }
}

/* Desktop medio */
@media (min-width:901px) and (max-width:1099px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:160px!important;
  }
}

/* Tablet/móvil: evitar hueco muerto */
@media (max-width:900px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:28px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:520px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección visual:
   - Baja también el bloque PAR-Q hacia la mitad del div derecho.
   - Las 4 tarjetitas quedan debajo, alineadas con el div gris izquierdo.
   - PAR-Q mantiene fondo #171717.
   ========================================================= */

/* Panel derecho: todo baja, PAR-Q queda hacia la mitad */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding-top:112px!important;
}

/* PAR-Q a media altura del div derecho */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
  margin-top:0!important;
  background:#171717!important;
}

/* Las 4 tarjetitas bajan debajo del PAR-Q y quedan alineadas con el aviso izquierdo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
  margin-top:96px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-self:stretch!important;
}

/* Desktop ancho: ajuste fino */
@media (min-width:1100px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:118px!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:104px!important;
  }
}

/* Desktop medio */
@media (min-width:901px) and (max-width:1099px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:92px!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:76px!important;
  }
}

/* Tablet/móvil: evita hueco muerto */
@media (max-width:900px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:18px!important;
  }

  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:28px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:520px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Recupera el diseño correcto del hero:
   - Padre exterior visible con fondo metalizado / gris espacial.
   - Borde redondeado premium como en la captura buena.
   - Dos divs internos oscuros flotando encima.
   - NO se deja transparente el padre.
   - NO se toca JS, rutinas, mesociclos ni calendario.
   ========================================================= */

/* Padre exterior metalizado visible */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:30px!important;

  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;

  border:1px solid rgba(255,255,255,.68)!important;
  outline:1px solid rgba(7,7,7,.18)!important;
  outline-offset:-2px!important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    inset 0 -1px 0 rgba(7,7,7,.16),
    inset 18px 0 34px rgba(255,255,255,.18),
    inset -18px 0 36px rgba(7,7,7,.16),
    0 24px 62px rgba(0,0,0,.34)!important;

  backdrop-filter:blur(18px) saturate(145%) contrast(108%) brightness(108%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) contrast(108%) brightness(108%)!important;

  clip-path:none!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  transform:none!important;
}

/* Sin pseudo-elementos agresivos: evita picos/líneas raras */
html body .mgym-html-config-page #mgymConfigSilverHero::before,
html body .mgym-html-config-page #mgymConfigSilverHero::after,
html body #mgymConfigSilverHero.mgym-config-silver-hero::before,
html body #mgymConfigSilverHero.mgym-config-silver-hero::after,
html body #mgymConfigSilverHero.mgym-config-carbon-hero::before,
html body #mgymConfigSilverHero.mgym-config-carbon-hero::after,
html body article#mgymConfigSilverHero.card::before,
html body article#mgymConfigSilverHero.card::after{
  display:none!important;
  content:none!important;
}

/* El wrapper solo organiza los dos bloques, dejando ver el metalizado del padre */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__inner{
  position:relative!important;
  z-index:1!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

/* Apaga glows que puedan ensuciar el borde metalizado */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__glow{
  display:none!important;
  opacity:0!important;
}

/* Los dos divs internos: oscuros, premium y flotantes */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  position:relative!important;
  z-index:2!important;
  overflow:hidden!important;
  border-radius:22px!important;

  background:
    radial-gradient(circle at 10% 0%, rgba(243,244,246,.06), transparent 32%),
    linear-gradient(145deg, rgba(25,25,25,.97), rgba(7,7,7,.90))!important;

  border:1px solid rgba(156,163,175,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.08),
    0 18px 44px rgba(0,0,0,.30)!important;

  clip-path:none!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}

/* Mantiene PAR-Q a media altura del div derecho */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding-top:112px!important;
}

/* PAR-Q oscuro #171717 */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status{
  order:1!important;
  margin-top:0!important;
  background:#171717!important;
  border:1px solid rgba(156,163,175,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 14px 34px rgba(0,0,0,.26)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Texto del PAR-Q claro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status p,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__status b{
  color:#F3F4F6!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* Las cuatro tarjetitas debajo del PAR-Q */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
  order:2!important;
  margin-top:96px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-self:stretch!important;
}

/* Tarjetitas gris espacial con texto negro */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(7,7,7,.08),
    0 14px 34px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%)!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span *,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span b{
  color:#050505!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.58)!important;
}

/* Responsive */
@media (min-width:1100px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:118px!important;
  }
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:104px!important;
  }
}

@media (min-width:901px) and (max-width:1099px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:92px!important;
  }
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:76px!important;
  }
}

@media (max-width:900px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
    padding-top:18px!important;
  }
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    margin-top:28px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:520px){
  html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Pedido:
   - Mantener visible SOLO el diseño bueno desde el borde gris metalizado hacia dentro.
   - Quitar/ocultar bordes, fondos, outlines y sombras de los contenedores exteriores.
   - NO tocar el diseño metalizado de #mgymConfigSilverHero.
   - NO tocar los dos divs internos, PAR-Q, tarjetitas ni JS.
   ========================================================= */

/* Padres exteriores: no deben pintar ningún borde/contraste visible */
html body #mgym-config-top,
html body .mgym-html-config-page,
html body .mgym-ent-page--configuracion,
html body .mgym-premium-aligned-page,
html body .mgym-html-config-page #configManualZone,
html body .mgym-html-config-page #configManualZone.configModeZone{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  border-bottom:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Pseudo-elementos de padres exteriores apagados */
html body #mgym-config-top::before,
html body #mgym-config-top::after,
html body .mgym-html-config-page::before,
html body .mgym-html-config-page::after,
html body .mgym-ent-page--configuracion::before,
html body .mgym-ent-page--configuracion::after,
html body .mgym-html-config-page #configManualZone::before,
html body .mgym-html-config-page #configManualZone::after{
  display:none!important;
  content:none!important;
  background:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Mantener estructura/espaciado sin pintar caja exterior */
html body .mgym-html-config-page #configManualZone{
  overflow:visible!important;
}

/* El article metalizado se mantiene como único borde visual del bloque */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:30px!important;

  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;

  border:1px solid rgba(255,255,255,.68)!important;
  outline:1px solid rgba(7,7,7,.18)!important;
  outline-offset:-2px!important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    inset 0 -1px 0 rgba(7,7,7,.16),
    inset 18px 0 34px rgba(255,255,255,.18),
    inset -18px 0 36px rgba(7,7,7,.16),
    0 24px 62px rgba(0,0,0,.34)!important;

  backdrop-filter:blur(18px) saturate(145%) contrast(108%) brightness(108%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) contrast(108%) brightness(108%)!important;
}

/* Si Blocksy/WordPress pinta un marco alrededor del contenido, se apaga solo en esta página */
html body:has(#mgymConfigSilverHero) :is(
  .entry-content,
  .wp-block-group,
  .ct-container,
  .ct-container-full,
  .ct-constrained-width,
  .site-main,
  #main-container
){
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección real:
   - El CSS anterior no se veía porque la web puede seguir cargando v264bk/v264bs.
   - Se fuerza #191919 en el interior visible de Configuración.
   - Mantiene el borde gris metalizado de #mgymConfigSilverHero.
   - No toca JS ni estructura.
   ========================================================= */

/* Fondo interior general: desde detrás del hero y hasta los bloques inferiores */
html body #mgym-config-top,
html body .mgym-html-config-page,
html body .mgym-ent-page--configuracion,
html body .mgym-premium-aligned-page,
html body .mgym-html-config-page #configManualZone,
html body .mgym-html-config-page .configModeZone{
  background:#191919!important;
  background-image:none!important;
}

/* El bloque metalizado bueno se conserva */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;
}

/* Los dos paneles negros dentro del hero */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  background:#191919!important;
  background-image:none!important;
}

/* Barra de pasos: todas las tarjetas al mismo #191919 */
html body .mgym-html-config-page .mgym-config-flow-strip,
html body .mgym-html-config-page .mgym-config-flow-card,
html body .mgym-html-config-page .mgym-config-flow-card:link,
html body .mgym-html-config-page .mgym-config-flow-card:visited{
  background:#191919!important;
  background-image:none!important;
}

/* Bloques grandes debajo: mismo fondo interior #191919 */
html body .mgym-html-config-page .mgym-plan-config-card,
html body .mgym-html-config-page .mgym-config-plan-carbon-block,
html body .mgym-html-config-page .mgym-config-workspace,
html body .mgym-html-config-page #mgymPlanConfigCard,
html body .mgym-html-config-page #mgymTrainingLogicBlock,
html body .mgym-html-config-page #mgymConfigCleanPlanner,
html body .mgym-html-config-page #mgymRoutineAssignmentBlock,
html body .mgym-html-config-page #mgymPlanningRegister,
html body .mgym-html-config-page .mgym-config-summary-wide,
html body .mgym-html-config-page .mgym-config-clean-planner,
html body .mgym-html-config-page .mgym-final-planning-block,
html body .mgym-html-config-page .mgym-planning-card,
html body .mgym-html-config-page .mgym-planning-summary-card{
  background:#191919!important;
  background-image:none!important;
}

/* Tarjetas internas del resto de la configuración */
html body .mgym-html-config-page .card:not(#mgymConfigSilverHero),
html body .mgym-html-config-page .soft,
html body .mgym-html-config-page .methodSubsection,
html body .mgym-html-config-page .chartCard,
html body .mgym-html-config-page .note,
html body .mgym-html-config-page .summaryBar,
html body .mgym-html-config-page .mgym-clean-card,
html body .mgym-html-config-page .mgym-clean-meso-chip,
html body .mgym-html-config-page .mgym-clean-meso-summary > div,
html body .mgym-html-config-page .mgym-clean-micro,
html body .mgym-html-config-page .mgym-clean-routine-current,
html body .mgym-html-config-page .mgym-clean-routine-library,
html body .mgym-html-config-page .mgym-clean-routine-item,
html body .mgym-html-config-page .mgym-clean-calendar-summary,
html body .mgym-html-config-page .mgym-clean-calendar-main,
html body .mgym-html-config-page .mgym-clean-day{
  background:#191919!important;
  background-image:none!important;
}

/* Inputs, selects y campos */
html body .mgym-html-config-page input,
html body .mgym-html-config-page select,
html body .mgym-html-config-page textarea,
html body .mgym-html-config-page .field,
html body .mgym-html-config-page .mgym-config-plan-carbon-block__field,
html body .mgym-html-config-page .mgym-config-plan-carbon-block__info-card{
  background:#191919!important;
  background-image:none!important;
}

/* Excepciones que deben seguir gris espejo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
  background-image:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.78),
      rgba(156,163,175,.72)
    )!important;
  background-image:
    linear-gradient(145deg,
      rgba(245,245,246,.78),
      rgba(156,163,175,.72)
    )!important;
}

/* Bordes suaves para que no parezcan de otro color */
html body .mgym-html-config-page .mgym-config-flow-card,
html body .mgym-html-config-page .mgym-plan-config-card,
html body .mgym-html-config-page .mgym-config-plan-carbon-block,
html body .mgym-html-config-page .card:not(#mgymConfigSilverHero),
html body .mgym-html-config-page .soft{
  border-color:rgba(156,163,175,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.06),
    0 18px 44px rgba(0,0,0,.26)!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección fina:
   - Algunos bloques internos seguían cogiendo #151515.
   - Se fuerza #191919 como fondo real interior.
   - Se neutralizan pseudo-elementos/fondos heredados que oscurecen.
   - Mantiene el borde gris metalizado bueno del hero.
   ========================================================= */

/* Variables base para que cualquier referencia interna use #191919 */
html body .mgym-html-config-page,
html body #mgym-config-top{
  --mg-panel-float:#191919!important;
  --mg-card-bg:#191919!important;
  --mg-card-bg-a:#191919!important;
  --mg-card-bg-b:#191919!important;
  --mg-surface:#191919!important;
  --mg-surface-strong:#191919!important;
  --mgym-card-bg:#191919!important;
}

/* Contenedores interiores que podían seguir viéndose #151515 */
html body .mgym-html-config-page :is(
  #configManualZone,
  .configModeZone,
  .mgym-config-flow-strip,
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-workspace,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-planning-summary-card,
  .mgym-clean-card,
  .mgym-clean-meso-chip,
  .mgym-clean-meso-summary > div,
  .mgym-clean-micro,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-routine-item,
  .mgym-clean-calendar-summary,
  .mgym-clean-calendar-main,
  .mgym-clean-day,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .soft,
  .card:not(#mgymConfigSilverHero)
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Los dos divs internos del hero, sin mezcla que los lleve a #151515 */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Campos y sub-bloques */
html body .mgym-html-config-page :is(
  input,
  select,
  textarea,
  .field,
  .mgym-config-plan-carbon-block__field,
  .mgym-config-plan-carbon-block__info-card,
  .mgym-config-silver-hero__status
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Apaga capas internas que puedan estar poniendo un overlay oscuro #151515 */
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card,
  .card:not(#mgymConfigSilverHero),
  .soft
)::before,
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card,
  .card:not(#mgymConfigSilverHero),
  .soft
)::after{
  background:transparent!important;
  background-image:none!important;
}

/* Bordes más sutiles para que no parezca otro tono */
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card,
  .card:not(#mgymConfigSilverHero),
  .soft
){
  border-color:rgba(156,163,175,.14)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.025),
    0 16px 34px rgba(0,0,0,.24)!important;
}

/* Excepciones: conservar el borde gris metalizado bueno del hero */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;
}

/* Excepciones: conservar aviso gris y 4 tarjetitas espejo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.78),
      rgba(156,163,175,.72)
    )!important;
  background-color:transparent!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
  background-color:transparent!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Ajuste confirmado:
   1) Fondo interior uniforme #191919.
   2) Botones/chips/resúmenes marcados en gris #A3A4A5.
   3) Mantener intacto el borde gris metalizado bueno del hero:
      #mgymConfigSilverHero
   ========================================================= */

/* 1) Fondo interior uniforme */
html body #mgym-config-top,
html body .mgym-html-config-page,
html body .mgym-ent-page--configuracion,
html body .mgym-premium-aligned-page,
html body .mgym-html-config-page #configManualZone,
html body .mgym-html-config-page .configModeZone,
html body .mgym-html-config-page .mgym-config-main-grid,
html body .mgym-html-config-page .grid.mgym-config-main-grid{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Bloques y tarjetas interiores */
html body .mgym-html-config-page :is(
  .mgym-config-flow-strip,
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-workspace,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-planning-summary-card,
  .mgym-clean-card,
  .mgym-clean-meso-chip,
  .mgym-clean-meso-summary > div,
  .mgym-clean-micro,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-routine-item,
  .mgym-clean-calendar-summary,
  .mgym-clean-calendar-main,
  .mgym-clean-day,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .soft,
  .card:not(#mgymConfigSilverHero)
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Inputs, selects y campos interiores */
html body .mgym-html-config-page :is(
  input,
  select,
  textarea,
  .field,
  .mgym-config-plan-carbon-block__field,
  .mgym-config-plan-carbon-block__info-card,
  .mgym-config-silver-hero__status
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Neutraliza overlays que oscurecían a #151515/#171717 */
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card,
  .card:not(#mgymConfigSilverHero),
  .soft,
  .field
)::before,
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card,
  .card:not(#mgymConfigSilverHero),
  .soft,
  .field
)::after{
  background:transparent!important;
  background-image:none!important;
}

/* 2) Botones/chips/resumen tipo:
   Macrociclos1, Mesociclos10, Microciclos42, Test cada 4 sem. */
html body .mgym-html-config-page :is(
  .mgym-config-plan-carbon-block button,
  .mgym-config-plan-carbon-block .chip,
  .mgym-config-plan-carbon-block .pill,
  .mgym-config-plan-carbon-block .badge,
  .mgym-config-plan-carbon-block .tag,
  .mgym-config-plan-carbon-block__chip,
  .mgym-config-plan-carbon-block__pill,
  .mgym-config-plan-carbon-block__badge,
  .mgym-config-plan-carbon-block__summary-chip,
  .mgym-config-summary-chip,
  .mgym-summary-chip,
  .mgym-pill,
  .mgym-chip,
  .pill,
  .chip,
  .badge
){
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  background-image:none!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.66)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -1px 0 rgba(7,7,7,.10),
    0 10px 24px rgba(0,0,0,.22)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.42)!important;
}

/* Por si esos 4 elementos son divs/spans sueltos dentro del bloque resumen */
html body .mgym-html-config-page .mgym-config-plan-carbon-block :is(
  div,
  span,
  li,
  a
)[class*="chip"],
html body .mgym-html-config-page .mgym-config-plan-carbon-block :is(
  div,
  span,
  li,
  a
)[class*="pill"],
html body .mgym-html-config-page .mgym-config-plan-carbon-block :is(
  div,
  span,
  li,
  a
)[class*="badge"],
html body .mgym-html-config-page .mgym-config-plan-carbon-block :is(
  div,
  span,
  li,
  a
)[class*="tag"],
html body .mgym-html-config-page .mgym-config-plan-carbon-block :is(
  div,
  span,
  li,
  a
)[class*="summary"]{
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  background-image:none!important;
  color:#050505!important;
}

/* Texto interior de chips gris */
html body .mgym-html-config-page :is(
  .mgym-config-plan-carbon-block button,
  .mgym-config-plan-carbon-block .chip,
  .mgym-config-plan-carbon-block .pill,
  .mgym-config-plan-carbon-block .badge,
  .mgym-config-plan-carbon-block .tag,
  .mgym-config-summary-chip,
  .mgym-summary-chip,
  .mgym-pill,
  .mgym-chip,
  .pill,
  .chip,
  .badge
) *{
  color:#050505!important;
  text-shadow:0 1px 0 rgba(255,255,255,.42)!important;
}

/* Mantener bordes suaves sobre #191919 */
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card,
  .card:not(#mgymConfigSilverHero),
  .soft
){
  border-color:rgba(156,163,175,.14)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.025),
    0 16px 34px rgba(0,0,0,.24)!important;
}

/* 3) EXCEPCIÓN: conservar el borde gris metalizado bueno del hero */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;
}

/* EXCEPCIÓN: conservar aviso gris y 4 tarjetitas espejo del hero */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.78),
      rgba(156,163,175,.72)
    )!important;
  background-color:transparent!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
  background-color:transparent!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección de paleta:
   - NO convertir labels/campos en gris.
   - Mantener bloques interiores en #191919.
   - Select options / chips KPI / micro botones en gris #A3A4A5 con texto negro.
   - Mesociclos/botones de meso con fondo #191919 y estados visibles.
   - Si cambia estado: verde configurado/seleccionado, cian activo.
   - Mantener intacto el borde gris metalizado bueno de #mgymConfigSilverHero.
   ========================================================= */

/* Base visual interior */
html body #mgym-config-top,
html body .mgym-html-config-page,
html body .mgym-ent-page--configuracion,
html body .mgym-premium-aligned-page,
html body .mgym-html-config-page #configManualZone,
html body .mgym-html-config-page .configModeZone,
html body .mgym-html-config-page .mgym-config-main-grid,
html body .mgym-html-config-page .grid.mgym-config-main-grid{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Los bloques normales NO son gris: se quedan #191919 */
html body .mgym-html-config-page :is(
  .mgym-config-flow-strip,
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-workspace,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-planning-summary-card,
  .mgym-clean-card,
  .mgym-clean-meso-summary > div,
  .mgym-clean-micro,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-routine-item,
  .mgym-clean-calendar-summary,
  .mgym-clean-calendar-main,
  .mgym-clean-day,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .soft,
  .card:not(#mgymConfigSilverHero)
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Campos/labels: fondo #191919, NO gris */
html body .mgym-html-config-page :is(
  .field,
  .mgym-config-plan-carbon-block__field,
  .mgym-config-plan-carbon-block__info-card,
  input,
  select,
  textarea
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  color:#F3F4F6!important;
}

/* Los labels de los campos se mantienen como texto técnico, no como botón gris */
html body .mgym-html-config-page :is(.field, .mgym-config-plan-carbon-block__field) > span,
html body .mgym-html-config-page :is(.label, small){
  color:#9CA3AF!important;
}

/* Options nativas del select: gris espejo y texto negro */
html body .mgym-html-config-page select option,
html body .mgym-html-config-page select optgroup{
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  color:#050505!important;
}

/* Select abierto/seleccionado: mantiene caja oscura, opciones grises */
html body .mgym-html-config-page select:focus{
  border-color:rgba(163,164,165,.55)!important;
  box-shadow:0 0 0 3px rgba(163,164,165,.12)!important;
}

/* KPIs del resumen superior: estos SÍ van en gris #A3A4A5 */
html body .mgym-html-config-page .mgym-config-summary-wide .kpi,
html body .mgym-html-config-page .mgym-config-summary-wide .pills > *,
html body .mgym-html-config-page #configPills > *{
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  background-image:none!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.62)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.70),
    inset 0 -1px 0 rgba(7,7,7,.10),
    0 12px 26px rgba(0,0,0,.20)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.38)!important;
}

html body .mgym-html-config-page .mgym-config-summary-wide .kpi *,
html body .mgym-html-config-page .mgym-config-summary-wide .pills > * *,
html body .mgym-html-config-page #configPills > * *{
  color:#050505!important;
  text-shadow:0 1px 0 rgba(255,255,255,.38)!important;
}

/* Botones principales NO se vuelven grises */
html body .mgym-html-config-page :is(
  .btn.primary,
  .btn.success,
  #saveConfigBtn,
  #mgymCleanSaveAssignments,
  .mgym-config-plan-carbon-block__save
){
  background:linear-gradient(135deg,#38dff0,#1f9eb1)!important;
  color:#050505!important;
  border:1px solid rgba(103,232,249,.55)!important;
}

/* Reset/ghost conservan look oscuro salvo flechas pequeñas */
html body .mgym-html-config-page .btn.ghost:not([data-mgym-clean-prev]):not([data-mgym-clean-next]):not([data-mgym-routine-prev]):not([data-mgym-routine-next]){
  background:#191919!important;
  color:#F3F4F6!important;
  border:1px solid rgba(163,164,165,.26)!important;
}

/* Flechas de carrusel: gris espejo */
html body .mgym-html-config-page :is(
  .btn.ghost[data-mgym-clean-prev],
  .btn.ghost[data-mgym-clean-next],
  .btn.ghost[data-mgym-routine-prev],
  .btn.ghost[data-mgym-routine-next]
){
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  background-image:none!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.66)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.74),
    0 10px 22px rgba(0,0,0,.22)!important;
}

/* Selector múltiple de mesociclos: contenedor y números */
html body .mgym-html-config-page .mgym-clean-meso-selector{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  border:1px solid rgba(163,164,165,.18)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.035),
    0 16px 34px rgba(0,0,0,.22)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-selector__head em{
  background:#191919!important;
  color:#F3F4F6!important;
  border:1px solid rgba(163,164,165,.22)!important;
}

/* Botones de mesociclos: fondo #191919 por defecto */
html body .mgym-html-config-page .mgym-clean-meso-number{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  color:#F3F4F6!important;
  border:1px solid rgba(163,164,165,.34)!important;
  box-shadow:
    inset 0 1px 0 rgba(243,244,246,.035),
    0 8px 18px rgba(0,0,0,.22)!important;
}

/* Estado seleccionado/asignado: cambia de color */
html body .mgym-html-config-page .mgym-clean-meso-number.is-selected{
  background:rgba(34,197,94,.16)!important;
  background-image:none!important;
  color:#F3F4F6!important;
  border-color:rgba(34,197,94,.62)!important;
  box-shadow:
    0 0 0 3px rgba(34,197,94,.10),
    inset 0 1px 0 rgba(255,255,255,.08)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-number.is-active{
  outline:2px solid rgba(103,232,249,.36)!important;
  outline-offset:2px!important;
}

/* Resumen lateral de mesociclos: fondo #191919; estados sí cambian */
html body .mgym-html-config-page .mgym-clean-meso-summary-row{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  border:1px solid rgba(163,164,165,.20)!important;
  color:#F3F4F6!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row i{
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.60)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row em{
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.52)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-configured em{
  background:rgba(34,197,94,.26)!important;
  color:#D8FFE5!important;
  border-color:rgba(34,197,94,.46)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-selected{
  background:rgba(34,197,94,.10)!important;
  border-color:rgba(34,197,94,.48)!important;
}

html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-active{
  outline:2px solid rgba(103,232,249,.34)!important;
  outline-offset:2px!important;
}

/* Microciclos: caja base #191919 */
html body .mgym-html-config-page .mgym-clean-micro{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  border:1px solid rgba(163,164,165,.18)!important;
}

/* Días/micro botones: gris #A3A4A5 por defecto, texto negro */
html body .mgym-html-config-page .mgym-clean-days span,
html body .mgym-html-config-page .mgym-clean-micro button,
html body .mgym-html-config-page .mgym-clean-micro [role="button"]{
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  background-image:none!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.62)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.70),
    inset 0 -1px 0 rgba(7,7,7,.10),
    0 10px 22px rgba(0,0,0,.20)!important;
}

html body .mgym-html-config-page .mgym-clean-days span *,
html body .mgym-html-config-page .mgym-clean-days small{
  color:#050505!important;
  text-shadow:0 1px 0 rgba(255,255,255,.38)!important;
}

/* Micro/día con estado: cambia de color si se marca/activa/completa */
html body .mgym-html-config-page .mgym-clean-days span:is(.is-active,.is-selected,[aria-selected="true"],[aria-pressed="true"]),
html body .mgym-html-config-page .mgym-clean-micro button:is(.is-active,.is-selected,[aria-selected="true"],[aria-pressed="true"]){
  background:rgba(34,197,94,.26)!important;
  color:#F3F4F6!important;
  border-color:rgba(34,197,94,.52)!important;
}

html body .mgym-html-config-page .mgym-clean-days span:is(.is-warning,.is-deload,.is-descarga),
html body .mgym-html-config-page .mgym-clean-micro button:is(.is-warning,.is-deload,.is-descarga){
  background:rgba(245,158,11,.26)!important;
  color:#FFF7ED!important;
  border-color:rgba(245,158,11,.50)!important;
}

/* Linked summary de Objetivo/Nivel/etc: NO gris, se queda #191919 */
html body .mgym-html-config-page .mgym-clean-linked-summary > div{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  color:#F3F4F6!important;
  border:1px solid rgba(163,164,165,.18)!important;
}

/* Mantener el borde gris metalizado bueno del hero */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;
}

/* Hero interno #191919 */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Excepciones del hero: aviso y 4 tarjetitas siguen espejo */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.78),
      rgba(156,163,175,.72)
    )!important;
  background-color:transparent!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
  background-color:transparent!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Corrección fina visual:
   - Reducir mezcla de tonos internos.
   - Eliminar efecto de doble borde en tarjetas/bloques anidados.
   - Fondo interior único #191919.
   - Mantener solo un borde suave por tarjeta principal.
   - Mantener intacto el hero metalizado #mgymConfigSilverHero.
   ========================================================= */

/* Fondo único general */
html body #mgym-config-top,
html body .mgym-html-config-page,
html body .mgym-ent-page--configuracion,
html body .mgym-premium-aligned-page,
html body .mgym-html-config-page #configManualZone,
html body .mgym-html-config-page .configModeZone,
html body .mgym-html-config-page .mgym-config-main-grid,
html body .mgym-html-config-page .grid.mgym-config-main-grid{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  border-color:transparent!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Todos los bloques interiores al mismo tono */
html body .mgym-html-config-page :is(
  .mgym-config-flow-strip,
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-workspace,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-planning-summary-card,
  .mgym-clean-card,
  .mgym-clean-meso-summary > div,
  .mgym-clean-micro,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-routine-item,
  .mgym-clean-calendar-summary,
  .mgym-clean-calendar-main,
  .mgym-clean-day,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .soft,
  .card:not(#mgymConfigSilverHero)
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Apagar overlays/radiales que crean parches de color */
html body .mgym-html-config-page :is(
  .mgym-config-flow-strip,
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-workspace,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-planning-summary-card,
  .mgym-clean-card,
  .mgym-clean-micro,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-routine-item,
  .mgym-clean-calendar-summary,
  .mgym-clean-calendar-main,
  .mgym-clean-day,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .soft,
  .card:not(#mgymConfigSilverHero)
)::before,
html body .mgym-html-config-page :is(
  .mgym-config-flow-strip,
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-workspace,
  .mgym-config-summary-wide,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-planning-summary-card,
  .mgym-clean-card,
  .mgym-clean-micro,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-routine-item,
  .mgym-clean-calendar-summary,
  .mgym-clean-calendar-main,
  .mgym-clean-day,
  .methodSubsection,
  .chartCard,
  .note,
  .summaryBar,
  .soft,
  .card:not(#mgymConfigSilverHero)
)::after{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Un solo borde suave en las tarjetas principales */
html body .mgym-html-config-page :is(
  .mgym-config-flow-card,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-planning-card,
  .mgym-clean-card,
  .mgym-clean-routine-current,
  .mgym-clean-routine-library,
  .mgym-clean-calendar-main,
  .card:not(#mgymConfigSilverHero)
){
  border:1px solid rgba(163,164,165,.16)!important;
  outline:0!important;
  box-shadow:
    0 14px 30px rgba(0,0,0,.22)!important;
}

/* Quitar doble borde en elementos anidados dentro de tarjetas */
html body .mgym-html-config-page :is(
  .card:not(#mgymConfigSilverHero),
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block,
  .mgym-config-clean-planner,
  .mgym-final-planning-block,
  .mgym-clean-card
) :is(
  .card,
  .soft,
  .field,
  .note,
  .summaryBar,
  .methodSubsection,
  .chartCard,
  .mgym-config-plan-carbon-block__field,
  .mgym-config-plan-carbon-block__info-card,
  .mgym-clean-meso-summary > div,
  .mgym-clean-micro,
  .mgym-clean-routine-item,
  .mgym-clean-day
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  border:1px solid rgba(163,164,165,.08)!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Inputs/selects: mismo fondo, borde mínimo para no crear doble marco */
html body .mgym-html-config-page :is(
  input,
  select,
  textarea,
  .field,
  .mgym-config-plan-carbon-block__field,
  .mgym-config-plan-carbon-block__info-card
){
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  color:#F3F4F6!important;
  border:1px solid rgba(163,164,165,.12)!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Reducir líneas internas de separadores */
html body .mgym-html-config-page :is(hr, .divider, .separator, .mgym-divider){
  border-color:rgba(163,164,165,.08)!important;
  background:rgba(163,164,165,.08)!important;
}

/* Botones/chips grises se mantienen, pero sin doble borde exagerado */
html body .mgym-html-config-page :is(
  .mgym-config-summary-wide .kpi,
  .mgym-config-summary-wide .pills > *,
  #configPills > *,
  .mgym-clean-days span,
  .mgym-clean-micro button,
  .mgym-clean-micro [role="button"]
){
  background:#A3A4A5!important;
  background-color:#A3A4A5!important;
  background-image:none!important;
  color:#050505!important;
  border:1px solid rgba(255,255,255,.42)!important;
  outline:0!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.42),
    0 8px 18px rgba(0,0,0,.16)!important;
}

/* Mesociclos: base #191919, borde sutil */
html body .mgym-html-config-page .mgym-clean-meso-number,
html body .mgym-html-config-page .mgym-clean-meso-summary-row{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
  color:#F3F4F6!important;
  border:1px solid rgba(163,164,165,.14)!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Estados visibles sin ensuciar la paleta */
html body .mgym-html-config-page .mgym-clean-meso-number.is-selected,
html body .mgym-html-config-page .mgym-clean-meso-summary-row.is-selected,
html body .mgym-html-config-page .mgym-clean-days span:is(.is-active,.is-selected,[aria-selected="true"],[aria-pressed="true"]),
html body .mgym-html-config-page .mgym-clean-micro button:is(.is-active,.is-selected,[aria-selected="true"],[aria-pressed="true"]){
  background:rgba(34,197,94,.18)!important;
  background-image:none!important;
  color:#F3F4F6!important;
  border-color:rgba(34,197,94,.46)!important;
  box-shadow:0 0 0 2px rgba(34,197,94,.08)!important;
}

/* Hero metalizado: se conserva */
html body .mgym-html-config-page #mgymConfigSilverHero,
html body #mgymConfigSilverHero.mgym-config-silver-hero,
html body #mgymConfigSilverHero.mgym-config-carbon-hero,
html body article#mgymConfigSilverHero.card{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.42), transparent 30%),
    linear-gradient(145deg,
      rgba(232,232,233,.72) 0%,
      rgba(166,168,170,.58) 38%,
      rgba(109,112,116,.48) 100%
    )!important;
  border:1px solid rgba(255,255,255,.68)!important;
  outline:1px solid rgba(7,7,7,.18)!important;
  outline-offset:-2px!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    inset 0 -1px 0 rgba(7,7,7,.16),
    inset 18px 0 34px rgba(255,255,255,.18),
    inset -18px 0 36px rgba(7,7,7,.16),
    0 24px 62px rgba(0,0,0,.34)!important;
}

/* Hero interno #191919 */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__content,
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__console{
  background:#191919!important;
  background-color:#191919!important;
  background-image:none!important;
}

/* Excepciones espejo del hero */
html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__message-wrap{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.78),
      rgba(156,163,175,.72)
    )!important;
  background-color:transparent!important;
}

html body .mgym-html-config-page #mgymConfigSilverHero .mgym-config-silver-hero__meta span{
  background:
    linear-gradient(145deg,
      rgba(245,245,246,.82),
      rgba(186,188,190,.72)
    )!important;
  background-color:transparent!important;
}


/* =========================================================
   V264BS · SOLO CONFIGURACIÓN
   Pedido:
   - Eliminar/ocultar el bloque:
     "RESUMEN · Qué se genera desde aquí"
   - Mantener el resto igual:
     hero metalizado, fondo #191919, chips #A3A4A5 y sin doble borde.
   ========================================================= */

/* Bloque superior de resumen informativo */
html body .mgym-html-config-page .mgym-config-summary-wide,
html body .mgym-html-config-page #mgymConfigSummaryWide,
html body .mgym-html-config-page [data-mgym-config-summary],
html body .mgym-html-config-page [aria-label="Resumen de configuración"]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* Si el bloque tenía separación posterior, se elimina el hueco */
html body .mgym-html-config-page .mgym-config-summary-wide + *,
html body .mgym-html-config-page #mgymConfigSummaryWide + *{
  margin-top:0!important;
}


/* =========================================================
   Bolque Planificación avanzada
   ========================================================= */
/* =========================================================
   MacroGym · Métodos · técnicas · progresión
   Base limpia Acero Space
   ========================================================= */

html body .mgym-html-config-page #mgymTrainingLogicBlock {
  --logic-bg: #191919;
  --logic-deep: #070707;
  --logic-steel: #4B5563;
  --logic-soft: #9CA3AF;
  --logic-text: #F3F4F6;
  --logic-muted: #C7CDD6;
  --logic-line: rgba(156, 163, 175, 0.18);
  --logic-radius: 34px;

  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;

  padding: 28px !important;
  margin-top: 56px !important;

  border-radius: var(--logic-radius) !important;
  border: 1px solid var(--logic-line) !important;

  background:
    radial-gradient(
      circle at 12% 0%,
      rgba(156, 163, 175, 0.10),
      transparent 34%
    ),
    linear-gradient(
      145deg,
      rgba(75, 85, 99, 0.42),
      rgba(25, 25, 25, 0.86) 48%,
      rgba(7, 7, 7, 0.88)
    ) !important;

  box-shadow:
    inset 0 1px 0 rgba(243, 244, 246, 0.08),
    0 24px 70px rgba(0, 0, 0, 0.34) !important;

  color: var(--logic-text) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock::before {
  content: "" !important;
  position: absolute !important;
  inset: 1px !important;
  z-index: -1 !important;
  pointer-events: none !important;

  border-radius: calc(var(--logic-radius) - 1px) !important;

  background:
    linear-gradient(
      120deg,
      rgba(243, 244, 246, 0.055),
      transparent 32%,
      transparent 72%,
      rgba(156, 163, 175, 0.035)
    ) !important;
}
/* =========================================================
   MacroGym · Planificación avanzada
   Métodos · técnicas · progresión · Ultra Premium Responsive
   ========================================================= 

html body .mgym-html-config-page #mgymTrainingLogicBlock {
  --logic-bg: #191919;
  --logic-deep: #070707;
  --logic-panel: rgba(31, 36, 42, 0.72);
  --logic-line: rgba(156, 163, 175, 0.18);
  --logic-text: #F3F4F6;
  --logic-muted: #C7CDD6;
  --logic-soft: #9CA3AF;
  --logic-radius: 34px;

  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  padding: 28px !important;
  margin-top: 28px !important;
  border-radius: var(--logic-radius) !important;
  border: 1px solid rgba(243, 244, 246, 0.12) !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.015) 34%, transparent 65%),
    radial-gradient(circle at 8% -10%, rgba(243, 244, 246, 0.15), transparent 34%),
    radial-gradient(circle at 96% 0%, rgba(156, 163, 175, 0.12), transparent 32%),
    linear-gradient(145deg, rgba(42, 47, 55, 0.84), rgba(17, 17, 17, 0.92) 58%, rgba(7, 7, 7, 0.88)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    inset 0 -1px 0 rgba(255, 255, 255, 0.035),
    0 34px 96px rgba(0, 0, 0, 0.46) !important;
  color: var(--logic-text) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock::before {
  content: "" !important;
  position: absolute !important;
  inset: 1px !important;
  z-index: -2 !important;
  border-radius: calc(var(--logic-radius) - 1px) !important;
  background:
    linear-gradient(120deg, rgba(255,255,255,0.075), transparent 23%, transparent 72%, rgba(255,255,255,0.035)),
    radial-gradient(circle at 4% 16%, rgba(243, 244, 246, 0.10), transparent 24%) !important;
  pointer-events: none !important;
}
*/

/* =========================================================
   FIX · separación debajo de Configura tu plan
   ========================================================= */

html body .mgym-html-config-page #mgymPlanConfigCard {
  margin-bottom: 56px !important;
  margin-block-end: 56px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock::after {
  content: "" !important;
  position: absolute !important;
  inset: auto -18% -34% 26% !important;
  height: 280px !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background: radial-gradient(ellipse at center, rgba(156, 163, 175, 0.16), transparent 62%) !important;
  filter: blur(4px) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock > * {
  position: relative !important;
  z-index: 1 !important;
   margin-top: 56px !important;
  margin-block-start: 56px !important;
}

/* Cabecera */

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 22px !important;
  align-items: start !important;
  margin-bottom: 26px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head__eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  color: var(--logic-soft) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head__eyebrow::before {
  content: "" !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: #F3F4F6 !important;
  box-shadow: 0 0 18px rgba(243, 244, 246, 0.55) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
  max-width: 940px !important;
  margin: 0 !important;
  color: var(--logic-text) !important;
  font-size: clamp(38px, 4.35vw, 68px) !important;
  line-height: 0.93 !important;
  letter-spacing: -0.068em !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .muted {
  max-width: 800px !important;
  margin: 15px 0 0 !important;
  color: var(--logic-muted) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-badge {
  display: inline-grid !important;
  grid-template-columns: auto 1fr !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 42px !important;
  padding: 10px 15px !important;
  border-radius: 999px !important;
  color: var(--logic-text) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(255,255,255,0.22), transparent 34%),
    linear-gradient(145deg, rgba(75, 85, 99, 0.42), rgba(7, 7, 7, 0.30)) !important;
  border: 1px solid rgba(243, 244, 246, 0.20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.12),
    0 14px 30px rgba(0,0,0,0.26) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-badge::before {
  content: "" !important;
  width: 9px !important;
  height: 9px !important;
  border-radius: 999px !important;
  background: #9CA3AF !important;
  box-shadow: 0 0 0 4px rgba(156,163,175,0.12) !important;
}

/* Layout principal */

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
  display: grid !important;
  grid-template-columns: 330px minmax(0, 1fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
  min-height: 640px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
  position: relative !important;
  width: 330px !important;
  min-width: 330px !important;
  max-width: 330px !important;
  min-height: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 30px !important;
  border: 1px solid rgba(243, 244, 246, 0.14) !important;
  background:
    radial-gradient(circle at 50% 14%, rgba(243,244,246,0.15), transparent 34%),
    linear-gradient(180deg, rgba(75, 85, 99, 0.24), rgba(7, 7, 7, 0.78)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.12),
    0 26px 60px rgba(0, 0, 0, 0.42) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media::before {
  content: "" !important;
  position: absolute !important;
  inset: 14px !important;
  z-index: 1 !important;
  border-radius: 24px !important;
  pointer-events: none !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  box-shadow: inset 0 0 46px rgba(255,255,255,0.035) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, transparent 0%, rgba(7,7,7,0.16) 48%, rgba(7,7,7,0.64) 100%),
    radial-gradient(circle at 50% 24%, transparent 20%, rgba(7,7,7,0.12) 78%) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 640px !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.015) !important;
  filter: contrast(1.05) saturate(0.94) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption {
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  z-index: 3 !important;
  display: grid !important;
  gap: 7px !important;
  padding: 16px 17px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(243,244,246,0.15) !important;
  background:
    linear-gradient(145deg, rgba(14,16,19,0.84), rgba(7,7,7,0.68)) !important;
  backdrop-filter: blur(18px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(130%) !important;
  box-shadow: 0 18px 36px rgba(0,0,0,0.34) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption strong {
  color: var(--logic-text) !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption span {
  color: var(--logic-muted) !important;
  font-size: 12px !important;
  line-height: 1.48 !important;
}

/* Panel derecho */

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__content {
  min-width: 0 !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls {
  position: relative !important;
  min-height: 100% !important;
  padding: 20px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(156, 163, 175, 0.16) !important;
  background:
    radial-gradient(circle at 12% -6%, rgba(243,244,246,0.08), transparent 32%),
    radial-gradient(circle at 100% 100%, rgba(156,163,175,0.07), transparent 32%),
    linear-gradient(145deg, rgba(31, 36, 42, 0.70), rgba(7,7,7,0.22)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.07),
    0 20px 44px rgba(0,0,0,0.24) !important;
  overflow: hidden !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls::before {
  content: "" !important;
  position: absolute !important;
  left: 20px !important;
  top: 0 !important;
  width: calc(100% - 40px) !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(243,244,246,0.35), transparent) !important;
  opacity: 0.8 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
  margin-bottom: 16px !important;
  padding: 16px 18px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(156, 163, 175, 0.14) !important;
  background:
    linear-gradient(145deg, rgba(75,85,99,0.22), rgba(7,7,7,0.22)) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head strong {
  display: block !important;
  color: var(--logic-text) !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  color: var(--logic-soft) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head span::before {
  content: "" !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 999px !important;
  background: #F3F4F6 !important;
  opacity: 0.75 !important;
}

/* Controles */

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .field {
  display: grid !important;
  gap: 9px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .field span {
  color: var(--logic-soft) !important;
  font-size: 10px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
  letter-spacing: 0.105em !important;
  text-transform: uppercase !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock :is(select, input) {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 50px !important;
  padding: 0 14px !important;
  border-radius: 17px !important;
  border: 1px solid rgba(156, 163, 175, 0.22) !important;
  background:
    linear-gradient(145deg, rgba(7,7,7,0.60), rgba(25,25,25,0.58)) !important;
  color: var(--logic-text) !important;
  font-size: 13px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 10px 22px rgba(0,0,0,0.18) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock :is(select, input):focus {
  outline: none !important;
  border-color: rgba(243, 244, 246, 0.36) !important;
  box-shadow:
    0 0 0 3px rgba(243, 244, 246, 0.055),
    inset 0 1px 0 rgba(255,255,255,0.10) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock option {
  background: #191919 !important;
  color: #F3F4F6 !important;
}

/* Resumen técnico interno */

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-config-summary {
  margin-top: 17px !important;
  padding: 16px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(156, 163, 175, 0.14) !important;
  background:
    linear-gradient(145deg, rgba(75,85,99,0.12), rgba(7,7,7,0.18)) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-bottom: 13px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow > * {
  min-height: 70px !important;
  display: grid !important;
  gap: 4px !important;
  align-content: center !important;
  padding: 12px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(156, 163, 175, 0.14) !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(243,244,246,0.08), transparent 32%),
    rgba(7,7,7,0.20) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock #techniqueUseCase {
  margin: 0 !important;
  max-width: none !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: var(--logic-muted) !important;
}

/* Tarjetas inferiores */

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-top: 20px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card {
  min-height: 136px !important;
  padding: 18px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(156,163,175,0.16) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(243,244,246,0.08), transparent 34%),
    linear-gradient(145deg, rgba(75,85,99,0.18), rgba(7,7,7,0.18)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card span {
  display: inline-flex !important;
  margin-bottom: 12px !important;
  color: var(--logic-soft) !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card h4 {
  margin: 0 0 8px !important;
  color: var(--logic-text) !important;
  font-size: 16px !important;
  letter-spacing: -0.03em !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card p {
  margin: 0 !important;
  color: var(--logic-muted) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* Responsive */

@media (max-width: 1440px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    grid-template-columns: 310px minmax(0, 1fr) !important;
    min-height: 620px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    width: 310px !important;
    min-width: 310px !important;
    max-width: 310px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    min-height: 620px !important;
  }
}

@media (max-width: 1180px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    padding: 22px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head {
    grid-template-columns: 1fr !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-badge {
    justify-self: start !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    grid-template-columns: 280px minmax(0, 1fr) !important;
    gap: 18px !important;
    min-height: 580px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    min-height: 580px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    padding: 20px !important;
    border-radius: 28px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
    max-width: 780px !important;
    font-size: clamp(34px, 7vw, 54px) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 460px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    height: 460px !important;
    min-height: 460px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls {
    min-height: auto !important;
  }
}

@media (max-width: 720px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    padding: 16px !important;
    border-radius: 24px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head {
    gap: 14px !important;
    margin-bottom: 18px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
    font-size: clamp(30px, 10vw, 42px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.055em !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .muted {
    font-size: 14px !important;
    line-height: 1.58 !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-badge {
    width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    gap: 14px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    min-height: 360px !important;
    border-radius: 22px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    height: 360px !important;
    min-height: 360px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    padding: 13px 14px !important;
    border-radius: 18px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls {
    padding: 14px !important;
    border-radius: 22px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head {
    grid-template-columns: 1fr !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head span {
    white-space: normal !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
    grid-template-columns: 1fr !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock :is(select, input) {
    min-height: 48px !important;
  }
}

@media (max-width: 420px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    padding: 12px !important;
    border-radius: 20px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
    font-size: 29px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .muted {
    font-size: 13px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    min-height: 320px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    height: 320px !important;
    min-height: 320px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption span {
    display: none !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card {
    padding: 12px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .field span {
    font-size: 9px !important;
  }
}

/* Responsive */
@media (max-width: 900px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-summary {
    grid-template-columns: 1fr !important;
  }
}


@media (max-width: 1280px){
  html body .mgym-html-config-page .mgym-training-logic-hero{
    grid-template-columns:minmax(280px,360px) minmax(0,1fr)!important;
  }
  html body .mgym-html-config-page .mgym-training-logic-hero__media{
    min-height:560px!important;
  }
}

@media (max-width: 1024px){
  html body .mgym-html-config-page .mgym-training-logic-hero{
    grid-template-columns:1fr!important;
  }
  html body .mgym-html-config-page .mgym-training-logic-hero__media{
    min-height:500px!important;
    max-height:620px!important;
  }
  html body .mgym-html-config-page .mgym-training-logic .cardHeader{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  html body .mgym-html-config-page .mgym-training-logic .summaryBar{
    grid-template-columns:1fr!important;
  }
}

@media (max-width: 640px){
  html body .mgym-html-config-page .mgym-training-logic-hero__media{
    min-height:380px!important;
    border-radius:22px!important;
  }
  html body .mgym-html-config-page .mgym-training-logic .cardHeader .cardTitle{
    font-size:32px!important;
  }
  html body .mgym-html-config-page .mgym-training-logic .cardHeader .muted{
    font-size:14px!important;
    line-height:1.65!important;
  }
}


/* =========================================================
   Bloque de Planificación avanzada Fix · mgym-ent-config-form sin borde exterior 
   ========================================================= */

/* =========================================================
   Fix · contenedor padre invisible
   #mgym-ent-config-form
   ========================================================= */

html body .mgym-html-config-page #mgym-ent-config-form {
  background: transparent !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;

  /* Aire interior para que los hijos no queden pegados */
  padding: 18px !important;

  /* Mantiene el padre como contenedor, pero sin pintar caja */
  display: block !important;
}

/* Quitar posibles líneas creadas por pseudo-elementos */
html body .mgym-html-config-page #mgym-ent-config-form::before,
html body .mgym-html-config-page #mgym-ent-config-form::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Separación entre hijos directos */
html body .mgym-html-config-page #mgym-ent-config-form > * + * {
  margin-top: 22px !important;
}

/* Evita que los hijos se salgan o se peguen raro */
html body .mgym-html-config-page #mgym-ent-config-form > * {
  max-width: 100% !important;
}

/* =========================================================
   Fix · quitar pico negro del contenedor de configuración
   ========================================================= */

html body .mgym-html-config-page #mgym-ent-config-form {
  position: relative !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Elimina picos/líneas generadas por pseudo-elementos */
html body .mgym-html-config-page #mgym-ent-config-form::before,
html body .mgym-html-config-page #mgym-ent-config-form::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Evita que hijos internos sobresalgan y creen esquinas negras */
html body .mgym-html-config-page #mgym-ent-config-form > * {
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
}
/* Refuerzo · limpiar esquinas de hijos directos */
html body .mgym-html-config-page #mgym-ent-config-form > *::before,
html body .mgym-html-config-page #mgym-ent-config-form > *::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* =========================================================
   FIX · Imagen full alto en #mgymPlanConfigCard
   ========================================================= */

/* El bloque padre debe estirar sus columnas */
html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

/* =========================================================
   FIX · Imagen centrada dentro del bloque Plan
   ========================================================= */

html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media {
  display: flex !important;
  align-items: center !important;      /* centra vertical */
  justify-content: center !important;  /* centra horizontal */

  width: 100% !important;
  height: 100% !important;
  min-height: 620px !important;

  padding: 32px !important;
  overflow: hidden !important;
  background: transparent !important;
}

html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media img {
  display: block !important;

  width: auto !important;
  height: auto !important;

  max-width: 88% !important;
  max-height: 88% !important;

  object-fit: contain !important;
  object-position: center center !important;

  margin: auto !important;
  transform: none !important;
}

/* Imagen full alto dentro del contenedor */
html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media img,
html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__image {
  display: block !important;

  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;

  object-fit: cover !important;
  object-position: center center !important;
}
/* =========================================================
   FIX · Imagen full alto dentro de #mgymPlanConfigCard
   ========================================================= */

/* 1. El contenedor principal debe permitir que sus hijos estiren */
html body .mgym-html-config-page #mgymPlanConfigCard {
  align-items: stretch !important;
  overflow: hidden !important;
}

/* 2. El bloque media es el div que tiene que ocupar el 100% del alto */
html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media {
  position: relative !important;

  display: block !important;
  align-self: stretch !important;

  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;

  overflow: hidden !important;
}

/* 3. La imagen ocupa el 100% del div media */
html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media img {
  display: block !important;

  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  padding-left: 16px !important;
padding-right: 16px !important;

  object-fit: cover !important;
  object-position: center center !important;
}
/* =========================================================
   MOBILE · ocultar imagen del bloque Configura tu plan
   ========================================================= */

@media (max-width: 900px) {
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }

  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media img {
    display: none !important;
  }
}
/* =========================================================
   MOBILE · margen lateral corregido en Configura tu plan
   ========================================================= */

@media (max-width: 900px) {

  /* Card principal con aire lateral */
  html body .mgym-html-config-page #mgymPlanConfigCard {
    padding-left: 16px !important;
    padding-right: 16px !important;
    overflow: hidden !important;
  }

  /* Bloque interno sin choque contra los bordes */
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    overflow: hidden !important;
  }

  /* Contenido del formulario con margen interno */
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__content,
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__body,
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__form {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    box-sizing: border-box !important;
  }

  /* Inputs/selects nunca deben tocar el borde */
  html body .mgym-html-config-page #mgymPlanConfigCard input,
  html body .mgym-html-config-page #mgymPlanConfigCard select,
  html body .mgym-html-config-page #mgymPlanConfigCard textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Botón sin pegarse al lateral */
  html body .mgym-html-config-page #mgymPlanConfigCard button,
  html body .mgym-html-config-page #mgymPlanConfigCard .btn {
    max-width: calc(100% - 8px) !important;
    margin-left: 4px !important;
    margin-right: 4px !important;
    box-sizing: border-box !important;
  }
}
/* =========================================================
   DESKTOP · Subir botón Guardar plan
   ========================================================= */

@media screen and (min-width: 1025px) {
  html body .mgym-html-config-page #mgymPlanConfigCard 
  .mgym-config-plan-carbon-block__media 
  .btn.success.mgym-plan-config-save.mgym-config-plan-carbon-block__save {
    margin-top: 0 !important;
    transform: translateY(-34px) !important;
  }
}

/* =========================================================
   DESKTOP FIX LIMPIO · #mgymPlanConfigCard
   Imagen derecha grande sin mover el botón
   ========================================================= */

@media screen and (min-width: 1025px) {

  html body .mgym-html-config-page #mgymPlanConfigCard {
    overflow: hidden !important;
  }

  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 440px) !important;
    gap: 32px !important;
    align-items: stretch !important;

    width: 100% !important;
    max-width: 100% !important;

    min-height: 620px !important;
    height: auto !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  /* Columna izquierda: formulario */
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__content,
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__body,
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__form {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Columna derecha: imagen */
  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media {
    position: relative !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    align-self: stretch !important;

    width: 100% !important;
    max-width: 440px !important;

    height: auto !important;
    min-height: 620px !important;
    max-height: none !important;

    padding: 30px 22px !important;
    margin: 0 !important;

    overflow: hidden !important;
    box-sizing: border-box !important;

    background: transparent !important;
  }

  html body .mgym-html-config-page #mgymPlanConfigCard .mgym-config-plan-carbon-block__media img {
    display: block !important;

    width: auto !important;
    height: 100% !important;

    max-width: 100% !important;
    max-height: 100% !important;

    object-fit: contain !important;
    object-position: center center !important;

    margin: auto !important;
    transform: none !important;
  }

  /* MUY IMPORTANTE:
     no movemos el botón desde CSS.
     Solo lo dejamos respirando donde esté en el HTML. */
  html body .mgym-html-config-page #mgymPlanConfigCard button,
  html body .mgym-html-config-page #mgymPlanConfigCard .btn {
    position: relative !important;
    z-index: 5 !important;
    margin-top: 8px !important;
  }
}
/* =========================================================
   DESKTOP · Imagen arriba + botón debajo
   Bloque: #mgymPlanConfigCard
   Clase real: .mgym-config-plan-carbon-block__media
   ========================================================= */

@media screen and (min-width: 1025px) {

  html body .mgym-html-config-page #mgymPlanConfigCard 
  .mgym-config-plan-carbon-block__media {
    display: flex !important;
    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: 440px !important;

    min-height: 620px !important;
    height: auto !important;

    padding: 28px 22px 34px !important;
    margin: 0 !important;

    overflow: hidden !important;
    box-sizing: border-box !important;

    background: transparent !important;
  }

  html body .mgym-html-config-page #mgymPlanConfigCard 
  .mgym-config-plan-carbon-block__media .mgym-config-plan-carbon-block__image {
    order: 1 !important;

    display: block !important;

     width: 72% !important;
    max-width: 72% !important;

    height: auto !important;
    max-height: 400px !important;

    object-fit: contain !important;
    object-position: center center !important;

    margin: 0 auto !important;
    transform: none !important;
  }

  html body .mgym-html-config-page #mgymPlanConfigCard 
  .mgym-config-plan-carbon-block__media .mgym-config-plan-carbon-block__save {
    order: 2 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    max-width: max-content !important;

    min-height: 48px !important;
    padding: 0 24px !important;

    margin: 24px auto 0 !important;

    position: relative !important;
    z-index: 5 !important;
  }
}
/* =========================================================
   MacroGym · Configuración · Mesociclos v270
   Diseño anterior corregido · responsive · aislado, bloque 3
   ========================================================= */

html body .mgym-meso-config-v270,
html body .mgym-meso-config-v270 * {
  box-sizing: border-box;
}

html body .mgym-meso-config-v270 {
  --meso-bg: #191919;
  --meso-deep: #070707;
  --meso-panel: rgba(31, 36, 42, 0.64);
  --meso-line: rgba(156, 163, 175, 0.16);
  --meso-line-soft: rgba(156, 163, 175, 0.10);
  --meso-line-strong: rgba(243, 244, 246, 0.12);

  --meso-text: #F3F4F6;
  --meso-muted: #A3A4A5;
  --meso-soft: #747678;

  --meso-cyan: #35D6E8;
  --meso-cyan-soft: rgba(53, 214, 232, 0.14);

  --meso-descarga: #CAA46A;
  --meso-descarga-soft: rgba(202, 164, 106, 0.14);

  --meso-error: #FF8B8B;
  --meso-error-soft: rgba(255, 139, 139, 0.08);
  --meso-error-text: #FFD0D0;

  width: 100%;
  max-width: 100%;
  position: relative;
  overflow: hidden;

  padding: 22px;
  border-radius: 30px;
  border: 1px solid var(--meso-line-strong);

  background:
    radial-gradient(circle at 8% 0%, rgba(243, 244, 246, 0.07), transparent 34%),
    linear-gradient(145deg, rgba(31, 36, 42, 0.64), rgba(7, 7, 7, 0.76));

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 26px 72px rgba(0, 0, 0, 0.34);

  color: var(--meso-text);
}

/* =========================================================
   Cabecera del bloque
   ========================================================= */

html body .mgym-meso-config-v270__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

html body .mgym-meso-config-v270__head .label {
  margin-bottom: 7px;
  color: var(--meso-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

html body .mgym-meso-config-v270__head h3 {
  margin: 0;
  color: var(--meso-text);
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1;
  letter-spacing: -0.05em;
}

html body .mgym-meso-config-v270__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

html body .mgym-meso-config-v270__actions .btn,
html body .mgym-meso-config-v270__actions button {
  min-width: 42px;
  min-height: 38px;
  border-radius: 999px;
  border: 1px solid rgba(243, 244, 246, 0.16);
  background: rgba(243, 244, 246, 0.06);
  color: var(--meso-text);
  font-weight: 900;
  line-height: 1;
}

/* =========================================================
   Estado vacío
   ========================================================= */

html body .mgym-meso-config-v270__empty {
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(156, 163, 175, 0.16);
  background: rgba(7, 7, 7, 0.28);
}

html body .mgym-meso-config-v270__empty strong {
  display: block;
  margin-bottom: 6px;
  color: var(--meso-text);
  font-size: 15px;
}

html body .mgym-meso-config-v270__empty p {
  margin: 0;
  color: var(--meso-muted);
  font-size: 13px;
  line-height: 1.45;
}

/* =========================================================
   Lista: solo 1 mesociclo visible
   ========================================================= */

html body .mgym-meso-config-v270__list {
  position: relative;
  display: block;
}

html body .mgym-meso-config-v270__card {
  display: none;
}

html body .mgym-meso-config-v270__card.is-active {
  display: block;
}

/* =========================================================
   Tarjeta principal del mesociclo
   ========================================================= */

html body .mgym-meso-config-v270__card {
  position: relative;
  overflow: hidden;

  padding: 16px;
  border-radius: 26px;
  border: 1px solid rgba(53, 214, 232, 0.62);

  background:
    radial-gradient(circle at 12% 0%, rgba(53, 214, 232, 0.16), transparent 38%),
    linear-gradient(145deg, rgba(20, 60, 68, 0.58), rgba(7, 7, 7, 0.58));

  box-shadow:
    0 0 0 1px rgba(53, 214, 232, 0.10),
    0 22px 52px rgba(0, 0, 0, 0.30);
}

html body .mgym-meso-config-v270__card--adaptacion {
  border-color: rgba(53, 214, 232, 0.62);
}

html body .mgym-meso-config-v270__card--descarga {
  border-color: rgba(202, 164, 106, 0.48);
  background:
    radial-gradient(circle at 12% 0%, rgba(202, 164, 106, 0.12), transparent 38%),
    linear-gradient(145deg, rgba(56, 46, 32, 0.50), rgba(7, 7, 7, 0.58));
}

/* =========================================================
   Cabecera de tarjeta
   ========================================================= */

html body .mgym-meso-config-v270__card-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}

html body .mgym-meso-config-v270__icon {
  width: 38px;
  height: 38px;

  display: grid;
  place-items: center;

  border-radius: 999px;
  border: 1px solid rgba(243, 244, 246, 0.14);
  background: rgba(156, 163, 175, 0.20);

  color: var(--meso-text);
  font-size: 14px;
  font-weight: 950;
}

html body .mgym-meso-config-v270__title {
  display: grid;
  gap: 2px;
  min-width: 0;
}

html body .mgym-meso-config-v270__title strong {
  color: var(--meso-text);
  font-size: 16px;
  line-height: 1.05;
}

html body .mgym-meso-config-v270__title small {
  color: var(--meso-muted);
  font-size: 11px;
  line-height: 1.25;
}

html body .mgym-meso-config-v270__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 28px;
  padding: 0 10px;

  border-radius: 999px;
  border: 1px solid rgba(53, 214, 232, 0.42);
  background: rgba(53, 214, 232, 0.14);

  color: #DFFBFF;
  font-size: 10px;
  font-weight: 900;
  white-space: nowrap;
}

html body .mgym-meso-config-v270__card--descarga .mgym-meso-config-v270__badge {
  border-color: rgba(202, 164, 106, 0.42);
  background: rgba(202, 164, 106, 0.14);
  color: #FFF0D7;
}

/* =========================================================
   Banda rutina del mesociclo
   ========================================================= */

html body .mgym-meso-config-v270__strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;

  min-height: 40px;
  padding: 0 12px;
  margin-bottom: 13px;

  border-radius: 16px;
  border: 1px solid rgba(53, 214, 232, 0.36);
  background: linear-gradient(145deg, rgba(53, 214, 232, 0.15), rgba(7, 7, 7, 0.20));
}

html body .mgym-meso-config-v270__card--descarga .mgym-meso-config-v270__strip {
  border-color: rgba(202, 164, 106, 0.30);
  background: linear-gradient(145deg, rgba(202, 164, 106, 0.10), rgba(7, 7, 7, 0.20));
}

html body .mgym-meso-config-v270__strip span {
  color: var(--meso-muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.10em;
  text-transform: uppercase;
}

html body .mgym-meso-config-v270__strip strong {
  color: var(--meso-text);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

/* =========================================================
   Info fija: Tipo / Objetivo / Método / Intensidad
   ========================================================= */

html body .mgym-meso-config-v270__info-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

html body .mgym-meso-config-v270__info-item {
  display: grid;
  gap: 7px;
  min-width: 0;
}

html body .mgym-meso-config-v270__info-item > span {
  color: #8F9296;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html body .mgym-meso-config-v270__info-value {
  min-height: 42px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;

  padding: 0 12px;

  border-radius: 12px;
  border: 1px solid rgba(156, 163, 175, 0.22);
  background:
    radial-gradient(circle at 10% 0%, rgba(243, 244, 246, 0.055), transparent 34%),
    rgba(7, 7, 7, 0.42);

  color: var(--meso-text);
  font-size: 12px;
  font-weight: 850;
}

html body .mgym-meso-config-v270__info-value small {
  color: var(--meso-soft);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* =========================================================
   Configuración técnica
   ========================================================= */

html body .mgym-meso-config-v270__tech {
  margin-top: 12px;
  padding: 13px;

  border-radius: 20px;
  border: 1px solid rgba(156, 163, 175, 0.16);

  background:
    radial-gradient(circle at 10% 0%, rgba(243, 244, 246, 0.06), transparent 34%),
    linear-gradient(145deg, rgba(7, 7, 7, 0.32), rgba(243, 244, 246, 0.035));
}

html body .mgym-meso-config-v270__tech-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

html body .mgym-meso-config-v270__tech-head strong {
  display: block;
  color: var(--meso-text);
  font-size: 14px;
  line-height: 1.1;
}

html body .mgym-meso-config-v270__tech-head small {
  display: block;
  margin-top: 4px;
  color: var(--meso-muted);
  font-size: 11px;
  line-height: 1.35;
}

html body .mgym-meso-config-v270__tech-status {
  display: inline-flex;
  align-items: center;

  min-height: 30px;
  padding: 0 10px;

  border-radius: 999px;
  border: 1px solid rgba(53, 214, 232, 0.42);
  background: rgba(53, 214, 232, 0.14);

  color: #DFFBFF;
  font-size: 10px;
  font-weight: 900;
  white-space: nowrap;
}

html body .mgym-meso-config-v270__message.is-error ~ .mgym-meso-config-v270__tech-status,
html body .mgym-meso-config-v270__tech-status.is-error {
  border-color: rgba(255, 139, 139, 0.34);
  background: rgba(255, 139, 139, 0.10);
  color: var(--meso-error-text);
}

html body .mgym-meso-config-v270__tech-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

html body .mgym-meso-config-v270__field {
  display: grid;
  gap: 7px;
  min-width: 0;
}

html body .mgym-meso-config-v270__field span {
  color: #8F9296;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
}

html body .mgym-meso-config-v270__field select,
html body .mgym-meso-config-v270__field input {
  width: 100%;
  min-height: 42px;

  border-radius: 12px;
  border: 1px solid rgba(156, 163, 175, 0.22);
  background: rgba(7, 7, 7, 0.42);

  color: var(--meso-text);
  padding: 0 12px;
  outline: none;
  font-size: 12px;
}

html body .mgym-meso-config-v270__field select:focus,
html body .mgym-meso-config-v270__field input:focus {
  border-color: rgba(53, 214, 232, 0.62);
  box-shadow: 0 0 0 3px rgba(53, 214, 232, 0.10);
}

html body .mgym-meso-config-v270__field input[readonly] {
  cursor: default;
  color: rgba(243, 244, 246, 0.82);
}

/* =========================================================
   Mensaje + botón guardar
   ========================================================= */

html body .mgym-meso-config-v270__message {
  grid-column: 1 / -1;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;

  min-height: 42px;
  padding: 10px 12px;

  border-radius: 14px;
  border: 1px solid rgba(243, 244, 246, 0.08);
  background: rgba(243, 244, 246, 0.04);
}

html body .mgym-meso-config-v270__message p {
  margin: 0;
  color: var(--meso-muted);
  font-size: 11px;
  line-height: 1.4;
}

html body .mgym-meso-config-v270__message.is-error {
  border-color: rgba(255, 139, 139, 0.28);
  background: var(--meso-error-soft);
}

html body .mgym-meso-config-v270__message.is-error p {
  color: var(--meso-error-text);
}

html body .mgym-meso-config-v270__save {
  min-height: 34px;
  padding: 0 14px;

  border-radius: 999px;
  border: 1px solid rgba(53, 214, 232, 0.42);
  background: rgba(53, 214, 232, 0.16);

  color: #DFFBFF;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;

  cursor: pointer;
}

html body .mgym-meso-config-v270__save:hover {
  background: rgba(53, 214, 232, 0.22);
}

html body .mgym-meso-config-v270__card--descarga .mgym-meso-config-v270__save {
  border-color: rgba(202, 164, 106, 0.42);
  background: rgba(202, 164, 106, 0.14);
  color: #FFF0D7;
}

html body .mgym-meso-config-v270__card--descarga .mgym-meso-config-v270__save:hover {
  background: rgba(202, 164, 106, 0.20);
}

/* =========================================================
   Microciclos
   ========================================================= */

html body .mgym-meso-config-v270__micro-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 14px 0 10px;
}

html body .mgym-meso-config-v270__micro-head strong {
  color: var(--meso-text);
  font-size: 14px;
}

html body .mgym-meso-config-v270__micro-head span {
  color: var(--meso-muted);
  font-size: 11px;
  font-weight: 800;
}

/* Balance de intensidades */
html body .mgym-meso-config-v270__balance {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

html body .mgym-meso-config-v270__balance-item {
  min-height: 36px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;

  padding: 0 10px;

  border-radius: 12px;
  border: 1px solid rgba(156, 163, 175, 0.14);
  background: rgba(7, 7, 7, 0.24);
}

html body .mgym-meso-config-v270__balance-item small {
  color: #8F9296;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html body .mgym-meso-config-v270__balance-item strong {
  color: var(--meso-text);
  font-size: 12px;
}

/* Lista de microciclos */
html body .mgym-meso-config-v270__micro-list {
  display: grid;
  gap: 8px;
}

html body .mgym-meso-config-v270__micro-row {
  display: grid;
  grid-template-columns: minmax(130px, 0.45fr) minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;

  padding: 10px;

  border-radius: 16px;
  border: 1px solid rgba(156, 163, 175, 0.14);
  background: rgba(7, 7, 7, 0.24);
}

html body .mgym-meso-config-v270__micro-row--adaptacion {
  border-color: rgba(53, 214, 232, 0.30);
}

html body .mgym-meso-config-v270__micro-row--descarga {
  border-color: rgba(202, 164, 106, 0.28);
}

html body .mgym-meso-config-v270__micro-title b {
  display: block;
  color: var(--meso-text);
  font-size: 12px;
}

html body .mgym-meso-config-v270__micro-title small {
  display: block;
  margin-top: 2px;
  color: var(--meso-muted);
  font-size: 10px;
}

/* Días: siempre lunes a domingo */
html body .mgym-meso-config-v270__days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 5px;
}

html body .mgym-meso-config-v270__days span {
  min-width: 0;
  min-height: 34px;

  display: grid;
  place-items: center;
  gap: 1px;

  padding: 4px 3px;

  border-radius: 10px;
  border: 1px solid rgba(156, 163, 175, 0.14);
  background: rgba(243, 244, 246, 0.045);

  color: var(--meso-text);
  font-size: 9px;
  font-weight: 900;
  line-height: 1.05;
}

html body .mgym-meso-config-v270__days span.is-active {
  border-color: rgba(53, 214, 232, 0.58);
  background: rgba(53, 214, 232, 0.15);
}

html body .mgym-meso-config-v270__card--descarga .mgym-meso-config-v270__days span.is-active {
  border-color: rgba(202, 164, 106, 0.50);
  background: rgba(202, 164, 106, 0.12);
}

html body .mgym-meso-config-v270__days small {
  color: var(--meso-muted);
  font-size: 7px;
}

html body .mgym-meso-config-v270__micro-row em {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 26px;
  padding: 0 9px;

  border-radius: 999px;
  border: 1px solid rgba(53, 214, 232, 0.36);
  background: rgba(53, 214, 232, 0.14);

  color: #DFFBFF;
  font-style: normal;
  font-size: 11px;
  font-weight: 900;
}

html body .mgym-meso-config-v270__card--descarga .mgym-meso-config-v270__micro-row em {
  border-color: rgba(202, 164, 106, 0.36);
  background: rgba(202, 164, 106, 0.12);
  color: #FFF0D7;
}

/* =========================================================
   Responsive · tablet
   ========================================================= */

@media (max-width: 1080px) {
  html body .mgym-meso-config-v270__info-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html body .mgym-meso-config-v270__tech-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html body .mgym-meso-config-v270__micro-row {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   Responsive · móvil
   ========================================================= */

@media (max-width: 760px) {
  html body .mgym-meso-config-v270 {
    padding: 14px;
    border-radius: 22px;
  }

  html body .mgym-meso-config-v270__head,
  html body .mgym-meso-config-v270__strip,
  html body .mgym-meso-config-v270__tech-head,
  html body .mgym-meso-config-v270__message,
  html body .mgym-meso-config-v270__micro-head {
    flex-direction: column;
    align-items: flex-start;
  }

  html body .mgym-meso-config-v270__card {
    padding: 14px;
    border-radius: 22px;
  }

  html body .mgym-meso-config-v270__card-head {
    grid-template-columns: auto minmax(0, 1fr);
  }

  html body .mgym-meso-config-v270__badge {
    grid-column: 1 / -1;
    justify-self: start;
  }

  html body .mgym-meso-config-v270__strip {
    padding: 12px;
  }

  html body .mgym-meso-config-v270__strip strong {
    white-space: normal;
  }

  html body .mgym-meso-config-v270__info-grid,
  html body .mgym-meso-config-v270__tech-grid {
    grid-template-columns: 1fr;
  }

  html body .mgym-meso-config-v270__field span {
    white-space: normal;
  }

  html body .mgym-meso-config-v270__save {
    width: 100%;
  }

  html body .mgym-meso-config-v270__days {
    grid-template-columns: repeat(7, minmax(46px, 1fr));
    overflow-x: auto;
    padding-bottom: 4px;
  }
}

/* =========================================================
   Responsive · móvil pequeño
   ========================================================= */

@media (max-width: 480px) {
  html body .mgym-meso-config-v270__title strong {
    font-size: 14px;
  }

  html body .mgym-meso-config-v270__info-value,
  html body .mgym-meso-config-v270__field select,
  html body .mgym-meso-config-v270__field input {
    min-height: 40px;
  }

  html body .mgym-meso-config-v270__actions {
    width: 100%;
    justify-content: flex-end;
  }
}
/* =========================================================
   MacroGym · Mesociclos v270 · Hero conectado superior
   ========================================================= */

html body .mgym-meso-config-v270__hero {
  display: grid !important;
  gap: 18px !important;
  margin-bottom: 20px !important;
}

html body .mgym-meso-config-v270__hero-top {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

html body .mgym-meso-config-v270__hero-title {
  min-width: 0 !important;
}

html body .mgym-meso-config-v270__hero-title .label {
  margin-bottom: 7px !important;
  color: var(--meso-muted) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

html body .mgym-meso-config-v270__hero-title h3 {
  margin: 0 !important;
  color: var(--meso-text) !important;
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1 !important;
  letter-spacing: -0.05em !important;
}

html body .mgym-meso-config-v270__hero-title p {
  max-width: 860px !important;
  margin: 10px 0 0 !important;
  color: var(--meso-muted) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

html body .mgym-meso-config-v270__hero-side {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

html body .mgym-meso-config-v270__macro-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 30px !important;
  padding: 0 11px !important;

  border-radius: 8px !important;
  border: 1px solid rgba(243, 244, 246, 0.18) !important;
  background: rgba(243, 244, 246, 0.10) !important;

  color: var(--meso-text) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

/* Pasos */
html body .mgym-meso-config-v270__steps {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

html body .mgym-meso-config-v270__steps > div {
  min-height: 44px !important;

  display: flex !important;
  align-items: center !important;
  gap: 10px !important;

  padding: 0 12px !important;

  border-radius: 16px !important;
  border: 1px solid rgba(156, 163, 175, 0.18) !important;

  background:
    linear-gradient(135deg, rgba(243, 244, 246, 0.06), rgba(7, 7, 7, 0.22)),
    repeating-linear-gradient(
      45deg,
      transparent 0,
      transparent 28px,
      rgba(255, 255, 255, 0.045) 29px,
      transparent 30px
    ) !important;
}

html body .mgym-meso-config-v270__steps b {
  width: 26px !important;
  height: 26px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 999px !important;
  background: rgba(156, 163, 175, 0.24) !important;
  color: var(--meso-text) !important;

  font-size: 12px !important;
  font-weight: 950 !important;
}

html body .mgym-meso-config-v270__steps span {
  color: var(--meso-text) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

/* Resumen conectado */
html body .mgym-meso-config-v270__linked-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

html body .mgym-meso-config-v270__linked-summary > div {
  min-width: 0 !important;
  min-height: 54px !important;

  display: grid !important;
  align-content: center !important;
  gap: 5px !important;

  padding: 10px 13px !important;

  border-radius: 16px !important;
  border: 1px solid rgba(156, 163, 175, 0.18) !important;

  background:
    radial-gradient(circle at 10% 0%, rgba(243, 244, 246, 0.07), transparent 34%),
    rgba(243, 244, 246, 0.065) !important;
}

html body .mgym-meso-config-v270__linked-summary small {
  color: var(--meso-muted) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

html body .mgym-meso-config-v270__linked-summary strong {
  min-width: 0 !important;
  color: var(--meso-text) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media (max-width: 1080px) {
  html body .mgym-meso-config-v270__steps,
  html body .mgym-meso-config-v270__linked-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  html body .mgym-meso-config-v270__hero-top {
    flex-direction: column !important;
  }

  html body .mgym-meso-config-v270__hero-side {
    width: 100% !important;
    justify-content: space-between !important;
  }

  html body .mgym-meso-config-v270__steps,
  html body .mgym-meso-config-v270__linked-summary {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   MacroGym · v270 · Estado visual de guardado/sincronización
   ========================================================= */

html body .mgym-meso-config-v270__save-status {
  display: flex;
  align-items: center;
  gap: 12px;

  min-height: 52px;
  padding: 12px 14px;
  margin-top: 2px;

  border-radius: 18px;
  border: 1px solid rgba(53, 214, 232, 0.30);
  background:
    radial-gradient(circle at 8% 0%, rgba(53, 214, 232, 0.14), transparent 34%),
    rgba(7, 7, 7, 0.36);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 16px 38px rgba(0, 0, 0, 0.24);

  color: var(--meso-text);
}

html body .mgym-meso-config-v270__save-status[hidden] {
  display: none !important;
}

html body .mgym-meso-config-v270__save-status > span {
  width: 30px;
  height: 30px;

  display: grid;
  place-items: center;

  border-radius: 999px;
  border: 1px solid rgba(53, 214, 232, 0.44);
  background: rgba(53, 214, 232, 0.14);

  color: #DFFBFF;
  font-size: 15px;
  font-weight: 950;
}

html body .mgym-meso-config-v270__save-status strong {
  display: block;
  color: var(--meso-text);
  font-size: 13px;
  font-weight: 950;
  line-height: 1.15;
}

html body .mgym-meso-config-v270__save-status small {
  display: block;
  margin-top: 3px;
  color: var(--meso-muted);
  font-size: 11px;
  line-height: 1.35;
}

html body .mgym-meso-config-v270__save-status.is-saving {
  border-color: rgba(156, 163, 175, 0.30);
}

html body .mgym-meso-config-v270__save-status.is-saving > span {
  animation: mgymV270Rotate 0.9s linear infinite;
}

html body .mgym-meso-config-v270__save-status.is-saved {
  border-color: rgba(53, 214, 232, 0.48);
  background:
    radial-gradient(circle at 8% 0%, rgba(53, 214, 232, 0.20), transparent 34%),
    rgba(7, 7, 7, 0.36);
}

html body .mgym-meso-config-v270__save-status.is-error {
  border-color: rgba(255, 139, 139, 0.34);
  background:
    radial-gradient(circle at 8% 0%, rgba(255, 139, 139, 0.14), transparent 34%),
    rgba(7, 7, 7, 0.36);
}

html body .mgym-meso-config-v270__save-status.is-error > span {
  border-color: rgba(255, 139, 139, 0.44);
  background: rgba(255, 139, 139, 0.14);
  color: #FFD0D0;
}

html body .mgym-meso-config-v270__hero.is-pulsing .mgym-meso-config-v270__linked-summary > div {
  animation: mgymV270SyncPulse 1.15s ease both;
}

html body .mgym-meso-config-v270__hero.is-saved .mgym-meso-config-v270__linked-summary > div {
  border-color: rgba(53, 214, 232, 0.32);
}

html body .mgym-meso-config-v270__hero.is-error .mgym-meso-config-v270__linked-summary > div {
  border-color: rgba(255, 139, 139, 0.24);
}

@keyframes mgymV270SyncPulse {
  0% {
    transform: translateY(0);
    box-shadow: none;
  }

  35% {
    transform: translateY(-2px);
    box-shadow:
      0 0 0 1px rgba(53, 214, 232, 0.16),
      0 18px 44px rgba(53, 214, 232, 0.10);
  }

  100% {
    transform: translateY(0);
    box-shadow: none;
  }
}

@keyframes mgymV270Rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 760px) {
  html body .mgym-meso-config-v270__save-status {
    align-items: flex-start;
  }
}


/* =========================================================
   [MGYM-CONFIG-SYNC-CSS-001]
   MacroGym · Configuración · Efecto visual de sincronización
   Ubicación: CSS activo de configuración
   Función:
   - Hace más visible que el Bloque 1 se ha guardado.
   - Resalta el bloque "Planificación limpia".
   - Añade una tarjeta de estado clara.
   ========================================================= */

html body .mgym-html-config-page .mgym-meso-config-v270__hero.is-pulsing {
  animation: mgymConfigHeroSavedPulse001 1.7s ease both !important;
}

html body .mgym-html-config-page .mgym-meso-config-v270__hero.is-saved .mgym-meso-config-v270__linked-summary > div {
  border-color: rgba(53, 214, 232, 0.62) !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(53, 214, 232, 0.22), transparent 38%),
    rgba(243, 244, 246, 0.085) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 0 0 1px rgba(53, 214, 232, 0.12),
    0 18px 42px rgba(53, 214, 232, 0.10) !important;
}

/* [MGYM-CONFIG-SYNC-CSS-002]
   Tarjeta de estado visible debajo del resumen. */
html body .mgym-html-config-page .mgym-config-sync-status {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;

  margin-top: 12px !important;
  padding: 13px 15px !important;

  border-radius: 18px !important;
  border: 1px solid rgba(53, 214, 232, 0.46) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 214, 232, 0.22), transparent 34%),
    linear-gradient(135deg, rgba(53, 214, 232, 0.10), rgba(7, 7, 7, 0.34)) !important;

  color: #F3F4F6 !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    0 18px 50px rgba(0, 0, 0, 0.28),
    0 0 42px rgba(53, 214, 232, 0.08) !important;
}

html body .mgym-html-config-page .mgym-config-sync-status__icon {
  width: 34px !important;
  height: 34px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 999px !important;
  border: 1px solid rgba(53, 214, 232, 0.56) !important;
  background: rgba(53, 214, 232, 0.18) !important;

  color: #DFFBFF !important;
  font-size: 16px !important;
  font-weight: 950 !important;
}

html body .mgym-html-config-page .mgym-config-sync-status strong {
  display: block !important;
  color: #F3F4F6 !important;
  font-size: 13px !important;
  font-weight: 950 !important;
}

html body .mgym-html-config-page .mgym-config-sync-status small {
  display: block !important;
  margin-top: 3px !important;
  color: #C7CDD6 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

/* [MGYM-CONFIG-SYNC-CSS-003]
   Animación fuerte y visible, sin depender de pseudo-elementos. */
@keyframes mgymConfigHeroSavedPulse001 {
  0% {
    transform: translateY(0) scale(1);
    filter: brightness(1);
  }

  28% {
    transform: translateY(-3px) scale(1.006);
    filter: brightness(1.18);
    box-shadow:
      0 0 0 1px rgba(53, 214, 232, 0.32),
      0 0 0 8px rgba(53, 214, 232, 0.08),
      0 28px 80px rgba(53, 214, 232, 0.16) !important;
  }

  100% {
    transform: translateY(0) scale(1);
    filter: brightness(1);
  }
}

/* [MGYM-CONFIG-SYNC-CSS-004]
   Responsive: status más cómodo en móvil. */
@media (max-width: 760px) {
  html body .mgym-html-config-page .mgym-config-sync-status {
    align-items: flex-start !important;
  }
}

/* [MGYM-CONFIG-SYNC-CSS-001-END] */

/* =========================================================
   [MGYM-METHOD-GLOBAL-CSS-001]
   Planificación avanzada · Legibilidad + botón guardar global
   Ubicación: CSS activo de configuración
   Función:
   - Aumenta tamaño de lectura.
   - Da presencia al botón Guardar lógica global.
   - Mejora inputs/selects del bloque de métodos y mesociclos.
   ========================================================= */

html body .mgym-html-config-page #mgymTrainingLogicBlock {
  font-size: 14px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
  font-size: clamp(34px, 4vw, 54px) !important;
  line-height: 0.98 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .muted {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

html body .mgym-html-config-page .mgym-training-logic-controls__head--save {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}

html body .mgym-html-config-page .mgym-training-logic-controls__title {
  display: grid !important;
  gap: 4px !important;
}

html body .mgym-html-config-page .mgym-training-logic-controls__title strong {
  color: #F3F4F6 !important;
  font-size: 15px !important;
  font-weight: 950 !important;
}

html body .mgym-html-config-page .mgym-training-logic-controls__title span {
  color: #AEB5C0 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

html body .mgym-html-config-page .mgym-training-logic-save-global {
  min-height: 42px !important;
  padding: 0 18px !important;

  border-radius: 999px !important;
  border: 1px solid rgba(53, 214, 232, 0.54) !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(53, 214, 232, 0.30), transparent 38%),
    linear-gradient(135deg, rgba(53, 214, 232, 0.22), rgba(7, 7, 7, 0.42)) !important;

  color: #E8FDFF !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: 0.02em !important;

  cursor: pointer !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 18px 42px rgba(0, 0, 0, 0.32),
    0 0 28px rgba(53, 214, 232, 0.12) !important;
}

html body .mgym-html-config-page .mgym-training-logic-save-global:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(53, 214, 232, 0.76) !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(53, 214, 232, 0.40), transparent 38%),
    linear-gradient(135deg, rgba(53, 214, 232, 0.30), rgba(7, 7, 7, 0.42)) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock label span,
html body .mgym-html-config-page .mgym-meso-config-v270 label span {
  font-size: 11px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.10em !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock select,
html body .mgym-html-config-page #mgymTrainingLogicBlock input,
html body .mgym-html-config-page .mgym-meso-config-v270 select,
html body .mgym-html-config-page .mgym-meso-config-v270 input {
  min-height: 42px !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
}

/* [MGYM-METHOD-GLOBAL-CSS-002]
   Estado visual tras guardar lógica global. */
html body .mgym-html-config-page .mgym-method-global-status {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;

  margin-top: 12px !important;
  padding: 12px 14px !important;

  border-radius: 16px !important;
  border: 1px solid rgba(53, 214, 232, 0.38) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 214, 232, 0.18), transparent 34%),
    rgba(7, 7, 7, 0.34) !important;

  color: #F3F4F6 !important;
}

html body .mgym-html-config-page .mgym-method-global-status strong {
  display: block !important;
  font-size: 13px !important;
  font-weight: 950 !important;
}

html body .mgym-html-config-page .mgym-method-global-status small {
  display: block !important;
  margin-top: 2px !important;
  color: #C7CDD6 !important;
  font-size: 11px !important;
}

@media (max-width: 760px) {
  html body .mgym-html-config-page .mgym-training-logic-controls__head--save {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  html body .mgym-html-config-page .mgym-training-logic-save-global {
    width: 100% !important;
  }
}

/* [MGYM-METHOD-GLOBAL-CSS-001-END] */


/*PRUEBA MOVIL */


/* =========================================================
   [MGYM-MOBILE-CONFIG-001]
   MacroGym · Configuración · Mobile UX específico
   Función:
   - Reestructura la página Configuración SOLO en móvil.
   - Mantiene colores actuales: gris espacial, negro, vidrio, verde OK.
   - No toca escritorio.
   - No duplica campos funcionales.
   ========================================================= */

@media (max-width: 767px) {

  /* =========================================================
     [MGYM-MOBILE-CONFIG-002]
     Base general móvil
     Función:
     - Evita desbordes horizontales.
     - Reduce márgenes.
     - Mejora la lectura en pantallas pequeñas.
     ========================================================= */

  html {
    scroll-behavior: smooth;
  }

  body {
    overflow-x: hidden !important;
  }

  .mgym-ent-page--configuracion,
  .mgym-html-config-page,
  .mgym-premium-aligned-page {
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 10px 96px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
  }

  .mgym-ent-page--configuracion *,
  .mgym-html-config-page * {
    box-sizing: border-box !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-003]
     Navegación horizontal móvil de página
     Función:
     - Convierte .mgym-config-local-nav en accesos directos sticky.
     - Cada página puede tener su propia navegación.
     ========================================================= */

  .mgym-config-local-nav {
    position: sticky !important;
    top: 0 !important;
    z-index: 999 !important;

    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;

    width: auto !important;
    max-width: none !important;

    margin: -10px -10px 14px !important;
    padding: 10px 10px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    background: rgba(12, 12, 12, .88) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    border-radius: 0 !important;

    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;

    box-shadow: 0 18px 36px rgba(0, 0, 0, .36) !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-config-local-nav::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-config-local-nav a {
    flex: 0 0 auto !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;

    min-width: auto !important;
    min-height: 42px !important;
    padding: 0 13px !important;

    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, .11) !important;

    color: #A3A4A5 !important;
    background: rgba(255, 255, 255, .055) !important;

    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .mgym-config-local-nav a span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 22px !important;
    height: 22px !important;

    border-radius: 999px !important;

    color: #101010 !important;
    background: #F3F4F6 !important;

    font-size: 11px !important;
    line-height: 1 !important;
  }

  .mgym-config-local-nav a.is-active,
  .mgym-config-local-nav a:hover {
    color: #F3F4F6 !important;
    background: rgba(255, 255, 255, .12) !important;
    border-color: rgba(255, 255, 255, .22) !important;
  }

  .mgym-config-local-nav a.is-active span {
    background: #7DDC9D !important;
    color: #101010 !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-004]
     Anclajes con margen para sticky nav
     Función:
     - Evita que al pulsar un acceso el bloque quede tapado.
     ========================================================= */

  #mgym-config-top,
  #mgymConfigSilverHero,
  #mgymPlanConfigCard,
  #mgymTrainingLogicBlock,
  #mgymConfigCleanPlanner,
  #mgymRoutineAssignmentBlock,
  .mgym-clean-calendar-section,
  #mgymPlanningRegister {
    scroll-margin-top: 78px !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-005]
     Hero principal móvil · configuracion_bloque_1
     Función:
     - Reduce altura.
     - Da prioridad a título, estado PAR-Q y acción.
     - Convierte pasos en tarjetas compactas.
     ========================================================= */

  .configuracion_bloque_1 {
    position: relative !important;
    overflow: hidden !important;

    margin: 8px 0 14px !important;
    padding: 0 !important;

    border-radius: 26px !important;
    border: 1px solid rgba(243, 244, 246, .12) !important;

    background:
      radial-gradient(circle at 20% 10%, rgba(255, 255, 255, .12), transparent 28%),
      linear-gradient(180deg, #191919 0%, #070707 100%) !important;

    box-shadow:
      0 28px 70px rgba(0, 0, 0, .52),
      inset 0 1px 0 rgba(255, 255, 255, .08) !important;
  }

  .configuracion_bloque_1__bg {
    inset: -14% !important;
    opacity: .22 !important;
    filter: grayscale(22%) contrast(1.08) brightness(.82) !important;
  }

  .configuracion_bloque_1::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;

    background:
      linear-gradient(180deg, rgba(7, 7, 7, .24), rgba(7, 7, 7, .82)),
      radial-gradient(circle at 20% 18%, rgba(255, 255, 255, .08), transparent 28%) !important;

    pointer-events: none !important;
  }

  .configuracion_bloque_1__inner {
    position: relative !important;
    z-index: 2 !important;

    display: grid !important;
    gap: 16px !important;

    padding: 18px !important;
  }

  .configuracion_bloque_1__top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    align-items: start !important;
  }

  .configuracion_bloque_1__label,
  .configuracion_bloque_1__mini-status {
    width: fit-content !important;
    max-width: 100% !important;

    min-height: 32px !important;
    padding: 0 11px !important;

    border-radius: 999px !important;

    font-size: 10px !important;
    line-height: 1.1 !important;
    letter-spacing: .08em !important;
  }

  .configuracion_bloque_1__hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    align-items: start !important;
  }

  .configuracion_bloque_1__title {
    max-width: 100% !important;
    margin: 0 !important;

    color: #F3F4F6 !important;

    font-size: clamp(31px, 10vw, 45px) !important;
    line-height: .96 !important;
    letter-spacing: -.055em !important;
  }

  .configuracion_bloque_1__lead {
    margin: 12px 0 0 !important;

    color: #A3A4A5 !important;

    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  .configuracion_bloque_1__score {
    min-height: auto !important;
    padding: 16px !important;

    border-radius: 21px !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;

    background:
      linear-gradient(145deg, rgba(255, 255, 255, .085), rgba(255, 255, 255, .025)),
      rgba(255, 255, 255, .035) !important;

    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
  }

  .configuracion_bloque_1__score-content {
    text-align: left !important;
  }

  .configuracion_bloque_1__score-kicker {
    font-size: 10px !important;
    letter-spacing: .11em !important;
  }

  .configuracion_bloque_1__score-number {
    display: inline-flex !important;
    margin: 8px 8px 0 0 !important;

    font-size: 42px !important;
    line-height: .9 !important;
  }

  .configuracion_bloque_1__score-text {
    display: inline !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .configuracion_bloque_1__message {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;

    padding: 15px !important;

    border-radius: 20px !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;

    background:
      linear-gradient(135deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .028)),
      rgba(255, 255, 255, .035) !important;

    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
  }

  .configuracion_bloque_1__message-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 14px !important;
  }

  .configuracion_bloque_1__message p {
    margin: 0 !important;

    color: #D9DBDE !important;

    font-size: 13px !important;
    line-height: 1.52 !important;
  }

  .configuracion_bloque_1__message-action,
  .configuracion_bloque_1__primary-link {
    width: 100% !important;
    min-height: 46px !important;

    border-radius: 999px !important;

    font-size: 13px !important;
    font-weight: 850 !important;
  }

  .configuracion_bloque_1__map {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .configuracion_bloque_1__step {
    min-height: auto !important;
    padding: 14px !important;

    border-radius: 19px !important;
    border: 1px solid rgba(255, 255, 255, .09) !important;

    background: rgba(255, 255, 255, .045) !important;

    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
  }

  .configuracion_bloque_1__step-head {
    margin-bottom: 10px !important;
  }

  .configuracion_bloque_1__step-num {
    font-size: 10px !important;
  }

  .configuracion_bloque_1__step strong {
    color: #F3F4F6 !important;

    font-size: 15px !important;
    line-height: 1.13 !important;
  }

  .configuracion_bloque_1__step span:last-child {
    margin-top: 7px !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.42 !important;
  }

  .configuracion_bloque_1__footer {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;

    padding: 13px !important;

    border-radius: 20px !important;
    border: 1px solid rgba(255, 255, 255, .085) !important;

    background: rgba(255, 255, 255, .032) !important;
  }

  .configuracion_bloque_1__footer-info {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;

    overflow-x: auto !important;
    padding-bottom: 4px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .configuracion_bloque_1__footer-info::-webkit-scrollbar {
    display: none !important;
  }

  .configuracion_bloque_1__chip {
    flex: 0 0 auto !important;

    min-height: 34px !important;
    padding: 0 11px !important;

    border-radius: 999px !important;

    color: #A3A4A5 !important;
    background: rgba(255, 255, 255, .045) !important;

    font-size: 11px !important;
    white-space: nowrap !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-006]
     Flujo de configuración móvil
     Función:
     - Convierte las tarjetas superiores en carrusel horizontal.
     - Sirve como navegación visual secundaria.
     ========================================================= */

  .mgym-config-flow-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;

    width: auto !important;
    margin: 0 -10px 14px !important;
    padding: 4px 10px 10px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-config-flow-strip::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-config-flow-card {
    flex: 0 0 74% !important;
    max-width: 74% !important;

    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) !important;
    gap: 12px !important;

    min-height: 96px !important;
    padding: 10px !important;

    border-radius: 22px !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;

    background:
      linear-gradient(145deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .025)),
      rgba(255, 255, 255, .035) !important;

    text-decoration: none !important;
    scroll-snap-align: start !important;
  }

  .mgym-config-flow-card__media {
    width: 74px !important;
    height: 74px !important;
    margin: 0 !important;

    border-radius: 18px !important;
    overflow: hidden !important;
  }

  .mgym-config-flow-card__media img {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
    display: block !important;
  }

  .mgym-config-flow-card__step {
    top: 6px !important;
    right: 6px !important;

    width: 23px !important;
    height: 23px !important;

    border-radius: 999px !important;

    background: #7DDC9D !important;
    color: #101010 !important;

    font-size: 11px !important;
    font-weight: 900 !important;
  }

  .mgym-config-flow-card__body {
    min-width: 0 !important;
    align-self: center !important;
  }

  .mgym-config-flow-card__body strong {
    display: block !important;

    color: #F3F4F6 !important;

    font-size: 15px !important;
    line-height: 1.1 !important;
  }

  .mgym-config-flow-card__body small {
    display: block !important;
    margin-top: 6px !important;

    color: #A3A4A5 !important;

    font-size: 11px !important;
    line-height: 1.35 !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-007]
     Grid principal y contenedores generales
     Función:
     - El formulario pasa a una única columna.
     - Las cards toman estilo móvil consistente.
     ========================================================= */

  .mgym-config-main-grid,
  .grid.mgym-config-main-grid {
    display: block !important;
    margin-top: 0 !important;
  }

  .mgym-config-workspace,
  .mgym-clean-card,
  .mgym-config-summary-wide,
  .mgym-training-logic,
  .mgym-meso-config-v270 {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 0 14px !important;
    padding: 15px !important;

    border-radius: 24px !important;
    border: 1px solid rgba(255, 255, 255, .09) !important;

    background:
      linear-gradient(180deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .025)),
      rgba(18, 18, 18, .96) !important;

    box-shadow:
      0 22px 50px rgba(0, 0, 0, .34),
      inset 0 1px 0 rgba(255, 255, 255, .055) !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-008]
     Bloque Configura tu plan
     Función:
     - Reestructura el bloque en móvil.
     - Formulario como cards grandes táctiles.
     - Imagen lateral pasa debajo como banner.
     ========================================================= */

  #mgymPlanConfigCard,
  .mgym-plan-config-card,
  .mgym-config-plan-carbon-block {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;

    padding: 16px !important;

    border-radius: 24px !important;
    overflow: hidden !important;
  }

  .mgym-plan-config-card__main,
  .mgym-config-plan-carbon-block__main {
    display: grid !important;
    gap: 14px !important;
  }

  .mgym-plan-config-card__eyebrow,
  .mgym-config-plan-carbon-block__status {
    width: fit-content !important;

    min-height: 30px !important;
    padding: 0 10px !important;

    border-radius: 999px !important;

    color: #A3A4A5 !important;
    background: rgba(255, 255, 255, .055) !important;

    font-size: 10px !important;
    letter-spacing: .09em !important;
  }

  .mgym-plan-config-card__title,
  .mgym-config-plan-carbon-block__title {
    margin: 0 !important;

    color: #F3F4F6 !important;

    font-size: 29px !important;
    line-height: 1 !important;
    letter-spacing: -.04em !important;
  }

  .mgym-plan-config-card__sub,
  .mgym-config-plan-carbon-block__text {
    margin: 0 !important;

    color: #A3A4A5 !important;

    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .mgym-plan-config-fields,
  .mgym-config-plan-carbon-block__fields,
  .form.cols-3 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 11px !important;
  }

  .mgym-config-plan-carbon-block__field,
  .mgym-html-config-form .field,
  .mgym-training-logic .field,
  .mgym-meso-config-v270__field {
    display: grid !important;
    gap: 7px !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 12px !important;

    border-radius: 18px !important;
    border: 1px solid rgba(255, 255, 255, .085) !important;

    background: rgba(255, 255, 255, .045) !important;
  }

  .mgym-config-plan-carbon-block__field span,
  .mgym-html-config-form .field span,
  .mgym-training-logic .field span,
  .mgym-meso-config-v270__field span {
    color: #A3A4A5 !important;

    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .02em !important;
  }

  .mgym-html-config-page input,
  .mgym-html-config-page select,
  .mgym-html-config-page textarea {
    width: 100% !important;
    min-height: 47px !important;
    padding: 0 13px !important;

    border-radius: 14px !important;
    border: 1px solid rgba(255, 255, 255, .11) !important;

    color: #F3F4F6 !important;
    background: rgba(7, 7, 7, .42) !important;

    font-size: 14px !important;
    line-height: 1.2 !important;

    outline: none !important;
  }

  .mgym-html-config-page textarea {
    min-height: 108px !important;
    padding-top: 12px !important;
    line-height: 1.45 !important;
  }

  .mgym-html-config-page input:focus,
  .mgym-html-config-page select:focus,
  .mgym-html-config-page textarea:focus {
    border-color: rgba(125, 220, 157, .42) !important;
    box-shadow: 0 0 0 3px rgba(125, 220, 157, .12) !important;
  }

  .mgym-config-plan-carbon-block__info-boxes {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
  }

  .mgym-config-plan-carbon-block__info-card {
    min-height: 96px !important;
    padding: 13px !important;

    border-radius: 18px !important;
    border: 1px solid rgba(255, 255, 255, .08) !important;

    background: rgba(255, 255, 255, .035) !important;
  }

  .mgym-config-plan-carbon-block__info-card span,
  .mgym-config-plan-carbon-block__info-card small {
    color: #A3A4A5 !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  .mgym-config-plan-carbon-block__info-card strong,
  .mgym-config-plan-carbon-block__info-value {
    color: #F3F4F6 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

  .mgym-config-plan-carbon-block__media,
  .mgym-plan-config-card__side {
    display: grid !important;
    gap: 12px !important;
  }

  .mgym-config-plan-carbon-block__image {
    width: 100% !important;
    max-height: 240px !important;

    object-fit: cover !important;
    object-position: center !important;

    border-radius: 22px !important;
    opacity: .9 !important;
  }

 /* =========================================================
   [MGYM-SAVE-BTN-METAL-ROOT-002-START]
   BLOQUE: Botón Guardar plan · gris metalizado raíz
   OBJETIVO:
   - Eliminar color turquesa/verde de raíz
   - Mantener botón ancho y centrado
   - Aplicar gris espacial con borde metálico
   - Preparar estados: pendiente, guardando, guardado
   ========================================================= */

/* [MGYM-SAVE-BTN-METAL-ROOT-002-A]
   Estado base del botón */
.mgym-plan-config-save,
.mgym-config-plan-carbon-block__save {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;

  width: 100% !important;
  max-width: 220px !important;
  min-height: 48px !important;
  padding: 0 24px !important;

  border-radius: 14px !important;
  border: 1px solid rgba(163, 164, 165, 0.76) !important;

  color: #F3F4F6 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.055) 42%, rgba(0,0,0,0.32) 100%),
    linear-gradient(135deg, #5A5D62 0%, #373A3F 48%, #1F2125 100%) !important;

  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.01em !important;

  text-shadow: 0 1px 0 rgba(0,0,0,0.55) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -1px 0 rgba(0,0,0,0.55),
    0 12px 24px rgba(0,0,0,0.34) !important;

  cursor: pointer !important;

  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    background 0.18s ease,
    opacity 0.18s ease,
    filter 0.18s ease !important;
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-B]
   Hover suave */
#saveConfigBtn:hover,
.mgym-plan-config-save:hover,
.mgym-config-plan-carbon-block__save:hover {
  transform: none !important;
  filter: brightness(1.04) !important;

  border-color: rgba(243, 244, 246, 0.82) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.25),
    inset 0 -1px 0 rgba(0,0,0,0.55),
    0 14px 28px rgba(0,0,0,0.38) !important;
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-C]
   Click discreto */
#saveConfigBtn:active,
.mgym-plan-config-save:active,
.mgym-config-plan-carbon-block__save:active {
  transform: scale(0.995) !important;
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-D]
   Estado pendiente de guardar */
#saveConfigBtn[data-mgym-save-state="dirty"] {
  border-color: rgba(190, 190, 190, 0.9) !important;
  filter: brightness(1.03) !important;
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-E]
   Estado guardando */
#saveConfigBtn[data-mgym-save-state="saving"] {
  opacity: 0.84 !important;
  pointer-events: none !important;
}

#saveConfigBtn[data-mgym-save-state="saving"]::after {
  content: "" !important;
  width: 13px !important;
  height: 13px !important;

  border: 2px solid rgba(243,244,246,0.32) !important;
  border-top-color: #F3F4F6 !important;
  border-radius: 999px !important;

  animation: mgymSaveButtonSpin 0.75s linear infinite !important;
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-F]
   Estado guardado */
#saveConfigBtn[data-mgym-save-state="saved"] {
  border-color: rgba(210, 210, 210, 0.86) !important;
  color: #F3F4F6 !important;
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-G]
   Animaciones mínimas */
#saveConfigBtn.mgym-save-state-bump {
  animation: mgymSaveStateBumpSoft 0.24s ease-out both !important;
}

@keyframes mgymSaveButtonSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes mgymSaveStateBumpSoft {
  0% {
    transform: scale(0.995);
    filter: brightness(0.98);
  }

  60% {
    transform: scale(1.004);
    filter: brightness(1.045);
  }

  100% {
    transform: scale(1);
    filter: brightness(1);
  }
}

/* [MGYM-SAVE-BTN-METAL-ROOT-002-END] */


  /* =========================================================
     [MGYM-MOBILE-CONFIG-009]
     Resumen "Qué se genera desde aquí"
     Función:
     - Lo convierte en módulo compacto.
     - KPI en carrusel horizontal.
     ========================================================= */

  #mgymConfigSummaryWide {
    padding: 15px !important;
    border-radius: 24px !important;
  }

  .mgym-config-summary-shell {
    display: grid !important;
    gap: 14px !important;
  }

  .mgym-config-summary-intro .label {
    font-size: 10px !important;
  }

  .mgym-config-summary-intro .cardTitle {
    margin: 6px 0 0 !important;

    color: #F3F4F6 !important;

    font-size: 24px !important;
    line-height: 1.05 !important;
  }

  .mgym-config-summary-intro .muted {
    margin-top: 8px !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .mgym-config-summary-kpi-zone .kpis {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 9px !important;

    overflow-x: auto !important;
    padding-bottom: 5px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-config-summary-kpi-zone .kpis::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-config-summary-kpi-zone .kpi {
    flex: 0 0 42% !important;

    min-height: 86px !important;
    padding: 12px !important;

    border-radius: 18px !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-010]
     Bloque Método · técnicas · progresión
     Función:
     - Imagen deja de dominar.
     - Controles pasan a estructura móvil.
     - Cards técnicas en carrusel.
     ========================================================= */

  #mgymTrainingLogicBlock,
  .mgym-training-logic {
    padding: 15px !important;
    border-radius: 24px !important;
  }

  .mgym-training-logic-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: start !important;
  }

  .mgym-training-logic-head .cardTitle {
    margin: 6px 0 0 !important;

    color: #F3F4F6 !important;

    font-size: 25px !important;
    line-height: 1.05 !important;
  }

  .mgym-training-logic-head .muted {
    margin-top: 8px !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .mgym-training-logic-badge {
    width: fit-content !important;

    min-height: 31px !important;
    padding: 0 11px !important;

    border-radius: 999px !important;

    font-size: 10px !important;
  }

  .mgym-training-logic-hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .mgym-training-logic-hero__media {
    position: relative !important;

    width: 100% !important;
    max-height: 210px !important;
    margin: 0 !important;

    border-radius: 22px !important;
    overflow: hidden !important;
  }

  .mgym-training-logic-hero__image {
    width: 100% !important;
    height: 210px !important;

    object-fit: cover !important;
    object-position: center !important;

    display: block !important;
  }

  .mgym-training-logic-hero__caption {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;

    padding: 12px !important;

    border-radius: 17px !important;

    background: rgba(7, 7, 7, .62) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
  }

  .mgym-training-logic-controls {
    padding: 14px !important;
    border-radius: 22px !important;
  }

  .mgym-training-logic-controls__head {
    display: grid !important;
    gap: 4px !important;
    margin-bottom: 12px !important;
  }

  .mgym-training-logic-controls__head strong {
    color: #F3F4F6 !important;
    font-size: 16px !important;
  }

  .mgym-training-logic-controls__head span {
    color: #A3A4A5 !important;
    font-size: 11px !important;
  }

  .mgym-training-logic-controls__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 11px !important;
  }

  .mgym-training-logic-config-summary {
    margin-top: 12px !important;
    padding: 13px !important;

    border-radius: 18px !important;

    background: rgba(255, 255, 255, .035) !important;
  }

  .logic-premium-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;

    margin-top: 14px !important;
    overflow-x: auto !important;
    padding-bottom: 6px !important;

    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .logic-premium-strip::-webkit-scrollbar {
    display: none !important;
  }

  .logic-premium-card {
    flex: 0 0 82% !important;
    max-width: 82% !important;

    min-height: 154px !important;
    padding: 15px !important;

    border-radius: 22px !important;

    scroll-snap-align: start !important;
  }

  .logic-premium-card--wide {
    flex-basis: 88% !important;
    max-width: 88% !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-011]
     Mesociclos v270 móvil
     Función:
     - Hero compacto.
     - Summary en chips horizontales.
     - Cards de mesociclo como carrusel.
     - Microciclos en lectura táctil.
     ========================================================= */

  #mgymConfigCleanPlanner,
  .mgym-meso-config-v270 {
    padding: 15px !important;
    border-radius: 24px !important;
  }

  .mgym-meso-config-v270__hero {
    padding: 15px !important;
    border-radius: 23px !important;
  }

  .mgym-meso-config-v270__hero-top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .mgym-meso-config-v270__hero-title h3 {
    margin: 6px 0 0 !important;

    color: #F3F4F6 !important;

    font-size: 26px !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
  }

  .mgym-meso-config-v270__hero-title p {
    margin-top: 9px !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .mgym-meso-config-v270__hero-side {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    align-items: center !important;
  }

  .mgym-meso-config-v270__macro-badge {
    min-height: 32px !important;
    padding: 0 11px !important;

    border-radius: 999px !important;

    font-size: 11px !important;
  }

  .mgym-meso-config-v270__actions {
    display: flex !important;
    gap: 8px !important;
  }

  .mgym-meso-config-v270__actions .btn {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;

    padding: 0 !important;
    border-radius: 999px !important;
  }

  .mgym-meso-config-v270__steps {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;

    margin-top: 12px !important;
    overflow-x: auto !important;
    padding-bottom: 4px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-meso-config-v270__steps::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-meso-config-v270__steps > div {
    flex: 0 0 auto !important;

    min-width: 142px !important;
    padding: 10px !important;

    border-radius: 17px !important;
  }

  .mgym-meso-config-v270__linked-summary {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;

    margin-top: 12px !important;
    overflow-x: auto !important;
    padding-bottom: 5px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-meso-config-v270__linked-summary::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-meso-config-v270__linked-summary > div {
    flex: 0 0 42% !important;

    min-height: 74px !important;
    padding: 11px !important;

    border-radius: 16px !important;
  }

  .mgym-meso-config-v270__linked-summary small {
    font-size: 10px !important;
  }

  .mgym-meso-config-v270__linked-summary strong {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  .mgym-meso-config-v270__list {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;

    margin: 14px -15px 0 !important;
    padding: 0 15px 8px !important;

    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-meso-config-v270__list::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-meso-config-v270__card {
    flex: 0 0 88% !important;
    max-width: 88% !important;

    padding: 14px !important;

    border-radius: 24px !important;
    scroll-snap-align: start !important;
  }

  .mgym-meso-config-v270__card-head {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .mgym-meso-config-v270__badge {
    grid-column: 1 / -1 !important;
    width: fit-content !important;

    min-height: 29px !important;
    padding: 0 10px !important;

    border-radius: 999px !important;

    font-size: 10px !important;
  }

  .mgym-meso-config-v270__title strong {
    font-size: 15px !important;
    line-height: 1.15 !important;
  }

  .mgym-meso-config-v270__title small {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  .mgym-meso-config-v270__strip {
    display: grid !important;
    gap: 5px !important;

    margin-top: 12px !important;
    padding: 12px !important;

    border-radius: 17px !important;
  }

  .mgym-meso-config-v270__info-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;

    margin-top: 12px !important;
  }

  .mgym-meso-config-v270__info-item {
    min-height: 78px !important;
    padding: 10px !important;

    border-radius: 16px !important;
  }

  .mgym-meso-config-v270__tech {
    margin-top: 12px !important;
    padding: 12px !important;

    border-radius: 19px !important;
  }

  .mgym-meso-config-v270__tech-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .mgym-meso-config-v270__tech-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 12px !important;
  }

  .mgym-meso-config-v270__message {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;

    padding: 12px !important;
    border-radius: 17px !important;
  }

  .mgym-meso-config-v270__save {
    width: 100% !important;
    min-height: 46px !important;

    border-radius: 999px !important;

    background: #7DDC9D !important;
    color: #101010 !important;

    font-weight: 900 !important;
  }

  .mgym-meso-config-v270__balance {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;

    overflow-x: auto !important;
    padding-bottom: 5px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-meso-config-v270__balance::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-meso-config-v270__balance-item {
    flex: 0 0 38% !important;
    padding: 10px !important;

    border-radius: 15px !important;
  }

  .mgym-meso-config-v270__micro-list {
    display: grid !important;
    gap: 9px !important;
  }

  .mgym-meso-config-v270__micro-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;

    padding: 12px !important;
    border-radius: 18px !important;
  }

  .mgym-meso-config-v270__days {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;

    overflow-x: auto !important;
    padding-bottom: 4px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-meso-config-v270__days::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-meso-config-v270__days span {
    flex: 0 0 64px !important;

    min-height: 54px !important;
    padding: 8px !important;

    border-radius: 14px !important;

    text-align: center !important;
  }

  .mgym-meso-config-v270__micro-row em {
    justify-self: start !important;

    min-height: 31px !important;
    padding: 0 11px !important;

    border-radius: 999px !important;

    font-style: normal !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-012]
     Rutinas compatibles
     Función:
     - Rutinas en carrusel táctil.
     - Buscador cómodo.
     - Botón guardar a ancho completo.
     ========================================================= */

  #mgymRoutineAssignmentBlock,
  .mgym-clean-routine-section {
    padding: 15px !important;
    border-radius: 24px !important;
  }

  .mgym-clean-section-title {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    align-items: start !important;
  }

  .mgym-clean-section-title h3 {
    margin: 6px 0 0 !important;

    color: #F3F4F6 !important;

    font-size: 25px !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
  }

  .mgym-clean-section-title .btn {
    width: 100% !important;
    min-height: 48px !important;

    border-radius: 999px !important;
  }

  .mgym-clean-routine-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 13px !important;
  }

  .mgym-clean-routine-current {
    padding: 13px !important;
    border-radius: 18px !important;
  }

  .mgym-clean-routine-library {
    display: grid !important;
    gap: 12px !important;
  }

  .mgym-clean-routine-toolbar {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 10px !important;
    align-items: center !important;
  }

  .mgym-clean-routine-actions {
    display: flex !important;
    gap: 8px !important;
  }

  .mgym-clean-routine-actions .btn {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    border-radius: 999px !important;
  }

  .mgym-clean-routine-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;

    margin: 0 -15px !important;
    padding: 0 15px 8px !important;

    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-clean-routine-list::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-clean-routine-item {
    flex: 0 0 86% !important;
    max-width: 86% !important;

    display: grid !important;
    gap: 14px !important;

    min-height: 230px !important;
    padding: 15px !important;

    border-radius: 23px !important;
    scroll-snap-align: start !important;
  }

  .mgym-clean-routine-item__top {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  .mgym-clean-routine-item strong {
    display: block !important;
    margin-top: 8px !important;

    color: #F3F4F6 !important;

    font-size: 17px !important;
    line-height: 1.15 !important;
  }

  .mgym-clean-routine-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;

    margin-top: 10px !important;
  }

  .mgym-clean-routine-tags span {
    min-height: 29px !important;
    padding: 0 9px !important;

    border-radius: 999px !important;

    font-size: 10px !important;
  }

  .mgym-clean-routine-item p {
    margin-top: 10px !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .mgym-clean-routine-item .btn {
    align-self: end !important;

    width: 100% !important;
    min-height: 44px !important;

    border-radius: 999px !important;
  }

  .mgym-clean-note {
    margin-top: 10px !important;

    color: #A3A4A5 !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-013]
     Calendario móvil
     Función:
     - Cambia de calendario grande a lectura táctil horizontal.
     - Mantiene leyenda y días legibles.
     ========================================================= */

  .mgym-clean-calendar-section {
    padding: 15px !important;
    border-radius: 24px !important;
  }

  .mgym-clean-calendar-layout,
  .mgym-clean-calendar-layout--full {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 13px !important;
  }

  .mgym-clean-calendar-summary {
    display: grid !important;
    gap: 10px !important;
  }

  .mgym-clean-calendar-legend {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 9px !important;

    overflow-x: auto !important;
    padding-bottom: 5px !important;

    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-clean-calendar-legend::-webkit-scrollbar {
    display: none !important;
  }

  .mgym-clean-summary-card {
    padding: 12px !important;
    border-radius: 18px !important;
  }

  .mgym-clean-summary-card--legend {
    flex: 0 0 72% !important;
    max-width: 72% !important;
  }

  .mgym-clean-calendar-main {
    width: 100% !important;
    overflow: hidden !important;
  }

  .mgym-clean-calendar-nav {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .mgym-clean-calendar-nav .btn {
    width: 100% !important;
    min-height: 44px !important;

    border-radius: 999px !important;
  }

  .mgym-clean-calendar-title {
    color: #F3F4F6 !important;

    font-size: 17px !important;
    line-height: 1.2 !important;
  }

  .mgym-clean-calendar-title-wrap small {
    display: block !important;
    margin-top: 5px !important;

    color: #A3A4A5 !important;

    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  .mgym-clean-weekdays {
    display: grid !important;
    grid-template-columns: repeat(7, 58px) !important;
    gap: 7px !important;

    width: max-content !important;
    min-width: 100% !important;

    margin-top: 12px !important;
    padding: 0 0 6px !important;
  }

  .mgym-clean-weekdays span {
    text-align: center !important;

    color: #A3A4A5 !important;

    font-size: 10px !important;
    font-weight: 800 !important;
  }

  .mgym-clean-calendar-grid,
  .mgym-clean-calendar-grid--full {
    display: grid !important;
    grid-template-columns: repeat(7, 58px) !important;
    gap: 7px !important;

    width: max-content !important;
    min-width: 100% !important;
  }

  .mgym-clean-calendar-main {
    overflow-x: auto !important;
    padding-bottom: 8px !important;

    scrollbar-width: thin !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mgym-clean-day {
    min-height: 78px !important;
    padding: 7px !important;

    border-radius: 14px !important;
  }

  .mgym-clean-day b {
    font-size: 11px !important;
  }

  .mgym-clean-day-pill {
    margin-top: 5px !important;
    padding: 4px 6px !important;

    border-radius: 999px !important;

    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  .mgym-clean-day small {
    margin-top: 4px !important;

    font-size: 9px !important;
    line-height: 1.2 !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-014]
     Botones generales y feedback
     Función:
     - Botones táctiles.
     - Feedback visible y legible.
     ========================================================= */

  .mgym-html-config-page .btn,
  .mgym-html-config-page button,
  .mgym-html-config-page input[type="submit"] {
    min-height: 46px !important;
    padding: 0 15px !important;

    border-radius: 999px !important;

    font-size: 13px !important;
    font-weight: 850 !important;
  }

  .mgym-ent-feedback,
  #mgym-ent-config-feedback {
    margin-top: 12px !important;
    padding: 12px !important;

    border-radius: 17px !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;

    background: rgba(255, 255, 255, .04) !important;

    font-size: 12px !important;
    line-height: 1.45 !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-015]
     Acción fija inferior opcional
     Función:
     - Mantiene visible el guardado del plan en móvil.
     - Solo si el botón está dentro del bloque base.
     ========================================================= */

  .mgym-config-plan-carbon-block__media {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 90 !important;

    margin: 0 -16px -16px !important;
    padding: 12px 16px 14px !important;

    background: rgba(12, 12, 12, .9) !important;
    border-top: 1px solid rgba(255, 255, 255, .08) !important;

    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
  }

  .mgym-config-plan-carbon-block__media .mgym-config-plan-carbon-block__image {
    display: none !important;
  }


  /* =========================================================
     [MGYM-MOBILE-CONFIG-016]
     Ajustes extra para pantallas muy pequeñas
     Función:
     - Reduce tamaños en móviles estrechos.
     ========================================================= */

  @media (max-width: 390px) {
    .configuracion_bloque_1__title {
      font-size: 34px !important;
    }

    .mgym-plan-config-card__title,
    .mgym-config-plan-carbon-block__title,
    .mgym-meso-config-v270__hero-title h3,
    .mgym-training-logic-head .cardTitle,
    .mgym-clean-section-title h3 {
      font-size: 23px !important;
    }

    .mgym-config-flow-card {
      flex-basis: 82% !important;
      max-width: 82% !important;
    }

    .mgym-meso-config-v270__card,
    .mgym-clean-routine-item {
      flex-basis: 92% !important;
      max-width: 92% !important;
    }

    .mgym-config-plan-carbon-block__info-boxes {
      grid-template-columns: 1fr !important;
    }
  }
}

/* =========================================================
   [MGYM-MOBILE-CONFIG-017]
   Fin del CSS móvil de Configuración
   ========================================================= */
   
   
   /* [MGYM-GLOBAL-METHOD-SAVE-BTN-001-G]
   Estado guardando */
html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn[data-mgym-method-save-state="saving"] {
  opacity: 0.84 !important;
  pointer-events: none !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn[data-mgym-method-save-state="saving"]::after {
  content: "" !important;
  width: 13px !important;
  height: 13px !important;

  border: 2px solid rgba(243,244,246,0.32) !important;
  border-top-color: #F3F4F6 !important;
  border-radius: 999px !important;

  animation: mgymGlobalMethodSpin 0.75s linear infinite !important;
}

/* [MGYM-GLOBAL-METHOD-SAVE-BTN-001-H]
   Animación mínima de cambio de estado */
html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn.mgym-method-save-bump {
  animation: mgymGlobalMethodBump 0.24s ease-out both !important;
}

@keyframes mgymGlobalMethodSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes mgymGlobalMethodBump {
  0% {
    transform: scale(0.995);
    filter: brightness(0.98);
  }

  60% {
    transform: scale(1.004);
    filter: brightness(1.045);
  }

  100% {
    transform: scale(1);
    filter: brightness(1);
  }
}

/* [MGYM-GLOBAL-METHOD-SAVE-BTN-001-END] */

/* =========================================================
   [MGYM-GLOBAL-METHOD-SAVE-SOFT-002-START]
   BLOQUE: Botón Guardar lógica global · versión estable
   OBJETIVO:
   - Quitar movimientos bruscos
   - Mantener estilo gris metalizado
   - Evitar saltos al cambiar de estado
   ========================================================= */

/* [MGYM-GLOBAL-METHOD-SAVE-SOFT-002-A]
   Botón estable sin salto */
html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn,
html body .mgym-html-config-page #mgymTrainingLogicBlock button[data-mgym-save-global-method] {
  transform: none !important;
  animation: none !important;
  transition:
    border-color 0.18s ease,
    background 0.18s ease,
    opacity 0.18s ease,
    filter 0.18s ease !important;
}

/* [MGYM-GLOBAL-METHOD-SAVE-SOFT-002-B]
   Hover muy suave */
html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn:hover,
html body .mgym-html-config-page #mgymTrainingLogicBlock button[data-mgym-save-global-method]:hover {
  transform: none !important;
  filter: brightness(1.025) !important;
}

/* [MGYM-GLOBAL-METHOD-SAVE-SOFT-002-C]
   Click sin salto */
html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn:active,
html body .mgym-html-config-page #mgymTrainingLogicBlock button[data-mgym-save-global-method]:active {
  transform: none !important;
}

/* [MGYM-GLOBAL-METHOD-SAVE-SOFT-002-D]
   Desactivamos bump anterior */
html body .mgym-html-config-page #mgymTrainingLogicBlock #mgymSaveGlobalMethodBtn.mgym-method-save-bump {
  animation: none !important;
}

/* [MGYM-GLOBAL-METHOD-SAVE-SOFT-002-END] */

/* =========================================================
   [MGYM-MESO-INHERIT-GLOBAL-METHOD-STYLE-001-START]
   BLOQUE: Visual Heredado / Personalizado en Mesociclos
   OBJETIVO:
   - Mostrar estado de herencia dentro de cada mesociclo
   - Botón Personalizar / Volver a heredar
   - Bloquear visualmente campos heredados
   ========================================================= */

.mgym-meso-inheritance-tools {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;

  width: 100% !important;
  margin-top: 12px !important;
  padding: 10px 12px !important;

  background: rgba(17, 17, 17, 0.62) !important;
  border: 1px solid rgba(163, 164, 165, 0.16) !important;
  border-radius: 14px !important;
}

.mgym-meso-inheritance-tools__badge {
  display: inline-flex !important;
  align-items: center !important;

  color: #A3A4A5 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.mgym-meso-inheritance-tools__actions {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
}

.mgym-meso-inheritance-tools__btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 34px !important;
  padding: 0 12px !important;

  background:
    linear-gradient(180deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04), rgba(0,0,0,0.18)),
    linear-gradient(135deg, #4B4F55, #2F3237) !important;

  border: 1px solid rgba(163, 164, 165, 0.42) !important;
  border-radius: 999px !important;

  color: #F3F4F6 !important;
  font-size: 11px !important;
  font-weight: 800 !important;

  cursor: pointer !important;
}

.mgym-meso-inheritance-tools__btn:hover {
  filter: brightness(1.04) !important;
  border-color: rgba(243, 244, 246, 0.62) !important;
}

[data-mgym-meso-inheritance-mode="inherited"] .mgym-meso-inherited-field[data-mgym-inheritance-lock="1"] {
  opacity: 0.72 !important;
  pointer-events: none !important;
}

[data-mgym-meso-inheritance-mode="custom"] .mgym-meso-inheritance-tools {
  border-color: rgba(243, 244, 246, 0.28) !important;
}

[data-mgym-meso-inheritance-mode="custom"] .mgym-meso-inheritance-tools__badge {
  color: #F3F4F6 !important;
}

/* [MGYM-MESO-INHERIT-GLOBAL-METHOD-STYLE-001-END] */

/* =========================================================
   [MGYM-MESO-INHERIT-GLOBAL-METHOD-STYLE-002-START]
   BLOQUE: Estado visual Heredado / Personalizado
   OBJETIVO:
   - Mostrar badge de estado sin crear botones duplicados
   - Diferenciar mesociclos heredados y personalizados
   ========================================================= */

.mgym-meso-inheritance-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: fit-content !important;
  max-width: 100% !important;

  margin-top: 10px !important;
  padding: 7px 10px !important;

  background: rgba(17, 17, 17, 0.62) !important;
  border: 1px solid rgba(163, 164, 165, 0.18) !important;
  border-radius: 999px !important;

  color: #A3A4A5 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

[data-mgym-meso-inheritance-mode="custom"] .mgym-meso-inheritance-badge {
  color: #F3F4F6 !important;
  border-color: rgba(243, 244, 246, 0.34) !important;
}

[data-mgym-meso-inheritance-mode="inherited"] .mgym-meso-field-is-inherited {
  opacity: 0.72 !important;
}

/* [MGYM-MESO-INHERIT-GLOBAL-METHOD-STYLE-002-END] */
/* =========================================================
   [MGYM-MESO-UNLOCK-FIELDS-008-CSS-START]
   BLOQUE: Desbloqueo visual definitivo campos mesociclo
   OBJETIVO:
   - Anular bloqueos anteriores por pointer-events none
   - Permitir abrir selects de método/sistema/técnica
   ========================================================= */

html body .mgym-html-config-page [data-mgym-inheritance-lock],
html body .mgym-html-config-page [data-mgym-hardfix-lock],
html body .mgym-html-config-page .mgym-meso-field-is-inherited,
html body .mgym-html-config-page .mgym-meso-inherited-field {
  pointer-events: auto !important;
  opacity: 1 !important;
}

html body .mgym-html-config-page select,
html body .mgym-html-config-page input,
html body .mgym-html-config-page textarea {
  pointer-events: auto !important;
}

/* [MGYM-MESO-UNLOCK-FIELDS-008-CSS-END] */



/* ============================================================
   [MGYM-MESO-STRUCTURE-PANEL-CSS-V270E5-START]
   Bloque: Mesociclos y estructura del trabajo
   Función:
   - Dar estilo al HTML elegido por el usuario.
   - Mantener estética oscura premium MacroGym.
   - Evitar que los SVG se agranden.
   - No tocar lógica JS.
   - No afectar al Bloque 1.
   ============================================================ */


/* ============================================================
   [MGYM-MESO-STRUCTURE-SCOPE-RESET-START]
   Reset encapsulado para evitar choques con estilos globales.
   ============================================================ */

#mgymMesoStructurePanel,
#mgymMesoStructurePanel * {
	box-sizing: border-box;
}

#mgymMesoStructurePanel svg {
	display: block;
	width: 18px;
	height: 18px;
	max-width: 18px;
	max-height: 18px;
	flex: 0 0 auto;
}

#mgymMesoStructurePanel button,
#mgymMesoStructurePanel select,
#mgymMesoStructurePanel input {
	font: inherit;
}

/* ============================================================
   [MGYM-MESO-STRUCTURE-SCOPE-RESET-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-STRUCTURE-MAIN-START]
   Contenedor principal.
   ============================================================ */

#mgymMesoStructurePanel.mgym-meso-structure-panel {
	width: 100%;
	margin: 24px 0 34px;
	padding: 22px;
	position: relative;
	overflow: hidden;
	color: #F3F4F6;
	border-radius: 28px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	background:
		radial-gradient(circle at 8% 0%, rgba(255, 255, 255, 0.075), transparent 34%),
		radial-gradient(circle at 94% 4%, rgba(168, 220, 87, 0.045), transparent 30%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
		linear-gradient(180deg, rgba(21, 24, 28, 0.98), rgba(7, 7, 7, 0.98));
	box-shadow:
		0 24px 70px rgba(0, 0, 0, 0.46),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

#mgymMesoStructurePanel.mgym-meso-structure-panel::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.025), transparent 24%, transparent 76%, rgba(255, 255, 255, 0.018)),
		radial-gradient(circle at 50% 120%, rgba(75, 85, 99, 0.18), transparent 44%);
	opacity: 0.9;
}

#mgymMesoStructurePanel > * {
	position: relative;
	z-index: 1;
}

/* ============================================================
   [MGYM-MESO-STRUCTURE-MAIN-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-STRUCTURE-HEADER-START]
   Cabecera.
   ============================================================ */

.mgym-meso-structure-panel__header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 18px;
	padding-bottom: 17px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mgym-meso-structure-panel__header-icon {
	width: 46px;
	height: 46px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	border: 1px solid rgba(255, 255, 255, 0.13);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.025)),
		#111315;
	color: #D1D5DB;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10);
}

.mgym-meso-structure-panel__header-icon svg {
	width: 21px !important;
	height: 21px !important;
	max-width: 21px !important;
	max-height: 21px !important;
}

.mgym-meso-structure-panel__header h3 {
	margin: 0 0 5px;
	color: #F9FAFB;
	font-size: clamp(19px, 2.1vw, 26px);
	font-weight: 950;
	line-height: 1.05;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.mgym-meso-structure-panel__header p {
	margin: 0;
	max-width: 850px;
	color: #A3A4A5;
	font-size: 14px;
	line-height: 1.45;
}

/* ============================================================
   [MGYM-MESO-STRUCTURE-HEADER-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-PANEL-CARD-START]
   Tarjetas internas.
   ============================================================ */

.mgym-meso-panel-card {
	margin-top: 14px;
	padding: 16px;
	border-radius: 22px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.036), rgba(255, 255, 255, 0.012)),
		rgba(10, 12, 14, 0.62);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.mgym-meso-panel-card--availability {
	margin-top: 0;
}

.mgym-meso-panel-card__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 14px;
}

.mgym-meso-panel-card__title--row {
	justify-content: space-between;
}

.mgym-meso-panel-card__title-icon {
	color: #9CA3AF;
}

.mgym-meso-panel-card__title h4 {
	margin: 0;
	color: #F3F4F6;
	font-size: 14px;
	font-weight: 950;
	line-height: 1.2;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.mgym-meso-panel-card__title h4 span {
	color: #9CA3AF;
	font-weight: 800;
}

/* ============================================================
   [MGYM-MESO-PANEL-CARD-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-AVAILABILITY-START]
   Disponibilidad y días.
   ============================================================ */

.mgym-meso-availability-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(130px, 0.55fr)) minmax(260px, 1.35fr) minmax(160px, 0.7fr);
	gap: 12px;
	align-items: stretch;
}

.mgym-meso-info-badge {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 70px;
	padding: 13px;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
		#101214;
}

.mgym-meso-info-badge__icon {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.035);
	font-size: 16px;
}

.mgym-meso-info-badge strong {
	display: block;
	margin-bottom: 2px;
	color: #F9FAFB;
	font-size: 14px;
	font-weight: 950;
	line-height: 1.15;
}

.mgym-meso-info-badge span {
	display: block;
	color: #9CA3AF;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.2;
}

.mgym-meso-days-selector {
	min-height: 70px;
	padding: 12px;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
		#101214;
}

.mgym-meso-days-selector__label {
	display: block;
	margin-bottom: 8px;
	color: #9CA3AF;
	font-size: 10px;
	font-weight: 950;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mgym-meso-days-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.mgym-meso-day-pill {
	min-width: 42px;
	min-height: 34px;
	padding: 0 9px;
	border-radius: 11px;
	border: 1px solid rgba(255, 255, 255, 0.11);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.01)),
		#111315;
	color: #D1D5DB;
	font-size: 12px;
	font-weight: 900;
	cursor: pointer;
	transition:
		transform 0.15s ease,
		border-color 0.15s ease,
		background 0.15s ease,
		color 0.15s ease;
}

.mgym-meso-day-pill:hover {
	transform: translateY(-1px);
	border-color: rgba(168, 220, 87, 0.38);
	color: #F9FAFB;
}

.mgym-meso-day-pill.is-active {
	border-color: rgba(168, 220, 87, 0.65);
	background:
		linear-gradient(180deg, rgba(168, 220, 87, 0.18), rgba(168, 220, 87, 0.08)),
		#121611;
	color: #F3F4F6;
	box-shadow:
		0 0 0 1px rgba(168, 220, 87, 0.11),
		0 8px 20px rgba(168, 220, 87, 0.045);
}

.mgym-meso-days-completed {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 70px;
	padding: 13px;
	border-radius: 18px;
	border: 1px solid rgba(168, 220, 87, 0.28);
	background: rgba(168, 220, 87, 0.08);
	color: #A8DC57;
}

.mgym-meso-days-completed span {
	display: block;
	margin-bottom: 4px;
	font-size: 11px;
	font-weight: 950;
	line-height: 1.2;
}

.mgym-meso-days-completed strong {
	display: block;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.2;
}

/* ============================================================
   [MGYM-MESO-AVAILABILITY-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-ROUTINE-BAR-START]
   Selector tipo rutina.
   ============================================================ */

.mgym-meso-routine-bar {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 12px;
	padding: 12px;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.01)),
		#101214;
}

.mgym-meso-routine-bar__icon {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.035);
	color: #9CA3AF;
	font-weight: 900;
}

.mgym-meso-routine-bar__content {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
	min-width: 0;
}

.mgym-meso-routine-bar__content label {
	color: #9CA3AF;
	font-size: 12px;
	font-weight: 900;
	white-space: nowrap;
}

.mgym-meso-routine-select {
	width: 100%;
	min-height: 40px;
	padding: 0 12px;
	border-radius: 13px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
		#111315;
	color: #F3F4F6;
	font-size: 13px;
	font-weight: 850;
	outline: none;
}

.mgym-meso-routine-select:focus {
	border-color: rgba(168, 220, 87, 0.68);
	box-shadow: 0 0 0 3px rgba(168, 220, 87, 0.11);
}

/* ============================================================
   [MGYM-MESO-ROUTINE-BAR-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-WEEKLY-FLOW-START]
   Asignación semanal.
   ============================================================ */

.mgym-meso-weekly-flow {
	display: flex;
	align-items: stretch;
	gap: 10px;
	overflow-x: auto;
	padding-bottom: 2px;
}

.mgym-meso-flow-node {
	min-width: 150px;
	flex: 1 0 150px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 13px;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.036), rgba(255, 255, 255, 0.012)),
		#101214;
}

.mgym-meso-flow-node__icon {
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	border-radius: 14px;
	font-size: 15px;
	font-weight: 950;
}

.mgym-meso-flow-node.is-torso .mgym-meso-flow-node__icon {
	border: 1px solid rgba(168, 220, 87, 0.28);
	background: rgba(168, 220, 87, 0.09);
	color: #A8DC57;
}

.mgym-meso-flow-node.is-leg .mgym-meso-flow-node__icon {
	border: 1px solid rgba(96, 165, 250, 0.28);
	background: rgba(96, 165, 250, 0.09);
	color: #60A5FA;
}

.mgym-meso-flow-node span {
	display: block;
	margin-bottom: 4px;
	color: #9CA3AF;
	font-size: 11px;
	font-weight: 900;
	line-height: 1.1;
}

.mgym-meso-flow-node strong {
	display: block;
	color: #F9FAFB;
	font-size: 14px;
	font-weight: 950;
	line-height: 1.1;
}

.mgym-meso-flow-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	color: #4B5563;
	font-size: 18px;
	font-weight: 950;
}

/* ============================================================
   [MGYM-MESO-WEEKLY-FLOW-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-INHERITANCE-START]
   Herencia global.
   ============================================================ */

.mgym-meso-inheritance-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 10px;
}

.mgym-meso-inheritance-item {
	min-height: 58px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 12px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.025);
}

.mgym-meso-inheritance-item span {
	display: block;
	margin-bottom: 5px;
	color: #9CA3AF;
	font-size: 10px;
	font-weight: 950;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mgym-meso-inheritance-item strong {
	display: block;
	color: #F3F4F6;
	font-size: 13px;
	font-weight: 950;
	line-height: 1.2;
}

.mgym-meso-inheritance-item.is-active strong {
	color: #A8DC57;
}

.mgym-meso-inheritance-divider {
	width: 1px;
	height: 34px;
	background: rgba(255, 255, 255, 0.08);
}

/* ============================================================
   [MGYM-MESO-INHERITANCE-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-BOTTOM-GRID-START]
   Columnas inferiores.
   ============================================================ */

.mgym-meso-bottom-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
	gap: 14px;
	margin-top: 14px;
}

.mgym-meso-panel-card--bottom {
	margin-top: 0;
	min-height: 260px;
}

.mgym-meso-view-all {
	color: #9CA3AF;
	font-size: 12px;
	font-weight: 850;
	text-decoration: none;
	transition: color 0.16s ease;
}

.mgym-meso-view-all:hover {
	color: #A8DC57;
}

/* ============================================================
   [MGYM-MESO-BOTTOM-GRID-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-CARDS-START]
   Tarjetas de mesociclos.
   ============================================================ */

.mgym-meso-cards-track {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.mgym-meso-card {
	position: relative;
	min-height: 190px;
	padding: 15px;
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
		#101214;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.mgym-meso-card.is-active {
	border-color: rgba(96, 165, 250, 0.30);
	box-shadow:
		0 0 0 1px rgba(96, 165, 250, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.mgym-meso-card.is-locked {
	opacity: 0.72;
}

.mgym-meso-card__badge,
.mgym-meso-card__lock {
	position: absolute;
	top: 12px;
	right: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	padding: 0 8px;
	border-radius: 999px;
	border: 1px solid rgba(96, 165, 250, 0.32);
	background: rgba(96, 165, 250, 0.10);
	color: #60A5FA;
	font-size: 10px;
	font-weight: 950;
	text-transform: uppercase;
}

.mgym-meso-card__lock {
	border-color: rgba(255, 255, 255, 0.10);
	background: rgba(255, 255, 255, 0.035);
	color: #9CA3AF;
}

.mgym-meso-card h5 {
	margin: 28px 0 4px;
	color: #F9FAFB;
	font-size: 15px;
	font-weight: 950;
	line-height: 1.15;
}

.mgym-meso-card p {
	margin: 0 0 18px;
	color: #9CA3AF;
	font-size: 12px;
	font-weight: 750;
}

.mgym-meso-card__duration {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 16px;
	color: #A3A4A5;
	font-size: 11px;
	font-weight: 800;
}

.mgym-meso-card__progress {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: auto;
}

.mgym-meso-card__progress-bg {
	flex: 1;
	height: 7px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	overflow: hidden;
}

.mgym-meso-card__progress-fill {
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #60A5FA, #A8DC57);
}

.mgym-meso-card__progress strong {
	color: #D1D5DB;
	font-size: 11px;
	font-weight: 950;
}

/* ============================================================
   [MGYM-MESO-CARDS-END]
   ============================================================ */


/* ============================================================
   [MGYM-CURRENT-MICROCYCLE-START]
   Microciclo actual.
   ============================================================ */

.mgym-current-microcycle {
	display: grid;
	grid-template-columns: 1fr;
	gap: 7px;
}

.mgym-current-microcycle__row {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 32px;
	padding: 7px 10px;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.065);
	background: rgba(255, 255, 255, 0.025);
}

.mgym-current-microcycle__row span {
	color: #9CA3AF;
	font-size: 11px;
	font-weight: 950;
	text-transform: uppercase;
}

.mgym-current-microcycle__row strong {
	color: #F3F4F6;
	font-size: 12px;
	font-weight: 900;
}

.mgym-current-microcycle__row em {
	font-style: normal;
	font-size: 12px;
	font-weight: 950;
}

.mgym-current-microcycle__row.is-training em {
	color: #A8DC57;
}

.mgym-current-microcycle__row.is-rest {
	opacity: 0.68;
}

.mgym-current-microcycle__row.is-rest em {
	color: #9CA3AF;
}

/* ============================================================
   [MGYM-CURRENT-MICROCYCLE-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-STRUCTURE-RESPONSIVE-START]
   Responsive.
   ============================================================ */

@media (max-width: 1180px) {
	.mgym-meso-availability-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mgym-meso-days-selector,
	.mgym-meso-days-completed {
		grid-column: span 3;
	}

	.mgym-meso-bottom-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 880px) {
	.mgym-meso-inheritance-grid {
		grid-template-columns: 1fr;
	}

	.mgym-meso-inheritance-divider {
		display: none;
	}

	.mgym-meso-cards-track {
		grid-template-columns: 1fr;
	}

	.mgym-meso-weekly-flow {
		display: grid;
		grid-template-columns: 1fr;
	}

	.mgym-meso-flow-arrow {
		display: none;
	}
}

@media (max-width: 620px) {
	#mgymMesoStructurePanel.mgym-meso-structure-panel {
		margin: 18px 0 28px;
		padding: 14px;
		border-radius: 22px;
	}

	.mgym-meso-structure-panel__header {
		align-items: flex-start;
	}

	.mgym-meso-structure-panel__header-icon {
		width: 40px;
		height: 40px;
		border-radius: 14px;
	}

	.mgym-meso-availability-grid {
		grid-template-columns: 1fr;
	}

	.mgym-meso-days-selector,
	.mgym-meso-days-completed {
		grid-column: auto;
	}

	.mgym-meso-routine-bar,
	.mgym-meso-routine-bar__content {
		align-items: stretch;
		flex-direction: column;
	}

	.mgym-meso-days-pills {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mgym-meso-day-pill {
		width: 100%;
		min-width: 0;
	}

	.mgym-meso-panel-card {
		padding: 13px;
		border-radius: 19px;
	}
}

/* ============================================================
   [MGYM-MESO-STRUCTURE-RESPONSIVE-END]
   ============================================================ */


/* ============================================================
   [MGYM-MESO-STRUCTURE-PANEL-CSS-V270E5-END]
   ============================================================ */
   
   /* ============================================================
   [MGYM-MESO-STRUCTURE-V270E18-CSS-START]
   Estilo visual del bloque:
   - Mesociclos y estructura del trabajo
   - Constructor de semana tipo
   - Mesociclos configurables
   ============================================================ */

#mgymConfigCleanPlanner,
#mgymMesoStructurePanel,
#mgymWeeklyConstructorV270E7,
#mgymMesoConfigurableCarouselV270E7 {
	box-sizing: border-box;
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
}

#mgymConfigCleanPlanner *,
#mgymMesoStructurePanel *,
#mgymWeeklyConstructorV270E7 *,
#mgymMesoConfigurableCarouselV270E7 * {
	box-sizing: border-box;
}

/* Contenedor principal */
#mgymMesoStructurePanel {
	margin-top: 32px;
	margin-bottom: 42px;
	padding: 24px;
	border-radius: 30px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	background:
		radial-gradient(circle at 8% 0%, rgba(168, 220, 87, 0.08), transparent 34%),
		radial-gradient(circle at 94% 12%, rgba(96, 165, 250, 0.06), transparent 32%),
		linear-gradient(180deg, rgba(24, 26, 29, 0.98), rgba(8, 8, 8, 0.98));
	color: #F3F4F6;
	box-shadow:
		0 24px 70px rgba(0, 0, 0, 0.45),
		inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

/* Cabecera del bloque */
.mgym-meso-structure-panel__header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
	padding-bottom: 18px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mgym-meso-structure-panel__header-icon {
	width: 46px;
	height: 46px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	border-radius: 17px;
	border: 1px solid rgba(168, 220, 87, 0.32);
	background:
		linear-gradient(180deg, rgba(168, 220, 87, 0.12), rgba(168, 220, 87, 0.04)),
		rgba(255, 255, 255, 0.025);
	color: #A8DC57;
}

.mgym-meso-structure-panel__icon {
	width: 23px;
	height: 23px;
}

.mgym-meso-structure-panel__header h3 {
	margin: 0 0 6px;
	color: #F9FAFB;
	font-size: clamp(20px, 2.2vw, 28px);
	font-weight: 950;
	line-height: 1.08;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.mgym-meso-structure-panel__header p {
	margin: 0;
	color: #A3A4A5;
	font-size: 13px;
	line-height: 1.45;
}

/* Constructor semanal y mesociclos */
#mgymWeeklyConstructorV270E7,
#mgymMesoConfigurableCarouselV270E7 {
	margin-top: 20px;
	padding: 20px;
	border-radius: 26px;
	border: 1px solid rgba(255, 255, 255, 0.09);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
		rgba(10, 12, 14, 0.78);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.055),
		0 18px 46px rgba(0, 0, 0, 0.25);
}

/* Headers internos */
.mgym-weekly-constructor-v270e7__header,
.mgym-meso-configurable-carousel-v270e7__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 16px;
	padding-bottom: 15px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.mgym-weekly-constructor-v270e7__header h4,
.mgym-meso-configurable-carousel-v270e7__header h4 {
	margin: 0 0 6px;
	color: #F9FAFB;
	font-size: 20px;
	font-weight: 950;
	line-height: 1.12;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.mgym-weekly-constructor-v270e7__header p,
.mgym-meso-configurable-carousel-v270e7__header p {
	margin: 0;
	color: #A3A4A5;
	font-size: 13px;
	line-height: 1.45;
}

/* Estados */
.mgym-weekly-constructor-v270e7__status,
.mgym-meso-config-status-v270e7 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 14px;
	border-radius: 999px;
	border: 1px solid rgba(251, 191, 36, 0.35);
	background: rgba(251, 191, 36, 0.08);
	color: #FBBF24;
	font-size: 12px;
	font-weight: 950;
	white-space: nowrap;
}

.mgym-weekly-constructor-v270e7__status.is-confirmed,
.mgym-meso-config-status-v270e7.is-saved {
	border-color: rgba(168, 220, 87, 0.45);
	background: rgba(168, 220, 87, 0.10);
	color: #A8DC57;
}

/* Resumen heredado */
.mgym-weekly-inherited-v270e7,
.mgym-meso-config-grid-v270e7 {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-bottom: 16px;
}

.mgym-weekly-inherited-v270e7 > div,
.mgym-meso-config-grid-v270e7 > div {
	min-height: 70px;
	padding: 13px;
	border-radius: 17px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
		#101214;
}

.mgym-weekly-inherited-v270e7 span,
.mgym-meso-config-grid-v270e7 span {
	display: block;
	margin-bottom: 7px;
	color: #9CA3AF;
	font-size: 10px;
	font-weight: 950;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.mgym-weekly-inherited-v270e7 strong,
.mgym-meso-config-grid-v270e7 strong {
	display: block;
	color: #F3F4F6;
	font-size: 14px;
	font-weight: 950;
	line-height: 1.2;
}

/* Layout del constructor */
.mgym-weekly-constructor-v270e7__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
	gap: 16px;
	align-items: stretch;
}

.mgym-weekly-constructor-v270e7__left {
	display: grid;
	gap: 14px;
}

.mgym-weekly-constructor-v270e7__box,
.mgym-weekly-preview-v270e7,
.mgym-meso-slide-v270e7,
.mgym-micro-slide-v270e7 {
	padding: 16px;
	border-radius: 22px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
		rgba(8, 10, 12, 0.72);
}

/* Títulos internos */
.mgym-weekly-constructor-v270e7__box h5,
.mgym-weekly-preview-v270e7 h5,
.mgym-meso-slide-v270e7__head h5,
.mgym-micro-slide-v270e7 h6 {
	margin: 0 0 6px;
	color: #F9FAFB;
	font-weight: 950;
	line-height: 1.15;
}

.mgym-weekly-constructor-v270e7__box h5,
.mgym-weekly-preview-v270e7 h5 {
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.mgym-meso-slide-v270e7__head h5 {
	font-size: 17px;
}

.mgym-micro-slide-v270e7 h6 {
	font-size: 15px;
}

.mgym-weekly-constructor-v270e7__box p,
.mgym-weekly-preview-v270e7 p,
.mgym-meso-slide-v270e7__head p,
.mgym-micro-slide-v270e7 p {
	margin: 0 0 12px;
	color: #A3A4A5;
	font-size: 13px;
	line-height: 1.45;
}

/* Días del constructor */
.mgym-weekly-days-v270e7 {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 8px;
	margin-bottom: 12px;
}

.mgym-weekly-day-v270e7 {
	min-height: 42px;
	border-radius: 14px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
		#111315;
	color: #D1D5DB;
	font-size: 12px;
	font-weight: 950;
	cursor: pointer;
	transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.mgym-weekly-day-v270e7:hover {
	transform: translateY(-1px);
	border-color: rgba(168, 220, 87, 0.42);
}

/* [MGYM-WEEKLY-DAY-SELECTION-V270E38-CSS-START]
   Días seleccionados realmente visibles y clicables. */
.mgym-weekly-day-v270e7.is-active {
	border-color: rgba(168, 220, 87, 0.95);
	background:
		linear-gradient(135deg, #a8dc57 0%, #c8ff6d 100%);
	color: #101010;
	box-shadow:
		0 10px 24px rgba(168, 220, 87, 0.22),
		inset 0 1px 0 rgba(255,255,255,0.28);
}

.mgym-weekly-day-v270e7.is-locked:not(.is-active) {
	opacity: 0.72;
	cursor: pointer;
}

.mgym-weekly-day-v270e7.is-locked:not(.is-active)::after {
	content: "cambiar";
	display: block;
	margin-top: 2px;
	font-size: 8px;
	font-weight: 900;
	letter-spacing: 0.04em;
	color: #9CA3AF;
	text-transform: uppercase;
}

.mgym-weekly-day-v270e7.is-shake {
	animation: mgymWeeklyDayShakeV270E38 .34s ease;
}

@keyframes mgymWeeklyDayShakeV270E38 {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-4px); }
	50% { transform: translateX(4px); }
	75% { transform: translateX(-3px); }
}
/* [MGYM-WEEKLY-DAY-SELECTION-V270E38-CSS-END] */

/* Selects */
.mgym-weekly-label-v270e7 {
	display: block;
	margin-bottom: 8px;
	color: #9CA3AF;
	font-size: 10px;
	font-weight: 950;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.mgym-weekly-select-v270e7 {
	width: 100%;
	min-height: 46px;
	padding: 0 14px;
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: #111315;
	color: #F3F4F6;
	font-weight: 850;
	outline: none;
}

.mgym-weekly-select-v270e7:focus {
	border-color: rgba(168, 220, 87, 0.68);
	box-shadow: 0 0 0 3px rgba(168, 220, 87, 0.10);
}

/* Compatibles */
.mgym-weekly-compatible-v270e7 {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 10px;
}

.mgym-weekly-compatible-v270e7 span {
	width: 100%;
	color: #9CA3AF;
	font-size: 11px;
}

.mgym-weekly-compatible-v270e7 strong {
	padding: 7px 10px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	background: rgba(255, 255, 255, 0.035);
	color: #D1D5DB;
	font-size: 11px;
	font-weight: 850;
}

/* Semana generada */
.mgym-weekly-preview-days-v270e7,
.mgym-micro-days-v270e7 {
	display: grid;
	gap: 8px;
}

.mgym-weekly-preview-day-v270e7 {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 10px;
	align-items: center;
	min-height: 42px;
	padding: 10px 12px;
	border-radius: 14px;
	border: 1px solid rgba(255, 255, 255, 0.075);
	background: rgba(255, 255, 255, 0.025);
}

.mgym-weekly-preview-day-v270e7.is-training,
.mgym-micro-day-v270e7.is-training {
	border-color: rgba(168, 220, 87, 0.24);
	background: rgba(168, 220, 87, 0.055);
}

.mgym-weekly-preview-day-v270e7.is-rest,
.mgym-micro-day-v270e7.is-rest {
	opacity: 0.62;
}

.mgym-weekly-preview-day-v270e7 span,
.mgym-micro-day-v270e7 span {
	color: #9CA3AF;
	font-size: 12px;
	font-weight: 900;
}

.mgym-weekly-preview-day-v270e7 strong,
.mgym-micro-day-v270e7 strong {
	color: #F3F4F6;
	font-size: 13px;
	font-weight: 950;
}

/* Navegación meso/micro */
.mgym-meso-nav-v270e7,
.mgym-micro-nav-v270e7 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 14px 0;
	padding: 12px;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.025);
}

.mgym-meso-nav-v270e7__btn,
.mgym-micro-nav-v270e7__btn {
	width: 42px;
	height: 42px;
	border-radius: 14px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: #111315;
	color: #F3F4F6;
	font-size: 18px;
	font-weight: 950;
	cursor: pointer;
}

.mgym-meso-nav-v270e7__center,
.mgym-micro-nav-v270e7__center {
	text-align: center;
}

.mgym-meso-nav-v270e7__center span,
.mgym-micro-nav-v270e7__center span {
	display: block;
	margin-bottom: 4px;
	color: #9CA3AF;
	font-size: 10px;
	font-weight: 950;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.mgym-meso-nav-v270e7__center strong,
.mgym-micro-nav-v270e7__center strong {
	color: #F3F4F6;
	font-size: 14px;
	font-weight: 950;
}

/* Slides */
.mgym-meso-slide-v270e7,
.mgym-micro-slide-v270e7 {
	display: none;
}

.mgym-meso-slide-v270e7.is-active,
.mgym-micro-slide-v270e7.is-active {
	display: block;
}

.mgym-meso-slide-v270e7__head {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 14px;
}

.mgym-meso-slide-v270e7__num {
	width: 46px;
	height: 46px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	border: 1px solid rgba(96, 165, 250, 0.30);
	background: rgba(96, 165, 250, 0.08);
	color: #93C5FD;
	font-weight: 950;
}

.mgym-meso-slide-v270e7__state {
	margin-left: auto;
	padding: 8px 11px;
	border-radius: 999px;
	border: 1px solid rgba(168, 220, 87, 0.35);
	background: rgba(168, 220, 87, 0.08);
	color: #A8DC57;
	font-size: 11px;
	font-weight: 950;
	text-transform: uppercase;
}

/* Modo heredado/personalizado */
.mgym-meso-mode-v270e7 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 14px;
	padding: 14px;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.025);
}

.mgym-meso-mode-v270e7 span {
	color: #F3F4F6;
	font-size: 13px;
	font-weight: 950;
}

.mgym-meso-mode-v270e7 p {
	margin: 4px 0 0;
	color: #9CA3AF;
	font-size: 12px;
}

.mgym-meso-mode-v270e7__options {
	display: flex;
	gap: 8px;
}

.mgym-meso-mode-option-v270e7 {
	position: relative;
	cursor: pointer;
}

.mgym-meso-mode-option-v270e7 input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.mgym-meso-mode-option-v270e7 span {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 13px;
	border-radius: 13px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: #111315;
	color: #D1D5DB;
}

.mgym-meso-mode-option-v270e7 input:checked + span {
	border-color: rgba(168, 220, 87, 0.50);
	background: rgba(168, 220, 87, 0.09);
	color: #A8DC57;
}

/* Días micro */
.mgym-micro-days-v270e7 {
	grid-template-columns: repeat(7, minmax(0, 1fr));
}

.mgym-micro-day-v270e7 {
	min-height: 92px;
	padding: 10px;
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.075);
	background: rgba(255, 255, 255, 0.025);
}

.mgym-micro-day-v270e7 span {
	display: block;
	margin-bottom: 6px;
	font-size: 10px;
	text-transform: uppercase;
}

.mgym-micro-day-v270e7 strong {
	display: block;
	margin-bottom: 5px;
}

.mgym-micro-day-v270e7 small {
	color: #9CA3AF;
	font-size: 11px;
	line-height: 1.25;
}

/* Botones */
.mgym-weekly-confirm-v270e7,
.mgym-meso-save-v270e7 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 16px;
	padding: 15px;
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.025);
}

.mgym-confirm-weekly-btn-v270e7,
.mgym-save-meso-btn-v270e7 {
	min-height: 44px;
	padding: 0 18px;
	border-radius: 15px;
	border: 1px solid rgba(168, 220, 87, 0.42);
	background: rgba(168, 220, 87, 0.11);
	color: #F3F4F6;
	font-size: 13px;
	font-weight: 950;
	cursor: pointer;
	white-space: nowrap;
}

/* Responsive */
@media (max-width: 1180px) {
	.mgym-weekly-inherited-v270e7,
	.mgym-meso-config-grid-v270e7 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mgym-weekly-constructor-v270e7__grid {
		grid-template-columns: 1fr;
	}

	.mgym-micro-days-v270e7 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	#mgymMesoStructurePanel,
	#mgymWeeklyConstructorV270E7,
	#mgymMesoConfigurableCarouselV270E7 {
		padding: 14px;
		border-radius: 22px;
	}

	.mgym-meso-structure-panel__header,
	.mgym-weekly-constructor-v270e7__header,
	.mgym-meso-configurable-carousel-v270e7__header,
	.mgym-weekly-confirm-v270e7,
	.mgym-meso-save-v270e7,
	.mgym-meso-mode-v270e7 {
		flex-direction: column;
		align-items: stretch;
	}

	.mgym-weekly-inherited-v270e7,
	.mgym-meso-config-grid-v270e7,
	.mgym-micro-days-v270e7 {
		grid-template-columns: 1fr;
	}

	.mgym-weekly-days-v270e7 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mgym-weekly-preview-day-v270e7 {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   [MGYM-MESO-STRUCTURE-V270E18-CSS-END]
   ============================================================ */
   /* =========================================================
   [MGYM-TRAINING-LOGIC-BLOCK-RESPONSIVE-V270E20-START]
   MacroGym · Bloque Métodos · técnicas · progresión
   Función:
   - Cierra el layout visual del bloque en escritorio/tablet/móvil.
   - Reordena visualmente la cabecera de controles sin tocar PHP.
   - Evita scroll horizontal y desbordes en selects, métricas e imagen.
   - Mantiene preparada la base para estados futuros: recomendado/compatible/no recomendable.
   ========================================================= */

html body .mgym-html-config-page #mgymTrainingLogicBlock,
html body .mgym-html-config-page #mgymTrainingLogicBlock * {
  box-sizing: border-box !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  margin-top: 42px !important;
  padding: clamp(16px, 2.1vw, 28px) !important;
}

/* Corrige la separación global heredada que empujaba todos los hijos directos. */
html body .mgym-html-config-page #mgymTrainingLogicBlock > * {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head {
  margin-bottom: clamp(18px, 2vw, 26px) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero,
html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__content,
html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls,
html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid,
html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow,
html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
  min-width: 0 !important;
  max-width: 100% !important;
}

/* Layout escritorio: imagen compacta izquierda + panel técnico derecho. */
html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
  display: grid !important;
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr) !important;
  gap: clamp(14px, 1.8vw, 22px) !important;
  align-items: stretch !important;
  min-height: auto !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 320px !important;
  min-height: 100% !important;
  justify-self: stretch !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
  width: 100% !important;
  height: 100% !important;
  min-height: 520px !important;
  max-height: 680px !important;
  object-fit: cover !important;
}

/* Reordena visualmente la cabecera de controles: antes estaba debajo del resumen. */
html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls {
  display: grid !important;
  align-content: start !important;
  gap: 16px !important;
  min-height: 100% !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head {
  order: 1 !important;
  margin: 0 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid {
  order: 2 !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-config-summary {
  order: 3 !important;
  margin-top: 0 !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .field,
html body .mgym-html-config-page #mgymTrainingLogicBlock .field span,
html body .mgym-html-config-page #mgymTrainingLogicBlock select,
html body .mgym-html-config-page #mgymTrainingLogicBlock input,
html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow > *,
html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card {
  min-width: 0 !important;
  max-width: 100% !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock select,
html body .mgym-html-config-page #mgymTrainingLogicBlock input {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
  margin-top: clamp(16px, 2vw, 22px) !important;
}

html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card p,
html body .mgym-html-config-page #mgymTrainingLogicBlock #techniqueUseCase,
html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption span {
  overflow-wrap: anywhere !important;
}

/* Tablet: baja columnas sin romper la imagen. */
@media (max-width: 1180px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    grid-template-columns: minmax(230px, 280px) minmax(0, 1fr) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    max-width: 280px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    min-height: 500px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Móvil/tablet vertical: imagen arriba, controles debajo. */
@media (max-width: 900px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    margin-top: 30px !important;
    border-radius: 26px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-badge {
    justify-self: start !important;
    max-width: 100% !important;
    white-space: normal !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 360px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    height: 360px !important;
    min-height: 360px !important;
    max-height: 360px !important;
    object-position: center top !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Móvil real: todo en una columna cómoda, sin scroll horizontal. */
@media (max-width: 640px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    width: calc(100% - 0px) !important;
    padding: 14px !important;
    border-radius: 22px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
    font-size: clamp(28px, 9vw, 36px) !important;
    line-height: 1 !important;
    letter-spacing: -0.045em !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .muted {
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    min-height: 300px !important;
    border-radius: 20px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    padding: 12px !important;
    border-radius: 16px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls {
    padding: 12px !important;
    border-radius: 20px !important;
    gap: 12px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 12px !important;
    border-radius: 16px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-save-global {
    width: 100% !important;
    min-height: 46px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock select,
  html body .mgym-html-config-page #mgymTrainingLogicBlock input {
    min-height: 48px !important;
    font-size: 13px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow > * {
    min-height: 62px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card {
    min-height: 0 !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }
}

@media (max-width: 390px) {
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    padding: 11px !important;
    border-radius: 18px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
    font-size: 27px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    min-height: 260px !important;
    height: 260px !important;
    max-height: 260px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption span {
    display: none !important;
  }
}

/* [MGYM-TRAINING-LOGIC-BLOCK-RESPONSIVE-V270E20-END] */
/* =========================================================
   [MGYM-TRAINING-LOGIC-BLOCK-MOBILE-PREMIUM-V270E21-START]
   MacroGym · Diseño móvil premium para bloque Métodos · técnicas · progresión
   Función:
   - Aplica al bloque real el diseño móvil tipo app premium.
   - Mantiene escritorio intacto.
   - No introduce phone mockup, notch ni barra de estado.
   - Convierte el bloque en una interfaz móvil compacta tipo widget.
   - Usa negro carbón, glass cards y acento verde #A3FF33.
   ========================================================= */

@media (max-width: 640px) {

  /* =========================
     [V270E21-01] Variables locales del bloque móvil
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock {
    --mgym-mobile-bg-main: #141416;
    --mgym-mobile-bg-page: #0b0c0e;
    --mgym-mobile-card: rgba(30, 31, 36, 0.94);
    --mgym-mobile-card-soft: rgba(44, 44, 46, 0.72);
    --mgym-mobile-input: #232326;
    --mgym-mobile-input-focus: #2d2d30;
    --mgym-mobile-text: #ffffff;
    --mgym-mobile-muted: #8e8e93;
    --mgym-mobile-muted-2: #636366;
    --mgym-mobile-accent: #A3FF33;
    --mgym-mobile-border: rgba(255, 255, 255, 0.08);
    --mgym-mobile-border-hover: rgba(255, 255, 255, 0.18);

    width: 100% !important;
    max-width: 100% !important;
    margin-top: 26px !important;
    padding: 18px 16px 24px !important;
    border-radius: 30px !important;
    overflow: hidden !important;

    color: var(--mgym-mobile-text) !important;
    background:
      radial-gradient(at 0% 0%, rgba(163, 255, 51, 0.045) 0, transparent 48%),
      radial-gradient(at 100% 100%, rgba(255, 255, 255, 0.035) 0, transparent 46%),
      linear-gradient(135deg, #15161a 0%, #0e0f11 100%) !important;

    border: 1px solid var(--mgym-mobile-border) !important;
    box-shadow:
      0 18px 46px rgba(0, 0, 0, 0.48),
      inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
  }

  /* =========================
     [V270E21-02] Reset interno seguro del bloque
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock,
  html body .mgym-html-config-page #mgymTrainingLogicBlock * {
    box-sizing: border-box !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock > * {
    max-width: 100% !important;
  }

  /* =========================
     [V270E21-03] Cabecera móvil tipo widget premium
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-badge {
    justify-self: start !important;
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: 100% !important;

    padding: 4px 11px !important;
    border-radius: 999px !important;

    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: 0.055em !important;
    text-transform: uppercase !important;

    color: #000000 !important;
    background: var(--mgym-mobile-accent) !important;
    border: 1px solid rgba(163, 255, 51, 0.45) !important;
    box-shadow: 0 4px 14px rgba(163, 255, 51, 0.16) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
    margin: 4px 0 4px !important;
    font-size: 25px !important;
    font-weight: 950 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.035em !important;
    color: #ffffff !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .muted {
    max-width: 100% !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: var(--mgym-mobile-muted) !important;
  }

  /* =========================
     [V270E21-04] Layout principal: una columna tipo app
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    align-items: start !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* =========================
     [V270E21-05] Tarjeta visual superior estilo method visualizer
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 235px !important;
    height: 235px !important;
    overflow: hidden !important;

    border-radius: 24px !important;
    background:
      linear-gradient(135deg, rgba(30, 31, 36, 0.96) 0%, rgba(20, 20, 22, 0.96) 100%) !important;

    border: 1px solid var(--mgym-mobile-border) !important;
    box-shadow:
      0 12px 30px rgba(0, 0, 0, 0.32),
      inset 0 1px 0 rgba(255, 255, 255, 0.055) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
    width: 100% !important;
    height: 100% !important;
    min-height: 235px !important;
    max-height: 235px !important;
    object-fit: cover !important;
    object-position: center center !important;
    opacity: 0.20 !important;
    filter: grayscale(1) contrast(1.15) brightness(0.72) !important;
  }

  /* Anillo HUD decorativo tipo app premium. */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media::before {
    content: "" !important;
    position: absolute !important;
    z-index: 2 !important;
    left: 50% !important;
    top: 38% !important;
    transform: translate(-50%, -50%) !important;

    width: 132px !important;
    height: 132px !important;
    border-radius: 50% !important;

    background:
      radial-gradient(circle at center, rgba(20, 20, 22, 0.96) 0 48%, transparent 49%),
      conic-gradient(
        from -90deg,
        var(--mgym-mobile-accent) 0 286deg,
        rgba(255, 255, 255, 0.06) 286deg 360deg
      ) !important;

    box-shadow:
      0 0 22px rgba(163, 255, 51, 0.18),
      inset 0 0 0 1px rgba(255, 255, 255, 0.04) !important;
  }

  /* Texto central del HUD. */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media::after {
    content: "80%\A AJUSTE" !important;
    white-space: pre !important;
    position: absolute !important;
    z-index: 3 !important;
    left: 50% !important;
    top: 38% !important;
    transform: translate(-50%, -50%) !important;

    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    text-align: center !important;
    letter-spacing: -0.02em !important;
    color: #ffffff !important;
  }

  /* Caption inferior de la tarjeta visual. */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption {
    position: absolute !important;
    z-index: 4 !important;
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;

    padding: 13px 14px !important;
    border-radius: 16px !important;

    background: var(--mgym-mobile-input) !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.38) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption strong,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption b {
    display: block !important;
    margin-bottom: 3px !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__caption span {
    display: block !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: var(--mgym-mobile-muted) !important;
    overflow-wrap: anywhere !important;
  }

  /* =========================
     [V270E21-06] Panel de controles estilo app
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls {
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px 16px !important;
    border-radius: 24px !important;

    background:
      linear-gradient(135deg, rgba(30, 31, 36, 0.96) 0%, rgba(20, 20, 22, 0.96) 100%) !important;

    border: 1px solid var(--mgym-mobile-border) !important;
    box-shadow:
      0 12px 30px rgba(0, 0, 0, 0.32),
      inset 0 1px 0 rgba(255, 255, 255, 0.055) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;

    margin: 0 0 16px !important;
    padding: 0 0 14px !important;

    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head h3,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head strong {
    margin: 0 0 3px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head p,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__head span {
    font-size: 11px !important;
    line-height: 1.35 !important;
    color: var(--mgym-mobile-muted) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-save-global {
    width: 100% !important;
    min-height: 44px !important;
    margin-top: 4px !important;

    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 7px !important;

    border-radius: 14px !important;
    border: 1.5px solid var(--mgym-mobile-accent) !important;
    background: transparent !important;

    color: var(--mgym-mobile-accent) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.055em !important;

    box-shadow: none !important;
  }

  /* =========================
     [V270E21-07] Selectores en una columna premium
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-controls__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .field {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .field > span,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .field label {
    display: block !important;
    margin-bottom: 6px !important;

    font-size: 9.5px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.065em !important;

    color: var(--mgym-mobile-muted) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock select,
  html body .mgym-html-config-page #mgymTrainingLogicBlock input {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 45px !important;

    padding: 12px 36px 12px 14px !important;
    border-radius: 13px !important;

    appearance: none !important;
    -webkit-appearance: none !important;

    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    color: #ffffff !important;
    background-color: var(--mgym-mobile-input) !important;
    border: 1px solid var(--mgym-mobile-border) !important;
    outline: none !important;

    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;

    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.34) !important;
    transition: border-color 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock select:focus,
  html body .mgym-html-config-page #mgymTrainingLogicBlock input:focus {
    background-color: var(--mgym-mobile-input-focus) !important;
    border-color: rgba(163, 255, 51, 0.42) !important;
    box-shadow:
      inset 0 2px 4px rgba(0, 0, 0, 0.38),
      0 0 12px rgba(163, 255, 51, 0.08) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock select option {
    color: #ffffff !important;
    background-color: #1c1d22 !important;
  }

  /* =========================
     [V270E21-08] Métricas en grid 2 columnas como el diseño que has pasado
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;

    width: 100% !important;
    max-width: 100% !important;
    margin-top: 16px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow > * {
    min-width: 0 !important;
    min-height: 82px !important;
    padding: 14px 12px !important;
    border-radius: 18px !important;

    background:
      linear-gradient(135deg, rgba(30, 31, 36, 0.92) 0%, rgba(20, 20, 22, 0.92) 100%) !important;

    border: 1px solid var(--mgym-mobile-border) !important;
    box-shadow:
      0 8px 24px rgba(0, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow strong,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow b {
    display: block !important;
    margin-bottom: 5px !important;

    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    color: #ffffff !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow span,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow small {
    display: block !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.055em !important;
    color: var(--mgym-mobile-muted) !important;
  }

  /* =========================
     [V270E21-09] Tarjetas inferiores en columna
     ========================= */
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;

    width: 100% !important;
    max-width: 100% !important;
    margin-top: 16px !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card {
    min-width: 0 !important;
    width: 100% !important;
    padding: 15px 14px !important;
    border-radius: 20px !important;

    background:
      linear-gradient(135deg, rgba(30, 31, 36, 0.92) 0%, rgba(20, 20, 22, 0.92) 100%) !important;

    border: 1px solid var(--mgym-mobile-border) !important;
    box-shadow:
      0 8px 24px rgba(0, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card h3,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card h4,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card strong {
    margin: 0 0 6px !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card p,
  html body .mgym-html-config-page #mgymTrainingLogicBlock .logic-premium-card span {
    font-size: 12px !important;
    line-height: 1.5 !important;
    color: var(--mgym-mobile-muted) !important;
    overflow-wrap: anywhere !important;
  }

  /* =========================
     [V270E21-10] Ajuste extra para móviles muy estrechos
     ========================= */
  @media (max-width: 390px) {
    html body .mgym-html-config-page #mgymTrainingLogicBlock {
      padding: 15px 12px 22px !important;
      border-radius: 26px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .cardTitle {
      font-size: 23px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media {
      height: 225px !important;
      min-height: 225px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__image {
      height: 225px !important;
      min-height: 225px !important;
      max-height: 225px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media::before {
      width: 118px !important;
      height: 118px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .mgym-training-logic-hero__media::after {
      font-size: 19px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow {
      gap: 10px !important;
    }

    html body .mgym-html-config-page #mgymTrainingLogicBlock .methodMetricRow > * {
      min-height: 76px !important;
      padding: 13px 10px !important;
    }
  }
}

/* [MGYM-TRAINING-LOGIC-BLOCK-MOBILE-PREMIUM-V270E21-END] */


/* ============================================================
   [MGYM-CIRCUIT-METHOD-AUTHORITY-V270E36-CSS-START]
   MacroGym · Circuito suave verificado + métricas separadas.
   ============================================================ */
html body .mgym-html-config-page .methodMetricRow,
html body .mgym-html-config-page #techniqueMetricRow{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
}
html body .mgym-html-config-page #techniqueMetricRow .methodMetric strong{
  white-space:normal!important;
}
html body .mgym-html-config-page .mgym-micro-slide-v270e7[aria-hidden="true"]{
  display:none!important;
}
html body .mgym-html-config-page .mgym-micro-slide-v270e7.is-active{
  display:block!important;
}
@media(max-width:1180px){
  html body .mgym-html-config-page .methodMetricRow,
  html body .mgym-html-config-page #techniqueMetricRow{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:980px){
  html body .mgym-html-config-page .methodMetricRow,
  html body .mgym-html-config-page #techniqueMetricRow{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
  html body .mgym-html-config-page .methodMetricRow,
  html body .mgym-html-config-page #techniqueMetricRow{grid-template-columns:1fr!important;}
}
/* [MGYM-CIRCUIT-METHOD-AUTHORITY-V270E36-CSS-END] */

/* ============================================================
   [MGYM-MESO-DETAIL-NAVIGATION-V270E37-CSS-START]
   MacroGym · Mesociclos del plan + navegación meso/micro limpia
   Ubicación: CSS activo de Configuración.
   Función:
   - Sustituye reglas E25/E26/E33 que se solapaban.
   - Centra los mesociclos bajo las tarjetas informativas.
   - Muestra selección, mesociclo activo y mesociclo asignado sin duplicar lógica.
   ============================================================ */
html body .mgym-html-config-page #mgymWeeklyMesoAssignmentV270E30,
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30{
  width:100%!important;
  margin:16px 0 18px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(168,220,87,.07),transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),
    rgba(8,10,12,.74)!important;
  border:1px solid rgba(255,255,255,.085)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.045)!important;
  text-align:center!important;
  box-sizing:border-box!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30 *,
html body .mgym-html-config-page #mgymWeeklyMesoAssignmentV270E30 *{
  box-sizing:border-box!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0 0 14px!important;
  text-align:left!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__head strong{
  display:block!important;
  margin:0 0 5px!important;
  color:#f3f4f6!important;
  font-size:15px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
  line-height:1.15!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__head p{
  margin:0!important;
  color:#9ca3af!important;
  font-size:12px!important;
  line-height:1.45!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__status{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  color:#d1d5db!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  font-size:11px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__status.is-complete{
  color:#101010!important;
  background:#a8dc57!important;
  border-color:rgba(168,220,87,.65)!important;
}
html body .mgym-html-config-page #mgymWeeklyMesoSelectorV270E30,
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__selector{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:11px!important;
  width:100%!important;
  min-height:50px!important;
  margin:14px auto 14px!important;
  padding:6px!important;
  overflow:visible!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  padding:0!important;
  border-radius:999px!important;
  cursor:pointer!important;
  color:#f3f4f6!important;
  background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.025))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055)!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,opacity .18s ease!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(168,220,87,.45)!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30.is-selected{
  color:#101010!important;
  background:linear-gradient(135deg,#a8dc57,#c9ff73)!important;
  border-color:rgba(168,220,87,.78)!important;
  box-shadow:0 10px 24px rgba(168,220,87,.16), inset 0 1px 0 rgba(255,255,255,.35)!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30.is-active{
  outline:2px solid rgba(255,255,255,.25)!important;
  outline-offset:3px!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30.is-assigned::after{
  content:""!important;
  position:absolute!important;
  right:4px!important;
  bottom:4px!important;
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  background:#30d158!important;
  box-shadow:0 0 8px rgba(48,209,88,.72)!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin:8px 0 0!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-action-v270e30{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  cursor:pointer!important;
  color:#d1d5db!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.1)!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-action-v270e30:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(168,220,87,.38)!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-action-v270e30--primary{
  color:#101010!important;
  background:linear-gradient(135deg,#a8dc57,#c6ff6a)!important;
  border-color:rgba(168,220,87,.72)!important;
  box-shadow:0 8px 20px rgba(168,220,87,.14)!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__message{
  min-height:18px!important;
  margin:12px 0 0!important;
  color:#9ca3af!important;
  font-size:12px!important;
  line-height:1.45!important;
  text-align:center!important;
}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__message.is-ok{color:#a8dc57!important;}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__message.is-warning{color:#facc15!important;}
html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__message.is-error{color:#f87171!important;}
html body .mgym-html-config-page .mgym-meso-slide-v270e7[aria-hidden="true"],
html body .mgym-html-config-page .mgym-micro-slide-v270e7[aria-hidden="true"]{
  display:none!important;
}
html body .mgym-html-config-page .mgym-meso-slide-v270e7.is-active,
html body .mgym-html-config-page .mgym-micro-slide-v270e7.is-active{
  display:block!important;
}
html body .mgym-html-config-page .mgym-meso-slide-v270e7.is-multi-selected-v270e30,
html body .mgym-html-config-page .mgym-meso-slide-v270e7.is-multi-selected-v270e37{
  border-color:rgba(168,220,87,.34)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 0 1px rgba(168,220,87,.08)!important;
}
@media(max-width:760px){
  html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__head{
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
  }
  html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30__status{
    align-self:center!important;
  }
}
@media(max-width:420px){
  html body .mgym-html-config-page .mgym-weekly-meso-assign-v270e30{
    padding:14px!important;
    border-radius:20px!important;
  }
  html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    font-size:13px!important;
  }
  html body .mgym-html-config-page .mgym-weekly-meso-action-v270e30{
    width:100%!important;
  }
}
/* [MGYM-MESO-DETAIL-NAVIGATION-V270E37-CSS-END] */


/* ============================================================
   [MGYM-MESO-VISUAL-SAVE-V270E39-CSS-START]
   MacroGym · Visibilidad seleccionados + ocultar personalización + guardar mesociclos
   ============================================================ */

/* Días seleccionados: verde claro evidente, sin tocar lógica */
html body .mgym-html-config-page .mgym-weekly-day-v270e7.is-active,
html body .mgym-html-config-page .mgym-weekly-day-v270e7[aria-pressed="true"] {
  background: linear-gradient(135deg, #A8DC57 0%, #C9FF73 100%) !important;
  border-color: rgba(168, 220, 87, 0.98) !important;
  color: #0B0D0E !important;
  box-shadow:
    0 0 0 1px rgba(168, 220, 87, 0.42),
    0 14px 30px rgba(168, 220, 87, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.36) !important;
  transform: translateY(-1px) !important;
}

html body .mgym-html-config-page .mgym-weekly-day-v270e7.is-active::before,
html body .mgym-html-config-page .mgym-weekly-day-v270e7[aria-pressed="true"]::before {
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  margin-right: 5px;
  border-radius: 999px;
  background: rgba(11, 13, 14, 0.16);
  color: #0B0D0E;
  font-size: 10px;
  font-weight: 1000;
  vertical-align: middle;
}

/* Mesociclos seleccionados: verde visible y estado asignado claro */
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30.is-selected,
html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30[aria-pressed="true"] {
  color: #0B0D0E !important;
  background: linear-gradient(135deg, #A8DC57 0%, #C9FF73 100%) !important;
  border-color: rgba(168, 220, 87, 0.98) !important;
  box-shadow:
    0 0 0 1px rgba(168, 220, 87, 0.42),
    0 14px 30px rgba(168, 220, 87, 0.22),
    inset 0 1px 0 rgba(255,255,255,0.38) !important;
}

html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30.is-active {
  outline: 2px solid rgba(168, 220, 87, 0.72) !important;
  outline-offset: 4px !important;
}

html body .mgym-html-config-page .mgym-weekly-meso-chip-v270e30.is-assigned::after {
  background: #16A34A !important;
  box-shadow: 0 0 10px rgba(22, 163, 74, 0.85) !important;
}

/* Vista de semana generada: entrenamientos destacados en verde suave */
html body .mgym-html-config-page .mgym-weekly-preview-day-v270e7.is-training {
  background: linear-gradient(135deg, rgba(168, 220, 87, 0.14), rgba(168, 220, 87, 0.055)) !important;
  border-color: rgba(168, 220, 87, 0.46) !important;
  box-shadow: inset 3px 0 0 rgba(168, 220, 87, 0.86) !important;
}

html body .mgym-html-config-page .mgym-weekly-preview-day-v270e7.is-training strong {
  color: #F3F4F6 !important;
}

/* De momento se oculta la personalización individual del mesociclo.
   No se elimina la estructura para poder recuperarla más adelante. */
html body .mgym-html-config-page .mgym-meso-mode-v270e7,
html body .mgym-html-config-page .mgym-meso-mode-v270e7__options,
html body .mgym-html-config-page .mgym-meso-mode-option-v270e7 {
  display: none !important;
}

/* Botón Guardar mesociclos: estados reales */
html body .mgym-html-config-page .mgym-save-meso-btn-v270e7 {
  min-width: 112px !important;
  background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.045)) !important;
  border-color: rgba(255,255,255,.20) !important;
  color: #F3F4F6 !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease !important;
}

html body .mgym-html-config-page .mgym-save-meso-btn-v270e7:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(168, 220, 87, .52) !important;
}

html body .mgym-html-config-page .mgym-save-meso-btn-v270e7.is-saving {
  opacity: .82 !important;
  cursor: wait !important;
}

html body .mgym-html-config-page .mgym-save-meso-btn-v270e7.is-saved {
  color: #0B0D0E !important;
  background: linear-gradient(135deg, #A8DC57, #C9FF73) !important;
  border-color: rgba(168, 220, 87, .98) !important;
  box-shadow: 0 12px 26px rgba(168, 220, 87, .22) !important;
}

html body .mgym-html-config-page .mgym-meso-config-status-v270e7.is-saving {
  color: #FACC15 !important;
  border-color: rgba(250, 204, 21, .45) !important;
  background: rgba(250, 204, 21, .08) !important;
}

html body .mgym-html-config-page .mgym-meso-config-status-v270e7.is-saved {
  color: #0B0D0E !important;
  border-color: rgba(168, 220, 87, .85) !important;
  background: linear-gradient(135deg, #A8DC57, #C9FF73) !important;
}

html body .mgym-html-config-page .mgym-meso-config-status-v270e7.is-error {
  color: #FCA5A5 !important;
  border-color: rgba(248, 113, 113, .48) !important;
  background: rgba(248, 113, 113, .09) !important;
}

/* [MGYM-MESO-VISUAL-SAVE-V270E39-CSS-END] */


/* ============================================================
   [MGYM-ROUTINE-MESO-ASSIGNMENT-V270E42-CSS-START]
   MacroGym · Asignación de rutinas a mesociclos
   Paso 1: estructura visual base inspirada en HTML subido.
   ============================================================ */

html body .mgym-html-config-page .mgym-ra-v270e42,
html body .mgym-html-config-page .mgym-ra-v270e42 * {
  box-sizing: border-box;
}

html body .mgym-html-config-page .mgym-ra-v270e42 {
  --ra-bg-dark: #08090a;
  --ra-bg-carbon: #111214;
  --ra-panel-dark: #1b1c1e;
  --ra-card: rgba(30, 31, 36, 0.58);
  --ra-border: rgba(255, 255, 255, 0.06);
  --ra-border-hover: rgba(255, 255, 255, 0.14);
  --ra-volt: #a3ff33;
  --ra-volt-glow: rgba(163, 255, 51, 0.25);
  --ra-cyan: #35d6e8;
  --ra-cyan-glow: rgba(53, 214, 232, 0.25);
  --ra-alert: #ffb020;
  --ra-text: #ffffff;
  --ra-muted: #9ca3af;
  --ra-soft: #5e6470;

  width: 100%;
  margin: 32px 0;
  padding: 24px;
  border-radius: 26px;
  color: var(--ra-text);
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 214, 232, 0.045), transparent 38%),
    radial-gradient(circle at 100% 100%, rgba(163, 255, 51, 0.035), transparent 42%),
    var(--ra-bg-carbon);
  border: 1px solid var(--ra-border);
  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.58),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

html body .mgym-html-config-page .mgym-ra-v270e42__header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 28px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__eyebrow {
  display: inline-flex;
  margin-bottom: 8px;
  padding: 4px 9px;
  border-radius: 999px;
  color: var(--ra-cyan);
  background: rgba(53, 214, 232, 0.08);
  border: 1px solid rgba(53, 214, 232, 0.2);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

html body .mgym-html-config-page .mgym-ra-v270e42__header h2 {
  margin: 0 0 8px;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.05;
  font-weight: 950;
  letter-spacing: -0.04em;
  color: #fff;
}

html body .mgym-html-config-page .mgym-ra-v270e42__header p,
html body .mgym-html-config-page .mgym-ra-v270e42__section-head p,
html body .mgym-html-config-page .mgym-ra-v270e42__summary p {
  margin: 0;
  color: var(--ra-muted);
  font-size: 13px;
  line-height: 1.5;
}

html body .mgym-html-config-page .mgym-ra-v270e42__status,
html body .mgym-html-config-page .mgym-ra-v270e42__counter {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 7px 12px;
  border-radius: 12px;
  color: var(--ra-cyan);
  background: rgba(53, 214, 232, 0.1);
  border: 1px solid rgba(53, 214, 232, 0.25);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

html body .mgym-html-config-page .mgym-ra-v270e42__status i,
html body .mgym-html-config-page .mgym-ra-v270e42__counter i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ra-cyan);
  box-shadow: 0 0 8px var(--ra-cyan);
}

html body .mgym-html-config-page .mgym-ra-v270e42__section {
  margin-top: 24px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__section--library {
  padding-top: 26px;
  border-top: 1px solid rgba(255, 255, 255, 0.055);
}

html body .mgym-html-config-page .mgym-ra-v270e42__section-head,
html body .mgym-html-config-page .mgym-ra-v270e42__summary {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__section-head h3 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 6px;
  font-size: 21px;
  font-weight: 950;
  letter-spacing: -0.025em;
  color: #fff;
}

html body .mgym-html-config-page .mgym-ra-v270e42__section-head h3 span {
  padding: 4px 8px;
  border-radius: 7px;
  color: var(--ra-cyan);
  background: var(--ra-bg-dark);
  border: 1px solid rgba(53, 214, 232, 0.22);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

html body .mgym-html-config-page .mgym-ra-v270e42__actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

html body .mgym-html-config-page .mgym-ra-v270e42__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 11px;
  cursor: pointer;
  border: 1px solid var(--ra-border);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  transition: all .22s ease;
}

html body .mgym-html-config-page .mgym-ra-v270e42__btn--primary {
  color: #050505;
  background: var(--ra-volt);
  border-color: var(--ra-volt);
  box-shadow: 0 8px 18px rgba(163, 255, 51, 0.14);
}

html body .mgym-html-config-page .mgym-ra-v270e42__btn--primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(163, 255, 51, 0.25);
}

html body .mgym-html-config-page .mgym-ra-v270e42__btn--ghost {
  color: var(--ra-muted);
  background: rgba(255, 255, 255, 0.025);
}

html body .mgym-html-config-page .mgym-ra-v270e42__btn--ghost:hover {
  color: #fff;
  border-color: var(--ra-border-hover);
  background: rgba(255, 255, 255, 0.055);
}

html body .mgym-html-config-page .mgym-ra-v270e42__btn--disabled {
  color: #777;
  background: rgba(255,255,255,.035);
  border-color: rgba(255,255,255,.06);
  cursor: not-allowed;
}

html body .mgym-html-config-page .mgym-ra-v270e42__slider-wrap {
  position: relative;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-track,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-track {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 12px 4px;
  scrollbar-width: none;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-track::-webkit-scrollbar,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-track::-webkit-scrollbar {
  display: none;
}

html body .mgym-html-config-page .mgym-ra-v270e42__arrow {
  position: absolute;
  top: 50%;
  z-index: 5;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #fff;
  background: rgba(17, 18, 20, 0.86);
  border: 1px solid var(--ra-border);
  box-shadow: 0 6px 18px rgba(0,0,0,.42);
}

html body .mgym-html-config-page .mgym-ra-v270e42__arrow--prev {
  left: -14px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__arrow--next {
  right: -14px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-card,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
  flex: 0 0 calc(25% - 12px);
  min-width: 250px;
  padding: 20px;
  border-radius: 20px;
  background: var(--ra-card);
  border: 1px solid var(--ra-border);
  box-shadow:
    0 10px 24px rgba(0,0,0,.25),
    inset 0 1px 0 rgba(255,255,255,.055);
  transition: all .25s ease;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
  flex-basis: calc(33.333% - 11px);
  min-width: 290px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-card:hover,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-card:hover {
  transform: translateY(-2px);
  border-color: var(--ra-border-hover);
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-card.is-selected {
  border-color: var(--ra-cyan);
  box-shadow:
    0 0 22px rgba(53, 214, 232, 0.14),
    inset 0 1px 0 rgba(255,255,255,.055);
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-head,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-head span,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-top span {
  color: var(--ra-soft);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-head strong {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  color: #050505;
  background: var(--ra-cyan);
  opacity: 0;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-card.is-selected .mgym-ra-v270e42__meso-head strong {
  opacity: 1;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-title h4,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-card h4 {
  margin: 0 0 4px;
  color: #fff;
  font-size: 17px;
  line-height: 1.25;
  font-weight: 950;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-title p {
  margin: 0;
  color: var(--ra-muted);
  font-size: 12px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__badge {
  display: inline-flex;
  margin: 12px 0;
  padding: 4px 8px;
  border-radius: 7px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

html body .mgym-html-config-page .mgym-ra-v270e42__badge--adaptacion {
  color: var(--ra-cyan);
  background: rgba(53,214,232,.08);
  border: 1px solid rgba(53,214,232,.22);
}

html body .mgym-html-config-page .mgym-ra-v270e42__badge--carga {
  color: var(--ra-volt);
  background: rgba(163,255,51,.08);
  border: 1px solid rgba(163,255,51,.22);
}

html body .mgym-html-config-page .mgym-ra-v270e42__badge--descarga {
  color: var(--ra-alert);
  background: rgba(255,176,32,.08);
  border: 1px solid rgba(255,176,32,.22);
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-specs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.035);
  border-bottom: 1px solid rgba(255,255,255,.035);
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-specs small,
html body .mgym-html-config-page .mgym-ra-v270e42__assigned small,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-preview small {
  display: block;
  color: var(--ra-soft);
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

html body .mgym-html-config-page .mgym-ra-v270e42__meso-specs strong {
  color: var(--ra-muted);
  font-size: 12px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__assigned,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-preview {
  margin-top: 12px;
  padding: 11px 12px;
  border-radius: 13px;
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(255,255,255,.025);
}

html body .mgym-html-config-page .mgym-ra-v270e42__assigned strong {
  display: block;
  margin-top: 3px;
  color: #fff;
  font-size: 12px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__assigned.is-pending strong {
  color: var(--ra-alert);
}

html body .mgym-html-config-page .mgym-ra-v270e42__toolbar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__search {
  flex: 1;
  min-width: 260px;
  max-width: 420px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__search span {
  display: block;
  margin-bottom: 6px;
  color: var(--ra-soft);
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

html body .mgym-html-config-page .mgym-ra-v270e42__search input {
  width: 100%;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  color: #fff;
  background: rgba(0,0,0,.34);
  border: 1px solid var(--ra-border);
  outline: 0;
}

html body .mgym-html-config-page .mgym-ra-v270e42__chips {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: none;
}

html body .mgym-html-config-page .mgym-ra-v270e42__chip {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  cursor: pointer;
  color: var(--ra-muted);
  background: rgba(255,255,255,.03);
  border: 1px solid var(--ra-border);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

html body .mgym-html-config-page .mgym-ra-v270e42__chip.is-active {
  color: #fff;
  border-color: var(--ra-cyan);
  background: rgba(53,214,232,.08);
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-tags span {
  padding: 4px 8px;
  border-radius: 8px;
  color: var(--ra-muted);
  background: rgba(255,255,255,.03);
  border: 1px solid var(--ra-border);
  font-size: 10px;
  font-weight: 850;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-card p {
  margin: 0;
  color: var(--ra-muted);
  font-size: 12px;
  line-height: 1.45;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-preview ul {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-preview li {
  color: var(--ra-muted);
  font-size: 12px;
  line-height: 1.55;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-preview b {
  color: #fff;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-card .mgym-ra-v270e42__btn {
  width: 100%;
  margin-top: 14px;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-card.is-recommended {
  border-color: rgba(163,255,51,.22);
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-card.is-compatible {
  border-color: rgba(53,214,232,.22);
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-card.is-not-recommended {
  opacity: .72;
}

html body .mgym-html-config-page .mgym-ra-v270e42__summary {
  margin-top: 28px;
  padding: 18px;
  border-radius: 20px;
  background: rgba(255,255,255,.028);
  border: 1px solid var(--ra-border);
}

html body .mgym-html-config-page .mgym-ra-v270e42__summary strong {
  display: block;
  margin-bottom: 5px;
  color: #fff;
  font-size: 15px;
  font-weight: 950;
}

@media (max-width: 1200px) {
  html body .mgym-html-config-page .mgym-ra-v270e42__meso-card {
    flex-basis: calc(33.333% - 11px);
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
    flex-basis: calc(50% - 8px);
  }
}

@media (max-width: 768px) {
  html body .mgym-html-config-page .mgym-ra-v270e42 {
    padding: 16px;
    border-radius: 22px;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__header,
  html body .mgym-html-config-page .mgym-ra-v270e42__section-head,
  html body .mgym-html-config-page .mgym-ra-v270e42__summary {
    flex-direction: column;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__actions {
    width: 100%;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__actions .mgym-ra-v270e42__btn,
  html body .mgym-html-config-page .mgym-ra-v270e42__counter {
    flex: 1 1 auto;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-track,
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-track {
    display: block;
    overflow: visible;
    padding: 4px 0;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-card,
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
    width: 100%;
    min-width: 0;
    margin-bottom: 12px;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__arrow {
    display: none;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-specs {
    display: none;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__toolbar {
    align-items: stretch;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__search {
    max-width: 100%;
    min-width: 0;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__chips {
    width: 100%;
  }
}

/* [MGYM-ROUTINE-MESO-ASSIGNMENT-V270E42-CSS-END] */

/* ============================================================
   [MGYM-ROUTINE-MESO-ASSIGNMENT-V270E42-FORCE-ARROWS-START]
   MacroGym · Forzar visibilidad de flechas biblioteca rutinas
   Función:
   - Asegura que las flechas de la biblioteca de rutinas se vean.
   - Evita que queden ocultas por z-index, overflow o reglas anteriores.
   - En móvil también las mantiene visibles si quieres verlas durante pruebas.
   ============================================================ */

html body .mgym-html-config-page .mgym-ra-v270e42__routine-slider-wrap {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  padding-inline: 8px !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-track {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  gap: 16px !important;
  overflow-x: auto !important;
  scroll-behavior: smooth !important;
  padding: 16px 8px !important;
  scrollbar-width: none !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-track::-webkit-scrollbar {
  display: none !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow {
  display: grid !important;
  place-items: center !important;
  position: absolute !important;
  top: 50% !important;
  z-index: 50 !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;

  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,0.14), transparent 38%),
    rgba(17, 18, 20, 0.96) !important;

  border: 1px solid rgba(53, 214, 232, 0.45) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.05) inset,
    0 10px 26px rgba(0,0,0,0.55),
    0 0 18px rgba(53, 214, 232, 0.22) !important;

  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow:hover {
  color: #35d6e8 !important;
  border-color: #35d6e8 !important;
  background: #1b1c1e !important;
  box-shadow:
    0 12px 28px rgba(0,0,0,0.65),
    0 0 22px rgba(53, 214, 232, 0.35) !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow--prev {
  left: -6px !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow--next {
  right: -6px !important;
}

/* Degradados laterales para que se note que hay carrusel */
html body .mgym-html-config-page .mgym-ra-v270e42__routine-slider-wrap::before,
html body .mgym-html-config-page .mgym-ra-v270e42__routine-slider-wrap::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 58px !important;
  z-index: 10 !important;
  pointer-events: none !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-slider-wrap::before {
  left: 0 !important;
  background: linear-gradient(to right, #111214 0%, rgba(17,18,20,0) 100%) !important;
}

html body .mgym-html-config-page .mgym-ra-v270e42__routine-slider-wrap::after {
  right: 0 !important;
  background: linear-gradient(to left, #111214 0%, rgba(17,18,20,0) 100%) !important;
}

/* Durante pruebas, NO ocultamos las flechas en móvil */
@media (max-width: 768px) {
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow {
    display: grid !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    font-size: 24px !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow--prev {
    left: 2px !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__routine-arrow--next {
    right: 2px !important;
  }
}

/* [MGYM-ROUTINE-MESO-ASSIGNMENT-V270E42-FORCE-ARROWS-END] */

/* ============================================================
   [MGYM-ROUTINE-MESO-ASSIGNMENT-V270E42-EQUAL-CARDS-START]
   MacroGym · Igualar altura de tarjetas de rutinas en escritorio
   Función:
   - Todas las tarjetas de rutina se estiran a la altura de la más alta.
   - El botón queda alineado abajo en todas.
   - Solo afecta al bloque v270E42.
   - En móvil mantiene altura natural.
   ============================================================ */

/* [E42-EQUAL-01] El carril de rutinas estira todas las tarjetas al mismo alto */
@media (min-width: 769px) {
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-track {
    align-items: stretch !important;
  }

  /* [E42-EQUAL-02] Cada tarjeta funciona como columna completa */
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    align-self: stretch !important;
  }

  /* [E42-EQUAL-03] El texto crece si hace falta, pero no rompe la tarjeta */
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card > p {
    flex: 0 0 auto !important;
  }

  /* [E42-EQUAL-04] El preview queda ordenado y ocupa su espacio */
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-preview {
    flex: 1 1 auto !important;
  }

  /* [E42-EQUAL-05] El botón siempre baja al final de la tarjeta */
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card .mgym-ra-v270e42__btn {
    margin-top: auto !important;
  }
}

/* [E42-EQUAL-06] En móvil las tarjetas vuelven a altura natural */
@media (max-width: 768px) {
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
    height: auto !important;
    align-self: auto !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card .mgym-ra-v270e42__btn {
    margin-top: 14px !important;
  }
}

/* [MGYM-ROUTINE-MESO-ASSIGNMENT-V270E42-EQUAL-CARDS-END] */

/* ============================================================
   [MGYM-V270E42-MOBILE-FIX-APP-ZOOM-105-START]
   Corrige móvil:
   - Primer bloque mesociclos vuelve a lista compacta de 4.
   - Fondo oscuro de la web.
   - Sensación visual 105%.
   - No toca escritorio ni lógica.
   ============================================================ */

@media (max-width: 768px) {

  html body {
    background-color: #08090a !important;
  }

  html body .mgym-html-config-page {
    background:
      radial-gradient(circle at 0% 0%, rgba(53, 214, 232, 0.045), transparent 38%),
      radial-gradient(circle at 100% 100%, rgba(163, 255, 51, 0.035), transparent 42%),
      #08090a !important;
  }

  /* Efecto app: bloque un poco más ancho, sin romper viewport */
  html body .mgym-html-config-page .mgym-ra-v270e42 {
    width: calc(100% + 14px) !important;
    max-width: none !important;
    margin-left: -7px !important;
    margin-right: -7px !important;
    transform: scale(1.01) !important;
    transform-origin: top center !important;
  }

  /* Primer bloque: mesociclos en lista compacta, no carrusel roto */
  html body .mgym-html-config-page .mgym-ra-v270e42__meso-track {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    overflow: visible !important;
    padding: 6px 0 10px !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;

    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 8px 10px !important;
    align-items: center !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-head {
    grid-column: 1 / -1 !important;
    margin-bottom: 0 !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-title {
    min-width: 0 !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-title h4 {
    font-size: 15px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-title p {
    font-size: 11px !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__badge {
    margin: 0 !important;
    justify-self: end !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__assigned {
    grid-column: 1 / -1 !important;
    margin-top: 4px !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__meso-specs {
    display: none !important;
  }

  /* Flechas de mesociclos ocultas en móvil */
  html body .mgym-html-config-page .mgym-ra-v270e42 [data-ra-meso-prev],
  html body .mgym-html-config-page .mgym-ra-v270e42 [data-ra-meso-next] {
    display: none !important;
  }

  /* Biblioteca: una rutina por vista */
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-track {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
    flex: 0 0 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    scroll-snap-align: center !important;
  }
}

/* [MGYM-V270E42-MOBILE-FIX-APP-ZOOM-105-END] *//* ============================================================
   [MGYM-MOBILE-FIX-CARDS-2X2-DARK-105-START]
   Corrige móvil sin tocar lógica:
   - Fondo oscuro real.
   - Efecto app ancho.
   - Tarjetas resumen en 2x2, no 4 columnas estrechas.
   - Rutinas v270E42 siguen 1 por vista.
   ============================================================ */

@media (max-width: 768px) {

  html,
  body {
    background: #08090a !important;
    overflow-x: hidden !important;
  }

  html body .mgym-html-config-page {
    background:
      radial-gradient(circle at 0% 0%, rgba(53, 214, 232, 0.045), transparent 38%),
      radial-gradient(circle at 100% 100%, rgba(163, 255, 51, 0.035), transparent 42%),
      #08090a !important;
    overflow-x: hidden !important;
  }

  /* Efecto app sin romper columnas internas */
  html body .mgym-html-config-page .mgym-ra-v270e42 {
    width: calc(100% + 12px) !important;
    margin-left: -6px !important;
    margin-right: -6px !important;
    transform: none !important;
    zoom: 1.03;
  }

  /* Corrige el bloque anterior de 4 tarjetas: 2x2 */
  html body .mgym-html-config-page .configuracion_bloque_1__cards,
  html body .mgym-html-config-page .configuracion_bloque_1__grid,
  html body .mgym-html-config-page .mgym-config-cards,
  html body .mgym-html-config-page .mgym-config-summary-grid,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    overflow: visible !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1__cards > *,
  html body .mgym-html-config-page .configuracion_bloque_1__grid > *,
  html body .mgym-html-config-page .mgym-config-cards > *,
  html body .mgym-html-config-page .mgym-config-summary-grid > *,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__cards > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
  }

  /* Si esas tarjetas vienen como links o botones, que respiren */
  html body .mgym-html-config-page .configuracion_bloque_1__cards a,
  html body .mgym-html-config-page .configuracion_bloque_1__grid a,
  html body .mgym-html-config-page .mgym-config-cards a,
  html body .mgym-html-config-page .mgym-config-summary-grid a,
  html body .mgym-html-config-page .mgym-config-plan-carbon-block__cards a {
    min-height: 138px !important;
    padding: 16px 12px !important;
    border-radius: 24px !important;
  }

  /* Rutinas del nuevo bloque: 1 tarjeta por pantalla */
  html body .mgym-html-config-page .mgym-ra-v270e42__routine-track {
    display: flex !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 14px !important;
  }

  html body .mgym-html-config-page .mgym-ra-v270e42__routine-card {
    flex: 0 0 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    scroll-snap-align: center !important;
  }
}

/* [MGYM-MOBILE-FIX-CARDS-2X2-DARK-105-END] */
/* ============================================================
   [MGYM-CONFIG-FLOW-CARDS-MOBILE-2X2-FIX-START]
   Corrige las tarjetas superiores de navegación en móvil.
   Bloque real:
   .mgym-config-flow-strip.mgym-config-flow-strip--cards
   .mgym-config-flow-card
   ============================================================ */

@media (max-width: 768px) {

  html body .mgym-html-config-page .mgym-config-flow-strip.mgym-config-flow-strip--cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 18px 0 22px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-strip.mgym-config-flow-strip--cards .mgym-config-flow-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 158px !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    text-decoration: none !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__media {
    width: 100% !important;
    height: 92px !important;
    min-height: 92px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__body {
    flex: 1 !important;
    padding: 10px 11px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 4px !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__body strong {
    font-size: 13px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__body small {
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  html body .mgym-html-config-page .mgym-config-flow-card__step {
    width: 26px !important;
    height: 26px !important;
    font-size: 12px !important;
  }
}

/* [MGYM-CONFIG-FLOW-CARDS-MOBILE-2X2-FIX-END] */
<figure class="mgym-config-flow-card__media">
<div class="mgym-config-flow-card__body">
/* ============================================================
   [MGYM-FLOW-CARDS-MOBILE-FINAL-FIX-START]
   Corrige tarjetas de flujo en móvil.
   Objetivo:
   - 2 columnas.
   - Cada tarjeta ocupa bien su celda.
   - Imagen y body internos al 100%.
   - Evita que se queden estrechos por estilos anteriores.
   ============================================================ */

@media only screen and (max-width: 768px) {

  html body #mgym-config-top.mgym-html-config-page
  section.mgym-config-flow-strip.mgym-config-flow-strip--cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 18px 0 22px !important;
    overflow: visible !important;
  }

  html body #mgym-config-top.mgym-html-config-page
  section.mgym-config-flow-strip.mgym-config-flow-strip--cards
  > a.mgym-config-flow-card {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    grid-column: auto !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body #mgym-config-top.mgym-html-config-page
  a.mgym-config-flow-card
  > figure.mgym-config-flow-card__media {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    height: 96px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
  }

  html body #mgym-config-top.mgym-html-config-page
  a.mgym-config-flow-card
  > figure.mgym-config-flow-card__media
  > img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  html body #mgym-config-top.mgym-html-config-page
  a.mgym-config-flow-card
  > div.mgym-config-flow-card__body {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 11px 10px 13px !important;
    margin: 0 !important;
    flex: none !important;
  }

  html body #mgym-config-top.mgym-html-config-page
  a.mgym-config-flow-card
  > div.mgym-config-flow-card__body strong,
  html body #mgym-config-top.mgym-html-config-page
  a.mgym-config-flow-card
  > div.mgym-config-flow-card__body small {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: left !important;
  }
}

/* [MGYM-FLOW-CARDS-MOBILE-FINAL-FIX-END] */

/* ============================================================
   [MGYM-CONFIG-HERO-INICIOCONF-V271-CSS-START]
   MacroGym · Hero inicial configuración
   Fuente visual adaptada desde bloqueinicioconf.html.
   ============================================================ */

html body {
  background-color: #08090a !important;
}

html body .mgym-html-config-page {
  background:
    radial-gradient(circle at 0% 0%, rgba(163, 255, 51, 0.035), transparent 42%),
    radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0.025), transparent 48%),
    #08090a !important;
}

/* [V271-CSS-01] Nav local: oculto en escritorio */
html body .mgym-html-config-page .mgym-config-local-nav--mobile-only {
  display: none !important;
}

/* [V271-CSS-02] Hero base escritorio */
html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 {
  --v271-bg-main: #111214;
  --v271-bg-card: rgba(30, 31, 36, 0.7);
  --v271-bg-input: #1b1c1e;
  --v271-border: rgba(255, 255, 255, 0.08);
  --v271-border-hover: rgba(255, 255, 255, 0.16);
  --v271-text: #ffffff;
  --v271-muted: #8c919b;
  --v271-soft: #5a5f67;
  --v271-volt: #a3ff33;
  --v271-alert: #ffb020;

  position: relative !important;
  width: 100% !important;
  overflow: hidden !important;
  margin: 0 0 18px !important;
  border-radius: 24px !important;
  border: 1px solid var(--v271-border) !important;
  background:
    linear-gradient(135deg, rgba(30, 31, 36, 0.95), rgba(20, 20, 22, 0.95)) !important;
  box-shadow:
    0 12px 30px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.055) !important;
  color: var(--v271-text) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  opacity: 0.15 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(163, 255, 51, 0.22), transparent 70%),
    var(--cb1-bg-image) !important;
  background-size: cover !important;
  background-position: right top !important;
  filter: saturate(0.5) contrast(1.2) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__inner {
  position: relative !important;
  z-index: 2 !important;
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

/* [V271-CSS-03] Cabecera superior */
html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__top {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(255,255,255,.055) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__label {
  color: var(--v271-muted) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__mini-status {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 5px 13px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
  border: 1px solid rgba(255,255,255,.06) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__mini-status::before {
  content: "" !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: currentColor !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__mini-status.is-ready {
  color: #30d158 !important;
  background: rgba(48,209,88,.1) !important;
  border-color: rgba(48,209,88,.25) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__mini-status.is-alert {
  color: var(--v271-alert) !important;
  background: rgba(255,176,32,.1) !important;
  border-color: rgba(255,176,32,.25) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__mini-status.is-pending {
  color: #8e94a0 !important;
  background: rgba(142,148,160,.1) !important;
  border-color: rgba(142,148,160,.25) !important;
}

/* [V271-CSS-04] Hero */
html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px) !important;
  gap: 24px !important;
  align-items: center !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__title {
  margin: 0 0 8px !important;
  color: #fff !important;
  font-size: 25px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  letter-spacing: -.025em !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__lead {
  margin: 0 !important;
  color: var(--v271-muted) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score {
  width: 100% !important;
  padding: 14px 18px !important;
  border-radius: 18px !important;
  background: rgba(0,0,0,.35) !important;
  border: 1px solid rgba(255,255,255,.045) !important;
  box-shadow: inset 0 2px 4px rgba(0,0,0,.5) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-content {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-number {
  flex: 0 0 auto !important;
  width: 46px !important;
  height: 46px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: var(--v271-volt) !important;
  background: rgba(163,255,51,.08) !important;
  border: 1px solid rgba(163,255,51,.25) !important;
  box-shadow: 0 0 12px rgba(163,255,51,.15) !important;
  font-size: 24px !important;
  font-weight: 900 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-details {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-kicker {
  color: var(--v271-muted) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-text {
  color: var(--v271-muted) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* [V271-CSS-05] Mensaje */
html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 14px 18px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.025) !important;
  border: 1px solid rgba(255,255,255,.045) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message-icon {
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 10px !important;
  color: var(--v271-volt) !important;
  background: rgba(163,255,51,.1) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message p {
  margin: 0 !important;
  color: var(--v271-muted) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message-action {
  color: var(--v271-volt) !important;
  text-decoration: none !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  border-bottom: 1.5px solid var(--v271-volt) !important;
}

/* [V271-CSS-06] Mapa pasos */
html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__map {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-top: 6px !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__map::before {
  content: "" !important;
  position: absolute !important;
  left: 20px !important;
  right: 20px !important;
  top: 30px !important;
  height: 1px !important;
  background: rgba(255,255,255,.08) !important;
  z-index: 1 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step {
  position: relative !important;
  z-index: 2 !important;
  min-height: 180px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 16px !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.025) !important;
  border: 1px solid var(--v271-border) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step-num {
  width: 24px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: var(--v271-muted) !important;
  background: var(--v271-bg-input) !important;
  border: 1px solid var(--v271-border) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: var(--v271-soft) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step strong {
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step span:last-child {
  color: var(--v271-muted) !important;
  font-size: 11.5px !important;
  line-height: 1.4 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step.is-active {
  border-color: rgba(163,255,51,.18) !important;
  background: rgba(163,255,51,.025) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step.is-active .configuracion_bloque_1__step-num {
  color: var(--v271-volt) !important;
  border-color: var(--v271-volt) !important;
  box-shadow: 0 0 8px rgba(163,255,51,.18) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step.is-active .configuracion_bloque_1__step-dot {
  background: var(--v271-volt) !important;
  box-shadow: 0 0 8px var(--v271-volt) !important;
}

/* [V271-CSS-07] Footer */
html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__footer {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(255,255,255,.055) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__footer-info {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 7px 12px !important;
  border-radius: 10px !important;
  color: var(--v271-muted) !important;
  background: rgba(255,255,255,.03) !important;
  border: 1px solid var(--v271-border) !important;
  font-size: 11px !important;
  font-weight: 850 !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__chip i {
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: var(--v271-volt) !important;
}

html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__primary-link {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 10px 24px !important;
  border-radius: 12px !important;
  color: var(--v271-volt) !important;
  border: 1.5px solid var(--v271-volt) !important;
  text-decoration: none !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
}

/* [V271-CSS-08] Tablet */
@media (max-width: 1024px) and (min-width: 769px) {
  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__map {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step {
    min-height: auto !important;
  }
}

/* [V271-CSS-09] Móvil app */
@media (max-width: 768px) {
  html body {
    padding-bottom: 92px !important;
    overflow-x: hidden !important;
  }

  html body .mgym-html-config-page {
    overflow-x: hidden !important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav--mobile-only {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 16px !important;
    z-index: 9999 !important;
    display: flex !important;
    justify-content: space-around !important;
    gap: 4px !important;
    padding: 8px 6px !important;
    border-radius: 20px !important;
    background: rgba(20,22,26,.68) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    box-shadow: 0 10px 40px rgba(0,0,0,.6) !important;
    backdrop-filter: blur(24px) !important;
    -webkit-backdrop-filter: blur(24px) !important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav--mobile-only a {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    padding: 8px 4px !important;
    border-radius: 14px !important;
    color: #8c919b !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    text-decoration: none !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav--mobile-only a span {
    color: #8c919b !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav--mobile-only a.is-active {
    color: var(--v271-volt, #a3ff33) !important;
    background: rgba(163,255,51,.12) !important;
    border-color: rgba(163,255,51,.25) !important;
  }

  html body .mgym-html-config-page .mgym-config-local-nav--mobile-only a.is-active span {
    color: var(--v271-volt, #a3ff33) !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 {
    border-radius: 24px !important;
    margin-bottom: 16px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__inner {
    padding: 24px 18px !important;
    gap: 22px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__top,
  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__hero,
  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message,
  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__footer {
    width: 100% !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__top {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    padding-bottom: 20px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__label,
  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__mini-status {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    font-size: 12px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__hero {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__title {
    text-align: center !important;
    font-size: 25px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__lead {
    text-align: center !important;
    font-size: 14px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score {
    padding: 22px 18px !important;
    text-align: center !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-content {
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-number {
    width: 62px !important;
    height: 62px !important;
    border-radius: 16px !important;
    font-size: 32px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__score-details {
    align-items: center !important;
    text-align: center !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center !important;
    padding: 20px 16px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message-icon {
    margin: 0 auto !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__message-action {
    width: 100% !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1.5px solid var(--v271-volt) !important;
    border-radius: 12px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__map {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    width: 100% !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__map::before {
    display: none !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step {
    width: 100% !important;
    min-height: auto !important;
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    grid-template-areas:
      "head title"
      "head desc" !important;
    align-items: center !important;
    column-gap: 12px !important;
    row-gap: 3px !important;
    padding: 10px 12px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step-head {
    grid-area: head !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 4px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step strong {
    grid-area: title !important;
    font-size: 14.5px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__step span:last-child {
    grid-area: desc !important;
    font-size: 12.5px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__footer {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__footer-info {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__chip {
    flex: 1 1 calc(50% - 4px) !important;
    justify-content: center !important;
    min-height: 40px !important;
    font-size: 13px !important;
  }

  html body .mgym-html-config-page .configuracion_bloque_1--inicio-conf-v271 .configuracion_bloque_1__primary-link {
    width: 100% !important;
    min-height: 44px !important;
  }
}

/* [MGYM-CONFIG-HERO-INICIOCONF-V271-CSS-END] */
