/* Capa de tokens para modulos con cuerpo propio que adoptan la presentacion Raidho.
   Se carga solo si la pagina declara 'legacy' => true en uaRaidhoPage(). Los CSS de
   cada modulo usan estos tokens (--m-*) y los --raidho-* del tema, de modo que el
   modo oscuro cambia toda la pagina y no solo el cromo.
   Criterio (igual que pos_apertura): superficies neutras, tinta como unico acento
   de interfaz y color solo como senal de estado en texto, icono o borde. El tinte
   dorado de Admisiones se reserva para hover, seleccion y estado activo. */
html[data-ua-theme="raidho"]{
  --m-surface-2:#ececec;
  --m-surface-3:#dedede;
  --m-wash:rgb(15 15 15 / .04);
  --m-shadow:0 1px 2px rgb(17 11 25 / .06);
  --m-ink-hover:#3f3f3f;
  /* acento neutro: tinta; el dorado solo en estados activos */
  --m-accent:var(--raidho-text);
  --m-accent-soft:var(--raidho-active-bg);
  --m-accent-line:var(--raidho-active-border);
  /* estado: el color vive en texto, icono y borde; el fondo se mantiene neutro */
  --m-ok:var(--pos-800,#145730);--m-ok-soft:var(--raidho-chrome);--m-ok-line:var(--pos-300,#68c690);
  --m-warn:var(--orange-800,#794d25);--m-warn-soft:var(--raidho-chrome);--m-warn-line:var(--orange-400,#f3a35c);
  --m-danger:var(--rose-800,#750f32);--m-danger-soft:var(--raidho-chrome);--m-danger-line:var(--rose-300,#f06292);
  --m-info:var(--raidho-text);--m-info-soft:var(--raidho-chrome);--m-info-line:var(--raidho-line);
}
html[data-ua-theme="raidho"][data-theme="dark"]{
  --m-surface-2:#222;
  --m-surface-3:#2c2c2c;
  --m-wash:rgb(255 255 255 / .05);
  --m-shadow:0 1px 2px rgb(0 0 0 / .5);
  --m-ink-hover:#d4d4d4;
  --m-ok:var(--pos-200,#93d7b0);--m-ok-line:var(--pos-600,#239d56);
  --m-warn:var(--orange-200,#f9cca5);--m-warn-line:var(--orange-600,#da8a43);
  --m-danger:var(--rose-200,#f48fb1);--m-danger-line:var(--rose-600,#d21b59);
}

.ua-raidho-legacy-page{font-family:var(--font-body,"Rubik",sans-serif);background:var(--raidho-bg);color:var(--raidho-text);}
.ua-raidho-legacy-page :is(h1,h2,h3,h4,h5,h6,.title-font){font-family:var(--font-title,"Plus Jakarta Sans",sans-serif);}
.ua-raidho-legacy-page :is(code,pre,kbd,samp,.font-mono,.mono-font){font-family:var(--font-mono,"Google Sans Code",monospace);}
.ua-raidho-legacy-page .text-secondary,.ua-raidho-legacy-page .text-muted{color:var(--raidho-muted)!important;}

/* Escala de radios del sistema: 12px controles, 20px paneles. */
.ua-raidho-legacy-page .btn{border-radius:12px;font-weight:560;}
.ua-raidho-legacy-page :is(.form-control,.form-select,.input-group-text){border-radius:12px;}
.ua-raidho-legacy-page .input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){border-top-left-radius:0;border-bottom-left-radius:0;}
.ua-raidho-legacy-page .input-group>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0;}
.ua-raidho-legacy-page :is(.card,.modal-content){border-radius:20px;}
.ua-raidho-legacy-page .offcanvas{border-radius:20px 0 0 20px;}
.ua-raidho-legacy-page .dropdown-menu{border-radius:12px;}

/* Foco visible con el mismo anillo del cromo. */
.ua-raidho-legacy-page :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:2px solid var(--raidho-focus,#0f0f0f);outline-offset:2px;
}
.ua-raidho-legacy-page main.content:focus{outline:0;}

/* Superficies y utilidades de Bootstrap sobre los tokens del tema (claro y oscuro). */
.ua-raidho-legacy-page{
  --bs-body-bg:var(--raidho-bg);--bs-body-color:var(--raidho-text);
  --bs-border-color:var(--raidho-line);--bs-secondary-color:var(--raidho-muted);
  --bs-tertiary-bg:var(--raidho-chrome);--bs-secondary-bg:var(--m-surface-2);
  --bs-emphasis-color:var(--raidho-text);--bs-link-color:var(--raidho-text);--bs-link-hover-color:var(--raidho-text);
}
.ua-raidho-legacy-page :is(.bg-white,.bg-body){background-color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page :is(.bg-light,.text-bg-light,.table-light){background-color:var(--raidho-chrome)!important;color:var(--raidho-text)!important;--bs-table-bg:var(--raidho-chrome);--bs-table-color:var(--raidho-text);--bs-table-border-color:var(--raidho-line);}
.ua-raidho-legacy-page .text-dark{color:var(--raidho-text)!important;}
.ua-raidho-legacy-page .border,.ua-raidho-legacy-page :is(.border-top,.border-bottom,.border-start,.border-end){border-color:var(--raidho-line)!important;}
.ua-raidho-legacy-page .card{background:var(--raidho-surface);color:var(--raidho-text);border-color:var(--raidho-line);}
.ua-raidho-legacy-page .table{--bs-table-bg:transparent;--bs-table-color:var(--raidho-text);--bs-table-border-color:var(--raidho-line);--bs-table-striped-bg:var(--raidho-chrome);--bs-table-hover-bg:var(--raidho-chrome);--bs-table-striped-color:var(--raidho-text);--bs-table-hover-color:var(--raidho-text);}
.ua-raidho-legacy-page :is(.form-control,.form-select){background-color:var(--raidho-surface);color:var(--raidho-text);border-color:var(--raidho-border);}
.ua-raidho-legacy-page :is(.form-control,.form-select):disabled{background-color:var(--raidho-chrome);color:var(--raidho-muted);}
.ua-raidho-legacy-page .form-control::placeholder{color:var(--raidho-muted);}
.ua-raidho-legacy-page .form-check-input:checked{background-color:var(--m-accent);border-color:var(--m-accent);}
.ua-raidho-legacy-page .form-check-input:focus,.ua-raidho-legacy-page :is(.form-control,.form-select):focus{border-color:var(--m-accent);box-shadow:0 0 0 .2rem var(--m-accent-line);}
.ua-raidho-legacy-page .modal-content,.ua-raidho-legacy-page .offcanvas,.ua-raidho-legacy-page .dropdown-menu{background:var(--raidho-surface);color:var(--raidho-text);border-color:var(--raidho-line);}
.ua-raidho-legacy-page .modal-header,.ua-raidho-legacy-page .offcanvas-header{background:var(--m-accent-soft);color:var(--raidho-text);border-color:var(--raidho-line);}
.ua-raidho-legacy-page .modal-footer{border-color:var(--raidho-line);}
.ua-raidho-legacy-page .dropdown-item{color:var(--raidho-text);}
.ua-raidho-legacy-page .dropdown-item:is(:hover,:focus,.active){background:var(--m-accent-soft);color:var(--raidho-active-text);}
.ua-raidho-legacy-page .list-group-item{background:var(--raidho-surface);color:var(--raidho-text);border-color:var(--raidho-line);}
.ua-raidho-legacy-page .page-link{background:var(--raidho-surface);color:var(--raidho-text);border-color:var(--raidho-line);}
.ua-raidho-legacy-page .page-item.active .page-link{background:var(--m-accent);border-color:var(--m-accent);color:var(--raidho-surface);}
.ua-raidho-legacy-page .progress{background:var(--m-surface-2);}
.ua-raidho-legacy-page .progress-bar{background-color:var(--m-accent);color:var(--raidho-surface);}
.ua-raidho-legacy-page :is(.nav-tabs .nav-link.active,.nav-pills .nav-link.active){background:var(--m-accent-soft);color:var(--raidho-active-text);border-color:var(--m-accent-line);box-shadow:inset 0 -2px 0 var(--m-accent-line);}
.ua-raidho-legacy-page main.content .nav-link{color:var(--raidho-text);}

/* Botones: primario en tinta (invierte en oscuro), secundarios con contorno neutro. */
.ua-raidho-legacy-page :is(.btn-dark,.btn-primary,.btn-success){--bs-btn-bg:var(--raidho-text);--bs-btn-border-color:var(--raidho-text);--bs-btn-color:var(--raidho-surface);--bs-btn-hover-bg:var(--m-ink-hover);--bs-btn-hover-border-color:var(--m-ink-hover);--bs-btn-hover-color:var(--raidho-surface);--bs-btn-active-bg:var(--m-ink-hover);--bs-btn-active-border-color:var(--m-ink-hover);--bs-btn-active-color:var(--raidho-surface);--bs-btn-disabled-bg:var(--raidho-muted);--bs-btn-disabled-border-color:var(--raidho-muted);--bs-btn-disabled-color:var(--raidho-surface);}
.ua-raidho-legacy-page :is(.btn-outline-dark,.btn-outline-secondary){--bs-btn-color:var(--raidho-text);--bs-btn-border-color:var(--raidho-border);--bs-btn-hover-bg:var(--m-accent-soft);--bs-btn-hover-color:var(--raidho-active-text);--bs-btn-hover-border-color:var(--m-accent-line);--bs-btn-active-bg:var(--m-accent-soft);--bs-btn-active-color:var(--raidho-active-text);--bs-btn-active-border-color:var(--m-accent-line);--bs-btn-disabled-color:var(--raidho-muted);--bs-btn-disabled-border-color:var(--raidho-line);}
.ua-raidho-legacy-page .btn-light{--bs-btn-bg:var(--raidho-surface);--bs-btn-border-color:var(--raidho-border);--bs-btn-color:var(--raidho-text);--bs-btn-hover-bg:var(--m-accent-soft);--bs-btn-hover-border-color:var(--m-accent);--bs-btn-hover-color:var(--raidho-text);}
.ua-raidho-legacy-page .btn-danger{--bs-btn-bg:var(--m-danger);--bs-btn-border-color:var(--m-danger);--bs-btn-color:var(--raidho-surface);--bs-btn-hover-bg:var(--m-ink-hover);--bs-btn-hover-border-color:var(--m-ink-hover);--bs-btn-hover-color:var(--raidho-surface);}

/* Semanticos de Bootstrap sin verdes ni azules de la version anterior. */
.ua-raidho-legacy-page .text-success{color:var(--m-ok)!important;}
.ua-raidho-legacy-page .text-danger{color:var(--m-danger)!important;}
.ua-raidho-legacy-page .text-warning{color:var(--m-warn)!important;}
.ua-raidho-legacy-page :is(.text-primary,.text-info){color:var(--m-accent)!important;}
.ua-raidho-legacy-page :is(.bg-success-subtle,.text-bg-success){background-color:var(--m-ok-soft)!important;color:var(--m-ok)!important;}
.ua-raidho-legacy-page :is(.bg-danger-subtle,.text-bg-danger){background-color:var(--m-danger-soft)!important;color:var(--m-danger)!important;}
.ua-raidho-legacy-page :is(.bg-warning-subtle,.text-bg-warning){background-color:var(--m-warn-soft)!important;color:var(--m-warn)!important;}
.ua-raidho-legacy-page :is(.bg-info-subtle,.bg-primary-subtle,.text-bg-primary,.text-bg-info){background-color:var(--m-accent-soft)!important;color:var(--m-accent)!important;}
.ua-raidho-legacy-page :is(.bg-secondary-subtle,.text-bg-secondary){background-color:var(--m-surface-2)!important;color:var(--raidho-text)!important;}
.ua-raidho-legacy-page .text-bg-dark{background-color:var(--raidho-text)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page .badge{font-weight:500;}
.ua-raidho-legacy-page .alert{background:var(--raidho-surface);color:var(--raidho-text);border:1px solid var(--raidho-line);border-left:3px solid var(--raidho-muted);border-radius:12px;}
.ua-raidho-legacy-page .alert-success{border-left-color:var(--m-ok);}
.ua-raidho-legacy-page .alert-danger{border-left-color:var(--m-danger);}
.ua-raidho-legacy-page .alert-warning{border-left-color:var(--m-warn);}
.ua-raidho-legacy-page :is(.alert-info,.alert-primary){border-left-color:var(--m-accent);}
.ua-raidho-legacy-page main.content a:not([class]){color:var(--raidho-text);text-decoration:underline;text-underline-offset:3px;}
.ua-raidho-legacy-page .btn-close{filter:none;}
html[data-theme="dark"] .ua-raidho-legacy-page .btn-close{filter:invert(1) grayscale(100%) brightness(200%);}

@media print{
  html[data-ua-theme="raidho"],html[data-ua-theme="raidho"][data-theme="dark"]{
    --m-surface-2:#ececec;--m-surface-3:#dedede;--m-wash:transparent;--m-shadow:none;
  }
  .ua-raidho-legacy-page .shell>.content{background:#fff!important;color:#0f0f0f!important;}
}

/* Utilidades de color de Bootstrap que invierten con el tema. */
.ua-raidho-legacy-page .text-white{color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page .bg-dark{background-color:var(--raidho-text)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page .bg-success{background-color:var(--m-ok)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page .bg-danger{background-color:var(--m-danger)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page .bg-warning{background-color:var(--m-warn)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page :is(.bg-primary,.bg-info){background-color:var(--m-accent)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page .bg-secondary{background-color:var(--raidho-muted)!important;color:var(--raidho-surface)!important;}
.ua-raidho-legacy-page :is(.btn-outline-success,.btn-outline-primary){--bs-btn-color:var(--raidho-text);--bs-btn-border-color:var(--raidho-border);--bs-btn-hover-bg:var(--m-accent-soft);--bs-btn-hover-color:var(--raidho-text);--bs-btn-hover-border-color:var(--m-accent-line);}
.ua-raidho-legacy-page .btn-outline-danger{--bs-btn-color:var(--m-danger);--bs-btn-border-color:var(--m-danger-line);--bs-btn-hover-bg:var(--m-danger-soft);--bs-btn-hover-color:var(--m-danger);--bs-btn-hover-border-color:var(--m-danger);}

/* ===== Modo oscuro de contenido =====
   Criterio: la profundidad se construye con luminosidad (fondo < tarjeta < elemento
   interno), no con contornos. Bordes translucidos de baja opacidad, sin sombras,
   tinta suavizada para evitar deslumbramiento, hover neutro y dorado solo en foco.
   Se redefine en el contenido, los modales y los menus; el cromo conserva su tema. */
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(main.content,.modal,.offcanvas,.dropdown-menu,.popover,.toast){
  --raidho-surface:#1c1c1c;
  --raidho-chrome:#252525;
  --raidho-text:#ececec;
  --raidho-muted:#adadad;
  --raidho-line:rgb(255 255 255 / .10);
  --raidho-border:rgb(255 255 255 / .26);
  --m-surface-2:#2c2c2c;
  --m-surface-3:#363636;
  --m-wash:rgb(255 255 255 / .05);
  --m-shadow:none;
  --m-ink-hover:#cdcdcd;
  --m-accent-soft:var(--raidho-active-bg);
  --m-accent-line:var(--raidho-active-border);
  --m-ok:#8fd0ab;--m-ok-line:rgb(143 208 171 / .42);
  --m-warn:#eec39d;--m-warn-line:rgb(238 195 157 / .42);
  --m-danger:#f0a3bd;--m-danger-line:rgb(240 163 189 / .42);
  /* Bootstrap resuelve estas variables donde se declaran: se repiten aqui */
  --bs-body-bg:var(--raidho-bg);--bs-body-color:var(--raidho-text);
  --bs-border-color:var(--raidho-line);--bs-secondary-color:var(--raidho-muted);
  --bs-tertiary-bg:var(--raidho-chrome);--bs-secondary-bg:var(--m-surface-2);
  --bs-emphasis-color:var(--raidho-text);--bs-link-color:var(--raidho-text);
  color-scheme:dark;
  scrollbar-color:rgb(255 255 255 / .28) transparent;
}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page main.content{color:var(--raidho-text);}
/* Campos: pozo mas oscuro que la tarjeta, borde legible y foco claro */
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.form-control,.form-select){
  background-color:var(--raidho-bg);color:var(--raidho-text);border-color:var(--raidho-border);
}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.form-control,.form-select):hover:not(:disabled){border-color:rgb(255 255 255 / .42);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.form-control,.form-select):focus{
  border-color:var(--ua-300,#f6d982);box-shadow:0 0 0 3px rgb(246 217 130 / .22);
}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.form-control,.form-select):disabled{background-color:var(--raidho-chrome);color:var(--raidho-muted);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .form-check-input{background-color:var(--raidho-bg);border-color:var(--raidho-border);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .form-check-input:checked{background-color:var(--raidho-text);border-color:var(--raidho-text);}
/* Tablas: encabezado y filas con separadores tenues */
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .table>:not(caption)>*>*{border-bottom-color:var(--raidho-line);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .table thead th{background:var(--raidho-chrome);color:var(--raidho-muted);}
/* Modales y paneles flotantes: un nivel por encima de la tarjeta */
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.modal-content,.offcanvas,.dropdown-menu){background:#222;border-color:rgb(255 255 255 / .14);box-shadow:0 24px 64px rgb(0 0 0 / .55);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.modal-header,.offcanvas-header){background:#2a2a2a;border-color:rgb(255 255 255 / .10);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .modal-backdrop{--bs-backdrop-bg:#000;--bs-backdrop-opacity:.62;}
/* Botones secundarios: contorno suave, relleno solo al interactuar */
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page :is(.btn-outline-dark,.btn-outline-secondary,.btn-light){--bs-btn-border-color:var(--raidho-border);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .btn-light{--bs-btn-bg:transparent;--bs-btn-color:var(--raidho-text);}
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .btn:focus-visible{box-shadow:0 0 0 3px rgb(246 217 130 / .28);}
/* Accion destructiva: contorno y texto de estado, sin relleno saturado */
html[data-ua-theme="raidho"][data-theme="dark"] .ua-raidho-legacy-page .btn-danger{--bs-btn-bg:rgb(240 163 189 / .14);--bs-btn-color:var(--m-danger);--bs-btn-border-color:var(--m-danger-line);--bs-btn-hover-bg:rgb(240 163 189 / .24);--bs-btn-hover-color:var(--m-danger);--bs-btn-hover-border-color:var(--m-danger);--bs-btn-active-bg:rgb(240 163 189 / .3);--bs-btn-active-color:var(--m-danger);}
