/* =========================================================
   LOCURA FANTASY · REDISEÑO UI V1
   Fase 1: sistema visual + cabecera + pantalla Once
   No modifica el campo ni su posicionamiento interno.
   ========================================================= */

:root{
  --lf-r-bg:#06111d;
  --lf-r-bg-2:#08182a;
  --lf-r-surface:#0d1f34;
  --lf-r-surface-2:#102844;
  --lf-r-surface-3:#153253;
  --lf-r-line:rgba(118,171,218,.16);
  --lf-r-line-strong:rgba(68,202,220,.28);
  --lf-r-text:#f3f8ff;
  --lf-r-muted:#9fb4cc;
  --lf-r-muted-2:#7089a4;
  --lf-r-green:#22dfae;
  --lf-r-green-2:#12c892;
  --lf-r-blue:#49aaf8;
  --lf-r-blue-2:#277dd4;
  --lf-r-amber:#f0bb4f;
  --lf-r-danger:#ff6475;
  --lf-r-shadow:0 18px 50px rgba(0,0,0,.22);
  --lf-r-shadow-soft:0 10px 30px rgba(0,0,0,.16);
  --lf-r-radius-xl:24px;
  --lf-r-radius-lg:19px;
  --lf-r-radius-md:14px;
}

body.lf-theme-dark{
  background:
    radial-gradient(900px 520px at 4% -10%, rgba(21,201,151,.12), transparent 58%),
    radial-gradient(780px 520px at 96% 6%, rgba(47,132,218,.14), transparent 58%),
    linear-gradient(180deg,#06111d 0%,#081524 42%,#07111d 100%) !important;
  color:var(--lf-r-text);
}

body.lf-theme-dark main{
  position:relative;
}
body.lf-theme-dark main::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,black,transparent 78%);
}

/* HEADER -------------------------------------------------- */
body.lf-theme-dark .lf-navbar{
  background:rgba(5,15,27,.90) !important;
  border-bottom:1px solid rgba(83,174,217,.15) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.16);
  backdrop-filter:blur(18px) saturate(130%);
  -webkit-backdrop-filter:blur(18px) saturate(130%);
}
body.lf-theme-dark .lf-navbar .container{max-width:1440px;}
body.lf-theme-dark .lf-navbar-top{
  min-height:72px;
  gap:14px;
}
body.lf-theme-dark .navbar-brand{
  gap:11px !important;
  padding:7px 10px 7px 4px;
  border-radius:18px;
  transition:.2s ease;
}
body.lf-theme-dark .navbar-brand:hover{background:rgba(255,255,255,.025);}
body.lf-theme-dark .lf-brand-logo{
  width:50px !important;
  height:50px !important;
  object-fit:contain;
  filter:drop-shadow(0 0 12px rgba(20,220,166,.18));
}
body.lf-theme-dark .lf-brand-title{
  color:#f6fbff;
  font-size:.98rem;
  font-weight:850;
  letter-spacing:-.02em;
}
body.lf-theme-dark .lf-brand-subtitle{
  color:#7f97b1 !important;
  font-size:.67rem;
  margin-top:1px;
}
body.lf-theme-dark .lf-brand-subtitle strong{color:#9db5cf;}

body.lf-theme-dark .lf-mobile-shortcuts{
  gap:9px !important;
}
body.lf-theme-dark .lf-mobile-shortcut{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(118,171,218,.16) !important;
  background:linear-gradient(180deg,rgba(18,39,65,.92),rgba(10,26,45,.94)) !important;
  color:#c9daec !important;
  box-shadow:0 8px 20px rgba(0,0,0,.10);
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
body.lf-theme-dark .lf-mobile-shortcut::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(255,255,255,.035),transparent 46%);
  pointer-events:none;
}
body.lf-theme-dark .lf-mobile-shortcut:hover{
  transform:translateY(-1px);
  border-color:rgba(73,170,248,.34) !important;
  color:#fff !important;
}
body.lf-theme-dark .lf-mobile-shortcut.is-active{
  border-color:rgba(34,223,174,.62) !important;
  background:linear-gradient(180deg,rgba(18,80,70,.92),rgba(8,49,52,.96)) !important;
  color:#fff !important;
  box-shadow:0 8px 24px rgba(19,206,154,.10), inset 0 0 0 1px rgba(34,223,174,.08);
}
body.lf-theme-dark .lf-mobile-shortcut.is-active i{color:var(--lf-r-green);}

body.lf-theme-dark .lf-toggler{
  width:52px;
  height:52px;
  border-radius:17px !important;
  border:1px solid rgba(118,171,218,.18) !important;
  background:linear-gradient(180deg,rgba(17,37,62,.94),rgba(9,24,41,.96)) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.13);
}

/* SHARED SURFACES ---------------------------------------- */
body.lf-theme-dark .lf-card,
body.lf-theme-dark .card.lf-card,
body.lf-theme-dark .lf-dash-card{
  background:linear-gradient(180deg,rgba(15,33,55,.96),rgba(9,25,43,.98)) !important;
  border:1px solid var(--lf-r-line) !important;
  border-radius:var(--lf-r-radius-xl) !important;
  box-shadow:var(--lf-r-shadow-soft);
}
body.lf-theme-dark .lf-card-header,
body.lf-theme-dark .card-header.lf-card-header{
  background:transparent !important;
  border-bottom:1px solid rgba(118,171,218,.12) !important;
  padding:17px 19px;
}

/* HERO DEL TORNEO ---------------------------------------- */
body.lf-theme-dark .lf-once-overview{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(75,181,223,.25);
  border-radius:26px;
  padding:22px 24px 16px;
  background:
    radial-gradient(520px 220px at 91% 8%,rgba(63,151,236,.20),transparent 68%),
    radial-gradient(420px 240px at -5% 110%,rgba(26,215,164,.13),transparent 64%),
    linear-gradient(135deg,rgba(12,39,61,.98),rgba(11,28,53,.98) 58%,rgba(14,37,70,.98));
  box-shadow:var(--lf-r-shadow);
}
body.lf-theme-dark .lf-once-overview::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-55px;
  top:-90px;
  width:300px;
  height:300px;
  border-radius:50%;
  border:1px solid rgba(73,170,248,.13);
  box-shadow:0 0 0 36px rgba(73,170,248,.025),0 0 0 76px rgba(34,223,174,.018);
}
body.lf-theme-dark .lf-once-overview__main{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
}
body.lf-theme-dark .lf-once-overview__identity{min-width:0;}
body.lf-theme-dark .lf-once-overview__eyebrow{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
body.lf-theme-dark .lf-once-overview__round,
body.lf-theme-dark .lf-once-overview__status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:30px;
  padding:6px 11px;
  border-radius:999px;
  border:1px solid rgba(133,181,226,.18);
  background:rgba(4,20,35,.48);
  color:#d6e5f5;
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body.lf-theme-dark .lf-once-overview__status.is-open{
  color:#75f0ca;
  border-color:rgba(34,223,174,.30);
  background:rgba(16,119,91,.18);
}
body.lf-theme-dark .lf-once-overview__status.is-live{
  color:#8cc8ff;
  border-color:rgba(73,170,248,.31);
  background:rgba(47,122,196,.17);
}
body.lf-theme-dark .lf-once-overview__status-dot{
  width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor;
}
body.lf-theme-dark .lf-once-overview__title{
  margin:0;
  max-width:760px;
  color:#fff;
  font-size:clamp(1.35rem,2.3vw,2.05rem);
  font-weight:900;
  letter-spacing:-.035em;
  line-height:1.08;
}
body.lf-theme-dark .lf-once-overview__subtitle{
  color:#9fb5cb;
  margin-top:8px;
  font-size:.9rem;
}
body.lf-theme-dark .lf-once-overview__countdown{
  flex:0 0 auto;
  min-width:220px;
  padding:13px 16px;
  border:1px solid rgba(73,170,248,.22);
  border-radius:17px;
  background:linear-gradient(180deg,rgba(8,28,48,.72),rgba(8,22,39,.84));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
body.lf-theme-dark .lf-once-overview__countdown::before{
  content:"\f017";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  color:var(--lf-r-green);
  margin-right:8px;
  font-size:.9rem;
}
body.lf-theme-dark .lf-once-overview__countdown-label{
  color:#8ca4be;
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.075em;
  font-weight:800;
}
body.lf-theme-dark .lf-once-overview__countdown strong{
  display:block;
  margin-top:2px;
  color:#fff;
  font-size:1.28rem;
  line-height:1;
  letter-spacing:-.025em;
}
body.lf-theme-dark .lf-once-overview__meta{
  margin-top:16px;
  padding-top:13px;
  border-top:1px solid rgba(118,171,218,.10);
}
body.lf-theme-dark .lf-once-overview__badges{display:flex;flex-wrap:wrap;gap:7px;}
body.lf-theme-dark .lf-once-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  color:#b8cbe0;
  border:1px solid rgba(124,177,222,.15);
  background:rgba(5,20,36,.42);
  font-size:.68rem;
  font-weight:750;
}
body.lf-theme-dark .lf-once-chip i{color:#74bfff;}
body.lf-theme-dark .lf-once-chip--private{color:#e7ca80;border-color:rgba(232,188,78,.21);background:rgba(132,94,15,.12);}
body.lf-theme-dark .lf-once-chip--private i{color:#efc552;}

/* SELECTOR JORNADA EN JUEGO / EDICIÓN -------------------- */
body.lf-theme-dark .lf-lineup-switcher{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
  margin-bottom:13px;
}
body.lf-theme-dark .lf-lineup-switcher__item{
  position:relative;
  min-height:84px;
  display:grid;
  grid-template-columns:46px 1fr auto;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(104,174,224,.18);
  background:linear-gradient(135deg,rgba(13,35,58,.96),rgba(10,27,47,.98));
  color:#fff;
  text-decoration:none;
  box-shadow:0 9px 24px rgba(0,0,0,.11);
  overflow:hidden;
  transition:.18s ease;
}
body.lf-theme-dark .lf-lineup-switcher__item::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:transparent;
}
body.lf-theme-dark .lf-lineup-switcher__item:hover{
  transform:translateY(-1px);
  border-color:rgba(77,173,239,.36);
}
body.lf-theme-dark .lf-lineup-switcher__item.is-active{
  border-color:rgba(69,188,240,.42);
  background:linear-gradient(135deg,rgba(12,47,75,.98),rgba(10,35,65,.98));
}
body.lf-theme-dark .lf-lineup-switcher__item--live.is-active::before{background:var(--lf-r-green);}
body.lf-theme-dark .lf-lineup-switcher__item--edit.is-active::before{background:var(--lf-r-blue);}
body.lf-theme-dark .lf-lineup-switcher__icon{
  width:46px;height:46px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(73,170,248,.09);
  border:1px solid rgba(73,170,248,.15);
  color:#80c5ff;
  font-size:1rem;
}
body.lf-theme-dark .lf-lineup-switcher__item--live .lf-lineup-switcher__icon{color:#51e7bc;background:rgba(34,223,174,.09);border-color:rgba(34,223,174,.15);}
body.lf-theme-dark .lf-lineup-switcher__copy{min-width:0;}
body.lf-theme-dark .lf-lineup-switcher__eyebrow{
  display:block;
  color:#7f9bb7;
  font-size:.63rem;
  font-weight:850;
  letter-spacing:.075em;
  text-transform:uppercase;
  margin-bottom:2px;
}
body.lf-theme-dark .lf-lineup-switcher__copy strong{font-size:1.3rem;line-height:1;color:#fff;margin-right:5px;}
body.lf-theme-dark .lf-lineup-switcher__copy small{color:#a8bdd2;font-size:.76rem;}
body.lf-theme-dark .lf-lineup-switcher__action{color:#7aa3c8;font-size:.72rem;font-weight:800;white-space:nowrap;}
body.lf-theme-dark .lf-lineup-switcher__item:hover .lf-lineup-switcher__action{color:#dcefff;}

/* MÓDULO ALINEACIÓN -------------------------------------- */
body.lf-theme-dark .lf-lineup-pro{
  overflow:visible !important;
  border-color:rgba(62,183,208,.24) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.19) !important;
}
body.lf-theme-dark .lf-torneo-lineup-body{padding:0 !important;overflow:visible;}
body.lf-theme-dark .lf-lineup-toolbar{
  position:relative;
  z-index:30;
  padding:17px 19px 13px;
  background:
    linear-gradient(180deg,rgba(15,39,64,.98),rgba(10,29,49,.98));
  border-bottom:1px solid rgba(109,177,220,.14);
  border-radius:23px 23px 0 0;
}
body.lf-theme-dark .lf-lineup-toolbar__kicker{
  color:#7090ad;
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.10em;
  text-transform:uppercase;
}
body.lf-theme-dark .lf-lineup-toolbar__heading{display:flex;align-items:center;gap:10px;margin-top:2px;}
body.lf-theme-dark .lf-lineup-toolbar__heading h2{
  margin:0;
  color:#f7fbff;
  font-size:1.32rem;
  font-weight:900;
  letter-spacing:-.025em;
}
body.lf-theme-dark .lf-lineup-toolbar__state{
  display:inline-flex;align-items:center;gap:6px;
  color:#abc0d5;
  font-size:.7rem;
  font-weight:750;
}
body.lf-theme-dark .lf-lineup-toolbar__state span{width:7px;height:7px;border-radius:50%;background:#73a9d5;box-shadow:0 0 10px currentColor;}
body.lf-theme-dark .lf-lineup-toolbar__state.is-open{color:#7cecc9;}
body.lf-theme-dark .lf-lineup-toolbar__state.is-open span{background:var(--lf-r-green);}

body.lf-theme-dark .lf-lineup-toolbar__stats{
  display:grid;
  grid-template-columns:1.25fr 1fr .8fr;
  gap:0;
  margin-top:13px;
  overflow:visible;
  border:1px solid rgba(112,175,218,.13);
  border-radius:16px;
  background:rgba(3,16,29,.28);
}
body.lf-theme-dark .lf-lineup-tech{
  position:relative;
  min-height:64px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:10px 15px;
  border-right:1px solid rgba(112,175,218,.11);
}
body.lf-theme-dark .lf-lineup-tech:last-child{border-right:0;}
body.lf-theme-dark .lf-lineup-tech__label{
  color:#7893ad;
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.lf-theme-dark .lf-lineup-tech strong{
  color:#f5faff;
  font-size:1.12rem;
  line-height:1.15;
  margin-top:2px;
}
body.lf-theme-dark .lf-lineup-tech__edit-btn{
  width:31px;height:31px;border-radius:10px;
  border:1px solid rgba(93,177,229,.20);
  background:rgba(58,132,191,.12);
  color:#93caff;
}
body.lf-theme-dark .lf-lineup-tech__edit-btn:hover{border-color:rgba(34,223,174,.42);color:#6ae8c3;background:rgba(34,223,174,.10);}

body.lf-theme-dark .lf-pitch-shell{
  padding:15px 16px 6px;
  background:linear-gradient(180deg,rgba(5,20,35,.18),rgba(4,16,28,.38));
}
/* NO tocamos .lf-pitch ni sus hijos: conservar campo actual */

body.lf-theme-dark .lf-lineup-savebar{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:9px;
  padding:13px 16px 17px;
  border-radius:0 0 23px 23px;
  background:rgba(4,17,30,.48);
}
body.lf-theme-dark .btn-lf{
  border:0 !important;
  border-radius:13px !important;
  background:linear-gradient(135deg,#26e1af,#10bd8d) !important;
  color:#05231c !important;
  font-weight:900 !important;
  box-shadow:0 9px 24px rgba(22,206,154,.18);
}
body.lf-theme-dark .btn-lf:hover{transform:translateY(-1px);filter:brightness(1.035);}
body.lf-theme-dark .btn-lf-outline{
  border-color:rgba(103,177,225,.25) !important;
  background:rgba(15,43,68,.45) !important;
  color:#d4e6f6 !important;
  border-radius:13px !important;
}
body.lf-theme-dark .lf-lineup-savebar__note{color:#718ba3 !important;font-size:.7rem;}

/* ACCESOS LATERALES -------------------------------------- */
body.lf-theme-dark .lf-access-grid--torneo-side{
  gap:10px;
}
body.lf-theme-dark .lf-access-card{
  position:relative;
  min-height:76px;
  display:grid;
  grid-template-columns:44px 1fr auto;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  text-decoration:none;
  border-radius:17px;
  border:1px solid rgba(108,174,220,.15);
  background:linear-gradient(135deg,rgba(15,37,61,.94),rgba(10,28,48,.98));
  box-shadow:0 8px 22px rgba(0,0,0,.10);
  transition:.18s ease;
}
body.lf-theme-dark .lf-access-card:hover{
  transform:translateY(-1px);
  border-color:rgba(47,204,184,.34);
  background:linear-gradient(135deg,rgba(17,48,72,.98),rgba(10,34,55,.98));
}
body.lf-theme-dark .lf-access-card__icon{
  width:44px;height:44px;border-radius:13px;
  display:grid;place-items:center;
  background:linear-gradient(145deg,rgba(35,214,170,.12),rgba(63,149,236,.08));
  border:1px solid rgba(42,202,181,.15);
  color:#55dcb9;
  font-size:.95rem;
}
body.lf-theme-dark .lf-access-card__title{color:#f0f6fc;font-size:.82rem;font-weight:850;}
body.lf-theme-dark .lf-access-card__sub{color:#7792ad;font-size:.67rem;line-height:1.25;margin-top:2px;}
body.lf-theme-dark .lf-access-card__count{color:#75a7cf;font-weight:850;font-size:.82rem;}

/* FORM CONTROLS ------------------------------------------ */
body.lf-theme-dark .form-control,
body.lf-theme-dark .form-select{
  background-color:rgba(8,26,44,.88) !important;
  border-color:rgba(110,175,220,.17) !important;
  color:#eaf4fe !important;
  border-radius:13px !important;
  min-height:44px;
  box-shadow:none !important;
}
body.lf-theme-dark .form-control:focus,
body.lf-theme-dark .form-select:focus{
  border-color:rgba(34,223,174,.48) !important;
  box-shadow:0 0 0 3px rgba(34,223,174,.08) !important;
}

/* MOBILE ------------------------------------------------- */
@media (max-width: 991.98px){
  body.lf-theme-dark .lf-navbar-top{min-height:66px;}
  body.lf-theme-dark .lf-brand-copy{display:none !important;}
  body.lf-theme-dark .lf-brand-logo{width:42px !important;height:42px !important;}
  body.lf-theme-dark .lf-once-overview{padding:16px 16px 12px;border-radius:20px;}
  body.lf-theme-dark .lf-once-overview__main{display:block;}
  body.lf-theme-dark .lf-once-overview__countdown{margin-top:13px;min-width:0;width:100%;}
  body.lf-theme-dark .lf-once-overview__meta{margin-top:12px;padding-top:10px;}
}

@media (max-width: 767.98px){
  body.lf-theme-dark main{padding-top:16px !important;}
  body.lf-theme-dark .container{padding-left:12px;padding-right:12px;}
  body.lf-theme-dark .lf-navbar .container{padding-left:10px;padding-right:10px;}
  body.lf-theme-dark .lf-navbar-top{gap:7px;}
  body.lf-theme-dark .lf-mobile-shortcuts{gap:5px !important;}
  body.lf-theme-dark .lf-mobile-shortcut{
    min-width:0 !important;
    min-height:48px !important;
    padding:7px 9px !important;
    border-radius:14px !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut span{font-size:.58rem !important;}
  body.lf-theme-dark .lf-toggler{width:48px;height:48px;border-radius:14px !important;}

  body.lf-theme-dark .lf-once-overview__title{font-size:1.18rem;}
  body.lf-theme-dark .lf-once-overview__subtitle{font-size:.78rem;}
  body.lf-theme-dark .lf-once-overview__round,
  body.lf-theme-dark .lf-once-overview__status{min-height:26px;padding:4px 8px;font-size:.62rem;}
  body.lf-theme-dark .lf-once-overview__countdown{padding:11px 13px;border-radius:14px;}
  body.lf-theme-dark .lf-once-overview__countdown strong{font-size:1.12rem;}
  body.lf-theme-dark .lf-once-chip{font-size:.59rem;padding:4px 8px;min-height:25px;}

  body.lf-theme-dark .lf-lineup-switcher{grid-template-columns:1fr;gap:7px;margin-bottom:9px;}
  body.lf-theme-dark .lf-lineup-switcher__item{min-height:67px;grid-template-columns:38px 1fr auto;padding:10px 11px;border-radius:15px;}
  body.lf-theme-dark .lf-lineup-switcher__icon{width:38px;height:38px;border-radius:11px;}
  body.lf-theme-dark .lf-lineup-switcher__copy strong{font-size:1.08rem;}
  body.lf-theme-dark .lf-lineup-switcher__copy small{font-size:.68rem;}
  body.lf-theme-dark .lf-lineup-switcher__action{font-size:0;width:28px;}
  body.lf-theme-dark .lf-lineup-switcher__action i{font-size:.76rem;}

  body.lf-theme-dark .lf-lineup-toolbar{padding:12px 11px 9px;border-radius:18px 18px 0 0;}
  body.lf-theme-dark .lf-lineup-toolbar__kicker{display:none;}
  body.lf-theme-dark .lf-lineup-toolbar__heading h2{font-size:1.05rem;}
  body.lf-theme-dark .lf-lineup-toolbar__state{font-size:.62rem;}
  body.lf-theme-dark .lf-lineup-toolbar__stats{margin-top:9px;border-radius:13px;}
  body.lf-theme-dark .lf-lineup-tech{min-height:53px;padding:7px 9px;}
  body.lf-theme-dark .lf-lineup-tech__label{font-size:.54rem;}
  body.lf-theme-dark .lf-lineup-tech strong{font-size:.91rem;}
  body.lf-theme-dark .lf-lineup-tech__edit-btn{width:28px;height:28px;border-radius:9px;}
  body.lf-theme-dark .lf-pitch-shell{padding:8px 0 3px;}
  body.lf-theme-dark .lf-lineup-savebar{padding:10px 10px 13px;gap:7px;}

  body.lf-theme-dark .lf-access-card{min-height:64px;padding:10px 11px;grid-template-columns:38px 1fr auto;}
  body.lf-theme-dark .lf-access-card__icon{width:38px;height:38px;border-radius:11px;}
  body.lf-theme-dark .lf-access-card__sub{display:none;}
}

@media (prefers-reduced-motion: reduce){
  body.lf-theme-dark .lf-mobile-shortcut,
  body.lf-theme-dark .lf-lineup-switcher__item,
  body.lf-theme-dark .lf-access-card,
  body.lf-theme-dark .btn-lf{transition:none !important;}
}

/* =========================================================
   V1.1 · HERO MÁS COMPACTO Y JERARQUÍA VISUAL
   ========================================================= */
body.lf-theme-dark .lf-once-overview{
  padding:20px 22px 14px;
}
body.lf-theme-dark .lf-once-overview__main{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
}
body.lf-theme-dark .lf-once-overview__identity{
  align-self:center;
}
body.lf-theme-dark .lf-once-overview__eyebrow{
  margin-bottom:8px;
}
body.lf-theme-dark .lf-once-overview__subtitle{
  margin-top:6px;
}
body.lf-theme-dark .lf-once-overview__countdown{
  min-width:250px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(7,29,48,.92),rgba(9,40,57,.78));
  border:1px solid rgba(34,223,174,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 10px 26px rgba(0,0,0,.10);
}
body.lf-theme-dark .lf-once-overview__countdown::before{display:none;}
body.lf-theme-dark .lf-once-overview__countdown-icon{
  flex:0 0 38px;
  width:38px;
  height:38px;
  border-radius:12px;
  display:grid;
  place-items:center;
  color:#32e5b7;
  background:rgba(34,223,174,.10);
  border:1px solid rgba(34,223,174,.18);
  box-shadow:0 0 18px rgba(34,223,174,.05);
}
body.lf-theme-dark .lf-once-overview__countdown-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
body.lf-theme-dark .lf-once-overview__countdown-label{
  color:#87a5be;
  font-size:.64rem;
  letter-spacing:.075em;
}
body.lf-theme-dark .lf-once-overview__countdown strong{
  margin:0;
  font-size:1.18rem;
  letter-spacing:-.02em;
}
body.lf-theme-dark .lf-once-overview__meta{
  margin-top:12px;
  padding-top:11px;
}
body.lf-theme-dark .lf-once-overview__badges{
  gap:6px;
}
body.lf-theme-dark .lf-once-chip{
  background:linear-gradient(180deg,rgba(8,28,46,.58),rgba(5,21,36,.58));
}

/* Más contraste entre bloques para evitar monotonía */
body.lf-theme-dark .lf-lineup-switcher__item--live{
  background:linear-gradient(135deg,rgba(7,52,59,.92),rgba(8,30,50,.98));
}
body.lf-theme-dark .lf-lineup-switcher__item--edit{
  background:linear-gradient(135deg,rgba(10,42,72,.95),rgba(9,29,52,.98));
}
body.lf-theme-dark .lf-lineup-pro{
  background:linear-gradient(180deg,rgba(12,33,54,.98),rgba(7,23,39,.99)) !important;
}
body.lf-theme-dark .lf-access-card:nth-child(2n){
  background:linear-gradient(135deg,rgba(13,38,66,.96),rgba(9,27,47,.98));
}
body.lf-theme-dark .lf-access-card:nth-child(2n+1){
  background:linear-gradient(135deg,rgba(11,43,56,.82),rgba(9,28,48,.98));
}

@media (max-width:991.98px){
  body.lf-theme-dark .lf-once-overview__main{
    grid-template-columns:1fr;
    gap:11px;
  }
  body.lf-theme-dark .lf-once-overview__countdown{
    margin-top:0;
    width:100%;
    min-width:0;
  }
}

@media (max-width:767.98px){
  body.lf-theme-dark .lf-once-overview{
    padding:14px 13px 11px;
  }
  body.lf-theme-dark .lf-once-overview__countdown{
    display:grid;
    grid-template-columns:34px 1fr;
    gap:10px;
    padding:9px 10px;
    min-height:54px;
  }
  body.lf-theme-dark .lf-once-overview__countdown-icon{
    width:34px;
    height:34px;
    border-radius:10px;
  }
  body.lf-theme-dark .lf-once-overview__countdown-label{
    font-size:.56rem;
  }
  body.lf-theme-dark .lf-once-overview__countdown strong{
    font-size:1.02rem;
  }
  body.lf-theme-dark .lf-once-overview__meta{
    margin-top:9px;
    padding-top:8px;
  }
}

/* =========================================================
   V1.2 · CABECERA PREMIUM + ACENTOS POR SECCIÓN
   ========================================================= */

/* La navegación principal se percibe como una sola barra, no como 5 cajas aisladas. */
body.lf-theme-dark .lf-navbar{
  background:linear-gradient(180deg,rgba(4,15,27,.975),rgba(5,18,31,.94)) !important;
  border-bottom-color:rgba(75,171,211,.18) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22);
}
body.lf-theme-dark .lf-navbar-top{
  min-height:76px;
  align-items:center;
}
body.lf-theme-dark .navbar-brand{
  position:relative;
  min-width:245px;
  padding:5px 12px 5px 5px;
  margin-right:auto !important;
}
body.lf-theme-dark .navbar-brand::before{
  content:"";
  position:absolute;
  left:0;
  width:56px;
  height:56px;
  border-radius:18px;
  background:radial-gradient(circle at 35% 28%,rgba(34,223,174,.16),rgba(15,56,66,.08) 64%,transparent 66%);
  border:1px solid rgba(34,223,174,.12);
  pointer-events:none;
}
body.lf-theme-dark .lf-brand-logo{
  position:relative;
  z-index:1;
  width:52px !important;
  height:52px !important;
  padding:3px;
  filter:drop-shadow(0 6px 12px rgba(0,0,0,.28));
}
body.lf-theme-dark .lf-brand-title{
  font-size:1.02rem;
  letter-spacing:-.025em;
}
body.lf-theme-dark .lf-brand-subtitle{
  font-size:.65rem;
  letter-spacing:.01em;
}

body.lf-theme-dark .lf-mobile-shortcuts{
  display:flex !important;
  align-items:center;
  gap:4px !important;
  padding:5px;
  border-radius:20px;
  border:1px solid rgba(114,174,220,.14);
  background:rgba(7,24,42,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 10px 28px rgba(0,0,0,.10);
}
body.lf-theme-dark .lf-mobile-shortcut{
  --nav-accent:#22dfae;
  --nav-soft:rgba(34,223,174,.12);
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:104px !important;
  min-height:48px !important;
  padding:7px 12px !important;
  border:1px solid transparent !important;
  border-radius:15px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#a9bfd5 !important;
}
body.lf-theme-dark .lf-mobile-shortcut::before{display:none !important;}
body.lf-theme-dark .lf-mobile-shortcut i{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  flex:0 0 29px;
  border-radius:9px;
  color:var(--nav-accent) !important;
  background:var(--nav-soft);
  border:1px solid color-mix(in srgb,var(--nav-accent) 22%,transparent);
  font-size:.82rem;
  transition:.18s ease;
}
body.lf-theme-dark .lf-mobile-shortcut span{
  font-size:.68rem !important;
  font-weight:850;
  letter-spacing:.035em;
}
body.lf-theme-dark .lf-mobile-shortcut--green{--nav-accent:#28e1ae;--nav-soft:rgba(40,225,174,.10);}
body.lf-theme-dark .lf-mobile-shortcut--blue{--nav-accent:#6dbbff;--nav-soft:rgba(81,164,238,.11);}
body.lf-theme-dark .lf-mobile-shortcut--violet{--nav-accent:#a68bff;--nav-soft:rgba(140,111,245,.12);}
body.lf-theme-dark .lf-mobile-shortcut--cyan{--nav-accent:#39d8e8;--nav-soft:rgba(57,216,232,.10);}
body.lf-theme-dark .lf-mobile-shortcut:hover{
  transform:none !important;
  color:#eef7ff !important;
  background:rgba(255,255,255,.03) !important;
}
body.lf-theme-dark .lf-mobile-shortcut:hover i{transform:translateY(-1px);}
body.lf-theme-dark .lf-mobile-shortcut.is-active{
  color:#fff !important;
  border-color:color-mix(in srgb,var(--nav-accent) 34%,transparent) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--nav-accent) 12%,rgba(10,29,48,.96)),rgba(8,27,45,.98)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 6px 18px color-mix(in srgb,var(--nav-accent) 8%,transparent) !important;
}
body.lf-theme-dark .lf-mobile-shortcut.is-active i{
  color:#031b19 !important;
  background:var(--nav-accent);
  border-color:transparent;
  box-shadow:0 5px 15px color-mix(in srgb,var(--nav-accent) 20%,transparent);
}

body.lf-theme-dark .lf-toggler{
  position:relative;
  margin-left:7px;
  width:50px;
  height:50px;
  border-radius:16px !important;
  border-color:rgba(240,187,79,.20) !important;
  background:linear-gradient(180deg,rgba(37,34,35,.76),rgba(16,28,42,.94)) !important;
}
body.lf-theme-dark .lf-toggler:hover{
  border-color:rgba(240,187,79,.38) !important;
  background:linear-gradient(180deg,rgba(62,46,32,.70),rgba(17,31,45,.96)) !important;
}
body.lf-theme-dark .lf-toggler__line{background:#dfeaf5 !important;}

/* Menú desplegado: tarjeta clara y ordenada, en lugar de lista suelta. */
body.lf-theme-dark .lf-mobile-menu-panel{
  margin-top:8px;
  padding:10px;
  border-radius:18px;
  border:1px solid rgba(118,171,218,.14);
  background:linear-gradient(180deg,rgba(10,29,48,.985),rgba(6,21,37,.995));
  box-shadow:0 20px 45px rgba(0,0,0,.28);
}
body.lf-theme-dark .lf-mobile-menu-panel .nav-link{
  border-radius:12px;
  padding:10px 12px;
  color:#b9cce0 !important;
}
body.lf-theme-dark .lf-mobile-menu-panel .nav-link:hover,
body.lf-theme-dark .lf-mobile-menu-panel .nav-link.active{
  background:rgba(77,170,248,.08);
  color:#fff !important;
}
body.lf-theme-dark .lf-mobile-menu-panel .lf-menu-admin-link i{color:#f0bb4f;}
body.lf-theme-dark .lf-mobile-menu-panel .dropdown-menu{
  border:1px solid rgba(118,171,218,.14) !important;
  background:#0a1d31 !important;
  border-radius:14px !important;
  box-shadow:0 18px 35px rgba(0,0,0,.30);
}

/* Iconos de reglas: no todo azul. */
body.lf-theme-dark .lf-once-overview__badges .lf-once-chip:nth-child(1) i{color:#f1c75b !important;}
body.lf-theme-dark .lf-once-overview__badges .lf-once-chip:nth-child(2) i{color:#69b8ff !important;}
body.lf-theme-dark .lf-once-overview__badges .lf-once-chip:nth-child(3) i{color:#a88cff !important;}
body.lf-theme-dark .lf-once-overview__badges .lf-once-chip:nth-child(4) i{color:#49dfbd !important;}
body.lf-theme-dark .lf-once-overview__badges .lf-once-chip:nth-child(5) i{color:#ff8a73 !important;}

/* Accesos laterales: cada familia visual tiene su acento. */
body.lf-theme-dark .lf-access-card:nth-child(6n+1) .lf-access-card__icon{color:#35e0c0;background:rgba(36,209,172,.10);border-color:rgba(36,209,172,.18);}
body.lf-theme-dark .lf-access-card:nth-child(6n+2) .lf-access-card__icon{color:#68baff;background:rgba(74,161,239,.10);border-color:rgba(74,161,239,.18);}
body.lf-theme-dark .lf-access-card:nth-child(6n+3) .lf-access-card__icon{color:#a990ff;background:rgba(139,115,242,.10);border-color:rgba(139,115,242,.18);}
body.lf-theme-dark .lf-access-card:nth-child(6n+4) .lf-access-card__icon{color:#f1bb55;background:rgba(237,176,68,.10);border-color:rgba(237,176,68,.18);}
body.lf-theme-dark .lf-access-card:nth-child(6n+5) .lf-access-card__icon{color:#55d6ee;background:rgba(75,198,224,.10);border-color:rgba(75,198,224,.18);}
body.lf-theme-dark .lf-access-card:nth-child(6n+6) .lf-access-card__icon{color:#ff8478;background:rgba(236,104,94,.10);border-color:rgba(236,104,94,.18);}

/* En móvil la barra sigue siendo cómoda, pero visualmente unificada. */
@media (max-width: 991.98px){
  body.lf-theme-dark .navbar-brand{min-width:auto;padding-right:5px;}
  body.lf-theme-dark .navbar-brand::before{width:46px;height:46px;border-radius:14px;}
  body.lf-theme-dark .lf-brand-logo{width:42px !important;height:42px !important;}
  body.lf-theme-dark .lf-mobile-shortcuts{
    flex:1 1 auto;
    min-width:0;
    gap:2px !important;
    padding:4px;
    border-radius:16px;
  }
  body.lf-theme-dark .lf-mobile-shortcut{
    flex:1 1 0;
    min-width:0 !important;
    min-height:46px !important;
    padding:5px 4px !important;
    gap:4px;
    border-radius:12px !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut i{
    width:25px;height:25px;flex-basis:25px;border-radius:8px;font-size:.72rem;
  }
  body.lf-theme-dark .lf-mobile-shortcut span{font-size:.54rem !important;white-space:nowrap;}
  body.lf-theme-dark .lf-toggler{width:46px;height:46px;margin-left:2px;border-radius:14px !important;}
}

@media (max-width: 575.98px){
  body.lf-theme-dark .lf-navbar .container{padding-left:7px;padding-right:7px;}
  body.lf-theme-dark .lf-navbar-top{gap:5px;}
  body.lf-theme-dark .lf-mobile-shortcuts{gap:1px !important;padding:3px;}
  body.lf-theme-dark .lf-mobile-shortcut{min-height:44px !important;}
  body.lf-theme-dark .lf-mobile-shortcut i{display:none;}
  body.lf-theme-dark .lf-mobile-shortcut span{font-size:.52rem !important;letter-spacing:.02em;}
}

/* =========================================================
   V1.3 · CABECERA MINIMAL + SUPERFICIES SIN MARCOS
   ========================================================= */

/* Navbar: menos caja, más aire. */
body.lf-theme-dark .lf-navbar{
  background:rgba(4,15,27,.965) !important;
  border-bottom:0 !important;
  box-shadow:0 12px 32px rgba(0,0,0,.16) !important;
}
body.lf-theme-dark .lf-navbar-top{
  min-height:78px;
  gap:16px;
}
body.lf-theme-dark .navbar-brand{
  min-width:250px;
  padding:3px 8px 3px 0 !important;
  background:transparent !important;
}
body.lf-theme-dark .navbar-brand::before{display:none !important;}
body.lf-theme-dark .lf-brand-logo{
  width:62px !important;
  height:62px !important;
  padding:0 !important;
  filter:drop-shadow(0 7px 15px rgba(0,0,0,.30)) drop-shadow(0 0 14px rgba(34,223,174,.12));
}
body.lf-theme-dark .lf-brand-title{
  font-size:1.05rem;
  font-weight:900;
}
body.lf-theme-dark .lf-brand-subtitle{
  font-size:.65rem;
  color:#8198b0 !important;
}

/* Menú principal: desaparece el contenedor/borde exterior. */
body.lf-theme-dark .lf-mobile-shortcuts{
  gap:4px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.lf-theme-dark .lf-mobile-shortcut{
  position:relative;
  min-width:102px !important;
  min-height:50px !important;
  padding:8px 13px !important;
  gap:7px;
  border:0 !important;
  border-radius:12px !important;
  background:transparent !important;
  color:#8fa5bc !important;
  box-shadow:none !important;
  transition:background .16s ease,color .16s ease,transform .16s ease !important;
}
body.lf-theme-dark .lf-mobile-shortcut i{
  width:auto !important;
  height:auto !important;
  flex:0 0 auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  font-size:.82rem;
  color:var(--nav-accent) !important;
  box-shadow:none !important;
}
body.lf-theme-dark .lf-mobile-shortcut span{
  font-size:.68rem !important;
  font-weight:850;
}
body.lf-theme-dark .lf-mobile-shortcut:hover{
  background:rgba(255,255,255,.035) !important;
  color:#eaf3fc !important;
}
body.lf-theme-dark .lf-mobile-shortcut.is-active{
  color:#fff !important;
  border:0 !important;
  background:linear-gradient(180deg,rgba(34,223,174,.105),rgba(34,223,174,.045)) !important;
  box-shadow:none !important;
}
body.lf-theme-dark .lf-mobile-shortcut.is-active::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:3px;
  height:2px;
  border-radius:999px;
  background:var(--nav-accent);
  box-shadow:0 0 11px color-mix(in srgb,var(--nav-accent) 38%,transparent);
}
body.lf-theme-dark .lf-mobile-shortcut.is-active i{
  color:var(--nav-accent) !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Hamburguesa: botón limpio, sin marco. */
body.lf-theme-dark .lf-toggler{
  width:48px;
  height:48px;
  margin-left:8px;
  border:0 !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.035) !important;
  box-shadow:none !important;
}
body.lf-theme-dark .lf-toggler:hover{
  background:rgba(255,255,255,.07) !important;
}
body.lf-theme-dark .lf-toggler__line{background:#d7e3ef !important;}

/* Hero: profundidad por fondo, no por borde. */
body.lf-theme-dark .lf-once-overview{
  border:0 !important;
  border-radius:24px !important;
  background:
    radial-gradient(520px 260px at 92% 8%,rgba(54,142,228,.17),transparent 68%),
    radial-gradient(420px 240px at -4% 110%,rgba(26,215,164,.09),transparent 66%),
    linear-gradient(135deg,#0c263f 0%,#0b2039 58%,#102b4b 100%) !important;
  box-shadow:0 20px 50px rgba(0,0,0,.20) !important;
}
body.lf-theme-dark .lf-once-overview::after{
  opacity:.55;
  border-color:rgba(85,166,226,.08) !important;
}
body.lf-theme-dark .lf-once-overview__round,
body.lf-theme-dark .lf-once-overview__status{
  border:0 !important;
  background:rgba(3,18,31,.50) !important;
}
body.lf-theme-dark .lf-once-overview__status.is-open{
  background:rgba(18,130,99,.18) !important;
}
body.lf-theme-dark .lf-once-overview__status.is-live{
  background:rgba(47,122,196,.16) !important;
}

/* Countdown integrado: sin borde, más editorial. */
body.lf-theme-dark .lf-once-overview__countdown{
  border:0 !important;
  border-radius:15px !important;
  background:rgba(3,19,34,.46) !important;
  box-shadow:none !important;
}
body.lf-theme-dark .lf-once-overview__countdown-icon{
  border:0 !important;
  background:rgba(34,223,174,.09) !important;
}
body.lf-theme-dark .lf-once-overview__meta{
  border-top:0 !important;
}
body.lf-theme-dark .lf-once-chip{
  border:0 !important;
  background:rgba(4,19,34,.46) !important;
  color:#b7c9dc !important;
}
body.lf-theme-dark .lf-once-chip--private{
  background:rgba(154,107,15,.18) !important;
  color:#e8cd84 !important;
}

/* Las tarjetas principales dejan de depender de líneas visibles. */
body.lf-theme-dark .lf-card,
body.lf-theme-dark .card.lf-card,
body.lf-theme-dark .lf-dash-card{
  border:0 !important;
  box-shadow:0 14px 36px rgba(0,0,0,.16) !important;
}
body.lf-theme-dark .lf-card-header,
body.lf-theme-dark .card-header.lf-card-header{
  border-bottom:0 !important;
}

@media (max-width: 991.98px){
  body.lf-theme-dark .lf-navbar-top{min-height:72px;gap:6px;}
  body.lf-theme-dark .navbar-brand{min-width:auto;padding-right:3px !important;}
  body.lf-theme-dark .lf-brand-copy{display:none !important;}
  body.lf-theme-dark .lf-brand-logo{
    width:52px !important;
    height:52px !important;
  }
  body.lf-theme-dark .lf-mobile-shortcuts{
    flex:1 1 auto;
    min-width:0;
    gap:0 !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut{
    flex:1 1 0;
    min-width:0 !important;
    min-height:48px !important;
    padding:6px 4px !important;
    gap:4px;
  }
  body.lf-theme-dark .lf-mobile-shortcut i{
    display:block !important;
    font-size:.72rem !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut span{
    font-size:.53rem !important;
    white-space:nowrap;
  }
  body.lf-theme-dark .lf-mobile-shortcut.is-active::after{
    left:10px;
    right:10px;
    bottom:1px;
  }
  body.lf-theme-dark .lf-toggler{
    width:44px;
    height:44px;
    margin-left:1px;
  }
}

@media (max-width: 575.98px){
  body.lf-theme-dark .lf-navbar .container{padding-left:8px;padding-right:8px;}
  body.lf-theme-dark .lf-navbar-top{gap:3px;}
  body.lf-theme-dark .lf-brand-logo{width:48px !important;height:48px !important;}
  body.lf-theme-dark .lf-mobile-shortcut{padding-left:2px !important;padding-right:2px !important;}
  body.lf-theme-dark .lf-mobile-shortcut i{display:none !important;}
  body.lf-theme-dark .lf-mobile-shortcut span{font-size:.50rem !important;}
  body.lf-theme-dark .lf-toggler{width:42px;height:42px;}
}

/* =========================================================
   V1.4 · APP PREMIUM · MENOS CAJAS, MÁS JERARQUÍA
   ========================================================= */

/* Cabecera: iconografía siempre visible y menú tipo control. */
body.lf-theme-dark .lf-toggler__inner--control{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
}
body.lf-theme-dark .lf-toggler__inner--control i{
  font-size:1.05rem;
  color:#dbe8f5;
  opacity:.92;
  transition:transform .16s ease,color .16s ease;
}
body.lf-theme-dark .lf-toggler:hover .lf-toggler__inner--control i{
  color:#fff;
  transform:rotate(-5deg) scale(1.04);
}
body.lf-theme-dark .lf-toggler__line{display:none !important;}

/* Navegación: un poco más ligera y con iconos como señal visual. */
body.lf-theme-dark .lf-mobile-shortcut{
  border-radius:11px !important;
}
body.lf-theme-dark .lf-mobile-shortcut i{
  opacity:.92;
}
body.lf-theme-dark .lf-mobile-shortcut.is-active{
  background:color-mix(in srgb,var(--nav-accent) 7%,transparent) !important;
}
body.lf-theme-dark .lf-mobile-shortcut.is-active::after{
  height:2px;
  bottom:0;
}

/* Selector en juego / próxima: apariencia de pestaña de app, no de card. */
body.lf-theme-dark .lf-lineup-switcher{
  gap:0 !important;
  border-radius:18px;
  overflow:hidden;
  background:rgba(7,25,42,.46);
  box-shadow:0 12px 30px rgba(0,0,0,.10);
}
body.lf-theme-dark .lf-lineup-switcher__item{
  min-height:72px;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
body.lf-theme-dark .lf-lineup-switcher__item + .lf-lineup-switcher__item{
  border-left:1px solid rgba(128,181,220,.10) !important;
}
body.lf-theme-dark .lf-lineup-switcher__item::before{
  width:3px !important;
  top:14px !important;
  bottom:14px !important;
  left:0 !important;
  border-radius:0 999px 999px 0 !important;
}
body.lf-theme-dark .lf-lineup-switcher__item--live{
  background:linear-gradient(90deg,rgba(22,193,153,.065),transparent 56%) !important;
}
body.lf-theme-dark .lf-lineup-switcher__item--edit{
  background:linear-gradient(90deg,rgba(73,170,248,.065),transparent 56%) !important;
}
body.lf-theme-dark .lf-lineup-switcher__item.is-active{
  background:rgba(255,255,255,.018) !important;
}
body.lf-theme-dark .lf-lineup-switcher__icon{
  width:34px !important;
  height:34px !important;
  border:0 !important;
  border-radius:10px !important;
}

/* Once: retirar la caja exterior y dejar el campo como protagonista. */
body.lf-theme-dark .lf-lineup-pro{
  border:0 !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,rgba(13,36,58,.80),rgba(7,23,39,.52)) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.15) !important;
}
body.lf-theme-dark .lf-lineup-toolbar{
  padding:18px 19px 10px !important;
  border:0 !important;
  border-radius:22px 22px 0 0 !important;
  background:transparent !important;
}
body.lf-theme-dark .lf-lineup-toolbar__kicker{
  color:#64cbb7 !important;
  opacity:.8;
}
body.lf-theme-dark .lf-lineup-toolbar__heading h2{
  font-size:1.4rem !important;
}

/* Una banda de datos: sin contenedor dentro de contenedor. */
body.lf-theme-dark .lf-lineup-toolbar__stats{
  margin-top:12px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:visible !important;
}
body.lf-theme-dark .lf-lineup-tech{
  min-height:57px !important;
  padding:8px 14px !important;
  border-right:1px solid rgba(139,188,224,.10) !important;
}
body.lf-theme-dark .lf-lineup-tech:first-child{padding-left:0 !important;}
body.lf-theme-dark .lf-lineup-tech:last-child{
  padding-right:0 !important;
  border-right:0 !important;
}
body.lf-theme-dark .lf-lineup-tech__label{
  color:#7690a9 !important;
  font-size:.57rem !important;
}
body.lf-theme-dark .lf-lineup-tech strong{
  font-size:1.08rem !important;
}
body.lf-theme-dark .lf-lineup-tech__edit-btn{
  width:29px !important;
  height:29px !important;
  border:0 !important;
  background:rgba(74,170,248,.10) !important;
  box-shadow:none !important;
}

/* Transición al terreno: sin otra caja visual alrededor. */
body.lf-theme-dark .lf-pitch-shell{
  padding:9px 0 3px !important;
  background:transparent !important;
}
body.lf-theme-dark .lf-lineup-savebar{
  border-radius:0 0 22px 22px !important;
  background:transparent !important;
  padding-top:10px !important;
}

/* Accesos: más ligeros, con icono/typography y menos card repetitiva. */
body.lf-theme-dark .lf-access-grid--torneo-side{
  gap:3px !important;
}
body.lf-theme-dark .lf-access-card{
  min-height:67px !important;
  border:0 !important;
  border-radius:13px !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:10px 10px !important;
}
body.lf-theme-dark .lf-access-card:hover{
  transform:none !important;
  background:rgba(255,255,255,.035) !important;
}
body.lf-theme-dark .lf-access-card__icon{
  width:39px !important;
  height:39px !important;
  border:0 !important;
  border-radius:11px !important;
}
body.lf-theme-dark .lf-access-card__title{font-size:.80rem !important;}
body.lf-theme-dark .lf-access-card__sub{font-size:.64rem !important;}

/* Mobile: los iconos NO desaparecen. Menú más app-like. */
@media (max-width:575.98px){
  body.lf-theme-dark .lf-navbar-top{
    min-height:70px !important;
    gap:2px !important;
  }
  body.lf-theme-dark .lf-brand-logo{
    width:50px !important;
    height:50px !important;
  }
  body.lf-theme-dark .lf-mobile-shortcuts{
    gap:1px !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut{
    min-height:48px !important;
    padding:5px 1px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:3px !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut i{
    display:block !important;
    font-size:.70rem !important;
    line-height:1 !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut span{
    font-size:.47rem !important;
    line-height:1 !important;
  }
  body.lf-theme-dark .lf-toggler{
    width:40px !important;
    height:40px !important;
    border-radius:12px !important;
    background:rgba(255,255,255,.03) !important;
  }
  body.lf-theme-dark .lf-toggler__inner--control i{font-size:.90rem;}

  body.lf-theme-dark .lf-lineup-switcher{
    display:block !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  body.lf-theme-dark .lf-lineup-switcher__item{
    min-height:63px !important;
    border-radius:14px !important;
    margin-bottom:3px;
    background:rgba(7,27,45,.44) !important;
  }
  body.lf-theme-dark .lf-lineup-switcher__item + .lf-lineup-switcher__item{
    border-left:0 !important;
  }
  body.lf-theme-dark .lf-lineup-switcher__item--live{
    background:linear-gradient(90deg,rgba(26,184,145,.11),rgba(8,31,50,.48)) !important;
  }
  body.lf-theme-dark .lf-lineup-switcher__item--edit{
    background:linear-gradient(90deg,rgba(57,142,225,.11),rgba(8,31,50,.48)) !important;
  }

  body.lf-theme-dark .lf-lineup-pro{
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  body.lf-theme-dark .lf-lineup-toolbar{
    padding:14px 12px 7px !important;
    border-radius:0 !important;
  }
  body.lf-theme-dark .lf-lineup-toolbar__heading h2{font-size:1.12rem !important;}
  body.lf-theme-dark .lf-lineup-toolbar__stats{margin-top:9px !important;}
  body.lf-theme-dark .lf-lineup-tech{
    min-height:49px !important;
    padding:5px 9px !important;
  }
  body.lf-theme-dark .lf-lineup-tech:first-child{padding-left:0 !important;}
  body.lf-theme-dark .lf-lineup-tech:last-child{padding-right:0 !important;}
  body.lf-theme-dark .lf-lineup-tech__label{font-size:.50rem !important;}
  body.lf-theme-dark .lf-lineup-tech strong{font-size:.90rem !important;}
}


/* ==========================================================
   FASE 1.5 · MENU MORPH + STATS CON ICONOS
   ========================================================== */

/* El botón del menú cambia de sliders a cerrar usando aria-expanded de Bootstrap. */
body.lf-theme-dark .lf-toggler__inner--control{
  position:relative;
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
}
body.lf-theme-dark .lf-toggler__icon{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-size:1.12rem;
  line-height:23px;
  text-align:center;
  color:#dbe9f6;
  transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.2,1),color .22s ease;
  transform-origin:center;
}
body.lf-theme-dark .lf-toggler__icon--open{
  opacity:1;
  transform:scale(1) rotate(0deg);
}
body.lf-theme-dark .lf-toggler__icon--close{
  opacity:0;
  transform:scale(.65) rotate(-70deg);
  color:#55e1bf;
}
body.lf-theme-dark .lf-toggler[aria-expanded="true"] .lf-toggler__icon--open{
  opacity:0;
  transform:scale(.65) rotate(65deg);
}
body.lf-theme-dark .lf-toggler[aria-expanded="true"] .lf-toggler__icon--close{
  opacity:1;
  transform:scale(1) rotate(0deg);
}
body.lf-theme-dark .lf-toggler[aria-expanded="true"]{
  background:rgba(39,215,177,.08) !important;
}
body.lf-theme-dark .lf-toggler:hover .lf-toggler__icon--open,
body.lf-theme-dark .lf-toggler:focus-visible .lf-toggler__icon--open{
  color:#64e8c7;
}

/* La banda técnica gana identidad sin volver a encerrarse en mini-cards. */
body.lf-theme-dark .lf-lineup-tech__label{
  display:flex;
  align-items:center;
  gap:6px;
}
body.lf-theme-dark .lf-lineup-tech__icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
  display:inline-grid;
  place-items:center;
  border-radius:7px;
  font-size:.68rem;
  background:rgba(255,255,255,.045);
}
body.lf-theme-dark .lf-lineup-tech__icon--formation{
  color:#49dfbd;
  background:rgba(35,209,170,.10);
}
body.lf-theme-dark .lf-lineup-tech__icon--players{
  color:#69b9ff;
  background:rgba(72,158,238,.10);
}
body.lf-theme-dark .lf-lineup-tech__icon--scored{
  color:#a98dff;
  background:rgba(145,115,246,.11);
}
body.lf-theme-dark .lf-lineup-tech__icon--empty{
  color:#f3b65d;
  background:rgba(241,174,71,.10);
}

/* En desktop dejamos los iconos respirando a la izquierda, sin añadir más cajas. */
@media (min-width: 768px){
  body.lf-theme-dark .lf-lineup-tech{
    position:relative;
  }
  body.lf-theme-dark .lf-lineup-tech__label{
    letter-spacing:.045em;
  }
}

/* En móvil los iconos son un poco más pequeños para no aumentar la altura. */
@media (max-width: 767.98px){
  body.lf-theme-dark .lf-lineup-tech__label{
    gap:4px;
  }
  body.lf-theme-dark .lf-lineup-tech__icon{
    width:18px;
    height:18px;
    flex-basis:18px;
    border-radius:6px;
    font-size:.57rem;
  }
  body.lf-theme-dark .lf-toggler__icon{
    font-size:1.06rem;
  }
}

/* FASE 1.6 · iconografía de la banda de alineación */
body.lf-theme-dark .lf-lineup-tech__icon--formation{
  color:#65c5ff!important;
  background:rgba(68,163,236,.09)!important;
}
body.lf-theme-dark .lf-lineup-tech__icon--empty{
  color:#efb762!important;
  background:rgba(238,171,72,.09)!important;
}


/* ==========================================================
   FASE 1.8 · NAVEGACIÓN UN POCO MÁS LEGIBLE
   ========================================================== */
body.lf-theme-dark .lf-mobile-shortcut{
  gap:8px !important;
}
body.lf-theme-dark .lf-mobile-shortcut i{
  font-size:.92rem !important;
}
body.lf-theme-dark .lf-mobile-shortcut span{
  font-size:.73rem !important;
  letter-spacing:.035em !important;
}
@media (max-width:991.98px){
  body.lf-theme-dark .lf-mobile-shortcut i{font-size:.80rem !important;}
  body.lf-theme-dark .lf-mobile-shortcut span{font-size:.60rem !important;}
}
@media (max-width:575.98px){
  body.lf-theme-dark .lf-mobile-shortcut i{
    display:block !important;
    font-size:.76rem !important;
  }
  body.lf-theme-dark .lf-mobile-shortcut span{
    font-size:.52rem !important;
    font-weight:900 !important;
  }
}


/* =========================================================
   V2.0 · MENU TOGGLE ROBUSTO
   Un solo estado visual: controles -> cerrar.
   ========================================================= */
body.lf-theme-dark .lf-toggler__inner--control{
  position:relative !important;
  width:22px !important;
  height:22px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden;
}
body.lf-theme-dark .lf-toggler__inner--control .lf-toggler__icon{
  position:absolute !important;
  inset:0 !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  font-size:1.04rem !important;
  line-height:1 !important;
  transform-origin:center !important;
  transition:opacity .16s ease, transform .22s cubic-bezier(.2,.8,.2,1), color .16s ease !important;
}
body.lf-theme-dark .lf-toggler__icon--open{
  opacity:1 !important;
  visibility:visible !important;
  transform:scale(1) rotate(0deg) !important;
  color:#dce9f5 !important;
}
body.lf-theme-dark .lf-toggler__icon--close{
  opacity:0 !important;
  visibility:hidden !important;
  transform:scale(.65) rotate(-45deg) !important;
  color:#52dfbd !important;
}
body.lf-theme-dark .lf-toggler[aria-expanded="true"] .lf-toggler__icon--open{
  opacity:0 !important;
  visibility:hidden !important;
  transform:scale(.65) rotate(45deg) !important;
}
body.lf-theme-dark .lf-toggler[aria-expanded="true"] .lf-toggler__icon--close{
  opacity:1 !important;
  visibility:visible !important;
  transform:scale(1) rotate(0deg) !important;
}
/* Anula reglas antiguas de hover que podían transformar ambos iconos a la vez. */
body.lf-theme-dark .lf-toggler:hover .lf-toggler__inner--control .lf-toggler__icon,
body.lf-theme-dark .lf-toggler:focus-visible .lf-toggler__inner--control .lf-toggler__icon{
  transform:inherit;
}
body.lf-theme-dark .lf-toggler:hover .lf-toggler__icon--open,
body.lf-theme-dark .lf-toggler:focus-visible .lf-toggler__icon--open{
  color:#55e3c0 !important;
}
body.lf-theme-dark .lf-toggler[aria-expanded="true"]{
  background:rgba(51,216,183,.07) !important;
}


/* =========================================================
   V2.1 · ESCALA TIPOGRÁFICA Y CABECERAS NORMALIZADAS
   Una sola jerarquía visual para todas las secciones.
   ========================================================= */
:root{
  --lf-head-page-kicker-size:.72rem;
  --lf-head-page-title-size:clamp(1.82rem,2.35vw,2.18rem);
  --lf-head-page-sub-size:.94rem;
  --lf-head-section-kicker-size:.66rem;
  --lf-head-section-title-size:1.24rem;
  --lf-head-card-title-size:1.04rem;
  --lf-head-line-height:1.08;
  --lf-head-title-spacing:-.038em;
  --lf-head-page-gap:5px;
  --lf-head-section-gap:3px;
}

/* Page-level kicker/title/subtitle */
body.lf-theme-dark :is(
  .lf-dash-kicker,
  .lf-context-hero__kicker,
  .clf-page-kicker,
  .lf-matchday-kicker,
  .lf-wall-hero__kicker,
  .lf-jh-page-kicker
){
  font-size:var(--lf-head-page-kicker-size) !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:.115em !important;
  text-transform:uppercase !important;
}

body.lf-theme-dark :is(
  .lf-dash-title,
  .lf-context-hero__title,
  .lf-matchday-title-row h1,
  .lf-wall-hero h1,
  .lf-wall-hero__title,
  .lf-jh-page-title
){
  font-size:var(--lf-head-page-title-size) !important;
  line-height:var(--lf-head-line-height) !important;
  font-weight:900 !important;
  letter-spacing:var(--lf-head-title-spacing) !important;
}

body.lf-theme-dark :is(
  .lf-dash-sub,
  .lf-context-hero__sub,
  .lf-matchday-head p,
  .lf-wall-hero p,
  .lf-wall-hero__sub,
  .lf-jh-page-sub
){
  font-size:var(--lf-head-page-sub-size) !important;
  line-height:1.45 !important;
  color:#93a9bf !important;
}

/* Section-level headers */
body.lf-theme-dark :is(
  .lf-wall-section-head__eyebrow,
  .lf-jh-section-kicker,
  .lf-matchday-section-head > div > span,
  .clf-section-kicker
){
  font-size:var(--lf-head-section-kicker-size) !important;
  font-weight:900 !important;
  letter-spacing:.095em !important;
  line-height:1.15 !important;
  text-transform:uppercase !important;
}

body.lf-theme-dark :is(
  .lf-wall-section-head__title,
  .lf-matchday-section-head h2,
  .clf-section-head h2,
  .lf-jh-lineup-head h2,
  .lf-jh-panel-title,
  .clf-info-title
){
  font-size:var(--lf-head-section-title-size) !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  letter-spacing:-.025em !important;
}

/* Common vertical rhythm */
body.lf-theme-dark :is(
  .lf-context-hero__head,
  .lf-matchday-head,
  .lf-wall-section-head,
  .clf-section-head,
  .lf-jh-lineup-head
){
  row-gap:var(--lf-head-page-gap);
}

/* Mobile scale */
@media (max-width:767.98px){
  :root{
    --lf-head-page-kicker-size:.63rem;
    --lf-head-page-title-size:1.48rem;
    --lf-head-page-sub-size:.83rem;
    --lf-head-section-kicker-size:.59rem;
    --lf-head-section-title-size:1.08rem;
    --lf-head-card-title-size:.96rem;
    --lf-head-page-gap:4px;
  }
}


/* =========================================================
   V2.8 · PASADA FINAL DE COHERENCIA
   Acabado transversal de toda la aplicación.
   ========================================================= */

:root{
  --lf-ui-radius-xs:8px;
  --lf-ui-radius-sm:10px;
  --lf-ui-radius-md:13px;
  --lf-ui-radius-lg:18px;
  --lf-ui-control-h:42px;
  --lf-ui-control-h-sm:36px;
  --lf-ui-ease:cubic-bezier(.2,.8,.2,1);
  --lf-ui-focus:0 0 0 3px rgba(67,207,190,.11);
}

/* ---------------------------------------------------------
   Ritmo general de página
   --------------------------------------------------------- */
body.lf-theme-dark main:not(.lf-main-public-minimal){
  min-height:calc(100vh - 180px);
}
body.lf-theme-dark main:not(.lf-main-public-minimal) > .container{
  width:100%;
}
body.lf-theme-dark .container{
  --bs-gutter-x:1.5rem;
}

/* ---------------------------------------------------------
   Controles comunes
   --------------------------------------------------------- */
body.lf-theme-dark :is(
  .form-control,
  .form-select,
  .input-group-text
){
  border-color:transparent;
  border-radius:var(--lf-ui-radius-md);
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    background-color .16s ease,
    color .16s ease;
}

body.lf-theme-dark :is(.form-control,.form-select):not(textarea){
  min-height:var(--lf-ui-control-h);
}

body.lf-theme-dark :is(.form-control,.form-select):focus{
  border-color:transparent;
  outline:0;
  box-shadow:inset 0 0 0 1px rgba(67,207,190,.27),var(--lf-ui-focus);
}

body.lf-theme-dark .form-label{
  line-height:1.25;
}

body.lf-theme-dark .form-text,
body.lf-theme-dark .text-muted{
  color:#7f99b1 !important;
}

/* Placeholder uniforme */
body.lf-theme-dark .form-control::placeholder{
  color:#617d96;
  opacity:1;
}

/* ---------------------------------------------------------
   Botones
   --------------------------------------------------------- */
body.lf-theme-dark :is(
  .btn,
  .btn-lf,
  .btn-lf-soft,
  .lf-wall-toolbar-btn,
  .lf-wall-topbar__btn,
  .lf-matchday-nav-btn,
  .lf-tcard-action
){
  border-radius:var(--lf-ui-radius-sm);
  font-weight:800;
  transition:
    transform .16s var(--lf-ui-ease),
    background-color .16s ease,
    color .16s ease,
    box-shadow .16s ease,
    opacity .16s ease;
}

body.lf-theme-dark :is(
  .btn,
  .btn-lf,
  .btn-lf-soft
):not(.btn-sm):not(.btn-lg):not(.lf-icon-btn){
  min-height:var(--lf-ui-control-h-sm);
}

@media (hover:hover){
  body.lf-theme-dark :is(
    .btn,
    .btn-lf,
    .btn-lf-soft,
    .lf-icon-btn,
    .lf-wall-toolbar-btn,
    .lf-wall-topbar__btn,
    .lf-matchday-nav-btn,
    .lf-tcard-action
  ):not(:disabled):not(.disabled):hover{
    transform:translateY(-1px);
  }
}

body.lf-theme-dark :is(
  .btn,
  .btn-lf,
  .btn-lf-soft,
  .lf-icon-btn,
  .lf-wall-toolbar-btn,
  .lf-wall-topbar__btn,
  .lf-matchday-nav-btn,
  .lf-tcard-action
):focus-visible{
  outline:0 !important;
  box-shadow:var(--lf-ui-focus) !important;
}

body.lf-theme-dark button:disabled,
body.lf-theme-dark .btn.disabled{
  cursor:not-allowed;
  transform:none !important;
}

/* ---------------------------------------------------------
   Cards / superficies
   --------------------------------------------------------- */
body.lf-theme-dark :is(
  .lf-card,
  .card.lf-card,
  .lf-dash-card,
  .lf-admin-card
){
  border-radius:var(--lf-ui-radius-lg);
}

body.lf-theme-dark :is(
  .card-header,
  .card-footer
){
  border-color:rgba(116,160,198,.07);
}

/* ---------------------------------------------------------
   Badges / pills
   --------------------------------------------------------- */
body.lf-theme-dark :is(
  .badge,
  .lf-pill,
  .lf-inline-badge,
  .lf-wall-badge,
  .lf-onces-pill
){
  line-height:1;
  font-weight:800;
  letter-spacing:0;
}

body.lf-theme-dark .badge{
  border-radius:999px;
}

/* ---------------------------------------------------------
   Alerts
   --------------------------------------------------------- */
body.lf-theme-dark .alert{
  border:0;
  border-radius:var(--lf-ui-radius-md);
  box-shadow:none;
}

body.lf-theme-dark .alert-success{
  color:#86e7bd;
  background:rgba(37,198,135,.09);
}
body.lf-theme-dark .alert-danger{
  color:#f2949d;
  background:rgba(226,86,100,.09);
}
body.lf-theme-dark .alert-warning{
  color:#efc56d;
  background:rgba(229,169,60,.09);
}
body.lf-theme-dark .alert-info{
  color:#80c6ee;
  background:rgba(63,146,208,.09);
}

/* ---------------------------------------------------------
   Estados vacíos
   --------------------------------------------------------- */
body.lf-theme-dark :is(
  .lf-dash-empty,
  .lf-listing-empty,
  .lf-admin-empty,
  .lf-admin-mini-empty,
  .lf-matchday-empty
){
  color:#819ab1;
}

body.lf-theme-dark :is(
  .lf-empty-icon,
  .lf-empty-state-icon
){
  color:#63bce8;
  background:rgba(61,141,201,.08);
  border:0;
  box-shadow:none;
}

/* ---------------------------------------------------------
   Modales comunes
   --------------------------------------------------------- */
body.lf-theme-dark :is(
  .modal-backdrop,
  .lf-member-modal__backdrop,
  .lf-admin-modal__backdrop
){
  background-color:#010b13;
}

body.lf-theme-dark .modal-backdrop.show{
  opacity:.74;
}

body.lf-theme-dark :is(
  .modal-content,
  .lf-member-modal__dialog,
  .lf-admin-modal__dialog
){
  border:0;
  border-radius:20px;
  background:
    linear-gradient(150deg,rgba(14,38,62,.99),rgba(6,22,38,.99));
  box-shadow:0 28px 80px rgba(0,0,0,.40);
}

body.lf-theme-dark :is(
  .modal-header,
  .modal-footer
){
  border-color:rgba(112,156,194,.08);
}

body.lf-theme-dark :is(
  .btn-close,
  .lf-member-modal__close,
  .lf-admin-modal__close
):focus-visible{
  outline:0;
  box-shadow:var(--lf-ui-focus);
}

/* ---------------------------------------------------------
   Tablas
   --------------------------------------------------------- */
body.lf-theme-dark .table{
  --bs-table-color:#e5eef7;
  --bs-table-border-color:rgba(111,154,191,.07);
}

body.lf-theme-dark .table > :not(caption) > * > *{
  border-bottom-color:rgba(111,154,191,.07);
}

body.lf-theme-dark .table-responsive{
  scrollbar-width:thin;
  scrollbar-color:rgba(98,145,184,.22) transparent;
}

/* ---------------------------------------------------------
   Scrollbars discretas
   --------------------------------------------------------- */
body.lf-theme-dark *::-webkit-scrollbar{
  width:8px;
  height:8px;
}
body.lf-theme-dark *::-webkit-scrollbar-track{
  background:transparent;
}
body.lf-theme-dark *::-webkit-scrollbar-thumb{
  background:rgba(102,150,190,.20);
  border-radius:999px;
}
body.lf-theme-dark *::-webkit-scrollbar-thumb:hover{
  background:rgba(102,150,190,.32);
}

/* ---------------------------------------------------------
   Toastify / notificaciones
   --------------------------------------------------------- */
body.lf-theme-dark .toastify{
  max-width:min(420px,calc(100vw - 24px));
  padding:12px 14px;
  border:0;
  border-radius:12px;
  background:linear-gradient(145deg,#102e49,#0b233a);
  color:#eff7ff;
  box-shadow:0 14px 38px rgba(0,0,0,.28);
  font-family:inherit;
  font-size:.82rem;
  line-height:1.4;
}

body.lf-theme-dark .toastify .toast-close{
  opacity:.65;
}

/* ---------------------------------------------------------
   Footer final
   --------------------------------------------------------- */
body.lf-theme-dark .lf-footer{
  margin-top:20px;
  padding:28px 0 30px;
  border-top:1px solid rgba(109,153,191,.07);
  background:linear-gradient(180deg,rgba(4,15,27,0),rgba(4,15,27,.32));
}

body.lf-theme-dark .lf-footer__inner{
  gap:10px;
}

body.lf-theme-dark .lf-footer-brand-logo{
  width:50px;
  height:50px;
  opacity:.94;
}

body.lf-theme-dark .lf-footer__slogan{
  color:#8ea6bd;
  font-size:.79rem;
  font-weight:700;
}

body.lf-theme-dark .lf-footer__links{
  gap:5px;
  padding-top:2px;
}

body.lf-theme-dark .lf-footer__links a{
  padding:6px 9px;
  border-radius:9px;
  color:#8099b1;
  font-size:.74rem;
  font-weight:800;
}

body.lf-theme-dark .lf-footer__links a:hover,
body.lf-theme-dark .lf-footer__links a.is-active{
  color:#eaf5ff;
  background:rgba(73,132,179,.08);
}

body.lf-theme-dark .lf-footer__links a.is-active{
  color:#69d9bc;
}

body.lf-theme-dark .lf-footer__meta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#577087;
  font-size:.65rem;
  font-weight:700;
}

body.lf-theme-dark .lf-footer__dot{
  width:3px;
  height:3px;
  border-radius:50%;
  background:#456078;
}

/* ---------------------------------------------------------
   Micro-accesibilidad
   --------------------------------------------------------- */
body.lf-theme-dark a:focus-visible{
  outline:0;
  box-shadow:var(--lf-ui-focus);
  border-radius:7px;
}

body.lf-theme-dark [role="button"]:focus-visible{
  outline:0;
  box-shadow:var(--lf-ui-focus);
}

/* Evita animaciones innecesarias si el usuario lo solicita */
@media (prefers-reduced-motion:reduce){
  body.lf-theme-dark *,
  body.lf-theme-dark *::before,
  body.lf-theme-dark *::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

/* ---------------------------------------------------------
   Mobile final
   --------------------------------------------------------- */
@media(max-width:767.98px){
  :root{
    --lf-ui-control-h:40px;
    --lf-ui-control-h-sm:35px;
  }

  body.lf-theme-dark main:not(.lf-main-public-minimal){
    padding-top:1rem !important;
    padding-bottom:1.5rem !important;
  }

  body.lf-theme-dark .container{
    --bs-gutter-x:1.15rem;
  }

  body.lf-theme-dark :is(
    .lf-card,
    .card.lf-card,
    .lf-dash-card,
    .lf-admin-card
  ){
    border-radius:15px;
  }

  body.lf-theme-dark :is(
    .modal-content,
    .lf-member-modal__dialog,
    .lf-admin-modal__dialog
  ){
    border-radius:17px;
  }

  body.lf-theme-dark .lf-footer{
    margin-top:10px;
    padding:23px 0 25px;
  }

  body.lf-theme-dark .lf-footer-brand-logo{
    width:44px;
    height:44px;
  }

  body.lf-theme-dark .lf-footer__links a{
    padding:6px 7px;
    font-size:.70rem;
  }

  body.lf-theme-dark .lf-footer__meta{
    font-size:.60rem;
  }
}


/* =========================================================
   V2.9 · LOGOS RESPONSIVE
   Desktop: marca más ancha.
   Mobile: solo logo_small.png en la cabecera.
   ========================================================= */

/* Por defecto solo se muestra la versión desktop. */
body.lf-theme-dark .lf-brand-logo--mobile{
  display:none !important;
}

/* Cabecera desktop: logo más ancho y sin forzar proporción cuadrada. */
@media (min-width:992px){
  body.lf-theme-dark .lf-brand-logo--desktop{
    display:block !important;
    width:82px !important;
    height:58px !important;
    object-fit:contain !important;
    object-position:left center;
  }

  body.lf-theme-dark .navbar-brand{
    min-width:278px;
    gap:12px !important;
  }
}

/* Mobile/tablet: desaparece la marca grande y entra logo_small.png. */
@media (max-width:991.98px){
  body.lf-theme-dark .lf-brand-logo--desktop{
    display:none !important;
  }

  body.lf-theme-dark .lf-brand-logo--mobile{
    display:block !important;
    width:54px !important;
    height:54px !important;
    object-fit:contain !important;
    padding:0 !important;
    filter:drop-shadow(0 6px 14px rgba(0,0,0,.28))
           drop-shadow(0 0 10px rgba(34,223,174,.10));
  }
}

@media (max-width:575.98px){
  body.lf-theme-dark .lf-brand-logo--mobile{
    width:50px !important;
    height:50px !important;
  }
}
