/* =========================================================
   SETWHILE — Tema corporativo para la zona de clientes
   Se carga DESPUÉS de Bootstrap y de los estilos de cada página,
   así que solo cambia el aspecto: la lógica ASP no se toca.
   ========================================================= */
:root{
  --sw-grafito:#29282B;
  --sw-oscuro:#3B3A40;
  --sw-claro:#F3F3F4;
  --sw-linea:#E2E1E4;
  --sw-linea-2:#C9C8CC;
  --sw-texto-2:#55545A;
  --sw-burdeos:#781F3A;
  --sw-burdeos-hover:#5E1730;
  --sw-burdeos-suave:#F6E8ED;
  --sw-butano:#F47A24;

  /* Bootstrap 5.3 */
  --bs-primary:#781F3A;
  --bs-primary-rgb:120,31,58;
  --bs-link-color:#781F3A;
  --bs-link-color-rgb:120,31,58;
  --bs-link-hover-color:#5E1730;
  --bs-link-hover-color-rgb:94,23,48;
  --bs-body-color:#29282B;
  --bs-body-color-rgb:41,40,43;
  --bs-body-bg:#F3F3F4;
  --bs-border-color:#E2E1E4;
  --bs-secondary-color:#55545A;
  --bs-body-font-family:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bs-border-radius:.5rem;
  --bs-focus-ring-color:rgba(120,31,58,.25);
  --sw-muted:#55545A;
}

body,body.bg-light{background:var(--sw-claro)!important;color:var(--sw-grafito);font-family:var(--bs-body-font-family)}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{color:var(--sw-grafito);letter-spacing:-0.015em;font-weight:600}
.text-muted,.small-muted,.menu-sub,.project-desc{color:var(--sw-texto-2)!important}
a{color:var(--sw-burdeos)}
a:hover{color:var(--sw-burdeos-hover)}
code,.font-monospace{font-family:'IBM Plex Mono',ui-monospace,Consolas,monospace}

/* ---------- Cabecera ---------- */
.navbar{background:#fff!important;border-bottom:1px solid var(--sw-linea)!important;min-height:72px}
.navbar-brand{display:flex!important;align-items:center;gap:12px;color:var(--sw-grafito)!important;letter-spacing:0;font-weight:400}
.sw-marca-texto{display:flex;flex-direction:column;line-height:1.05}
.sw-marca-nombre{font-weight:700;font-size:20px;letter-spacing:-0.02em;color:var(--sw-grafito)}
.sw-marca-sub{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;color:#6A6970}
.sw-marca-zona{font-size:12px;font-weight:600;color:var(--sw-burdeos);border:1px solid var(--sw-burdeos-suave);background:var(--sw-burdeos-suave);border-radius:999px;padding:3px 10px;margin-left:4px}
@media (max-width:576px){.sw-marca-zona{display:none}}

/* ---------- Botones ---------- */
.btn{font-weight:600;border-radius:8px}
.btn-primary{--bs-btn-bg:#781F3A;--bs-btn-border-color:#781F3A;--bs-btn-hover-bg:#5E1730;--bs-btn-hover-border-color:#5E1730;--bs-btn-active-bg:#5E1730;--bs-btn-active-border-color:#5E1730;--bs-btn-disabled-bg:#781F3A;--bs-btn-disabled-border-color:#781F3A;--bs-btn-focus-shadow-rgb:120,31,58}
.btn-outline-primary{--bs-btn-color:#781F3A;--bs-btn-border-color:#781F3A;--bs-btn-hover-bg:#781F3A;--bs-btn-hover-border-color:#781F3A;--bs-btn-active-bg:#5E1730;--bs-btn-active-border-color:#5E1730;--bs-btn-focus-shadow-rgb:120,31,58}
.btn-outline-secondary{--bs-btn-color:#29282B;--bs-btn-border-color:#C9C8CC;--bs-btn-hover-bg:#29282B;--bs-btn-hover-border-color:#29282B;--bs-btn-hover-color:#fff}
.btn-secondary,.btn-dark{--bs-btn-bg:#3B3A40;--bs-btn-border-color:#3B3A40;--bs-btn-hover-bg:#29282B;--bs-btn-hover-border-color:#29282B}
.btn-success{--bs-btn-bg:#2F7D4F;--bs-btn-border-color:#2F7D4F;--bs-btn-hover-bg:#25653F;--bs-btn-hover-border-color:#25653F}
.btn-outline-success{--bs-btn-color:#2F7D4F;--bs-btn-border-color:#2F7D4F;--bs-btn-hover-bg:#2F7D4F;--bs-btn-hover-border-color:#2F7D4F}
.btn-link{color:var(--sw-burdeos)}

/* ---------- Tarjetas ---------- */
.card{border:1px solid var(--sw-linea)!important;border-radius:14px!important;background:#fff}
.card-shadow{box-shadow:0 1px 2px rgba(41,40,43,.04),0 8px 24px rgba(41,40,43,.05)!important}
.card-header{background:#fff;border-bottom:1px solid var(--sw-linea)}

/* Tarjetas de menú (panel y facturación) */
.menu-card{border-color:var(--sw-linea)!important;background:#fff!important}
.menu-card:hover{border-color:var(--sw-burdeos)!important;box-shadow:0 .5rem 1.2rem rgba(41,40,43,.08)!important}
.menu-icon{background:var(--sw-burdeos-suave)!important;color:var(--sw-burdeos)}
.menu-icon i{color:var(--sw-burdeos)}
.menu-card.primary{border-color:var(--sw-burdeos)!important;background:#fff!important;border-top-width:3px!important}
.menu-card.primary .menu-icon{background:var(--sw-burdeos)!important}
.menu-card.primary .menu-icon i{color:#fff!important}
.menu-card.active{border-color:var(--sw-burdeos)!important;box-shadow:0 .5rem 1.2rem rgba(120,31,58,.14)!important}
.menu-disabled:hover{border-color:var(--sw-linea)!important}

/* ---------- Chapas / pills ---------- */
.pill,.menu-badge,.metric-badge,.stat-chip,.meta-id{border-color:var(--sw-linea)!important;background:#fff!important;color:var(--sw-texto-2)!important}
.pill-ticket,.meta-tickets{background:#FFF1E6!important;color:#9A4A0C!important;border-color:#F8C9A4!important}
.meta-users{background:var(--sw-oscuro)!important;border-color:var(--sw-oscuro)!important;color:#fff!important}
.badge.bg-primary,.text-bg-primary{background-color:var(--sw-burdeos)!important;color:#fff!important}
.badge.bg-secondary,.text-bg-secondary{background-color:var(--sw-oscuro)!important}
.dot-pending{background:var(--sw-butano)!important}
.dot-paid{background:#2F7D4F!important}

/* ---------- Tablas ---------- */
.table{--bs-table-color:#29282B;--bs-table-border-color:#E2E1E4;--bs-table-striped-bg:#F9F9FA;--bs-table-hover-bg:#F6E8ED}
.table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:#6A6970!important;font-weight:600;background:#fff!important;border-bottom:1px solid var(--sw-linea-2)!important}
.projects-table tbody tr:nth-child(odd) td{background:#fff!important}
.projects-table tbody tr:nth-child(even) td{background:#F9F9FA!important}
.projects-table tbody tr:hover td{background:var(--sw-burdeos-suave)!important}
.projects-table td{border-bottom-color:var(--sw-linea)!important}
.project-title,.code-cell{color:var(--sw-grafito)!important}

/* ---------- Pestañas ---------- */
.nav-tabs{border-bottom-color:var(--sw-linea)}
.nav-tabs .nav-link{color:var(--sw-texto-2)}
.nav-tabs .nav-link:hover{color:var(--sw-burdeos);border-color:transparent}
.nav-tabs .nav-link.active{color:var(--sw-burdeos);border-color:var(--sw-linea) var(--sw-linea) #fff;border-top:3px solid var(--sw-burdeos)}
.tab-content{border-color:var(--sw-linea)!important}
.nav-pills .nav-link.active{background:var(--sw-burdeos)}

/* ---------- Formularios ---------- */
.form-label{font-weight:600;font-size:.92rem}
.form-control,.form-select{border-color:var(--sw-linea-2);min-height:44px;background-color:#fff}
.form-control:disabled,.form-control[readonly]{background-color:#F3F3F4}
.form-control:focus,.form-select:focus{border-color:var(--sw-burdeos);box-shadow:0 0 0 .2rem rgba(120,31,58,.18)}
.form-check-input:checked{background-color:var(--sw-burdeos);border-color:var(--sw-burdeos)}
.form-check-input:focus{box-shadow:0 0 0 .2rem rgba(120,31,58,.18);border-color:var(--sw-burdeos)}
.user-box{border-color:var(--sw-linea)!important}
.user-box:hover{border-color:var(--sw-burdeos)!important}

/* ---------- Avisos ---------- */
.alert{border-radius:10px}
.alert-primary,.alert-info{background:var(--sw-burdeos-suave);border-color:#E9CBD5;color:#5E1730}
.alert-warning{background:#FFF1E6;border-color:#F8C9A4;color:#7A3A08}

/* ---------- Paginación ---------- */
.pagination{--bs-pagination-color:#781F3A;--bs-pagination-active-bg:#781F3A;--bs-pagination-active-border-color:#781F3A;--bs-pagination-hover-color:#5E1730;--bs-pagination-focus-box-shadow:0 0 0 .2rem rgba(120,31,58,.18)}

/* ---------- Acceso (login) ---------- */
.sw-login main{min-height:calc(100vh - 72px - 64px);display:flex;align-items:center}
.sw-login main > .row{width:100%;margin-left:0;margin-right:0}
.sw-login .card{border-top:4px solid var(--sw-burdeos)!important}
.sw-login h1{font-size:1.6rem!important}

/* ---------- Pie común ---------- */
.sw-pie-clientes{border-top:1px solid var(--sw-linea);padding:20px 0;font-size:13px;color:#6A6970;text-align:center}
.sw-pie-clientes a{color:#6A6970}
