/* ==========================================================================
   XtreamTV · Tema del panel de administración
   --------------------------------------------------------------------------
   Una sola hoja que se carga AL FINAL en todos los paneles (fadmin,
   adminsocio, admin_dealer, sdealer, dealer) y en el login.
   Todo está acotado a body.xt (paneles) y body.xt-login (login), así que
   no afecta páginas que no lleven esa clase.

   Colores de marca: edita solo las variables de :root.
   ========================================================================== */

:root {
  --xt-bg:        #0c0e14;
  --xt-surface:   #141720;
  --xt-surface-2: #1a1e29;
  --xt-surface-3: #222736;
  --xt-border:    #262b3a;
  --xt-border-2:  #323848;
  --xt-text:      #e8eaf0;
  --xt-muted:     #8e96a8;
  --xt-faint:     #5f6779;

  --xt-primary:   #ff7a1a;   /* naranja XtreamTV */
  --xt-primary-2: #ff9a4d;
  --xt-primary-soft: rgba(255,122,26,.14);
  --xt-cyan:      #22d3ee;   /* degradado del logo X */
  --xt-violet:    #8b5cf6;
  --xt-magenta:   #e81cff;

  --xt-success:   #22c55e;
  --xt-warning:   #f59e0b;
  --xt-danger:    #ef4444;
  --xt-info:      #38bdf8;

  --xt-radius:    12px;
  --xt-radius-sm: 8px;
  --xt-shadow:    0 1px 0 rgba(255,255,255,.03) inset, 0 8px 24px rgba(0,0,0,.25);
  --xt-sidebar-w: 256px;
  --xt-topbar-h:  64px;
  --xt-font: 'Inter', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

/* ---------- Base ---------------------------------------------------------- */
body.xt {
  background: var(--xt-bg);
  color: var(--xt-text);
  font-family: var(--xt-font);
  font-size: 14px;
  line-height: 1.5;
  padding-left: var(--xt-sidebar-w);
  padding-top: var(--xt-topbar-h);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}
body.xt h1, body.xt h2, body.xt h3, body.xt h4, body.xt h5, body.xt h6,
body.xt .h1, body.xt .h2, body.xt .h3, body.xt .h4 {
  font-family: var(--xt-font);
  color: var(--xt-text);
  font-weight: 600;
  letter-spacing: -.01em;
  margin-top: 0;
  margin-bottom: 12px;
}
body.xt h1 { font-size: 26px; } body.xt h2 { font-size: 22px; }
body.xt h3 { font-size: 18px; } body.xt h4 { font-size: 16px; padding-top: 0; }
/* styles.css metía padding-top:20px a todos los <p> y margen negativo a h1-h3:
   esa era una de las causas del "descuadre" vertical */
body.xt p { font-size: 14px; line-height: 1.6; padding-top: 0; margin: 0 0 10px; }
body.xt a { color: var(--xt-primary-2); }
body.xt a:hover, body.xt a:focus { color: #ffb37a; text-decoration: none; }
body.xt hr { border-top-color: var(--xt-border); }
body.xt i { font-size: inherit; }
body.xt .text-muted { color: var(--xt-muted); }
body.xt small, body.xt .small { color: var(--xt-muted); }
body.xt code { background: var(--xt-surface-3); color: var(--xt-primary-2); }
body.xt ::selection { background: var(--xt-primary); color: #fff; }
body.xt .page-header { border-bottom-color: var(--xt-border); margin: 0 0 20px; padding-bottom: 12px; }
body.xt legend { color: var(--xt-text); border-bottom-color: var(--xt-border); font-size: 16px; font-weight: 600; }

/* Scrollbars */
body.xt ::-webkit-scrollbar { width: 10px; height: 10px; }
body.xt ::-webkit-scrollbar-track { background: transparent; }
body.xt ::-webkit-scrollbar-thumb { background: var(--xt-surface-3); border-radius: 10px; border: 2px solid var(--xt-bg); }
body.xt ::-webkit-scrollbar-thumb:hover { background: var(--xt-border-2); }

/* ---------- Sidebar ------------------------------------------------------- */
.xt-sidebar {
  position: fixed; top: 0; left: 0; bottom: 0;
  width: var(--xt-sidebar-w);
  background: linear-gradient(180deg, #11141c 0%, #0e1017 100%);
  border-right: 1px solid var(--xt-border);
  z-index: 1040;
  display: flex; flex-direction: column;
  transition: transform .25s ease;
}
.xt-brand {
  height: var(--xt-topbar-h);
  display: flex; align-items: center;
  padding: 0 20px;
  border-bottom: 1px solid var(--xt-border);
  flex-shrink: 0;
}
.xt-brand img { height: 30px; width: auto; display: block; }
.xt-brand .xt-role {
  margin-left: auto;
  font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--xt-primary-2);
  background: var(--xt-primary-soft);
  border: 1px solid rgba(255,122,26,.25);
  padding: 3px 7px; border-radius: 999px; white-space: nowrap;
}
.xt-nav { flex: 1; overflow-y: auto; padding: 14px 12px 24px; }
.xt-nav .nav { margin: 0; padding: 0; }
.xt-nav .nav > li { margin: 0; }
.xt-nav .nav > li > a {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 12px;
  border-radius: var(--xt-radius-sm);
  color: #b5bccb;
  font-size: 13.5px; font-weight: 500;
  background: transparent;
  transition: background .15s, color .15s;
  position: relative;
}
.xt-nav .nav > li > a > i,
.xt-nav .nav > li > a > .glyphicon {
  width: 18px; font-size: 14px; text-align: center; margin: 0;
  color: var(--xt-faint); top: 0;
  transition: color .15s;
}
.xt-nav .nav > li > a:hover,
.xt-nav .nav > li > a:focus { background: var(--xt-surface-2); color: #fff; }
.xt-nav .nav > li > a:hover > i,
.xt-nav .nav > li > a:hover > .glyphicon { color: var(--xt-primary-2); }
.xt-nav .nav > li.xt-active > a {
  background: linear-gradient(90deg, rgba(255,122,26,.20), rgba(255,122,26,.06));
  color: #fff;
}
.xt-nav .nav > li.xt-active > a::before {
  content: ""; position: absolute; left: -12px; top: 8px; bottom: 8px;
  width: 3px; border-radius: 0 3px 3px 0; background: var(--xt-primary);
}
.xt-nav .nav > li.xt-active > a > i,
.xt-nav .nav > li.xt-active > a > .glyphicon { color: var(--xt-primary); }

/* Cabeceras de grupo (Suscriptores VOD, Dealers, ADMINISTRACIÓN) */
.xt-nav .nav > li.nav-header { margin-top: 14px; }
.xt-nav .nav > li.nav-header:first-child { margin-top: 0; }
.xt-nav .nav > li.nav-header > a {
  font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  color: var(--xt-faint);
  padding: 6px 12px; background: transparent;
  justify-content: space-between;
}
.xt-nav .nav > li.nav-header > a:hover { color: var(--xt-muted); background: transparent; }
.xt-nav .nav > li.nav-header > a > .glyphicon { font-size: 9px; width: auto; transition: transform .2s; }
.xt-nav .nav > li.nav-header > a.collapsed > .glyphicon { transform: rotate(-90deg); }
.xt-nav .nav .nav { margin-top: 2px; }
.xt-nav .nav .nav > li > a { padding-left: 12px; }

.xt-sidebar-foot {
  padding: 14px 20px; border-top: 1px solid var(--xt-border);
  font-size: 11.5px; color: var(--xt-faint);
}

/* ---------- Topbar -------------------------------------------------------- */
.xt-topbar {
  position: fixed; top: 0; right: 0; left: var(--xt-sidebar-w);
  height: var(--xt-topbar-h);
  display: flex; align-items: center; gap: 14px;
  padding: 0 28px;
  background: rgba(12,14,20,.82);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--xt-border);
  z-index: 1030;
}
.xt-topbar::after { /* hilo de marca */
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px;
  background: linear-gradient(90deg, var(--xt-primary), rgba(139,92,246,.6) 50%, transparent);
  opacity: .55;
}
.xt-burger {
  display: none;
  background: var(--xt-surface-2); border: 1px solid var(--xt-border); color: var(--xt-text);
  width: 38px; height: 38px; border-radius: 10px; font-size: 16px; line-height: 1;
}
body.xt .xt-page-title { font-size: 17px; line-height: 1.2; letter-spacing: 0; font-weight: 600; color: #fff; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.xt-page-sub { font-size: 12px; color: var(--xt-muted); }
.xt-topbar .navbar-nav { margin: 0 0 0 auto; display: flex; align-items: center; gap: 8px; float: none; }
.xt-topbar .navbar-nav > li { float: none; }
.xt-topbar .navbar-nav > li > a {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 14px; border-radius: 999px;
  color: var(--xt-text); font-size: 13px; font-weight: 500;
  background: var(--xt-surface-2); border: 1px solid var(--xt-border);
  line-height: 1.2;
}
.xt-topbar .navbar-nav > li > a:hover { border-color: var(--xt-border-2); background: var(--xt-surface-3); color: #fff; }
.xt-topbar .navbar-nav > li > a > .glyphicon { top: 0; font-size: 13px; color: var(--xt-primary-2); }
.xt-topbar .navbar-nav > li:last-child > a { background: transparent; }
.xt-topbar .navbar-nav > li:last-child > a:hover { border-color: rgba(239,68,68,.5); color: #fecaca; }
.xt-topbar .navbar-nav > li:last-child > a > .glyphicon { color: var(--xt-danger); }

/* ---------- Contenido ----------------------------------------------------- */
.xt-main { min-height: calc(100vh - var(--xt-topbar-h)); display: flex; flex-direction: column; }
.xt-content { flex: 1; padding: 28px; max-width: 1680px; width: 100%; }
body.xt #contenido { min-height: 200px; }
body.xt #contenido > .row:first-child { margin-top: 0; }

.xt-footer {
  padding: 18px 28px; margin: 0;
  border-top: 1px solid var(--xt-border);
  color: var(--xt-faint); font-size: 12px; text-align: center;
  background: transparent;
}

/* Overlay móvil */
.xt-overlay { display: none; }

@media (max-width: 991px) {
  body.xt { padding-left: 0; }
  .xt-sidebar { transform: translateX(-100%); box-shadow: 0 0 40px rgba(0,0,0,.6); }
  body.xt-nav-open .xt-sidebar { transform: translateX(0); }
  body.xt-nav-open .xt-overlay { display: block; position: fixed; inset: 0; background: rgba(0,0,0,.55); z-index: 1035; }
  .xt-topbar { left: 0; padding: 0 16px; }
  .xt-burger { display: inline-flex; align-items: center; justify-content: center; }
  .xt-content { padding: 18px 16px; }
}
@media (max-width: 600px) {
  .xt-topbar .navbar-nav > li > a .xt-hide-sm { display: none; }
  body.xt .xt-page-title { font-size: 15px; }
}

/* ---------- Grid helpers (quita descuadres de márgenes) ------------------ */
body.xt .row { margin-left: -12px; margin-right: -12px; }
body.xt [class*="col-"] { padding-left: 12px; padding-right: 12px; }
body.xt .no-padding { padding: 0 !important; margin: 0; }
body.xt .row.no-padding { margin: 0 !important; }

/* ---------- Paneles / cajas ---------------------------------------------- */
body.xt .panel,
body.xt .box,
body.xt .well,
body.xt .jumbotron,
body.xt .thumbnail {
  background: var(--xt-surface);
  border: 1px solid var(--xt-border);
  border-radius: var(--xt-radius);
  box-shadow: var(--xt-shadow);
  color: var(--xt-text);
}
body.xt .panel { margin-bottom: 20px; overflow: hidden; }
body.xt .panel > .panel-heading,
body.xt .panel-default > .panel-heading,
body.xt .panel-primary > .panel-heading,
body.xt .panel-info > .panel-heading,
body.xt .panel-success > .panel-heading,
body.xt .panel-warning > .panel-heading,
body.xt .panel-danger > .panel-heading {
  background: var(--xt-surface-2);
  color: var(--xt-text);
  border-bottom: 1px solid var(--xt-border);
  height: auto; line-height: 1.4;
  padding: 14px 18px;
  font-size: 15px; font-weight: 600; letter-spacing: 0;
  border-radius: var(--xt-radius) var(--xt-radius) 0 0;
}
body.xt .panel-primary > .panel-heading { box-shadow: inset 3px 0 0 var(--xt-primary); }
body.xt .panel-success > .panel-heading { box-shadow: inset 3px 0 0 var(--xt-success); }
body.xt .panel-info > .panel-heading    { box-shadow: inset 3px 0 0 var(--xt-info); }
body.xt .panel-warning > .panel-heading { box-shadow: inset 3px 0 0 var(--xt-warning); }
body.xt .panel-danger > .panel-heading  { box-shadow: inset 3px 0 0 var(--xt-danger); }
body.xt .panel-title { font-size: 15px; font-weight: 600; color: var(--xt-text); }
body.xt .panel-body { padding: 18px; }
body.xt .panel-footer { background: var(--xt-surface-2); border-top: 1px solid var(--xt-border); color: var(--xt-muted); }
body.xt .panel-primary { display: block; }

/* AdminLTE .box (dashboard) */
body.xt .box { position: relative; margin-bottom: 24px; width: 100%; border-top: 1px solid var(--xt-border); }
body.xt .box.box-primary, body.xt .box.box-success, body.xt .box.box-warning,
body.xt .box.box-danger, body.xt .box.box-info { border-top: 1px solid var(--xt-border); }
body.xt .box-header {
  display: flex; align-items: center; flex-wrap: wrap; gap: 10px;
  padding: 16px 20px; border-bottom: 1px solid var(--xt-border); color: var(--xt-text);
}
body.xt .box-header > .box-title,
body.xt .box-title { font-size: 15px; font-weight: 600; margin: 0; color: var(--xt-text); display: flex; align-items: center; gap: 8px; }
body.xt .box-header > .box-title::before {
  content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--xt-primary);
  box-shadow: 0 0 0 3px var(--xt-primary-soft);
}
body.xt .box-success .box-title::before { background: var(--xt-success); box-shadow: 0 0 0 3px rgba(34,197,94,.15); }
body.xt .box-danger  .box-title::before { background: var(--xt-danger);  box-shadow: 0 0 0 3px rgba(239,68,68,.15); }
body.xt .box-warning .box-title::before { background: var(--xt-warning); box-shadow: 0 0 0 3px rgba(245,158,11,.15); }
body.xt .box-primary .box-title::before { background: var(--xt-violet);  box-shadow: 0 0 0 3px rgba(139,92,246,.18); }
body.xt .box-header .box-tools { margin-left: auto; display: flex; gap: 6px; }
body.xt .box-header .pull-right, body.xt .box-header > div[style*="float:right"] { margin-left: auto; float: none !important; padding: 0 !important; display: flex; gap: 8px; flex-wrap: wrap; }
body.xt .box-body { padding: 20px; }
body.xt .box-body.no-padding { padding: 8px 8px 20px !important; }
body.xt .box-footer { padding: 12px 20px; border-top: 1px solid var(--xt-border); background: transparent; }
body.xt .box-footer a { color: var(--xt-muted); font-size: 12px; font-weight: 600; letter-spacing: .06em; }
body.xt .box-footer a:hover { color: var(--xt-primary-2); }
body.xt .btn-box-tool { background: transparent; border: 0; color: var(--xt-faint); padding: 4px 6px; }
body.xt .btn-box-tool:hover { color: var(--xt-text); }

/* ---------- Tarjetas de métricas (widget-left / widget-right) ----------- */
body.xt a.thumbnail { padding: 0; margin-bottom: 20px; background: transparent; border: 0; box-shadow: none; display: block; }
body.xt a.thumbnail:hover, body.xt a.thumbnail:focus { border: 0; }
body.xt .panel-widget,
body.xt .panel.panel-blue, body.xt .panel.panel-teal, body.xt .panel.panel-orange,
body.xt .panel.panel-red, body.xt .panel.panel-verde {
  background: var(--xt-surface);
  border: 1px solid var(--xt-border);
  border-radius: var(--xt-radius);
  margin-bottom: 20px;
  transition: transform .15s, border-color .15s;
  color: var(--xt-text);
}
body.xt a.thumbnail .panel { margin-bottom: 0 !important; }
body.xt a.thumbnail:hover .panel { border-color: var(--xt-border-2); transform: translateY(-2px); }
body.xt .panel-widget > .row,
body.xt .panel-blue > .row, body.xt .panel-orange > .row, body.xt .panel-teal > .row {
  display: flex; align-items: center; margin: 0 !important; padding: 16px !important; gap: 14px;
}
body.xt .widget-left {
  flex: 0 0 52px; width: 52px !important; height: 52px !important;
  padding: 0 !important; display: flex; align-items: center; justify-content: center;
  border-radius: 12px !important;
  background: var(--xt-primary-soft) !important; color: var(--xt-primary) !important;
}
body.xt .widget-left .glyphicon-l,
body.xt .widget-left .fa,
body.xt .widget-left .glyphicon { font-size: 22px !important; color: inherit; top: 0; }
body.xt .widget-left img { width: 26px; height: 26px; object-fit: contain; }
body.xt .widget-right {
  flex: 1; width: auto !important; height: auto !important;
  padding: 0 !important; background: transparent !important; border-radius: 0 !important;
  text-align: left !important; color: var(--xt-muted); line-height: 1.25;
}
body.xt .widget-right .large { color: #fff; font-size: 26px; font-weight: 700; letter-spacing: -.02em; }
body.xt .widget-right .text-muted { color: var(--xt-muted); font-size: 12.5px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
/* acentos por variante */
body.xt .panel-teal   .widget-left { background: rgba(34,211,238,.12) !important; color: var(--xt-cyan) !important; }
body.xt .panel-orange .widget-left { background: rgba(139,92,246,.15) !important; color: #a78bfa !important; }
body.xt .panel-verde  .widget-left { background: rgba(34,197,94,.13) !important; color: var(--xt-success) !important; }
body.xt .panel-red    .widget-left { background: rgba(239,68,68,.13) !important; color: var(--xt-danger) !important; }
body.xt .row-centered { text-align: left; }
body.xt .col-centered { display: block; float: left; margin-right: 0; }

/* Info boxes (LiveTV / Películas / Series / Adultos) */
body.xt .info-box {
  display: flex; align-items: center; gap: 14px;
  min-height: 0; padding: 14px 16px; margin-bottom: 14px;
  background: var(--xt-surface) !important; color: var(--xt-text) !important;
  border: 1px solid var(--xt-border); border-radius: var(--xt-radius); box-shadow: var(--xt-shadow);
}
body.xt .info-box-icon {
  float: none; width: 46px; height: 46px; flex: 0 0 46px; line-height: 46px; font-size: 20px;
  border-radius: 12px; background: var(--xt-primary-soft); color: var(--xt-primary); text-align: center;
}
body.xt .info-box-content { padding: 0; margin: 0; flex: 1; min-width: 0; }
body.xt .info-box-text { display: block; font-size: 11.5px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--xt-muted); }
body.xt .info-box-number { display: block; font-size: 22px; font-weight: 700; color: #fff; }
body.xt .info-box .progress { height: 3px; margin: 6px 0; background: var(--xt-surface-3); border-radius: 3px; }
body.xt .info-box .progress-bar { background: var(--xt-primary); }
body.xt .info-box .progress-description { font-size: 12px; color: var(--xt-faint); }
body.xt .info-box.bg-green .info-box-icon  { background: rgba(34,197,94,.13);  color: var(--xt-success); }
body.xt .info-box.bg-green .progress-bar   { background: var(--xt-success); }
body.xt .info-box.bg-red .info-box-icon    { background: rgba(232,28,255,.12); color: #f0abfc; }
body.xt .info-box.bg-red .progress-bar     { background: var(--xt-magenta); }
body.xt .info-box.bg-aqua .info-box-icon   { background: rgba(34,211,238,.12); color: var(--xt-cyan); }
body.xt .info-box.bg-aqua .progress-bar    { background: var(--xt-cyan); }

/* Listas de "Últimos suscriptores / dealers" */
body.xt .products-list { list-style: none; margin: 0; padding: 0; }
body.xt .products-list > .item { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--xt-border); background: transparent; }
body.xt .products-list > .item:last-child { border-bottom: 0; }
body.xt .products-list .product-img { float: none; flex: 0 0 40px; }
body.xt .products-list .product-img img { width: 40px; height: 40px; border-radius: 10px; object-fit: cover; background: var(--xt-surface-3); }
body.xt .products-list .product-info { margin-left: 0; flex: 1; min-width: 0; }
body.xt .products-list .product-title { color: var(--xt-text); font-weight: 600; display: flex; align-items: center; gap: 8px; }
body.xt .products-list .product-title .label { margin-left: auto; float: none !important; }
body.xt .products-list .product-description { display: block; color: var(--xt-muted); font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Gauges (JustGage / Raphael) */
body.xt #g1, body.xt #g2, body.xt #g3 { min-height: 170px; }
body.xt #g1 svg text, body.xt #g2 svg text, body.xt #g3 svg text { fill: var(--xt-muted) !important; font-family: var(--xt-font) !important; }
body.xt #g1 svg text:nth-of-type(2), body.xt #g2 svg text:nth-of-type(2), body.xt #g3 svg text:nth-of-type(2) { fill: #fff !important; font-weight: 700 !important; }
body.xt #g1 svg path:first-of-type, body.xt #g2 svg path:first-of-type, body.xt #g3 svg path:first-of-type { fill: var(--xt-surface-3) !important; }

/* Barra de progreso (proceso de borrado/chequeo) */
body.xt #progress { width: 100%; max-width: 550px; height: 22px; border: 1px solid var(--xt-border); border-radius: 999px; background: var(--xt-surface-2); overflow: hidden; position: relative; }
body.xt #progress .bar { height: 100%; background: linear-gradient(90deg, var(--xt-primary), var(--xt-primary-2)); border-radius: 999px; }
body.xt .skill-bar-percent { position: absolute; right: 10px; top: 0; font-size: 11px; line-height: 20px; color: #fff; }

/* ---------- Tablas -------------------------------------------------------- */
body.xt .table { color: var(--xt-text); margin-bottom: 0; background: transparent; }
body.xt .table > thead > tr > th {
  background: var(--xt-surface-2);
  color: var(--xt-muted);
  font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em;
  border-bottom: 1px solid var(--xt-border) !important; border-top: 0;
  padding: 11px 12px; white-space: nowrap;
}
body.xt .table > tbody > tr > td,
body.xt .table > tbody > tr > th,
body.xt .table > tfoot > tr > td,
body.xt .table > tfoot > tr > th {
  border-top: 1px solid var(--xt-border);
  padding: 10px 12px; vertical-align: middle;
}
body.xt .table > tbody > tr > th { font-weight: 600; color: #fff; }
body.xt .table-striped > tbody > tr:nth-of-type(odd),
body.xt .table-striped > tbody > tr.odd { background: rgba(255,255,255,.018); }
body.xt .table-hover > tbody > tr:hover,
body.xt .table > tbody > tr:hover { background: rgba(255,122,26,.05); }
body.xt .table-bordered, body.xt .table-bordered > thead > tr > th, body.xt .table-bordered > tbody > tr > td { border-color: var(--xt-border); }
body.xt .table > tbody > tr.active > td, body.xt .table > tbody > tr > td.active { background: var(--xt-surface-3); }
body.xt .table > tbody > tr.success > td { background: rgba(34,197,94,.08); }
body.xt .table > tbody > tr.warning > td { background: rgba(245,158,11,.08); }
body.xt .table > tbody > tr.danger > td  { background: rgba(239,68,68,.08); }
body.xt .table .btn { padding: 5px 9px; font-size: 12px; }
body.xt .table-responsive { border: 0; }
body.xt .box-body[style*="overflow-y"] { box-sizing: border-box !important; padding: 0 !important; }

/* DataTables */
body.xt .dataTables_wrapper { color: var(--xt-muted); }
body.xt .dataTables_wrapper .row { margin-left: 0; margin-right: 0; }
body.xt .dataTables_wrapper .row > [class*="col-"] { padding-left: 0; padding-right: 0; }
body.xt .dataTables_wrapper > .row:first-child,
body.xt .dataTables_wrapper .dataTables_length,
body.xt .dataTables_wrapper .dataTables_filter { margin-bottom: 12px; }
body.xt .dataTables_wrapper .dataTables_length label,
body.xt .dataTables_wrapper .dataTables_filter label { font-weight: 500; color: var(--xt-muted); display: inline-flex; align-items: center; gap: 8px; }
body.xt .dataTables_wrapper select,
body.xt .dataTables_wrapper input[type="search"],
body.xt .dataTables_wrapper .dataTables_filter input {
  background: var(--xt-surface-2) !important; color: var(--xt-text) !important;
  border: 1px solid var(--xt-border) !important; border-radius: 8px !important;
  height: 34px; padding: 4px 10px; margin: 0 !important; box-shadow: none;
}
body.xt .dataTables_wrapper .dataTables_info { color: var(--xt-faint); padding-top: 14px; font-size: 12.5px; }
body.xt .dataTables_wrapper .dataTables_paginate { padding-top: 10px; }
body.xt table.dataTable { border-collapse: separate !important; border-spacing: 0; width: 100% !important; border: 1px solid var(--xt-border); border-radius: var(--xt-radius); overflow: hidden; margin: 6px 0 !important; }
body.xt table.dataTable.no-footer { border-bottom: 1px solid var(--xt-border); }
body.xt table.dataTable thead th, body.xt table.dataTable thead td { border-bottom: 1px solid var(--xt-border) !important; }
body.xt table.dataTable thead .sorting:after,
body.xt table.dataTable thead .sorting_asc:after,
body.xt table.dataTable thead .sorting_desc:after { opacity: .35; color: var(--xt-muted); }
body.xt table.dataTable thead .sorting_asc:after,
body.xt table.dataTable thead .sorting_desc:after { opacity: 1; color: var(--xt-primary); }
body.xt table.dataTable tbody tr { background: transparent; }
body.xt .dataTables_processing { background: var(--xt-surface-2) !important; color: var(--xt-text); border: 1px solid var(--xt-border); border-radius: 10px; }
body.xt .dataTables_empty { color: var(--xt-faint); padding: 28px !important; text-align: center; }

/* Paginación */
body.xt .pagination { margin: 0; display: inline-flex; gap: 4px; }
body.xt .pagination > li > a,
body.xt .pagination > li > span {
  background: var(--xt-surface-2); border: 1px solid var(--xt-border); color: var(--xt-muted);
  border-radius: 8px !important; margin: 0; padding: 6px 12px; min-width: 34px; text-align: center;
}
body.xt .pagination > li > a:hover { background: var(--xt-surface-3); color: #fff; border-color: var(--xt-border-2); }
body.xt .pagination > .active > a, body.xt .pagination > .active > a:hover,
body.xt .pagination > .active > span { background: var(--xt-primary); border-color: var(--xt-primary); color: #fff; }
body.xt .pagination > .disabled > a, body.xt .pagination > .disabled > span { background: transparent; color: var(--xt-faint); border-color: var(--xt-border); }

/* ---------- Formularios --------------------------------------------------- */
body.xt label, body.xt .control-label { color: #c9cfdb; font-weight: 600; font-size: 13px; margin-bottom: 6px; }
body.xt .form-control,
body.xt select, body.xt textarea,
body.xt input[type="text"], body.xt input[type="password"], body.xt input[type="email"],
body.xt input[type="number"], body.xt input[type="date"], body.xt input[type="search"], body.xt input[type="url"] {
  background-color: var(--xt-surface-2);
  color: var(--xt-text);
  border: 1px solid var(--xt-border);
  border-radius: var(--xt-radius-sm);
  box-shadow: none;
  transition: border-color .15s, box-shadow .15s;
}
body.xt .form-control { height: 38px; padding: 8px 12px; font-size: 14px; }
body.xt textarea.form-control { height: auto; min-height: 84px; }
body.xt select.form-control[multiple] { height: auto; }
body.xt .input-sm, body.xt .input-group-sm > .form-control { height: 32px; font-size: 13px; }
body.xt .input-lg { height: 46px; }
body.xt .form-control::placeholder { color: var(--xt-faint); }
body.xt .form-control:focus,
body.xt select:focus, body.xt textarea:focus, body.xt input:focus {
  border-color: var(--xt-primary);
  box-shadow: 0 0 0 3px var(--xt-primary-soft);
  outline: 0;
}
body.xt .form-control[disabled], body.xt .form-control[readonly] { background: var(--xt-surface-3); color: var(--xt-muted); opacity: 1; }
body.xt select option { background: var(--xt-surface-2); color: var(--xt-text); }
body.xt .input-group-addon {
  background: var(--xt-surface-3); color: var(--xt-muted); border: 1px solid var(--xt-border);
  border-radius: var(--xt-radius-sm);
}
body.xt .input-group .form-control:not(:first-child),
body.xt .input-group-addon:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
body.xt .input-group .form-control:not(:last-child),
body.xt .input-group-addon:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
body.xt .input-group-addon .glyphicon { top: 0; }
body.xt .input-icon > i { color: var(--xt-faint); margin-top: 11px; }
body.xt .input-icon > .form-control { padding-left: 34px; }
body.xt .form-group { margin-bottom: 16px; }
body.xt .help-block { color: var(--xt-faint); font-size: 12.5px; }
body.xt .has-error .form-control { border-color: var(--xt-danger); }
body.xt .has-error .help-block, body.xt .has-error .control-label { color: #fca5a5; }
body.xt .has-success .form-control { border-color: var(--xt-success); }
body.xt .has-success .help-block, body.xt .has-success .control-label { color: #86efac; }
body.xt .has-warning .form-control { border-color: var(--xt-warning); }
body.xt .form-control-feedback { line-height: 38px; }
body.xt .checkbox label, body.xt .radio label { font-weight: 500; color: var(--xt-text); }
body.xt input[type="checkbox"], body.xt input[type="radio"] { accent-color: var(--xt-primary); }
body.xt .form_sep + .form_sep { border-top: 1px solid var(--xt-border); margin-top: 14px; padding-top: 14px; }
body.xt .heading_a, body.xt .heading_c { border-color: var(--xt-border); color: var(--xt-text); font-family: var(--xt-font); }
body.xt .heading_b span { background: var(--xt-surface); }
body.xt .heading_b:after { border-color: var(--xt-border); }
body.xt .simpleMensajeError { color: #fca5a5; font-size: 12.5px; }
body.xt input[type="file"] { color: var(--xt-muted); }

/* Chosen */
body.xt .chosen-container .chosen-single,
body.xt .chosen-container-multi .chosen-choices {
  background: var(--xt-surface-2) !important; border: 1px solid var(--xt-border) !important;
  color: var(--xt-text) !important; box-shadow: none !important; border-radius: var(--xt-radius-sm) !important;
  height: 38px; line-height: 36px; padding-left: 12px;
}
body.xt .chosen-container-multi .chosen-choices { height: auto; min-height: 38px; line-height: 1.4; }
body.xt .chosen-container-multi .chosen-choices li.search-choice { background: var(--xt-surface-3); border-color: var(--xt-border-2); color: var(--xt-text); box-shadow: none; }
body.xt .chosen-container-multi .chosen-choices li.search-field input[type="text"] { color: var(--xt-text); }
body.xt .chosen-container .chosen-single div b { background-position: 0 9px; }
body.xt .chosen-container .chosen-drop { background: var(--xt-surface-2); border: 1px solid var(--xt-border); color: var(--xt-text); border-radius: 0 0 var(--xt-radius-sm) var(--xt-radius-sm); }
body.xt .chosen-container .chosen-search input[type="text"] { background-color: var(--xt-surface-3); border: 1px solid var(--xt-border); color: var(--xt-text); }
body.xt .chosen-container .chosen-results li.highlighted { background: var(--xt-primary); background-image: none; }
body.xt .chosen-container .chosen-results li.no-results { background: var(--xt-surface-3); color: var(--xt-muted); }
body.xt .chosen-container-active.chosen-with-drop .chosen-single { background: var(--xt-surface-2) !important; }

/* Bootstrap-select */
body.xt .bootstrap-select > .btn,
body.xt .bootstrap-select > .dropdown-toggle {
  background: var(--xt-surface-2) !important; color: var(--xt-text) !important;
  border: 1px solid var(--xt-border) !important; height: 38px; border-radius: var(--xt-radius-sm);
}
body.xt .bootstrap-select .dropdown-menu { background: var(--xt-surface-2); }

/* Bootstrap switch */
body.xt .bootstrap-switch { border-color: var(--xt-border); background: var(--xt-surface-3); border-radius: 999px; }
body.xt .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-primary { background: var(--xt-primary); color: #fff; }
body.xt .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-info,
body.xt .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-default { background: var(--xt-surface-3); color: var(--xt-muted); }
body.xt .bootstrap-switch .bootstrap-switch-label { background: #fff; }

/* ---------- Botones ------------------------------------------------------- */
body.xt .btn {
  border-radius: var(--xt-radius-sm);
  font-weight: 600; font-size: 13px;
  padding: 8px 14px;
  border: 1px solid transparent;
  box-shadow: none; text-shadow: none; background-image: none;
  transition: background .15s, border-color .15s, color .15s, transform .05s;
}
body.xt .btn:active { transform: translateY(1px); box-shadow: none; }
body.xt .btn:focus, body.xt .btn.focus { outline: 0; box-shadow: 0 0 0 3px var(--xt-primary-soft); }
body.xt .btn .glyphicon { top: 1px; }
body.xt .btn-lg { padding: 11px 20px; font-size: 15px; border-radius: 10px; }
body.xt .btn-sm { padding: 5px 10px; font-size: 12px; }
body.xt .btn-xs { padding: 2px 7px; font-size: 11px; }
body.xt .btn-default { background: var(--xt-surface-2); color: var(--xt-text); border-color: var(--xt-border); }
body.xt .btn-default:hover, body.xt .btn-default:focus, body.xt .btn-default.active,
body.xt .open > .dropdown-toggle.btn-default { background: var(--xt-surface-3); color: #fff; border-color: var(--xt-border-2); }
body.xt .btn-primary { background: var(--xt-primary); color: #fff; border-color: var(--xt-primary); }
body.xt .btn-primary:hover, body.xt .btn-primary:focus, body.xt .btn-primary:active, body.xt .btn-primary.active { background: #ff8c3a; border-color: #ff8c3a; color: #fff; }
body.xt .btn-success { background: #16a34a; border-color: #16a34a; color: #fff; }
body.xt .btn-success:hover, body.xt .btn-success:focus { background: #22c55e; border-color: #22c55e; }
body.xt .btn-info { background: rgba(56,189,248,.14); border-color: rgba(56,189,248,.35); color: #7dd3fc; }
body.xt .btn-info:hover, body.xt .btn-info:focus { background: rgba(56,189,248,.24); color: #fff; border-color: rgba(56,189,248,.5); }
body.xt .btn-warning { background: rgba(245,158,11,.14); border-color: rgba(245,158,11,.35); color: #fcd34d; }
body.xt .btn-warning:hover, body.xt .btn-warning:focus { background: rgba(245,158,11,.24); color: #fff; }
body.xt .btn-danger { background: rgba(239,68,68,.14); border-color: rgba(239,68,68,.35); color: #fca5a5; }
body.xt .btn-danger:hover, body.xt .btn-danger:focus { background: var(--xt-danger); border-color: var(--xt-danger); color: #fff; }
body.xt .btn-link { color: var(--xt-primary-2); }
body.xt .btn[disabled], body.xt .btn.disabled { opacity: .45; }
/* botones de acciones en tablas: cuadrados y alineados */
body.xt td > .btn, body.xt td > a.btn { width: 32px; height: 32px; padding: 0; display: inline-flex; align-items: center; justify-content: center; margin: 1px 2px; }
body.xt td > .btn .glyphicon, body.xt td > a.btn .glyphicon { top: 0; }

/* ---------- Etiquetas / badges / alertas --------------------------------- */
body.xt .label {
  display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: .02em;
  padding: 4px 9px; border-radius: 999px; line-height: 1.2; vertical-align: middle;
}
body.xt .label-default { background: var(--xt-surface-3); color: var(--xt-muted); }
body.xt .label-primary { background: var(--xt-primary-soft); color: var(--xt-primary-2); }
body.xt .label-success { background: rgba(34,197,94,.15); color: #4ade80; }
body.xt .label-warning { background: rgba(245,158,11,.15); color: #fbbf24; }
body.xt .label-danger  { background: rgba(239,68,68,.15); color: #f87171; }
body.xt .label-info    { background: rgba(56,189,248,.15); color: #7dd3fc; }
body.xt .label-azul    { background: rgba(139,92,246,.18) !important; color: #c4b5fd; }
body.xt .label_st_aux  { border-radius: 50%; }
body.xt .badge { background: var(--xt-surface-3); color: var(--xt-text); font-weight: 700; }

body.xt .alert { border-radius: var(--xt-radius); border: 1px solid; padding: 12px 16px; }
body.xt .alert-success { background: rgba(34,197,94,.10); border-color: rgba(34,197,94,.3); color: #bbf7d0; }
body.xt .alert-info    { background: rgba(56,189,248,.10); border-color: rgba(56,189,248,.3); color: #bae6fd; }
body.xt .alert-warning { background: rgba(245,158,11,.10); border-color: rgba(245,158,11,.3); color: #fde68a; }
body.xt .alert-danger  { background: rgba(239,68,68,.10); border-color: rgba(239,68,68,.3); color: #fecaca; }
body.xt .alert .close { color: currentColor; opacity: .6; text-shadow: none; }
body.xt .alert-dismissible .close { top: -1px; }

/* ---------- Pestañas / listas / dropdowns -------------------------------- */
body.xt .nav-tabs { border-bottom: 1px solid var(--xt-border); display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 16px; }
body.xt .nav-tabs > li { float: none; margin-bottom: -1px; }
body.xt .nav-tabs > li > a {
  color: var(--xt-muted); border: 1px solid transparent; border-radius: 8px 8px 0 0;
  padding: 9px 14px; margin: 0; font-weight: 500; font-size: 13px;
}
body.xt .nav-tabs > li > a:hover { background: var(--xt-surface-2); border-color: transparent; color: #fff; }
body.xt .nav-tabs > li.active > a, body.xt .nav-tabs > li.active > a:hover, body.xt .nav-tabs > li.active > a:focus {
  background: var(--xt-surface); color: #fff; border: 1px solid var(--xt-border); border-bottom-color: var(--xt-surface);
  box-shadow: inset 0 2px 0 var(--xt-primary);
}
body.xt .nav-pills > li > a { color: var(--xt-muted); border-radius: 8px; }
body.xt .nav-pills > li.active > a, body.xt .nav-pills > li.active > a:hover { background: var(--xt-primary); color: #fff; }
body.xt .tab-content { color: var(--xt-text); }

body.xt .list-group-item { background: var(--xt-surface); border-color: var(--xt-border); color: var(--xt-text); }
body.xt .list-group-item:first-child { border-top-left-radius: var(--xt-radius); border-top-right-radius: var(--xt-radius); }
body.xt .list-group-item:last-child { border-bottom-left-radius: var(--xt-radius); border-bottom-right-radius: var(--xt-radius); }
body.xt a.list-group-item:hover, body.xt a.list-group-item:focus { background: var(--xt-surface-2); color: #fff; }
body.xt .list-group-item.active, body.xt .list-group-item.active:hover { background: var(--xt-primary); border-color: var(--xt-primary); color: #fff; }
body.xt .list-group-item-heading { color: #fff; }
body.xt .list-group-item-text { color: var(--xt-muted); }

body.xt .dropdown-menu {
  background: var(--xt-surface-2); border: 1px solid var(--xt-border); border-radius: 10px;
  box-shadow: 0 16px 40px rgba(0,0,0,.45); padding: 6px;
}
body.xt .dropdown-menu > li > a { color: var(--xt-text); border-radius: 6px; padding: 7px 12px; }
body.xt .dropdown-menu > li > a:hover, body.xt .dropdown-menu > li > a:focus,
body.xt .dropdown-menu > .active > a { background: var(--xt-primary-soft); color: #fff; }
body.xt .dropdown-menu .divider { background: var(--xt-border); }

body.xt .progress { background: var(--xt-surface-3); box-shadow: none; border-radius: 999px; }
body.xt .progress-bar { background-color: var(--xt-primary); box-shadow: none; }

body.xt .img-circle { border: 2px solid var(--xt-border-2); }
body.xt .popover { background: var(--xt-surface-2); border-color: var(--xt-border); color: var(--xt-text); }
body.xt .popover-title { background: var(--xt-surface-3); border-color: var(--xt-border); }

/* ---------- Modales ------------------------------------------------------- */
body.xt .modal-backdrop.in { opacity: .7; background: #05060a; }
body.xt .modal-content {
  background: var(--xt-surface); color: var(--xt-text);
  border: 1px solid var(--xt-border); border-radius: 16px;
  box-shadow: 0 30px 80px rgba(0,0,0,.6);
}
body.xt .modal-header { border-bottom: 1px solid var(--xt-border); padding: 16px 20px; }
body.xt .modal-title { font-weight: 600; font-size: 16px; color: #fff; }
body.xt .modal-body { padding: 20px; }
body.xt .modal-footer { border-top: 1px solid var(--xt-border); padding: 14px 20px; }
body.xt .close { color: var(--xt-muted); opacity: .8; text-shadow: none; font-weight: 400; font-size: 24px; }
body.xt .close:hover { color: #fff; opacity: 1; }
body.xt #modal_dinamico .alert { margin: 12px 20px 0; }

/* ---------- Tooltips ------------------------------------------------------ */
body.xt .tooltip-inner { background: #000; border: 1px solid var(--xt-border); border-radius: 6px; font-size: 12px; }

/* ---------- Misceláneo ---------------------------------------------------- */
body.xt .flag { vertical-align: middle; border-radius: 2px; }
body.xt .well { padding: 18px; }
body.xt .jumbotron { padding: 28px; }
body.xt .lazy { border-radius: 8px; }
body.xt .uppercase { text-transform: uppercase; }

/* ==========================================================================
   LOGIN (index.php raíz)
   ========================================================================== */
body.xt-login {
  min-height: 100vh;
  margin: 0;
  font-family: var(--xt-font);
  color: var(--xt-text);
  background:
    radial-gradient(900px 500px at 85% -10%, rgba(255,122,26,.30), transparent 60%),
    radial-gradient(700px 500px at -10% 110%, rgba(139,92,246,.25), transparent 60%),
    radial-gradient(500px 400px at 110% 100%, rgba(34,211,238,.12), transparent 60%),
    var(--xt-bg);
  display: flex; align-items: center; justify-content: center;
  padding: 32px 16px;
  text-align: left;
  line-height: 1.5;
  font-size: 15px;
}
body.xt-login .backstretch { display: none !important; } /* fondo del tema en lugar de la foto */
body.xt-login .top-content { width: 100%; }
body.xt-login .top-content > div > .container { max-width: 440px; width: 100%; padding: 0; }
body.xt-login .row { margin: 0; }
body.xt-login .row > [class*="col-"] { width: 100%; margin: 0; padding: 0; float: none; }
body.xt-login .text { text-align: center; color: #fff; }
body.xt-login .text h1 { margin: 0 0 22px; line-height: 1; }
body.xt-login .text h1 img { width: 200px; max-width: 70%; border-radius: 18px; box-shadow: 0 18px 50px rgba(255,122,26,.25); }
body.xt-login .form-box { margin-top: 0; }
body.xt-login .form-top,
body.xt-login .form-bottom { background: rgba(20,23,32,.88); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid var(--xt-border); }
body.xt-login .form-top { border-bottom: 0; border-radius: 18px 18px 0 0; padding: 28px 30px 6px; display: flex; align-items: flex-start; }
body.xt-login .form-top-left { float: none; width: auto; flex: 1; padding-top: 0; }
body.xt-login .form-top-left h3 { margin: 0 0 4px; color: #fff; font-size: 22px; font-weight: 700; line-height: 1.2; }
body.xt-login .form-top-left p { color: var(--xt-muted); opacity: 1; font-size: 14px; margin: 0; line-height: 1.5; }
body.xt-login .form-top-right {
  float: none; width: 44px; height: 44px; flex: 0 0 44px; padding: 0;
  font-size: 18px; line-height: 44px; text-align: center; opacity: 1;
  border-radius: 12px; background: var(--xt-primary-soft); color: var(--xt-primary);
}
body.xt-login .form-bottom { border-top: 0; border-radius: 0 0 18px 18px; padding: 22px 30px 30px; box-shadow: 0 30px 80px rgba(0,0,0,.5); }
body.xt-login .form-group { margin-bottom: 14px; }
body.xt-login input[type="text"], body.xt-login input[type="password"] {
  height: 48px; margin: 0; padding: 0 16px;
  background: var(--xt-surface-2); color: var(--xt-text);
  border: 1px solid var(--xt-border); border-radius: 10px;
  font-family: var(--xt-font); font-size: 15px; font-weight: 400; line-height: 48px;
  box-shadow: none;
}
body.xt-login input[type="text"]:focus, body.xt-login input[type="password"]:focus {
  border-color: var(--xt-primary); box-shadow: 0 0 0 3px var(--xt-primary-soft); outline: 0;
}
body.xt-login input::placeholder { color: var(--xt-faint); }
body.xt-login .input-error { border-color: var(--xt-danger) !important; }
body.xt-login button.btn {
  height: 48px; width: 100%; margin: 6px 0 0; padding: 0;
  background: linear-gradient(135deg, var(--xt-primary), #ff9a4d);
  border: 0; border-radius: 10px;
  font-family: var(--xt-font); font-size: 15px; font-weight: 700; line-height: 48px; color: #fff;
  box-shadow: 0 10px 24px rgba(255,122,26,.30);
  text-shadow: none; transition: filter .15s, transform .05s;
}
body.xt-login button.btn:hover { filter: brightness(1.08); opacity: 1; color: #fff; }
body.xt-login button.btn:active { transform: translateY(1px); }
body.xt-login #loading { text-align: center; }
body.xt-login #loading img { margin: 0 auto 10px; }
body.xt-login #error { min-height: 21px; }
/* Mensaje del sistema bajo el login */
body.xt-login .alert-warning {
  margin-top: 16px; text-align: left;
  background: rgba(245,158,11,.10) !important; border: 1px solid rgba(245,158,11,.3) !important; color: #fde68a !important;
  border-radius: 14px; padding: 14px 18px;
}
body.xt-login .alert-warning h4 { color: #fde68a; font-size: 14px; font-weight: 700; margin: 0 0 4px; }
body.xt-login .alert-warning p { color: #fde68a; opacity: .9; margin: 0; font-size: 13.5px; line-height: 1.5; }
body.xt-login .xt-login-foot { text-align: center; margin-top: 20px; color: var(--xt-faint); font-size: 12px; }

/* ---------- Encabezados de sección en páginas de contenido --------------- */
/* Muchas páginas abren con <strong><i class="glyphicon ..."></i> <i>Título</i></strong>,
   un botón .btn-lg.pull-right y un <hr>. Se ordenan como cabecera de página. */
body.xt #contenido > strong:first-of-type {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 20px; font-weight: 700; color: #fff; line-height: 40px; letter-spacing: -.01em;
}
body.xt #contenido > strong .glyphicon { color: var(--xt-primary); font-size: 18px; top: 0; }
body.xt #contenido i:not([class]) { font-style: normal; }
body.xt #contenido > .btn.pull-right,
body.xt #contenido > .btn-lg.pull-right { margin-left: 12px; padding: 9px 16px; font-size: 13.5px; border-radius: 10px; background: var(--xt-primary); border-color: var(--xt-primary); color: #fff; }
body.xt #contenido > .btn.pull-right:hover { background: #ff8c3a; border-color: #ff8c3a; }
body.xt #contenido > .btn.pull-right .glyphicon { color: #fff; }
body.xt #contenido > hr { margin: 18px 0 22px; clear: both; }

/* Login: el mensaje del sistema venía en .col-md-6.col-md-offset-3 fuera de .row */
body.xt-login .col-md-offset-3 { margin-left: 0; width: 100%; float: none; padding: 0; }

/* bootstrap-select cuando el <select> trae .form-control (evita doble borde) */
body.xt .bootstrap-select.form-control { padding: 0; border: 0; background: transparent; box-shadow: none; height: auto; }
body.xt .bootstrap-select.form-control > .btn { width: 100%; }
