:root {
  --bg:#FFFFFF;
  --ink:#0A0A0A;
  --line-gold:#B39B5E;
  --line-gold-soft:rgba(201,162,39,0.22);
  --body-text:#2A2114;
  --panel:#F4EEDF;
  --panel-2:#FAF6EC;
  --gold:#A8861E;
  --gold-marca:#C9A227;
  --red:#B23B24;
  --green:#5C7A4A;
  --yellow:#E6C65C;
  --muted:#7A6F5C;
  --gold-gradient:linear-gradient(
      110deg,#A8861E 20%,#FFE9A8 40%,#E6C65C 50%,#FFE9A8 60%,#A8861E 80%);
  --radius:16px;
  --shadow:0 10px 30px -12px rgba(17,17,17,.18);
  --topbar:64px;
}
* {
  box-sizing: border-box;
}
html,
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
}
body {
  font-family:
    "Inter",
    system-ui,
    -apple-system,
    sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
a {
  color: inherit;
}
button {
  font-family: inherit;
  font-size: inherit;
  cursor: pointer;
}
input,
textarea,
select {
  font-family: inherit;
  font-size: 16px;
  color: var(--ink);
}
.serif {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
}
[hidden] {
  display: none !important;
}
@keyframes shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@keyframes shimmer-v {
  0% {
    background-position: 0 200%;
  }
  100% {
    background-position: 0 -200%;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes spark-burst {
  0% {
    transform: translate(-50%, -50%) scale(.3);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(6);
    opacity: 0;
  }
}
@keyframes pulso {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(201,162,39, .55);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(201,162,39, 0);
  }
}
@keyframes sparkle-spin {
  0% {
    transform: rotate(0) scale(1);
  }
  50% {
    transform: rotate(180deg) scale(1.2);
  }
  100% {
    transform: rotate(360deg) scale(1);
  }
}
.shimmer {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.click-spark {
  position: fixed;
  left: 0;
  top: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  background:
    radial-gradient(
      circle,
      #E6C65C 0%,
      #A8861E 45%,
      rgba(201,162,39, 0) 72%);
  transform: translate(-50%, -50%);
  animation: spark-burst .65s ease-out forwards;
}
.logo-marca {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 11px;
  background: #0A0A0A;
  color: var(--gold-marca);
  font-weight: 800;
  font-size: 13px;
  letter-spacing: .5px;
  position: relative;
  overflow: hidden;
}
.logo-marca::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      110deg,
      transparent 30%,
      rgba(255, 233, 168, .55) 50%,
      transparent 70%);
  background-size: 250% 100%;
  animation: shimmer 3.5s linear infinite;
}
.logo-marca.grande {
  width: 72px;
  height: 72px;
  font-size: 22px;
  border-radius: 18px;
}
.cargando {
  min-height: 100vh;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 10px;
  color: var(--muted);
}
.topbar {
  position: sticky;
  top: 0;
  z-index: 50;
  height: var(--topbar);
  background: #fff;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0 20px;
  border-bottom: 1px solid var(--line-gold-soft);
  transition: box-shadow .2s;
}
.topbar.sombra {
  box-shadow: 0 6px 20px -10px rgba(0, 0, 0, .25);
}
.marca {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  min-width: 0;
}
.marca-txt {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}
.marca-txt b {
  font-size: 15px;
  font-weight: 800;
  white-space: nowrap;
}
.marca-txt span {
  font-size: 11px;
  letter-spacing: 2.5px;
  color: var(--gold);
  font-weight: 700;
}
.buscador {
  flex: 1;
  max-width: 460px;
  margin: 0 auto;
  position: relative;
}
.buscador input {
  width: 100%;
  height: 42px;
  border-radius: 999px;
  border: 1.5px solid #0A0A0A;
  padding: 0 16px 0 40px;
  background: #fff;
  outline: none;
}
.buscador input:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 4px var(--line-gold-soft);
}
.buscador::before {
  content: "🔎";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
}
.usuario {
  display: flex;
  align-items: center;
  gap: 10px;
}
.avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-grid;
  place-items: center;
  font-weight: 800;
  font-size: 13px;
  background: #0A0A0A;
  color: var(--gold-marca);
  flex: none;
}
.avatar.chico {
  width: 26px;
  height: 26px;
  font-size: 11px;
}
.avatar.admin {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  color: #0A0A0A;
}
.usuario-nombre {
  font-weight: 700;
  font-size: 14px;
  line-height: 1.1;
}
.usuario-nombre small {
  display: block;
  font-weight: 600;
  color: var(--muted);
  font-size: 14px;
}
.btn-salir {
  border: none;
  background: none;
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
  padding: 6px;
}
.btn-salir:hover {
  color: var(--red);
}
.secnav {
  position: sticky;
  top: var(--topbar);
  z-index: 40;
  background: #0A0A0A;
  display: flex;
  gap: 6px;
  padding: 10px 16px;
  overflow-x: auto;
  scrollbar-width: none;
}
.secnav::-webkit-scrollbar {
  display: none;
}
.secnav a {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  transition: background .2s, color .2s;
  position: relative;
}
.secnav a:hover {
  background: rgba(255, 255, 255, .1);
}
.secnav a.activo {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  color: #0A0A0A;
}
.badge {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--red);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
}
.secnav a.activo .badge {
  background: #0A0A0A;
  color: var(--yellow);
}
main {
  max-width: 1240px;
  margin: 0 auto;
  padding: 26px 20px 90px;
}
.hero {
  padding: 10px 0 22px;
}
.pill {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 11px;
  letter-spacing: 2px;
  color: #0A0A0A;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.hero h1 {
  font-size: clamp(28px, 4.2vw, 44px);
  font-weight: 800;
  margin: 12px 0 6px;
  letter-spacing: -.5px;
  line-height: 1.1;
}
.hero p {
  font-family: "Playfair Display", serif;
  font-size: 18px;
  color: var(--body-text);
  margin: 0;
  max-width: 760px;
}
h2.seccion {
  font-size: 20px;
  font-weight: 800;
  margin: 34px 0 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
h2.seccion::before {
  content: "";
  width: 6px;
  height: 22px;
  border-radius: 3px;
  background: var(--gold-gradient);
  background-size: 100% 250%;
  animation: shimmer-v 3s linear infinite;
}
h2.seccion .mas {
  margin-left: auto;
  font-size: 14px;
  font-weight: 700;
  color: var(--gold);
  text-decoration: none;
}
h3 {
  font-size: 16px;
  font-weight: 800;
  margin: 0 0 8px;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 12px;
  padding: 12px 18px;
  font-weight: 800;
  font-size: 14px;
  border: 1.5px solid #0A0A0A;
  background: #fff;
  color: #0A0A0A;
  text-decoration: none;
  transition: transform .15s, box-shadow .15s;
  white-space: nowrap;
}
.btn:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow);
}
.btn:disabled {
  opacity: .45;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}
.btn.oro {
  border-color: transparent;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  color: #0A0A0A;
}
.btn.negro {
  background: #0A0A0A;
  color: #fff;
  border-color: #0A0A0A;
}
.btn.verde {
  background: var(--green);
  border-color: var(--green);
  color: #fff;
}
.btn.rojo {
  background: #fff;
  border-color: var(--red);
  color: var(--red);
}
.btn.grande {
  padding: 16px 24px;
  font-size: 16px;
  border-radius: 14px;
}
.btn.chico {
  padding: 7px 12px;
  font-size: 14px;
  border-radius: 10px;
}
.btn.fantasma {
  border-color: transparent;
  background: transparent;
}
.btn.fantasma:hover {
  background: var(--panel-2);
  box-shadow: none;
}
.volver {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
  color: var(--muted);
  text-decoration: none;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1.5px solid var(--line-gold-soft);
  margin-bottom: 14px;
}
.volver:hover {
  color: #0A0A0A;
  border-color: transparent;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
.card {
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  padding: 18px;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  display: block;
  transition: transform .2s, box-shadow .2s;
  animation: fadeInUp .45s ease both;
}
.card::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      115deg,
      transparent 35%,
      rgba(255, 233, 168, .45) 50%,
      transparent 65%);
  transform: translateX(-120%);
  transition: transform .7s;
}
.card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow);
}
.card:hover::after {
  transform: translateX(120%);
}
.icono {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 22px;
  margin-bottom: 12px;
  transition: box-shadow .3s;
}
.card:hover .icono {
  box-shadow: 0 0 0 3px #fff, 0 0 18px 2px rgba(201,162,39, .8);
}
.eyebrow {
  font-size: 14px;
  letter-spacing: 1.8px;
  font-weight: 800;
  color: var(--gold);
  text-transform: uppercase;
}
.card h4 {
  font-size: 16px;
  font-weight: 800;
  margin: 4px 0 6px;
  line-height: 1.25;
}
.card p {
  margin: 0;
  font-size: 14px;
  color: var(--body-text);
}
.p1 {
  background: #FFF3C4;
}
.p2 {
  background: #E6EEFA;
}
.p3 {
  background: #E4EFDF;
}
.p4 {
  background: #FBE5E0;
}
.p5 {
  background: #ECE5F7;
}
.p6 {
  background: #F4EEDF;
}
.stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
}
.stat {
  border-radius: var(--radius);
  padding: 16px;
  border: 1.5px solid #0A0A0A;
  background: #fff;
  text-decoration: none;
  display: block;
  transition: transform .15s;
  animation: fadeInUp .4s ease both;
}
.stat:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.stat b {
  display: block;
  font-size: 32px;
  font-weight: 800;
  line-height: 1;
}
.stat span {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.stat.alerta {
  background: #0A0A0A;
  color: #fff;
  border-color: #0A0A0A;
}
.stat.alerta span {
  color: var(--gold-marca);
}
.stat.alerta b {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  border: 1px solid transparent;
}
.chip.suave {
  background: var(--panel-2);
  border-color: var(--line-gold-soft);
  color: var(--body-text);
}
.e-por_editar {
  background: #EEEEEE;
  color: #444;
}
.e-en_edicion {
  background: #E6EEFA;
  color: #2F5DA8;
}
.e-en_revision {
  background: #FFF3C4;
  color: #7A5A12;
}
.e-correcciones {
  background: #FBE5E0;
  color: var(--red);
}
.e-aprobado {
  background: #E4EFDF;
  color: #3F6B35;
}
.e-publicado {
  background: #ECE5F7;
  color: #5B3F8C;
}
.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.callout {
  position: relative;
  background: var(--panel-2);
  border-radius: 14px;
  padding: 16px 18px 16px 22px;
  overflow: hidden;
  margin: 12px 0;
}
.callout::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: var(--gold-gradient);
  background-size: 100% 250%;
  animation: shimmer-v 3s linear infinite;
}
.callout.warn {
  background: #FDF0EC;
}
.callout.warn::before {
  background: var(--red);
  animation: none;
}
.callout.tip {
  background: #EFF5EC;
}
.callout.tip::before {
  background: var(--green);
  animation: none;
}
.callout.negro {
  background: #0A0A0A;
  color: #fff;
}
.callout b.tit {
  display: block;
  margin-bottom: 4px;
}
.callout p {
  margin: .2em 0;
}
.formula {
  background: #0A0A0A;
  color: var(--gold-marca);
  border-radius: 14px;
  padding: 18px 20px;
  font-weight: 800;
  font-size: clamp(18px, 2.4vw, 24px);
  letter-spacing: .3px;
  line-height: 1.25;
}
.formula small {
  display: block;
  font-size: 14px;
  letter-spacing: 2px;
  color: #fff;
  opacity: .7;
  margin-bottom: 6px;
}
.aviso-duena {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.aviso-duena .avatar {
  width: 44px;
  height: 44px;
  font-size: 16px;
}
.aviso-duena .txt {
  font-family: "Playfair Display", serif;
  font-size: 17px;
  white-space: pre-wrap;
}
.flujo {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  counter-reset: paso;
}
.flujo div {
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 14px 14px 14px 56px;
  position: relative;
  font-size: 14px;
  animation: fadeInUp .45s ease both;
}
.flujo div::before {
  counter-increment: paso;
  content: counter(paso);
  position: absolute;
  left: 14px;
  top: 14px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-weight: 800;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.flujo b {
  display: block;
  font-size: 14.5px;
}
.lista-v {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}
.vfila {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  text-decoration: none;
  background: #fff;
  transition: transform .15s, box-shadow .15s;
  animation: fadeInUp .35s ease both;
  min-width: 0;
}
.vfila:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.vfila .fmt {
  font-size: 22px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  flex: none;
}
.vfila .cuerpo {
  flex: 1;
  min-width: 0;
}
.vfila .cuerpo b {
  display: block;
  font-size: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.vfila .cuerpo small {
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
}
.vfila .der {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: none;
}
.punto-nuevo {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--red);
  display: inline-block;
  animation: pulso 1.8s infinite;
}
.vacio {
  padding: 28px;
  border: 1.5px dashed var(--line-gold);
  border-radius: 14px;
  text-align: center;
  color: var(--muted);
  font-weight: 600;
}
.filtros {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 4px 0 18px;
}
.fbtn {
  border: 1.5px solid #0A0A0A;
  background: #fff;
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 700;
  font-size: 14px;
}
.fbtn.activo {
  background: #0A0A0A;
  color: #fff;
}
.filtros select {
  border: 1.5px solid #0A0A0A;
  border-radius: 999px;
  padding: 8px 12px;
  font-weight: 700;
  font-size: 14px;
  background: #fff;
}
.filtros .espacio {
  flex: 1;
}
.tablero {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(270px, 1fr);
  gap: 14px;
  overflow-x: auto;
  padding-bottom: 10px;
  scroll-snap-type: x mandatory;
}
.col {
  background: var(--panel-2);
  border-radius: var(--radius);
  padding: 12px;
  min-height: 200px;
  scroll-snap-align: start;
  border: 1px solid var(--line-gold-soft);
}
.col-tit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 800;
  font-size: 14px;
  margin: 2px 4px 12px;
}
.col-tit .n {
  background: #0A0A0A;
  color: #fff;
  border-radius: 999px;
  padding: 1px 9px;
  font-size: 14px;
}
.vcard {
  display: block;
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 12px;
  margin-bottom: 10px;
  text-decoration: none;
  transition: transform .15s, box-shadow .15s;
  animation: fadeInUp .35s ease both;
}
.vcard:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.vcard b {
  display: block;
  font-size: 14px;
  line-height: 1.3;
  margin: 6px 0;
}
.vcard .gancho-mini {
  font-size: 14px;
  color: var(--body-text);
  font-style: italic;
  font-family: "Playfair Display", serif;
  margin-bottom: 6px;
}
.vcard .pie {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.det-cab {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.det-cab h1 {
  font-size: clamp(24px, 3.4vw, 36px);
  font-weight: 800;
  margin: 10px 0 4px;
  line-height: 1.15;
  letter-spacing: -.3px;
}
.stepper {
  display: flex;
  gap: 6px;
  margin: 18px 0;
}
.stepper div {
  flex: 1;
  text-align: center;
  font-size: 14px;
  font-weight: 800;
  color: var(--muted);
}
.stepper div::before {
  content: "";
  display: block;
  height: 8px;
  border-radius: 4px;
  background: #E8E2D2;
  margin-bottom: 7px;
}
.stepper div.hecho::before {
  background: #0A0A0A;
}
.stepper div.actual::before {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 2.5s linear infinite;
}
.stepper div.actual {
  color: #0A0A0A;
}
.stepper div.rojo::before {
  background: var(--red);
}
.stepper div.rojo {
  color: var(--red);
}
.accion {
  border-radius: 18px;
  padding: 20px;
  background: #0A0A0A;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  justify-content: space-between;
}
.accion .acc-msg {
  font-size: 16px;
  font-weight: 700;
  max-width: 640px;
}
.accion .acc-msg small {
  display: block;
  font-weight: 500;
  color: #cfc6b0;
  font-size: 14px;
  margin-top: 4px;
}
.accion .btns {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.accion .btn {
  border-color: #fff;
}
.accion .btn.fantasma {
  color: #fff;
}
.accion.neutra {
  background: var(--panel);
}
.accion.neutra {
  color: #0A0A0A;
}
.accion.neutra .acc-msg small {
  color: var(--muted);
}
.det-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 1fr);
  gap: 22px;
  margin-top: 22px;
  align-items: start;
}
.bloque {
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  padding: 18px;
  margin-bottom: 16px;
  background: #fff;
}
.bloque h3 {
  display: flex;
  align-items: center;
  gap: 8px;
}
.texto-largo {
  font-family: "Playfair Display", serif;
  font-size: 16px;
  color: var(--body-text);
  white-space: pre-wrap;
  line-height: 1.6;
}
.links {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}
.link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 700;
  transition: transform .15s, box-shadow .15s;
  background: #fff;
  min-width: 0;
}
.link:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow);
}
.link .ic {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-size: 18px;
  flex: none;
}
.link .lt {
  flex: 1;
  min-width: 0;
}
.link .lt small {
  display: block;
  font-weight: 600;
  color: var(--muted);
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.link .fl {
  font-size: 18px;
  color: var(--gold);
}
details.guion summary {
  cursor: pointer;
  font-weight: 800;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 8px;
}
details.guion summary::-webkit-details-marker {
  display: none;
}
details.guion summary::after {
  content: "Ver ▾";
  margin-left: auto;
  font-size: 14px;
  color: var(--gold);
}
details.guion[open] summary::after {
  content: "Ocultar ▴";
}
details.guion .texto-largo {
  margin-top: 12px;
  max-height: 520px;
  overflow: auto;
  padding-right: 6px;
}
.chat {
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  background: #fff;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.chat.sticky {
  position: sticky;
  top: calc(var(--topbar) + 70px);
  max-height: calc(100vh - var(--topbar) - 90px);
}
.chat-cab {
  padding: 14px 16px;
  border-bottom: 1px solid var(--line-gold-soft);
  font-weight: 800;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2px 8px;
  background: var(--panel-2);
}
.chat-cab small {
  font-weight: 600;
  color: var(--muted);
  display: block;
  width: 100%;
  font-size: 14px;
}
.chat-msgs {
  flex: 1;
  overflow-y: auto;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 220px;
  max-height: 560px;
}
.chat-msgs.alto {
  max-height: none;
}
.msg {
  display: flex;
  gap: 8px;
  align-items: flex-end;
  max-width: 92%;
}
.msg .burbuja {
  background: var(--panel-2);
  border-radius: 14px 14px 14px 4px;
  padding: 9px 12px;
  font-size: 14px;
  white-space: pre-wrap;
  word-break: break-word;
}
.msg .burbuja a {
  color: var(--gold);
  font-weight: 700;
  word-break: break-all;
}
.msg .quien {
  font-size: 14px;
  font-weight: 800;
  color: var(--muted);
  margin-bottom: 2px;
}
.msg.mio {
  align-self: flex-end;
  flex-direction: row-reverse;
}
.msg.mio .burbuja {
  background: #0A0A0A;
  color: #fff;
  border-radius: 14px 14px 4px 14px;
}
.msg.mio .burbuja a {
  color: var(--gold-marca);
}
.msg.duena .burbuja {
  border: 1.5px solid var(--gold);
}
.msg.mio.duena .burbuja {
  border: none;
}
.evento {
  align-self: center;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  background: #fff;
  border: 1px dashed var(--line-gold);
  border-radius: 999px;
  padding: 4px 12px;
  text-align: center;
  max-width: 95%;
}
.chat-in {
  display: flex;
  gap: 8px;
  padding: 10px;
  border-top: 1px solid var(--line-gold-soft);
  background: #fff;
}
.chat-in textarea {
  flex: 1;
  resize: none;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 10px 12px;
  min-height: 44px;
  max-height: 160px;
  outline: none;
}
.chat-in textarea:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px var(--line-gold-soft);
}
.hora {
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
  margin-top: 3px;
}
.mensajes-layout {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.mensajes-layout > *,
.det-grid > *,
.guia-layout > * {
  min-width: 0;
}
.hilos {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}
.hilo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border-radius: 12px;
  border: 1.5px solid #0A0A0A;
  text-decoration: none;
  background: #fff;
  min-width: 0;
}
.hilo.activo {
  background: #0A0A0A;
  color: #fff;
}
.hilo .t {
  flex: 1;
  min-width: 0;
}
.hilo .t b {
  display: block;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.hilo .t small {
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.hilo.activo .t small {
  color: #cfc6b0;
}
.cat-cab {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 30px 0 12px;
}
.cat-cab .icono {
  margin: 0;
}
.cat-cab h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 800;
}
.cat-cab p {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.card::after {
  pointer-events: none;
}
.recurso {
  cursor: pointer;
}
.recurso .tapa {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
}
.recurso .acciones-admin {
  position: absolute;
  top: 10px;
  right: 10px;
  display: flex;
  gap: 4px;
  z-index: 2;
}
.recurso .acciones-admin button {
  border: none;
  background: #fff;
  border-radius: 8px;
  width: 30px;
  height: 30px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, .2);
}
.recurso .abrir {
  display: inline-block;
  margin-top: 10px;
  font-weight: 800;
  font-size: 14px;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.guia-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}
.toc {
  position: sticky;
  top: calc(var(--topbar) + 76px);
  display: grid;
  gap: 4px;
}
.toc a {
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  padding: 8px 12px;
  border-radius: 10px;
  color: var(--body-text);
}
.toc a:hover {
  background: var(--panel-2);
}
.guia section {
  scroll-margin-top: 140px;
  margin-bottom: 34px;
}
.guia section > h2 {
  font-size: 24px;
  font-weight: 800;
  margin: 0 0 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.guia p,
.guia li {
  font-family: "Playfair Display", serif;
  font-size: 16px;
  color: var(--body-text);
}
.reglas {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.regla {
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 16px;
  background: #fff;
}
.regla .num {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-weight: 800;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  margin-bottom: 8px;
}
.regla b {
  display: block;
  font-size: 15px;
  margin-bottom: 6px;
}
.regla p {
  font-size: 14.5px;
  margin: 0;
}
.checklist {
  list-style: none;
  padding: 0;
  margin: 8px 0;
}
.checklist li {
  position: relative;
  padding: 7px 0 7px 32px;
  border-bottom: 1px dashed var(--line-gold-soft);
}
.checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 7px;
  width: 22px;
  height: 22px;
  border-radius: 6px;
  background: #0A0A0A;
  color: var(--gold-marca);
  display: grid;
  place-items: center;
  font-size: 14px;
  font-family: "Inter";
  font-weight: 800;
}
.swatches {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.swatch {
  width: 150px;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  overflow: hidden;
  font-size: 14px;
  font-weight: 700;
}
.swatch div {
  height: 70px;
}
.swatch span {
  display: block;
  padding: 8px 10px;
}
.tipos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.tipo {
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 14px;
  background: #0A0A0A;
  color: #fff;
}
.tipo .muestra {
  font-size: 28px;
  color: var(--gold-marca);
  margin: 6px 0;
}
.tabla {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  overflow: hidden;
  font-size: 14px;
}
.tabla th {
  background: #0A0A0A;
  color: var(--gold-marca);
  text-align: left;
  padding: 10px 12px;
  font-size: 14px;
  letter-spacing: .5px;
}
.tabla td {
  padding: 10px 12px;
  border-top: 1px solid var(--line-gold-soft);
  vertical-align: top;
}
.scroll-x {
  overflow-x: auto;
}
.closer {
  position: relative;
  border: 2px dashed var(--line-gold);
  border-radius: 18px;
  padding: 22px 26px;
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 19px;
  margin-top: 20px;
}
.closer::after {
  content: "✦";
  position: absolute;
  top: -14px;
  right: 18px;
  font-size: 24px;
  color: var(--gold);
  background: #fff;
  padding: 0 6px;
  animation: sparkle-spin 4s linear infinite;
}
.modal-fondo {
  position: fixed;
  inset: 0;
  background: rgba(17, 17, 17, .55);
  z-index: 200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  animation: fadeInUp .2s ease;
}
.modal {
  background: #fff;
  border-radius: 20px;
  width: min(640px, 100%);
  max-height: 92vh;
  overflow: auto;
  padding: 24px;
  position: relative;
  border: 3px solid transparent;
  background-clip: padding-box;
}
.modal::before {
  content: "";
  position: absolute;
  inset: -3px;
  border-radius: 22px;
  z-index: -1;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.modal-wrap {
  position: relative;
  z-index: 0;
  width: min(640px, 100%);
}
.modal h2 {
  margin: 0 0 6px;
  font-size: 22px;
  font-weight: 800;
}
.modal .sub {
  margin: 0 0 16px;
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
}
.cerrar {
  position: absolute;
  top: 14px;
  right: 14px;
  border: none;
  background: var(--panel-2);
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-size: 16px;
}
.campo {
  display: grid;
  gap: 6px;
  margin-bottom: 14px;
}
.campo label {
  font-weight: 800;
  font-size: 14px;
}
.campo label small {
  font-weight: 600;
  color: var(--muted);
}
.campo input,
.campo textarea,
.campo select {
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 11px 13px;
  outline: none;
  background: #fff;
  width: 100%;
}
.campo textarea {
  min-height: 90px;
  resize: vertical;
}
.campo input:focus,
.campo textarea:focus,
.campo select:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px var(--line-gold-soft);
}
.dos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 9px 12px;
  border-radius: 10px;
  border: 1.5px solid var(--line-gold-soft);
  margin-bottom: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
}
.check input {
  width: 20px;
  height: 20px;
  accent-color: #0A0A0A;
  flex: none;
  margin-top: 1px;
}
.check:has(input:checked) {
  background: #EFF5EC;
  border-color: var(--green);
}
.pie-modal {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 16px;
  flex-wrap: wrap;
}
.error {
  color: var(--red);
  font-weight: 700;
  font-size: 14px;
  min-height: 18px;
}
.toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  background: #0A0A0A;
  color: #fff;
  padding: 12px 20px;
  border-radius: 999px;
  font-weight: 700;
  z-index: 300;
  box-shadow: var(--shadow);
  animation: fadeInUp .25s ease;
}
.toast.mal {
  background: var(--red);
}
.login {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background:
    radial-gradient(
      1200px 500px at 50% -10%,
      #FFF6D6,
      transparent),
    #fff;
}
.login-card {
  width: min(460px, 100%);
  text-align: center;
  position: relative;
  z-index: 0;
}
.login-card .modal {
  width: 100%;
  text-align: left;
}
.login h1 {
  font-size: 30px;
  font-weight: 800;
  margin: 14px 0 4px;
  text-align: center;
}
.login .bajada {
  font-family: "Playfair Display", serif;
  font-size: 17px;
  color: var(--body-text);
  margin: 0 0 20px;
  text-align: center;
}
.separador {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 700;
  margin: 18px 0;
}
.separador::before,
.separador::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--line-gold-soft);
}
.codigo-grande {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 3px;
  background: #0A0A0A;
  color: var(--gold-marca);
  padding: 14px;
  border-radius: 14px;
  text-align: center;
  margin: 10px 0;
}
.copiable {
  display: flex;
  gap: 8px;
  align-items: center;
}
.copiable input {
  flex: 1;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 14px;
  background: var(--panel-2);
}
.tabla-equipo td .copiable input {
  min-width: 220px;
}
.e-programado {
  background: #FFF0DB;
  color: #9A5B13;
}
.tabs-seccion {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 16px;
}
.tab-sec {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 10px;
  border-radius: 14px;
  border: 1.5px solid #0A0A0A;
  background: #fff;
  font-weight: 800;
  font-size: 14px;
  transition: transform .15s, box-shadow .15s;
  min-width: 0;
}
.tab-sec:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.tab-sec .n {
  background: #0A0A0A;
  color: #fff;
  border-radius: 999px;
  padding: 1px 9px;
  font-size: 14px;
}
.tab-sec.activo {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  border-color: transparent;
}
.tab-sec.activo .n {
  color: var(--yellow);
}
.cab-seccion {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  border-radius: var(--radius);
  padding: 14px 16px;
  margin-bottom: 14px;
}
.cab-seccion .icono {
  margin: 0;
}
.cab-seccion p {
  margin: 2px 0 0;
  font-size: 14px;
  color: var(--body-text);
}
.resp-sel {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-weight: 800;
  font-size: 14px;
}
.resp-sel select,
.sel-asignar {
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 10px 12px;
  font-weight: 700;
  background: #fff;
  color: #0A0A0A;
  font-size: 15px;
  max-width: 100%;
}
.accion .sel-asignar {
  min-width: 220px;
}
.secciones {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.seccion-card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  padding: 16px;
  text-decoration: none;
  background: #fff;
  transition: transform .15s, box-shadow .15s;
  animation: fadeInUp .4s ease both;
  min-width: 0;
}
.seccion-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.seccion-card .icono {
  margin-bottom: 6px;
}
.seccion-card b {
  font-size: 16px;
}
.seccion-card small {
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
}
.seccion-card .resp {
  margin-top: 6px;
  font-size: 14px;
  font-weight: 700;
}
@media (max-width: 980px) {
  .tabs-seccion {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .secciones {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .tabs-seccion {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tab-sec {
    font-size: 14px;
    padding: 12px 8px;
  }
  .accion .sel-asignar {
    min-width: 0;
    width: 100%;
  }
}
.tabla-wrap {
  overflow-x: auto;
  border-radius: 14px;
}
.tabla-v td {
  vertical-align: top;
}
.tabla-v tbody tr:hover {
  background: var(--panel-2);
}
.tabla-v .tv-tit {
  font-weight: 800;
  text-decoration: none;
  line-height: 1.3;
  font-size: 14.5px;
}
.tabla-v .tv-tit:hover {
  color: var(--gold);
}
.tabla-v small {
  display: block;
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
  margin-top: 4px;
}
.tabla-v .tv-pedido {
  display: block;
  font-family: "Playfair Display", serif;
  font-size: 14px;
  color: var(--body-text);
  margin-top: 5px;
  line-height: 1.4;
}
.tabla-v .tv-gancho {
  font-size: 14px;
  line-height: 1.35;
}
.tl {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 800;
  color: var(--gold);
  text-decoration: none;
  background: none;
  border: none;
  padding: 2px 0;
  font-size: 14px;
  white-space: nowrap;
  cursor: pointer;
}
.tl:hover {
  text-decoration: underline;
}
.nada {
  color: #B0A794;
  font-size: 14px;
  font-weight: 600;
}
.carpetas-crudos {
  margin-top: 20px;
}
.carpetas-crudos summary {
  cursor: pointer;
  font-weight: 800;
}
@media (max-width: 760px) {
  .tabla-v thead {
    display: none;
  }
  .tabla-v,
  .tabla-v tbody,
  .tabla-v tr,
  .tabla-v td {
    display: block;
    width: 100%;
  }
  .tabla-v {
    border: none;
    border-radius: 0;
    overflow: visible;
  }
  .tabla-v tr {
    border: 1.5px solid #0A0A0A;
    border-radius: 14px;
    margin-bottom: 12px;
    padding: 6px 0;
    background: #fff;
  }
  .tabla-v td {
    border-top: none;
    padding: 7px 14px;
  }
  .tabla-v td::before {
    content: attr(data-label);
    display: block;
    font-size: 14px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 800;
    margin-bottom: 3px;
  }
}
.seg {
  display: inline-flex;
  border: 1.5px solid #0A0A0A;
  border-radius: 999px;
  overflow: hidden;
  background: #fff;
}
.seg button {
  border: none;
  background: transparent;
  padding: 8px 14px;
  font-weight: 800;
  font-size: 14px;
}
.seg button.activo {
  background: #0A0A0A;
  color: #fff;
}
.fila-click {
  cursor: pointer;
}
.trello {
  grid-auto-columns: minmax(250px, 280px);
}
.trello .col {
  background: #F1ECE0;
  min-height: 360px;
  transition: background .15s, box-shadow .15s;
}
.trello .col.sobre {
  background: #FFF3C4;
  box-shadow: inset 0 0 0 2px var(--gold);
}
.col-cards {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 280px;
}
.col-vacia {
  border: 1.5px dashed var(--line-gold);
  border-radius: 12px;
  padding: 20px 10px;
  text-align: center;
  color: var(--muted);
  font-size: 14px;
  font-weight: 700;
}
.tcard {
  background: #fff;
  border-radius: 12px;
  padding: 12px;
  border: 1px solid rgba(17, 17, 17, .1);
  box-shadow: 0 1px 0 rgba(17, 17, 17, .1), 0 3px 10px -6px rgba(17, 17, 17, .3);
  cursor: grab;
  animation: fadeInUp .3s ease both;
  transition: transform .12s, box-shadow .12s;
}
.tcard:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.tcard:active {
  cursor: grabbing;
}
.tcard.arrastrando {
  opacity: .4;
  transform: rotate(2deg);
}
.tcard b {
  display: block;
  font-size: 14px;
  line-height: 1.3;
  margin: 8px 0 6px;
}
.tcard-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}
.tcard .pie {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.ayuda-tablero {
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
  margin: -4px 0 12px;
}
.ayuda-tablero.extra {
  color: #6b4e12;
  background: #FBF7EC;
  border: 1px solid #ECDCAE;
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 700;
  margin: 0 0 14px;
}
.trello .col.col-especial {
  background: #FBF3DE;
  box-shadow: inset 0 0 0 1.5px var(--line-gold-soft);
}
.trello .col.col-especial .col-tit {
  color: #6b4e12;
}
.tcard-extra {
  border: 1.5px solid var(--line-gold);
  background:
    linear-gradient(
      180deg,
      #fffdf7,
      #fff);
}
.tcard-extra .nota-mini {
  font-size: 14px;
  font-weight: 700;
  color: #6b4e12;
  margin: 0 0 6px;
  line-height: 1.35;
}
.tcard-extra .nota-mini.vers {
  color: var(--muted);
  font-weight: 700;
}
.tcard-extra .nota-mini.vers small {
  font-weight: 700;
}
.tcard-extra .nota-mini.nota {
  color: var(--muted);
  font-weight: 600;
  margin: 8px 0 0;
}
.tcard-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
.tcard-btns .btn {
  font-size: 14px;
  font-weight: 800;
}
.modal-wrap.grande {
  width: min(1200px, 100%);
}
.modal.grande {
  width: 100%;
  max-height: 94vh;
  padding: 26px 28px;
}
.modal.grande .det-cab h1 {
  padding-right: 44px;
  margin-top: 8px;
}
.modal.grande .det-grid {
  margin-top: 16px;
}
.modal.grande .chat.sticky {
  position: static;
  max-height: none;
}
.modal.grande .chat-msgs {
  max-height: 420px;
}
.modal.grande a.chip {
  text-decoration: none;
}
@media (max-width: 760px) {
  .modal-fondo:has(.modal.grande) {
    padding: 0;
  }
  .modal-wrap.grande {
    height: 100%;
  }
  .modal.grande {
    max-height: 100%;
    height: 100%;
    border-radius: 0;
    padding: 18px 14px;
  }
  .modal-wrap.grande .modal::before {
    display: none;
  }
}
@media (max-width: 980px) {
  .det-grid,
  .mensajes-layout,
  .guia-layout {
    grid-template-columns: 1fr;
  }
  .chat.sticky {
    position: static;
    max-height: none;
  }
  .toc {
    position: static;
    display: flex;
    flex-wrap: wrap;
  }
  .reglas,
  .tipos {
    grid-template-columns: 1fr;
  }
  .flujo {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  .topbar {
    padding: 0 12px;
    gap: 10px;
  }
  .marca-txt {
    display: none;
  }
  .usuario-nombre {
    display: none;
  }
  main {
    padding: 18px 14px 80px;
  }
  .flujo {
    grid-template-columns: 1fr;
  }
  .dos {
    grid-template-columns: 1fr;
  }
  .accion {
    flex-direction: column;
    align-items: stretch;
  }
  .accion .btns .btn {
    flex: 1;
  }
  .stepper div {
    font-size: 14px;
  }
  .vfila .der .chip {
    display: none;
  }
}
.chat-in {
  flex-wrap: wrap;
  align-items: flex-end;
}
.chat-in .audio-box {
  flex-basis: 100%;
}
.chat-in textarea {
  min-width: 0;
}
.btn.ico {
  padding: 0;
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  font-size: 18px;
  border-radius: 12px;
  flex: none;
}
.audio-acciones {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  margin-bottom: 12px;
}
.audio-acciones small {
  flex-basis: 100%;
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
}
.audio-box {
  margin-bottom: 12px;
}
.chat-in .audio-box {
  margin: 0;
}
.rec {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  background: var(--panel-2);
  border: 1.5px dashed var(--gold);
  border-radius: 12px;
  padding: 10px 12px;
  font-weight: 700;
  font-size: 14px;
}
.rec small {
  font-weight: 600;
  color: var(--muted);
}
.rec b {
  font-variant-numeric: tabular-nums;
  min-width: 38px;
}
.rec.listo audio {
  width: 100%;
  max-width: 340px;
  height: 38px;
}
.rec.listo span {
  flex: 1;
  min-width: 160px;
}
.rec-punto {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--red);
  animation: latido 1s ease-in-out infinite;
}
@keyframes latido {
  50% {
    opacity: .25;
  }
}
.girando {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2.5px solid var(--line-gold-soft);
  border-top-color: var(--gold);
  animation: girar .8s linear infinite;
  flex: none;
}
@keyframes girar {
  to {
    transform: rotate(360deg);
  }
}
.adj-audio {
  margin-top: 6px;
  display: grid;
  gap: 4px;
  max-width: 100%;
}
.adj-audio audio {
  width: 280px;
  max-width: 100%;
  height: 38px;
}
.trans summary {
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: var(--gold);
}
.trans div {
  font-size: 14px;
  white-space: pre-wrap;
  word-break: break-word;
  background: #fff;
  border: 1px solid var(--line-gold-soft);
  border-radius: 10px;
  padding: 8px 10px;
  margin-top: 4px;
  color: var(--body-text);
  max-height: 260px;
  overflow-y: auto;
}
.ver-avisos {
  display: inline-block;
  margin-top: 8px;
  font-weight: 800;
  font-size: 14px;
  color: var(--gold);
  text-decoration: none;
}
.aviso-card {
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  padding: 18px 20px 18px 24px;
  margin-bottom: 14px;
  background: #fff;
  position: relative;
  overflow: hidden;
}
.aviso-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: var(--gold-gradient);
  background-size: 100% 250%;
  animation: shimmer-v 3s linear infinite;
}
.aviso-card.nuevo {
  border-color: var(--gold);
  box-shadow: 0 0 0 4px var(--line-gold-soft);
}
.aviso-cab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.aviso-card h3 {
  margin: 6px 0 8px;
  font-size: 20px;
}
.aviso-card .txt,
.aviso-item .txt {
  font-family: "Playfair Display", serif;
  font-size: 16.5px;
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
  margin-bottom: 12px;
}
.lect-tit {
  margin: 10px 0 6px;
  font-weight: 800;
  font-size: 14px;
  color: var(--muted);
}
.lecturas {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.chip.leido {
  background: #E7F0E1;
  color: #3F5E31;
  border-color: transparent;
}
.chip.pendiente {
  background: var(--panel-2);
  color: var(--muted);
  border-color: var(--line-gold-soft);
}
.aviso-pop .pill {
  margin-bottom: 6px;
}
.aviso-item {
  padding: 14px 0;
  border-bottom: 1px solid var(--line-gold-soft);
}
.aviso-item:last-of-type {
  border-bottom: none;
}
.aviso-item small {
  font-weight: 700;
  color: var(--muted);
}
.aviso-item h2 {
  margin: 6px 0 8px;
}
.in-discord {
  border: 1.5px solid var(--line-gold-soft);
  border-radius: 10px;
  padding: 7px 10px;
  width: 190px;
  max-width: 100%;
  font-size: 14px;
  background: #fff;
}
.in-discord:focus {
  outline: none;
  border-color: var(--gold);
  box-shadow: 0 0 0 3px var(--line-gold-soft);
}
.cod {
  display: inline-block;
  margin-top: 3px;
  font-weight: 800;
  color: var(--gold);
  font-size: 14px;
  word-break: break-all;
}
.codigo-chip {
  display: inline-block;
  background: #0A0A0A;
  color: var(--gold-marca);
  border-radius: 8px;
  padding: 3px 9px;
  font-weight: 800;
  letter-spacing: .4px;
  word-break: break-all;
}
.ayuda-previa {
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  line-height: 1.5;
}
.previas {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}
.previa-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  background: #fff;
  cursor: pointer;
  text-align: left;
  font: inherit;
  min-width: 0;
  width: 100%;
  transition:
    transform .15s,
    box-shadow .15s,
    border-color .15s;
}
.previa-card:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow);
  border-color: var(--gold);
}
.previa-play {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  flex: none;
  background: var(--gold-gradient);
  color: #0A0A0A;
  font-size: 15px;
  padding-left: 3px;
}
.previa-txt {
  flex: 1;
  min-width: 0;
}
.previa-txt b {
  display: block;
  font-weight: 800;
  font-size: 14px;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.previa-txt small {
  display: block;
  font-weight: 600;
  color: var(--muted);
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 2px;
}
.repro {
  text-align: center;
}
.repro h2 {
  margin: 0 0 14px;
  font-size: 19px;
  line-height: 1.35;
}
.repro-video {
  width: 100%;
  max-width: 420px;
  max-height: 62vh;
  border-radius: 14px;
  background: #0A0A0A;
  border: 1.5px solid #0A0A0A;
  display: block;
  margin: 0 auto;
}
.repro-nota {
  margin: 12px auto 0;
  max-width: 460px;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  line-height: 1.5;
}
.repro-botones {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 14px;
}
.repro-botones .btn {
  text-decoration: none;
}
.repro-arch {
  margin: 12px 0 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  word-break: break-all;
}
@media (max-width: 520px) {
  .previas {
    grid-template-columns: minmax(0, 1fr);
  }
  .repro-video {
    max-height: 52vh;
  }
}
.mom {
  border-left: 3px solid var(--line-gold-soft);
  padding: 2px 0 2px 12px;
  margin: 0 0 16px;
}
.mom:last-child {
  margin-bottom: 0;
}
.mom-frase {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 15.5px;
  line-height: 1.45;
  color: var(--ink);
}
.mom-idea {
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  margin-top: 3px;
  line-height: 1.45;
}
.broll-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 10px;
  margin-top: 9px;
}
.broll-card {
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-width: 0;
  transition:
    transform .15s,
    box-shadow .15s,
    border-color .15s;
}
.broll-card:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow);
  border-color: var(--gold);
}
.broll-tapa {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  border: none;
  background: #0A0A0A;
  cursor: pointer;
  line-height: 0;
}
.broll-tapa img {
  width: 100%;
  aspect-ratio: 9/12;
  object-fit: cover;
  display: block;
  opacity: .94;
}
.broll-tapa:hover img {
  opacity: 1;
}
.broll-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--gold-gradient);
  color: #0A0A0A;
  font-size: 15px;
  padding-left: 3px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .35);
}
.broll-top {
  position: absolute;
  left: 6px;
  top: 6px;
  background: #0A0A0A;
  color: var(--gold-marca);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .3px;
  border-radius: 6px;
  padding: 2px 6px;
  line-height: 1.6;
}
.broll-txt {
  padding: 9px 10px 6px;
  min-width: 0;
}
.broll-txt b {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--body-text);
}
.broll-txt small {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  margin-top: 4px;
}
.broll-btns {
  display: flex;
  gap: 6px;
  padding: 0 10px 10px;
  margin-top: auto;
}
.broll-btns .btn {
  text-decoration: none;
  flex: none;
}
.broll-btns .btn.oro {
  flex: 1;
  text-align: center;
}
img.repro-video {
  object-fit: contain;
}
@media (max-width: 520px) {
  .broll-grid {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  }
}
.broll-card.caso {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px var(--line-gold-soft);
}
.broll-card.caso .broll-tapa img {
  aspect-ratio: 1/1;
  object-fit: cover;
}
.guiones {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
}
.guion-card {
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  padding: 16px 18px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.guion-cab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.guion-cab small {
  color: var(--muted);
  font-weight: 700;
  font-size: 14px;
}
.guion-card h3 {
  margin: 0;
  font-size: 18px;
}
.guion-gancho {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: 16px;
  color: var(--body-text);
}
.guion-prev {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.guion-card .chips {
  margin-top: auto;
}
body {
  background:
    radial-gradient(
      940px 460px at 10% -10%,
      rgba(230,198,92, .20),
      transparent 70%),
    radial-gradient(
      820px 420px at 92% -4%,
      rgba(201,162,39, .22),
      transparent 72%),
    radial-gradient(
      1200px 680px at 50% 108%,
      rgba(255, 233, 168, .28),
      transparent 72%),
    #FFFDF7;
  background-attachment: fixed;
}
#cielo {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
#app {
  position: relative;
  z-index: 1;
}
.login {
  background: transparent;
}
.topbar {
  background: rgba(255, 253, 247, .78);
  backdrop-filter: blur(16px) saturate(150%);
  -webkit-backdrop-filter: blur(16px) saturate(150%);
  border-bottom: 1px solid var(--line-gold-soft);
}
.topbar.sombra {
  box-shadow: 0 8px 26px -14px rgba(201,162,39, .65);
}
.secnav {
  box-shadow: 0 10px 30px -18px rgba(201,162,39, .9);
}
.card,
.stat,
.recurso {
  box-shadow: 0 0 26px -14px rgba(201,162,39, .75);
}
.card:hover,
.stat:hover {
  box-shadow: var(--shadow), 0 0 34px -10px rgba(230,198,92, .55);
}
.btn.oro {
  box-shadow: 0 0 22px -8px rgba(230,198,92, .8);
}
.btn.oro:hover {
  box-shadow: 0 8px 28px -8px rgba(230,198,92, .95);
}
.pill {
  box-shadow: 0 0 20px -6px rgba(230,198,92, .85);
}
.brilla {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3.4s linear infinite;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 2px 10px rgba(230,198,92, .45));
}
@keyframes latido-oro {
  0%, 100% {
    opacity: .55;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.12);
  }
}
.marca-app {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: inherit;
  min-width: 0;
}
.marca-app .emblema {
  flex: none;
  display: block;
  width: 46px;
  height: 46px;
  position: relative;
}
.marca-app .emblema img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 2px 7px rgba(201,162,39, .55));
}
.marca-app .emblema::after {
  content: "";
  position: absolute;
  inset: -18%;
  border-radius: 50%;
  pointer-events: none;
  background:
    radial-gradient(
      circle,
      rgba(230,198,92, .40) 0%,
      rgba(230,198,92, 0) 68%);
  animation: latido-oro 3.6s ease-in-out infinite;
}
.marca-app .palabras {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
  min-width: 0;
}
.marca-app .wm {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .2px;
  white-space: nowrap;
}
.marca-app .wm i {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-style: italic;
  font-weight: 600;
}
.marca-app .wm-sub {
  font-size: 14px;
  letter-spacing: 3px;
  color: var(--gold);
  font-weight: 800;
}
.marca-app.gigante {
  flex-direction: column;
  gap: 18px;
  text-align: center;
}
.marca-app.gigante .emblema {
  width: clamp(120px, 19vw, 170px);
  height: clamp(120px, 19vw, 170px);
}
.marca-app.gigante .palabras {
  align-items: center;
}
.marca-app.gigante .wm {
  font-size: clamp(26px, 4.6vw, 44px);
  letter-spacing: -.3px;
  line-height: 1.05;
  white-space: normal;
}
.marca-app.gigante .wm-sub {
  font-size: clamp(11px, 1.5vw, 13px);
  letter-spacing: 7px;
  margin-top: 10px;
}
.portada {
  position: relative;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 34px 20px 10px;
  margin-bottom: 6px;
}
.portada::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 44%;
  transform: translate(-50%, -50%);
  width: min(760px, 116%);
  height: min(420px, 92vw);
  pointer-events: none;
  background:
    radial-gradient(
      closest-side,
      rgba(230,198,92, .30),
      rgba(255, 233, 168, .12) 58%,
      transparent 78%);
}
.portada > * {
  position: relative;
}
.portada .saludo {
  font-size: clamp(22px, 3.4vw, 34px);
  font-weight: 800;
  margin: 22px 0 6px;
  letter-spacing: -.4px;
}
.portada .bajada-portada {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 17px;
  color: var(--body-text);
  margin: 0;
  max-width: 680px;
}
.portada .linea-oro {
  width: 120px;
  height: 3px;
  border-radius: 2px;
  margin: 16px auto 0;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  box-shadow: 0 0 18px 1px rgba(230,198,92, .7);
}
.cargando {
  min-height: 100vh;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 18px;
  color: var(--muted);
}
@media (max-width: 640px) {
  .marca-app .palabras {
    display: none;
  }
  .marca-app.gigante .palabras {
    display: flex;
  }
  .portada {
    padding-top: 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .marca-app .emblema::after {
    animation: none;
  }
}
.tabs-est {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.tabs-est .tab-sec {
  text-decoration: none;
  color: #0A0A0A;
}
.sem-nav {
  gap: 10px;
}
.sem-nav .fbtn {
  text-decoration: none;
  color: #0A0A0A;
}
.sem-tit {
  font-size: 15px;
}
.est-stats {
  margin-bottom: 14px;
}
.est-stats .stat {
  animation: none;
}
.est-stats .stat.listo {
  background: #EFF5EC;
  border-color: var(--green);
}
.plan-sem {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(230px, 1fr);
  gap: 12px;
  overflow-x: auto;
  padding-bottom: 10px;
  scroll-snap-type: x mandatory;
}
.plan-dia {
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  border-radius: var(--radius);
  padding: 10px;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.plan-dia.hoy {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px var(--line-gold-soft);
}
.plan-dia-cab {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px;
  padding: 2px 4px;
}
.plan-dia-cab b {
  font-size: 14px;
}
.plan-dia-cab small {
  color: var(--muted);
  font-weight: 700;
  font-size: 14px;
}
.slot {
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.slot.ocupado {
  border-color: var(--gold);
  box-shadow: inset 0 0 0 2px var(--line-gold-soft);
}
.slot-cab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}
.slot-cab .chip {
  font-size: 14px;
  padding: 3px 8px;
}
.slot-ed {
  border: none;
  background: transparent;
  font-size: 14px;
  padding: 2px;
  opacity: .5;
}
.slot-ed:hover {
  opacity: 1;
}
.slot-fg {
  color: var(--muted);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.3;
}
.slot-video {
  display: block;
  text-decoration: none;
  border-top: 1px dashed var(--line-gold-soft);
  padding-top: 6px;
}
.slot-video b {
  display: block;
  font-size: 14px;
  line-height: 1.3;
  margin-bottom: 5px;
}
.slot-video .chip {
  font-size: 14px;
  padding: 3px 8px;
}
.slot-ojo {
  color: var(--red);
  font-weight: 700;
  font-size: 14px;
}
.sel-plan {
  border: 1.5px solid #0A0A0A;
  border-radius: 10px;
  padding: 8px 10px;
  font-weight: 700;
  font-size: 14px;
  background: #fff;
  width: 100%;
  max-width: 100%;
}
.mezcla {
  display: flex;
  gap: 6px;
  border-radius: 12px;
  overflow: hidden;
  border: 1.5px solid #0A0A0A;
}
.mezcla > div {
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mezcla b {
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}
.mezcla span {
  font-size: 14px;
  font-weight: 700;
}
.mz-desc {
  background: #E6EEFA;
}
.mz-nicho {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 4s linear infinite;
}
.bloque-ang {
  background: var(--panel-2);
}
@media (max-width: 760px) {
  .tabs-est {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .plan-sem {
    grid-auto-flow: row;
    grid-auto-columns: auto;
  }
  .sem-nav {
    flex-wrap: wrap;
  }
}
.chip.copy-ok {
  background: #E7F0E1;
  color: #3F5E31;
  border-color: transparent;
}
.chip.copy-falta {
  background: #FFF7ED;
  border-color: #F0C48A;
  color: #B45309;
}
.copy-mini {
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  line-height: 1.45;
  margin: 0 0 6px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.tcard-copy {
  margin: 8px 0 2px;
}
.bloque-copy {
  background: var(--panel-2);
  border-color: var(--line-gold);
}
.ayuda-copy {
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  line-height: 1.5;
}
.bloque-copy textarea[data-copy] {
  width: 100%;
  min-height: 170px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 14px;
  background: #fff;
  font-family: inherit;
  resize: vertical;
}
.bloque-copy .campo {
  margin-top: 12px;
}
.copy-texto {
  font-family: "Playfair Display", serif;
  font-size: 16px;
  color: var(--body-text);
  white-space: pre-wrap;
  line-height: 1.6;
}
.acciones-copy {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.copy-ia {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
@media (max-width: 760px) {
  .acciones-copy .btn {
    flex: 1 1 100%;
  }
}
.ref-privado {
  margin-top: 10px;
  font-weight: 700;
  color: var(--gold);
  font-size: 14px;
}
.ref-lista {
  display: grid;
  gap: 14px;
}
.ref-card {
  display: flex;
  gap: 14px;
  border: 1.5px solid #0A0A0A;
  border-radius: var(--radius);
  padding: 16px 18px;
  background: #fff;
  animation: fadeInUp .4s ease both;
  box-shadow: 0 0 26px -16px rgba(201,162,39, .75);
}
.ref-card.fav {
  border-color: var(--gold);
  background: var(--panel-2);
}
.ref-pos {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 28px;
  font-weight: 700;
  color: var(--gold);
  line-height: 1;
  min-width: 52px;
}
.ref-cuerpo {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ref-hook {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 20px;
  line-height: 1.3;
}
.ref-copy {
  margin: 0;
  color: var(--body-text);
  font-size: 14px;
}
.ref-met {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.ref-met .mt {
  border: 1px solid var(--line-gold-soft);
  border-radius: 12px;
  padding: 8px 12px;
  background: var(--panel-2);
  display: flex;
  flex-direction: column;
  min-width: 92px;
}
.ref-met .mt b {
  font-size: 18px;
  font-weight: 800;
  line-height: 1.1;
}
.ref-met .mt small {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.ref-met .mt.destacada {
  background: #0A0A0A;
  border-color: #0A0A0A;
}
.ref-met .mt.destacada b {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.ref-met .mt.destacada small {
  color: var(--gold-marca);
}
.ref-met.chico {
  margin-top: 10px;
  gap: 6px;
}
.ref-met.chico .mt {
  min-width: 72px;
  padding: 6px 9px;
}
.ref-met.chico .mt b {
  font-size: 15px;
}
.ref-cuenta.sigo {
  border-color: var(--green);
}
.ref-cuenta.sigo .eyebrow::after {
  content: " · ✓ la sigo";
  color: var(--green);
}
@media (max-width: 760px) {
  .ref-card {
    flex-direction: column;
    gap: 8px;
  }
  .ref-pos {
    font-size: 22px;
  }
  .ref-met .mt {
    min-width: calc(50% - 5px);
    flex: 1;
  }
}
.marca-wrap {
  position: relative;
  flex: none;
  min-width: 0;
}
button.marca.marca-app {
  background: none;
  border: 0;
  padding: 4px 8px 4px 4px;
  margin: -4px 0 -4px -4px;
  border-radius: 16px;
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-align: left;
  transition: background .15s;
}
button.marca.marca-app:hover,
button.marca.marca-app[aria-expanded=true] {
  background: rgba(201,162,39, .10);
}
button.marca.marca-app:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}
.marca-v {
  width: 17px;
  height: 17px;
  flex: none;
  color: var(--gold);
  opacity: .8;
  align-self: center;
  transition: transform .18s;
}
button.marca.marca-app[aria-expanded=true] .marca-v {
  transform: rotate(180deg);
}
.menu-apps {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  z-index: 300;
  width: min(372px, calc(100vw - 28px));
  background: #fff;
  border: 1px solid var(--line-gold-soft);
  border-radius: 18px;
  box-shadow: 0 22px 50px -18px rgba(122, 84, 0, .45), 0 2px 10px rgba(0, 0, 0, .06);
  padding: 8px;
  animation: ma-entra .16s ease-out;
}
@keyframes ma-entra {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.ma-t {
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--gold);
  padding: 8px 10px 6px;
}
.ma-i {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 10px;
  border-radius: 14px;
  text-decoration: none;
  color: var(--body-text);
  transition: background .15s;
}
.ma-i:hover,
.ma-i:focus-visible {
  background: var(--panel);
  outline: none;
}
.ma-ico {
  width: 38px;
  height: 38px;
  flex: none;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background:
    linear-gradient(
      110deg,
      #B8860B 8%,
      #FFD000 34%,
      #FFF1A8 50%,
      #FFD000 66%,
      #B8860B 92%);
  background-size: 250% 100%;
  animation: oro-menu 5s linear infinite;
  box-shadow: 0 3px 12px rgba(255, 200, 0, .45), inset 0 0 0 1.4px rgba(255, 255, 255, .55);
}
@keyframes oro-menu {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 250% 50%;
  }
}
.ma-ico svg {
  width: 23px;
  height: 23px;
  filter: drop-shadow(0 1px 1px rgba(122, 84, 0, .45));
}
.ma-x {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.ma-x b {
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}
.ma-x small {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.35;
}
.ma-f {
  width: 18px;
  height: 18px;
  flex: none;
  color: var(--gold);
  opacity: .7;
}
.ma-i.aca {
  background: var(--panel);
}
.ma-aca {
  flex: none;
  font-style: normal;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--gold);
  border: 1px solid var(--line-gold-soft);
  border-radius: 999px;
  padding: 4px 8px;
}
@media (max-width: 760px) {
  .menu-apps {
    width: min(330px, calc(100vw - 24px));
  }
  .marca-v {
    width: 15px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .menu-apps,
  .ma-ico {
    animation: none;
  }
  .marca-v {
    transition: none;
  }
}
.webinar-cab h3 {
  font-family: "Playfair Display", serif;
  font-size: 22px;
  margin: 0 0 2px;
}
.webinar-cab .sub {
  margin: 0 0 10px;
}
.wpromesa {
  margin: 0 0 10px;
  padding: 12px 14px;
  border-left: 3px solid var(--oro, #C9A227);
  background: rgba(201, 162, 39, .07);
  border-radius: 0 10px 10px 0;
  font-size: 14.5px;
  font-weight: 600;
}
.waviso {
  margin: 0 0 10px;
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.mindice {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0 0;
}
.mchip {
  border: 1px solid var(--linea, #e6e2d8);
  background: #fff;
  border-radius: 999px;
  padding: 5px 11px;
  font: 700 12.5px/1 "Inter", sans-serif;
  cursor: pointer;
  color: var(--tinta, #1a1a1a);
}
.mchip:hover {
  border-color: var(--oro, #C9A227);
}
.mchip.ok {
  border-color: #2e7d52;
  color: #2e7d52;
}
.mchip.cambios {
  border-color: #b3401f;
  color: #b3401f;
}
.wpend {
  margin-top: 10px;
  font-size: 14px;
}
.wpend summary {
  cursor: pointer;
  font-weight: 700;
}
.wpend ol {
  margin: 8px 0 0;
  padding-left: 20px;
}
.wpend li {
  margin: 4px 0;
}
.mails {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}
.mailc {
  background: var(--panel, #fff);
  border: 1px solid var(--linea, #e6e2d8);
  border-radius: 16px;
  padding: 14px 16px 16px;
  animation: aparecer .35s ease both;
}
.mailc-top {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.mailc-top b {
  font-size: 14.5px;
}
.mestado {
  display: inline-block;
  margin-left: 6px;
  padding: 3px 9px;
  border-radius: 999px;
  font: 700 12px/1.5 "Inter", sans-serif;
}
.mestado.ok {
  background: #e7f4ec;
  color: #2e7d52;
}
.mestado.cambios {
  background: #fdeceb;
  color: #b3401f;
}
.sobre {
  background: #fff;
  border: 1px solid #ece7db;
  border-radius: 12px;
  padding: 16px 18px;
  box-shadow: 0 6px 22px rgba(0, 0, 0, .05);
}
.sobre-de {
  display: flex;
  align-items: center;
  gap: 9px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f0ece2;
}
.sobre-de small {
  display: block;
  color: var(--muted);
  font-size: 14px;
}
.sobre-asunto {
  font-family: "Inter", sans-serif;
  font-size: 16.5px;
  font-weight: 800;
  margin: 12px 0 2px;
}
.sobre-pre {
  margin: 0 0 12px;
  color: var(--muted);
  font-size: 14px;
}
.sobre-cuerpo {
  font-size: 15px;
  line-height: 1.62;
}
.sobre-cuerpo p {
  margin: 0 0 12px;
}
.mvar {
  background: rgba(201, 162, 39, .16);
  border-radius: 5px;
  padding: 1px 6px;
  font-weight: 700;
  font-size: .92em;
}
.mvar.falta {
  background: #fdeceb;
  color: #b3401f;
}
.mfalta {
  background: #fdeceb;
  color: #b3401f;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 14px;
  font-weight: 600;
  margin: 0 0 12px;
}
.mimg {
  margin: 4px 0 14px;
}
.mimg img {
  display: block;
  width: 100%;
  max-width: 420px;
  border-radius: 12px;
  border: 1px solid #ece7db;
}
.mimg figcaption {
  color: var(--muted);
  font-size: 14px;
  margin-top: 4px;
}
.mailc-nota {
  margin: 12px 0 0;
  font-size: 14px;
  color: var(--muted);
  font-style: italic;
}
.mailc-fb {
  margin-top: 10px;
  background: rgba(201, 162, 39, .09);
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 14px;
}
.mailc-fb small {
  display: block;
  color: var(--muted);
  font-size: 14px;
  margin-top: 4px;
}
@media (max-width: 640px) {
  .sobre {
    padding: 13px 14px;
  }
  .sobre-cuerpo {
    font-size: 14.5px;
  }
}
.an-dec {
  border-left: 4px solid var(--oro, #C9A227);
}
.an-dec ul,
.an-dec ol {
  margin: 8px 0 8px 18px;
  line-height: 1.6;
}
.an-dec .an-regla {
  margin: 10px 0 0;
  font-weight: 700;
  background: #faf7f0;
  border-radius: 10px;
  padding: 10px 14px;
}
.an-camp {
  margin: 26px 0 0;
}
.an-camp > h3 {
  margin: 0 0 2px;
}
.an-camp > p.sub {
  margin: 0 0 8px;
}
.an-card {
  border: 1px solid #e7e2d6;
  border-radius: 14px;
  padding: 14px 16px;
  margin: 10px 0;
  background: #fff;
}
.an-top {
  display: flex;
  gap: 10px;
  align-items: baseline;
  flex-wrap: wrap;
  font-size: 15px;
}
.an-chip {
  margin-left: auto;
  font-size: 14px;
  font-weight: 700;
  border-radius: 999px;
  padding: 3px 10px;
  white-space: nowrap;
}
.an-meta {
  margin: 6px 0 10px;
}
.an-guion {
  white-space: pre-wrap;
  background: #faf7f0;
  border-radius: 10px;
  padding: 12px 14px;
  font-size: 14px;
  line-height: 1.55;
}
.an-nota {
  margin: 8px 0 0;
}
.an-btns {
  margin-top: 10px;
}
@media (max-width: 640px) {
  .an-chip {
    margin-left: 0;
  }
}
.avatar.chico,
.usuario-nombre small,
.btn-salir,
.btn.chico,
.card p,
.formula small,
.flujo div,
.vfila .cuerpo small,
.col-tit .n,
.vcard .gancho-mini,
.vcard .pie,
.accion .acc-msg small,
.link .lt small,
details.guion summary::after,
.chat-cab small,
.hora,
.hilo .t b,
.hilo .t small,
.cat-cab p,
.tabla th,
.copiable input,
.tab-sec .n,
.cab-seccion p,
.seccion-card small,
.tabla-v small,
.tabla-v .tv-pedido,
.tabla-v .tv-gancho,
.nada,
.tcard .pie,
.ayuda-tablero,
.audio-acciones small,
.trans div,
.in-discord,
.ayuda-previa,
.previa-txt small,
.repro-nota,
.repro-arch,
.mom-idea,
.guion-prev,
.slot-cab .chip,
.slot-ed,
.slot-video b,
.slot-video .chip,
.ma-x small,
.waviso,
.wpend,
.sobre-de small,
.sobre-pre,
.mfalta,
.mimg figcaption,
.mailc-nota,
.mailc-fb,
.mailc-fb small {
  font-weight: 700;
}
small,
figcaption {
  font-weight: 700;
}
.filtros select option,
select option {
  font-weight: 700;
}
.wg-tablero {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
  align-items: start;
}
.wg-col {
  background: #faf7f0;
  border: 1px solid #ece6d8;
  border-radius: 14px;
  padding: 12px;
  min-height: 160px;
  transition: background .15s, border-color .15s;
}
.wg-col.encima {
  background: #fff8e6;
  border-color: var(--oro, #C9A227);
}
.wg-col > h3 {
  margin: 0 0 2px;
  font-size: 15px;
}
.wg-col > h3 span {
  color: var(--muted, #6b6357);
  font-weight: 600;
}
.wg-ayuda {
  margin: 0 0 10px;
  font-size: 14px;
  color: var(--muted, #6b6357);
  line-height: 1.45;
}
.wg-vacia {
  font-size: 14px;
  color: var(--muted, #6b6357);
  margin: 6px 0;
}
.wg-card {
  background: #fff;
  border: 1px solid #e7e2d6;
  border-radius: 12px;
  padding: 10px 12px;
  margin: 0 0 9px;
  cursor: grab;
}
.wg-card:active {
  cursor: grabbing;
}
.wg-card.arrastrando {
  opacity: .45;
}
.wg-tit {
  font-size: 14px;
  line-height: 1.35;
}
.wg-meta {
  margin: 4px 0 0;
  font-size: 14px;
  color: var(--muted, #6b6357);
}
.wg-meta .urg {
  color: #b45309;
}
.wg-mat {
  margin: 4px 0 0;
  font-size: 14px;
  color: #166534;
}
.wg-btns {
  display: flex;
  gap: 6px;
  margin-top: 8px;
  flex-wrap: wrap;
}
.mat {
  margin: 10px 0 0;
  background: #faf7f0;
  border-radius: 10px;
  padding: 10px 12px;
}
.mat-cab {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  font-size: 14px;
}
.mat-lista {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 8px;
}
.mat-item {
  display: flex;
  gap: 8px;
  align-items: center;
  background: #fff;
  border: 1px solid #ece6d8;
  border-radius: 10px;
  padding: 6px;
  text-decoration: none;
  color: inherit;
}
.mat-item img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 7px;
  flex: none;
  background: #ece6d8;
}
.mat-sin {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  background: #ece6d8;
  flex: none;
}
.mat-txt {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mat-txt b {
  font-size: 14px;
  line-height: 1.3;
}
.mat-txt small {
  font-size: 14px;
  color: var(--muted, #6b6357);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 860px) {
  .wg-tablero {
    grid-template-columns: 1fr;
  }
  .mat-lista {
    grid-template-columns: 1fr;
  }
}
.lim-pauta {
  display: inline-block;
  max-width: 100%;
  margin-top: 4px;
  background: #fff7ed;
  color: #b45309;
  border: 1px solid #fed7aa;
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 14px;
  font-weight: 700;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.35;
}
.lim-pauta.chico {
  font-size: 14px;
  padding: 2px 8px;
}
.notas {
  margin: 10px 0 0;
  background: #fffaf0;
  border: 1px solid #f3e6c8;
  border-radius: 10px;
  padding: 8px 12px;
}
.notas > summary {
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: #8a6d1f;
}
.notas[open] > summary {
  margin-bottom: 8px;
}
.notas p,
.notas li {
  font-size: 14px;
  line-height: 1.55;
}
.notas-spot {
  margin: 0 0 8px;
}
.notas-con {
  margin: 0 0 8px;
}
.notas-ed b {
  font-size: 14px;
}
.notas ul {
  margin: 6px 0 0 18px;
  padding: 0;
}
.notas.reglas {
  margin: 14px 0;
}
small,
.sub,
.nada,
.cap,
.eyebrow,
.chip,
.badge,
.stat span,
.formula small,
.tv-pedido,
.wg-meta,
.wg-ayuda,
.wg-mat,
.wg-vacia,
.notas p,
.notas li,
.notas > summary,
.mat-txt b,
.mat-txt small,
.an-meta,
.an-nota,
.lim-pauta,
.col-vacia,
.gancho-mini,
.ayuda-tablero,
.cod,
.tabla th,
.tabla td small,
.usuario-nombre small,
.seccion-card small,
.seccion-card .resp,
.callout p,
.det-cab div,
.tv-gancho {
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.5;
}
.hero p,
.cab .sub,
p.sub {
  font-size: 15.5px !important;
  font-weight: 700 !important;
}
.tabla th {
  font-size: 13.5px !important;
  letter-spacing: .3px;
}
.lim-pauta {
  font-size: 13.5px !important;
}
.tabla-an td {
  vertical-align: middle;
}
.tabla-an .fila-click {
  cursor: pointer;
}
.tabla-an .fila-click:hover {
  background: #fffaf0;
}
.tabla-an .an-chip {
  display: inline-block;
}
.pill {
  font-size: 13px !important;
  letter-spacing: 1.4px;
}
.marca-txt span {
  font-size: 12.5px !important;
  letter-spacing: 1.8px;
}
.guion-edit {
  width: 100%;
  min-height: 220px;
  border: 1.5px solid #e7e2d6;
  border-radius: 10px;
  padding: 12px 14px;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.55;
  background: #faf7f0;
  resize: vertical;
}
.guion-edit:focus {
  outline: none;
  border-color: var(--oro, #C9A227);
  background: #fff;
}
.guion-barra {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  margin: 8px 0 10px;
}
.guion-barra .sub {
  margin: 0;
}
.guion-ia {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}
.guion-pedido {
  flex: 1;
  min-width: 240px;
  border: 1.5px solid #e7e2d6;
  border-radius: 10px;
  padding: 10px 12px;
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 600;
}
.guion-pedido:focus {
  outline: none;
  border-color: var(--oro, #C9A227);
}
.tiempo-bloque {
  margin: 0 0 10px;
  font-size: 14.5px !important;
  font-weight: 700;
  color: #8a6d1f;
  background: #fffaf0;
  border-radius: 8px;
  padding: 6px 10px;
  display: inline-block;
}
.entrega-bloque {
  margin: 0 0 6px;
  font-size: 14.5px !important;
  font-weight: 700;
  color: #b45309;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  padding: 6px 10px;
  display: inline-block;
}
.prox-webinar {
  border-left: 4px solid var(--oro, #C9A227);
}
.prox-webinar > summary {
  cursor: pointer;
  font-size: 16px;
}
.prox-webinar h4 {
  font-size: 15px;
}
.cta-org {
  margin: 10px 0 0;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 10px;
  padding: 10px 12px;
}
.cta-org > b {
  font-size: 14px;
  color: #166534;
}
.cta-org p {
  margin: 6px 0 8px;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.5;
}
.chip.pend {
  background: #FFF7ED;
  border-color: #F0C48A;
  color: #B45309;
}
.guion-card.pend-subir {
  border-color: #B45309;
  box-shadow: 0 0 0 3px #FFF7ED;
}
.pend-aviso {
  margin: 2px 0 0;
  font-size: 15px;
  font-weight: 600;
  color: #B45309;
}
.pend-aviso b {
  font-weight: 800;
}
.callout.pend {
  background: #FFF7ED;
}
.callout.pend::before {
  background: #B45309;
  animation: none;
}
.an-pend {
  margin: 8px 0 0;
  font-size: 15px;
  font-weight: 800;
  color: #B45309;
}
.wg-pend {
  margin: 2px 0 0;
  font-size: 14px;
  font-weight: 800;
  color: #B45309;
}
.stats .stat.pend,
.est-stats .stat.pend {
  background: #FFF7ED;
  border-color: #B45309;
}
.tablero .col,
.tcard,
.vcard {
  min-width: 0;
}
.tcard > *,
.vcard > * {
  max-width: 100%;
}
.tcard b,
.vcard b,
.tcard .gancho-mini,
.vcard .gancho-mini,
.tcard .pie,
.vcard .pie {
  overflow-wrap: anywhere;
}
.tcard .chip,
.vcard .chip {
  max-width: 100%;
  white-space: normal;
}
.g-mio {
  display: block;
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 22px;
  line-height: 1.32;
  color: var(--tinta);
  margin: 6px 0 10px;
  font-weight: 700;
}
.g-molde {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.g-molde small {
  display: inline-block;
  font-size: 11px;
  letter-spacing: .10em;
  color: var(--oro-txt, #a3792a);
  margin-right: 8px;
  font-weight: 800;
}
.g-orig {
  margin: 0 0 12px;
}
.g-orig summary {
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.g-orig p {
  margin: 8px 0 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--muted);
  line-height: 1.5;
}
.ref-lista.chica .ref-card {
  padding: 12px 14px;
}
.ref-lista.chica .g-mio {
  font-size: 18px;
  margin-bottom: 8px;
}
@media (max-width: 620px) {
  .g-mio {
    font-size: 19px;
  }
}
.cartel-pauta {
  margin: 14px 0 18px;
  background: #fff1ef;
  border: 3px solid var(--red);
  border-left-width: 10px;
  border-radius: 14px;
  padding: 16px 20px;
  box-shadow: 0 10px 26px -16px rgba(178, 59, 36, .55);
}
.cartel-pauta h4 {
  margin: 0 0 10px;
  color: var(--red);
  font-size: 19px !important;
  font-weight: 900;
  letter-spacing: .2px;
  text-transform: uppercase;
}
.cartel-pauta ol {
  margin: 0;
  padding-left: 22px;
}
.cartel-pauta li {
  font-size: 15.5px !important;
  font-weight: 600;
  line-height: 1.6;
  color: #3a1a13;
  margin-bottom: 9px;
}
.cartel-pauta li:last-child {
  margin-bottom: 0;
}
.cartel-pauta b {
  font-weight: 900;
  color: #7d2415;
}
@media (max-width: 640px) {
  .cartel-pauta {
    padding: 14px 15px;
  }
  .cartel-pauta h4 {
    font-size: 17px !important;
  }
}
.gancho-mini {
  font-size: 15px;
  font-weight: 700;
  color: var(--body-text);
  font-style: italic;
  font-family: "Playfair Display", serif;
  margin: 4px 0 6px;
  line-height: 1.35;
}
.gancho-mini.editable,
.gancho-mini.poner-gancho {
  cursor: pointer;
  border-radius: 10px;
  padding: 5px 9px;
  margin-left: -9px;
  border: 1.5px dashed transparent;
  transition: background .15s, border-color .15s;
}
.gancho-mini.editable:hover,
.gancho-mini.poner-gancho:hover,
.gancho-mini.editable:focus-visible,
.gancho-mini.poner-gancho:focus-visible {
  background: var(--panel);
  border-color: var(--line-gold);
  outline: none;
}
.gancho-mini.poner-gancho {
  font-style: normal;
  font-family: inherit;
  font-size: 14px;
  font-weight: 800;
  color: var(--gold);
  border-color: var(--line-gold-soft);
}
.gancho-mini .lapiz {
  font-style: normal;
  font-size: 13px;
  opacity: .55;
}
.gancho-mini.editable:hover .lapiz {
  opacity: 1;
}
.vfila .gancho-mini {
  margin: 5px 0 0;
}
.btn-gancho {
  display: block;
  width: 100%;
  text-align: left;
  background: none;
  border: 1.5px dashed transparent;
  border-radius: 10px;
  padding: 6px 9px;
  margin: -6px 0 -6px -9px;
  cursor: pointer;
  font-family: inherit;
  transition: background .15s, border-color .15s;
}
.btn-gancho:hover,
.btn-gancho:focus-visible {
  background: var(--panel);
  border-color: var(--line-gold);
  outline: none;
}
.btn-gancho .lapiz {
  font-size: 13px;
  opacity: .55;
}
.btn-gancho:hover .lapiz {
  opacity: 1;
}
.btn-gancho .poner-g {
  font-size: 14px;
  font-weight: 800;
  color: var(--gold);
}
.gancho-bloque .g-txt {
  display: block;
}
.gancho-bloque .g-txt.vacia {
  font-size: 17px;
  font-weight: 700;
  opacity: .65;
}
.gancho-bloque .g-editar {
  margin-top: 14px;
}
.g-sug {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.chip-g {
  background: var(--panel);
  border: 1.5px solid var(--line-gold);
  border-radius: 999px;
  padding: 8px 13px;
  font-size: 14px;
  font-weight: 700;
  font-family: inherit;
  color: var(--body-text);
  cursor: pointer;
  text-align: left;
  max-width: 100%;
}
.chip-g:hover {
  background: #0A0A0A;
  color: var(--gold-marca);
  border-color: #0A0A0A;
}
.ref-hallazgos {
  border: 1.5px solid var(--gold);
  background: var(--panel-2);
}
.ref-lista-h {
  margin: 10px 0 0;
  padding-left: 22px;
  display: grid;
  gap: 10px;
}
.ref-lista-h li {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  color: var(--body-text);
}
.ref-cuantos {
  font-size: 15px;
  font-weight: 800;
  color: var(--gold);
  margin-left: 6px;
}
.ref-cuenta.oro {
  border-color: var(--gold);
  box-shadow: 0 0 30px -12px rgba(201,162,39, .8);
}
.ref-cab {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 8px;
}
.ref-cab h4 {
  margin: 0;
  font-size: 18px;
}
.ref-num {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 26px;
  font-weight: 700;
  color: var(--gold);
  min-width: 34px;
}
.ref-vende {
  font-size: 15px;
  font-weight: 700;
  margin: 6px 0 10px;
  color: var(--ink);
}
.ref-top {
  display: block;
  text-decoration: none;
  border-radius: 12px;
  padding: 12px 14px;
  background: #0A0A0A;
  color: #fff;
  margin-top: 6px;
}
.ref-top small {
  display: block;
  font-size: 14px;
  font-weight: 800;
  color: var(--gold-marca);
  letter-spacing: .5px;
}
.ref-top b {
  display: block;
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-size: 17px;
  line-height: 1.35;
  margin: 6px 0;
}
.ref-top span {
  font-size: 14px;
  font-weight: 700;
  color: #E8DFC8;
}
.ref-top:hover {
  box-shadow: 0 0 0 3px var(--line-gold-soft);
}
.ra-tabs {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.ra-est-indice {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 6px;
}
.ra-est-indice a {
  font-size: 15px;
  font-weight: 700;
  border: 1.5px solid var(--line-gold-soft);
  border-radius: 999px;
  padding: 7px 12px;
  background: #fff;
  color: #0A0A0A;
  text-decoration: none;
}
.ra-est-indice a:hover {
  border-color: var(--gold);
}
.ra-est h3 {
  font-size: 22px;
}
.ra-est-intro {
  font-size: 17px;
  line-height: 1.55;
  font-weight: 600;
  margin: 6px 0 14px;
}
.ra-est-bloques {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.ra-est-b {
  background: var(--panel-2);
  border-left: 4px solid var(--gold);
  border-radius: 12px;
  padding: 14px 16px;
}
.ra-est-b b {
  font-size: 17px;
  display: block;
}
.ra-est-b p {
  margin: 6px 0 0;
  font-size: 16px;
  line-height: 1.5;
  color: var(--body-text);
}
.ra-est-cods {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
@media (max-width: 760px) {
  .ra-est-bloques {
    grid-template-columns: 1fr;
  }
  .ra-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.ra-filtros {
  margin: 16px 0 6px;
}
.ra-filtros .seg {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border: none;
  border-radius: 0;
  overflow: visible;
  background: none;
}
.ra-filtros .seg button {
  font-size: 15px;
  font-weight: 700;
  border: 1.5px solid #0A0A0A;
  border-radius: 999px;
  background: #fff;
}
.ra-filtros .seg button.activo {
  background: #0A0A0A;
  color: #fff;
}
.ra-uso-txt {
  font-size: 16px;
  color: var(--body-text);
  margin: 8px 0 4px;
}
.ra-numeros {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}
.ra-numeros div {
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  border-radius: var(--radius);
  padding: 16px;
  text-align: center;
}
.ra-numeros b {
  display: block;
  font-family: "Playfair Display", serif;
  font-size: 36px;
  color: var(--gold);
}
.ra-numeros span {
  font-size: 15px;
  font-weight: 700;
  color: var(--body-text);
}
.ra-etapas {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 12px;
}
.ra-etapas li {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid #e7e2d6;
  border-radius: 14px;
  padding: 14px 16px;
}
.ra-et-e {
  font-size: 28px;
  line-height: 1;
}
.ra-etapas b {
  font-size: 17px;
}
.ra-etapas p,
.ra-hall p {
  margin: 6px 0 0;
  font-size: 16px;
  line-height: 1.5;
  color: var(--body-text);
}
.ra-hallazgos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.ra-hall {
  background: var(--panel-2);
  border-left: 4px solid var(--gold);
  border-radius: 12px;
  padding: 14px 16px;
}
.ra-hall b {
  font-size: 17px;
}
.ra-no li {
  font-size: 16px;
  margin: 6px 0;
}
.ra-fuente {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  margin-top: 18px;
}
.ra-card {
  border: 1px solid #e7e2d6;
  border-radius: 16px;
  padding: 18px;
  margin: 16px 0;
  background: #fff;
  box-shadow: var(--shadow);
  scroll-margin-top: calc(var(--topbar) + 12px);
}
.ra-top {
  display: flex;
  gap: 12px;
  align-items: baseline;
  flex-wrap: wrap;
}
.ra-top h3 {
  margin: 0;
  font-size: 20px;
  line-height: 1.3;
  flex: 1;
  min-width: 220px;
}
.ra-cod {
  font-size: 15px;
  color: var(--gold);
  letter-spacing: .04em;
}
.ra-chips {
  margin: 10px 0 14px;
}
.ra-chips .chip {
  font-size: 14px;
  font-weight: 700;
}
.ra-fid.ok {
  background: #e8f0e2;
  color: var(--green);
}
.ra-fid.medio {
  background: #fdf3d6;
  color: #8a6a12;
}
.ra-fid.bajo {
  background: #f8e1dc;
  color: var(--red);
}
.ra-dos {
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}
.ra-lbl {
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .06em;
  color: var(--gold);
  margin: 0 0 8px;
}
.ra-fig {
  margin: 0 0 14px;
}
.ra-video {
  width: 100%;
  max-height: 520px;
  border-radius: 12px;
  background: #0A0A0A;
  display: block;
}
.ra-sinvideo {
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
}
.ra-fig figcaption {
  font-size: 14px;
  font-weight: 700;
  color: var(--body-text);
  margin-top: 8px;
  line-height: 1.5;
}
.ra-vivo {
  color: var(--green);
}
.ra-guion,
.ra-copy {
  white-space: pre-wrap;
  font-size: 17px;
  line-height: 1.6;
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  border-radius: 12px;
  padding: 14px 16px;
}
.ra-copy {
  font-size: 16px;
  background: #fafafa;
  border-color: #eee;
}
.ra-pantalla,
.ra-nota {
  font-size: 16px;
  line-height: 1.5;
  margin: 12px 0 0;
}
.ra-nota {
  background: #fff8e1;
  border-radius: 10px;
  padding: 10px 12px;
}
.ra-beats,
.ra-trans {
  margin-top: 12px;
}
.ra-beats summary,
.ra-trans summary {
  cursor: pointer;
  font-size: 16px;
  font-weight: 700;
}
.ra-beats table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 8px;
  font-size: 15px;
}
.ra-beats th {
  text-align: left;
  font-size: 14px;
  font-weight: 800;
  color: var(--muted);
  padding: 6px 8px;
  border-bottom: 2px solid var(--line-gold-soft);
}
.ra-beats td {
  padding: 8px;
  border-bottom: 1px solid #eee;
  vertical-align: top;
}
.ra-trans div {
  font-size: 16px;
  line-height: 1.6;
  margin-top: 8px;
  max-height: 360px;
  overflow: auto;
  padding-right: 6px;
}
.ra-btns {
  margin-top: 14px;
}
@media (max-width: 760px) {
  .ra-dos {
    grid-template-columns: 1fr;
  }
  .ra-numeros {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ra-hallazgos {
    grid-template-columns: 1fr;
  }
  .ra-tabs {
    grid-template-columns: 1fr;
  }
  .ra-video {
    max-height: 440px;
  }
}
.ttl-tabs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.ttl-tabs .tab-sec {
  text-decoration: none;
  color: #0A0A0A;
}
.ttl-titulo {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0;
}
.ttl-titulo input {
  flex: 1 1 320px;
  min-width: 0;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 12px 14px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
  background: #fff;
}
.ttl-acciones {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 14px 0;
}
.ttl-acciones .chip {
  font-size: 14px;
  font-weight: 800;
}
.ttl-bloque {
  background: var(--panel-2);
}
.ttl-bloque.listo {
  border-color: var(--line-gold);
  background: #fff;
}
.ttl-bloque h3 {
  font-size: 19px;
}
.ttl-n {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  background: #0A0A0A;
  color: var(--gold-marca);
  font-size: 14px;
  font-weight: 800;
  flex: none;
}
.ttl-guia {
  font-size: 15px;
  font-weight: 600;
  color: var(--body-text);
  line-height: 1.5;
  margin: 6px 0 12px;
}
.ttl-bloque textarea {
  width: 100%;
  min-height: 130px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  padding: 14px;
  background: #fff;
  font-family: inherit;
  resize: vertical;
}
@media (max-width: 760px) {
  .ttl-titulo .btn {
    flex: 1 1 100%;
  }
}
.tkl-fuente {
  font-size: 14px;
  font-weight: 700;
  margin-top: 10px;
}
.tkl-fuente a {
  font-weight: 800;
}
.tkl-tablero .col-tit {
  align-items: flex-start;
  gap: 8px;
}
.tkl-tablero .col-tit .tkl-col-t {
  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
}
.tkl-card {
  position: relative;
  padding: 12px 12px 12px 48px;
}
.tkl-card b {
  font-size: 15px;
  font-weight: 800;
  margin: 0 0 6px;
}
.tkl-card p {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
  margin: 0;
  color: var(--body-text);
}
.tkl-check {
  position: absolute;
  left: 12px;
  top: 12px;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  border: 2px solid #0A0A0A;
  background: #fff;
  color: #0A0A0A;
  font-size: 16px;
  font-weight: 800;
  font-family: "Inter", sans-serif;
  display: grid;
  place-items: center;
  cursor: pointer;
  padding: 0;
  line-height: 1;
}
.tkl-check:hover {
  background: var(--panel-2);
}
.tkl-card.tkl-ok {
  opacity: .62;
  border-color: #9a9078;
}
.tkl-card.tkl-ok b {
  text-decoration: line-through;
}
.tkl-card.tkl-ok .tkl-check {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 2.5s linear infinite;
  border-color: #0A0A0A;
}
@media (max-width: 980px) {
  .tkl-tablero {
    grid-auto-columns: minmax(85%, 1fr);
  }
}
.gl-lab {
  display: block;
  margin: 0 0 16px;
  font-family: Inter, sans-serif;
  font-weight: 700;
  font-size: 15px;
  color: #0A0A0A;
}
.gl-in {
  display: block;
  width: 100%;
  margin-top: 7px;
  font-family: Inter, sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 1.5;
  color: #0A0A0A;
  background: #FFFDF8;
  border: 1.5px solid rgba(201,162,39, .3);
  border-radius: 12px;
  padding: 13px 14px;
}
.gl-in:focus {
  outline: none;
  border-color: #A8861E;
  box-shadow: 0 0 0 3px rgba(201,162,39, .18);
}
textarea.gl-in {
  resize: vertical;
  min-height: 90px;
}
.gl-aviso {
  font-size: 14px;
  font-weight: 600;
  color: #6B6257;
  background: #F4EEDF;
  border-radius: 10px;
  padding: 10px 13px;
  margin: 0 0 16px;
}
.gl-tip {
  font-size: 15px;
  font-weight: 700;
  color: #8A6E27;
  background: #FAF7EE;
  border: 1px solid rgba(201,162,39, .25);
  border-radius: 12px;
  padding: 12px 14px;
  margin: 0 0 18px;
  line-height: 1.5;
}
.gl-bloque {
  margin: 0 0 28px;
}
.gl-cab {
  margin: 0 0 6px;
}
.gl-cab b {
  font-size: 17px;
}
.gl-escena {
  margin: 0 0 12px;
}
.gl-guion {
  font-size: 20px;
  line-height: 1.6;
  white-space: normal;
  font-weight: 500;
  color: #1a1a1a;
}
.gl-escena {
  padding: 18px 16px;
}
.gl-escena .an-top b {
  font-size: 15px;
}
.gl-escena .an-nota {
  font-size: 14px;
  font-weight: 600;
  margin-top: 10px;
}
.gl-escena .an-nota b {
  color: #8A6E27;
}
.gl-listo {
  background: #FAF7EE;
}
.gl-ul {
  margin: 8px 0 0;
  padding-left: 20px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.7;
}
.gl-chequeo {
  font-size: 14px;
  margin-top: 10px;
}
body.con-lector {
  overflow: hidden;
}
.lector {
  position: fixed;
  inset: 0;
  z-index: 9000;
  background: #FFFDF8;
  display: flex;
  flex-direction: column;
}
.lec-barra {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  background: #0A0A0A;
  color: #fff;
  flex: none;
  padding-top: calc(12px + env(safe-area-inset-top));
}
.lec-barra b {
  font-size: 15px;
  font-weight: 800;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.lec-dur {
  font-size: 14px;
  font-weight: 700;
  color: #FFE9A8;
  flex: none;
}
.lec-btns {
  display: flex;
  gap: 6px;
  flex: none;
}
.lec-barra .btn {
  background: #fff;
  color: #0A0A0A;
  border: none;
  font-weight: 800;
  font-size: 15px;
  padding: 8px 12px;
  min-height: 40px;
}
.lec-hoja {
  flex: 1;
  overflow-y: auto;
  padding: 26px 20px calc(70px + env(safe-area-inset-bottom));
  font-size: 26px;
  line-height: 1.55;
  color: #1a1a1a;
  -webkit-overflow-scrolling: touch;
}
.lec-escena {
  margin: 0 0 30px;
  padding: 0 0 26px;
  border-bottom: 2px solid rgba(201,162,39, .25);
}
.lec-escena:last-of-type {
  border-bottom: none;
}
.lec-cab {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 0 0 14px;
  font-family: Inter, sans-serif;
  font-size: .62em;
  font-weight: 800;
  color: #8A6E27;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.lec-cab span {
  font-size: .85em;
  font-weight: 700;
  color: #6B6257;
  letter-spacing: 0;
}
.lec-txt {
  margin: 0 0 .7em;
  font-family: Inter, sans-serif;
  font-weight: 500;
}
.lec-txt:last-child {
  margin-bottom: 0;
}
.lec-nota {
  margin: 14px 0 0;
  font-size: .58em;
  font-weight: 700;
  color: #6B6257;
  background: #F4EEDF;
  border-radius: 10px;
  padding: 10px 13px;
  line-height: 1.5;
}
.lec-fin {
  margin: 10px 0 0;
  font-size: .6em;
  font-weight: 800;
  color: #8A6E27;
  text-align: center;
}
@media (min-width: 760px) {
  .lec-hoja {
    max-width: 820px;
    margin: 0 auto;
    width: 100%;
  }
}
.nivel {
  margin: 26px 0 10px;
  font-size: 20px;
}
.camps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  gap: 14px;
}
.camp-card {
  border: 1.5px solid #e7e2d6;
  border-radius: 14px;
  padding: 14px 16px;
  background: #fff;
}
.camp-top {
  display: flex;
  gap: 10px;
  align-items: baseline;
  flex-wrap: wrap;
}
.camp-n {
  background: #0A0A0A;
  color: var(--gold-marca, #C9A227);
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 13px;
  font-weight: 700;
}
.camp-card h3 {
  margin: 0;
  font-size: 17px;
}
.camp-dl {
  margin: 10px 0 0;
}
.camp-dl dt {
  font-size: 13px;
  font-weight: 800;
  color: #8a6d1f;
  margin-top: 8px;
}
.camp-dl dd {
  margin: 0;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.5;
}
.dia {
  margin: 20px 0 0;
  border-left: 4px solid var(--oro, #C9A227);
  padding-left: 14px;
}
.dia > h3 {
  margin: 0 0 2px;
  font-size: 17px;
}
.dia-camp {
  margin: 10px 0 0;
}
.dia-camp > b {
  font-size: 14.5px;
}
.tabla-pauta {
  margin-top: 6px;
}
.tabla-pauta td {
  vertical-align: middle;
}
.tkl-h2 {
  font-size: 20px;
  font-weight: 800;
  margin: 26px 0 12px;
}
.tkl-lives {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
}
.tkl-live {
  margin-bottom: 0;
}
.tkl-live b {
  font-size: 17px;
  margin: 10px 0 8px;
}
.tkl-live p {
  margin: 0 0 8px;
}
.tkl-live p b {
  display: inline;
  font-size: 14px;
  margin: 0;
}
.tkl-live.tkl-ok b {
  text-decoration: none;
}
.tkl-live.tkl-ok > b {
  text-decoration: line-through;
}
.tkl-prox {
  border-width: 2.5px;
  box-shadow: var(--shadow);
}
.tkl-ojo {
  background: var(--panel-2);
  border-radius: 10px;
  padding: 8px 10px;
  font-weight: 700 !important;
}
.tkl-minutos {
  display: grid;
  gap: 8px;
}
.tkl-min {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 12px 14px;
}
.tkl-min b {
  font-size: 15px;
  font-weight: 800;
}
.tkl-min p {
  margin: 4px 0 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}
.tkl-hora {
  flex: none;
  background: #0A0A0A;
  color: #fff;
  border-radius: 10px;
  padding: 6px 10px;
  font-weight: 800;
  font-size: 15px;
}
.em-tabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.em-sem {
  font-family: "Playfair Display", serif;
  font-size: 24px;
  margin: 26px 0 10px;
  padding-bottom: 6px;
  border-bottom: 2px solid var(--oro,#C9A227);
}
.em-sem small {
  display: block;
  font: 700 14px/1.4 "Inter", sans-serif;
  color: var(--muted);
  margin-top: 2px;
}
.em-lista {
  margin: 6px 0 0;
  padding-left: 20px;
  font-size: 15px;
  line-height: 1.6;
}
.em-lista li {
  margin: 7px 0;
}
.em-mapa td {
  font-size: 14.5px;
  vertical-align: top;
}
.em-mapa a {
  font-weight: 700;
}
.mvideo {
  display: block;
  max-width: 420px;
  margin: 4px 0 14px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #ece7db;
  background: #0A0A0A;
  color: #fff;
  text-decoration: none;
}
.mvideo img {
  display: block;
  width: 100%;
}
.mvideo span {
  display: block;
  padding: 9px 12px;
  font: 700 14px/1.35 "Inter", sans-serif;
}
.mvideo:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
}
.mailc.em-falta {
  border-color: #b3401f;
  border-width: 2px;
}
.chip.rojo {
  background: #fdeceb;
  color: #b3401f;
  font-weight: 800;
}
@media (max-width: 640px) {
  .em-tabs {
    grid-template-columns: 1fr;
  }
}
a.ttl-live-card {
  color: inherit;
  text-decoration: none;
  display: block;
}
.ttl-live-card .pie {
  margin-top: 8px;
  font-weight: 800;
}
.ttl-live-card.ttl-sin {
  opacity: .6;
  border-style: dashed;
  cursor: default;
}
.ttl-bloque textarea {
  font-size: 16px;
  line-height: 1.55;
  font-weight: 500;
}
.rg-total {
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 6px;
}
.rg-total a {
  color: var(--gold-dark,#8a6a1f);
  font-weight: 800;
}
.rg-tema {
  font-size: 20px;
  font-weight: 800;
  margin: 26px 0 12px;
}
.rg-tema small {
  font-size: 14px;
  font-weight: 800;
  color: var(--muted);
}
.rg-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}
.rg-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  overflow: hidden;
  animation: fadeInUp .35s ease both;
}
.rg-img {
  display: block;
  aspect-ratio: 16/9;
  background: #0A0A0A center/cover no-repeat;
}
.rg-txt {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
  flex: 1;
}
.rg-txt b {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.3;
}
.rg-txt p {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--body-text);
  line-height: 1.45;
}
.rg-txt code {
  font-size: 14px;
  font-weight: 800;
  word-break: break-all;
  background: #faf6ec;
  border-radius: 8px;
  padding: 6px 8px;
}
.rg-bot {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: auto;
}
.rg-min {
  margin-left: auto;
  font-size: 14px;
  font-weight: 800;
  color: var(--muted);
}
.li-tabs {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.li-tabs .tab-sec {
  text-decoration: none;
  color: #0A0A0A;
}
@media (max-width: 640px) {
  .li-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.li-post .sobre-cuerpo {
  font-size: 16px;
  line-height: 1.6;
  padding-top: 12px;
}
.li-gancho {
  font-weight: 800;
  font-size: 17px;
}
.li-corte {
  font: 800 14px/1.4 "Inter", sans-serif;
  color: var(--oro,#A8861E);
  border-top: 2px dashed var(--oro,#C9A227);
  padding-top: 6px;
  margin: 0 0 12px;
}
.li-foto {
  margin: 12px 0 0;
}
.li-foto img {
  display: block;
  width: 100%;
  max-width: 520px;
  max-height: 640px;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid #ece7db;
}
.li-coment {
  margin-top: 12px;
  background: #f3f7fb;
  border: 1px solid #d5e2ef;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 15px;
  line-height: 1.55;
  font-weight: 500;
}
.li-coment .chips {
  margin-top: 8px;
}
.li-cuenta {
  margin: 8px 0 0;
  font: 700 14px/1.4 "Inter", sans-serif;
  color: var(--muted);
}
.li-card .mailc-nota {
  font-size: 15px;
  font-style: normal;
  font-weight: 600;
}
.li-card.li-domingo {
  border-color: var(--oro,#C9A227);
  border-width: 2px;
  background:
    linear-gradient(
      180deg,
      rgba(201, 162, 39, .06),
      #fff 120px);
}
.li-otras {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.li-otras img {
  width: 110px;
  height: 140px;
  object-fit: cover;
  border-radius: 10px;
  border: 1px solid #ece7db;
}
.li-mini {
  width: 64px;
  height: 80px;
  object-fit: cover;
  border-radius: 8px;
}
.li-fila-dom td {
  background: rgba(201, 162, 39, .08);
}
.li-cre p {
  font-size: 15px;
}
.li-post {
  max-width: 700px;
}
.em-camp {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 14px;
}
.em-camp a {
  display: block;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1.5px solid #0A0A0A;
  background: #fff;
  text-decoration: none;
  color: #0A0A0A;
  transition: transform .15s, box-shadow .15s;
}
.em-camp a:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.em-camp a b {
  display: block;
  font-size: 16px;
  font-weight: 800;
}
.em-camp a small {
  display: block;
  margin-top: 3px;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.em-camp a.activo {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  border-color: transparent;
}
.em-camp a.activo small {
  color: #3a2f12;
}
@media (max-width: 640px) {
  .em-camp {
    grid-template-columns: 1fr;
  }
}
.em-camp.cuatro {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.em-camp .em-camp-num {
  margin-top: 6px;
  font-size: 14px;
  font-weight: 700;
  color: var(--body-text);
}
.em-camp a.activo .em-camp-num {
  color: #3a2f12;
}
.em-panel .stats {
  margin-top: 12px;
}
@media (max-width: 1100px) {
  .em-camp.cuatro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .em-camp.cuatro {
    grid-template-columns: 1fr;
  }
}
.em-base {
  margin: 0 0 14px;
}
.em-base h3 {
  margin: 0 0 12px;
}
.em-base .stats {
  margin: 0 0 12px;
}
.em-base-fuera {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 600;
  color: var(--body-text);
}
.em-base-pie {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 700;
  color: var(--body-text);
}
.em-base-pie:last-child {
  margin-bottom: 0;
}
.em-base-pie.suave {
  font-weight: 600;
  color: var(--muted);
}
.ld-barra {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  margin: 0 0 4px;
}
.ld-buscar {
  font: inherit;
  font-size: 16px;
  font-weight: 700;
  padding: 12px 16px;
  border-radius: 12px;
  border: 1.5px solid #0A0A0A;
  background: #fff;
  width: 100%;
  max-width: 380px;
}
.ld-total {
  font-size: 15px;
  font-weight: 700;
}
.ld-alerta {
  color: #b3261e;
}
.ld-nota {
  margin: -6px 0 10px;
  font-size: 15px;
  font-weight: 600;
  color: var(--body-text);
}
.ld-lista {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ld-fila {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 12px 14px;
}
.ld-fila[hidden],
.ld-grupo[hidden] {
  display: none;
}
.ld-punto {
  flex: none;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #c9c9c9;
}
.ld-punto.ok {
  background: #2e9d5b;
}
.ld-punto.mal {
  background: #d93025;
  box-shadow: 0 0 0 4px rgba(217, 48, 37, .18);
}
.ld-txt {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  flex: 1;
}
.ld-txt b {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.3;
}
.ld-txt small {
  font-size: 14px;
  font-weight: 600;
  color: var(--body-text);
  line-height: 1.4;
}
.ld-txt code {
  font-size: 14px;
  font-weight: 800;
  word-break: break-all;
  color: #6b5312;
}
.ld-bot {
  display: flex;
  gap: 6px;
  flex: none;
}
@media (max-width: 640px) {
  .ld-fila {
    flex-wrap: wrap;
  }
  .ld-bot {
    width: 100%;
  }
  .ld-bot .btn {
    flex: 1;
    justify-content: center;
  }
}
.chip.cod-v {
  white-space: nowrap;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #0A0A0A;
  color: var(--gold-marca);
  font-weight: 800;
  letter-spacing: .4px;
  font-size: 14px;
}
.cod-txt {
  color: var(--gold);
  font-weight: 800;
  font-size: 14px;
}
.extra-card {
  background: #fff;
  border: 1px solid var(--line,#eee);
  border-radius: 18px;
  padding: 18px;
  margin: 0 0 18px;
  box-shadow: 0 6px 22px rgba(0, 0, 0, .05);
}
.extra-card header {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 14px;
  font-size: 17px;
}
.extra-vers {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
}
.extra-ver video {
  width: 100%;
  max-width: 340px;
  aspect-ratio: 9/16;
  background: #000;
  border-radius: 14px;
  display: block;
  margin: 8px 0 10px;
}
.extra-ver-top {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  font-size: 15px;
}
.extra-ver-top small {
  font-weight: 700;
  color: var(--muted);
  font-size: 14px;
}
.extra-nota {
  font-weight: 700;
  font-size: 14px;
  color: var(--muted);
  margin: 0 0 10px;
}
.ganchos-redes h3 {
  margin: 0 0 2px;
  font-size: 20px;
}
.ganchos-redes > .sub {
  margin: 0 0 14px;
  font-size: 15px;
  font-weight: 700;
}
.gr-fila {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 14px 0;
  border-top: 1.5px solid var(--line-gold-soft);
}
.gr-red {
  min-width: 132px;
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 16px;
  font-weight: 800;
  color: var(--ink);
}
.gr-emo {
  font-size: 20px;
}
.gr-txt {
  flex: 1;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
  color: var(--ink);
  word-break: break-word;
}
.gr-txt .gr-como {
  display: block;
  margin-top: 5px;
  font-size: 14px;
  font-weight: 700;
  opacity: .72;
  line-height: 1.4;
}
.gr-falta {
  font-size: 16px;
  font-weight: 700;
  opacity: .6;
}
.gr-copiar {
  flex: none;
  align-self: center;
}
.gr-campo {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
}
.gr-et {
  font-size: 15px;
  font-weight: 800;
}
.gr-campo small {
  font-size: 13px;
  font-weight: 700;
  opacity: .72;
  line-height: 1.4;
}
@media (max-width: 640px) {
  .gr-fila {
    flex-wrap: wrap;
    gap: 8px;
  }
  .gr-red {
    min-width: 0;
    width: 100%;
  }
  .gr-copiar {
    align-self: flex-start;
  }
}
.cal-nav {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 18px 0 10px;
  font-size: 15px;
}
.cal-nav b {
  font-size: 16px;
}
.cal-sem {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
  align-items: start;
}
.cal-dia {
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  border-radius: var(--radius);
  padding: 10px;
  min-height: 120px;
}
.cal-dia.es-hoy {
  border-color: var(--gold);
  box-shadow: 0 0 0 2px rgba(201,162,39, .18);
}
.cal-dia > header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--line-gold-soft);
  padding-bottom: 6px;
}
.cal-dia > header b {
  font-size: 15px;
}
.cal-dia > header span {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.cal-vacio {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  margin: 6px 0;
}
.cal-mas {
  width: 100%;
  margin-top: 8px;
}
.prog-card {
  background: #fff;
  border: 1px solid var(--line-gold-soft);
  border-radius: 12px;
  padding: 10px;
  margin-bottom: 8px;
  font-size: 15px;
}
.prog-card.e-publicado {
  opacity: .75;
}
.prog-card.e-error {
  border-color: var(--red);
}
.prog-hora {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}
.prog-hora b {
  font-size: 17px;
  font-family: "Playfair Display", serif;
  color: var(--gold);
}
.prog-card h4 {
  margin: 2px 0 6px;
  font-size: 15px;
  line-height: 1.3;
}
.prog-error {
  color: var(--red);
  font-size: 14px;
  margin: 6px 0;
}
.prog-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.prog-listos h3 {
  font-size: 17px;
}
.tilde {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 15px;
  line-height: 1.45;
  margin: 6px 0;
  cursor: pointer;
}
.tilde input {
  margin-top: 3px;
  width: 18px;
  height: 18px;
  flex: none;
  accent-color: var(--gold);
}
.aviso-mal {
  border-color: var(--red);
  background: #fff6f4;
  font-size: 15px;
}
@media (max-width: 900px) {
  .cal-sem {
    grid-template-columns: 1fr;
  }
  .cal-dia {
    min-height: 0;
  }
  .cal-dia:not(.es-hoy):has(.cal-vacio) {
    opacity: .85;
  }
}
.prog-card.es-planner {
  background: var(--panel);
  border-style: dashed;
}
.plan-sum {
  font-size: 14px;
  font-weight: 600;
  color: var(--body-text);
  margin: 4px 0 6px;
  line-height: 1.35;
}
.prog-chequeo {
  font-size: 14px;
  align-self: center;
}
.ok-verde {
  color: var(--green);
}
.ok-rojo {
  color: var(--red);
}
.hs-dia {
  margin: 0 0 32px;
}
.hs-fijo {
  margin: 0 0 16px;
}
.hs-fijo b {
  font-size: 16px;
}
.hs-item {
  margin: 10px 0;
}
.hs-pantalla {
  font-size: 20px;
  line-height: 1.55;
  font-weight: 700;
  color: #1a1a1a;
  white-space: normal;
}
.hs-hook {
  background: #FAF7EE;
  border-color: #E8DCC0;
}
.hs-hook .sub,
.hs-dm .sub {
  font-size: 15px;
  font-weight: 600;
}
.hs-dm {
  background: #FBFBF8;
}
.hs-tabla {
  width: 100%;
  border-collapse: collapse;
  margin-top: 8px;
  font-size: 15px;
  font-weight: 600;
}
.hs-tabla td {
  padding: 7px 8px;
  border-bottom: 1px solid #EFEAD9;
  vertical-align: top;
}
.hs-tabla tr:last-child td {
  border-bottom: 0;
}
.tab-tableros {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 2px 0 14px;
}
.tabl-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 800;
  padding: 11px 18px;
  border-radius: 999px;
  border: 1.5px solid rgba(17, 17, 17, .12);
  background: #fff;
  color: var(--tinta);
  cursor: pointer;
  transition:
    transform .12s,
    box-shadow .12s,
    border-color .12s;
}
.tabl-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px -12px rgba(17, 17, 17, .6);
}
.tabl-btn .n {
  background: #0A0A0A;
  color: #fff;
  border-radius: 999px;
  padding: 1px 9px;
  font-size: 14px;
  font-weight: 800;
}
.tabl-btn.activo {
  border-color: var(--line-gold);
  background:
    linear-gradient(
      180deg,
      #fdf6e3,
      #fff);
  box-shadow: 0 2px 12px -7px rgba(17, 17, 17, .6);
}
.tabl-btn.activo .n {
  background: var(--gold-marca,#b8963f);
  color: #0A0A0A;
}
@media (max-width: 640px) {
  .tabl-btn {
    flex: 1 1 calc(50% - 10px);
    justify-content: center;
    padding: 11px 10px;
  }
}
.tcard-video {
  margin: 8px 0 2px;
  max-width: 100%;
}
.tcard-video video {
  width: 100%;
  max-width: 100%;
  border-radius: 10px;
  background: #000;
  display: block;
}
.tcard-video-tit {
  display: block;
  font-size: 14px;
  font-weight: 800;
  color: #6b4e12;
  margin: 0 0 4px;
  overflow-wrap: anywhere;
}
.grid-listos {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
  gap: 14px;
  align-items: start;
}
.tarjeta-lista {
  cursor: default;
}
.tarjeta-lista .chip.suave {
  font-weight: 700;
}
.guion-tarjeta summary {
  cursor: pointer;
  font-weight: 800;
  font-size: 14px;
  margin-top: 8px;
}
.guion-tarjeta div {
  white-space: pre-wrap;
  font-size: 14px;
  line-height: 1.55;
  margin-top: 8px;
  max-height: 320px;
  overflow: auto;
  background: #fbf7ec;
  border: 1px solid #ecdcae;
  border-radius: 10px;
  padding: 10px;
  overflow-wrap: anywhere;
}
.tcard-top {
  flex-wrap: wrap;
  justify-content: flex-start;
  row-gap: 6px;
}
.tcard-top .chip {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 100%;
}
.tcard-top .punto-nuevo {
  margin-left: auto;
}
.tcard-btns .btn {
  max-width: 100%;
  overflow-wrap: anywhere;
  white-space: normal;
  text-align: left;
}
.tcard-video.editando video {
  outline: 3px solid var(--line-gold);
  outline-offset: 2px;
  border-radius: 10px;
}
.rec-panel {
  margin-top: 10px;
  padding: 10px;
  border-radius: 12px;
  background: #FBF3DC;
  border: 1px solid #ECDCAE;
}
.rec-barra {
  position: relative;
  height: 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #ECDCAE;
  margin: 0 0 10px;
  overflow: hidden;
}
.rec-barra .rec-marca {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  background:
    linear-gradient(
      90deg,
      #C9A227,
      #E8CE7A);
}
.rec-fila {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 15px;
  font-weight: 800;
  margin: 0 0 8px;
}
.rec-fila .rec-num {
  font-size: 16px;
  font-weight: 800;
  background: #0A0A0A;
  color: var(--gold-marca,#E8CE7A);
  border-radius: 999px;
  padding: 2px 10px;
  min-width: 66px;
  text-align: center;
}
.rec-fila .btn.chico {
  font-size: 14px;
  font-weight: 800;
  padding: 6px 10px;
}
.rec-aviso {
  font-size: 14px;
  font-weight: 700;
  color: #6b4e12;
  margin: 8px 0 0;
  line-height: 1.4;
}
.rec-aviso b {
  color: var(--tinta);
}
.rec-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}
.rec-btns .btn {
  font-size: 14px;
  font-weight: 800;
}
.nota-mini.recortando {
  color: #6b4e12;
  background: #FBF3DC;
  border: 1px solid #ECDCAE;
  border-radius: 10px;
  padding: 8px 10px;
  margin: 8px 0 0;
}
.rec-panel b {
  display: inline;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}
.rec-fila > b {
  display: inline-block;
  min-width: 54px;
}
.rec-panel .btn.chico {
  padding: 6px 9px;
}
.rec-fino {
  display: inline-flex;
  gap: 6px;
  flex: 0 0 auto;
}
body.con-editor {
  overflow: hidden;
}
#editor-root {
  position: fixed;
  inset: 0;
  z-index: 9000;
}
.ed-capa {
  position: absolute;
  inset: 0;
  background: #141416;
  color: #fff;
  display: flex;
  flex-direction: column;
}
.ed-top {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #1c1c20;
  border-bottom: 1px solid #2a2a30;
}
.ed-tit {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.ed-tit b {
  font-size: 18px;
  font-weight: 800;
  color: #F0D68A;
}
.ed-tit span {
  font-size: 14px;
  font-weight: 700;
  color: #b9b9c2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ed-x {
  margin-left: auto;
  background: #2a2a30;
  color: #fff;
  border: 0;
  border-radius: 10px;
  width: 40px;
  height: 40px;
  font-size: 18px;
  font-weight: 800;
  cursor: pointer;
}
.ed-x:hover {
  background: #3a3a44;
}
.ed-cuerpo {
  flex: 1;
  display: flex;
  min-height: 0;
}
.ed-izq {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
}
.ed-centro {
  flex: 1;
  display: flex;
  gap: 16px;
  padding: 16px;
  min-height: 0;
  align-items: stretch;
  justify-content: center;
}
.ed-pantalla {
  flex: 0 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}
.ed-pantalla video {
  max-height: 100%;
  max-width: 100%;
  height: 46vh;
  border-radius: 12px;
  background: #000;
  display: block;
}
.ed-ayuda {
  flex: 0 0 auto;
  background: #1c1c20;
  border: 1px solid #2a2a30;
  border-radius: 14px;
  padding: 12px 14px;
}
.ed-ayuda p {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.45;
  color: #d7d7e0;
}
.ed-ayuda p:first-child {
  color: #F0D68A;
  font-size: 16px;
}
.ed-ayuda b {
  color: #fff;
}
.ed-lado {
  width: 420px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  overflow: hidden;
  padding: 16px 16px 16px 0;
}
.ed-guion {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  background: #1c1c20;
  border: 1px solid #2a2a30;
  border-radius: 14px;
  padding: 14px;
}
.ed-guion-top b {
  display: block;
  font-size: 17px;
  font-weight: 800;
  color: #F0D68A;
  margin-bottom: 4px;
}
.ed-guion-top span {
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
  color: #b9b9c2;
}
.ed-guion-top span b {
  display: inline;
  font-size: inherit;
  color: #fff;
  margin: 0;
}
.ed-guion-txt {
  flex: 1 1 auto;
  overflow-y: auto;
  margin: 10px 0 8px;
  padding: 10px 12px;
  background: #141416;
  border-radius: 10px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.9;
  color: #e8e8ef;
  user-select: none;
  -webkit-user-select: none;
  touch-action: pan-y;
  min-height: 200px;
}
.ed-pal {
  padding: 2px 3px;
  border-radius: 6px;
  cursor: pointer;
}
.ed-pal:hover {
  background: #2a2a30;
}
.ed-pal.sel {
  background: #3d3827;
  box-shadow: inset 0 0 0 2px #F0D68A;
}
.ed-pal.fuera {
  color: #70707c;
  text-decoration: line-through;
  text-decoration-color: #C9A227;
  text-decoration-thickness: 2px;
}
.ed-pal.suena {
  background:
    linear-gradient(
      180deg,
      #E8CE7A,
      #C9A227);
  color: #0A0A0A;
}
.ed-pal.fuera.suena {
  color: #5a4d1c;
}
.ed-guion-esperando {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.55;
  color: #d7d7e0;
}
.ed-guion-esperando b {
  color: #F0D68A;
}
.ed-guion-esperando span {
  color: #b9b9c2;
  font-size: 14px;
}
.ed-guion-esperando span.mal {
  color: #E58C8C;
}
.ed-guion-pie {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 700;
  color: #b9b9c2;
}
.ed-guion-pie b {
  color: #F0D68A;
}
.ed-guion-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ed-guion-btns .ed-btn {
  font-size: 14px;
  padding: 9px 12px;
}
details.ed-ayuda summary {
  font-size: 15px;
  font-weight: 800;
  color: #F0D68A;
  cursor: pointer;
}
details.ed-ayuda p {
  margin: 8px 0 0;
}
details.ed-ayuda[open] summary {
  margin-bottom: 4px;
}
.ed-abajo {
  background: #1c1c20;
  border-top: 1px solid #2a2a30;
  padding: 12px 16px 16px;
}
.ed-mandos,
.ed-acciones {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.ed-acciones {
  margin-top: 12px;
}
.ed-sep {
  flex: 1 1 auto;
}
.ed-btn {
  background: #2a2a30;
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  font-family: inherit;
}
.ed-btn:hover {
  background: #3a3a44;
}
.ed-btn.grande {
  font-size: 16px;
  padding: 12px 18px;
}
.ed-btn.oro {
  background:
    linear-gradient(
      180deg,
      #E8CE7A,
      #C9A227);
  color: #0A0A0A;
}
.ed-btn.verde {
  background: #2E7D4F;
  color: #fff;
}
.ed-btn.rojo {
  background: #8E2F2F;
  color: #fff;
}
.ed-reloj {
  font-size: 16px;
  font-weight: 800;
  color: #d7d7e0;
}
.ed-reloj b {
  color: #F0D68A;
}
.ed-queda {
  font-size: 15px;
  font-weight: 700;
  color: #d7d7e0;
}
.ed-queda b {
  color: #F0D68A;
}
.ed-pista-wrap {
  margin-top: 12px;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 6px;
  background: #141416;
  border-radius: 12px;
  border: 1px solid #2a2a30;
}
.ed-regla {
  position: relative;
  height: 22px;
  margin: 6px 0 0;
}
.ed-regla span {
  position: absolute;
  top: 4px;
  font-size: 12px;
  font-weight: 700;
  color: #8a8a96;
  transform: translateX(-50%);
  white-space: nowrap;
}
.ed-regla span::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -4px;
  width: 1px;
  height: 6px;
  background: #3a3a44;
}
.ed-pista {
  position: relative;
  height: 78px;
  margin: 4px 0 10px;
  touch-action: none;
  cursor: pointer;
}
.ed-partes {
  position: absolute;
  inset: 0;
}
.ed-parte {
  position: absolute;
  top: 0;
  bottom: 0;
  border-radius: 8px;
  overflow: hidden;
  background: #2a2a30 center/cover;
  border: 2px solid transparent;
  box-sizing: border-box;
}
.ed-parte.elegido {
  border-color: #F0D68A;
  box-shadow: 0 0 0 2px rgba(240, 214, 138, .35);
}
.ed-parte-t {
  position: absolute;
  left: 6px;
  bottom: 4px;
  font-size: 12px;
  font-weight: 800;
  color: #fff;
  background: rgba(0, 0, 0, .6);
  border-radius: 6px;
  padding: 1px 6px;
}
.ed-mango {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 14px;
  background: transparent;
  cursor: ew-resize;
}
.ed-parte.elegido .ed-mango {
  background: #F0D68A;
}
.ed-parte.elegido .ed-mango::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 26px;
  border-radius: 2px;
  background: #141416;
}
.ed-mango.izq {
  left: 0;
  border-radius: 6px 0 0 6px;
}
.ed-mango.der {
  right: 0;
  border-radius: 0 6px 6px 0;
}
.ed-cabezal {
  position: absolute;
  top: -22px;
  bottom: 0;
  width: 2px;
  background: #fff;
  pointer-events: none;
}
.ed-cabezal span {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 12px;
  height: 12px;
  border-radius: 3px;
  background: #fff;
}
@media (max-width: 900px) {
  .ed-centro {
    flex-direction: column;
    gap: 10px;
    padding: 10px;
  }
  .ed-cuerpo {
    flex-direction: column;
  }
  .ed-lado {
    width: auto;
    align-self: stretch;
    order: 2;
    min-height: 0;
    padding: 0 10px 10px;
    overflow: visible;
  }
  .ed-guion-txt {
    min-height: 140px;
  }
  .ed-guion-txt {
    max-height: 26vh;
    font-size: 16px;
    line-height: 1.8;
  }
  .ed-ayuda {
    width: auto;
    align-self: stretch;
    order: 2;
    padding: 10px;
  }
  .ed-ayuda p {
    font-size: 14px;
    margin: 0 0 5px;
  }
  .ed-pantalla video {
    height: 34vh;
  }
  .ed-btn {
    padding: 10px 12px;
    font-size: 14px;
  }
}
.lecciones {
  margin: 0 0 20px;
  padding: 18px;
  border-radius: 18px;
  background: #fbf7ec;
  border: 1px solid #ecdcae;
}
.leccion-form {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 14px;
}
.leccion-form input {
  flex: 1 1 320px;
  min-width: 0;
  font-size: 15px;
  font-weight: 600;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1.5px solid #ecdcae;
  background: #fff;
  font-family: inherit;
}
.leccion-lista {
  display: grid;
  gap: 10px;
}
.leccion {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 14px;
  padding: 12px;
}
.leccion.ok {
  opacity: .72;
}
.leccion-top {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 8px;
}
.leccion-fecha {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  margin-left: auto;
}
.leccion p {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.45;
}
.leccion-nota {
  color: #6b4e12;
  font-weight: 700;
}
.lv-card {
  margin-bottom: 22px;
}
.lv-ver video {
  max-width: 760px;
  aspect-ratio: 16/9;
}
.lv-ver {
  max-width: 760px;
}
.lv-tiene {
  margin: 0 0 12px;
}
.lv-tiene b {
  font-size: 15px;
}
.lv-tiene .gl-ul {
  margin: 8px 0 0;
  padding-left: 20px;
}
.lv-tiene .gl-ul li {
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 4px;
}
.lv-card .an-meta {
  margin: 2px 0 12px;
  font-size: 14.5px;
  font-weight: 700;
}
.hl-dia {
  margin: 0 0 30px;
}
.hl-grilla {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 16px;
  margin: 12px 0;
}
.hl-item {
  margin: 0;
  background: #fff;
  border: 1px solid #EFEAD9;
  border-radius: 14px;
  padding: 10px;
}
.hl-img {
  width: 100%;
  border-radius: 10px;
  display: block;
}
.hl-item figcaption {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin-top: 9px;
  font-size: 15px;
  font-weight: 700;
}
.hl-ojo {
  font-size: 13px;
  font-weight: 700;
  color: #8A6E27;
  line-height: 1.35;
}
.hl-bajar {
  align-self: flex-start;
}
.hs-fila {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 10px 0 4px;
}
.hs-placa {
  width: 210px;
  border-radius: 16px;
  display: block;
  box-shadow: 0 6px 22px rgba(0, 0, 0, .18);
}
.hs-placa-link {
  line-height: 0;
}
.hs-cajas {
  flex: 1;
  min-width: 260px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: flex-start;
}
.hs-caja {
  display: inline-block;
  padding: 9px 15px;
  border-radius: 5px;
  font-family:
    "Times New Roman",
    Georgia,
    serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
}
.cj-b {
  background: #F7F3E7;
  color: #0A0A0A;
  border: 1px solid #E8E2D2;
}
.cj-n {
  background: #0B0B0B;
  color: #fff;
}
.cj-o {
  background: #E0B23F;
  color: #140F02;
}
.cj-p {
  background: #F7F3E7;
  color: #0A0A0A;
  border: 1px dashed #C9A227;
  font-size: 18px;
}
.cj-n .hs-hi {
  color: #E0B23F;
}
.cj-b .hs-hi,
.cj-p .hs-hi {
  color: #8A6E27;
}
.cj-o .hs-hi {
  color: #fff;
}
@media (max-width: 620px) {
  .hs-placa {
    width: 150px;
  }
  .hs-caja {
    font-size: 18px;
  }
}
.chip.equipo-tambien {
  background: #EEF6FF;
  border-color: #9CC3F0;
  color: #1D4ED8;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
.chip.equipo-tambien:hover {
  background: #DCEAFB;
  border-color: #1D4ED8;
}
.extra-card header .chip.equipo-tambien {
  margin-left: 4px;
}
.pp-card .pp-acciones {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed #e7dcc4;
}
.pp-cuando {
  font-size: 15px;
  font-weight: 800;
  color: #6b5a2a;
  margin: 6px 0 2px;
}
.chip.pp-nuevo {
  background:
    linear-gradient(
      120deg,
      #f5d98a,
      #e8c25f);
  color: #4a3a08;
  font-weight: 900;
  letter-spacing: .5px;
  border: 0;
}
.pp-ojo {
  margin-top: 12px;
  font-size: 15px;
  font-weight: 700;
  background: #fff6e2;
  border: 1px solid #f0dfb2;
  border-radius: 12px;
  padding: 10px 14px;
}
.pp-sop {
  margin: 18px 0 6px;
  background: #fffdf7;
  border: 2px solid #eadfbe;
  border-radius: 16px;
  padding: 14px 18px;
}
.pp-sop > summary {
  font-size: 18px;
  font-weight: 900;
  color: #6b5a2a;
  cursor: pointer;
}
.pp-sop-cols {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.pp-sop-col {
  background: #fff;
  border: 1px solid #efe6cf;
  border-radius: 12px;
  padding: 12px 14px;
}
.pp-sop-col h4,
.pp-sop-copy h4 {
  margin: 0 0 8px;
  font-size: 17px;
  font-weight: 900;
  color: #3b3222;
}
.pp-sop-col ul,
.pp-sop-copy ol {
  margin: 0;
  padding-left: 18px;
}
.pp-sop-col li,
.pp-sop-copy li {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  margin-bottom: 6px;
}
.pp-sop-copy {
  margin-top: 14px;
  background: #fff;
  border: 1px solid #efe6cf;
  border-radius: 12px;
  padding: 12px 14px;
}
.pp-prohibido {
  margin: 10px 0 0;
  font-size: 15px;
  font-weight: 700;
  background: #fff0f0;
  border: 1px solid #f3c9c9;
  border-radius: 10px;
  padding: 10px 12px;
}
.pp-sop-pie {
  margin: 12px 0 0;
  font-size: 15px;
  font-weight: 700;
  color: #6b5a2a;
}
@media (max-width: 720px) {
  .pp-sop {
    padding: 12px 14px;
  }
  .pp-sop > summary {
    font-size: 16px;
  }
}
.cal-grid {
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 6px;
}
.cg-fila {
  display: grid;
  grid-template-columns: 78px repeat(7, minmax(200px, 1fr));
  gap: 8px;
  margin-bottom: 8px;
  min-width: 1100px;
}
.cg-cab {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--fondo, #fff);
  padding-bottom: 4px;
}
.cg-dia {
  text-align: center;
  padding: 8px 4px;
  border-radius: 12px;
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
}
.cg-dia b {
  display: block;
  font-size: 15px;
  font-weight: 800;
  text-transform: capitalize;
}
.cg-dia span {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.cg-dia i {
  display: inline-block;
  margin-top: 3px;
  font-style: normal;
  font-size: 14px;
  font-weight: 800;
  color: #8A6E27;
  background: #FBF7EC;
  border: 1px solid #ECDCAE;
  border-radius: 999px;
  padding: 0 8px;
}
.cg-dia.es-hoy {
  border-color: var(--line-gold);
  box-shadow: 0 0 0 2px #FBF7EC;
}
.cg-hora {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  padding-right: 6px;
}
.cg-hora b {
  font-size: 16px;
  font-weight: 800;
}
.cg-hora small {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
}
.cg-celda {
  min-height: 74px;
  border-radius: 12px;
  border: 1px dashed var(--line-gold-soft);
  background: #fff;
  padding: 6px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.cg-celda.es-hoy {
  background: #FFFDF7;
}
.cg-celda .prog-card {
  margin: 0;
}
.cg-mas {
  align-self: center;
  margin: auto;
  opacity: .45;
  font-size: 18px;
  font-weight: 800;
  padding: 2px 14px;
}
.cg-celda:hover .cg-mas {
  opacity: 1;
}
.pp-reglas {
  margin: 18px 0 6px;
  background: #fff;
  border: 2px solid #eadfbe;
  border-radius: 16px;
  padding: 14px 18px;
}
.pp-reglas h3 {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 900;
  color: #3b3222;
}
.pp-reglas ul {
  margin: 0;
  padding-left: 18px;
}
.pp-reglas li {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.65;
  margin-bottom: 6px;
}
.pp-redes {
  display: inline-flex;
  gap: 6px;
  flex-wrap: wrap;
  vertical-align: middle;
}
.pp-red {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  font-weight: 800;
  background: #fff;
  border: 1px solid #e7dcc4;
  border-radius: 999px;
  padding: 3px 10px 3px 7px;
}
.pp-red svg {
  width: 15px;
  height: 15px;
  display: block;
}
.pp-dia {
  margin: 22px 0 6px;
}
.pp-dia-tit {
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 900;
  color: #3b3222;
  border-bottom: 2px solid #eadfbe;
  padding-bottom: 8px;
}
.pp-dia-tit span {
  font-size: 15px;
  font-weight: 800;
  color: #8a7748;
}
.chip.pp-orden {
  background: #3b3222;
  color: #f5d98a;
  font-weight: 900;
  border: 0;
}
.pp-nota {
  margin: 6px 0 2px;
  font-size: 15px;
  font-weight: 700;
  background: #fff6e2;
  border: 1px solid #f0dfb2;
  border-radius: 10px;
  padding: 8px 12px;
}
@media (max-width: 720px) {
  .pp-dia-tit {
    font-size: 18px;
  }
}
.pa-resumen {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin: 14px 0 10px;
}
.pa-resumen div {
  background: #fff;
  border: 2px solid #eadfbe;
  border-radius: 14px;
  padding: 10px 18px;
  text-align: center;
}
.pa-resumen b {
  display: block;
  font-size: 26px;
  font-weight: 900;
  color: #3b3222;
  line-height: 1.1;
}
.pa-resumen span {
  font-size: 14px;
  font-weight: 800;
  color: #8a7748;
}
.pa-ojo {
  margin-top: 12px;
  font-size: 15px;
  font-weight: 700;
  background: #f3fbf3;
  border: 1px solid #cfe7cf;
  border-radius: 12px;
  padding: 10px 14px;
}
.pa-grupo {
  margin: 24px 0 6px;
}
.pa-grupo-tit {
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 900;
  color: #3b3222;
  border-bottom: 2px solid #eadfbe;
  padding-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.pa-grupo-tit span {
  font-size: 15px;
  font-weight: 800;
  color: #8a7748;
}
.pa-card .pa-acciones {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed #e7dcc4;
}
.pa-card.pa-hecha {
  opacity: .72;
}
.chip.pa-ok {
  background: #e8f6e8;
  border-color: #b6ddb6;
  color: #1f6b1f;
  font-weight: 900;
}
@media (max-width: 720px) {
  .pa-grupo-tit {
    font-size: 18px;
  }
  .pa-resumen div {
    flex: 1 1 30%;
    padding: 10px;
  }
}
.ins-sub {
  font-size: 15px;
  font-weight: 700;
  color: var(--muted);
  margin: 0 0 10px;
}
.ins-nota {
  font-size: 15px;
  font-weight: 700;
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  border-radius: 12px;
  padding: 12px 14px;
  margin: 14px 0;
}
.ins-barras {
  display: grid;
  gap: 11px;
  margin: 0 0 22px;
}
.ins-b-tit {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 5px;
}
.ins-b-tit span {
  font-weight: 800;
  white-space: nowrap;
}
.ins-b-riel {
  height: 16px;
  border-radius: 999px;
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
  overflow: hidden;
}
.ins-b-riel i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: #0A0A0A;
}
.ins-b-riel i.oro {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.ins-buscar {
  border: 1.5px solid #0A0A0A;
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 700;
  font-size: 15px;
  min-width: 230px;
  font-family: inherit;
}
.ins-tabla td small {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  margin-top: 3px;
}
.ins-tabla .ins-nom {
  font-size: 15.5px;
}
.ins-gris {
  color: var(--muted);
  font-weight: 700;
}
.chip.ins-ok {
  background: #f0fdf4;
  color: #166534;
  border-color: #bbf7d0;
  margin-left: 6px;
}
.chip.ins-falta {
  background: #fffbeb;
  color: #92400e;
  border-color: #fde68a;
  margin-left: 6px;
}
.chip.ins-baja {
  background: #fef2f2;
  color: #991b1b;
  border-color: #fecaca;
  margin-left: 6px;
}
.li-como {
  margin-top: 12px;
  background: rgba(201, 162, 39, .09);
  border: 1.5px solid var(--oro,#C9A227);
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 15px;
  line-height: 1.55;
  font-weight: 600;
}
.li-como .btn {
  margin-top: 8px;
}
.pres-abrir {
  border-color: var(--line-gold);
  background: var(--panel-2);
}
.pres-abrir .btn.oro {
  font-size: 17px;
}
.pres-marco {
  margin-top: 14px;
  border: 1.5px solid var(--line-gold);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  aspect-ratio: 16/9;
}
.pres-marco iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
.pres-tips {
  margin: 6px 0 0;
  padding-left: 20px;
}
.pres-tips li {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  margin-bottom: 8px;
  color: var(--body-text);
}
.pres-tips b {
  font-weight: 800;
}
.pres-momentos {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.pres-momento {
  display: flex;
  flex-direction: column;
  gap: 2px;
  position: relative;
  padding: 12px 52px 12px 14px;
  border: 1.5px solid var(--line-gold-soft);
  border-radius: 12px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  transition: border-color .15s, transform .15s;
}
.pres-momento:hover {
  border-color: var(--line-gold);
  transform: translateY(-2px);
}
.pres-momento b {
  font-size: 16px;
  font-weight: 800;
}
.pres-momento small {
  font-size: 14px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.4;
}
.pres-bloques {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 10px;
  margin-top: 4px;
}
.pres-bloque {
  display: grid;
  grid-template-columns: 52px 1fr;
  grid-template-rows: auto auto;
  column-gap: 12px;
  align-items: center;
  padding: 11px 14px;
  border: 1.5px solid var(--line-gold-soft);
  border-radius: 12px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  transition: border-color .15s, transform .15s;
}
.pres-bloque:hover {
  border-color: var(--line-gold);
  transform: translateY(-2px);
}
.pres-bloque .pres-n {
  grid-row: 1 / 3;
}
.pres-bloque b {
  font-size: 16px;
  font-weight: 800;
}
.pres-bloque small {
  font-size: 14px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.4;
}
.pres-n {
  display: grid;
  place-items: center;
  min-width: 46px;
  height: 40px;
  border-radius: 10px;
  background: var(--ink);
  color: var(--gold-marca);
  font-size: 19px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.pres-n.chico {
  position: absolute;
  right: 12px;
  top: 50%;
  margin-top: -18px;
  min-width: 40px;
  height: 36px;
  font-size: 17px;
}
@media (max-width: 620px) {
  .pres-momentos,
  .pres-bloques {
    grid-template-columns: 1fr;
  }
}
.btn-final {
  font-weight: 900;
}
.vfila .der .btn-final {
  padding: 6px 10px;
  font-size: 13px;
  white-space: nowrap;
}
.finales {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
}
.final-item {
  flex: 1 1 280px;
  max-width: 380px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.final-tit {
  font-size: 15px;
  font-weight: 900;
  color: #6b4e12;
  overflow-wrap: anywhere;
}
.final-item video {
  width: 100%;
  max-height: 70vh;
  border-radius: 12px;
  background: #000;
  display: block;
}
.final-drive {
  width: 100%;
  aspect-ratio: 9/16;
  max-height: 70vh;
  border: 0;
  border-radius: 12px;
  background: #000;
}
.final-cargando {
  flex: 1 1 100%;
  text-align: center;
  font-weight: 800;
  color: var(--muted);
  padding: 30px 0;
}
.ins-quien {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.ins-foto {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #0A0A0A;
  color: var(--gold-marca);
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 16px;
  flex: none;
  overflow: hidden;
  border: 1.5px solid #0A0A0A;
}
.ins-foto:empty::before {
  content: attr(data-ini);
}
.ins-foto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ins-red {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 11px;
  border-radius: 999px;
  border: 1.5px solid #0A0A0A;
  font-weight: 800;
  font-size: 14px;
  text-decoration: none;
  color: #0A0A0A;
  background: #fff;
  margin: 0 6px 5px 0;
  white-space: nowrap;
  transition: transform .12s;
}
.ins-red:hover {
  transform: translateY(-1px);
  border-color: transparent;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
}
.ins-ghl {
  font-weight: 700;
  color: var(--gold);
  text-decoration: none;
}
.ins-ghl:hover {
  text-decoration: underline;
}
.ins-tabla td small.ins-cont {
  color: var(--body-text,#0A0A0A);
  font-weight: 700;
}
.ins-tabla th:nth-child(2) {
  min-width: 170px;
}
.pp-grandes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 16px;
}
.pp-grande {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 18px;
  border: 2px solid #0A0A0A;
  background: #fff;
  color: #0A0A0A;
  text-decoration: none;
  transition: transform .12s, box-shadow .12s;
}
.pp-grande:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px -16px rgba(17, 17, 17, .7);
}
.pp-grande-e {
  font-size: 32px;
  line-height: 1;
}
.pp-grande b {
  display: block;
  font-size: 23px;
  font-weight: 900;
  line-height: 1.15;
}
.pp-grande small {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  margin-top: 2px;
}
.pp-grande i {
  margin-left: auto;
  font-style: normal;
  font-size: 24px;
  font-weight: 900;
  background: #0A0A0A;
  color: #fff;
  border-radius: 999px;
  padding: 4px 16px;
}
.pp-grande.activo {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 6s linear infinite;
  border-color: var(--line-gold);
}
.pp-grande.activo small {
  color: #3b3222;
}
.pp-redes-tabs {
  margin: 0 0 6px;
}
.pp-red-btn {
  text-decoration: none;
  color: #0A0A0A;
}
.pp-logo {
  width: 18px;
  height: 18px;
  display: block;
  flex: none;
}
.pp-gancho {
  margin: 8px 0 4px;
  padding: 8px 10px;
  border-radius: 10px;
  background: #fffaf0;
  border: 1px dashed #e2c56f;
}
.pp-gancho small {
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  color: #8a6d1f;
  text-transform: uppercase;
}
.pp-gancho span {
  display: block;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
}
.pp-card.pp-hecho {
  border-color: #9bd3a6;
  background:
    linear-gradient(
      180deg,
      #f3fbf5,
      #fff 140px);
}
.chip.pp-ok {
  background: #e9f8ee;
  border-color: #9bd3a6;
  color: #17692f;
  font-weight: 900;
}
.pp-tablero {
  grid-auto-columns: minmax(300px, 1fr);
}
.pp-col-nota {
  margin: -4px 4px 10px;
  font-size: 13.5px;
  font-weight: 700;
  color: #8a4b00;
}
.pp-tabla td small {
  display: block;
  margin-top: 4px;
}
.pp-tabla td .tl {
  margin-top: 4px;
}
.pp-cuantos {
  font-size: 14px;
  font-weight: 800;
  color: var(--muted);
}
@media (max-width: 720px) {
  .pp-grandes {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .pp-grande {
    padding: 14px 16px;
  }
  .pp-grande b {
    font-size: 19px;
  }
  .pp-grande i {
    font-size: 20px;
    padding: 3px 12px;
  }
}
.navs {
  position: sticky;
  top: var(--topbar);
  z-index: 40;
}
.navs .secnav {
  position: static;
}
.subnav {
  display: flex;
  gap: 6px;
  padding: 8px 16px;
  overflow-x: auto;
  scrollbar-width: none;
  background: #23201a;
  border-top: 1px solid rgba(201,162,39, .35);
  box-shadow: 0 10px 30px -18px rgba(201,162,39, .9);
}
.subnav[hidden] {
  display: none;
}
.subnav::-webkit-scrollbar {
  display: none;
}
.subnav a {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 14px;
  border-radius: 999px;
  color: #f3ead6;
  text-decoration: none;
  font-weight: 700;
  font-size: 13.5px;
  border: 1px solid transparent;
  transition: background .2s, border-color .2s;
}
.subnav a:hover {
  background: rgba(255, 255, 255, .08);
}
.subnav a.activo {
  border-color: var(--gold-marca,#C9A227);
  background: rgba(201,162,39, .16);
  color: #fff;
}
.subnav a .n {
  background: #b91c1c;
  color: #fff;
  border-radius: 999px;
  padding: 0 8px;
  font-size: 12px;
}
.ma-sync {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 12px 0;
  padding: 10px 14px;
  border-radius: 14px;
  background: #f3f8ff;
  border: 1.5px solid #bcd4f5;
  font-size: 14.5px;
  font-weight: 700;
}
.ma-sync .ma-error {
  color: #b91c1c;
}
.ma-sync .btn {
  margin-left: auto;
}
.chip.pa-falta {
  background: #fff7ed;
  border-color: #f0b774;
  color: #8a4b00;
  font-weight: 900;
}
.pa-meta {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed #e7dcc4;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pa-ad {
  border: 1px solid #e6e1d3;
  border-radius: 12px;
  padding: 8px 10px;
  background: #fcfbf7;
}
.pa-ad-top {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: baseline;
}
.pa-ad-top b {
  font-size: 14px;
  word-break: break-word;
}
.pa-ad-top span {
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
}
.pa-ad small {
  display: block;
  font-size: 13px;
  color: var(--muted);
  margin-top: 3px;
  line-height: 1.4;
}
.pa-ad small b {
  color: #0A0A0A;
}
.pa-ad .pa-nota {
  color: #0A0A0A;
  font-weight: 700;
}
.pa-ad .pa-mal {
  color: #991b1b;
}
.pa-ad .pa-bien {
  color: #17692f;
}
.pa-ad-btns {
  display: flex;
  gap: 12px;
  margin-top: 6px;
}
.pa-quitar {
  color: var(--muted) !important;
}
.pa-sin {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: #8a4b00;
}
.pa-vincular summary {
  cursor: pointer;
  font-size: 13.5px;
  font-weight: 800;
  color: #6b5a2a;
}
.pa-vinc-form {
  display: flex;
  gap: 8px;
  margin-top: 8px;
  flex-wrap: wrap;
}
.pa-vinc-form select {
  flex: 1;
  min-width: 0;
  border: 1.5px solid #0A0A0A;
  border-radius: 10px;
  padding: 6px 8px;
  font-size: 13.5px;
  font-weight: 700;
  background: #fff;
}
.ma-stats {
  margin: 14px 0;
}
.ma-consejos ul {
  margin: 0;
  padding-left: 18px;
}
.ma-consejos li {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  margin-bottom: 6px;
}
.ma-consejos li a {
  color: #0A0A0A;
}
.ma-camp-sum {
  font-size: 14px;
  font-weight: 700;
  color: var(--muted);
  margin-left: 6px;
}
.ma-ad {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.ma-ad img {
  width: 44px;
  height: 78px;
  object-fit: cover;
  border-radius: 8px;
  flex: none;
  background: #eee;
}
.ma-ad b {
  display: block;
  font-size: 14px;
  word-break: break-word;
}
.ma-tabla td small {
  display: block;
  font-size: 12.5px;
  color: var(--muted);
  margin-top: 3px;
  line-height: 1.35;
}
.ma-tabla .ma-pieza {
  color: #6b5a2a;
  font-weight: 700;
}
.ma-tabla tr.ma-mal td:first-child {
  box-shadow: inset 4px 0 0 #dc2626;
}
.ma-tabla tr.ma-bien td:first-child {
  box-shadow: inset 4px 0 0 #16a34a;
}
.ma-tabla tr.ma-normal td:first-child {
  box-shadow: inset 4px 0 0 #eab308;
}
.ma-nota {
  white-space: nowrap;
}
.sc-card .tcard-video video {
  aspect-ratio: 9/16;
  max-height: 62vh;
  object-fit: contain;
}
.sc-copy {
  white-space: pre-wrap;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
  background: #fffaf0;
  border: 1px solid #eadfbe;
  border-radius: 10px;
  padding: 10px 12px;
  margin: 8px 0 4px;
  max-height: 190px;
  overflow: auto;
  overflow-wrap: anywhere;
}
.vl-card .vl-video {
  display: block;
  width: 100%;
  max-width: 340px;
  aspect-ratio: 9/16;
  margin: 10px auto;
  border-radius: 14px;
  background: #000;
  object-fit: cover;
}
.ref-fg {
  font-size: 14px;
  font-weight: 700;
  margin: 4px 0 8px;
}
.ref-formato-cab {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.ref-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 10px;
}
.ref-tile {
  position: relative;
  border: 1.5px solid #0A0A0A;
  border-radius: 12px;
  overflow: hidden;
  background: #0A0A0A;
  aspect-ratio: 9/16;
  padding: 0;
  cursor: pointer;
  animation: fadeInUp .4s ease both;
  text-align: left;
}
.ref-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ref-tile:hover {
  box-shadow: 0 0 0 3px var(--line-gold-soft), 0 0 26px -8px rgba(230,198,92, .7);
}
.ref-tile-sin {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--gold-marca);
  font-size: 34px;
}
.ref-tile-v {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .78);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  padding: 5px 8px;
}
.ref-tile-u {
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, .7);
  color: var(--gold-marca);
  font-size: 12px;
  font-weight: 800;
  padding: 3px 7px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ref-repro h2 {
  margin: 0 0 4px;
  font-size: 20px;
}
.ref-iframe {
  width: min(100%, 420px);
  height: min(78vh, 760px);
  border: 0;
  border-radius: 14px;
  background: #000;
  display: block;
  margin: 10px auto;
}
@media (max-width: 760px) {
  .ref-tiles {
    grid-template-columns: repeat(3, 1fr);
  }
}
.rs-veredicto {
  background: #0A0A0A;
  color: #fff;
  border-radius: var(--radius);
  padding: 20px 22px;
  margin: 0 0 16px;
}
.rs-veredicto h2 {
  font-size: 26px;
  font-weight: 800;
  margin: 0 0 8px;
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.rs-veredicto p {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
}
.rs-stats .stat small {
  display: block;
  font-size: 14px;
  font-weight: 600;
  margin-top: 6px;
  color: inherit;
  opacity: .8;
}
.rs-bloque {
  margin: 26px 0;
}
.rs-bloque h2 {
  font-size: 22px;
  font-weight: 800;
  margin: 0 0 6px;
}
.rs-lista {
  display: grid;
  gap: 10px;
}
.rs-item {
  display: flex;
  gap: 12px;
  border: 1.5px solid var(--line-gold-soft);
  border-radius: 14px;
  padding: 14px;
  background: #fff;
}
.rs-item.oro {
  border-color: var(--line-gold);
  background: var(--panel-2);
}
.rs-item > span {
  flex: 0 0 32px;
  height: 32px;
  border-radius: 50%;
  background: #0A0A0A;
  color: #fff;
  font-weight: 800;
  display: grid;
  place-items: center;
}
.rs-item b {
  font-size: 17px;
  font-weight: 800;
}
.rs-item p {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  margin: 4px 0 0;
}
.rs-nota {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
  min-width: 220px;
}
.rs-faltan li {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 6px;
}
.prog-filtros {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 14px 0 4px;
}
.prog-filtro {
  border: 2px solid var(--line-gold-soft);
  background: #fff;
  border-radius: 999px;
  padding: 7px 14px;
  font-weight: 800;
  font-size: 15px;
  color: var(--ink);
}
.prog-filtro span {
  opacity: .75;
  font-weight: 700;
  margin-left: 2px;
}
.prog-filtro.activo {
  border-color: var(--ink);
  box-shadow: 0 0 0 2px var(--ink) inset;
}
.prog-filtro.prog-ig,
.prog-filtro.prog-tt,
.prog-filtro.prog-yt,
.prog-filtro.prog-fb,
.prog-filtro.prog-th,
.prog-filtro.prog-pin,
.prog-filtro.prog-li,
.prog-filtro.prog-sp,
.prog-filtro.prog-gg {
  color: #fff;
  border-color: transparent;
}
.prog-lista {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.prog-item {
  display: flex;
  gap: 14px;
  background: #fff;
  border: 1px solid var(--line-gold-soft);
  border-radius: var(--radius);
  padding: 14px 16px;
  box-shadow: var(--shadow);
}
.prog-hora {
  font-weight: 900;
  font-size: 20px;
  min-width: 62px;
  color: #3b3222;
}
.prog-cuerpo {
  flex: 1;
  min-width: 0;
}
.prog-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 6px;
}
.prog-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  padding: 4px 11px;
  font-size: 14px;
  color: #fff;
  font-weight: 600;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.prog-chip b {
  font-weight: 900;
}
.prog-todas {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 11px;
  font-size: 14px;
  font-weight: 800;
  background: var(--panel);
  color: #5a4a22;
}
.prog-ig {
  background:
    linear-gradient(
      90deg,
      #F58529,
      #DD2A7B 55%,
      #8134AF);
}
.prog-tt {
  background: #000;
  box-shadow: inset 0 0 0 2px #25F4EE;
}
.prog-yt {
  background: #FF0000;
}
.prog-fb {
  background: #1877F2;
}
.prog-th {
  background: #101010;
}
.prog-pin {
  background: #E60023;
}
.prog-li {
  background: #0A66C2;
}
.prog-sp {
  background: #1DB954;
}
.prog-gg {
  background: #4285F4;
}
.prog-otra {
  background: #777;
}
.prog-yt-tit {
  font-size: 14px;
  color: var(--muted);
  font-weight: 700;
  margin: 2px 0;
}
.prog-texto {
  margin: 4px 0 8px;
  font-size: 16px;
  color: var(--body-text);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: pre-line;
}
.prog-texto.completo {
  display: block;
  -webkit-line-clamp: unset;
  max-height: 30vh;
  overflow: auto;
}
.prog-acciones {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.prog-video {
  display: block;
  height: 68vh;
  max-width: 100%;
  margin: 10px auto;
  background: #000;
  border-radius: 12px;
}
.prog-fotos {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  margin: 10px 0;
}
.prog-fotos img {
  height: 60vh;
  border-radius: 12px;
}
@media (max-width: 640px) {
  .prog-item {
    flex-direction: column;
    gap: 6px;
  }
  .prog-hora {
    font-size: 18px;
  }
}
.navs {
  position: static;
}
.secnav,
.subnav {
  position: static;
  flex-wrap: wrap;
  overflow: visible;
  row-gap: 6px;
}
.secnav > *,
.subnav > * {
  flex: none;
}
.chat.sticky {
  top: calc(var(--topbar) + 16px);
  max-height: calc(100vh - var(--topbar) - 32px);
}
.toc {
  top: calc(var(--topbar) + 16px);
}
@media (max-width: 640px) {
  .secnav,
  .subnav {
    gap: 6px 4px;
    padding-left: 8px;
    padding-right: 8px;
  }
}
.guiones-vista .hero h1 {
  font-size: 40px;
}
.guiones-vista .hero p {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.5;
}
.guiones-vista .btn.chico,
.guiones-vista .chip {
  font-size: 18px !important;
  font-weight: 800 !important;
  padding: 10px 16px;
  min-height: 46px;
}
.guiones-vista .chip {
  white-space: normal !important;
  max-width: 100%;
  height: auto;
  line-height: 1.35;
}
.guiones-vista .guiones {
  grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
  gap: 20px;
}
.guiones-vista .guion-card {
  padding: 22px 24px;
  gap: 12px;
}
.guiones-vista .guion-cab small {
  font-size: 17px;
  font-weight: 800;
}
.guiones-vista .guion-card h3 {
  font-size: 26px;
  font-weight: 900;
  line-height: 1.25;
}
.guiones-vista .guion-gancho {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  color: #0A0A0A;
}
.guiones-vista .guion-prev {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.55;
  color: #2A2A2A;
}
.guiones-vista .pend-aviso,
.guiones-vista .callout p,
.guiones-vista .nada {
  font-size: 19px;
  font-weight: 700;
}
.guion-leer h2 {
  font-size: 32px !important;
  font-weight: 900;
  line-height: 1.25;
}
.guion-leer .formula {
  font-size: 26px;
  font-weight: 800;
  line-height: 1.4;
}
.guion-leer .formula small {
  font-size: 16px;
  font-weight: 800;
}
.guion-leer .texto-largo {
  font-family: Inter, sans-serif;
  font-size: 27px;
  font-weight: 700;
  line-height: 1.6;
  color: #0A0A0A;
}
.guion-leer .callout .txt,
.guion-leer .callout .tit {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
.guion-leer .btn.chico {
  font-size: 18px !important;
  font-weight: 800;
  padding: 12px 18px;
  min-height: 48px;
}
@media (max-width: 520px) {
  .guiones-vista .guiones {
    grid-template-columns: 1fr;
  }
  .guiones-vista .guion-card h3 {
    font-size: 24px;
  }
  .guion-leer .texto-largo {
    font-size: 24px;
  }
}
.navs.menu-barra {
  position: static;
  background: transparent;
  padding: 12px 16px 0;
  box-shadow: none;
}
.btn-menu {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: #0A0A0A;
  color: #fff;
  border: 0;
  border-radius: 14px;
  padding: 14px 22px;
  font: 800 18px/1.2 "Inter", sans-serif;
  cursor: pointer;
  box-shadow: 0 10px 26px -14px rgba(0, 0, 0, .6);
  max-width: 100%;
  text-align: left;
}
.btn-menu .hamb {
  color: #E6C65C;
  font-size: 24px;
  line-height: 1;
}
.btn-menu b {
  font-weight: 800;
  color: #E6C65C;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.btn-menu:hover {
  background: #222;
}
.btn-menu:focus-visible {
  outline: 3px solid #E6C65C;
  outline-offset: 2px;
}
.menu-velo {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(0, 0, 0, .55);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s;
}
.menu-velo.saliendo {
  visibility: visible;
}
.menu-velo.abierto {
  opacity: 1;
  visibility: visible;
}
.menu-panel {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 9991;
  width: min(360px, 88vw);
  height: 100vh;
  height: 100dvh;
  background: #0A0A0A;
  color: #fff;
  border-radius: 0 22px 22px 0;
  box-shadow: 12px 0 40px rgba(0, 0, 0, .45);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0 0 28px;
  transform: translateX(-105%);
  visibility: hidden;
  transition: transform .25s ease;
  font-family: "Inter", sans-serif;
  font-weight: 800;
}
.menu-panel.saliendo {
  visibility: visible;
}
.menu-panel.abierto {
  transform: none;
  visibility: visible;
}
.menu-panel .mp-cab {
  position: sticky;
  top: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 18px 14px 22px;
  background: #0A0A0A;
  border-bottom: 1px solid rgba(230,198,92, .25);
  font-size: 22px;
  font-weight: 800;
  color: #E6C65C;
}
.menu-panel .mp-cerrar {
  background: rgba(255, 255, 255, .1);
  color: #fff;
  border: 0;
  border-radius: 12px;
  width: 44px;
  height: 44px;
  font: 800 20px/1 "Inter", sans-serif;
  cursor: pointer;
}
.menu-panel .mp-cerrar:hover {
  background: rgba(255, 255, 255, .2);
}
.menu-panel .secnav {
  position: static;
  display: block;
  background: transparent;
  padding: 6px 12px 0;
  box-shadow: none;
  overflow: visible;
}
.menu-panel .mp-grupo {
  margin-top: 14px;
}
.menu-panel .mp-tit {
  color: #E6C65C;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 15px;
  font-weight: 800;
  padding: 4px 12px 6px;
}
.menu-panel .secnav a {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 12px 14px;
  margin: 2px 0;
  border-radius: 14px;
  color: #fff;
  text-decoration: none;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
  background: transparent;
  animation: none;
}
.menu-panel .secnav a:hover {
  background: rgba(255, 255, 255, .1);
}
.menu-panel .secnav a.activo {
  background: var(--gold-gradient);
  background-size: 250% 100%;
  animation: shimmer 3s linear infinite;
  color: #0A0A0A;
}
.menu-panel .secnav a .badge {
  margin-left: auto;
  font-size: 15px !important;
  font-weight: 800 !important;
}
.menu-panel .secnav a.activo .badge {
  background: #0A0A0A;
  color: #E6C65C;
}
.menu-panel .subnav {
  display: block;
  position: static;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 2px 0 6px 18px;
  margin: 0 0 4px 14px;
  border-left: 2px solid rgba(230,198,92, .35);
}
.menu-panel .subnav[hidden] {
  display: none;
}
.menu-panel .subnav a {
  font-size: 16px;
  padding: 10px 12px;
  color: #f3ead6;
  border: 0;
}
.menu-panel .subnav a .n {
  margin-left: auto;
  background: #b91c1c;
  color: #fff;
  border-radius: 999px;
  padding: 0 8px;
  font-size: 15px;
  font-weight: 800;
}
html.en-central .btn-menu,
html.en-central .menu-barra,
html.en-central .menu-panel,
html.en-central .menu-velo {
  display: none !important;
}
@media (max-width: 640px) {
  .navs.menu-barra {
    padding: 10px 16px 0;
  }
  .btn-menu {
    width: 100%;
    font-size: 18px;
    padding: 14px 18px;
  }
}
.cr-tanda {
  background: #fff;
  border: 1px solid #eadfc4;
  border-radius: 16px;
  margin: 14px 0;
  padding: 10px 16px;
}
.cr-tanda > summary {
  cursor: pointer;
  font-size: 1.15rem;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 6px 0;
}
.cr-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #C9A24B;
  color: #fff;
  font-weight: 800;
}
.cr-card .cr-video {
  width: 100%;
  max-height: 420px;
  background: #000;
  border-radius: 10px;
}
.cr-arch {
  opacity: .6;
  font-size: .85em;
}
.cr-gris {
  opacity: .55;
}
.vs-etapas {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 14px;
}
.vs-etapa {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  text-decoration: none;
  padding: 14px 8px;
  border-radius: 16px;
  border: 2px solid #e8e0cc;
  background: #fff;
  font-weight: 800;
  font-size: 17px;
  color: var(--ink);
  text-align: center;
  transition: transform .15s;
}
.vs-etapa b {
  font-size: 24px;
  line-height: 1.1;
}
.vs-etapa:hover {
  transform: translateY(-1px);
}
.vs-etapa.activo {
  border-color: var(--line-gold);
  background:
    linear-gradient(
      180deg,
      #fdf6e3,
      #fff);
  box-shadow: 0 2px 14px -7px rgba(17, 17, 17, .6);
}
.vs-etapa.alerta b {
  color: var(--red);
}
.vs-filtro-fila {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
}
.vs-filtrar {
  position: relative;
}
.vs-filtrar > summary {
  list-style: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #0A0A0A;
  color: #fff;
  font-weight: 800;
  font-size: 16px;
}
.vs-filtrar > summary::-webkit-details-marker {
  display: none;
}
.vs-filtrar > summary .badge {
  background: var(--gold-marca);
  color: #0A0A0A;
  border-radius: 999px;
  padding: 0 8px;
  font-size: 14px;
}
.vs-filtrar-panel {
  position: absolute;
  z-index: 40;
  top: calc(100% + 6px);
  left: 0;
  width: min(340px, calc(100vw - 32px));
  background: #fff;
  border: 1px solid var(--line-gold-soft);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 12px 14px;
}
.vs-filtrar-tit {
  margin: 6px 0 4px;
  font-weight: 800;
  font-size: 14px;
  color: var(--gold);
  text-transform: uppercase;
  letter-spacing: .4px;
}
.vs-op {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 4px;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  border-radius: 8px;
}
.vs-op:hover {
  background: var(--panel-2);
}
.vs-op input {
  width: 20px;
  height: 20px;
  accent-color: var(--gold);
}
.vs-red-act {
  border: 1px solid var(--line-gold);
  background: #fdf6e3;
  border-radius: 999px;
  padding: 7px 12px;
  font-weight: 800;
  font-size: 14.5px;
}
.vs-sec {
  margin-top: 22px;
}
.vs-redes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 8px 0;
}
.vs-red {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  padding: 4px 10px;
  font-weight: 700;
  font-size: 14px;
  border: 1px solid #e6dfcf;
  background: #faf8f3;
  color: #5e5546;
}
.vs-red i {
  font-style: normal;
  font-weight: 800;
}
.vs-red.programado {
  background: #eef5e9;
  border-color: #b9d1a8;
  color: #3d5a2c;
}
.vs-red.hecho {
  background: #f2f2f2;
  border-color: #d6d6d6;
  color: #333;
}
.vs-red.falta {
  background: #fff7e8;
  border-color: #ecd39b;
  color: #7a5410;
}
.vs-va {
  font-weight: 700;
  font-size: 14px;
  color: var(--muted);
  margin: 8px 0 0;
  line-height: 1.45;
}
.vs-variantes {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 8px 0;
  padding: 10px;
  border-radius: 12px;
  background: var(--panel-2);
  border: 1px solid var(--line-gold-soft);
}
.vs-variantes > b {
  font-size: 14.5px;
}
.vs-variantes .btn {
  justify-content: flex-start;
  text-align: left;
  white-space: normal;
}
.vs-variantes small {
  font-weight: 700;
  color: var(--muted);
  margin-left: 4px;
}
.vs-celda {
  display: flex;
  flex-direction: column;
}
.vs-celda > .tcard {
  margin: 0;
}
.vs-sel-seccion {
  margin: 0 0 12px;
}
@media (max-width: 640px) {
  .vs-etapas {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .vs-etapa {
    font-size: 16px;
    padding: 12px 6px;
  }
}
.vid-falla {
  display: block;
  margin: 6px 0;
  padding: 8px 12px;
  border-radius: 10px;
  background: #fff7e8;
  border: 1px solid #ecd39b;
  color: #7a5410;
  font-weight: 800;
  font-size: 14.5px;
  text-decoration: none;
}
.vs-vista {
  max-width: 1280px;
}
.vs-titulo {
  font-size: 34px;
  font-weight: 800;
  margin: 6px 0 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.15;
}
.vs-n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: #0A0A0A;
  color: #E6C65C;
  font-size: 17px;
  font-weight: 800;
}
.vs-sec {
  font-size: 22px;
  font-weight: 800;
  margin: 24px 0 10px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.vs-aviso {
  font-weight: 800;
  font-size: 15px;
  color: #7a5410;
  margin: 0 0 10px;
}
.vs-barra {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 14px;
}
.vs-barra .vs-filtro-fila {
  margin: 0;
}
.vs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 16px;
  align-items: start;
}
.vs-grid .tcard {
  border-radius: 16px;
  padding: 14px;
  cursor: default;
}
.vs-grid .tcard > b {
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
}
.vs-grid .chip {
  font-size: 14.5px !important;
  font-weight: 800 !important;
}
.vs-grid .nota-mini,
.vs-grid .vs-va,
.vs-grid .extra-ver-top {
  font-size: 15px;
  font-weight: 800;
}
.vs-va span {
  font-size: 18px;
  margin-right: 2px;
}
.vs-grid video {
  width: 100%;
  border-radius: 12px;
  background: #000;
}
.menu-panel .mp-mas {
  margin-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .15);
  padding-top: 8px;
}
.menu-panel .mp-mas > summary {
  list-style: none;
  cursor: pointer;
  font-size: 14.5px;
  opacity: .85;
}
.menu-panel .mp-mas > summary::-webkit-details-marker {
  display: none;
}
.menu-panel .mp-mas > summary::after {
  content: " ▸";
}
.menu-panel .mp-mas[open] > summary::after {
  content: " ▾";
}
.menu-panel .mp-mas a {
  font-size: 16px !important;
  padding: 9px 14px !important;
}
@media (max-width: 640px) {
  .vs-titulo {
    font-size: 28px;
  }
  .vs-grid {
    grid-template-columns: 1fr;
  }
}
.tcard .dqt,
.dqt {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--muted,#6b5a3a);
  margin: 4px 0 8px;
}
.bz-cuerpo {
  display: grid;
  gap: 18px;
}
.bz-tit {
  margin: 10px 0 0;
  font-size: 20px;
  font-weight: 800;
}
.bz-frase {
  font-family:
    "Playfair Display",
    Georgia,
    serif;
  font-style: italic;
  font-size: 21px;
  line-height: 1.45;
  border-left: 3px solid var(--gold);
  padding: 6px 0 6px 16px;
  margin: 0;
}
.bz-lista .checklist {
  columns: 2 260px;
}
.bz-embudo {
  display: grid;
  gap: 10px;
  justify-items: center;
  padding: 6px 0;
}
.bz-paso {
  display: grid;
  gap: 4px;
  justify-items: center;
  width: 100%;
}
.bz-barra {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  background: #0A0A0A;
  color: var(--gold-marca);
  border-radius: 12px;
  padding: 12px 16px;
  font-weight: 700;
}
.bz-barra span {
  color: #fff;
  font-weight: 800;
  white-space: nowrap;
}
.bz-paso small {
  color: var(--muted);
  font-weight: 600;
  font-size: 14px;
  text-align: center;
}
.bz-tabla td.bz-ang {
  font-weight: 800;
}
.bz-tabla td.bz-tofu {
  color: #b8892f;
}
.bz-tabla td.bz-problema {
  color: #c0392b;
}
.bz-tabla td.bz-solucion {
  color: #2f6b3f;
}
.bz-tabla td.bz-bofu {
  color: #5b4bb7;
}
.bz-tabla td.bz-mentalidad {
  color: #1f7a8c;
}
@media (max-width: 560px) {
  .bz-barra {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }
}
.cm-barra {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 6px 0 14px;
}
.cm-mes {
  margin: 0 6px;
  font-size: 24px;
  font-weight: 800;
  text-transform: capitalize;
}
.cm-resumen {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
  margin-bottom: 8px;
}
.cm-res {
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
  padding: 12px 14px;
  display: grid;
  gap: 2px;
  background: #fff;
}
.cm-res b {
  font-size: 28px;
  line-height: 1;
}
.cm-res span {
  font-weight: 700;
  font-size: 14px;
  color: var(--muted);
}
.cm-res-publicado {
  border-color: #2f6b3f;
}
.cm-res-programado {
  border-color: #1f6fb2;
}
.cm-res-listo {
  border-color: #c9a227;
}
.cm-res-produccion {
  border-color: #8a8a8a;
}
.cm-res-meta {
  background: #0A0A0A;
  color: var(--gold-marca);
}
.cm-res-meta span {
  color: #e9dcbc;
}
.cm-falta {
  font-weight: 700;
  margin: 4px 0 12px;
}
.cm-wrap {
  overflow-x: auto;
  border: 1.5px solid #0A0A0A;
  border-radius: 14px;
}
.cm-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(130px, 1fr));
  min-width: 910px;
  background: #fff;
}
.cm-cab {
  background: #0A0A0A;
  color: var(--gold-marca);
  font-weight: 800;
  padding: 8px 10px;
  font-size: 14px;
  letter-spacing: .5px;
}
.cm-dia {
  min-height: 118px;
  border-top: 1px solid var(--line-gold-soft);
  border-left: 1px solid var(--line-gold-soft);
  padding: 6px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.cm-dia:nth-child(7n+1) {
  border-left: 0;
}
.cm-fuera {
  background: #faf7f0;
}
.cm-fuera .cm-num b {
  color: #c9c1ae;
}
.cm-pasado {
  background: #fcfbf8;
}
.cm-hoy {
  box-shadow: inset 0 0 0 2px var(--gold);
}
.cm-num {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.cm-num b {
  font-size: 15px;
}
.cm-cuenta {
  font-size: 12px;
  font-weight: 800;
  border-radius: 99px;
  padding: 1px 8px;
  background: #f1ebdd;
}
.cm-cuenta.cm-ok {
  background: #0A0A0A;
  color: var(--gold-marca);
}
.cm-chip {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 6px;
  align-items: center;
  text-decoration: none;
  color: #0A0A0A;
  border-radius: 8px;
  padding: 4px 6px;
  font-size: 12.5px;
  line-height: 1.25;
  border-left: 4px solid #999;
  background: #f6f6f6;
}
.cm-chip:hover {
  filter: brightness(.96);
}
.cm-hora {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.cm-tit {
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.cm-redes {
  grid-column: 1/-1;
  display: flex;
  gap: 3px;
}
.cm-redes svg {
  width: 14px;
  height: 14px;
}
.cm-publicado {
  border-left-color: #2f6b3f;
  background: #eaf5ec;
}
.cm-programado {
  border-left-color: #1f6fb2;
  background: #e8f1fa;
}
.cm-listo {
  border-left-color: #c9a227;
  background: #fdf6dc;
}
.cm-produccion {
  border-left-color: #8a8a8a;
  background: #f1f1f1;
}
.cm-leyenda {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.cm-leyenda .cm-chip {
  display: inline-block;
}
.bz-guion {
  display: grid;
  gap: 10px;
}
.bz-g-top {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.bz-g-gancho {
  display: grid;
  gap: 4px;
  background: #0A0A0A;
  color: #fff;
  border-radius: 12px;
  padding: 12px 14px;
}
.bz-g-gancho small {
  color: var(--gold-marca);
  font-weight: 800;
  letter-spacing: .5px;
  font-size: 12px;
}
.bz-g-gancho b {
  font-size: 18px;
  line-height: 1.35;
}
.bz-g-gancho .bz-g-en {
  color: #cfc6b3;
  font-weight: 600;
  letter-spacing: 0;
  font-style: italic;
}
.bz-g-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.bz-g-txt {
  white-space: pre-wrap;
  line-height: 1.55;
  font-size: 15px;
  padding: 6px 2px;
}
.bz-guion summary {
  font-weight: 800;
  cursor: pointer;
}

:root {
  --ink: #0A0A0A;
  --gold: #A8861E;
  --gold-marca: #C9A227;
  --line-gold: #C9A227;
  --line-gold-soft: rgba(201,162,39,.25);
  --yellow: #E6C65C;
  --gold-gradient: linear-gradient(110deg,#A8861E 20%,#F0D68A 40%,#E6C65C 50%,#F0D68A 60%,#A8861E 80%);
  --panel: #F5F1E6;
  --panel-2: #FAF8F2;
}
body {
  font-family: "Inter", system-ui, -apple-system, sans-serif;
  background:
    radial-gradient(940px 460px at 10% -10%, rgba(201,162,39,.14), transparent 70%),
    radial-gradient(1200px 680px at 50% 108%, rgba(230,198,92,.16), transparent 72%),
    #FBFAF7;
  background-attachment: fixed;
}
.topbar { background: rgba(10,10,10,.94); border-bottom: 1px solid rgba(201,162,39,.4); color: #fff; }
.topbar .marca-app .wm, .usuario-nombre { color: #fff; }
.usuario-nombre small, .btn-salir { color: #b9b2a3; }
.buscador input { background: #151515; color: #fff; border-color: #333; }
.buscador input::placeholder { color: #8f8a80; }
.usuario .avatar { background: #1d1d1d; }
.login { background: #0A0A0A; }
.login .bajada { color: #d9d2c3; }
.login .marca-app .wm { color: #fff; }
.btn-menu { background: #0A0A0A; }
.menu-panel, .menu-panel .mp-cab { background: #0A0A0A; }
.completar { background: #FFF3B0; color: #5a4300; padding: 1px 6px; border-radius: 6px; font-weight: 700; }
