/* ============================================================
   MATCH SPORT — Sistema de diseño (welcu-style)
   Basado en tu prototipo. Correcciones incluidas:
   · Logo más grande   · Contraste corregido (sin texto negro sobre fondo oscuro)
   ============================================================ */
:root{
  --purple-50:#ECFEFD; --purple-100:#D0FAF7; --purple-200:#A5F3EF; --purple-300:#6EE7E0;
  --purple-400:#34D6CE; --purple-500:#17BDB5; --purple-600:#0DA69E; --purple-700:#0B8B84;
  --purple-800:#0A6E69; --purple-900:#08514D; --purple-950:#063734;
  --amber-50:#FEF3C7; --amber-100:#FDE68A; --amber-400:#FBBF24; --amber-500:#F59E0B;
  --amber-600:#D97706; --amber-700:#B45309;
  --green-50:#DCFCE7; --green-500:#22C55E; --green-600:#16A34A; --green-700:#15803D;
  --red-50:#FEE2E2; --red-500:#EF4444; --red-600:#DC2626;
  --blue-50:#DBEAFE; --blue-500:#3B82F6; --blue-600:#2563EB;
  --text:#1F2321; --text-secondary:#5F6B67; --text-tertiary:#8A938F;
  --bg:#ffffff; --bg-secondary:#F5FBFA; --bg-tertiary:#ECFEFD;
  --border:rgba(0,0,0,.08); --border-strong:#DDE5E2;
  --radius-sm:6px; --radius-md:8px; --radius-lg:12px; --radius-xl:16px; --radius-2xl:20px; --radius-full:999px;
  --shadow-sm:0 2px 8px rgba(11,139,132,.08); --shadow-md:0 4px 16px rgba(11,139,132,.12);
  --shadow-lg:0 8px 28px rgba(11,139,132,.18); --shadow-xl:0 16px 40px rgba(11,139,132,.25);
  --shadow-amber:0 6px 20px rgba(245,158,11,.35);
  --maxw:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{font-family:var(--ms-global-typeface,"Times New Roman",Times,serif);
  color:var(--text);background:var(--bg);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.muted{color:var(--text-secondary)}
.small{font-size:13px}
.center{text-align:center}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}

/* ---------- LOGO (MÁS GRANDE, como pediste) ---------- */
.logo{display:inline-flex;align-items:center;gap:12px}
.logo-badge{height:48px;display:flex;align-items:center;justify-content:center;
  background:var(--purple-950);border-radius:12px;padding:0 14px;box-shadow:var(--shadow-sm)}
.logo-badge svg{height:26px;width:auto}
.logo-word{font-size:24px;font-weight:800;letter-spacing:-.5px;color:var(--purple-950)}
.logo-word .sport{color:var(--purple-500)}
.nav .logo-badge{height:52px}
/* Logo grande para el footer/hero oscuro */
.logo--lg .logo-badge{height:64px;border-radius:16px}
.logo--lg .logo-badge svg{height:34px}

/* ---------- NAV ---------- */
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:14px 24px;border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;z-index:50}
.nav-links{display:flex;align-items:center;gap:6px}
.nav-links a{padding:8px 12px;border-radius:var(--radius-md);color:var(--text-secondary);font-weight:600;font-size:15px}
.nav-links a:hover{background:var(--bg-tertiary);color:var(--purple-700)}
.nav-links a.active{color:var(--purple-700)}
.nav-right{display:flex;align-items:center;gap:10px}
/* ---------- BOTONES ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;
  border-radius:var(--radius-md);font-weight:700;font-size:15px;border:1px solid transparent;transition:.15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--purple-600);color:#fff;box-shadow:var(--shadow-sm)}
.btn-primary:hover{background:var(--purple-700)}
.btn-amber{background:var(--amber-500);color:#3a2600;box-shadow:var(--shadow-amber)}
.btn-amber:hover{background:var(--amber-400)}
.btn-dark{background:var(--purple-950);color:#fff}
.btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border-strong)}
.btn-ghost:hover{background:var(--bg-tertiary);color:var(--purple-700)}
.btn-danger{background:var(--red-500);color:#fff}
.btn-sm{padding:7px 14px;font-size:13px}
.btn-block{width:100%}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* ---------- INPUTS ---------- */
.label{display:block;font-weight:700;font-size:13px;margin-bottom:6px;color:var(--text)}
.input,.select,textarea.input{width:100%;padding:11px 14px;border:1px solid var(--border-strong);
  border-radius:var(--radius-md);background:#fff;color:var(--text);font-size:15px;transition:.15s}
.input:focus,.select:focus,textarea.input:focus{outline:0;border-color:var(--purple-400);box-shadow:0 0 0 3px rgba(52,214,206,.2)}
.field-hint{font-size:12px;color:var(--text-tertiary);margin-top:4px}
.field{margin-bottom:16px}

/* ---------- CARDS ---------- */
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.card-pad{padding:20px}

/* ---------- BADGES ---------- */
.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-full);
  font-size:12px;font-weight:700}
.badge-purple{background:var(--purple-100);color:var(--purple-800)}
.badge-amber{background:var(--amber-50);color:var(--amber-700)}
.badge-green{background:var(--green-50);color:var(--green-700)}
.badge-blue{background:var(--blue-50);color:var(--blue-600)}
.badge-red{background:var(--red-50);color:var(--red-600)}
.badge-gray{background:#F1F3F2;color:var(--text-secondary)}

/* ---------- ALERTS ---------- */
.alert{
  position:relative;width:min(100%,720px);margin:0 0 18px auto;padding:14px 16px;
  color:#26352F;background:#fff;border:1px solid #CAD8D2;border-left-width:5px;
  border-radius:0;box-shadow:0 10px 26px rgba(20,44,38,.11);
  font-size:14px;font-weight:650;line-height:1.5
}
.alert-ok{color:#0A593E;background:#ECF9F3;border-color:#2AA879}
.alert-err{color:#8A3027;background:#FFF0EE;border-color:#D85E52}
.alert-info{color:#174F86;background:#EDF5FF;border-color:#4D8BCB}
.alert-warn{color:#74520B;background:#FFF8E7;border-color:#D6A532}
.alert.ui-notification{
  display:grid;grid-template-columns:36px minmax(0,1fr) 32px;align-items:start;gap:12px;
  padding:12px 12px 12px 14px;transition:opacity .18s ease,transform .18s ease
}
.ui-notification-icon{
  width:36px;height:36px;display:grid;place-items:center;color:inherit;background:rgba(255,255,255,.58);
  border:1px solid currentColor;border-radius:0;font-size:16px;font-weight:900;line-height:1
}
.ui-notification-message{min-width:0;padding-top:7px;overflow-wrap:anywhere}
.ui-notification-message>p:first-child{margin-top:0}
.ui-notification-message>p:last-child{margin-bottom:0}
.ui-notification-close{
  width:32px;height:32px;display:grid;place-items:center;padding:0;color:inherit;background:transparent;
  border:1px solid currentColor;border-radius:0;font:800 20px/1 "Times New Roman",Times,serif;cursor:pointer;opacity:.72
}
.ui-notification-close:hover,.ui-notification-close:focus-visible{background:rgba(255,255,255,.64);opacity:1;outline:2px solid currentColor;outline-offset:2px}
.alert.ui-notification.is-leaving{opacity:0;transform:translateX(14px);pointer-events:none}
@media(max-width:620px){.alert{width:100%}.alert.ui-notification{grid-template-columns:32px minmax(0,1fr) 30px;gap:9px}.ui-notification-icon{width:32px;height:32px}.ui-notification-close{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.alert.ui-notification{transition:none}}

/* ---------- HERO ---------- */
.hero{background:linear-gradient(160deg,#F7FEFD 0%,#EAFBF9 100%);padding:56px 0 48px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.hero h1{font-size:46px;line-height:1.05;font-weight:800;letter-spacing:-1.5px;color:var(--purple-950);margin:14px 0 16px}
.hero h1 .accent{color:var(--purple-500)}
.hero-desc{font-size:17px;color:var(--text-secondary);max-width:460px;margin-bottom:24px}
.hero-badge{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--purple-200);
  color:var(--purple-700);padding:6px 14px;border-radius:var(--radius-full);font-weight:700;font-size:13px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-stats{display:flex;gap:32px;margin-top:32px}
.hero-stat .num{font-size:26px;font-weight:800;color:var(--purple-950)}
.hero-stat .lbl{font-size:13px;color:var(--text-secondary)}
.hero-visual{position:relative;min-height:340px}
.hero-tile{position:absolute;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;
  background-size:cover;background-position:center;border:4px solid #fff}
.hero-tile.t1{width:220px;height:280px;left:0;top:20px;transform:rotate(-4deg);background:linear-gradient(135deg,#0B8B84,#34D6CE)}
.hero-tile.t2{width:200px;height:150px;right:20px;top:0;transform:rotate(3deg);background:linear-gradient(135deg,#F59E0B,#FBBF24)}
.hero-tile.t3{width:210px;height:200px;right:0;bottom:0;transform:rotate(-2deg);background:linear-gradient(135deg,#08514D,#0DA69E)}
.hero-tile .cap{position:absolute;left:12px;bottom:12px;color:#fff;font-weight:800;font-size:14px;text-shadow:0 2px 6px rgba(0,0,0,.4)}

/* ---------- SECCIONES ---------- */
.section{padding:56px 0}
.section-eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800;color:var(--purple-500);margin-bottom:8px}
.section h2{font-size:32px;font-weight:800;letter-spacing:-.8px;color:var(--purple-950)}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px;gap:16px;flex-wrap:wrap}

/* ---------- GRID DE EVENTOS (welcu) ---------- */
.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.event-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:var(--shadow-sm);transition:.18s;display:flex;flex-direction:column}
.event-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.event-thumb{aspect-ratio:1/1;background-size:cover;background-position:center;position:relative;
  background-color:var(--purple-900)}
.event-thumb .sport-tag{position:absolute;top:10px;left:10px}
.event-thumb .new-tag{position:absolute;top:10px;right:10px}
.event-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.event-org{font-size:12px;font-weight:700;color:var(--purple-600);text-transform:uppercase;letter-spacing:.5px}
.event-title{font-size:17px;font-weight:800;color:var(--text);line-height:1.25}
.event-meta{font-size:13px;color:var(--text-secondary);display:flex;flex-direction:column;gap:3px;margin-top:2px}
.event-foot{margin-top:auto;padding-top:12px;display:flex;justify-content:space-between;align-items:center}
.event-price{font-weight:800;color:var(--purple-700);font-size:16px}

/* ---------- CATEGORÍAS / FILTROS ---------- */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:8px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-full);
  font-weight:600;font-size:14px;background:#fff;color:var(--text-secondary)}
.chip.active,.chip:hover{background:var(--purple-600);color:#fff;border-color:var(--purple-600)}

/* ---------- DASHBOARD LAYOUT ---------- */
.dash{display:grid;grid-template-columns:240px 1fr;min-height:100vh}
.side{background:var(--purple-950);color:#fff;padding:20px 14px;display:flex;flex-direction:column;gap:4px}
.side .logo-word,.side .logo-word .sport{color:#fff}
.side-user{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);padding:10px;border-radius:var(--radius-md);margin:14px 0}
.side-avatar{width:38px;height:38px;border-radius:var(--radius-full);background:var(--purple-500);
  display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff}
.side-group{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.5);margin:16px 8px 6px}
.side a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-md);
  color:rgba(255,255,255,.8);font-weight:600;font-size:14px}
.side a:hover{background:rgba(255,255,255,.08);color:#fff}
.side a.active{background:var(--purple-600);color:#fff}
.dash-main{padding:28px 32px;background:var(--bg-secondary);overflow:auto}
.dash-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}
.dash-head h1{font-size:24px;font-weight:800;color:var(--purple-950)}

/* ---------- MÉTRICAS ---------- */
.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}
.metric{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-sm)}
.metric .m-label{font-size:13px;color:var(--text-secondary);font-weight:600}
.metric .m-value{font-size:28px;font-weight:800;color:var(--purple-950);margin:4px 0}
.metric .m-sub{font-size:12px;color:var(--text-tertiary)}
.metric.dark{background:linear-gradient(135deg,var(--purple-900),var(--purple-950));color:#fff}
.metric.dark .m-label{color:rgba(255,255,255,.7)}
.metric.dark .m-value{color:#fff}
.metric.dark .m-sub{color:rgba(255,255,255,.6)}

/* ---------- TABLA ---------- */
.table-wrap{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
table.tbl{width:100%;border-collapse:collapse}
.tbl th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);
  padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}
.tbl td{padding:13px 16px;border-bottom:1px solid var(--border);font-size:14px;vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tr:hover td{background:var(--bg-secondary)}

/* ---------- SECCIÓN OSCURA (contraste corregido) ---------- */
.dark-section{background:linear-gradient(160deg,var(--purple-900),var(--purple-950));color:#fff;padding:60px 0}
.dark-section .section-eyebrow{color:var(--amber-400)}
.dark-section h2,.dark-section h3,.dark-section h4{color:#fff}
.dark-section p,.dark-section li{color:rgba(255,255,255,.82)}   /* antes salía negro: corregido */
.dark-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);padding:24px}
.dark-card .icon{width:44px;height:44px;border-radius:12px;background:var(--purple-600);
  display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:14px}
.dark-card h4{font-size:18px;margin-bottom:8px}
.dark-card .stat{color:var(--amber-400);font-weight:800;font-size:22px;margin-top:14px}

/* ---------- FOOTER ---------- */
.footer{background:var(--purple-950);color:rgba(255,255,255,.75);padding:48px 0 28px}
.footer h5{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}
.footer a{color:rgba(255,255,255,.75);display:block;padding:4px 0;font-size:14px}
.footer a:hover{color:#fff}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:13px;color:rgba(255,255,255,.55);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* ---------- AUTH ---------- */
.auth{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.auth-visual{background:linear-gradient(160deg,var(--purple-800),var(--purple-950));color:#fff;
  display:flex;flex-direction:column;justify-content:center;padding:56px}
.auth-visual h2{font-size:34px;font-weight:800;line-height:1.1;margin:20px 0 12px}
.auth-visual p{color:rgba(255,255,255,.8);font-size:16px;max-width:380px}
.auth-form{display:flex;align-items:center;justify-content:center;padding:40px}
.auth-form-inner{width:100%;max-width:380px}
.social-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:11px;
  border:1px solid var(--border-strong);border-radius:var(--radius-md);background:#fff;font-weight:700;margin-bottom:10px}
.social-btn:hover{background:var(--bg-secondary)}
.divider{display:flex;align-items:center;gap:12px;color:var(--text-tertiary);font-size:13px;margin:18px 0}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--border)}

/* ---------- STEPPER (crear evento) ---------- */
.stepper{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}
.step-dot{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--radius-full);
  background:#fff;border:1px solid var(--border-strong);font-weight:700;font-size:13px;color:var(--text-tertiary)}
.step-dot.active{background:var(--purple-600);color:#fff;border-color:var(--purple-600)}
.step-dot.done{background:var(--green-50);color:var(--green-700);border-color:var(--green-500)}

/* ---------- UTILIDADES ---------- */
.row{display:flex;gap:16px}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}
.flex{display:flex}.between{justify-content:space-between}.items-center{align-items:center}.gap-8{gap:8px}.gap-16{gap:16px}.wrap{flex-wrap:wrap}
.empty{text-align:center;padding:56px 24px;color:var(--text-secondary)}
.empty .big{font-size:44px;margin-bottom:12px}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .hero-grid,.auth,.row-2,.footer-grid{grid-template-columns:1fr}
  .hero-visual{display:none}
  .dash{grid-template-columns:1fr}
  .side{flex-direction:row;overflow-x:auto;position:sticky;top:0;z-index:40}
  .side-group,.side-user{display:none}
  .nav-links{display:none}
  .hero h1{font-size:34px}
}

/* ============================================================
   MATCH SPORT 2026 — experiencia pública editorial
   Inspirada en patrones de marketplaces de eventos, con identidad propia.
   ============================================================ */
:root{
  --ms-ink:#10201D;--ms-ink-soft:#51615D;--ms-forest:#073D37;--ms-forest-deep:#052D29;
  --ms-mint:#BFF7E7;--ms-mint-bright:#78EDCA;--ms-paper:#FCFBF7;--ms-line:#D9DED8;
  --ms-coral:#FF684D;--ms-yellow:#FFCF45;--ms-shadow:0 24px 70px rgba(9,42,37,.14);
}
html{scroll-behavior:smooth}
body{background:var(--ms-paper);color:var(--ms-ink);font-family:var(--ms-global-typeface,"Times New Roman",Times,serif)}
.container{max-width:1240px}

/* Anuncio y navegación pública */
.site-announcement{min-height:38px;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 24px;
  background:var(--ms-mint);color:var(--ms-forest-deep);font-size:12px;font-weight:700}
.site-announcement p{margin:0}
.site-announcement>span{padding:3px 8px;border-radius:999px;background:var(--ms-forest);color:#fff;
  font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.site-announcement a{text-decoration:underline;text-underline-offset:3px}
.nav{position:relative;height:78px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:28px;padding:0 max(28px,calc((100vw - 1240px)/2));
  border-bottom:1px solid rgba(16,32,29,.1);background:rgba(252,251,247,.95);backdrop-filter:blur(16px)}
.logo{gap:11px;width:max-content}
.nav>.logo{position:absolute;z-index:2;top:50%;left:50%;margin:0;transform:translate(-50%,-50%)}
.logo-badge,.nav .logo-badge,.logo--lg .logo-badge{width:38px;height:38px;padding:0;border-radius:11px;background:transparent;box-shadow:none}
.logo-badge svg,.logo--lg .logo-badge svg{width:38px;height:38px}
.logo-word{font-size:17px;font-weight:900;letter-spacing:-.055em;color:var(--ms-ink)}
.logo-word .sport{color:#0D8A75}
.nav-links{grid-column:1;justify-self:start;justify-content:flex-start;gap:30px}
.nav-links a{position:relative;padding:8px 0;border-radius:0;color:var(--ms-ink);font-size:13px;font-weight:700}
.nav-links a:hover{background:transparent;color:var(--ms-ink)}
.nav-links a::after{content:"";position:absolute;right:0;bottom:2px;left:0;height:2px;background:var(--ms-coral);transform:scaleX(0);transition:.16s}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
.nav-links a.active{color:var(--ms-ink)}
.nav-right{grid-column:2;justify-self:end;justify-content:flex-end;gap:16px}
.country-language-form{display:flex;align-items:center;gap:7px;margin:0;padding:5px 8px;border:1px solid var(--ms-line);border-radius:9px;background:#fff}
.country-language-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 24px;border-radius:50%;background:#E4F5EF;color:var(--ms-forest);font-size:11px;font-weight:900}
.country-language-form select{width:142px;min-height:30px;border:0;outline:0;background:#fff;color:var(--ms-ink);font:inherit;font-size:10px;font-weight:800;cursor:pointer}
.country-language-form noscript button{min-height:28px;border:0;border-radius:6px;background:var(--ms-forest);color:#fff;font-size:10px;font-weight:800}
.btn{min-height:46px;padding:0 22px;border-radius:7px;font-size:13px;font-weight:800;transition:.16s}
.btn-primary,.btn-dark{background:var(--ms-ink);color:#fff;box-shadow:none}
.btn-primary:hover,.btn-dark:hover{background:var(--ms-forest)}
.btn-coral{background:var(--ms-coral);color:#211714;box-shadow:0 12px 28px rgba(255,104,77,.22)}
.btn-coral:hover{background:#FF7B63}
.btn-ghost{border-color:transparent;color:var(--ms-ink)}
.btn-ghost:hover{background:#E9EFEA;color:var(--ms-ink)}
.btn-sm{min-height:40px;padding:0 18px}
.menu-toggle{display:none;width:38px;height:38px;border:1px solid var(--ms-line);border-radius:8px;background:transparent;
  color:var(--ms-ink);font-size:19px;cursor:pointer}

/* Portada */
.home-hero{position:relative;min-height:650px;padding:0 28px 78px;background:var(--ms-forest-deep);color:#fff;overflow:visible}
.home-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;pointer-events:none}
.home-hero-grid{position:relative;z-index:1;min-height:540px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr);align-items:center;gap:56px}
.home-hero-copy{padding-bottom:18px}
.ms-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:#52635F;font-size:10px;font-weight:900;
  letter-spacing:.19em;text-transform:uppercase}
.ms-eyebrow>span{width:24px;height:2px;background:var(--ms-coral)}
.ms-eyebrow-light{color:var(--ms-mint)}
.home-hero h1{max-width:720px;margin:0;color:#fff;font-size:clamp(58px,6.1vw,92px);font-weight:900;line-height:.92;letter-spacing:-.073em}
.home-hero h1 em{display:block;color:var(--ms-mint-bright);font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em}
.home-hero-lead{max-width:580px;margin:28px 0 0;color:rgba(255,255,255,.7);font-size:17px;line-height:1.65}
.home-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:30px;color:rgba(255,255,255,.78);font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase}
.home-trust span::before{content:"✓";margin-right:7px;color:var(--ms-mint-bright)}
.home-stage{position:relative;min-height:500px}
.home-orbit{position:absolute;border:1px solid rgba(191,247,231,.27);border-radius:50%}
.orbit-one{width:420px;height:420px;right:28px;top:38px}.orbit-two{width:300px;height:300px;right:88px;top:98px}
.home-poster{position:absolute;overflow:hidden;border:5px solid rgba(255,255,255,.94);color:inherit;text-decoration:none;box-shadow:0 30px 60px rgba(0,0,0,.28)}
.home-poster-main,.home-sticker{cursor:pointer;transition:filter .18s,box-shadow .18s}.home-poster-main:hover,.home-poster-main:focus-visible{filter:brightness(1.06);box-shadow:0 36px 72px rgba(0,0,0,.34);outline:0}.home-sticker:hover,.home-sticker:focus-visible{filter:brightness(1.06);box-shadow:0 16px 32px rgba(0,0,0,.28);outline:2px solid #fff;outline-offset:3px}
.home-poster::before,.event-thumb::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 17px,rgba(255,255,255,.08) 18px 19px)}
.home-poster-event-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center}.home-poster-main.has-event-image::before{z-index:1;background:linear-gradient(180deg,rgba(5,34,31,.18) 0%,rgba(5,34,31,.3) 42%,rgba(5,34,31,.9) 100%),repeating-linear-gradient(120deg,transparent 0 17px,rgba(255,255,255,.06) 18px 19px)}.home-poster-main.has-event-image>strong{color:#fff;text-shadow:0 4px 24px rgba(0,0,0,.38)}
.home-poster-main{top:30px;right:56px;width:335px;height:425px;padding:30px;background:linear-gradient(145deg,#FF704F,#F43D3D 42%,#7C1D32);transform:rotate(4deg)}
.home-poster-main::after{content:"";position:absolute;left:-40px;bottom:-75px;width:380px;height:230px;border:30px solid rgba(255,255,255,.2);border-radius:50%;transform:rotate(-12deg)}
.home-poster span,.home-poster small{position:relative;z-index:2;font-size:9px;font-weight:900;letter-spacing:.16em}
.home-poster span>i{font-style:normal}
.home-poster-main>strong{position:relative;z-index:2;display:block;margin-top:28px;color:#FFE87A;font-size:118px;line-height:.82;letter-spacing:-.09em}
.home-poster-main>b{position:absolute;z-index:2;right:25px;bottom:27px;left:25px;color:#fff;font-size:25px;line-height:.92;letter-spacing:-.04em}
.home-poster-event-copy{position:absolute;z-index:2;right:25px;bottom:24px;left:25px;display:grid;gap:4px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.38)}
.home-poster-event-copy b{font-size:25px;line-height:.94;letter-spacing:-.04em}
.home-poster-event-copy em,.home-poster-event-copy small{display:block;color:#D9F8EF;font-size:9px;font-style:normal;font-weight:900;line-height:1.25;letter-spacing:.1em;text-transform:uppercase}
.home-poster-event-copy .home-poster-price{width:max-content;margin-top:3px;padding:4px 7px;background:#BFF7E7;color:#052D29;text-shadow:none}
.home-poster-side{right:0;bottom:7px;width:190px;height:205px;padding:22px;background:linear-gradient(145deg,#BFF7E7,#49C8A6 75%);color:var(--ms-forest-deep);transform:rotate(-7deg)}
.home-poster-side>strong{position:relative;z-index:2;display:block;margin:25px 0 8px;font-size:76px;line-height:.8;letter-spacing:-.09em}
.home-poster-side small{display:block}
.home-sticker{position:absolute;z-index:5;top:58px;right:6px;width:94px;height:94px;display:grid;place-items:center;border-radius:50%;
  background:var(--ms-yellow);color:var(--ms-ink);font-size:10px;font-weight:900;line-height:1.25;text-align:center;transform:rotate(10deg);box-shadow:0 12px 25px rgba(0,0,0,.2)}
.home-search{position:absolute;z-index:10;right:28px;bottom:-34px;left:28px;max-width:1120px;min-height:92px;margin:0 auto;display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr) auto;align-items:center;padding:14px;border-radius:10px;background:#fff;color:var(--ms-ink);box-shadow:var(--ms-shadow)}
.home-search-query,.home-search-place{min-width:0;display:flex;align-items:center;padding:0 24px}
.home-search-query{gap:16px}.home-search-query>span:last-child{min-width:0;flex:1}
.home-search-place{display:block;border-left:1px solid var(--ms-line)}
.home-search small{display:block;margin-bottom:4px;color:#7B8985;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.home-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ms-ink);font-size:14px;font-weight:700}
.home-search input::placeholder{color:#98A29F;font-weight:500}.home-search-icon{font-size:30px;color:var(--ms-forest)}
.home-search-place>span{font-size:14px;font-weight:700}.home-search .btn{min-height:64px}

/* Categorías y eventos */
.home-categories{padding:82px 24px 30px}.home-category-list{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.home-category{min-height:66px;display:flex;align-items:center;justify-content:center;gap:11px;padding:10px 14px;border:1px solid var(--ms-line);border-radius:8px;
  color:#60706C;font-size:12px;font-weight:800;transition:.15s}
.home-category>span{display:grid;place-items:center;min-width:29px;height:29px;border-radius:50%;background:#E9EDE7;color:var(--ms-forest);font-size:8px;font-weight:900}
.home-category:hover,.home-category.active{border-color:var(--ms-forest);background:var(--ms-forest);color:#fff}
.home-category.active>span{background:var(--ms-mint-bright)}
.home-events{padding:80px 0 96px}
.home-section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.55fr);align-items:end;gap:48px;margin-bottom:34px}
.home-section-head h2,.home-organizer-copy h2,.home-how-head h2,.explore-hero h1{margin:0;font-size:clamp(40px,5vw,68px);font-weight:900;line-height:.95;letter-spacing:-.065em}
.home-section-head>p{margin:0;color:var(--ms-ink-soft);font-size:14px;line-height:1.7}
.home-events-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.event-card{min-width:0;overflow:hidden;border:1px solid var(--ms-line);border-radius:10px;background:#fff;box-shadow:none;transition:.18s}
.event-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(8,50,44,.13)}
.event-thumb{min-height:190px;aspect-ratio:auto;padding:18px;overflow:hidden;background-color:var(--ms-forest);color:#fff}
.event-thumb::after{content:"";position:absolute;width:260px;height:260px;right:-105px;bottom:-135px;border:28px solid rgba(255,255,255,.17);border-radius:50%}
.event-thumb.has-image::before{background:linear-gradient(to top,rgba(3,25,22,.58),transparent 65%)}
.event-thumb.has-image::after{display:none}
.poster-running{background:linear-gradient(145deg,#EE6F9D,#AC1C57)}.poster-futbol{background:linear-gradient(140deg,#F0BF34,#EF6B31);color:var(--ms-ink)}
.poster-basquet{background:linear-gradient(145deg,#EC633B,#9C2D2A)}.poster-ciclismo{background:linear-gradient(145deg,#1C6B60,#073B36)}
.poster-natacion{background:linear-gradient(145deg,#4AAAE8,#195DA6)}.poster-outdoor{background:linear-gradient(145deg,#6E5DC9,#29366F)}
.poster-fitness{background:linear-gradient(145deg,#6EDFC0,#168477);color:var(--ms-ink)}
.event-sport-label,.event-poster-code{position:absolute;z-index:2;top:18px;font-size:8px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.event-sport-label{left:18px}.event-sport-label::after{content:"";display:block;width:48px;height:3px;margin-top:11px;background:currentColor}
.event-poster-code{right:18px}.event-poster-word{position:absolute;z-index:2;right:18px;bottom:20px;left:18px;font-size:clamp(44px,5vw,68px);line-height:.8;letter-spacing:-.09em}
.event-new{position:absolute;z-index:3;right:18px;bottom:18px;padding:5px 9px;border-radius:999px;background:var(--ms-yellow);color:var(--ms-ink);font-size:9px;font-weight:900;text-transform:uppercase}
.event-body{min-height:170px;padding:18px;gap:0}.event-org{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 7px;color:#198473;font-size:8px;letter-spacing:.13em}
.event-title{font-size:18px;line-height:1.12;letter-spacing:-.035em}.event-meta{gap:5px;margin-top:12px;color:#6B7A76;font-size:11px;line-height:1.35}
.event-meta .event-date{color:var(--ms-ink);font-weight:700}.event-foot{padding-top:12px;border-top:1px solid #EDF0EB}
.event-price{color:var(--ms-ink);font-size:12px}.event-arrow{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--ms-ink);color:#fff;font-size:13px}
.home-center-action{display:flex;justify-content:center;margin-top:42px}.home-text-link,.home-light-link{width:max-content;padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;font-weight:800}
.home-text-link span{margin-left:22px}.home-empty{display:grid;place-items:center;padding:76px 24px;border:1px dashed #BEC9C5;border-radius:10px;text-align:center}
.home-empty>span{font-size:38px}.home-empty h3{margin:12px 0 6px;font-size:24px}.home-empty p{max-width:520px;margin:0 0 24px;color:var(--ms-ink-soft)}

/* Organizador */
.home-organizer{min-height:660px;display:grid;grid-template-columns:1fr 1fr;background:var(--ms-forest-deep);color:#fff}
.home-organizer-art{position:relative;overflow:hidden;display:grid;place-items:center;min-height:660px;background:linear-gradient(rgba(7,61,55,.11) 1px,transparent 1px),
  linear-gradient(90deg,rgba(7,61,55,.11) 1px,transparent 1px),var(--ms-mint-bright);background-size:40px 40px}
.home-organizer-art::before,.home-organizer-art::after{content:"";position:absolute;border:2px solid rgba(5,45,41,.22);border-radius:50%}
.home-organizer-art::before{width:510px;height:510px}.home-organizer-art::after{width:370px;height:370px}
.home-ticket{position:relative;z-index:2;width:min(340px,70%);aspect-ratio:.75;padding:34px;overflow:hidden;border:7px solid #fff;background:linear-gradient(145deg,#FF6B4F,#DB2849);box-shadow:0 35px 70px rgba(4,49,43,.25);transform:rotate(-8deg)}
.home-ticket::before{content:"";position:absolute;width:330px;height:330px;right:-180px;bottom:-110px;border:44px solid rgba(255,255,255,.17);border-radius:50%}
.home-ticket span,.home-ticket small{position:relative;z-index:2;display:block;font-size:9px;font-weight:900;letter-spacing:.18em}
.home-ticket strong{position:relative;z-index:2;display:block;margin-top:54px;color:#FFE771;font-size:94px;line-height:.7;letter-spacing:-.09em}
.home-ticket small{position:absolute;right:30px;bottom:28px;left:30px}.home-fee{position:absolute;z-index:4;right:12%;bottom:15%;width:118px;height:118px;display:grid;place-items:center;
  border-radius:50%;background:var(--ms-yellow);color:var(--ms-ink);font-size:35px;font-weight:900;line-height:.8;text-align:center;transform:rotate(7deg)}
.home-fee small{display:block;max-width:70px;font-size:8px;line-height:1.15;letter-spacing:.08em;text-transform:uppercase}
.home-organizer-copy{display:flex;flex-direction:column;justify-content:center;padding:80px max(38px,calc((100vw - 1240px)/2))}
.home-organizer-copy h2{color:#fff}.home-organizer-copy>p:not(.ms-eyebrow){max-width:560px;margin:26px 0;color:rgba(255,255,255,.68);font-size:15px;line-height:1.75}
.home-organizer-copy ul{display:grid;gap:14px;margin:0;padding:0;list-style:none;color:rgba(255,255,255,.87);font-size:13px;font-weight:700}
.home-organizer-copy li i{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:10px;border-radius:50%;background:rgba(120,237,202,.15);color:var(--ms-mint-bright);font-style:normal}
.home-organizer-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.home-light-link{color:#fff}

/* Cómo funciona y prueba social */
.home-how{padding:92px 0 100px}.home-how-head{text-align:center}.home-how-head .ms-eyebrow{justify-content:center}.home-how-head h2{max-width:760px;margin:0 auto 48px}
.home-steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ms-line);border-bottom:1px solid var(--ms-line)}
.home-steps article{min-height:330px;padding:44px 36px;border-right:1px solid var(--ms-line)}.home-steps article:last-child{border-right:0}
.step-num{color:#8C9995;font-size:10px;font-weight:900;letter-spacing:.15em}.step-mark{width:68px;height:68px;display:grid;place-items:center;margin:42px 0 26px;border-radius:50%;background:var(--ms-mint);color:var(--ms-forest);font-size:27px}
.home-steps h3{margin:0 0 12px;font-size:22px;letter-spacing:-.04em}.home-steps p{max-width:290px;margin:0;color:var(--ms-ink-soft);font-size:13px;line-height:1.65}
.home-proof{overflow:hidden;padding:68px 0 76px;border-top:1px solid var(--ms-line);background:#E5F8F1;text-align:center}
.home-proof>p{margin:0 0 34px;color:#5B6D67;font-size:9px;font-weight:900;letter-spacing:.2em}.home-proof>div{width:max-content;min-width:100%;display:flex;align-items:center;justify-content:center;gap:32px;color:var(--ms-forest);font-size:clamp(33px,5vw,66px);font-weight:900;letter-spacing:-.06em}
.home-proof i{color:var(--ms-coral);font-size:.45em;font-style:normal}

/* Explorar */
.explore-hero{padding:82px 0 74px;background:var(--ms-forest-deep);color:#fff}.explore-hero h1{max-width:760px;color:#fff}.explore-search{max-width:850px;min-height:76px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-top:34px;padding:8px 8px 8px 22px;border-radius:10px;background:#fff;color:var(--ms-ink);box-shadow:var(--ms-shadow)}
.explore-search>span{font-size:28px;color:var(--ms-forest)}.explore-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ms-ink);font-size:15px;font-weight:700}
.explore-search input::placeholder{color:#93A09C;font-weight:500}.explore-search .btn{min-height:58px}.explore-content{padding:76px 0 96px}.explore-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.explore-head h2{font-size:36px;letter-spacing:-.04em}
.explore-chips{margin-bottom:34px}.explore-chips .chip{border-color:var(--ms-line);background:transparent;color:var(--ms-ink-soft)}
.explore-chips .chip:hover,.explore-chips .chip.active{background:var(--ms-forest);border-color:var(--ms-forest);color:#fff}.explore-empty{margin-top:24px}

/* Footer público */
.footer{padding:72px 0 26px;background:var(--ms-ink);color:rgba(255,255,255,.68)}
.footer-grid{grid-template-columns:1.8fr repeat(3,1fr);gap:44px;margin-bottom:58px}.footer .logo-word{color:#fff}.footer-brand-copy p{max-width:320px;margin:22px 0 0;font-size:13px;line-height:1.7}
.footer h5{margin:5px 0 18px;font-size:10px;letter-spacing:.15em}.footer a{margin:11px 0;padding:0;font-size:12px}.footer a:hover{color:var(--ms-mint-bright)}
.footer-bottom{padding-top:22px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}

@media(max-width:1060px){
  .nav{grid-template-columns:1fr 1fr}.nav-links{position:absolute;top:77px;right:20px;left:20px;display:none;align-items:stretch;gap:0;padding:10px;border:1px solid var(--ms-line);border-radius:10px;background:#fff;box-shadow:var(--ms-shadow)}
  .nav-links.is-open{display:grid}.nav-links a{padding:13px 12px}.menu-toggle{display:grid;place-items:center}
  .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.8fr)}.home-stage{transform:scale(.86);transform-origin:center right}
  .country-language-form select{width:124px}.home-category-list{grid-template-columns:repeat(3,1fr)}.home-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  .site-announcement{justify-content:flex-start;overflow:hidden}.site-announcement p{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.site-announcement a{display:none}
  .nav{height:68px;padding:0 18px}.nav-links{top:67px}.nav-right{gap:8px}.nav-right>.btn-ghost{display:none}.country-language-form{padding:4px 6px}.country-language-icon{display:none}.country-language-form select{width:108px}
  .home-hero{min-height:auto;padding:0 20px 126px}.home-hero-grid{min-height:auto;display:block;padding-top:72px}.home-hero h1{font-size:clamp(52px,14vw,72px)}
  .home-stage{min-height:410px;margin-top:30px;transform:scale(.82);transform-origin:center}.home-search{right:20px;bottom:-92px;left:20px;grid-template-columns:1fr;gap:12px;padding:18px}
  .home-search-query{min-height:54px;padding:0 8px}.home-search-place{display:none}.home-search .btn{min-height:52px}.home-categories{padding-top:130px}
  .home-section-head{grid-template-columns:1fr;gap:20px}.home-section-head h2,.home-organizer-copy h2,.home-how-head h2,.explore-hero h1{font-size:45px}
  .home-events-grid,.home-organizer,.footer-grid{grid-template-columns:1fr}.home-organizer-art{min-height:520px}.home-organizer-copy{padding:76px 28px}
  .home-steps{grid-template-columns:1fr}.home-steps article{min-height:auto;border-right:0;border-bottom:1px solid var(--ms-line)}.home-steps article:last-child{border-bottom:0}
  .footer-grid{gap:28px}.explore-hero,.explore-content{padding-right:0;padding-left:0}.explore-head{align-items:flex-start;flex-direction:column}.explore-search{grid-template-columns:auto 1fr}.explore-search .btn{grid-column:1/-1;width:100%}
}
@media(max-width:520px){
  .nav-right>.btn-primary{display:none}.country-language-form select{width:92px;font-size:9px}.logo-word{font-size:15px}.logo-badge,.nav .logo-badge{width:34px;height:34px}.logo-badge svg{width:34px;height:34px}
  .home-hero-lead{font-size:15px}.home-trust{display:grid}.home-stage{min-height:335px;margin:15px -35px 0;transform:scale(.66)}
  .home-categories{padding-right:18px;padding-left:18px}.home-category-list{grid-template-columns:repeat(2,1fr)}.home-events{padding:70px 0 78px}.home-events>.container,.home-how>.container,.explore-content>.container,.explore-hero>.container{padding-right:18px;padding-left:18px}
  .home-section-head h2,.home-organizer-copy h2,.home-how-head h2,.explore-hero h1{font-size:39px}.home-ticket{width:72%}.home-fee{right:5%;bottom:11%}
  .home-organizer-actions{align-items:stretch;flex-direction:column}.home-proof>div{justify-content:flex-start;padding-left:22px}.footer-bottom{flex-direction:column}
  .explore-search{padding:14px}.explore-search>span{display:none}.explore-search{grid-template-columns:1fr}.explore-chips{overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}.explore-chips .chip{flex:0 0 auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}

/* ============================================================
   MATCH SPORT — identidad oficial, cinta y paneles 2026
   ============================================================ */

/* Logo oficial: el contenedor recorta el aire transparente del PNG original. */
.logo{
  --logo-art-width:292px;position:relative;width:220px;height:82px;display:block;
  overflow:hidden;flex:0 0 auto
}
.logo-badge,.nav .logo-badge,.logo--lg .logo-badge{
  position:absolute;inset:0;width:100%;height:100%;display:block;overflow:hidden;
  padding:0;border-radius:0;background:transparent;box-shadow:none
}
.logo-trace-stage{
  position:absolute;display:block;pointer-events:none
}
.logo .logo-trace-stage{
  top:64%;left:50%;width:var(--logo-art-width);aspect-ratio:3/2;
  transform:translate(-50%,-50%)
}
.logo-trace-image,.logo-trace-canvas{
  position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain
}
.logo-trace-image{
  max-width:none;user-select:none;-webkit-user-drag:none
}
.logo-trace-canvas{
  z-index:2;pointer-events:none
}
.footer .logo{
  --logo-art-width:425px;width:300px;height:118px;margin:-18px 0 4px;
  border-radius:0;background:transparent
}
.auth-visual .logo{
  width:275px;height:110px;margin-bottom:12px;border-radius:0;background:transparent
}

/* Cinta continua de comunidades deportivas. */
.home-proof{padding-right:0;padding-left:0}
.home-proof>.home-proof-viewport{
  width:100%;min-width:0;display:block;overflow:hidden;padding:4px 0;
  color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal
}
.home-proof-track{
  width:max-content;display:flex;align-items:center;justify-content:flex-start;
  will-change:transform;animation:ms-proof-marquee 25s linear infinite
}
.home-proof-group{
  min-width:max-content;display:flex;align-items:center;justify-content:flex-start;
  gap:34px;padding-right:34px;color:var(--ms-forest);
  font-size:clamp(33px,5vw,66px);font-weight:900;letter-spacing:-.06em;line-height:1
}
.home-proof:hover .home-proof-track{animation-play-state:paused}
@keyframes ms-proof-marquee{to{transform:translateX(-50%)}}

/* Panel profesional para organizadores y administración. */
.dash{
  grid-template-columns:278px minmax(0,1fr);min-height:100vh;
  background:#F2F6F4
}
.side{
  position:sticky;top:0;z-index:45;height:100vh;overflow-y:auto;
  padding:22px 17px 18px;gap:5px;background:
    radial-gradient(circle at 14% 4%,rgba(23,189,181,.2),transparent 27%),
    linear-gradient(160deg,#073D37 0%,#041F1D 78%);
  border-right:1px solid rgba(255,255,255,.06);box-shadow:12px 0 35px rgba(4,31,29,.1)
}
.side>.logo{
  --logo-art-width:345px;width:244px;height:96px;margin:0 auto 15px;padding:0!important;
  border-radius:0;background:transparent
}
.side>.logo:hover{background:transparent;color:inherit;transform:none}
.side .logo-badge{inset:0}
.side-user{
  gap:12px;margin:0 0 9px;padding:13px;border:1px solid rgba(255,255,255,.09);
  border-radius:13px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)
}
.side-avatar{
  width:40px;height:40px;flex:0 0 40px;background:var(--ms-mint-bright);
  color:var(--ms-forest-deep);box-shadow:inset 0 0 0 1px rgba(255,255,255,.24)
}
.side-group{
  margin:17px 10px 6px;color:rgba(255,255,255,.42);font-size:9px;
  font-weight:900;letter-spacing:.17em
}
.side>a:not(.logo),.side-footer a{
  min-height:44px;gap:11px;padding:8px 11px;border:1px solid transparent;
  border-radius:10px;color:rgba(255,255,255,.72);font-size:13px;font-weight:700
}
.side>a:not(.logo):hover,.side-footer a:hover{
  border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.07);color:#fff
}
.side>a:not(.logo).active{
  border-color:rgba(120,237,202,.18);background:var(--ms-mint-bright);
  color:var(--ms-forest-deep);box-shadow:0 9px 24px rgba(0,0,0,.14)
}
.side-icon{
  width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;
  border-radius:8px;background:rgba(255,255,255,.08);font-size:13px;font-weight:900
}
.side>a.active .side-icon{background:rgba(5,45,41,.11)}
.side-count{min-width:21px;height:21px;display:grid;place-items:center;margin-left:auto;padding:0 6px;border-radius:999px;background:var(--ms-coral);color:#fff;font-size:9px;font-weight:900}.side>a.active .side-count{background:var(--ms-forest-deep);color:var(--ms-mint-bright)}
.side-footer{
  margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.09)
}
.side-footer a{margin-top:3px}

.dash-main{
  min-width:0;padding:40px clamp(24px,4vw,58px) 64px;overflow:auto;
  background:
    radial-gradient(circle at 95% 0,rgba(120,237,202,.18),transparent 27%),
    #F2F6F4
}
.dash-head{align-items:flex-end;margin-bottom:28px}
.dash-head h1{
  margin:3px 0 0;color:var(--ms-ink);font-size:clamp(28px,3.2vw,42px);
  line-height:1.05;letter-spacing:-.045em
}
.module-kicker{
  display:inline-flex;align-items:center;gap:8px;color:#118B79;font-size:9px;
  font-weight:900;letter-spacing:.17em;text-transform:uppercase
}
.module-kicker::before{content:"";width:18px;height:2px;background:var(--ms-coral)}
.module-subtitle{max-width:700px;margin:9px 0 0;color:#62716D;font-size:14px;line-height:1.55}

.metrics{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px
}
.metric{
  position:relative;min-height:138px;overflow:hidden;padding:21px;
  border:1px solid #DCE4E0;border-radius:17px;background:rgba(255,255,255,.94);
  box-shadow:0 10px 30px rgba(7,61,55,.06)
}
.metric::after{
  content:"";position:absolute;right:-24px;bottom:-34px;width:82px;height:82px;
  border:15px solid rgba(13,138,117,.06);border-radius:50%
}
.metric .m-label{position:relative;z-index:1;color:#687772;font-size:11px;font-weight:800;letter-spacing:.035em}
.metric .m-value{position:relative;z-index:1;margin:9px 0 3px;color:var(--ms-ink);font-size:clamp(25px,2.4vw,34px);line-height:1;letter-spacing:-.045em}
.metric .m-sub{position:relative;z-index:1;color:#87918E;font-size:11px}
.metric.dark{
  border-color:transparent;background:linear-gradient(140deg,#0A5048,#052D29 78%);
  box-shadow:0 17px 35px rgba(5,45,41,.2)
}
.metric.dark::after{border-color:rgba(120,237,202,.12)}
.metric.dark .m-label{color:rgba(255,255,255,.65)}
.metric.dark .m-value{color:var(--ms-mint-bright)}

.quick-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:8px 0 35px
}
.quick-card{
  min-width:0;min-height:116px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;gap:14px;padding:18px;border:1px solid #DCE4E0;border-radius:15px;
  background:#fff;box-shadow:0 8px 24px rgba(7,61,55,.045);transition:.18s
}
.quick-card:hover{transform:translateY(-3px);border-color:#A6D8CC;box-shadow:0 15px 32px rgba(7,61,55,.1)}
.quick-card-primary{border-color:var(--ms-forest);background:var(--ms-forest);color:#fff}
.quick-card-primary:hover{border-color:var(--ms-forest);background:#094B44}
.quick-icon{
  width:42px;height:42px;display:grid;place-items:center;border-radius:12px;
  background:#E5F8F1;color:var(--ms-forest);font-size:18px;font-weight:900
}
.quick-card-primary .quick-icon{background:var(--ms-mint-bright)}
.quick-card b{display:block;font-size:14px;letter-spacing:-.015em}
.quick-card small{display:block;margin-top:4px;color:#74817D;font-size:11px;line-height:1.35}
.quick-card-primary small{color:rgba(255,255,255,.64)}
.quick-card i{color:#6B7A76;font-size:17px;font-style:normal}
.quick-card-primary i{color:var(--ms-mint-bright)}

.module-section-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  margin:30px 1px 15px
}
.module-section-head h2{margin:0;color:var(--ms-ink);font-size:20px;letter-spacing:-.03em}
.module-section-head p{margin:4px 0 0;color:#78847F;font-size:12px}
.module-section-head>a{padding-bottom:3px;border-bottom:1px solid #9AB0A9;color:var(--ms-forest);font-size:11px;font-weight:800}

.table-wrap{
  max-width:100%;overflow-x:auto;border:1px solid #DCE4E0;border-radius:16px;
  background:#fff;box-shadow:0 12px 30px rgba(7,61,55,.055)
}
table.tbl{min-width:720px}
.tbl th{
  padding:14px 17px;border-bottom-color:#E6ECE9;background:#F8FAF9;
  color:#7B8884;font-size:9px;font-weight:900;letter-spacing:.11em
}
.tbl td{padding:15px 17px;border-bottom-color:#EBEFED;color:#34403D;font-size:12px}
.tbl tr:hover td{background:#F8FCFA}
.tbl .btn{min-height:34px}

.dash-main>.card,.form-card,.payment-form-card{
  border-color:#DCE4E0;border-radius:18px;box-shadow:0 12px 32px rgba(7,61,55,.06)
}
.dash-main>.card.card-pad,.form-card,.payment-form-card{padding:clamp(22px,3vw,34px)}
.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:22px}
.form-card{min-width:0}
.form-section-title{
  display:flex;align-items:center;margin:8px 0 20px;padding-top:24px;
  border-top:1px solid #E6ECE9
}
.form-section-title:first-of-type{margin-top:0;padding-top:0;border-top:0}
.form-section-title h2{margin:0;color:var(--ms-ink);font-size:16px}
.form-section-title p{margin:2px 0 0;color:#83908C;font-size:11px}
.form-card .input,.form-card .select,.payment-form-card .input,.payment-form-card .select{
  min-height:46px;border-color:#D7E0DC;border-radius:9px;background:#FCFDFC
}
.form-card textarea.input{min-height:122px}
.form-card .label,.payment-form-card .label{color:#43504C;font-size:11px;letter-spacing:.02em}
.country-static{
  min-height:46px;display:flex;align-items:center;gap:11px;padding:7px 12px;
  border:1px solid #D7E0DC;border-radius:9px;background:#F4FAF7
}
.country-static>span{font-size:20px}.country-static b{display:block;color:var(--ms-ink);font-size:12px}
.country-static small{display:block;color:#7C8985;font-size:10px}
.module-help-card{
  position:sticky;top:24px;padding:26px;border-radius:18px;background:var(--ms-forest-deep);
  color:#fff;box-shadow:0 18px 40px rgba(5,45,41,.18)
}
.module-help-card h3{margin:13px 0 20px;color:#fff;font-size:23px;line-height:1.05;letter-spacing:-.04em}
.module-help-card ul{display:grid;gap:13px;margin:0;padding:0;list-style:none;color:rgba(255,255,255,.75);font-size:12px}
.module-help-card li{display:flex;gap:9px}.module-help-card li i{color:var(--ms-mint-bright);font-style:normal;font-weight:900}
.module-help-card>p{margin:22px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.45);font-size:10px;line-height:1.5}
.payment-form-card{max-width:920px}

.scan-shell{
  min-height:410px;display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);
  align-items:center;gap:clamp(28px,5vw,70px);overflow:hidden
}
.scan-mark{
  position:relative;min-height:300px;display:grid;place-items:center;overflow:hidden;
  border-radius:16px;background:linear-gradient(145deg,#0C665B,#052D29);color:var(--ms-mint-bright)
}
.scan-mark::before,.scan-mark::after,.scan-mark span::before,.scan-mark span::after{
  content:"";position:absolute;width:52px;height:52px;border-color:var(--ms-mint-bright);border-style:solid
}
.scan-mark::before{top:35px;left:35px;border-width:4px 0 0 4px}
.scan-mark::after{top:35px;right:35px;border-width:4px 4px 0 0}
.scan-mark span::before{bottom:35px;left:35px;border-width:0 0 4px 4px}
.scan-mark span::after{right:35px;bottom:35px;border-width:0 4px 4px 0}
.scan-mark b{font-size:62px;letter-spacing:-.08em}
.scan-content h2{margin:0 0 6px;color:var(--ms-ink);font-size:25px;letter-spacing:-.04em}
.scan-content form{align-items:stretch}.scan-content form .input{min-width:0;min-height:48px}
.scan-hint{display:block;margin-top:10px;color:#87938F;font-size:10px}

@media(max-width:1080px){
  .dash{grid-template-columns:238px minmax(0,1fr)}
  .side>.logo{--logo-art-width:275px;width:190px;height:76px}
  .form-layout{grid-template-columns:1fr}.module-help-card{position:static}
  .quick-grid{grid-template-columns:1fr}.quick-card{min-height:92px}
}
@media(max-width:900px){
  .dash{display:block}
  .side{
    position:sticky;top:0;height:auto;min-height:64px;display:flex;flex-direction:row;
    align-items:center;overflow-x:auto;padding:9px 12px;gap:5px
  }
  .side>.logo{--logo-art-width:196px;width:138px;height:54px;margin:0 8px 0 0;flex:0 0 138px;border-radius:9px}
  .side-user,.side-group,.side-footer{display:none}
  .side>a:not(.logo){min-width:max-content;min-height:43px;padding:7px 10px}
  .dash-main{padding:30px 22px 54px}
  .dash-head{align-items:flex-start}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .nav .logo{--logo-art-width:219px;width:154px;height:59px}
  .footer .logo{--logo-art-width:337px;width:235px;height:94px}
  .auth-visual .logo{--logo-art-width:337px;width:235px;height:94px}
  .home-proof-group{gap:22px;padding-right:22px;font-size:38px}
  .dash-main{padding:25px 15px 45px}.dash-head{display:block}.dash-head .flex{margin-top:17px;overflow-x:auto}
  .metrics{grid-template-columns:1fr}.metric{min-height:125px}.row-2{grid-template-columns:1fr}
  .module-section-head{align-items:flex-start;flex-direction:column}.form-card{padding:20px}
  .scan-shell{grid-template-columns:1fr;gap:23px}.scan-mark{min-height:215px}
  .scan-content form{display:grid}.scan-content form .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .home-proof-track{animation:none;transform:none}.home-proof-viewport{overflow-x:auto}
}

/* ---------- LOGIN · LOGO ANIMADO ---------- */
.visually-hidden{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
  margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important
}
.auth-visual{
  position:relative;isolation:isolate;align-items:center;overflow:hidden;text-align:center;
  background:
    radial-gradient(circle at 10% 0%,rgba(38,240,224,.2),transparent 36%),
    radial-gradient(circle at 12% 100%,rgba(104,196,126,.12),transparent 38%),
    linear-gradient(145deg,#0c7b74,#075552 58%,#073d3b)
}
.auth-visual::before,.auth-visual::after{
  position:absolute;z-index:-1;border-radius:50%;content:"";pointer-events:none
}
.auth-visual::before{
  width:34rem;height:34rem;right:-22rem;top:-22rem;border:1px solid rgba(132,255,246,.13);
  box-shadow:0 0 0 5rem rgba(255,255,255,.018)
}
.auth-visual::after{
  width:19rem;height:19rem;left:-12rem;bottom:-10rem;
  background:rgba(120,210,148,.09);filter:blur(9px)
}
.auth-logo-animated{
  position:relative;display:block;width:min(96%,680px);aspect-ratio:3/2;flex:0 0 auto;
  isolation:isolate;filter:drop-shadow(0 20px 26px rgba(0,26,24,.18))
}
.auth-logo-animated .logo-badge{
  position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;
  padding:0;border-radius:0;background:transparent;box-shadow:none
}
.auth-logo-animated .logo-trace-stage{inset:0;width:100%;height:100%}
.auth-logo-caption{
  margin:-7.5% 0 clamp(20px,4vh,40px)!important;color:rgba(231,255,253,.67)!important;
  font-size:10px!important;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  white-space:nowrap
}
.auth-visual h2{max-width:520px;margin-top:0}
.auth-visual>p:last-child{max-width:430px}

@media(max-width:900px){
  .auth-visual{min-height:46vh;padding:28px 24px 34px}
  .auth-form{min-height:54vh;padding-block:48px}
  .auth-logo-animated{width:min(86%,590px)}
  .auth-logo-caption{margin:-8% 0 20px!important}
  .auth-visual h2{font-size:clamp(24px,5vw,31px);margin-bottom:10px}
}
@media(max-width:520px){
  .auth-visual{min-height:38vh;padding:18px 18px 26px}
  .auth-form{min-height:62vh;padding:38px 20px 46px}
  .auth-logo-animated{width:min(100%,430px)}
  .auth-logo-caption{display:none}
  .auth-visual h2{margin-top:-7%;font-size:22px}
  .auth-visual>p:last-child{font-size:14px}
}

/* ---------- USUARIOS, CUENTA Y MÓDULO DEL CORREDOR ---------- */
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}
.registration-list{display:grid;gap:14px}
.registration-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.runner-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.user-metrics{grid-template-columns:repeat(5,minmax(150px,1fr))}
.admin-create-user{margin-bottom:18px}
.admin-create-user>summary{cursor:pointer;color:var(--ms-forest);font-size:15px;font-weight:900;list-style:none}
.admin-create-user>summary::-webkit-details-marker,.user-editor>summary::-webkit-details-marker{display:none}
.user-filters{display:grid;grid-template-columns:minmax(230px,1fr) 175px 175px auto auto;gap:10px;margin:0 0 18px}
.user-filters .input,.user-filters .select{min-width:0}
.user-cell{display:flex;align-items:center;gap:10px;min-width:210px}
.user-cell>div{display:grid;gap:2px}.user-cell small{display:block;color:#7B8884;font-size:11px}
.user-avatar{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:12px;background:#D9F8F0;color:var(--ms-forest);font-size:11px;font-weight:900}
.user-editor{position:relative}.user-editor>summary{list-style:none;cursor:pointer}
.user-editor-panel{position:fixed;z-index:100;top:5vh;right:4vw;width:min(560px,92vw);max-height:90vh;overflow:auto;padding:24px;border:1px solid #D6E2DE;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(4,39,35,.3)}
.event-map{display:block;width:100%;height:380px;border:1px solid var(--ms-line);border-radius:12px;background:#e8efec}
@media(max-width:700px){.event-map{height:300px}}
@media print{
  .site-announcement,.nav,.footer,.payment-proof-card,.print-actions,.container>a.btn{display:none!important}
  body{background:#fff!important}.section{padding:0!important}.card{border:0!important;box-shadow:none!important}
}
.money-total-line{display:block;white-space:nowrap}.money-total-line+.money-total-line{margin-top:3px;font-size:.56em}
.help-chat{position:fixed;z-index:80;right:20px;bottom:20px}.help-chat-toggle{min-width:66px;height:48px;padding:0 18px;border:0;border-radius:999px;background:var(--ms-forest-deep);color:#fff;font-weight:800;box-shadow:0 14px 36px rgba(3,32,29,.28);cursor:pointer}.help-chat-panel{position:absolute;right:0;bottom:60px;width:min(350px,calc(100vw - 32px));overflow:hidden;border:1px solid var(--ms-line);border-radius:14px;background:#fff;box-shadow:0 24px 60px rgba(3,32,29,.25)}.help-chat-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--ms-forest-deep);color:#fff}.help-chat-head small{display:block;margin-top:2px;color:rgba(255,255,255,.65);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.help-chat-head button{border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer}.help-chat-body{display:grid;gap:8px;padding:16px}.help-chat-body p{margin:0 0 6px;padding:12px;border-radius:10px;background:#EFF6F3;color:var(--ms-ink-soft);font-size:13px;line-height:1.5}.help-chat-body button,.help-chat-body a{padding:10px 12px;border:1px solid var(--ms-line);border-radius:8px;background:#fff;color:var(--ms-ink);font:inherit;font-size:12px;font-weight:700;text-align:left;cursor:pointer}.help-chat-body button:hover,.help-chat-body a:hover{border-color:var(--ms-forest);color:var(--ms-forest)}
@media print{.help-chat{display:none!important}}
.user-editor-close{float:right;margin:0 0 14px 14px}
.user-editor:not([open]) .user-editor-panel{display:none}
.user-editor[open]::before{position:fixed;z-index:99;inset:0;background:rgba(3,31,28,.42);content:""}
.payment-proof-card h3{color:var(--ms-ink)}
.distance-edit-row{align-items:start;margin-bottom:12px}.distance-edit-row>.flex{align-items:flex-start}

@media(max-width:1180px){
  .admin-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .user-metrics{grid-template-columns:repeat(3,minmax(150px,1fr))}
  .user-filters{grid-template-columns:1fr 1fr 1fr}.user-filters .btn{width:100%}
}
@media(max-width:820px){
  .account-grid{grid-template-columns:1fr}
  .registration-row{align-items:flex-start;flex-direction:column}.registration-row>.btn{width:100%}
  .user-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .user-filters{grid-template-columns:1fr}
}
@media(max-width:650px){
  .admin-quick-grid,.runner-quick-grid{grid-template-columns:1fr}
  .user-metrics{grid-template-columns:1fr}
  .user-editor-panel{top:3vh;right:3vw;width:94vw;max-height:94vh;padding:18px}
}

/* ============================================================
   IDIOMAS, EXPERIENCIA MÓVIL, MAPA REGIONAL Y COMENTARIOS
   ============================================================ */
html.i18n-pending body{visibility:hidden}
.language-form{position:relative;display:inline-flex;align-items:center;gap:7px;margin:0}
.language-globe{width:25px;height:25px;display:grid;place-items:center;flex:0 0 25px;border-radius:50%;background:#E4F5EF;color:var(--ms-forest);font-size:12px;font-weight:900}
.language-options{display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(34px,1fr);gap:3px;padding:3px;border:1px solid #D6E0DC;border-radius:999px;background:#EEF4F1}
.language-option{min-width:34px;height:30px;display:grid;place-items:center;border-radius:999px;color:#5A6965;font-size:10px;font-weight:900;letter-spacing:.06em;transition:.16s}
.language-option:hover,.language-option:focus-visible{background:#DDF5ED;color:var(--ms-forest);outline:0}.language-option.active{background:var(--ms-forest);color:#fff;box-shadow:0 5px 13px rgba(5,45,41,.2)}
.language-form-compact{width:100%;margin:0 0 8px;padding:7px 9px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.06)}
.language-form-compact .language-globe{background:rgba(120,237,202,.15);color:var(--ms-mint-bright)}
.language-form-compact .language-options{width:100%;grid-template-columns:repeat(3,1fr);background:rgba(0,0,0,.13);border-color:rgba(255,255,255,.08)}.language-form-compact .language-option{color:rgba(255,255,255,.68)}.language-form-compact .language-option:hover{background:rgba(120,237,202,.15);color:#fff}.language-form-compact .language-option.active{background:var(--ms-mint-bright);color:var(--ms-forest-deep)}
.auth-language{display:flex;justify-content:flex-end;margin:0 0 14px}.auth-language .language-form{padding:4px 7px;border:1px solid var(--ms-line);border-radius:999px}

/* Teléfono con vista real de la plataforma. */
.home-mobile-showcase{position:relative;overflow:hidden;padding:100px 0 108px;background:#EFF8F4}
.home-mobile-showcase::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(7,61,55,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(7,61,55,.035) 1px,transparent 1px);background-size:44px 44px,44px 44px;pointer-events:none}
.mobile-showcase-grid{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(410px,1.08fr);align-items:center;gap:clamp(48px,7vw,100px)}
.mobile-showcase-copy h2,.regions-copy h2,.comments-section-head h2{margin:0;color:var(--ms-ink);font-size:clamp(42px,5.4vw,70px);font-weight:900;line-height:.94;letter-spacing:-.065em}
.mobile-showcase-copy>p:not(.ms-eyebrow){max-width:560px;margin:27px 0;color:var(--ms-ink-soft);font-size:15px;line-height:1.75}
.mobile-feature-list{display:grid;gap:0;margin:0 0 34px;border-top:1px solid #C9D8D2}
.mobile-feature-list>span{display:grid;grid-template-columns:42px minmax(0,1fr);padding:15px 0;border-bottom:1px solid #C9D8D2}
.mobile-feature-list i{grid-row:1/3;color:#0D8A75;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.12em}.mobile-feature-list b{font-size:13px}.mobile-feature-list small{margin-top:2px;color:#71807B;font-size:11px}
.mobile-showcase-scene{position:relative;isolation:isolate;min-height:630px;display:grid;place-items:center}
.mobile-phone{position:relative;z-index:2;width:282px;height:576px;padding:14px 10px 17px;border:4px solid #0C1917;border-radius:44px;background:#0C1917;box-shadow:0 42px 75px rgba(3,35,31,.3),inset 0 0 0 2px #34413E;animation:mobile-phone-float 5.2s ease-in-out infinite}
.mobile-phone::before,.mobile-phone::after{content:"";position:absolute;left:-7px;width:5px;border-radius:3px 0 0 3px;background:#0C1917}.mobile-phone::before{top:125px;height:72px}.mobile-phone::after{top:215px;height:48px}
.mobile-phone-speaker{position:absolute;z-index:4;top:9px;left:50%;width:86px;height:23px;border-radius:0 0 15px 15px;background:#0C1917;transform:translateX(-50%)}
.mobile-phone iframe{width:100%;height:100%;display:block;border:0;border-radius:32px;background:#F5FBF8;pointer-events:none}
.mobile-hand{position:absolute;z-index:4;right:20px;bottom:-38px;width:220px;height:auto;filter:drop-shadow(0 25px 22px rgba(60,35,25,.2));transform-origin:78% 100%;animation:mobile-hand-tap 3.8s ease-in-out infinite;pointer-events:none;user-select:none}
.mobile-tap-ripple{position:absolute;z-index:3;left:calc(50% + 84px);top:300px;width:28px;height:28px;border:2px solid var(--ms-coral);border-radius:50%;opacity:0;animation:mobile-tap-ripple 3.8s ease-out infinite}
@keyframes mobile-phone-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(.5deg)}}
@keyframes mobile-hand-tap{0%,28%,100%{transform:translate(15px,22px) rotate(-5deg)}45%,55%{transform:translate(-5px,-7px) rotate(-1.5deg)}72%{transform:translate(9px,11px) rotate(-3.5deg)}}
@keyframes mobile-tap-ripple{0%,42%{opacity:0;transform:scale(.3)}48%{opacity:.8}68%,100%{opacity:0;transform:scale(2.8)}}

/* Mapa de países configurados. */
.home-regions{overflow:hidden;padding:112px 0;background:var(--ms-forest-deep);color:#fff}
.regions-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);align-items:center;gap:clamp(40px,7vw,96px)}
.regional-map-shell{position:relative;min-height:650px;display:grid;place-items:center;border:1px solid rgba(191,247,231,.11);border-radius:32px;background:radial-gradient(circle at 45% 42%,rgba(120,237,202,.12),transparent 38%),rgba(255,255,255,.025)}
.regional-map-shell::before,.regional-map-shell::after{content:"";position:absolute;width:105px;height:105px;border-color:rgba(120,237,202,.24);border-style:solid;pointer-events:none}.regional-map-shell::before{top:26px;left:26px;border-width:1px 0 0 1px}.regional-map-shell::after{right:26px;bottom:26px;border-width:0 1px 1px 0}
.map-caption{position:absolute;top:28px;right:36px;color:rgba(255,255,255,.44);font-size:8px;font-weight:900;letter-spacing:.18em}.regional-map{width:min(100%,620px);height:auto;overflow:visible}
.regional-continent{pointer-events:none}.regional-pin{outline:none;cursor:pointer}.regional-pin-pulse{fill:rgba(255,104,77,.2);transform-box:fill-box;transform-origin:center;animation:regional-pin-pulse 2.8s ease-out infinite}.regional-pin-dot{fill:#FF684D;stroke:#fff;stroke-width:3}.regional-pin text{fill:#fff;font-size:13px;font-weight:900;paint-order:stroke;stroke:#052D29;stroke-width:4px;stroke-linejoin:round}.regional-pin .regional-pin-country{fill:#BFF7E7;font-size:8px;font-weight:700;letter-spacing:.04em}.regional-pin:focus .regional-pin-dot,.regional-pin:hover .regional-pin-dot{fill:#FFCF45}.regional-pin:nth-of-type(2n) .regional-pin-pulse{animation-delay:.7s}.regional-pin:nth-of-type(3n) .regional-pin-pulse{animation-delay:1.3s}
@keyframes regional-pin-pulse{0%{opacity:.9;transform:scale(.45)}75%,100%{opacity:0;transform:scale(1.6)}}
.regions-copy h2{color:#fff}.regions-copy>p:not(.ms-eyebrow){max-width:560px;margin:25px 0 28px;color:rgba(255,255,255,.68);font-size:14px;line-height:1.75}
.region-city-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.region-city-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.045);transition:.16s}.region-city-card:hover{border-color:rgba(120,237,202,.5);background:rgba(120,237,202,.1);transform:translateY(-2px)}
.region-flag{font-size:20px}.region-city-card b,.region-city-card small{display:block}.region-city-card b{font-size:12px}.region-city-card small{overflow:hidden;color:rgba(255,255,255,.5);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.region-city-card em{padding:4px 6px;border-radius:5px;background:var(--ms-mint-bright);color:var(--ms-forest-deep);font-size:8px;font-style:normal;font-weight:900}

/* Opiniones verificadas y moderación. */
.home-comments{padding:105px 0 115px;background:#FFFDF8}.comments-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:34px;margin-bottom:42px}.comments-section-head>div:first-child{max-width:790px}.comments-controls{display:flex;gap:8px}.comments-controls button{width:48px;height:48px;border:1px solid #C9D5D0;border-radius:50%;background:transparent;color:var(--ms-forest);font-size:18px;cursor:pointer;transition:.15s}.comments-controls button:hover{border-color:var(--ms-forest);background:var(--ms-forest);color:#fff}
.comments-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.comments-viewport::-webkit-scrollbar{display:none}.comments-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(335px,calc((100% - 40px)/3));gap:20px}
.comment-card{min-height:340px;display:flex;flex-direction:column;padding:31px;border:1px solid var(--ms-line);border-radius:18px;background:#fff;scroll-snap-align:start;box-shadow:0 15px 40px rgba(7,61,55,.055)}.comment-card:nth-child(3n+2){background:#E8FAF4}.comment-card:nth-child(3n){background:var(--ms-forest-deep);color:#fff}.comment-card-top{display:flex;align-items:center;justify-content:space-between}.comment-quote{color:var(--ms-coral);font-family:Georgia,serif;font-size:58px;line-height:.7}.comment-stars{color:#F1AC22;font-size:14px;letter-spacing:2px}.comment-stars span{color:#D8DFDC}.comment-card blockquote{flex:1;margin:35px 0 28px;font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1.48}.comment-card:nth-child(3n) blockquote{color:#fff}.comment-card footer{display:flex;align-items:center;gap:12px}.comment-avatar{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;border-radius:50%;background:var(--ms-mint-bright);color:var(--ms-forest-deep);font-size:11px;font-weight:900}.comment-card footer b,.comment-card footer small{display:block}.comment-card footer b{font-size:12px}.comment-card footer small{margin-top:2px;color:#7D8A86;font-size:9px}.comment-card:nth-child(3n) footer small{color:rgba(255,255,255,.48)}
.comments-empty{min-height:220px;display:flex;align-items:center;justify-content:center;gap:30px;padding:40px;border:1px dashed #BFCBC6;border-radius:18px;background:#F6FBF8}.comments-empty>span{color:var(--ms-coral);font-family:Georgia,serif;font-size:90px;line-height:.5}.comments-empty h3{font-size:24px}.comments-empty p{max-width:620px;margin-top:5px;color:var(--ms-ink-soft)}
.comment-submit-card{display:grid;grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);gap:46px;margin-top:28px;padding:34px;border-radius:20px;background:var(--ms-forest-deep);color:#fff}.comment-submit-mark{width:42px;height:42px;display:grid;place-items:center;margin-bottom:20px;border-radius:50%;background:var(--ms-coral);color:#fff}.comment-submit-card h3{font-size:25px;line-height:1.1}.comment-submit-card>div>p,.comment-login-prompt p{max-width:380px;margin-top:10px;color:rgba(255,255,255,.61);font-size:12px;line-height:1.6}
.comment-submit-card form{display:grid;gap:12px}.comment-submit-card label>span{display:block;margin-bottom:5px;color:rgba(255,255,255,.66);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.comment-submit-card .input,.comment-submit-card .select{border-color:rgba(255,255,255,.13);background:rgba(255,255,255,.08);color:#fff}.comment-submit-card .select option{color:var(--ms-ink)}.comment-submit-card .input::placeholder{color:rgba(255,255,255,.36)}.comment-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comment-submit-card textarea{resize:vertical}.comment-form-note{color:rgba(255,255,255,.45);font-size:9px}.comment-submit-card .btn{justify-self:start}.comment-login-prompt{align-self:center}.comment-login-prompt .btn{margin-top:18px}
.comment-avatar-photo{display:block;object-fit:cover;border:2px solid rgba(7,61,55,.08)}.comment-card:nth-child(3n) .comment-avatar-photo{border-color:rgba(255,255,255,.18)}
.comment-rating-field{min-width:0;margin:0;padding:0;border:0}.comment-rating-field legend{display:block;margin:0 0 8px;color:rgba(255,255,255,.66);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.star-rating-picker{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px;min-height:46px;align-items:center;padding:7px 12px;border:1px solid rgba(255,255,255,.13);border-radius:9px;background:rgba(255,255,255,.08)}.star-rating-picker input{position:absolute;opacity:0;pointer-events:none}.star-rating-picker label{margin:0!important;color:rgba(255,255,255,.23)!important;font-size:27px!important;line-height:1;letter-spacing:0!important;text-transform:none!important;cursor:pointer;transition:transform .14s,color .14s}.star-rating-picker label:hover,.star-rating-picker label:hover~label,.star-rating-picker input:checked~label{color:#F5B62E!important;transform:translateY(-1px)}.star-rating-picker input:focus-visible+label{outline:2px solid #fff;outline-offset:3px;border-radius:3px}.comment-photo-field small{display:block;margin-top:6px;color:rgba(255,255,255,.45);font-size:9px;line-height:1.45}.comment-photo-input{padding:8px!important}.comment-photo-input::file-selector-button{margin-right:10px;padding:8px 11px;border:0;border-radius:7px;background:#fff;color:var(--ms-forest-deep);font-weight:800;cursor:pointer}

.comment-moderation-state{align-self:center;display:flex;align-items:center;gap:14px;padding:20px;border:1px solid rgba(120,237,202,.28);border-radius:14px;background:rgba(120,237,202,.09)}.comment-moderation-state>span{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;border-radius:50%;background:var(--ms-yellow);color:var(--ms-ink);font-size:18px}.comment-moderation-state b{display:block;color:#fff;font-size:16px}.comment-moderation-state blockquote{margin:8px 0 0;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:14px;line-height:1.45}.comment-moderation-state p{margin:6px 0 0;color:rgba(255,255,255,.68);font-size:11px;line-height:1.55}.comment-form-status{padding:11px 13px;border-radius:9px;background:rgba(120,237,202,.13);color:var(--ms-mint-bright);font-size:11px;font-weight:700}.comment-form-status.rejected{background:rgba(255,104,77,.13);color:#FFC2B6}

.comments-admin-metrics{grid-template-columns:repeat(4,minmax(150px,1fr))}.comments-admin-filters{margin:0 0 18px}.admin-comment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.admin-comment-card{min-width:0;padding:22px;border:1px solid #DCE4E0;border-radius:17px;background:#fff;box-shadow:0 10px 30px rgba(7,61,55,.055)}.admin-comment-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-comment-card>.comment-stars{margin:17px 0 8px}.admin-comment-card>p{min-height:64px;color:#485652;font-size:13px;line-height:1.6}.admin-comment-meta{display:flex;justify-content:space-between;gap:12px;margin-top:16px;padding-top:13px;border-top:1px solid #E9EEEC;color:#7C8985;font-size:10px}.admin-comment-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.admin-comment-actions form{margin:0}.admin-comment-photo{display:flex;align-items:center;gap:12px;margin:12px 0;padding:10px;border:1px solid #E4EAE7;border-radius:12px;background:#F8FBFA;color:var(--ms-forest);text-decoration:none;font-size:10px;font-weight:900}.admin-comment-photo img{width:68px;height:68px;object-fit:cover;border-radius:10px}.admin-comment-photo:hover{border-color:#9DB8AE;background:#F1F8F5}

@media(max-width:1120px){
  .mobile-showcase-grid{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);gap:36px}.mobile-showcase-scene{transform:scale(.88)}
  .regions-grid{grid-template-columns:1fr 1fr;gap:35px}.regional-map-shell{min-height:570px}
  .comments-track{grid-auto-columns:minmax(330px,calc((100% - 20px)/2))}
}
@media(max-width:900px){
  .mobile-showcase-grid,.regions-grid,.comment-submit-card{grid-template-columns:1fr}.mobile-showcase-copy{max-width:720px}.mobile-showcase-scene{min-height:690px;transform:none}
  .home-regions{padding:80px 0}.regional-map-shell{order:2}.regions-copy{order:1}.admin-comment-list{grid-template-columns:1fr}
  .side-footer{display:block;margin:0;padding:0;border:0;flex:0 0 148px}.side-footer>a{display:none!important}.side-footer .language-form{display:flex;width:148px;margin:0 4px;flex:0 0 148px}
}
@media(max-width:700px){
  .home-mobile-showcase,.home-comments{padding:78px 0}.mobile-showcase-copy h2,.regions-copy h2,.comments-section-head h2{font-size:43px}.mobile-showcase-scene{min-height:580px;margin:0 -18px;transform:scale(.82)}
  .regional-map-shell{min-height:500px;margin:0 -8px}.region-city-list{grid-template-columns:1fr}.comments-section-head{align-items:flex-start;flex-direction:column}.comments-track{grid-auto-columns:88%}.comment-submit-card{gap:28px;padding:24px}.comments-admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .language-globe{display:none}.nav-right{gap:4px}
  .mobile-showcase-scene{min-height:500px;margin:-25px -55px -35px;transform:scale(.68)}.mobile-showcase-copy h2,.regions-copy h2,.comments-section-head h2{font-size:38px}.mobile-feature-list>span{grid-template-columns:34px 1fr}
  .regional-map-shell{min-height:410px;margin:0 -14px}.map-caption{right:20px}.comments-track{grid-auto-columns:94%}.comment-card{min-height:320px;padding:24px}.comments-empty{align-items:flex-start;gap:15px;padding:28px 20px}.comments-empty>span{font-size:60px}.comment-form-row{grid-template-columns:1fr}.comment-submit-card .btn{width:100%}.comments-admin-metrics{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .mobile-phone,.mobile-hand,.mobile-tap-ripple,.regional-pin-pulse{animation:none!important}.mobile-tap-ripple{display:none}.mobile-phone{transform:none}
}

/* ---------- LOGIN · FONDO DEPORTIVO ILUSTRADO ---------- */
.auth-visual{
  justify-content:center;
  background:
    url('../img/login-sports-background.svg') center/cover no-repeat,
    radial-gradient(circle at 48% 48%,rgba(36,224,204,.11),transparent 36%),
    linear-gradient(145deg,#0c7b74,#075552 58%,#073d3b);
}
.auth-visual::before{
  width:58%;height:58%;left:21%;top:21%;right:auto;bottom:auto;border:0;border-radius:50%;box-shadow:none;
  background:radial-gradient(circle,rgba(92,255,234,.09),transparent 67%);
  filter:blur(14px)
}
.auth-visual::after{
  width:88%;height:88%;left:6%;bottom:6%;border-radius:50%;
  background:radial-gradient(circle,transparent 52%,rgba(0,32,29,.16) 100%);
  filter:none
}
.auth-logo-animated{
  position:relative;z-index:1;width:min(84%,720px);
  filter:drop-shadow(0 24px 34px rgba(0,25,23,.28));
  transform:translateY(-1%);
}

@media(max-width:900px){
  .auth-logo-animated{width:min(76%,600px)}
}
@media(max-width:520px){
  .auth-logo-animated{width:min(94%,430px);transform:none}
}

/* ============================================================
   SELECTOR DE IDIOMA PREMIUM Y FOTO DE PERFIL
   ============================================================ */
.country-language-form{
  position:relative;isolation:isolate;width:224px;height:58px;display:grid;
  grid-template-columns:38px minmax(0,1fr) 22px;align-items:center;gap:10px;
  margin:0;padding:8px 11px;overflow:hidden;
  border:1px solid #D4E5DF;border-radius:15px;
  background:linear-gradient(135deg,#FFFFFF 0%,#F4FAF7 100%);
  box-shadow:0 8px 22px rgba(7,61,55,.08);transition:.2s
}
.country-language-form::before{
  content:"";position:absolute;inset:0 auto 0 0;width:3px;
  background:linear-gradient(var(--ms-mint-bright),var(--ms-teal))
}
.country-language-form:hover,.country-language-form:focus-within{
  border-color:#8DDCCA;box-shadow:0 10px 28px rgba(7,61,55,.14),0 0 0 3px rgba(120,237,202,.13);
  transform:translateY(-1px)
}
.country-language-icon{
  width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;
  color:var(--ms-forest);background:linear-gradient(145deg,#DDF8EE,#BDF2E2);
  border:1px solid rgba(7,61,55,.08);border-radius:12px
}
.country-language-icon svg,.country-language-chevron svg,.language-globe svg{
  width:18px;height:18px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round
}
.country-language-copy{min-width:0;display:grid;gap:1px;line-height:1.15}
.country-language-copy small{
  color:#789089;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase
}
.country-language-copy strong{
  min-width:0;display:flex;align-items:center;gap:5px;overflow:hidden;
  color:var(--ms-forest-deep);font-size:11px;font-weight:900;white-space:nowrap
}
.country-language-copy strong>span:first-child{font-size:15px;line-height:1}
.country-language-country{overflow:hidden;text-overflow:ellipsis}
.country-language-copy em{
  padding:3px 5px;color:var(--ms-forest-deep);background:var(--ms-mint-bright);
  border-radius:6px;font-size:8px;font-style:normal;letter-spacing:.05em
}
.country-language-chevron{display:grid;place-items:center;color:#527169;transition:transform .2s}
.country-language-chevron svg{width:17px;height:17px;stroke-width:2}
.country-language-form:focus-within .country-language-chevron{transform:rotate(180deg)}
.country-language-form select{
  position:absolute!important;z-index:5;inset:0!important;width:100%!important;height:100%!important;
  min-height:0!important;margin:0!important;padding:0!important;opacity:0;cursor:pointer
}
.country-language-form noscript{position:relative;z-index:6}

.has-user-photo{padding:0!important;overflow:hidden!important}
.has-user-photo>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.profile-photo-editor{
  display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:20px;
  margin:0 0 22px;padding:16px;border:1px solid #DCE9E4;border-radius:16px;
  background:linear-gradient(135deg,#F7FCFA,#EEF8F4)
}
.profile-photo-preview{display:grid;place-items:center}
.profile-photo-avatar{
  width:88px;height:88px;display:grid;place-items:center;overflow:hidden;
  color:var(--ms-forest-deep);background:linear-gradient(145deg,var(--ms-yellow),var(--ms-mint-bright));
  border:4px solid #fff;border-radius:24px;font-size:22px;font-weight:900;
  box-shadow:0 10px 24px rgba(7,61,55,.15)
}
.profile-photo-controls{min-width:0}
.profile-photo-controls>small{display:block;margin-top:7px;color:#748680;font-size:10px;line-height:1.45}
.profile-photo-input{
  width:100%;min-height:46px;padding:6px;border:1px solid #CFDED9;border-radius:10px;
  background:#fff;color:#4F625C;font:inherit;font-size:11px;cursor:pointer
}
.profile-photo-input::file-selector-button{
  min-height:32px;margin-right:10px;padding:0 12px;border:0;border-radius:7px;
  color:#fff;background:var(--ms-forest);font-weight:800;cursor:pointer
}
.profile-photo-input:hover::file-selector-button{background:#0A5A51}
.profile-photo-remove{
  display:flex;align-items:center;gap:7px;margin-top:10px;color:#7A4D48;
  font-size:10px;font-weight:800;cursor:pointer
}
.profile-photo-remove input{accent-color:var(--ms-coral)}
.profile-photo-editor-compact{grid-template-columns:72px minmax(0,1fr);gap:14px;padding:12px}
.profile-photo-editor-compact .profile-photo-avatar{width:66px;height:66px;border-radius:18px;font-size:17px}

@media(max-width:900px){
  .country-language-form{width:176px;height:50px;grid-template-columns:32px minmax(0,1fr) 18px;padding:6px 9px;border-radius:13px}
  .country-language-icon{width:32px;height:32px;flex-basis:32px;border-radius:10px}
  .country-language-copy small{display:none}
}
@media(max-width:560px){
  .country-language-form{width:108px;grid-template-columns:32px minmax(0,1fr) 16px;gap:6px}
  .country-language-country{display:none}
  .country-language-copy strong>span:first-child{font-size:13px}
  .profile-photo-editor{grid-template-columns:1fr;text-align:center}
  .profile-photo-controls>.label{text-align:left}.profile-photo-controls>small{text-align:left}
}

/* Selector público único, compacto y completamente rectangular. */
.country-language-form,
.country-language-icon,
.country-language-copy em,
.language-form,
.language-options,
.language-option,
.auth-language .language-form{border-radius:0!important}
.country-language-form{
  width:210px;height:52px;grid-template-columns:34px minmax(0,1fr) 18px;gap:9px;
  padding:7px 10px;border-color:#BFD7CF;background:#fff;box-shadow:0 5px 14px rgba(7,61,55,.07);
  transform:none!important
}
.country-language-form::before{width:4px}
.country-language-form:hover,.country-language-form:focus-within{
  border-color:#67CDB8;box-shadow:0 0 0 2px rgba(120,237,202,.18);transform:none
}
.country-language-icon{
  width:34px;height:34px;flex-basis:34px;color:var(--ms-forest-deep);background:#CFF4E7;
  font-size:9px;font-weight:900;letter-spacing:.05em
}
.country-language-copy small{font-size:8px}
.country-language-copy strong{font-size:11px}
.country-language-copy em{padding:3px 5px}
@media(max-width:900px){
  .country-language-form{width:164px;height:48px;grid-template-columns:31px minmax(0,1fr) 16px}
  .country-language-icon{width:31px;height:31px;flex-basis:31px}
}
@media(max-width:560px){
  .country-language-form{width:104px;grid-template-columns:31px minmax(0,1fr) 14px;gap:5px}
}

/* ============================================================
   V5 — IDIOMA COMPACTO, TOASTS Y FORMULARIO DE EXPERIENCIA
   ============================================================ */

/* Selector público: una sola bandera, nombre y lenguaje, sin etiquetas repetidas. */
.country-language-form{
  width:184px;height:46px;grid-template-columns:34px minmax(0,1fr) 16px;gap:9px;
  padding:5px 9px 5px 7px;overflow:hidden;border:1px solid #BFD4CD;border-radius:0!important;
  background:#FFFFFF;box-shadow:0 5px 16px rgba(7,61,55,.08);transform:none!important
}
.country-language-form::before{width:3px;background:var(--ms-coral)}
.country-language-form:hover,.country-language-form:focus-within{
  border-color:#5FBDAA;box-shadow:0 0 0 3px rgba(120,237,202,.18);transform:none!important
}
.country-language-flag{
  width:34px;height:34px;display:grid;place-items:center;overflow:hidden;
  color:var(--ms-forest-deep);background:#E7F7F1;border:1px solid #C9E5DB;border-radius:0;
  font-size:17px;line-height:1
}
.country-language-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:2px;line-height:1.05}
.country-language-copy strong{display:block;min-width:0;color:var(--ms-forest-deep);font-size:12px;font-weight:900}
.country-language-copy strong>span:first-child{font-size:12px;line-height:1.05}
.country-language-country{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.country-language-copy small{display:block!important;color:#71857F;font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:none}
.country-language-copy em,.country-language-icon{display:none!important}
.country-language-chevron{color:#416B62}
.country-language-chevron svg{width:15px;height:15px}
@media(max-width:900px){
  .country-language-form{width:154px;height:44px;grid-template-columns:32px minmax(0,1fr) 15px;padding:5px 8px 5px 6px}
  .country-language-flag{width:32px;height:32px;font-size:16px}
}
@media(max-width:560px){
  .country-language-form{width:124px;grid-template-columns:31px minmax(0,1fr) 14px;gap:7px}
  .country-language-flag{width:31px;height:31px}
  .country-language-copy strong{display:none}
  .country-language-copy small{font-size:8px;white-space:nowrap}
}

/* Notificaciones flotantes apiladas en la esquina superior izquierda. */
.ui-notification-stack{
  position:fixed;z-index:10050;top:20px;left:20px;width:min(410px,calc(100vw - 40px));
  max-height:calc(100vh - 40px);display:grid;gap:10px;overflow-y:auto;
  padding:0;pointer-events:none;scrollbar-width:thin
}
.ui-notification-stack.is-dashboard{left:274px;width:min(410px,calc(100vw - 298px))}
.alert.ui-notification{
  --toast-accent:#527169;--toast-soft:#EDF4F1;
  position:relative;width:100%;max-width:none;margin:0;padding:13px 11px 13px 13px;
  display:grid;grid-template-columns:38px minmax(0,1fr) 28px;align-items:start;gap:11px;overflow:hidden;
  color:#20342E;background:#FFFFFF;border:1px solid #D6E3DE;border-left:4px solid var(--toast-accent);
  border-radius:0;box-shadow:0 15px 38px rgba(3,33,29,.18);font-size:13px;font-weight:650;line-height:1.45;
  opacity:0;transform:translateX(-28px);pointer-events:auto;
  transition:opacity .24s ease,transform .24s ease
}
.alert.ui-notification-success{--toast-accent:#149A70;--toast-soft:#E8F8F1}
.alert.ui-notification-error{--toast-accent:#E25D50;--toast-soft:#FFF0EE}
.alert.ui-notification-info{--toast-accent:#438FD2;--toast-soft:#EBF5FF}
.alert.ui-notification-warning{--toast-accent:#D6A02B;--toast-soft:#FFF6DD}
.alert.ui-notification.is-visible{opacity:1;transform:translateX(0)}
.alert.ui-notification.is-leaving{opacity:0;transform:translateX(-30px);pointer-events:none}
.alert.ui-notification::after{
  content:"";position:absolute;right:0;bottom:0;left:0;height:3px;background:var(--toast-accent);
  transform:scaleX(1);transform-origin:left
}
.alert.ui-notification.is-visible::after{animation:notification-countdown var(--notification-duration,7000ms) linear forwards}
.alert.ui-notification.is-paused::after{animation-play-state:paused}
.ui-notification-icon{
  width:38px;height:38px;display:grid;place-items:center;color:var(--toast-accent);background:var(--toast-soft);
  border:1px solid color-mix(in srgb,var(--toast-accent) 35%,transparent);border-radius:0;
  font-size:15px;font-weight:950;line-height:1
}
.ui-notification-message{min-width:0;padding:2px 0 0;color:inherit;overflow-wrap:anywhere}
.ui-notification-message b,.ui-notification-message strong{color:inherit}
.ui-notification-close{
  width:28px;height:28px;display:grid;place-items:center;padding:0;color:#647872;background:transparent;
  border:0;border-radius:0;font:800 18px/1 "Times New Roman",Times,serif;cursor:pointer;opacity:.72
}
.ui-notification-close:hover,.ui-notification-close:focus-visible{
  color:#102E29;background:#EDF4F1;opacity:1;outline:2px solid var(--toast-accent);outline-offset:1px
}
@keyframes notification-countdown{to{transform:scaleX(0)}}
@media(max-width:900px){
  .ui-notification-stack.is-dashboard{left:20px;width:min(410px,calc(100vw - 40px))}
}
@media(max-width:520px){
  .ui-notification-stack,.ui-notification-stack.is-dashboard{top:12px;left:12px;width:calc(100vw - 24px);max-height:calc(100vh - 24px)}
  .alert.ui-notification{grid-template-columns:34px minmax(0,1fr) 26px;gap:9px;padding:11px 9px 12px 10px;font-size:12px}
  .ui-notification-icon{width:34px;height:34px}.ui-notification-close{width:26px;height:26px}
}
@media(prefers-reduced-motion:reduce){
  .alert.ui-notification{transition:none}.alert.ui-notification.is-visible::after{animation:none}
}
@media print{.ui-notification-stack{display:none!important}}

/* Formulario de comentarios: dos bloques reales, proporción estable y sin huecos. */
.comment-submit-card{
  position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  align-items:stretch;gap:24px;margin-top:34px;padding:24px;overflow:hidden;
  color:#fff;background:linear-gradient(125deg,#032B27 0%,#053D37 58%,#075249 100%);
  border:1px solid #27685E;border-radius:0;box-shadow:0 24px 55px rgba(4,31,29,.16)
}
.comment-submit-card::before{
  content:"";position:absolute;z-index:-1;inset:0;background-image:
  linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px
}
.comment-submit-intro{
  min-width:0;display:flex;flex-direction:column;justify-content:center;padding:28px 25px;
  background:rgba(2,28,25,.46);border-left:4px solid var(--ms-coral)
}
.comment-submit-mark{
  width:42px;height:42px;display:grid;place-items:center;margin:0 0 22px;
  color:#fff;background:var(--ms-coral);border-radius:0;box-shadow:8px 8px 0 rgba(120,237,202,.18)
}
.comment-submit-card h3{margin:0;color:#fff;font-size:28px;line-height:1.08;letter-spacing:-.035em}
.comment-submit-card .comment-submit-intro>p{
  max-width:330px;margin:13px 0 0;color:#B9D4CC;font-size:13px;line-height:1.7
}
.comment-submit-content{
  min-width:0;display:flex;flex-direction:column;justify-content:center;padding:23px;
  background:#0A423C;border:1px solid #2D6A60;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)
}
.comment-submit-card form.comment-experience-form{display:grid;gap:14px}
.comment-submit-card label>span,.comment-rating-field legend{
  margin-bottom:7px;color:#C7DDD7;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase
}
.comment-form-row{grid-template-columns:minmax(210px,.9fr) minmax(180px,1.1fr);gap:14px}
.comment-submit-card .input,.comment-submit-card .select{
  min-height:50px;border:1px solid #3A736A;border-radius:0;background:#103F3A;color:#FFFFFF;
  box-shadow:none
}
.comment-submit-card .input:focus,.comment-submit-card .select:focus{
  border-color:var(--ms-mint-bright);box-shadow:0 0 0 2px rgba(120,237,202,.14)
}
.comment-submit-card textarea.input{min-height:132px;padding:14px;resize:vertical;line-height:1.55}
.comment-submit-card .input::placeholder{color:#88AAA1}
.star-rating-picker{
  min-height:50px;padding:8px 12px;border:1px solid #3A736A;border-radius:0;background:#103F3A
}
.comment-photo-input{min-height:56px!important;padding:7px!important}
.comment-photo-input::file-selector-button{
  min-height:40px;margin-right:12px;padding:0 14px;border:0;border-radius:0;
  color:#052D29;background:var(--ms-mint-bright);font-weight:900;cursor:pointer
}
.comment-photo-field small,.comment-form-note{color:#9CBDB5;font-size:9px;line-height:1.5}
.comment-submit-card .btn{min-width:220px;justify-self:start;margin-top:2px;border-radius:0}
.comment-form-status{
  display:flex;align-items:center;min-height:42px;margin:0 0 14px;padding:10px 13px;
  color:#C8FFE9;background:#0D574B;border:1px solid #2B806E;border-left:4px solid var(--ms-mint-bright);border-radius:0;
  font-size:11px;font-weight:850
}
.comment-form-status.rejected{color:#FFD9D2;background:#5A2B25;border-color:#A95549;border-left-color:var(--ms-coral)}
.comment-moderation-state{
  align-self:stretch;padding:20px;border:1px solid #3B786E;border-left:4px solid var(--ms-yellow);
  border-radius:0;background:#103F3A
}
.comment-moderation-state>span{border-radius:0}
.comment-login-prompt{display:flex;min-height:210px;flex-direction:column;align-items:flex-start;justify-content:center;padding:12px}
.comment-login-prompt p{color:#BCD6CF;font-size:13px}
@media(max-width:900px){
  .comment-submit-card{grid-template-columns:1fr;gap:16px;padding:18px}
  .comment-submit-intro{padding:23px}.comment-submit-content{padding:21px}
}
@media(max-width:620px){
  .comment-submit-card{margin-right:-4px;margin-left:-4px;padding:12px}
  .comment-submit-intro,.comment-submit-content{padding:18px}
  .comment-form-row{grid-template-columns:1fr}
  .comment-submit-card .btn{width:100%;min-width:0}
}

/* ============================================================
   V6 — EVENTO, RUTA Y TEMA GLOBAL CLARO / NOCHE
   ============================================================ */

/* Control único de tema en la web pública y en pantallas sin cabecera. */
.public-theme-toggle,.global-theme-toggle{
  width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;padding:0;
  border:1px solid #BFD4CD;border-radius:0;background:#FFFFFF;color:var(--ms-forest-deep);
  box-shadow:0 5px 16px rgba(7,61,55,.08);font:800 20px/1 "Times New Roman",Times,serif;cursor:pointer;
  transition:border-color .16s,background .16s,color .16s,box-shadow .16s
}
.public-theme-toggle:hover,.public-theme-toggle:focus-visible,
.global-theme-toggle:hover,.global-theme-toggle:focus-visible{
  border-color:#5FBDAA;background:#E8F8F2;color:#075B51;outline:2px solid rgba(120,237,202,.32);outline-offset:2px
}
.global-theme-toggle{position:fixed;z-index:10020;top:18px;right:18px}
@media(max-width:900px){.public-theme-toggle{width:42px;height:42px;flex-basis:42px}}
@media(max-width:560px){.public-theme-toggle{width:40px;height:40px;flex-basis:40px}.global-theme-toggle{top:12px;right:12px}}
@media print{.public-theme-toggle,.global-theme-toggle{display:none!important}}

/* Portada del evento: el personaje conserva su diseño y ocupa el área visual principal. */
.event-detail-section{padding:68px 0 46px}
.event-detail-layout{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(300px,.9fr);align-items:start;gap:32px}
.event-detail-card{overflow:hidden}
.event-detail-cover{position:relative;min-height:0;aspect-ratio:16/9;padding:0;background-position:center;background-size:cover}
.event-detail-cover.has-guide{
  isolation:isolate;background:
  linear-gradient(rgba(7,61,55,.055) 1px,transparent 1px),
  linear-gradient(90deg,rgba(7,61,55,.055) 1px,transparent 1px),
  linear-gradient(130deg,#F5FBF9 0%,#D8F4EA 57%,#BDEAD9 100%);
  background-size:34px 34px,34px 34px,auto
}
.event-detail-cover.has-guide::before{
  content:"";position:absolute;z-index:0;inset:0;background:
  radial-gradient(circle at 50% 54%,rgba(255,255,255,.82),transparent 31%),
  linear-gradient(90deg,transparent 0 14%,rgba(7,61,55,.035) 14% 14.3%,transparent 14.3% 85%,rgba(7,61,55,.035) 85% 85.3%,transparent 85.3%)
}
.event-detail-cover.has-guide::after{
  content:"";position:absolute;z-index:0;right:-8%;bottom:-42%;width:58%;aspect-ratio:1;
  border:26px solid rgba(7,61,55,.08);border-radius:50%;box-shadow:0 0 0 42px rgba(7,61,55,.025)
}
.event-guide-mascot{
  position:absolute;z-index:2;bottom:-2%;left:50%;width:auto;height:108%;max-width:none;
  transform:translateX(-50%);filter:drop-shadow(0 24px 25px rgba(1,20,18,.34));object-fit:contain;object-position:center bottom
}
.event-registration-card{position:sticky;top:96px}

/* Ubicación y ruta: resumen útil a la izquierda, mapa limpio a la derecha. */
.event-route-section{padding:0 0 88px}
.event-route-card{overflow:hidden;border:1px solid #CBDAD5;border-radius:0;background:#FFFFFF;box-shadow:0 22px 54px rgba(6,45,40,.1)}
.event-route-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:30px 32px 28px;border-bottom:1px solid #D8E3DF}
.event-route-eyebrow{display:block;margin-bottom:9px;color:#0C8877;font-size:9px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.event-route-header h2{margin:0;color:var(--ms-forest-deep);font-size:34px;line-height:1;letter-spacing:-.045em}
.event-route-header p{margin:10px 0 0;color:#64756F;font-size:13px}
.event-route-layout{display:grid;grid-template-columns:minmax(300px,.74fr) minmax(0,1.65fr);min-height:472px}
.event-route-summary{display:flex;flex-direction:column;padding:30px;background:linear-gradient(145deg,#052D29,#07463F);color:#FFFFFF}
.event-route-place{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:16px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.13)}
.event-route-place-mark{width:58px;height:58px;display:grid;place-items:center;border:1px solid #79D8BF;border-radius:0;background:#0B5C51;color:#C8FFF0;font-size:9px;font-weight:950;letter-spacing:.1em}
.event-route-place small{display:block;margin:2px 0 7px;color:#8FC7B9;font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.event-route-place h3{margin:0;color:#FFFFFF;font-size:21px;line-height:1.15;letter-spacing:-.035em}
.event-route-place p{margin:8px 0 0;color:#B9D2CB;font-size:11px}
.event-route-facts{display:grid;grid-template-columns:1fr 1fr;margin:24px 0 0;border:1px solid rgba(255,255,255,.13)}
.event-route-facts>div{min-width:0;padding:14px}.event-route-facts>div+div{border-left:1px solid rgba(255,255,255,.13)}
.event-route-facts dt{color:#86B9AC;font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.event-route-facts dd{margin:5px 0 0;color:#FFFFFF;font-size:11px;font-weight:800;overflow-wrap:anywhere}
.event-route-actions{display:grid;gap:8px;margin-top:auto;padding-top:24px}
.event-route-action{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;column-gap:11px;min-height:58px;padding:8px 12px;border:1px solid rgba(191,247,231,.24);border-radius:0;background:rgba(255,255,255,.045);color:#FFFFFF;transition:.16s}
.event-route-action:hover,.event-route-action:focus-visible{border-color:var(--ms-mint-bright);background:#0B5A50;outline:0;transform:translateX(3px)}
.event-route-action>span{grid-row:1/3;width:42px;height:40px;display:grid;place-items:center;border:1px solid rgba(120,237,202,.3);border-radius:0;background:#0A5148;color:var(--ms-mint-bright);font-size:9px;font-weight:950}
.event-route-action>b{align-self:end;font-size:11px}.event-route-action>small{align-self:start;color:#8FC0B4;font-size:8px}
.event-map-panel{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);padding:18px;background:#F1F7F4}
.event-map-caption{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 4px 14px}
.event-map-caption b{color:var(--ms-forest-deep);font-size:12px}.event-map-caption span{color:#70807B;font-size:9px;text-align:right}
.event-map{width:100%;height:100%;min-height:390px;border:1px solid #B9CEC7;border-radius:0;background:#DCEBE6}

@media(max-width:900px){
  .event-detail-layout{grid-template-columns:1fr}.event-registration-card{position:static}
  .event-route-layout{grid-template-columns:1fr}.event-route-summary{min-height:420px}
  .event-route-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.event-route-action{grid-template-columns:1fr;text-align:center}.event-route-action>span{grid-row:auto;margin:0 auto}.event-route-action>small{display:none}
}
@media(max-width:650px){
  .event-detail-section{padding:34px 0}.event-detail-layout{gap:18px}.event-guide-mascot{height:112%}
  .event-route-section{padding-bottom:54px}.event-route-header{align-items:flex-start;flex-direction:column;padding:24px 20px}.event-route-header h2{font-size:29px}
  .event-route-summary{min-height:0;padding:22px 18px}.event-route-place{grid-template-columns:50px 1fr}.event-route-place-mark{width:50px;height:50px}
  .event-route-actions{grid-template-columns:1fr}.event-route-action{grid-template-columns:42px 1fr;text-align:left}.event-route-action>span{grid-row:1/3;margin:0}.event-route-action>small{display:block}
  .event-map-panel{padding:10px}.event-map-caption{align-items:flex-start;flex-direction:column;gap:4px;padding:6px 4px 12px}.event-map-caption span{text-align:left}.event-map{min-height:310px}
}

/* Paleta nocturna compartida por toda la aplicación pública y los accesos. */
html[data-ui-theme="dark"]{color-scheme:dark;--text:#F4FBF9;--text-secondary:#B6CCC6;--text-tertiary:#86A29A;--bg:#061E1C;--bg-secondary:#082522;--bg-tertiary:#0D312D;--border:#1D4B45;--border-strong:#285A53;--ms-paper:#061E1C;--ms-line:#25534C}
html[data-ui-theme="dark"] body{color:#F4FBF9;background:#061E1C}
html[data-ui-theme="dark"] .site-announcement{color:#D7FFF3;background:#0B4D45}
html[data-ui-theme="dark"] .site-announcement>span{color:#062C28;background:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .nav{border-bottom-color:#1D4B45;background:rgba(6,30,28,.96)}
html[data-ui-theme="dark"] .nav-links a,html[data-ui-theme="dark"] .nav-links a:hover,html[data-ui-theme="dark"] .nav-links a.active{color:#F4FBF9}
html[data-ui-theme="dark"] .nav-links.is-open{border-color:#25534C;background:#0A2926}
html[data-ui-theme="dark"] .country-language-form{border-color:#2A5B54;background:#0D312D;box-shadow:0 8px 18px rgba(0,0,0,.19)}
html[data-ui-theme="dark"] .country-language-flag{color:#E1FFF6;background:#123F3A;border-color:#2C625A}
html[data-ui-theme="dark"] .country-language-copy strong{color:#F4FBF9}
html[data-ui-theme="dark"] .country-language-copy small,html[data-ui-theme="dark"] .country-language-chevron{color:#A5C3BB}
html[data-ui-theme="dark"] .public-theme-toggle,html[data-ui-theme="dark"] .global-theme-toggle{color:var(--ms-mint-bright);background:#0D312D;border-color:#2A5B54;box-shadow:0 8px 18px rgba(0,0,0,.2)}
html[data-ui-theme="dark"] .public-theme-toggle:hover,html[data-ui-theme="dark"] .public-theme-toggle:focus-visible,html[data-ui-theme="dark"] .global-theme-toggle:hover,html[data-ui-theme="dark"] .global-theme-toggle:focus-visible{color:#062C28;background:var(--ms-mint-bright);border-color:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .menu-toggle{color:#F4FBF9;border-color:#2A5B54;background:#0D312D}
html[data-ui-theme="dark"] .card,html[data-ui-theme="dark"] .event-card,html[data-ui-theme="dark"] .table-wrap,html[data-ui-theme="dark"] .auth-form,html[data-ui-theme="dark"] .help-chat-panel{color:#F4FBF9;background:#0D312D;border-color:#25534C}
html[data-ui-theme="dark"] .section h1,html[data-ui-theme="dark"] .section h2,html[data-ui-theme="dark"] .section h3,html[data-ui-theme="dark"] .card h1,html[data-ui-theme="dark"] .card h2,html[data-ui-theme="dark"] .card h3{color:#F4FBF9!important}
html[data-ui-theme="dark"] .muted,html[data-ui-theme="dark"] .field-hint,html[data-ui-theme="dark"] .event-meta,html[data-ui-theme="dark"] .home-section-head>p{color:#A9C3BC!important}
html[data-ui-theme="dark"] .label{color:#E1EFEB}
html[data-ui-theme="dark"] .input,html[data-ui-theme="dark"] .select,html[data-ui-theme="dark"] textarea.input{color:#F4FBF9;background:#082522;border-color:#2A5B54}
html[data-ui-theme="dark"] .input::placeholder,html[data-ui-theme="dark"] textarea.input::placeholder{color:#7F9C94}
html[data-ui-theme="dark"] .select option{color:#F4FBF9;background:#082522}
html[data-ui-theme="dark"] .btn-primary,html[data-ui-theme="dark"] .btn-dark{color:#062C28;background:var(--ms-mint-bright);border-color:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .btn-primary:hover,html[data-ui-theme="dark"] .btn-dark:hover{color:#062C28;background:#A9F5DF;border-color:#A9F5DF}
html[data-ui-theme="dark"] .btn-ghost{color:#E8F5F1;border-color:#2B5B54;background:#103A36}
html[data-ui-theme="dark"] .btn-ghost:hover{color:#062C28;background:var(--ms-mint-bright);border-color:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .badge-gray,html[data-ui-theme="dark"] .chip{color:#D8E9E4;background:#123B37;border-color:#285A53}
html[data-ui-theme="dark"] .event-detail-card h1{color:#FFFFFF!important}
html[data-ui-theme="dark"] .event-registration-card>div:nth-child(2){color:var(--ms-mint-bright)!important}
html[data-ui-theme="dark"] .event-registration-card [style*="border-bottom"]{border-bottom-color:#285A53!important}
html[data-ui-theme="dark"] .event-detail-cover.has-guide{background:linear-gradient(rgba(120,237,202,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(120,237,202,.055) 1px,transparent 1px),linear-gradient(130deg,#041E1B 0%,#074D45 57%,#0A6E61 100%);background-size:34px 34px,34px 34px,auto}
html[data-ui-theme="dark"] .event-detail-cover.has-guide::before{background:radial-gradient(circle at 50% 54%,rgba(120,237,202,.32),transparent 31%),linear-gradient(90deg,transparent 0 14%,rgba(255,255,255,.025) 14% 14.3%,transparent 14.3% 85%,rgba(255,255,255,.025) 85% 85.3%,transparent 85.3%)}
html[data-ui-theme="dark"] .event-detail-cover.has-guide::after{border-color:rgba(191,247,231,.1);box-shadow:0 0 0 42px rgba(191,247,231,.035)}
html[data-ui-theme="dark"] .event-card{box-shadow:0 15px 34px rgba(0,0,0,.14)}
html[data-ui-theme="dark"] .event-title,html[data-ui-theme="dark"] .event-price,html[data-ui-theme="dark"] .event-meta .event-date{color:#F4FBF9}
html[data-ui-theme="dark"] .event-foot{border-color:#25534C}
html[data-ui-theme="dark"] .event-arrow{color:#062C28;background:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .explore-content,html[data-ui-theme="dark"] .home-events,html[data-ui-theme="dark"] .home-categories,html[data-ui-theme="dark"] .home-how,html[data-ui-theme="dark"] .home-comments,html[data-ui-theme="dark"] .home-mobile-showcase{background:#061E1C}

/* ============================================================
   DOCUMENTOS CORPORATIVOS Y LEGALES
   ============================================================ */
.legal-page{background:#F3F8F5;color:var(--ms-ink)}
.legal-hero{position:relative;overflow:hidden;padding:78px 0 82px;background:var(--ms-forest-deep);color:#FFFFFF}
.legal-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px,42px 42px;pointer-events:none}
.legal-hero-inner{position:relative;max-width:980px}
.legal-hero h1{max-width:900px;margin:0;color:#FFFFFF;font-size:clamp(46px,6vw,76px);font-weight:900;line-height:.94;letter-spacing:-.065em}
.legal-hero-inner>p:last-child{max-width:810px;margin:23px 0 0;color:#C5D9D3;font-size:14px;line-height:1.75}
.legal-content-section{padding:64px 0 92px}
.legal-document{max-width:1080px;display:grid;gap:16px}
.legal-intro-card,.legal-update-note,.legal-section-card,.legal-company-note,.about-founder{border:1px solid #CFDDD8;border-radius:0;background:#FFFFFF;box-shadow:0 12px 32px rgba(7,61,55,.055)}
.legal-intro-card{padding:38px 40px;border-left:6px solid var(--ms-coral)}
.legal-intro-card>span,.legal-section-heading small,.about-founder small{display:block;margin-bottom:9px;color:#0C8877;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.legal-intro-card h2,.legal-section-heading h2{margin:0;color:var(--ms-forest-deep);font-size:34px;letter-spacing:-.045em}
.legal-intro-card p{margin:14px 0 0;color:#53645F;font-size:14px;line-height:1.8}
.legal-update-note{padding:22px 25px;border-left:6px solid var(--ms-mint-bright);background:#E7F8F2}
.legal-update-note b{display:block;color:var(--ms-forest-deep);font-size:14px}.legal-update-note p{margin:7px 0 0;color:#46625B;font-size:12px;line-height:1.7}
.legal-section-card{padding:30px 32px}
.legal-section-card h2{margin:0 0 13px;color:var(--ms-forest-deep);font-size:22px;line-height:1.18;letter-spacing:-.035em}
.legal-section-card h3{margin:0 0 10px;color:var(--ms-forest-deep);font-size:17px}
.legal-section-card>small{display:block;margin-bottom:10px;color:#0C8877;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.legal-section-card p{margin:0;color:#53645F;font-size:13px;line-height:1.78}.legal-section-card p+p{margin-top:12px}
.legal-section-card ul{display:grid;gap:8px;margin:12px 0 0;padding-left:20px;color:#53645F;font-size:13px;line-height:1.65}
.legal-section-card a{color:#087565;text-decoration:underline;text-underline-offset:3px}
.legal-table-wrap{overflow-x:auto;margin-top:20px;border:1px solid #D6E2DD}
.legal-table{width:100%;border-collapse:collapse;background:#FFFFFF;font-size:12px;line-height:1.55}
.legal-table th{padding:13px 15px;background:#0B443E;color:#FFFFFF;text-align:left}.legal-table td{padding:13px 15px;border-top:1px solid #DFE7E3;color:#4D605A;vertical-align:top}.legal-table td:first-child{min-width:190px;color:var(--ms-forest-deep);font-weight:800}
.legal-definitions{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:18px 0 0;border:1px solid #D8E3DF}
.legal-definitions>div{padding:15px 17px;border-right:1px solid #D8E3DF;border-bottom:1px solid #D8E3DF}.legal-definitions>div:nth-child(2n){border-right:0}.legal-definitions dt{color:var(--ms-forest-deep);font-size:12px;font-weight:900}.legal-definitions dd{margin:5px 0 0;color:#65746F;font-size:11px;line-height:1.55}
.legal-payment-models{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.legal-payment-models>div{padding:20px;border:1px solid #CFE0DA;background:#F2FAF7}.legal-payment-models b{display:block;color:var(--ms-forest-deep);font-size:13px}.legal-payment-models p{margin-top:8px}
.about-origin-grid,.about-values-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.about-wide-card blockquote{margin:24px 0 0;padding:22px 25px;border-left:5px solid var(--ms-coral);background:#F3FAF7;color:var(--ms-forest-deep);font-size:19px;font-weight:800;line-height:1.5}
.about-founder{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:38px;padding:36px;background:var(--ms-forest-deep);color:#FFFFFF}
.about-founder h2{margin:0;color:#FFFFFF;font-size:38px;letter-spacing:-.05em}.about-founder strong{display:block;margin-top:5px;color:var(--ms-mint-bright);font-size:13px}.about-founder p{margin:20px 0 0;color:#C4D7D2;font-size:13px;line-height:1.75}
.about-tags{display:grid;align-content:start;gap:7px;margin:0;padding:0;list-style:none}.about-tags li{padding:10px 12px;border:1px solid #2E625A;background:#0B3C37;color:#E9FAF5;font-size:11px;font-weight:800}
.legal-section-heading{padding:28px 0 4px}
.legal-company-note{padding:24px 27px;border-left:6px solid var(--ms-mint-bright);background:#0B443E;color:#FFFFFF}.legal-company-note b{font-size:15px}.legal-company-note p{margin:7px 0 0;color:#C8DDD7;font-size:12px;line-height:1.65}

html[data-ui-theme="dark"] .legal-page{background:#061E1C;color:#F4FBF9}
html[data-ui-theme="dark"] .legal-intro-card,html[data-ui-theme="dark"] .legal-section-card,html[data-ui-theme="dark"] .legal-update-note{border-color:#285A53;background:#0D312D;box-shadow:0 12px 30px rgba(0,0,0,.2)}
html[data-ui-theme="dark"] .legal-intro-card h2,html[data-ui-theme="dark"] .legal-section-card h2,html[data-ui-theme="dark"] .legal-section-card h3,html[data-ui-theme="dark"] .legal-table td:first-child,html[data-ui-theme="dark"] .legal-definitions dt,html[data-ui-theme="dark"] .legal-payment-models b{color:#F4FBF9}
html[data-ui-theme="dark"] .legal-intro-card p,html[data-ui-theme="dark"] .legal-section-card p,html[data-ui-theme="dark"] .legal-section-card ul,html[data-ui-theme="dark"] .legal-update-note p,html[data-ui-theme="dark"] .legal-definitions dd{color:#AFC8C1}
html[data-ui-theme="dark"] .legal-update-note{background:#103D37}html[data-ui-theme="dark"] .legal-update-note b{color:#DFFFF6}
html[data-ui-theme="dark"] .legal-table-wrap,html[data-ui-theme="dark"] .legal-definitions{border-color:#285A53}html[data-ui-theme="dark"] .legal-table{background:#0D312D}html[data-ui-theme="dark"] .legal-table th{background:#123F3A}html[data-ui-theme="dark"] .legal-table td{border-color:#285A53;color:#AFC8C1}
html[data-ui-theme="dark"] .legal-definitions>div{border-color:#285A53}
html[data-ui-theme="dark"] .legal-payment-models>div,html[data-ui-theme="dark"] .about-wide-card blockquote{border-color:#285A53;background:#123F3A;color:#E8FAF5}

@media(max-width:760px){.legal-hero{padding:58px 0 62px}.legal-content-section{padding:38px 0 70px}.legal-intro-card,.legal-section-card,.about-founder{padding:23px 21px}.about-origin-grid,.about-values-grid,.about-founder,.legal-payment-models,.legal-definitions{grid-template-columns:1fr}.legal-definitions>div{border-right:0}.legal-hero h1{font-size:43px}.legal-intro-card h2{font-size:28px}.about-founder h2{font-size:32px}}
html[data-ui-theme="dark"] .home-search,html[data-ui-theme="dark"] .explore-search{color:#F4FBF9;background:#0D312D;border:1px solid #25534C}
html[data-ui-theme="dark"] .home-search input,html[data-ui-theme="dark"] .explore-search input{color:#F4FBF9}
html[data-ui-theme="dark"] .home-search-place{border-color:#25534C}
html[data-ui-theme="dark"] .home-category{color:#B9CEC8;border-color:#25534C;background:#0B2C29}
html[data-ui-theme="dark"] .home-category>span,html[data-ui-theme="dark"] .step-mark{color:var(--ms-mint-bright);background:#123F3A}
html[data-ui-theme="dark"] .home-steps{border-color:#25534C}
html[data-ui-theme="dark"] .home-steps article{border-color:#25534C}
html[data-ui-theme="dark"] .home-steps p,html[data-ui-theme="dark"] .home-empty p{color:#A9C3BC}
html[data-ui-theme="dark"] .home-proof{color:#F4FBF9;background:#0B2C29;border-color:#25534C}
html[data-ui-theme="dark"] .home-proof>p{color:#9EB8B1}
html[data-ui-theme="dark"] .home-proof>div{color:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .mobile-showcase-copy h2,html[data-ui-theme="dark"] .comments-section-head h2{color:#F4FBF9}
html[data-ui-theme="dark"] .mobile-showcase-copy>p:not(.ms-eyebrow),html[data-ui-theme="dark"] .mobile-feature-list small{color:#A9C3BC}
html[data-ui-theme="dark"] .mobile-feature-list,html[data-ui-theme="dark"] .mobile-feature-list>span{border-color:#285A53}
html[data-ui-theme="dark"] .comments-controls button{color:var(--ms-mint-bright);border-color:#35665E}
html[data-ui-theme="dark"] .comments-controls button:hover{color:#062C28;background:var(--ms-mint-bright);border-color:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .home-comments .comment-card{color:#F4FBF9;background:#0D312D;border-color:#25534C}
html[data-ui-theme="dark"] .home-comments .comment-card:nth-child(3n+2){background:#123B37}
html[data-ui-theme="dark"] .home-comments .comment-card footer small{color:#A7C0B9}
html[data-ui-theme="dark"] .home-empty{border-color:#35665E}
html[data-ui-theme="dark"] .comments-empty{color:#F4FBF9;background:#0D312D;border-color:#35665E}
html[data-ui-theme="dark"] .comments-empty p{color:#A9C3BC}
html[data-ui-theme="dark"] .auth-form-inner h2{color:#F4FBF9!important}
html[data-ui-theme="dark"] .auth-language .language-form{color:#F4FBF9;background:#0D312D;border-color:#285A53}
html[data-ui-theme="dark"] .auth-language .language-options{background:#082522;border-color:#285A53}
html[data-ui-theme="dark"] .auth-language .language-option{color:#B6CCC6}
html[data-ui-theme="dark"] .auth-language .language-option.active{color:#062C28;background:var(--ms-mint-bright)}
html[data-ui-theme="dark"] .metric,html[data-ui-theme="dark"] .quick-card,html[data-ui-theme="dark"] .form-card,html[data-ui-theme="dark"] .payment-form-card,html[data-ui-theme="dark"] .user-editor-panel{color:#F4FBF9;background:#0D312D;border-color:#285A53}
html[data-ui-theme="dark"] .tbl th{color:#C5DCD5;background:#123B37;border-color:#285A53}
html[data-ui-theme="dark"] .tbl td{color:#F4FBF9;border-color:#25534C}
html[data-ui-theme="dark"] .tbl tr:hover td{background:#123B37}
html[data-ui-theme="dark"] .help-chat-body{background:#0D312D}
html[data-ui-theme="dark"] .help-chat-body p{color:#C4D9D3;background:#123B37}
html[data-ui-theme="dark"] .help-chat-body button,html[data-ui-theme="dark"] .help-chat-body a{color:#EDF8F5;background:#082522;border-color:#285A53}
html[data-ui-theme="dark"] .alert.ui-notification{color:#EAF6F2;background:#0D312D;border-color:#285A53;border-left-color:var(--toast-accent);box-shadow:0 16px 42px rgba(0,0,0,.35)}
html[data-ui-theme="dark"] .ui-notification-close{color:#B6CCC6}
html[data-ui-theme="dark"] .ui-notification-close:hover,html[data-ui-theme="dark"] .ui-notification-close:focus-visible{color:#FFFFFF;background:#16463F}
html[data-ui-theme="dark"] .event-route-card{border-color:#285A53;background:#0B2C29;box-shadow:0 22px 54px rgba(0,0,0,.22)}
html[data-ui-theme="dark"] .event-route-header{border-color:#285A53;background:#0D312D}
html[data-ui-theme="dark"] .event-route-header h2{color:#FFFFFF}
html[data-ui-theme="dark"] .event-route-header p{color:#A9C3BC}
html[data-ui-theme="dark"] .event-map-panel{background:#082522}
html[data-ui-theme="dark"] .event-map-caption b{color:#F4FBF9}
html[data-ui-theme="dark"] .event-map-caption span{color:#9AB7AF}
html[data-ui-theme="dark"] .event-map{border-color:#35665E;background:#0D312D}

/* Tipografía solicitada: la misma serif clásica en cada pantalla y control. */
:root{--ms-global-typeface:"Times New Roman",Times,serif}
html,body,body *,button,input,select,textarea,table,option{
  font-family:var(--ms-global-typeface)!important
}

/* Preferencias públicas sencillas: solo código local, flecha y tema. */
.public-preferences{
  height:42px;display:flex;align-items:stretch;gap:8px;padding:0;
  border:0;background:transparent;box-shadow:none
}
.public-preferences .country-language-form{
  width:104px;height:42px;display:grid;grid-template-columns:minmax(0,1fr) 15px;gap:8px;
  padding:0 11px;border:1px solid #BCD0C9!important;background:#FFFFFF;box-shadow:none!important
}
.public-preferences .country-language-form::before,
.public-preferences .country-language-flag,
.public-preferences .country-language-copy{display:none!important}
.country-language-simple-value{
  min-width:0;align-self:center;color:#173E37;font-size:12px;font-weight:900;
  letter-spacing:.04em;white-space:nowrap
}
.public-preferences .country-language-chevron{color:#456D65}
.public-preferences .country-language-form:hover,
.public-preferences .country-language-form:focus-within{
  border-color:#4FAF9D!important;background:#F4FAF8;outline:1px solid #82D7C5;outline-offset:0
}
.public-preferences .public-theme-toggle{
  width:42px;height:42px;flex-basis:42px;border:1px solid #BCD0C9;
  background:#FFFFFF;color:#0B5B50;box-shadow:none
}
.public-preferences .public-theme-toggle:hover,
.public-preferences .public-theme-toggle:focus-visible{
  color:#052D29;background:#DDF7EF;border-color:#4FAF9D;outline:1px solid #82D7C5;outline-offset:0
}
html[data-ui-theme="dark"] .public-preferences .country-language-form,
html[data-ui-theme="dark"] .public-preferences .public-theme-toggle{
  color:#F2FBF8;background:#0D312D;border-color:#35665E!important
}
html[data-ui-theme="dark"] .country-language-simple-value{color:#F2FBF8}
html[data-ui-theme="dark"] .public-preferences .country-language-chevron{color:#9CD4C6}
@media(max-width:560px){
  .public-preferences{gap:5px}
  .public-preferences .country-language-form{width:92px;padding:0 9px}
}

/* Acceso flotante a soporte: un solo signo, sin texto ni forma ovalada. */
.help-chat-toggle{
  width:48px;min-width:48px;height:48px;padding:0;border-radius:0;
  font-size:25px;font-weight:900;line-height:1
}

/* ============================================================
   MATCH SPORT · UI de referencia turquesa (integración 2026-08)
   Diseños: landing, categorías, pricing, compra, wizard y admin.
   ============================================================ */
:root{--ms-global-typeface:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,Arial,sans-serif}
html,body,button,input,select,textarea{font-family:var(--ms-global-typeface)!important}

/* Landing similar a la referencia entregada */
.reference-hero{position:relative;overflow:hidden;padding:64px 0 58px;background:linear-gradient(135deg,#fff 0%,#F3FFFE 54%,#ECFEFD 100%);border-bottom:1px solid #DFF5F2}
.reference-hero-blob{position:absolute;border-radius:50%;pointer-events:none}.reference-hero-blob.blob-a{width:360px;height:360px;left:-130px;top:-135px;background:#F59E0B;opacity:.17}.reference-hero-blob.blob-b{width:310px;height:310px;right:-110px;top:95px;background:#17BDB5;opacity:.12}
.reference-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center;min-height:430px}.reference-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 17px;border:1px solid #A5F3EF;border-radius:999px;background:#fff;color:#277C76;font-size:14px;font-weight:700;box-shadow:0 4px 18px rgba(11,139,132,.08)}.reference-badge i{width:8px;height:8px;border-radius:50%;background:#E9A936}
.reference-hero-copy h1{margin:25px 0 18px;font-size:55px;line-height:1.08;letter-spacing:-2.2px;color:#1F2321;font-weight:850}.reference-hero-copy h1 em{font-style:normal;color:#3E9690;font-family:inherit;font-weight:850}.reference-hero-copy>p{max-width:620px;color:#5F6B67;font-size:18px;line-height:1.62}.reference-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.reference-hero-actions .btn-primary{background:#3D9891}.reference-hero-actions .btn-primary:hover{background:#0B8B84}.play-dot{color:#DCA337;font-size:18px}.reference-hero-stats{display:flex;gap:22px;align-items:center;margin-top:28px}.reference-hero-stats span{display:flex;flex-direction:column}.reference-hero-stats b{font-size:24px;color:#1F2321}.reference-hero-stats small{font-size:12px;color:#75807C}.reference-hero-stats>i{width:1px;height:34px;background:#D5DEDB}
.reference-sport-mosaic{position:relative;min-height:405px}.reference-sport-card{position:absolute;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:17px;border-radius:22px;background:linear-gradient(155deg,#6FAEAA,#236B66);color:#fff;background-size:cover;background-position:center;box-shadow:0 20px 52px rgba(11,81,77,.22);transition:.2s}.reference-sport-card:hover{transform:translateY(-4px) rotate(0deg)!important}.reference-sport-card span{align-self:flex-start;margin-bottom:auto;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.88);color:#B16C22;font-size:10px;font-weight:900;letter-spacing:.7px}.reference-sport-card b{font-size:16px;line-height:1.18;text-shadow:0 2px 10px rgba(0,0,0,.35)}.reference-sport-card.card-1{left:12px;top:8px;width:205px;height:288px;transform:rotate(-3deg);z-index:2}.reference-sport-card.card-2{right:0;top:45px;width:205px;height:272px;transform:rotate(4deg);z-index:3}.reference-sport-card.card-3{left:116px;bottom:0;width:220px;height:235px;transform:rotate(-1deg);z-index:4}.reference-sport-card.card-3 span{color:#3F837D}.reference-floating-sport{position:absolute;z-index:6;width:55px;height:55px;display:grid;place-items:center;border-radius:50%;background:#fff;border:3px solid #E9A936;color:#B7751F;font-weight:900;box-shadow:0 10px 24px rgba(217,119,6,.25)}.sport-bike{right:225px;top:18px}.sport-swim{right:48px;bottom:45px;border-color:#75D7D0;color:#0B8B84}
.reference-categories-section{padding:70px 0;background:#fff}.reference-section-heading{text-align:center;margin-bottom:32px}.reference-section-heading h2{font-size:36px;letter-spacing:-1px;color:#1F2321}.reference-section-heading p{margin-top:7px;color:#6A7470}.reference-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.reference-category-card{position:relative;min-height:180px;padding:20px;border:1px solid #D6DDDA;border-radius:15px;background:#fff;overflow:hidden;transition:.18s}.reference-category-card:after{content:"";position:absolute;right:-20px;top:-20px;width:72px;height:72px;border-radius:50%;background:#0B8B84;opacity:.07}.reference-category-card:nth-child(even):after{background:#F59E0B}.reference-category-card:hover{transform:translateY(-3px);border-color:#79DCD6;box-shadow:0 12px 32px rgba(11,139,132,.1)}.reference-category-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:11px;margin-bottom:16px;background:#D0FAF7;color:#188C85;font-size:18px;font-weight:900}.reference-category-icon.amber{background:#FEF3C7;color:#C16F11}.reference-category-card h3{font-size:16px;margin-bottom:4px}.reference-category-card p{font-size:12px;color:#68716E;min-height:38px}.reference-category-card small{display:block;margin-top:12px;color:#3A918A;font-weight:800}.reference-category-card.create-yours{background:linear-gradient(145deg,#3D9992,#176C66);color:#fff;border:none}.reference-category-card.create-yours:after{background:#fff;opacity:.08}.reference-category-card.create-yours .reference-category-icon{background:rgba(255,255,255,.15);color:#fff}.reference-category-card.create-yours p,.reference-category-card.create-yours small{color:rgba(255,255,255,.86)}
.reference-pricing-section{padding:72px 0;background:#F2FEFD}.reference-pricing-grid{max-width:1050px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.reference-price-card{position:relative;display:flex;flex-direction:column;padding:30px 26px;border:1px solid #D9E1DE;border-radius:17px;background:#fff}.reference-price-card>span{color:#626C68;font-size:13px;font-weight:700}.reference-price-card>strong{margin:10px 0 2px;color:#3D9992;font-size:40px;line-height:1}.reference-price-card>strong.price-text{font-size:31px}.reference-price-card>p{color:#676F6D;font-size:13px}.reference-price-card ul{list-style:none;display:flex;flex-direction:column;gap:12px;margin:28px 0}.reference-price-card li{font-size:14px}.reference-price-card li.disabled{color:#A8AEAC}.reference-price-card .btn{margin-top:auto}.reference-price-card.featured{background:linear-gradient(155deg,#419B94,#16675F);color:#fff;border:none;box-shadow:0 20px 44px rgba(8,81,77,.20);transform:scale(1.025)}.reference-price-card.featured>i{position:absolute;top:-11px;left:50%;transform:translateX(-50%);padding:5px 14px;border-radius:999px;background:#F5A43B;color:#fff;font-size:10px;font-style:normal;font-weight:900;letter-spacing:.7px}.reference-price-card.featured>span,.reference-price-card.featured>p{color:rgba(255,255,255,.86)}.reference-price-card.featured>strong{color:#fff}.reference-price-card.featured .btn-amber{background:#FAA13B;color:#fff;box-shadow:none}

/* Detalle + selector de tickets */
.event-reference-hero{padding:34px 0 24px;background:#fff}.event-reference-cover{height:330px;border-radius:18px;background:linear-gradient(135deg,#0B8B84,#063734);background-size:cover;background-position:center;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}.event-reference-cover.has-guide img{height:90%;width:auto;object-fit:contain}.event-reference-info{padding:24px 4px 0}.event-reference-info h1{max-width:900px;font-size:34px;line-height:1.15;color:#1F2321}.event-reference-org{margin-top:8px;color:#69736F}.event-reference-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:16px;color:#4E5A56;font-size:14px}.event-reference-description{max-width:900px;margin-top:18px;color:#5F6B67;line-height:1.65}
.ticket-shop-section{padding:28px 0 55px;background:#F2FEFD;border-top:1px solid #DFF5F2}.ticket-shop-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}.ticket-selector-card,.ticket-action-card,.ticket-share-card{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:16px;box-shadow:0 8px 28px rgba(11,139,132,.06)}.ticket-selector-card{padding:28px}.ticket-selector-head{display:flex;justify-content:space-between;gap:20px;align-items:start;padding-bottom:18px}.ticket-selector-head h2{font-size:21px}.ticket-selector-head p{margin-top:4px;color:#7A8380;font-size:12px}.ticket-currency{padding:8px 12px;border:1px solid #D9DFDD;border-radius:9px;color:#6E7774;font-size:12px}.ticket-table-head,.ticket-row{display:grid;grid-template-columns:1.45fr .9fr .85fr .9fr 62px;gap:12px;align-items:center}.ticket-table-head{padding:10px 4px;border-bottom:1px solid #CDEFEA;color:#9AA3A0;font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.ticket-row{padding:18px 4px;border-bottom:1px solid #E9EEEC;cursor:pointer;transition:.15s}.ticket-row:hover,.ticket-row.selected{background:#F7FFFE}.ticket-row:last-child{border-bottom:none}.ticket-name b,.ticket-name small{display:block}.ticket-name b{font-size:14px}.ticket-name small{margin-top:3px;color:#9AA19F;font-size:10px}.ticket-row>span:not(.ticket-name){font-size:12px;color:#67716D}.ticket-row .ticket-fee{color:#9CA4A1}.ticket-row .ticket-total b{color:#238F87}.ticket-row input[type=radio]{appearance:none;width:30px;height:30px;border:1px solid #BFEAE6;border-radius:9px;background:#F1FFFD;cursor:pointer}.ticket-row input[type=radio]:checked:after{content:"✓";display:grid;place-items:center;width:100%;height:100%;color:#0B8B84;font-weight:900}.ticket-action-column{display:flex;flex-direction:column;gap:16px}.ticket-action-card{padding:16px}.ticket-action-card .btn{min-height:50px}.ticket-trust-list{display:flex;flex-direction:column;gap:9px;margin-top:16px;padding:15px 4px 2px;border-top:1px solid #E8EEEC}.ticket-trust-list span{color:#67716D;font-size:12px}.ticket-share-card{padding:20px}.ticket-share-card>b{font-size:13px}.ticket-share-card>div{display:flex;gap:8px;margin-top:13px}.ticket-share-card button,.ticket-share-card a{width:54px;height:34px;display:grid;place-items:center;border:1px solid #D4DBD8;border-radius:8px;background:#fff;color:#34413D;font-size:12px;cursor:pointer}
.coupon-checkout-field{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.coupon-checkout-field span{font-size:11px;color:#7C8783}.medical-checkout-line{padding:13px;border-radius:10px;background:#F2FEFD;border:1px solid #D0FAF7}

/* Wizard de creación */
.create-event-page{background:#F5FBFA}.event-wizard{max-width:1020px;margin:0 auto}.event-wizard-stepper{display:flex;align-items:center;gap:0;margin-bottom:22px;padding:15px 18px;border:1px solid #DDEBE8;border-radius:13px;background:#fff;overflow-x:auto}.wizard-step{position:relative;flex:1;min-width:118px;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#969E9B;text-align:left;cursor:pointer}.wizard-step:not(:last-child):after{content:"";position:absolute;right:10px;width:28%;height:1px;background:#D1D9D6}.wizard-step span{width:25px;height:25px;display:grid;place-items:center;border:1px solid #CFD7D4;border-radius:50%;background:#fff;font-size:11px;font-weight:800}.wizard-step em{font-style:normal;font-size:11px}.wizard-step.active{color:#0B8B84;font-weight:800}.wizard-step.active span,.wizard-step.done span{border-color:#0B8B84;background:#0B8B84;color:#fff}.wizard-step.done{color:#4C8D87}.wizard-pane{display:none}.wizard-pane.active{display:block}.wizard-panel{padding:28px;border:1px solid #DFE6E3;border-radius:16px;background:#fff;box-shadow:0 8px 30px rgba(11,139,132,.05)}.wizard-panel>header{margin-bottom:25px}.wizard-panel>header h2{font-size:23px;letter-spacing:-.4px}.wizard-panel>header p{margin-top:4px;color:#747F7B;font-size:13px}.wizard-question{margin:23px 0}.wizard-question>b,.wizard-question h3{display:block;margin-bottom:10px;font-size:14px}.choice-grid{display:grid;gap:12px}.choice-grid.two{grid-template-columns:1fr 1fr}.choice-card{position:relative;min-height:88px;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;align-content:center;padding:15px;border:1px solid #D5DDDA;border-radius:12px;background:#fff;cursor:pointer;transition:.15s}.choice-card input{position:absolute;opacity:0;pointer-events:none}.choice-card:has(input:checked){border-color:#69D8D1;background:#F3FFFE;box-shadow:0 0 0 2px rgba(52,214,206,.12)}.choice-icon{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#D0FAF7;color:#0B8B84}.choice-card strong{font-size:13px}.choice-card small{color:#929A97;font-size:10px}.sport-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sport-choice-card{position:relative;min-height:116px;padding:15px;border:1px solid #D5DDDA;border-radius:12px;background:#fff;cursor:pointer}.sport-choice-card input{position:absolute;opacity:0}.sport-choice-card:has(input:checked){border-color:#58D0C9;background:#F1FFFD;box-shadow:0 0 0 2px rgba(52,214,206,.12)}.sport-choice-card>span{width:36px;height:36px;display:grid;place-items:center;margin-bottom:13px;border-radius:9px;background:#D0FAF7;color:#0B8B84}.sport-choice-card strong,.sport-choice-card small{display:block}.sport-choice-card strong{font-size:13px}.sport-choice-card small{margin-top:3px;color:#858F8B;font-size:10px}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid #EBEFED}.wizard-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:17px}.wizard-presets span{font-size:10px;text-transform:uppercase;color:#98A09D;font-weight:800}.wizard-presets button{padding:7px 11px;border:1px solid #D5DDDA;border-radius:999px;background:#fff;font-size:11px;cursor:pointer}.wizard-presets button:hover{border-color:#67D9D1;color:#0B8B84}.distance-builder{display:flex;flex-direction:column;gap:9px}.distance-row{display:grid;grid-template-columns:1.2fr .8fr 38px;gap:9px;align-items:end;padding:12px;border:1px solid #E2E8E6;border-radius:11px;background:#FAFCFB}.distance-row label{display:block;margin-bottom:4px;color:#727C78;font-size:10px;font-weight:700}.distance-row .input{margin:0}.distance-remove{height:42px;border:1px solid #F2CACA;border-radius:8px;background:#FFF6F6;color:#C74040;font-size:20px;cursor:pointer}.wizard-tip{margin-top:18px;padding:13px 15px;border:1px solid #D0FAF7;border-radius:10px;background:#F2FEFD;color:#5F6B67;font-size:12px}.wizard-subtitle{margin:20px 0 10px;font-size:14px}.toggle-line{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:15px;border:1px solid #D0FAF7;border-radius:12px;background:#F7FFFE}.toggle-line input{margin-top:4px;accent-color:#0B8B84}.toggle-line b,.toggle-line small{display:block}.toggle-line b{font-size:13px}.toggle-line small{margin-top:3px;color:#7A8581;font-size:10px}.wizard-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.wizard-summary>div{padding:14px;border:1px solid #E1E7E5;border-radius:10px;background:#FAFCFB}.wizard-summary small,.wizard-summary b{display:block}.wizard-summary small{color:#8B9491;font-size:10px;text-transform:uppercase;font-weight:800}.wizard-summary b{margin-top:4px;font-size:13px}.wizard-publish-note{padding:14px;border:1px solid #BBF7D0;border-radius:10px;background:#F0FDF4;color:#24643D;font-size:12px}.wizard-actions-final .btn-primary{min-width:230px;background:linear-gradient(135deg,#16A34A,#15803D)}

/* Admin / descuentos inspirados en el HTML fuente */
.admin-filter-bar{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(130px,.75fr)) auto;gap:9px;align-items:center;margin:18px 0}.admin-events-filter{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,.75fr)) auto auto}.admin-source-table td{vertical-align:middle}.organizer-invite-card{margin-top:18px}.organizer-invite-card summary,.admin-create-user summary{cursor:pointer;font-weight:800;color:#0A6E69}.discount-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:18px}.discount-create-card h2{margin-top:5px}.coupon-code-input{text-transform:uppercase;letter-spacing:1px;font-weight:800}.coupon-pill{display:inline-flex;padding:5px 10px;border-radius:7px;background:#D0FAF7;color:#0A6E69;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900;letter-spacing:.7px}

@media(max-width:980px){.reference-hero-grid{grid-template-columns:1fr}.reference-sport-mosaic{min-height:380px;max-width:520px;margin:0 auto;width:100%}.reference-category-grid{grid-template-columns:repeat(2,1fr)}.reference-pricing-grid{grid-template-columns:1fr}.reference-price-card.featured{transform:none}.ticket-shop-grid{grid-template-columns:1fr}.ticket-action-column{display:grid;grid-template-columns:1fr 1fr}.sport-choice-grid{grid-template-columns:repeat(2,1fr)}.admin-filter-bar,.admin-events-filter{grid-template-columns:1fr 1fr}.discount-layout{grid-template-columns:1fr}}
@media(max-width:680px){.reference-hero{padding:42px 0}.reference-hero-copy h1{font-size:38px;letter-spacing:-1.3px}.reference-hero-copy>p{font-size:16px}.reference-sport-mosaic{display:none}.reference-category-grid{grid-template-columns:1fr}.reference-section-heading h2{font-size:29px}.ticket-selector-card{padding:18px}.ticket-table-head{display:none}.ticket-row{grid-template-columns:1.3fr .8fr 42px}.ticket-row>span:nth-child(3),.ticket-row>span:nth-child(4){display:none}.ticket-action-column{display:flex}.event-reference-cover{height:235px}.event-reference-info h1{font-size:27px}.event-wizard-stepper{padding:12px}.wizard-step{min-width:74px;justify-content:center}.wizard-step em,.wizard-step:not(:last-child):after{display:none}.wizard-panel{padding:20px}.choice-grid.two,.sport-choice-grid,.wizard-summary{grid-template-columns:1fr}.distance-row{grid-template-columns:1fr 1fr 34px}.admin-filter-bar,.admin-events-filter{grid-template-columns:1fr}}

/* ============================================================
   V7 — PALETA OFICIAL MATCH SPORT + MODO NOCHE TOTAL
   Colores solicitados:
   Turquesa 50..950 + logo #22E6E0
   Verde / Ámbar / Rojo / Azul como colores de apoyo.
   Este bloque queda al final para unificar TODA la interfaz.
   ============================================================ */
:root{
  --purple-50:#ECFEFD;
  --purple-100:#D0FAF7;
  --purple-200:#A5F3EF;
  --purple-300:#6EE7E0;
  --purple-400:#34D6CE;
  --purple-500:#17BDB5;
  --purple-600:#0DA69E;
  --purple-700:#0B8B84;
  --purple-800:#0A6E69;
  --purple-900:#08514D;
  --purple-950:#063734;
  --brand-logo:#22E6E0;

  --green-50:#DCFCE7;
  --green-500:#22C55E;
  --green-600:#16A34A;
  --green-700:#15803D;
  --amber-50:#FEF3C7;
  --amber-400:#FBBF24;
  --amber-500:#F59E0B;
  --amber-600:#D97706;
  --amber-700:#B45309;
  --amber-800:#92400E;
  --amber-900:#78350F;
  --red-50:#FEE2E2;
  --red-500:#EF4444;
  --red-600:#DC2626;
  --blue-50:#DBEAFE;
  --blue-500:#3B82F6;
  --blue-600:#2563EB;
  --blue-700:#1D4ED8;

  --text:#063734;
  --text-secondary:#0A6E69;
  --text-tertiary:#17BDB5;
  --bg:#FFFFFF;
  --bg-secondary:#ECFEFD;
  --bg-tertiary:#D0FAF7;
  --border:#A5F3EF;
  --border-strong:#6EE7E0;
  --ms-forest:#08514D;
  --ms-forest-deep:#063734;
  --ms-teal:#17BDB5;
  --ms-mint-bright:#22E6E0;
  --ms-paper:#FFFFFF;
  --ms-line:#A5F3EF;
}

/* Ajustes de marca en modo claro */
.nav{border-bottom-color:var(--purple-200)}
.nav-links a{color:var(--purple-800)}
.nav-links a:hover,.nav-links a.active{color:var(--purple-950);background:var(--purple-50)}
.btn-primary{background:var(--purple-700);border-color:var(--purple-700);color:#fff}
.btn-primary:hover{background:var(--purple-800);border-color:var(--purple-800)}
.btn-ghost{color:var(--purple-900);border-color:var(--purple-200)}
.btn-ghost:hover{color:var(--purple-950);background:var(--purple-50);border-color:var(--purple-400)}
.input,.select,textarea.input{border-color:var(--purple-200)}
.input:focus,.select:focus,textarea.input:focus{border-color:var(--purple-500);box-shadow:0 0 0 3px rgba(23,189,181,.18)}
.footer,.dark-section{background:var(--purple-950)}

/* MODO NOCHE: base exacta de la paleta indicada */
html[data-ui-theme="dark"]{
  color-scheme:dark;
  --text:#ECFEFD;
  --text-secondary:#D0FAF7;
  --text-tertiary:#A5F3EF;
  --bg:#063734;
  --bg-secondary:#08514D;
  --bg-tertiary:#0A6E69;
  --border:#0B8B84;
  --border-strong:#0DA69E;
  --ms-paper:#08514D;
  --ms-line:#0B8B84;
}
html[data-ui-theme="dark"] body{
  color:var(--purple-50);
  background:var(--purple-950);
}
html[data-ui-theme="dark"] ::selection{color:var(--purple-950);background:var(--brand-logo)}

/* Cabecera pública y navegación */
html[data-ui-theme="dark"] .site-announcement{
  color:var(--purple-50)!important;
  background:var(--purple-900)!important;
  border-color:var(--purple-700)!important;
}
html[data-ui-theme="dark"] .site-announcement>span{
  color:var(--purple-950)!important;
  background:var(--brand-logo)!important;
}
html[data-ui-theme="dark"] .site-announcement a{color:var(--purple-200)!important}
html[data-ui-theme="dark"] .nav{
  color:var(--purple-50)!important;
  background:rgba(6,55,52,.97)!important;
  border-bottom-color:var(--purple-700)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.16);
}
html[data-ui-theme="dark"] .nav-links a{color:var(--purple-100)!important}
html[data-ui-theme="dark"] .nav-links a:hover,
html[data-ui-theme="dark"] .nav-links a.active{
  color:var(--brand-logo)!important;
  background:var(--purple-900)!important;
}
html[data-ui-theme="dark"] .nav-links.is-open{background:var(--purple-950)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .menu-toggle,
html[data-ui-theme="dark"] .country-language-form,
html[data-ui-theme="dark"] .public-theme-toggle,
html[data-ui-theme="dark"] .global-theme-toggle{
  color:var(--purple-50)!important;
  background:var(--purple-900)!important;
  border-color:var(--purple-700)!important;
}
html[data-ui-theme="dark"] .public-theme-toggle,
html[data-ui-theme="dark"] .global-theme-toggle{color:var(--brand-logo)!important}
html[data-ui-theme="dark"] .public-theme-toggle:hover,
html[data-ui-theme="dark"] .public-theme-toggle:focus-visible,
html[data-ui-theme="dark"] .global-theme-toggle:hover,
html[data-ui-theme="dark"] .global-theme-toggle:focus-visible{
  color:var(--purple-950)!important;
  background:var(--brand-logo)!important;
  border-color:var(--brand-logo)!important;
}

/* Fondos generales: landing, explorador, auth, legal, checkout y páginas auxiliares */
html[data-ui-theme="dark"] :where(
  .hero,.section,.home-events,.home-categories,.home-how,.home-comments,.home-mobile-showcase,
  .explore-content,.explore-section,.event-detail-section,.event-main,.event-page,.results-page,
  .auth-page,.auth-wrap,.login-page,.legal-page,.legal-content-section,.checkout-page,.checkout-section,
  .ticket-page,.contact-page,.about-page,.help-page,.pricing-section,.events-section,.cat-section,.steps-section
){background-color:var(--purple-950)!important;color:var(--purple-50)!important}

html[data-ui-theme="dark"] .hero{
  background:
    radial-gradient(circle at 92% 8%,rgba(34,230,224,.12),transparent 30%),
    radial-gradient(circle at 5% 15%,rgba(245,158,11,.10),transparent 25%),
    linear-gradient(145deg,var(--purple-950),var(--purple-900))!important;
}
html[data-ui-theme="dark"] .hero h1,
html[data-ui-theme="dark"] .hero-stat .num,
html[data-ui-theme="dark"] .section h1,
html[data-ui-theme="dark"] .section h2,
html[data-ui-theme="dark"] .section h3,
html[data-ui-theme="dark"] .section h4,
html[data-ui-theme="dark"] .home-section-head h1,
html[data-ui-theme="dark"] .home-section-head h2,
html[data-ui-theme="dark"] .home-section-head h3{
  color:var(--purple-50)!important;
}
html[data-ui-theme="dark"] .hero h1 .accent,
html[data-ui-theme="dark"] .section-eyebrow,
html[data-ui-theme="dark"] .accent{color:var(--brand-logo)!important}
html[data-ui-theme="dark"] :where(.muted,.small.muted,.field-hint,.hero-desc,.hero-stat .lbl,.event-meta,.event-location,.event-date,.home-section-head>p,.sub,.subtitle){
  color:var(--purple-100)!important;
}

/* Tarjetas y superficies */
html[data-ui-theme="dark"] :where(
  .card,.event-card,.cat-card,.step-card,.price-card,.metric,.metric-card,.quick-card,.chart-card,.table-wrap,
  .auth-form,.auth-card,.login-card,.checkout-card,.ticket-card,.event-registration-card,.event-detail-card,
  .help-chat-panel,.legal-intro-card,.legal-update-note,.legal-section-card,.legal-company-note,.about-founder,
  .finance-flow,.flow-box,.panel,.form-card,.module-card,.summary-card,.coupon-card,.discount-card,.upload-zone
){
  color:var(--purple-50)!important;
  background:var(--purple-900)!important;
  border-color:var(--purple-700)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.18)!important;
}
html[data-ui-theme="dark"] :where(.card,.event-card,.metric,.metric-card,.quick-card,.table-wrap,.panel,.form-card):hover{
  border-color:var(--purple-600)!important;
}
html[data-ui-theme="dark"] :where(.card,.event-card,.panel,.form-card,.auth-form,.checkout-card,.ticket-card) h1,
html[data-ui-theme="dark"] :where(.card,.event-card,.panel,.form-card,.auth-form,.checkout-card,.ticket-card) h2,
html[data-ui-theme="dark"] :where(.card,.event-card,.panel,.form-card,.auth-form,.checkout-card,.ticket-card) h3,
html[data-ui-theme="dark"] :where(.card,.event-card,.panel,.form-card,.auth-form,.checkout-card,.ticket-card) h4{
  color:var(--purple-50)!important;
}

/* Inputs, selects, áreas de texto y campos de formulario */
html[data-ui-theme="dark"] :where(.input,.select,textarea.input,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],select,textarea){
  color:var(--purple-50)!important;
  background:var(--purple-950)!important;
  border-color:var(--purple-700)!important;
}
html[data-ui-theme="dark"] :where(.input,.select,textarea.input,input,select,textarea):focus{
  border-color:var(--brand-logo)!important;
  box-shadow:0 0 0 3px rgba(34,230,224,.18)!important;
  outline:none;
}
html[data-ui-theme="dark"] :where(input,textarea)::placeholder{color:var(--purple-200)!important;opacity:.78}
html[data-ui-theme="dark"] select option{color:var(--purple-50)!important;background:var(--purple-950)!important}
html[data-ui-theme="dark"] .label,
html[data-ui-theme="dark"] label{color:var(--purple-50)}

/* Botones */
html[data-ui-theme="dark"] .btn-primary,
html[data-ui-theme="dark"] .btn-dark{
  color:var(--purple-950)!important;
  background:var(--brand-logo)!important;
  border-color:var(--brand-logo)!important;
  box-shadow:0 8px 20px rgba(34,230,224,.16)!important;
}
html[data-ui-theme="dark"] .btn-primary:hover,
html[data-ui-theme="dark"] .btn-dark:hover{
  color:var(--purple-950)!important;
  background:var(--purple-300)!important;
  border-color:var(--purple-300)!important;
}
html[data-ui-theme="dark"] .btn-ghost,
html[data-ui-theme="dark"] .btn-outline{
  color:var(--purple-50)!important;
  background:var(--purple-900)!important;
  border-color:var(--purple-700)!important;
}
html[data-ui-theme="dark"] .btn-ghost:hover,
html[data-ui-theme="dark"] .btn-outline:hover{
  color:var(--brand-logo)!important;
  background:var(--purple-800)!important;
  border-color:var(--purple-500)!important;
}
html[data-ui-theme="dark"] .btn-amber{color:var(--amber-900)!important;background:var(--amber-400)!important;border-color:var(--amber-400)!important}
html[data-ui-theme="dark"] .btn-danger{color:#fff!important;background:var(--red-600)!important;border-color:var(--red-600)!important}

/* Tablas */
html[data-ui-theme="dark"] :where(.table,.tbl){color:var(--purple-50)!important;background:transparent!important}
html[data-ui-theme="dark"] :where(.table,.tbl) th{
  color:var(--purple-100)!important;
  background:var(--purple-950)!important;
  border-color:var(--purple-700)!important;
}
html[data-ui-theme="dark"] :where(.table,.tbl) td{
  color:var(--purple-50)!important;
  border-color:var(--purple-700)!important;
  background:var(--purple-900)!important;
}
html[data-ui-theme="dark"] :where(.table,.tbl) tr:hover td{background:var(--purple-800)!important}

/* Chips / badges / tags */
html[data-ui-theme="dark"] .badge-purple{color:var(--purple-950)!important;background:var(--purple-300)!important}
html[data-ui-theme="dark"] .badge-gray,
html[data-ui-theme="dark"] .chip,
html[data-ui-theme="dark"] .preset-chip,
html[data-ui-theme="dark"] .genero-chip{
  color:var(--purple-50)!important;background:var(--purple-800)!important;border-color:var(--purple-600)!important
}
html[data-ui-theme="dark"] .chip.active,
html[data-ui-theme="dark"] .preset-chip:hover,
html[data-ui-theme="dark"] .genero-chip.active{
  color:var(--purple-950)!important;background:var(--brand-logo)!important;border-color:var(--brand-logo)!important
}
html[data-ui-theme="dark"] .badge-green{color:#fff!important;background:var(--green-700)!important}
html[data-ui-theme="dark"] .badge-amber{color:var(--amber-900)!important;background:var(--amber-400)!important}
html[data-ui-theme="dark"] .badge-blue{color:#fff!important;background:var(--blue-600)!important}
html[data-ui-theme="dark"] .badge-red{color:#fff!important;background:var(--red-600)!important}

/* Alertas con colores de apoyo exactos */
html[data-ui-theme="dark"] .alert-ok{color:var(--green-50)!important;background:var(--green-700)!important;border-color:var(--green-500)!important}
html[data-ui-theme="dark"] .alert-warn{color:var(--amber-50)!important;background:var(--amber-900)!important;border-color:var(--amber-500)!important}
html[data-ui-theme="dark"] .alert-err{color:var(--red-50)!important;background:#7A1D1D!important;border-color:var(--red-500)!important}
html[data-ui-theme="dark"] .alert-info{color:var(--blue-50)!important;background:#163D79!important;border-color:var(--blue-500)!important}

/* Eventos, compra y precios */
html[data-ui-theme="dark"] .event-title,
html[data-ui-theme="dark"] .event-price,
html[data-ui-theme="dark"] .event-registration-card strong,
html[data-ui-theme="dark"] .ticket-price,
html[data-ui-theme="dark"] .price-amount{color:var(--purple-50)!important}
html[data-ui-theme="dark"] .event-foot,
html[data-ui-theme="dark"] .ticket-row,
html[data-ui-theme="dark"] .ticket-option{border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .event-arrow{color:var(--purple-950)!important;background:var(--brand-logo)!important}
html[data-ui-theme="dark"] .price-card.featured{
  background:linear-gradient(155deg,var(--purple-800),var(--purple-950))!important;
  border-color:var(--purple-500)!important;
}
html[data-ui-theme="dark"] .price-card.featured::before{background:var(--amber-500)!important}

/* Wizard, check-in, descuentos, diplomas y administración */
html[data-ui-theme="dark"] :where(.stepper,.wizard-stepper,.filter-row,.toggle-row,.reveal-inner,.comision-card,.comision-opt,.item-row,.summary-section,.modal-card,.confirm-card){
  color:var(--purple-50)!important;
  background:var(--purple-900)!important;
  border-color:var(--purple-700)!important;
}
html[data-ui-theme="dark"] :where(.comision-opt.sel,.toggle.on,.wizard-step.active,.stepper .active){
  border-color:var(--brand-logo)!important;
}
html[data-ui-theme="dark"] .toggle{background:var(--purple-800)!important}
html[data-ui-theme="dark"] .toggle.on{background:var(--purple-500)!important}

/* Documentos legales */
html[data-ui-theme="dark"] .legal-hero{background:var(--purple-950)!important}
html[data-ui-theme="dark"] .legal-intro-card p,
html[data-ui-theme="dark"] .legal-section-card p,
html[data-ui-theme="dark"] .legal-section-card ul,
html[data-ui-theme="dark"] .legal-update-note p,
html[data-ui-theme="dark"] .legal-definitions dd{color:var(--purple-100)!important}
html[data-ui-theme="dark"] .legal-table{background:var(--purple-900)!important}
html[data-ui-theme="dark"] .legal-table th{background:var(--purple-950)!important}
html[data-ui-theme="dark"] .legal-table td{color:var(--purple-50)!important;background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .legal-table td:first-child{color:var(--brand-logo)!important}
html[data-ui-theme="dark"] .legal-definitions,
html[data-ui-theme="dark"] .legal-definitions>div,
html[data-ui-theme="dark"] .legal-table-wrap{border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .legal-payment-models>div{background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .legal-section-card a{color:var(--brand-logo)!important}

/* Footer y chat */
html[data-ui-theme="dark"] .footer,
html[data-ui-theme="dark"] .dark-section{background:var(--purple-950)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .footer h5,
html[data-ui-theme="dark"] .footer a,
html[data-ui-theme="dark"] .footer p,
html[data-ui-theme="dark"] .footer-bottom{color:var(--purple-100)!important}
html[data-ui-theme="dark"] .footer a:hover{color:var(--brand-logo)!important}
html[data-ui-theme="dark"] .help-chat-toggle{color:var(--purple-950)!important;background:var(--brand-logo)!important;border-color:var(--brand-logo)!important}
html[data-ui-theme="dark"] .help-chat-body button,
html[data-ui-theme="dark"] .help-chat-body a{color:var(--purple-50)!important;background:var(--purple-950)!important;border-color:var(--purple-700)!important}

/* Modales y capas */
html[data-ui-theme="dark"] :where(.modal,.confirm-modal,.dialog-backdrop){background-color:rgba(6,55,52,.76)!important}
html[data-ui-theme="dark"] :where(.modal-card,.confirm-card,.dialog-card){background:var(--purple-900)!important;border-color:var(--purple-700)!important;color:var(--purple-50)!important}

/* Evitar bloques blancos residuales provenientes de componentes antiguos */
html[data-ui-theme="dark"] [style*="background: #fff"],
html[data-ui-theme="dark"] [style*="background:#fff"],
html[data-ui-theme="dark"] [style*="background: #FFF"],
html[data-ui-theme="dark"] [style*="background:#FFF"],
html[data-ui-theme="dark"] [style*="background: #FFFFFF"],
html[data-ui-theme="dark"] [style*="background:#FFFFFF"]{
  background:var(--purple-900)!important;
}

/* Barra de desplazamiento coherente en modo noche */
html[data-ui-theme="dark"] *{scrollbar-color:var(--purple-700) var(--purple-950)}
html[data-ui-theme="dark"] *::-webkit-scrollbar{width:11px;height:11px}
html[data-ui-theme="dark"] *::-webkit-scrollbar-track{background:var(--purple-950)}
html[data-ui-theme="dark"] *::-webkit-scrollbar-thumb{background:var(--purple-700);border:3px solid var(--purple-950)}
html[data-ui-theme="dark"] *::-webkit-scrollbar-thumb:hover{background:var(--purple-500)}


/* V8.1 — CONTROLES DE TEXTO SIN ICONOS */
.public-theme-toggle,.global-theme-toggle{
  width:auto!important;min-width:68px!important;max-width:none!important;height:44px!important;
  padding:0 12px!important;flex:0 0 auto!important;font:900 10px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important
}
.menu-toggle{width:auto!important;min-width:58px!important;padding:0 10px!important;font-size:11px!important}
.help-chat-toggle{font-size:11px!important;letter-spacing:.01em}
.help-chat-head button{font-size:11px!important;font-weight:800!important;padding:7px 9px!important}
.comments-controls button{width:auto!important;min-width:82px!important;padding:0 14px!important;border-radius:999px!important;font-size:10px!important;font-weight:900!important}
.ticket-share-card button,.ticket-share-card a{width:auto!important;min-width:78px!important;padding:0 10px!important;font-size:9px!important;font-weight:800!important}
.distance-row{grid-template-columns:1.2fr .8fr 78px!important}
.distance-remove{height:42px!important;padding:0 9px!important;font-size:10px!important;font-weight:900!important}
.ui-notification-close{width:auto!important;min-width:50px!important;padding:0 7px!important;font-size:9px!important;font-weight:900!important}
@media(max-width:680px){.distance-row{grid-template-columns:1fr 1fr 72px!important}}


/* === CARGAS DE ARCHIVOS V9 === */
.ms-file-input{
  width:100%!important;min-height:52px!important;padding:7px!important;
  border:1px solid var(--ms-line,#A5F3EF)!important;border-radius:10px!important;
  background:var(--surface,#fff)!important;color:var(--ms-ink,#063734)!important;
  cursor:pointer!important;pointer-events:auto!important;opacity:1!important
}
.ms-file-input::file-selector-button{
  min-height:36px;margin-right:12px;padding:0 14px;border:0;border-radius:7px;
  background:#0B8B84;color:#fff;font:inherit;font-size:12px;font-weight:850;cursor:pointer
}
.ms-file-input:hover::file-selector-button{background:#0A6E69}
.ms-file-feedback{display:flex;align-items:center;gap:12px;min-height:0;margin-top:8px;color:#65746f;font-size:11px}
.ms-file-feedback:empty{display:none}
.ms-file-preview{width:76px;height:58px;flex:0 0 76px;object-fit:cover;border:1px solid #A5F3EF;border-radius:8px;background:#ECFEFD}
.ms-file-meta{min-width:0;display:grid;gap:2px}.ms-file-meta strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;font-size:11px}.ms-file-meta small{font-size:10px;color:#7b8985}
html[data-ui-theme="dark"] .ms-file-input{background:#08514D!important;color:#ECFEFD!important;border-color:#0A6E69!important}
html[data-ui-theme="dark"] .ms-file-feedback{color:#A5F3EF}html[data-ui-theme="dark"] .ms-file-meta small{color:#6EE7E0}
/* ============================================================
   V10 — AJUSTES FINALES SOLICITADOS 2026-08-12
   · paleta oficial en claro y noche
   · logo público realmente centrado
   · cinta "Hecho para..." más compacta
   · notificaciones sin botón "Cerrar"
   · ayuda como signo ?
   · Privacidad / Términos en una sola línea
   ============================================================ */
:root{
  /* Paleta principal exacta entregada */
  --purple-50:#ECFEFD;--purple-100:#D0FAF7;--purple-200:#A5F3EF;--purple-300:#6EE7E0;
  --purple-400:#34D6CE;--purple-500:#17BDB5;--purple-600:#0DA69E;--purple-700:#0B8B84;
  --purple-800:#0A6E69;--purple-900:#08514D;--purple-950:#063734;--brand-logo:#22E6E0;
  --green-50:#DCFCE7;--green-500:#22C55E;--green-600:#16A34A;--green-700:#15803D;
  --amber-50:#FEF3C7;--amber-400:#FBBF24;--amber-500:#F59E0B;--amber-600:#D97706;--amber-700:#B45309;--amber-800:#92400E;--amber-900:#78350F;
  --red-50:#FEE2E2;--red-500:#EF4444;--red-600:#DC2626;
  --blue-50:#DBEAFE;--blue-500:#3B82F6;--blue-600:#2563EB;--blue-700:#1D4ED8;

  /* Semánticos de modo claro: sólo colores de la paleta */
  --text:#063734;--text-secondary:#0A6E69;--text-tertiary:#17BDB5;
  --bg:#FFFFFF;--bg-secondary:#ECFEFD;--bg-tertiary:#D0FAF7;
  --border:#A5F3EF;--border-strong:#6EE7E0;
  --ms-ink:#063734;--ms-ink-soft:#0A6E69;--ms-forest:#08514D;--ms-forest-deep:#063734;
  --ms-mint:#D0FAF7;--ms-mint-bright:#22E6E0;--ms-paper:#ECFEFD;--ms-line:#A5F3EF;
  --ms-coral:#F59E0B;--ms-yellow:#FBBF24;
}

/* ---------- MODO CLARO: cobertura general ---------- */
html:not([data-ui-theme="dark"]){color-scheme:light}
html:not([data-ui-theme="dark"]) body{color:var(--purple-950);background:var(--purple-50)}
html:not([data-ui-theme="dark"]) .site-announcement{color:var(--purple-950);background:var(--purple-100);border-color:var(--purple-200)}
html:not([data-ui-theme="dark"]) .site-announcement>span{color:var(--purple-50);background:var(--purple-900)}
html:not([data-ui-theme="dark"]) .site-announcement a{color:var(--purple-900)}
html:not([data-ui-theme="dark"]) .nav{background:#FFFFFF!important;border-bottom-color:var(--purple-200)!important}
html:not([data-ui-theme="dark"]) .nav-links a{color:var(--purple-900)!important}
html:not([data-ui-theme="dark"]) .nav-links a:hover,
html:not([data-ui-theme="dark"]) .nav-links a.active{color:var(--purple-950)!important;background:var(--purple-50)!important}
html:not([data-ui-theme="dark"]) .country-language-form,
html:not([data-ui-theme="dark"]) .public-theme-toggle,
html:not([data-ui-theme="dark"]) .global-theme-toggle,
html:not([data-ui-theme="dark"]) .menu-toggle{color:var(--purple-950)!important;background:#FFFFFF!important;border-color:var(--purple-200)!important}
html:not([data-ui-theme="dark"]) .public-theme-toggle:hover,
html:not([data-ui-theme="dark"]) .global-theme-toggle:hover{color:var(--purple-50)!important;background:var(--purple-700)!important;border-color:var(--purple-700)!important}

html:not([data-ui-theme="dark"]) :where(
  .hero,.section,.home-events,.home-categories,.home-how,.home-comments,.home-mobile-showcase,
  .explore-content,.event-detail-section,.event-main,.event-page,.results-page,.legal-page,.legal-content-section,
  .checkout-page,.checkout-section,.ticket-page,.contact-page,.about-page,.help-page,.pricing-section,.events-section,.cat-section,.steps-section
){color:var(--purple-950);background-color:var(--purple-50)}
html:not([data-ui-theme="dark"]) :where(.card,.event-card,.cat-card,.step-card,.price-card,.metric,.metric-card,.quick-card,.chart-card,.table-wrap,.panel,.form-card,.checkout-card,.ticket-card,.event-registration-card,.event-detail-card,.help-chat-panel,.legal-intro-card,.legal-section-card,.about-founder,.finance-flow,.flow-box,.summary-card,.coupon-card,.discount-card,.upload-zone){
  color:var(--purple-950)!important;background:#FFFFFF!important;border-color:var(--purple-200)!important
}
html:not([data-ui-theme="dark"]) :where(.input,.select,textarea.input,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],select,textarea){
  color:var(--purple-950)!important;background:#FFFFFF!important;border-color:var(--purple-200)!important
}
html:not([data-ui-theme="dark"]) :where(.input,.select,textarea.input,input,select,textarea):focus{border-color:var(--purple-500)!important;box-shadow:0 0 0 3px rgba(23,189,181,.18)!important}
html:not([data-ui-theme="dark"]) .btn-primary{color:#FFFFFF!important;background:var(--purple-700)!important;border-color:var(--purple-700)!important}
html:not([data-ui-theme="dark"]) .btn-primary:hover{background:var(--purple-800)!important;border-color:var(--purple-800)!important}
html:not([data-ui-theme="dark"]) .btn-ghost,
html:not([data-ui-theme="dark"]) .btn-outline{color:var(--purple-900)!important;background:#FFFFFF!important;border-color:var(--purple-200)!important}
html:not([data-ui-theme="dark"]) .btn-ghost:hover,
html:not([data-ui-theme="dark"]) .btn-outline:hover{color:var(--purple-950)!important;background:var(--purple-100)!important;border-color:var(--purple-400)!important}
html:not([data-ui-theme="dark"]) .home-hero,
html:not([data-ui-theme="dark"]) .home-regions,
html:not([data-ui-theme="dark"]) .home-organizer,
html:not([data-ui-theme="dark"]) .dark-section{color:var(--purple-50)!important;background:var(--purple-950)!important}
html:not([data-ui-theme="dark"]) .regional-map-shell{background:radial-gradient(circle at 45% 42%,rgba(34,230,224,.12),transparent 38%),var(--purple-900)!important;border-color:var(--purple-700)!important}
html:not([data-ui-theme="dark"]) .region-city-card{background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html:not([data-ui-theme="dark"]) .region-city-card:hover{background:var(--purple-800)!important;border-color:var(--purple-400)!important}
html:not([data-ui-theme="dark"]) .region-city-card em{color:var(--purple-950)!important;background:var(--brand-logo)!important}
html:not([data-ui-theme="dark"]) .home-proof{color:var(--purple-900)!important;background:var(--purple-100)!important;border-color:var(--purple-200)!important}
html:not([data-ui-theme="dark"]) .home-proof>p{color:var(--purple-800)!important}
html:not([data-ui-theme="dark"]) .home-proof-group{color:var(--purple-900)!important}
html:not([data-ui-theme="dark"]) .home-proof i{color:var(--amber-500)!important}
html:not([data-ui-theme="dark"]) .footer{color:var(--purple-100)!important;background:var(--purple-950)!important}
html:not([data-ui-theme="dark"]) .footer h5{color:var(--purple-50)!important}
html:not([data-ui-theme="dark"]) .footer a,
html:not([data-ui-theme="dark"]) .footer p,
html:not([data-ui-theme="dark"]) .footer-bottom{color:var(--purple-100)!important}
html:not([data-ui-theme="dark"]) .footer a:hover{color:var(--brand-logo)!important}
html:not([data-ui-theme="dark"]) .legal-update-note{background:var(--purple-100)!important;border-color:var(--purple-300)!important}
html:not([data-ui-theme="dark"]) .legal-table th{color:#FFFFFF!important;background:var(--purple-900)!important}
html:not([data-ui-theme="dark"]) .legal-table td{color:var(--purple-900)!important;background:#FFFFFF!important;border-color:var(--purple-200)!important}
html:not([data-ui-theme="dark"]) .legal-payment-models>div{background:var(--purple-50)!important;border-color:var(--purple-200)!important}

/* ---------- MODO NOCHE: cobertura general exacta ---------- */
html[data-ui-theme="dark"]{
  --text:#ECFEFD;--text-secondary:#D0FAF7;--text-tertiary:#A5F3EF;
  --bg:#063734;--bg-secondary:#08514D;--bg-tertiary:#0A6E69;
  --border:#0B8B84;--border-strong:#0DA69E;
  --ms-ink:#ECFEFD;--ms-ink-soft:#D0FAF7;--ms-forest:#08514D;--ms-forest-deep:#063734;
  --ms-mint:#0A6E69;--ms-mint-bright:#22E6E0;--ms-paper:#063734;--ms-line:#0B8B84;
  --ms-coral:#F59E0B;--ms-yellow:#FBBF24;
}
html[data-ui-theme="dark"] body{color:var(--purple-50)!important;background:var(--purple-950)!important}
html[data-ui-theme="dark"] .site-announcement{color:var(--purple-50)!important;background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .nav{background:var(--purple-950)!important;border-bottom-color:var(--purple-700)!important}
html[data-ui-theme="dark"] :where(.home-events,.home-categories,.home-how,.home-comments,.home-mobile-showcase,.explore-content,.event-detail-section,.event-main,.event-page,.results-page,.legal-page,.legal-content-section,.checkout-page,.checkout-section,.ticket-page,.contact-page,.about-page,.help-page,.pricing-section,.events-section,.cat-section,.steps-section){
  color:var(--purple-50)!important;background:var(--purple-950)!important
}
html[data-ui-theme="dark"] :where(.card,.event-card,.cat-card,.step-card,.price-card,.metric,.metric-card,.quick-card,.chart-card,.table-wrap,.panel,.form-card,.checkout-card,.ticket-card,.event-registration-card,.event-detail-card,.help-chat-panel,.legal-intro-card,.legal-update-note,.legal-section-card,.legal-company-note,.about-founder,.finance-flow,.flow-box,.summary-card,.coupon-card,.discount-card,.upload-zone){
  color:var(--purple-50)!important;background:var(--purple-900)!important;border-color:var(--purple-700)!important
}
html[data-ui-theme="dark"] .home-hero,
html[data-ui-theme="dark"] .home-regions,
html[data-ui-theme="dark"] .home-organizer,
html[data-ui-theme="dark"] .dark-section,
html[data-ui-theme="dark"] .footer{color:var(--purple-50)!important;background:var(--purple-950)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .regional-map-shell{background:radial-gradient(circle at 45% 42%,rgba(34,230,224,.12),transparent 38%),var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .region-city-card{background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .region-city-card:hover{background:var(--purple-800)!important;border-color:var(--purple-400)!important}
html[data-ui-theme="dark"] .region-city-card em{color:var(--purple-950)!important;background:var(--brand-logo)!important}
html[data-ui-theme="dark"] .home-proof{color:var(--purple-50)!important;background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .home-proof>p{color:var(--purple-200)!important}
html[data-ui-theme="dark"] .home-proof-group{color:var(--purple-100)!important}
html[data-ui-theme="dark"] .home-proof i{color:var(--amber-500)!important}
html[data-ui-theme="dark"] .footer h5{color:var(--purple-50)!important}
html[data-ui-theme="dark"] .footer a,
html[data-ui-theme="dark"] .footer p,
html[data-ui-theme="dark"] .footer-bottom{color:var(--purple-100)!important}
html[data-ui-theme="dark"] .legal-table th{color:var(--purple-50)!important;background:var(--purple-950)!important}
html[data-ui-theme="dark"] .legal-table td{color:var(--purple-100)!important;background:var(--purple-900)!important;border-color:var(--purple-700)!important}
html[data-ui-theme="dark"] .legal-payment-models>div{background:var(--purple-900)!important;border-color:var(--purple-700)!important}

/* ---------- Logo público centrado ---------- */
.nav>.logo{
  position:absolute!important;top:50%!important;left:50%!important;right:auto!important;
  margin:0!important;transform:translate(-50%,-50%)!important
}
.nav>.logo .logo-trace-stage{left:50%!important}
@media(min-width:651px){.nav>.logo{width:220px!important;height:82px!important}}

/* ---------- Cinta / banner final más pequeño ---------- */
.home-proof{padding:42px 0 46px!important}
.home-proof>p{margin-bottom:20px!important;font-size:8px!important}
.home-proof-group{gap:28px!important;padding-right:28px!important;font-size:clamp(28px,4vw,50px)!important}
@media(max-width:650px){.home-proof{padding:34px 0 38px!important}.home-proof-group{gap:20px!important;padding-right:20px!important;font-size:31px!important}}

/* ---------- Notificaciones: sin botón Cerrar ---------- */
.alert.ui-notification{grid-template-columns:38px minmax(0,1fr)!important;padding-right:14px!important}
.ui-notification-close{display:none!important}
@media(max-width:520px){.alert.ui-notification{grid-template-columns:34px minmax(0,1fr)!important;padding-right:11px!important}}

/* ---------- Ayuda = signo de pregunta ---------- */
.help-chat-toggle{
  width:50px!important;min-width:50px!important;max-width:50px!important;height:50px!important;
  padding:0!important;display:grid!important;place-items:center!important;border-radius:50%!important;
  color:#FFFFFF!important;background:var(--purple-700)!important;border:1px solid var(--purple-600)!important;
  font:900 24px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important
}
.help-chat-toggle:hover,.help-chat-toggle:focus-visible{color:var(--purple-950)!important;background:var(--brand-logo)!important;border-color:var(--brand-logo)!important;outline:2px solid var(--purple-400);outline-offset:3px}
html[data-ui-theme="dark"] .help-chat-toggle{color:var(--purple-950)!important;background:var(--brand-logo)!important;border-color:var(--brand-logo)!important}
html[data-ui-theme="dark"] .help-chat-toggle:hover,html[data-ui-theme="dark"] .help-chat-toggle:focus-visible{color:var(--purple-50)!important;background:var(--purple-700)!important;border-color:var(--purple-500)!important}

/* ---------- Privacidad / Términos: siempre juntos y alineados ---------- */
.footer-bottom{align-items:center!important}
.footer-legal-links{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;white-space:nowrap!important}
.footer-bottom .footer-legal-links a{display:inline!important;margin:0!important;padding:0!important;white-space:nowrap!important}
.footer-bottom .footer-legal-links>span{display:inline!important;line-height:1!important}
@media(max-width:560px){.footer-legal-links{justify-content:flex-start!important}}
