/* ============================================================
   Tabler Dev adapter for Aramis Web
   Archivo local liviano: reproduce la base visual necesaria de Tabler
   sin compilar el proyecto source/dev ni depender de CDN.
   ============================================================ */
:root {
  color-scheme: light;
  --tblr-body-bg: #f5f7fb;
  --tblr-body-color: #182433;
  --tblr-muted: #667382;
  --tblr-border-color: #dce1e7;
  --tblr-border-radius: .375rem;
  --tblr-card-border-radius: .5rem;
  --tblr-primary: #206bc4;
  --tblr-primary-rgb: 32, 107, 196;
  --tblr-primary-darken: #1a569d;
  --tblr-secondary: #626976;
  --tblr-success: #2fb344;
  --tblr-warning: #f59f00;
  --tblr-danger: #d63939;
  --tblr-info: #4299e1;
  --tblr-light: #f8fafc;
  --tblr-dark: #1d273b;
  --tblr-white: #ffffff;
  --tblr-font-sans-serif: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --tblr-box-shadow: 0 1px 2px rgba(24,36,51,.04);
  --tblr-box-shadow-card: 0 1px 3px rgba(24,36,51,.06), 0 1px 2px rgba(24,36,51,.04);
  --tblr-sidebar-width: 17.25rem;
  --tblr-topbar-height: 3.5rem;
}

* { box-sizing: border-box; }
html { min-height: 100%; }
body {
  margin: 0;
  background: var(--tblr-body-bg);
  color: var(--tblr-body-color);
  font-family: var(--tblr-font-sans-serif);
  font-size: .875rem;
  line-height: 1.4285714;
  min-height: 100vh;
}
a { color: var(--tblr-primary); text-decoration: none; }
a:hover { color: var(--tblr-primary-darken); text-decoration: none; }
img, svg { vertical-align: middle; }
button, input, optgroup, select, textarea { font: inherit; }

.container-fluid {
  margin-inline: auto;
  padding-inline: 1.5rem;
  width: 100%;
}

.navbar {
  align-items: center;
  background: var(--tblr-white);
  border: 0 solid var(--tblr-border-color);
  box-shadow: inset 0 -1px 0 var(--tblr-border-color);
  display: flex;
  min-height: var(--tblr-topbar-height);
  position: relative;
  z-index: 20;
}
.navbar-vertical {
  align-items: stretch;
  border-right: 1px solid var(--tblr-border-color);
  box-shadow: none;
  flex-direction: column;
  min-height: 100vh;
}
.navbar-brand {
  align-items: center;
  color: var(--tblr-body-color);
  display: inline-flex;
  font-size: 1.05rem;
  font-weight: 700;
  gap: .75rem;
  line-height: 1;
  min-height: 3.5rem;
}
.navbar-toggler {
  align-items: center;
  background: transparent;
  border: 1px solid var(--tblr-border-color);
  border-radius: var(--tblr-border-radius);
  color: var(--tblr-muted);
  cursor: pointer;
  display: inline-flex;
  height: 2.25rem;
  justify-content: center;
  padding: 0;
  width: 2.25rem;
}
.navbar-toggler:hover { background: #f6f8fb; color: var(--tblr-body-color); }
.navbar-toggler-icon,
.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
  background: currentColor;
  border-radius: 999px;
  content: "";
  display: block;
  height: 2px;
  position: relative;
  width: 1.1rem;
}
.navbar-toggler-icon::before { position: absolute; top: -.36rem; }
.navbar-toggler-icon::after { position: absolute; top: .36rem; }

.card {
  background: var(--tblr-white);
  border: 1px solid var(--tblr-border-color);
  border-radius: var(--tblr-card-border-radius);
  box-shadow: var(--tblr-box-shadow-card);
  color: inherit;
}
.card-header {
  align-items: center;
  border-bottom: 1px solid var(--tblr-border-color);
  display: flex;
  gap: .75rem;
  min-height: 3rem;
  padding: .75rem 1rem;
}
.card-title { color: var(--tblr-body-color); font-size: 1rem; font-weight: 700; margin: 0; }
.card-body { padding: 1rem; }
.card-footer { border-top: 1px solid var(--tblr-border-color); padding: .75rem 1rem; }

.btn,
.button,
button.btn,
a.btn {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--tblr-border-radius);
  cursor: pointer;
  display: inline-flex;
  font-weight: 600;
  gap: .45rem;
  justify-content: center;
  min-height: 2.25rem;
  padding: .45rem .75rem;
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
  user-select: none;
  white-space: nowrap;
}
.btn:hover,
.button:hover { text-decoration: none; }
.btn-primary,
.button,
.login-submit { background: var(--tblr-primary); border-color: var(--tblr-primary); color: #fff; }
.btn-primary:hover,
.button:hover,
.login-submit:hover { background: var(--tblr-primary-darken); border-color: var(--tblr-primary-darken); color: #fff; }
.btn-secondary,
.secondary-button,
.client-tool,
.nav-tool,
.compact-action,
.mini-action { background: #f8fafc; border-color: var(--tblr-border-color); color: var(--tblr-body-color); }
.btn-secondary:hover,
.secondary-button:hover,
.client-tool:hover,
.nav-tool:hover,
.compact-action:hover,
.mini-action:hover { background: #eef2f7; border-color: #cbd3dc; color: var(--tblr-body-color); }
.btn-danger,
.danger-button { background: var(--tblr-danger); border-color: var(--tblr-danger); color: #fff; }
.btn-danger:hover,
.danger-button:hover { background: #b72929; border-color: #b72929; color: #fff; }
.btn-success { background: var(--tblr-success); border-color: var(--tblr-success); color: #fff; }
.btn-warning { background: var(--tblr-warning); border-color: var(--tblr-warning); color: #1f2d3d; }

.badge,
.pill,
.tag,
.chip {
  align-items: center;
  background: #eef3fb;
  border: 1px solid #dce6f4;
  border-radius: 999px;
  color: #3a4b5f;
  display: inline-flex;
  font-size: .75rem;
  font-weight: 700;
  gap: .25rem;
  line-height: 1;
  min-height: 1.35rem;
  padding: .25rem .55rem;
}
.badge-success { background: #eaf7ec; border-color: #ccebd1; color: #1f7a33; }
.badge-warning { background: #fff5df; border-color: #ffe3a3; color: #8a5a00; }
.badge-danger { background: #fdecec; border-color: #facaca; color: #b72929; }

.alert,
.notice {
  background: #eef6ff;
  border: 1px solid #cfe5ff;
  border-radius: var(--tblr-card-border-radius);
  color: #164875;
  padding: .75rem 1rem;
}
.alert-danger,
.notice.error,
.notice.custom-error { background: #fdecec; border-color: #facaca; color: #9c2525; }
.alert-success,
.notice.success,
.notice.custom-success { background: #eaf7ec; border-color: #ccebd1; color: #1f7a33; }
.alert-warning,
.notice.warning { background: #fff5df; border-color: #ffe3a3; color: #7c5200; }

.form-control,
.form-select,
input[type="text"], input[type="search"], input[type="number"], input[type="date"], input[type="email"], input[type="password"], select, textarea {
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: var(--tblr-border-radius);
  color: var(--tblr-body-color);
  min-height: 2.25rem;
  padding: .45rem .65rem;
  transition: border-color .15s ease, box-shadow .15s ease;
}
input:focus, select:focus, textarea:focus {
  border-color: rgba(var(--tblr-primary-rgb), .65);
  box-shadow: 0 0 0 .2rem rgba(var(--tblr-primary-rgb), .12);
  outline: 0;
}
label { color: #364758; font-weight: 650; }

.table,
table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
th {
  color: #4b5b6c;
  font-size: .75rem;
  font-weight: 750;
  letter-spacing: .025em;
  text-transform: uppercase;
}
th, td { border-bottom: 1px solid #e7ebf0; padding: .65rem .75rem; vertical-align: middle; }
tbody tr:hover { background: #f9fbfd; }
.table-responsive,
.table-wrap { overflow-x: auto; }

.dropdown-menu,
.menu-panel,
.submenu-panel {
  background: #fff;
  border: 1px solid var(--tblr-border-color);
  border-radius: var(--tblr-card-border-radius);
  box-shadow: 0 .5rem 1rem rgba(24,36,51,.08);
  color: var(--tblr-body-color);
}
.dropdown-item,
.nav-link {
  align-items: center;
  border-radius: .35rem;
  color: #364758;
  display: flex;
  gap: .5rem;
  padding: .5rem .65rem;
}
.dropdown-item:hover,
.nav-link:hover { background: #f2f6fb; color: var(--tblr-primary); }

.text-muted { color: var(--tblr-muted) !important; }
