/* Layout renovado para credenciales */
.credentials-page {
  display: block;
  min-height: 100vh;
}

.cred-page-shell {
  width: min(1380px, calc(100vw - 32px));
  margin: 28px auto;
  display: grid;
  gap: 20px;
}

.cred-page-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
}

.cred-page-header h1 {
  margin: 0;
  font-size: clamp(1.7rem, 2.4vw, 2.2rem);
  color: rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
}

.cred-page-header .muted {
  margin: 8px 0 0;
  color: rgba(var(--adm-sup-e8f1ff-t, var(--adm-sup-e8f1ff, 232,241,255)), calc(.86 + (1 - .86) * var(--adm-alfa-letra, 0)));
  max-width: 760px;
}

.cred-eyebrow {
  margin: 0 0 6px;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  color: rgba(var(--adm-sup-b4d6ff-t, var(--adm-sup-b4d6ff, 180,214,255)), calc(.92 + (1 - .92) * var(--adm-alfa-letra, 0)));
}

.cred-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cred-flex-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(320px, .95fr);
  align-items: start;
  gap: 18px;
}

.cred-panel {
  background: linear-gradient(150deg, rgba(var(--adm-sup-0e264e-a, var(--adm-sup-0e264e, 14,38,78)), .78), rgba(var(--adm-acento-1e4e92-a, var(--adm-acento-1e4e92, 30,78,146)), .62));
  border: 1px solid rgba(var(--adm-sup-9cc5ff-a, var(--adm-sup-9cc5ff, 156,197,255)), .35);
  border-radius: 18px;
  box-shadow: 0 18px 36px rgba(var(--adm-sup-0a1e42-s, var(--adm-sup-0a1e42, 10,30,66)), .26);
  backdrop-filter: blur(6px);
}

.user-list-large {
  min-width: 0;
  padding: 18px;
}

.cred-panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.cred-panel-header h2 {
  margin: 0;
  color: rgb(var(--adm-sup-f4f8ff-t, var(--adm-sup-f4f8ff, 244,248,255)));
  font-size: 1.22rem;
}

.cred-chip {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .42);
  background: rgba(var(--adm-sup-0c1e3e-a, var(--adm-sup-0c1e3e, 12,30,62)), .38);
  color: rgb(var(--adm-sup-d3e6ff-t, var(--adm-sup-d3e6ff, 211,230,255)));
  font-size: 12px;
  font-weight: 600;
}

.user-list-large .table-wrapper {
  max-height: min(68vh, 760px);
  border: 1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .35);
  border-radius: 14px;
  background: rgba(var(--adm-sup-091831-a, var(--adm-sup-091831, 9,24,49)), .45);
}

.user-list-large .data-table {
  font-size: 14px;
  min-width: 700px;
}

.user-list-large .data-table th {
  background: linear-gradient(135deg, rgba(var(--adm-acento-2857a0-a, var(--adm-acento-2857a0, 40,87,160)), .95), rgba(var(--adm-acento-437ed3-a, var(--adm-acento-437ed3, 67,126,211)), .9));
  color: rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
  border-bottom-color: rgba(var(--adm-sup-9dc3ff-a, var(--adm-sup-9dc3ff, 157,195,255)), .42);
}

.user-list-large .data-table td {
  color: rgb(var(--adm-sup-e2edff-t, var(--adm-sup-e2edff, 226,237,255)));
  border-bottom-color: rgba(var(--adm-sup-9cc5ff-a, var(--adm-sup-9cc5ff, 156,197,255)), .18);
}

.user-list-large .data-table tr:nth-child(even) {
  background: rgba(var(--adm-sup-0d2243-a, var(--adm-sup-0d2243, 13,34,67)), .46);
}

.status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 84px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .01em;
}

.status-pill.is-active {
  background: rgba(var(--adm-estado-16a34a-a, var(--adm-estado-16a34a, 22,163,74)), .22);
  border: 1px solid rgba(var(--adm-estado-6ee7b7-a, var(--adm-estado-6ee7b7, 110,231,183)), .45);
  color: rgb(var(--adm-estado-b8f7d1-t, var(--adm-estado-b8f7d1, 184,247,209)));
}

.status-pill.is-inactive {
  background: rgba(var(--adm-estado-ef4444-a, var(--adm-estado-ef4444, 239,68,68)), .18);
  border: 1px solid rgba(var(--adm-estado-fca5a5-a, var(--adm-estado-fca5a5, 252,165,165)), .45);
  color: rgb(var(--adm-estado-ffd7d7-t, var(--adm-estado-ffd7d7, 255,215,215)));
}
.ml-modal {
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  z-index:999;
}

.ml-modal.open {
  display:flex;
}

.ml-modal-backdrop {
  position:absolute;
  inset:0;
  background:rgba(var(--adm-sup-0a152e-a, var(--adm-sup-0a152e, 10,21,46)), .72);
  backdrop-filter:blur(4px);
}

.ml-modal-dialog {
  position:relative;
  background:linear-gradient(135deg, rgba(var(--adm-sup-112448-a, var(--adm-sup-112448, 17,36,72)), .96), rgba(var(--adm-acento-1c4c92-a, var(--adm-acento-1c4c92, 28,76,146)), .94));
  border-radius:20px;
  border:1px solid rgba(var(--adm-acento-78aaeb-a, var(--adm-acento-78aaeb, 120,170,235)), .45);
  box-shadow:0 28px 54px rgba(var(--adm-sup-06122c-s, var(--adm-sup-06122c, 6,18,44)), .45);
  padding:24px 28px;
  width:min(520px, 92vw);
  color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
  display:flex;
  flex-direction:column;
  gap:18px;
}

.ml-modal-header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}

.ml-modal-header h2 {
  margin:0;
  font-size:22px;
  font-weight:650;
}

.ml-modal-close {
  background:none;
  border:none;
  color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
  font-size:24px;
  line-height:1;
  cursor:pointer;
  padding:6px;
  border-radius:8px;
  transition:background .2s ease;
}

.ml-modal-close:hover,
.ml-modal-close:focus {
  background:rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .22);
}

.ml-modal-body {
  display:flex;
  flex-direction:column;
  gap:16px;
}

.ml-modal-text {
  margin:0;
  color:rgba(var(--adm-sup-e4eeff-t, var(--adm-sup-e4eeff, 228,238,255)), calc(.86 + (1 - .86) * var(--adm-alfa-letra, 0)));
  font-size:15px;
}

.ml-modal-account-list {
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:240px;
  overflow:auto;
  padding-right:6px;
}

.ml-modal-account-option {
  display:flex;
  align-items:flex-start;
  gap:14px;
  background:rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .05);
  border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .2);
  border-radius:14px;
  padding:12px 14px;
  cursor:pointer;
  transition:background .2s ease, border-color .2s ease;
}

.ml-modal-account-option:hover,
.ml-modal-account-option:focus-within {
  background:rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .16);
  border-color:rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .45);
}

.ml-modal-account-option input[type="radio"] {
  margin-top:4px;
  accent-color:rgb(var(--adm-acento-2f6ff2, 47,111,242));
}

.ml-modal-account-name {
  font-weight:600;
  font-size:15px;
  display:block;
  color:rgb(var(--adm-sup-f9fbff-t, var(--adm-sup-f9fbff, 249,251,255)));
}

.ml-modal-account-alias {
  font-size:13px;
  color:rgba(var(--adm-sup-c7deff-t, var(--adm-sup-c7deff, 199,222,255)), calc(.75 + (1 - .75) * var(--adm-alfa-letra, 0)));
  display:block;
}

.ml-modal-footer {
  display:flex;
  justify-content:flex-end;
  gap:12px;
}

.ml-modal-footer .btn {
  min-width:160px;
}

.ml-modal-footer .btn:disabled {
  opacity:.6;
  cursor:not-allowed;
}

.cred-form-card {
  min-width: 0;
  max-width: none;
  width: 100%;
  padding: 20px;
}

.cred-form-card h2 {
  margin: 0;
  font-size: 1.28rem;
  color: rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
}

.credentials-form-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.hidden-autofill-trap {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
/* Paleta azul corporativa */
:root{
  --brand:rgb(var(--adm-sup-0a2e66, 10,46,102)); --brand-t: rgb(var(--adm-sup-0a2e66-t, var(--adm-sup-0a2e66, 10,46,102))); /* azul principal */
  --brand-2:rgb(var(--adm-acento-1e73be, 30,115,190)); --brand-2-t: rgb(var(--adm-acento-1e73be-t, var(--adm-acento-1e73be, 30,115,190))); /* azul secundario */
  --bg:rgb(var(--adm-sup-0b1220, 11,18,32)); /* fondo topbar y sidebar oscuro */
  --bg-2:rgb(var(--adm-sup-0f172a, 15,23,42)); /* contenido */
  --card:rgb(var(--adm-sup-111827, 17,24,39)); /* tarjetas */
  --muted:rgb(var(--adm-sup-94a3b8, 148,163,184)); --muted-t: rgb(var(--adm-sup-94a3b8-t, var(--adm-sup-94a3b8, 148,163,184))); /* texto suave */
  --text:rgb(var(--adm-sup-e2e8f0, 226,232,240)); --text-t: rgb(var(--adm-sup-e2e8f0-t, var(--adm-sup-e2e8f0, 226,232,240))); /* texto principal */
  --ok:rgb(var(--adm-estado-16a34a, 22,163,74)); --ok-t: rgb(var(--adm-estado-16a34a-t, var(--adm-estado-16a34a, 22,163,74))); --warn:rgb(var(--adm-estado-eab308, 234,179,8)); --err:rgb(var(--adm-estado-ef4444, 239,68,68)); --err-t: rgb(var(--adm-estado-ef4444-t, var(--adm-estado-ef4444, 239,68,68)));
  --button-start:rgb(var(--adm-acento-5aaefd, 90,174,253));
  --button-end:rgb(var(--adm-acento-2563eb, 37,99,235));
  --button-border:rgb(var(--adm-acento-1f4fd6, 31,79,214));
  --button-shadow:0 10px 22px rgba(var(--adm-acento-2563eb-s, var(--adm-acento-2563eb, 37,99,235)), .28);
  --tile-gradient:linear-gradient(135deg, rgba(var(--adm-sup-0a2e66-a, var(--adm-sup-0a2e66, 10,46,102)), .82), rgba(var(--adm-acento-1e73be-a, var(--adm-acento-1e73be, 30,115,190)), .78));
  --tile-gradient-hover:linear-gradient(135deg, rgba(var(--adm-acento-1e73be-a, var(--adm-acento-1e73be, 30,115,190)), .9), rgba(var(--adm-acento-4895eb-a, var(--adm-acento-4895eb, 72,149,235)), .92));
  --tile-border:rgba(var(--adm-acento-94c2ff-a, var(--adm-acento-94c2ff, 148,194,255)), .32);
  --tile-shadow:0 16px 28px rgba(var(--adm-sup-0c2652-s, var(--adm-sup-0c2652, 12,38,82)), .25);
}
*{box-sizing:border-box}
html,body{
  margin:0;
  padding:0;
  font-family:'Poppins',system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text-t, var(--text));
  background:linear-gradient(135deg,rgb(var(--adm-sup-0a2e66, 10,46,102)),rgb(var(--adm-acento-1e73be, 30,115,190)));
  min-height:100%;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  background:radial-gradient(circle at 20% 20%, rgba(var(--adm-acento-76c0ff-a, var(--adm-acento-76c0ff, 118,192,255)), .28), transparent 55%),
             radial-gradient(circle at 80% 10%, rgba(var(--adm-acento-2563eb-a, var(--adm-acento-2563eb, 37,99,235)), .24), transparent 45%),
             radial-gradient(circle at 50% 85%, rgba(var(--adm-acento-0e3066-a, var(--adm-acento-0e3066, 14,48,102)), .32), transparent 50%);
  pointer-events:none;
  z-index:-2;
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  background:rgba(var(--adm-sup-020d23-a, var(--adm-sup-020d23, 2,13,35)), .35);
  mix-blend-mode:overlay;
  pointer-events:none;
  z-index:-1;
}

/* Auth */
body.auth{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg, rgba(var(--adm-sup-0a2e66-a, var(--adm-sup-0a2e66, 10,46,102)), .9), rgba(var(--adm-acento-1e73be-a, var(--adm-acento-1e73be, 30,115,190)), .85))}
.auth-card{background:rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), 0.05098);border:1px solid rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), 0.101961);padding:28px;border-radius:14px;backdrop-filter:blur(6px);width:min(360px,92vw)}
.auth-card h1{margin:0 0 6px}
.auth-card .muted{color:rgba(var(--adm-sup-e5e7eb-t, var(--adm-sup-e5e7eb, 229,231,235)), calc(0.8 + (1 - 0.8) * var(--adm-alfa-letra, 0)));margin:0 0 12px;font-size:14px}
.auth-card form{display:grid;gap:10px;margin-top:8px}
/* Base sizing for form controls */
.auth-card input,
.auth-card select,
.auth-card textarea{width:100%;padding:10px;border-radius:10px;border:1px solid rgb(var(--adm-sup-cbd5e1, 203,213,225))}
/* Inputs and textareas: white background with dark text */
.auth-card input[type="text"],
.auth-card input[type="password"],
.auth-card input[type="email"],
.auth-card textarea{background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)))}
/* Placeholder color for better contrast */
.auth-card input::placeholder{color:rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)))}
/* Keep selects white for better readability when open */
.auth-card select{background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));border:1px solid rgb(var(--adm-sup-cbd5e1, 203,213,225))}
.auth-card select:focus,
.auth-card select:active{background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));outline:none}
.auth-card select option{background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)))}
.auth-card label{font-weight:600;margin-top:4px}
.auth-card .btn,
.auth-card a.btn,
.auth-card button.btn {
  margin-top:6px;
  width:100%;
  padding:12px 18px; /* match .btn */
  min-height:56px; /* match .btn */
  font-size:18px; /* match .btn */
  box-sizing:border-box;
  display:block; /* ensure same rendering for <a> and <button> */
  line-height:1.2;
  text-align:center;
}
.hint{font-size:12px;color:rgba(var(--adm-sup-e5e7eb-t, var(--adm-sup-e5e7eb, 229,231,235)), calc(0.666667 + (1 - 0.666667) * var(--adm-alfa-letra, 0)));margin-top:10px}

body.auth.credentials-page {
  display: block;
  min-height: 100vh;
  padding: 8px 0 22px;
}

.credentials-page .cred-form-card {
  width: 100%;
  max-width: none;
}

.credentials-page .cred-form-card .muted {
  margin-top: 8px;
  color: rgba(var(--adm-sup-e2edff-t, var(--adm-sup-e2edff, 226,237,255)), calc(.82 + (1 - .82) * var(--adm-alfa-letra, 0)));
}

.credentials-page .editing-banner {
  background: rgba(var(--adm-sup-0a1c3a-a, var(--adm-sup-0a1c3a, 10,28,58)), .7);
  border-color: rgba(var(--adm-acento-8cb8ff-a, var(--adm-acento-8cb8ff, 140,184,255)), .45);
}

.credentials-page .flash {
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .35);
  margin-bottom: 8px;
  font-size: 14px;
  color: rgb(var(--adm-sup-e5f0ff-t, var(--adm-sup-e5f0ff, 229,240,255)));
  background: rgba(var(--adm-sup-0b1e3a-a, var(--adm-sup-0b1e3a, 11,30,58)), .58);
}

.credentials-page .flash.success {
  border-color: rgba(var(--adm-estado-22c55e-a, var(--adm-estado-22c55e, 34,197,94)), .45);
  background: rgba(var(--adm-estado-14532d-a, var(--adm-estado-14532d, 20,83,45)), .45);
}

.credentials-page .flash.error {
  border-color: rgba(var(--adm-estado-f87171-a, var(--adm-estado-f87171, 248,113,113)), .5);
  background: rgba(var(--adm-estado-7f1d1d-a, var(--adm-estado-7f1d1d, 127,29,29)), .45);
}

@media (max-width: 1080px) {
  .cred-flex-layout {
    grid-template-columns: 1fr;
  }

  .credentials-page .cred-form-card {
    order: -1;
  }

  .credentials-page .credentials-form-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .cred-page-shell {
    width: calc(100vw - 18px);
    margin: 14px auto;
    gap: 14px;
  }

  .user-list-large,
  .credentials-page .cred-form-card {
    padding: 14px;
  }

  .cred-page-header {
    align-items: flex-start;
  }
}

.auth-card .user-list{margin-top:26px;padding-top:18px;border-top:1px solid rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), 0.121569)}
.editing-banner{display:flex;justify-content:space-between;align-items:center;background:rgba(var(--adm-sup-0b1220-a, var(--adm-sup-0b1220, 11,18,32)), 0.65098);border:1px solid rgb(var(--adm-acento-1d3a6b, 29,58,107));padding:8px 12px;border-radius:10px;margin-bottom:12px;font-size:14px}
.editing-banner .link{color:rgb(var(--adm-sup-9cc7ff-t, var(--adm-sup-9cc7ff, 156,199,255)));text-decoration:none;font-weight:600}
.editing-banner .link:hover{text-decoration:underline}
.credentials-form{display:grid;gap:10px;margin-top:8px}
.user-list{margin-top:18px}
.table-wrapper{overflow:auto;border:1px solid rgb(var(--adm-sup-1f2937, 31,41,55));border-radius:12px}
.data-table{width:100%;border-collapse:collapse;min-width:480px}
.data-table th,.data-table td{padding:10px 12px;border-bottom:1px solid rgb(var(--adm-sup-1f2937, 31,41,55));color:rgb(var(--adm-sup-cbd5e1-t, var(--adm-sup-cbd5e1, 203,213,225)));text-align:left}
.data-table th{background:rgb(var(--adm-sup-0b1220, 11,18,32));font-weight:600}
.data-table th.sortable{
  cursor:pointer;
  user-select:none;
  position:relative;
  padding-right:28px;
}
.data-table th.sortable::after{
  content:'⇅';
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  font-size:12px;
  color:rgba(var(--adm-sup-e2e8f0-t, var(--adm-sup-e2e8f0, 226,232,240)), calc(.6 + (1 - .6) * var(--adm-alfa-letra, 0)));
  transition:color .2s ease;
}
.data-table th.sortable[data-sort="asc"]::after{
  content:'▲';
  color:rgb(var(--adm-neutro-f8fafc-t, var(--adm-neutro-f8fafc, 248,250,252)));
}
.data-table th.sortable[data-sort="desc"]::after{
  content:'▼';
  color:rgb(var(--adm-neutro-f8fafc-t, var(--adm-neutro-f8fafc, 248,250,252)));
}
.data-table tr:nth-child(even){background:rgb(var(--adm-sup-111b30, 17,27,48))}
.data-table .actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:220px}
.data-table .actions form{margin:0}
.data-table .actions .btn{width:auto;min-height:0;padding:8px 12px;font-size:14px}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 18px;
  min-height:48px;
  font-size:16px;
  font-weight:600;
  border-radius:12px;
  border:2px solid var(--button-border);
  background:linear-gradient(135deg,var(--button-start),var(--button-end));
  color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
  text-decoration:none;
  box-shadow:0 8px 18px rgba(var(--adm-acento-1f4fd6-s, var(--adm-acento-1f4fd6, 31,79,214)), .22);
  transition:transform .15s ease,box-shadow .2s ease,background .2s ease,color .2s ease;
  cursor:pointer;
}
.btn:hover,
.btn:focus{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(var(--adm-acento-2563eb-s, var(--adm-acento-2563eb, 37,99,235)), .32);
  background:linear-gradient(135deg,rgb(var(--adm-acento-76c0ff, 118,192,255)),rgb(var(--adm-acento-2f6ff2, 47,111,242)));
  color:rgb(var(--adm-color-fdfcff-t, var(--adm-color-fdfcff, 253,252,255)));
}

.btn-sm{width:auto;min-height:0;padding:8px 12px;font-size:14px;border-radius:10px}
.btn-secondary{background:linear-gradient(135deg,var(--button-start),var(--button-end));color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));border:2px solid var(--button-border);box-shadow:0 6px 0 rgba(var(--adm-acento-2563eb-s, var(--adm-acento-2563eb, 37,99,235)), .18)}
.btn-secondary:disabled{opacity:.5;cursor:not-allowed}
.btn-tertiary{background:linear-gradient(135deg,var(--button-start),var(--button-end));color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));border:2px solid var(--button-border)}
.btn-tertiary:hover,.btn-tertiary:focus{background:linear-gradient(135deg,rgb(var(--adm-acento-76c0ff, 118,192,255)),rgb(var(--adm-acento-2f6ff2, 47,111,242)));color:rgb(var(--adm-color-fdfcff-t, var(--adm-color-fdfcff, 253,252,255)))}
.btn-danger{background:rgb(var(--adm-estado-ef4444, 239,68,68));border:2px solid rgb(var(--adm-estado-b91c1c, 185,28,28));color:rgb(var(--adm-blanco-ffffff-t, var(--adm-blanco-ffffff, 255,255,255)));box-shadow:0 6px 0 rgba(var(--adm-negro-000000-s, var(--adm-negro-000000, 0,0,0)), 0.1)}
.btn-danger:disabled{opacity:.5;cursor:not-allowed}
.auth-card .user-list h2{margin:0 0 12px;font-size:20px;font-weight:600;color:rgb(var(--adm-neutro-f8fafc-t, var(--adm-neutro-f8fafc, 248,250,252)))}
.auth-card .table-wrapper{max-height:240px;overflow:auto;border:1px solid rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), 0.101961);border-radius:12px}
.auth-card .data-table{width:100%;border-collapse:collapse;font-size:14px;color:rgb(var(--adm-sup-e2e8f0-t, var(--adm-sup-e2e8f0, 226,232,240)))}
.auth-card .data-table th,
.auth-card .data-table td{padding:10px 12px;border-bottom:1px solid rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), 0.070588);text-align:left;white-space:nowrap}
.auth-card .data-table th{background:rgba(var(--adm-sup-0f172a-a, var(--adm-sup-0f172a, 15,23,42)), .65);position:sticky;top:0;backdrop-filter:blur(4px)}
.auth-card .data-table tr:last-child td{border-bottom:none}
.auth-card .data-table td:last-child{text-align:center}

/* Layout */
.topbar{position:sticky;top:0;min-height:56px;background:var(--bg);display:flex;align-items:center;gap:12px;padding:8px 24px;border-bottom:1px solid rgb(var(--adm-sup-283247, 40,50,71))}
.topbar .brand{font-weight:700}
.topbar .icon{background:none;border:1px solid rgb(var(--adm-sup-283247, 40,50,71));color:rgb(var(--adm-sup-cbd5e1-t, var(--adm-sup-cbd5e1, 203,213,225)));border-radius:8px;padding:6px 10px;cursor:pointer}
.topbar .user{margin-left:auto;display:flex;align-items:center;gap:10px}

.topbar .btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 26px;
  min-height:46px;
  font-size:15px;
  border-radius:999px;
  box-shadow:0 4px 10px rgba(var(--adm-sup-080f21-s, var(--adm-sup-080f21, 8,15,33)), .28);
  font-weight:600;
  letter-spacing:.1px;
}

.topbar .btn.btn-outline{
  background:linear-gradient(135deg,rgb(var(--adm-sup-0a2e66, 10,46,102)),rgb(var(--adm-acento-1e73be, 30,115,190)));
  border:1px solid rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .25);
  color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
}

.topbar .btn.btn-outline:hover,
.topbar .btn.btn-outline:focus{
  background:linear-gradient(135deg,rgb(var(--adm-acento-1e73be, 30,115,190)),rgb(var(--adm-acento-43a3ff, 67,163,255)));
  transform:translateY(-2px);
}

.topbar .btn.btn-danger{
  padding:10px 24px;
  min-height:46px;
  background:rgb(var(--adm-estado-e11d48, 225,29,72));
  border:1px solid rgb(var(--adm-estado-b91c1c, 185,28,28));
  color:rgb(var(--adm-blanco-ffffff-t, var(--adm-blanco-ffffff, 255,255,255)));
  box-shadow:0 4px 10px rgba(var(--adm-estado-e11d48-s, var(--adm-estado-e11d48, 225,29,72)), .28);
}

.topbar .btn.btn-danger:hover,
.topbar .btn.btn-danger:focus{
  background:rgb(var(--adm-estado-be123c, 190,18,60));
}

.sidebar{position:fixed;top:56px;left:0;bottom:0;width:220px;background:var(--bg);border-right:1px solid rgb(var(--adm-sup-283247, 40,50,71));overflow:auto}
.sidebar nav{display:flex;flex-direction:column}
.sidebar a{color:rgb(var(--adm-sup-cbd5e1-t, var(--adm-sup-cbd5e1, 203,213,225)));padding:12px 14px;text-decoration:none;border-left:3px solid transparent}
.sidebar a:hover{background:rgb(var(--adm-sup-0f172a, 15,23,42))}
.sidebar a.active{border-left-color:var(--brand-2);background:rgb(var(--adm-sup-0f172a, 15,23,42))}

.content{margin-left:220px;padding:18px}
.section{margin-bottom:18px}

.cards{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}
.card{background:var(--card);border:1px solid rgb(var(--adm-sup-1f2937, 31,41,55));border-radius:12px;padding:14px}
.card h3{margin:0 0 6px}

/* --- POS Pantallas: estilos más amigables (scoped) --- */
.pos-ui .card{
  background:rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .08);
  border:1px solid rgba(var(--adm-acento-94c2ff-a, var(--adm-acento-94c2ff, 148,194,255)), .35);
  border-radius:16px;
  padding:16px 18px;
}
.pos-ui label{font-weight:600;color:rgb(var(--adm-sup-e6edf7-t, var(--adm-sup-e6edf7, 230,237,247)));margin-right:8px}
.pos-ui input[type="text"],
.pos-ui input[type="number"],
.pos-ui select,
.pos-ui textarea{
  background:rgb(var(--adm-blanco-ffffff, 255,255,255));
  color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));
  border:1px solid rgb(var(--adm-sup-cbd5e1, 203,213,225));
  border-radius:12px;
  padding:12px 14px;
  font-size:16px;
  min-height:44px;
  box-shadow:inset 0 1px 2px rgba(var(--adm-negro-000000-s, var(--adm-negro-000000, 0,0,0)), .05);
}
.pos-ui input[type="text"]::placeholder,
.pos-ui textarea::placeholder{color:rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)))}
.pos-ui select{background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)))}
.pos-ui .form-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pos-ui .actions{display:flex;gap:10px;align-items:center}

form input[name="csrf_token"],form input[name="csrf_token"]+input[type="hidden"][name="csrf_token"]{display:none!important;position:absolute!important;opacity:0!important;width:0!important;height:0!important;pointer-events:none!important}
.ml-resumen-section{display:flex;flex-direction:column;gap:20px;background:rgba(var(--adm-sup-f0f8ff-a, var(--adm-sup-f0f8ff, 240,248,255)), .9);border:1px solid rgba(var(--adm-acento-94b4dc-a, var(--adm-acento-94b4dc, 148,180,220)), .45);border-radius:18px;padding:24px;box-shadow:0 18px 36px rgba(var(--adm-sup-0f285a-s, var(--adm-sup-0f285a, 15,40,90)), .18)}
.ml-resumen-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.ml-resumen-header h1{margin:0;color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:28px;font-weight:700}
.ml-resumen-subtitle{margin:6px 0 0;color:rgba(var(--adm-sup-334155-t, var(--adm-sup-334155, 51,65,85)), calc(.75 + (1 - .75) * var(--adm-alfa-letra, 0)));font-size:15px}
.ml-resumen-alias{margin-left:6px;color:rgba(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)), calc(.82 + (1 - .82) * var(--adm-alfa-letra, 0)))}
.ml-resumen-actions{display:flex;gap:12px}
.ml-resumen-stats{display:flex;flex-wrap:wrap;gap:16px;background:rgba(var(--adm-sup-dbe9ff-a, var(--adm-sup-dbe9ff, 219,233,255)), .7);border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .35);border-radius:14px;padding:14px 18px;font-size:15px;color:rgb(var(--adm-sup-1e293b-t, var(--adm-sup-1e293b, 30,41,59)))}
.ml-resumen-table-wrapper{border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .35);border-radius:16px;overflow:auto;background:rgb(var(--adm-sup-f3f6fc, 243,246,252))}
.ml-resumen-table{width:100%;border-collapse:collapse;min-width:920px}
.ml-resumen-table th,.ml-resumen-table td{padding:14px 16px;border-bottom:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .4);text-align:left;color:rgb(var(--adm-sup-1e293b-t, var(--adm-sup-1e293b, 30,41,59)));vertical-align:top;background:rgb(var(--adm-neutro-fdfdfd, 253,253,253))}
.ml-resumen-table th{background:rgb(var(--adm-sup-e2ecff, 226,236,255));font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.03em;color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)))}
.ml-resumen-name{font-size:16px;font-weight:600;color:rgb(var(--adm-sup-1f2937-t, var(--adm-sup-1f2937, 31,41,55)));margin-bottom:6px}
.ml-resumen-description{font-size:13px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-resumen-warning{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:10px;background:rgba(var(--adm-estado-fee4cd-a, var(--adm-estado-fee4cd, 254,228,205)), .65);color:rgb(var(--adm-estado-b45309-t, var(--adm-estado-b45309, 180,83,9)));font-size:13px}
.ml-resumen-warning::before{content:"⚠"}
.ml-resumen-ok{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:10px;background:rgba(var(--adm-estado-bbf7d0-a, var(--adm-estado-bbf7d0, 187,247,208)), .7);color:rgb(var(--adm-estado-166534-t, var(--adm-estado-166534, 22,101,52)));font-weight:600;font-size:13px}
.ml-resumen-row-missing{background:rgba(var(--adm-estado-fef3c7-a, var(--adm-estado-fef3c7, 254,243,199)), .65)}
.ml-resumen-row-missing td{border-bottom-color:rgba(var(--adm-estado-facc15-a, var(--adm-estado-facc15, 250,204,21)), .45)}
.ml-resumen-missing{margin:0;padding-left:18px;color:rgb(var(--adm-estado-b45309-t, var(--adm-estado-b45309, 180,83,9)));font-size:13px}
.ml-resumen-category{font-weight:600;color:rgb(var(--adm-celeste-0f766e-t, var(--adm-celeste-0f766e, 15,118,110)))}
.ml-resumen-category-id{font-size:12px;color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)));margin-top:2px;word-break:break-all}
.ml-resumen-category-source{margin-top:4px;font-size:12px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-resumen-note{font-size:14px;color:rgb(var(--adm-sup-1e293b-t, var(--adm-sup-1e293b, 30,41,59)));padding:12px 16px;border-radius:12px;background:rgb(var(--adm-sup-e8f0ff, 232,240,255));border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .35)}
.ml-resumen-tag{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 10px;border-radius:999px;background:rgba(var(--adm-sup-bfdbfe-a, var(--adm-sup-bfdbfe, 191,219,254)), .9);color:rgb(var(--adm-acento-1d4ed8-t, var(--adm-acento-1d4ed8, 29,78,216)));font-size:12px;font-weight:600}
.ml-resumen-tag-inline{background:rgba(var(--adm-estado-10b981-a, var(--adm-estado-10b981, 16,185,129)), .18);color:rgb(var(--adm-estado-6ee7b7-t, var(--adm-estado-6ee7b7, 110,231,183)))}
.ml-atributos-row>td{padding:0;background:rgb(var(--adm-sup-f8fbff, 248,251,255));border-bottom:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .4)}
.ml-atributos-form{display:flex;flex-direction:column;gap:18px;padding:20px;border-top:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .25)}
.ml-atributos-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ml-atributos-header h3{margin:0;font-size:18px;color:rgb(var(--adm-sup-1f2937-t, var(--adm-sup-1f2937, 31,41,55)))}
.ml-atributos-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;background:rgba(var(--adm-sup-d2e6ff-a, var(--adm-sup-d2e6ff, 210,230,255)), .55);border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .45);border-radius:14px;padding:12px 14px}
.ml-dato-editable--titulo{grid-column:1/-1}
.ml-atributos-summary .label{display:block;font-size:12px;color:rgb(var(--adm-acento-1e3a8a-t, var(--adm-acento-1e3a8a, 30,58,138)));text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.ml-atributos-summary strong{color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:15px}
.ml-dato-editable{display:flex;flex-direction:column;gap:6px}
.ml-dato-input{padding:10px 12px;border-radius:12px;border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .5);background:linear-gradient(135deg,rgba(var(--adm-sup-f8fcff-a, var(--adm-sup-f8fcff, 248,252,255)), .96),rgba(var(--adm-sup-e5efff-a, var(--adm-sup-e5efff, 229,239,255)), .94));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:13px;box-shadow:0 6px 16px rgba(var(--adm-sup-0f172a-s, var(--adm-sup-0f172a, 15,23,42)), .08);transition:border .2s ease,box-shadow .2s ease,background .2s ease}
.ml-dato-input:focus,.ml-dato-input:hover{outline:none;border-color:rgba(var(--adm-acento-4086eb-a, var(--adm-acento-4086eb, 64,134,235)), .7);background:linear-gradient(135deg,rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .98),rgba(var(--adm-sup-e8f0ff-a, var(--adm-sup-e8f0ff, 232,240,255)), .95));box-shadow:0 12px 24px rgba(var(--adm-acento-1a4799-s, var(--adm-acento-1a4799, 26,71,153)), .18)}
.ml-dato-input[type=number]::-webkit-outer-spin-button,.ml-dato-input[type=number]::-webkit-inner-spin-button{margin:0}
.ml-dato-input[type=number]{appearance:textfield;-moz-appearance:textfield}
.ml-dato-note{font-size:11px;color:rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)))}
.ml-categoria-section{margin-top:18px;padding:16px;border-radius:18px;background:rgba(var(--adm-sup-eef5ff-a, var(--adm-sup-eef5ff, 238,245,255)), .9);border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .4);display:flex;flex-direction:column;gap:12px;box-shadow:0 10px 24px rgba(var(--adm-sup-0f285a-s, var(--adm-sup-0f285a, 15,40,90)), .08)}
.ml-categoria-section>.label{font-size:12px;color:rgb(var(--adm-acento-1e3a8a-t, var(--adm-acento-1e3a8a, 30,58,138)));text-transform:uppercase;letter-spacing:.04em}
.ml-categoria-editor{position:relative;display:flex;flex-direction:column;gap:12px;background:rgba(var(--adm-sup-f8fbff-a, var(--adm-sup-f8fbff, 248,251,255)), .92);border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .45);border-radius:16px;padding:14px 16px;box-shadow:0 12px 24px rgba(var(--adm-sup-0f285a-s, var(--adm-sup-0f285a, 15,40,90)), .08)}
.ml-categoria-current{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:14px}
.ml-categoria-selected{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-width:0}
.ml-categoria-selected-name{font-size:15px;font-weight:600;color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));line-height:1.35}
.ml-categoria-selected-id{font-size:12px;color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)))}
.ml-categoria-search{display:flex;flex-direction:column;gap:8px}
.ml-categoria-search-controls{display:flex;gap:10px;align-items:center}
.ml-categoria-search-input{flex:1 1 auto;min-width:200px;padding:10px 12px;border-radius:12px;border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .5);background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:13px;box-shadow:0 4px 10px rgba(var(--adm-sup-0f172a-s, var(--adm-sup-0f172a, 15,23,42)), .08)}
.ml-categoria-search-input:focus{outline:none;border-color:rgba(var(--adm-acento-4f81eb-a, var(--adm-acento-4f81eb, 79,129,235)), .7);box-shadow:0 10px 18px rgba(var(--adm-acento-4f81eb-s, var(--adm-acento-4f81eb, 79,129,235)), .18)}
.ml-categoria-search-clear{border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .45);background:linear-gradient(135deg,rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .98),rgba(var(--adm-sup-ebf4ff-a, var(--adm-sup-ebf4ff, 235,244,255)), .95));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:12px;font-weight:600;padding:9px 14px;border-radius:999px;cursor:pointer;transition:transform .2s ease,border .2s ease,box-shadow .2s ease}
.ml-categoria-search-clear:hover,.ml-categoria-search-clear:focus{outline:none;transform:translateY(-1px);border-color:rgba(var(--adm-acento-4f81eb-a, var(--adm-acento-4f81eb, 79,129,235)), .7);box-shadow:0 10px 18px rgba(var(--adm-acento-4f81eb-s, var(--adm-acento-4f81eb, 79,129,235)), .18)}
.ml-categoria-search-results{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow:auto;padding-right:4px}
.ml-categoria-search-message{padding:10px 12px;border-radius:12px;border:1px dashed rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .45);font-size:12px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)));background:rgba(var(--adm-sup-f1f7ff-a, var(--adm-sup-f1f7ff, 241,247,255)), .92)}
.ml-categoria-search-message.is-hint{color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)));border-style:dotted}
.ml-categoria-search-message.is-loading{color:rgb(var(--adm-acento-1e3a8a-t, var(--adm-acento-1e3a8a, 30,58,138)));font-weight:600}
.ml-categoria-search-message.is-error{color:rgb(var(--adm-estado-dc2626-t, var(--adm-estado-dc2626, 220,38,38)));border-color:rgba(var(--adm-estado-fca5a5-a, var(--adm-estado-fca5a5, 252,165,165)), .6)}
.ml-categoria-search-message.is-success{color:rgb(var(--adm-estado-047857-t, var(--adm-estado-047857, 4,120,87)));border-color:rgba(var(--adm-estado-86efac-a, var(--adm-estado-86efac, 134,239,172)), .6)}
.ml-categoria-search-message.is-empty{color:rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)));font-style:italic}
.ml-categoria-selected-domain,.ml-categoria-selected-path{font-size:12px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-categoria-clear{width:36px;height:36px;border-radius:999px;border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .45);background:linear-gradient(135deg,rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .96),rgba(var(--adm-sup-ecf4ff-a, var(--adm-sup-ecf4ff, 236,244,255)), .94));box-shadow:0 6px 14px rgba(var(--adm-sup-0f172a-s, var(--adm-sup-0f172a, 15,23,42)), .08);display:inline-flex;align-items:center;justify-content:center;color:rgb(var(--adm-sup-1e293b-t, var(--adm-sup-1e293b, 30,41,59)));cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border .2s ease;flex-shrink:0}
.ml-categoria-clear::before{content:"×";font-size:18px;line-height:1}
.ml-categoria-clear:focus,.ml-categoria-clear:hover{outline:none;border-color:rgba(var(--adm-estado-fb7185-a, var(--adm-estado-fb7185, 251,113,133)), .6);box-shadow:0 10px 18px rgba(var(--adm-estado-dc2626-s, var(--adm-estado-dc2626, 220,38,38)), .16);transform:translateY(-1px)}
.ml-categoria-browser{display:flex;flex-direction:column;gap:10px;border-top:1px dashed rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .45);padding-top:12px}
.ml-categoria-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px}
.ml-categoria-crumb{padding:6px 12px;border-radius:999px;border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .5);background:linear-gradient(135deg,rgba(var(--adm-sup-f4f8ff-a, var(--adm-sup-f4f8ff, 244,248,255)), .96),rgba(var(--adm-sup-e5eeff-a, var(--adm-sup-e5eeff, 229,238,255)), .94));font-size:12px;color:rgb(var(--adm-acento-1e3a8a-t, var(--adm-acento-1e3a8a, 30,58,138)));cursor:pointer;transition:transform .2s ease,border .2s ease,box-shadow .2s ease}
.ml-categoria-crumb.is-active{background:linear-gradient(135deg,rgba(var(--adm-sup-deebff-a, var(--adm-sup-deebff, 222,235,255)), .98),rgba(var(--adm-sup-cbddff-a, var(--adm-sup-cbddff, 203,221,255)), .95));border-color:rgba(var(--adm-acento-4f81eb-a, var(--adm-acento-4f81eb, 79,129,235)), .65);color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));box-shadow:0 6px 16px rgba(var(--adm-acento-3b63b3-s, var(--adm-acento-3b63b3, 59,99,179)), .16)}
.ml-categoria-crumb:focus,.ml-categoria-crumb:hover{outline:none;transform:translateY(-1px);border-color:rgba(var(--adm-acento-4f81eb-a, var(--adm-acento-4f81eb, 79,129,235)), .7);box-shadow:0 10px 18px rgba(var(--adm-acento-4f81eb-s, var(--adm-acento-4f81eb, 79,129,235)), .18)}
.ml-categoria-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow:auto;padding-right:4px}
.ml-categoria-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .35);background:linear-gradient(135deg,rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), .98),rgba(var(--adm-sup-eef6ff-a, var(--adm-sup-eef6ff, 238,246,255)), .95));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:13px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border .15s ease}
.ml-categoria-list-item:hover,.ml-categoria-list-item:focus{outline:none;border-color:rgba(var(--adm-acento-4f81eb-a, var(--adm-acento-4f81eb, 79,129,235)), .6);box-shadow:0 10px 20px rgba(var(--adm-acento-3b63b3-s, var(--adm-acento-3b63b3, 59,99,179)), .14);transform:translateY(-1px)}
.ml-categoria-list-item.is-active{border-color:rgba(var(--adm-acento-4f81eb-a, var(--adm-acento-4f81eb, 79,129,235)), .85);box-shadow:0 12px 24px rgba(var(--adm-acento-3b63b3-s, var(--adm-acento-3b63b3, 59,99,179)), .2)}
.ml-categoria-list-item.has-children .ml-categoria-list-item-arrow{color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)))}
.ml-categoria-list-item-name{flex:1 1 auto;font-weight:500;line-height:1.4}
.ml-categoria-list-item-meta{font-size:11px;color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)));margin-right:auto;padding-left:6px}
.ml-categoria-list-item-arrow{font-size:18px;font-weight:600;color:rgb(var(--adm-sup-94a3b8-t, var(--adm-sup-94a3b8, 148,163,184)))}
.ml-categoria-list-loading,.ml-categoria-list-message{padding:14px;text-align:center;font-size:13px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)));background:rgba(var(--adm-sup-f1f7ff-a, var(--adm-sup-f1f7ff, 241,247,255)), .92);border:1px dashed rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .5);border-radius:12px}
.ml-categoria-list-message.empty{color:rgb(var(--adm-acento-1e3a8a-t, var(--adm-acento-1e3a8a, 30,58,138)));border-style:dotted}
.ml-categoria-suggestion{display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:background .15s ease,transform .15s ease}
.ml-categoria-suggestion:hover,.ml-categoria-suggestion:focus{background:rgba(var(--adm-sup-e2f0ff-a, var(--adm-sup-e2f0ff, 226,240,255)), .9);transform:translateY(-1px);outline:none}
.ml-categoria-suggestion-name{font-weight:600;color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)))}
.ml-categoria-suggestion-id{font-size:12px;color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)))}
.ml-categoria-suggestion-domain{font-size:12px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-categoria-suggestion-path{font-size:12px;color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));opacity:.8}
.ml-categoria-suggestion-empty{color:rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)));font-style:italic}
.ml-categoria-suggestion-loading{color:rgb(var(--adm-acento-2563eb-t, var(--adm-acento-2563eb, 37,99,235)))}
.ml-categoria-suggestion-error{color:rgb(var(--adm-estado-dc2626-t, var(--adm-estado-dc2626, 220,38,38)))}
.ml-categoria-help{margin:0;font-size:12px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-atributos-list{display:flex;flex-direction:column;gap:12px}
.ml-atributo-item{background:rgb(var(--adm-sup-fdfdff, 253,253,255));border:1px solid rgba(var(--adm-acento-94bbff-a, var(--adm-acento-94bbff, 148,187,255)), .4);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px}
.ml-atributo-item--missing{border-color:rgba(var(--adm-estado-facc15-a, var(--adm-estado-facc15, 250,204,21)), .6);box-shadow:0 0 0 1px rgba(var(--adm-estado-facc15-s, var(--adm-estado-facc15, 250,204,21)), .35)}
.ml-atributo-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.ml-atributo-nombre{font-size:15px;font-weight:600;color:rgb(var(--adm-sup-1f2937-t, var(--adm-sup-1f2937, 31,41,55)))}
.ml-atributo-id{display:inline-flex;margin-top:4px;padding:2px 6px;border-radius:6px;background:rgba(var(--adm-sup-bfdbfe-a, var(--adm-sup-bfdbfe, 191,219,254)), .9);color:rgb(var(--adm-acento-1d4ed8-t, var(--adm-acento-1d4ed8, 29,78,216)));font-size:11px}
.ml-atributo-flags{display:flex;flex-wrap:wrap;gap:8px}
.ml-atributo-badge{display:inline-flex;padding:3px 8px;border-radius:999px;background:rgba(var(--adm-sup-dbe9ff-a, var(--adm-sup-dbe9ff, 219,233,255)), .9);color:rgb(var(--adm-acento-1d4ed8-t, var(--adm-acento-1d4ed8, 29,78,216)));font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.ml-atributo-badge.required{background:rgba(var(--adm-estado-fef08a-a, var(--adm-estado-fef08a, 254,240,138)), .9);color:rgb(var(--adm-estado-854d0e-t, var(--adm-estado-854d0e, 133,77,14)))}
.ml-atributo-inputs{display:flex;flex-wrap:wrap;gap:10px}
.ml-atributo-select{min-width:220px;padding:10px 12px;border-radius:12px;border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .6);background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:13px;box-shadow:0 4px 10px rgba(var(--adm-sup-0f172a-s, var(--adm-sup-0f172a, 15,23,42)), .08)}
.ml-atributo-text{flex:1 1 240px;padding:10px 12px;border-radius:12px;border:1px solid rgba(var(--adm-sup-94a3b8-a, var(--adm-sup-94a3b8, 148,163,184)), .5);background:rgb(var(--adm-blanco-ffffff, 255,255,255));color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));font-size:13px;box-shadow:0 4px 10px rgba(var(--adm-sup-0f172a-s, var(--adm-sup-0f172a, 15,23,42)), .08)}
.ml-atributo-help{margin:0;font-size:12px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-atributos-vacio{font-size:13px;color:rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)))}
.ml-atributos-domain{display:block;margin-top:6px;font-size:12px;color:rgb(var(--adm-acento-1e3a8a-t, var(--adm-acento-1e3a8a, 30,58,138)))}
.ml-atributos-actions{display:flex;justify-content:flex-end}
.ml-atributos-actions .btn{min-width:160px}

.table-wrap{overflow:auto;border:1px solid rgb(var(--adm-sup-1f2937, 31,41,55));border-radius:12px}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px 12px;border-bottom:1px solid rgb(var(--adm-sup-1f2937, 31,41,55));color:rgb(var(--adm-sup-cbd5e1-t, var(--adm-sup-cbd5e1, 203,213,225)))}
.table th{background:rgb(var(--adm-sup-0b1220, 11,18,32));position:sticky;top:0}

/* Fondo azul claro para filas de tabla en productos */
.table tbody tr{background:rgba(var(--adm-acento-1e73be-a, var(--adm-acento-1e73be, 30,115,190)), 0.15) !important;transition:background 0.15s}
.table tbody tr:hover{background:rgba(var(--adm-blanco-ffffff-a, var(--adm-blanco-ffffff, 255,255,255)), 0.10) !important}

.ml-account-col{text-align:center;vertical-align:middle;white-space:nowrap}

/* Vista Cargar a ML */
.cargar-ml-section{
  margin-top:16px;
  padding:28px 30px;
  border-radius:24px;
  background:linear-gradient(150deg, rgba(var(--adm-acento-1d417a-a, var(--adm-acento-1d417a, 29,65,122)), .9), rgba(var(--adm-acento-3366ad-a, var(--adm-acento-3366ad, 51,102,173)), .85));
  border:1px solid rgba(var(--adm-sup-a8cdff-a, var(--adm-sup-a8cdff, 168,205,255)), .4);
  box-shadow:0 18px 34px rgba(var(--adm-sup-0e2352-s, var(--adm-sup-0e2352, 14,35,82)), .28);
}

.cargar-ml-section h1{
  margin:0;
  font-size:28px;
  font-weight:650;
  line-height:1.25;
  color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
}

.cargar-ml-header{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:20px;
}

.cargar-ml-header-row{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  flex-wrap:wrap;
}

.cargar-ml-header-row-top{
  justify-content:flex-start;
}

.cargar-ml-header-row-search{
  justify-content:flex-start;
}

.cargar-ml-header-row-bottom{
  justify-content:flex-start;
}

.cargar-ml-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}

.cargar-ml-actions-row{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  flex-wrap:wrap;
  width:100%;
}

.cargar-ml-stock-row{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.cargar-ml-stock-label{
  color:rgb(var(--adm-sup-cbd5e1-t, var(--adm-sup-cbd5e1, 203,213,225)));
  font-size:13px;
}

.ml-search-input{
  min-width:360px;
  width:min(420px, 60vw);
  padding:9px 14px;
  background:linear-gradient(135deg, rgba(var(--adm-sup-edf5ff-a, var(--adm-sup-edf5ff, 237,245,255)), .92), rgba(var(--adm-sup-d2e7ff-a, var(--adm-sup-d2e7ff, 210,231,255)), .86));
  border:1px solid rgba(var(--adm-acento-76a0e6-a, var(--adm-acento-76a0e6, 118,160,230)), .55);
  border-radius:12px;
  color:rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));
  font-size:15px;
  box-shadow:0 12px 24px rgba(var(--adm-sup-0a2352-s, var(--adm-sup-0a2352, 10,35,82)), .24);
  transition:border .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.ml-search-input:focus,
.ml-search-input:hover{
  outline:none;
  border-color:rgba(var(--adm-acento-4086eb-a, var(--adm-acento-4086eb, 64,134,235)), .7);
  box-shadow:0 18px 34px rgba(var(--adm-acento-1a4799-s, var(--adm-acento-1a4799, 26,71,153)), .28);
  background:linear-gradient(135deg, rgba(var(--adm-sup-f8fcff-a, var(--adm-sup-f8fcff, 248,252,255)), .98), rgba(var(--adm-sup-e2f0ff-a, var(--adm-sup-e2f0ff, 226,240,255)), .94));
  color:rgb(var(--adm-sup-0b1220-t, var(--adm-sup-0b1220, 11,18,32)));
}

.ml-search-input::placeholder{color:rgba(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)), calc(.68 + (1 - .68) * var(--adm-alfa-letra, 0)))}

/* Hacer visible que la 'X' (clear) del search es clickeable */
.ml-search-input::-webkit-search-cancel-button{cursor:pointer}
.ml-search-input::-ms-clear{cursor:pointer}

.cargar-ml-actions-row #btnPublicar{
  margin-left:auto;
}

.ml-table-wrapper{
  background:linear-gradient(135deg, rgba(var(--adm-sup-0f2040-a, var(--adm-sup-0f2040, 15,32,64)), .82), rgba(var(--adm-sup-112d5c-a, var(--adm-sup-112d5c, 17,45,92)), .78));
  border:1px solid rgba(var(--adm-acento-8bb6f4-a, var(--adm-acento-8bb6f4, 139,182,244)), .4);
  box-shadow:0 24px 44px rgba(var(--adm-sup-09183a-s, var(--adm-sup-09183a, 9,24,58)), .26);
  overflow:hidden;
  border-radius:20px;
}

.cargar-ml-section .data-table{min-width:620px}

.cargar-ml-section .data-table th{
  background:linear-gradient(135deg, rgba(var(--adm-acento-346ec2-a, var(--adm-acento-346ec2, 52,110,194)), .92), rgba(var(--adm-acento-589eee-a, var(--adm-acento-589eee, 88,158,238)), .84));
  color:rgb(var(--adm-neutro-fefefe-t, var(--adm-neutro-fefefe, 254,254,254)));
  border-bottom:1px solid rgba(var(--adm-sup-bcdaff-a, var(--adm-sup-bcdaff, 188,218,255)), .45);
  font-size:14px;
  letter-spacing:.015em;
  font-weight:550;
}

.cargar-ml-section .data-table td{
  color:rgb(var(--adm-acento-1f3355-t, var(--adm-acento-1f3355, 31,51,85)));
  border-bottom:1px solid rgba(var(--adm-acento-7499d2-a, var(--adm-acento-7499d2, 116,153,210)), .18);
  background:linear-gradient(90deg, rgba(var(--adm-sup-deedff-a, var(--adm-sup-deedff, 222,237,255)), .94), rgba(var(--adm-sup-c6deff-a, var(--adm-sup-c6deff, 198,222,255)), .9));
  padding:10px 14px;
}

.cargar-ml-section .data-table tr:nth-child(even) td{
  background:linear-gradient(90deg, rgba(var(--adm-sup-f0f6ff-a, var(--adm-sup-f0f6ff, 240,246,255)), .96), rgba(var(--adm-sup-d2e7ff-a, var(--adm-sup-d2e7ff, 210,231,255)), .9));
}

.cargar-ml-section .data-table tr:hover td{
  background:linear-gradient(90deg, rgba(var(--adm-sup-b2d7ff-a, var(--adm-sup-b2d7ff, 178,215,255)), .55), rgba(var(--adm-acento-94c3ff-a, var(--adm-acento-94c3ff, 148,195,255)), .5));
  border-color:rgba(var(--adm-acento-78a8eb-a, var(--adm-acento-78a8eb, 120,168,235)), .4);
}

.cargar-ml-section .data-table tr.selected td {
  background:linear-gradient(90deg, rgb(var(--adm-estado-ffe9b3, 255,233,179)) 0%, rgb(var(--adm-estado-ffe9b3, 255,233,179)) 100%) !important;
  /* Amarillo claro, bien visible sobre el fondo azul */
  border-color:rgb(var(--adm-estado-fbbf24, 251,191,36)) !important;
  box-shadow:0 0 0 2px rgb(var(--adm-estado-fbbf24-s, var(--adm-estado-fbbf24, 251,191,36))) inset;
}

.cargar-ml-section .data-table thead .ml-filter-row th {
  background:linear-gradient(90deg, rgba(var(--adm-sup-cbe1ff-a, var(--adm-sup-cbe1ff, 203,225,255)), .92), rgba(var(--adm-sup-b7d3ff-a, var(--adm-sup-b7d3ff, 183,211,255)), .9)) !important;
  border-top:1px solid rgba(var(--adm-acento-7499d2-a, var(--adm-acento-7499d2, 116,153,210)), .45);
  border-bottom:1px solid rgba(var(--adm-acento-7499d2-a, var(--adm-acento-7499d2, 116,153,210)), .35);
  padding:12px 14px;
  color:rgb(var(--adm-acento-1f3355-t, var(--adm-acento-1f3355, 31,51,85)));
  font-weight:500;
}

.cargar-ml-section .data-table thead .ml-filter-row .ml-filter-cell-left {
  text-align:left;
}

.cargar-ml-section .data-table thead .ml-filter-row button {
  min-width:120px;
}

.ml-product-name{
  font-weight:560;
  font-size:15px;
  color:rgb(var(--adm-sup-0f1f3a-t, var(--adm-sup-0f1f3a, 15,31,58)));
}

.ml-product-description{
  margin-top:2px;
  font-size:12px;
  color:rgba(var(--adm-sup-3e5476-t, var(--adm-sup-3e5476, 62,84,118)), calc(.78 + (1 - .78) * var(--adm-alfa-letra, 0)));
}

.sku-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:'Fira Code', 'Roboto Mono', monospace;
  font-size:12px;
  padding:4px 10px;
  border-radius:10px;
  background:linear-gradient(135deg, rgba(var(--adm-sup-d6e7ff-a, var(--adm-sup-d6e7ff, 214,231,255)), .96), rgba(var(--adm-sup-bad4ff-a, var(--adm-sup-bad4ff, 186,212,255)), .9));
  color:rgb(var(--adm-sup-1a2842-t, var(--adm-sup-1a2842, 26,40,66)));
  border:1px solid rgba(var(--adm-acento-76a8eb-a, var(--adm-acento-76a8eb, 118,168,235)), .38);
  letter-spacing:.03em;
  text-transform:uppercase;
}

.ml-account-col{
  font-size:16px;
}

.ml-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  font-size:16px;
  font-weight:600;
  box-shadow:0 3px 8px rgba(var(--adm-sup-0e2352-s, var(--adm-sup-0e2352, 14,35,82)), .08);
  border:1px solid transparent;
}

.ml-status-ok{
  color:rgb(var(--adm-estado-0f5132-t, var(--adm-estado-0f5132, 15,81,50)));
  background:linear-gradient(135deg,rgb(var(--adm-estado-dffbe9, 223,251,233)),rgb(var(--adm-estado-c4f2d8, 196,242,216)));
  border-color:rgba(var(--adm-estado-22c55e-a, var(--adm-estado-22c55e, 34,197,94)), .45);
  box-shadow:0 3px 8px rgba(var(--adm-estado-10b981-s, var(--adm-estado-10b981, 16,185,129)), .18);
}

.ml-status-missing{
  color:rgb(var(--adm-estado-7f1d1d-t, var(--adm-estado-7f1d1d, 127,29,29)));
  background:linear-gradient(135deg,rgb(var(--adm-estado-fee2e2, 254,226,226)),rgb(var(--adm-estado-fecaca, 254,202,202)));
  border-color:rgba(var(--adm-estado-f87171-a, var(--adm-estado-f87171, 248,113,113)), .45);
  box-shadow:0 3px 8px rgba(var(--adm-estado-f87171-s, var(--adm-estado-f87171, 248,113,113)), .18);
}

/* Buttons */
.tile{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:var(--tile-gradient);
  border:1px solid var(--tile-border);
  border-radius:16px;
  padding:24px;
  height:140px;
  color:rgb(var(--adm-sup-f3f8ff-t, var(--adm-sup-f3f8ff, 243,248,255)));
  text-decoration:none;
  font-weight:600;
  box-shadow:var(--tile-shadow);
  transition:transform .15s ease,box-shadow .2s ease,background .2s ease;
  user-select:none;
  -webkit-user-select:none;
  font-size:18px;
  cursor:pointer;
}

.tile.primary{background:var(--tile-gradient)}

.tile:hover,
.tile:focus{
  transform:translateY(-4px);
  box-shadow:0 22px 36px rgba(var(--adm-acento-103066-s, var(--adm-acento-103066, 16,48,102)), .32);
  background:var(--tile-gradient-hover);
  color:rgb(var(--adm-blanco-ffffff-t, var(--adm-blanco-ffffff, 255,255,255)));
}

.tile:active{
  transform:scale(.98);
  box-shadow:0 12px 24px rgba(var(--adm-acento-103066-s, var(--adm-acento-103066, 16,48,102)), .35);
}
.btn-primary,
.btn-outline{
  background:linear-gradient(135deg,var(--button-start),var(--button-end));
  color:rgb(var(--adm-sup-f8fbff-t, var(--adm-sup-f8fbff, 248,251,255)));
  border:2px solid var(--button-border);
  box-shadow:0 6px 0 rgba(var(--adm-acento-2563eb-s, var(--adm-acento-2563eb, 37,99,235)), .18);
  -webkit-font-smoothing:antialiased;
}

.btn-outline{font-weight:700}

.btn-outline:hover,
.btn-outline:focus,
.btn-primary:hover,
.btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-tertiary:hover,
.btn-tertiary:focus{
  background:linear-gradient(135deg,rgb(var(--adm-acento-76c0ff, 118,192,255)),rgb(var(--adm-acento-2f6ff2, 47,111,242)));
  color:rgb(var(--adm-color-fdfcff-t, var(--adm-color-fdfcff, 253,252,255)));
  border-color:rgb(var(--adm-acento-2e6ef4, 46,110,244));
}

.btn-danger:hover,
.btn-danger:focus{
  background:rgb(var(--adm-estado-f87171, 248,113,113));
  color:rgb(var(--adm-blanco-ffffff-t, var(--adm-blanco-ffffff, 255,255,255)));
  border-color:rgb(var(--adm-estado-b91c1c, 185,28,28));
  box-shadow:0 12px 20px rgba(var(--adm-estado-ef4444-s, var(--adm-estado-ef4444, 239,68,68)), .35);
}

/* Ensure all clickable controls show hand cursor */
button, input[type="submit"], .tile{cursor:pointer}

/* Responsive */
@media (max-width:1024px){
  .cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .content{margin-left:0}
  .sidebar{transform:translateX(-100%);transition:transform .2s}
  .sidebar.open{transform:translateX(0)}
  
  /* Prevenir overflow horizontal en todo el sitio */
  body, html {
    overflow-x: hidden !important;
    max-width: 100vw !important;
    width: 100% !important;
  }
  
  .section, .content, .cargar-ml-section, .ml-table-wrapper, .data-table, .data-table tbody, .data-table tr, .data-table td {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  
  .section, .content, .cargar-ml-section {
    overflow-x: hidden !important;
  }
  
  .cargar-ml-section {
    padding: 16px 12px !important;
  }
  
  /* Cargar ML - Mobile */
  .cargar-ml-header {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  .cargar-ml-header-row{
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .cargar-ml-header-row-top{
    display:flex !important;
  }

  .cargar-ml-header-row-bottom{
    justify-content:flex-start !important;
  }
  
  .cargar-ml-actions {
    flex-direction: column !important;
    gap: 8px !important;
    align-items: stretch !important;
  }
  
  .ml-search-input {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: block;
    margin: 0 !important;
  }

  .cargar-ml-actions-row,
  .cargar-ml-stock-row,
  .cargar-ml-actions-row > *,
  .cargar-ml-stock-row > * {
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  
  .cargar-ml-actions > div {
    display: flex !important;
    flex-wrap: wrap;
    gap: 6px !important;
    margin: 0 !important;
  }
  
  .cargar-ml-actions .btn {
    margin: 0 !important;
    flex: 1;
    min-width: 0;
    font-size: 12px !important;
    padding: 8px 10px !important;
  }
  
  /* Tabla responsive - ELIMINAR scroll horizontal */
  .ml-table-wrapper {
    overflow: visible !important;
    -webkit-overflow-scrolling: auto;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  
  /* Convertir tabla en tarjetas verticales */
  .data-table {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0 !important;
    font-size: 12px !important;
  }
  
  .cargar-ml-section .data-table {
    min-width: 0 !important;
  }
  
  .data-table thead {
    display: none; /* Ocultar encabezados en móvil */
  }
  
  .data-table tbody {
    display: block;
    width: 100%;
    max-width: 100%;
  }
  
  .data-table tr {
    display: block;
    margin-bottom: 16px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border: 1px solid rgb(var(--adm-sup-e2e8f0, 226,232,240));
    border-radius: 12px;
    background: rgb(var(--adm-blanco-ffffff, 255,255,255));
    padding: 12px;
    box-shadow: 0 1px 3px rgba(var(--adm-negro-000000-s, var(--adm-negro-000000, 0,0,0)), 0.1);
    max-width: 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible;
    box-sizing: border-box !important;
  }
  
  .data-table td {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 8px 0 !important;
    border: none;
    text-align: left !important;
    font-size: 13px !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    white-space: normal !important;
    overflow: visible !important;
    hyphens: auto !important;
  }
  
  .data-table td div,
  .data-table td p {
    max-width: 100% !important;
    width: 100% !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    white-space: normal !important;
    hyphens: auto !important;
    overflow: visible !important;
    display: block !important;
  }
  
  .data-table td span {
    max-width: 100% !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    white-space: normal !important;
  }
  
  /* Separador visual entre celdas */
  .data-table td + td {
    border-top: 1px solid rgb(var(--adm-neutro-f1f5f9, 241,245,249));
    padding-top: 12px !important;
  }
  
  /* NO mostrar etiquetas para Producto y SKU (ya tienen contenido auto-descriptivo) */
  .data-table td:nth-child(1):before,
  .data-table td:nth-child(2):before {
    content: none;
  }
  
  /* SÍ mostrar etiquetas para cuentas ML (a partir de la 3ra columna) */
  .data-table td.ml-account-col {
    white-space: normal !important;
    text-align: left !important;
  }
  
  .data-table td.ml-account-col:before {
    content: attr(data-label);
    display: block;
    font-weight: 600;
    font-size: 11px;
    color: rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)));
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }
  
  .data-table th,
  .data-table td {
    font-size: 12px !important;
  }
  
  .ml-product-name {
    font-size: 14px !important;
    font-weight: 600;
    margin-bottom: 4px;
    line-height: 1.3 !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    max-width: 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    display: block !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  
  .ml-product-description {
    font-size: 11px !important;
    max-width: 100% !important;
    width: 100% !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    line-height: 1.4;
    white-space: normal !important;
    display: block !important;
  }
  
  .sku-pill {
    font-size: 10px !important;
    padding: 3px 8px !important;
    max-width: 100% !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
    display: inline-block !important;
  }
  
  .ml-status {
    font-size: 16px !important;
  }
  
  /* Modal responsive */
  .ml-modal-dialog {
    width: 95% !important;
    max-width: 95% !important;
    margin: 20px auto !important;
  }
  
  .ml-modal-header h2 {
    font-size: 18px !important;
  }
  
  .ml-modal-account-option {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    padding: 12px !important;
  }
  
  .ml-modal-account-name {
    font-size: 14px !important;
  }
  
  .ml-modal-account-alias {
    font-size: 12px !important;
  }
  
  .ml-modal-footer {
    flex-direction: column !important;
    gap: 8px !important;
  }
  
  .ml-modal-footer .btn {
    width: 100% !important;
  }
  
  /* Filtros responsive */
  .ml-filter-row th {
    padding: 6px 4px !important;
  }
  
  .btn-filtrar-sin,
  .btn-filtrar-todos {
    font-size: 10px !important;
    padding: 4px 8px !important;
    white-space: nowrap;
  }

  /* ----- Página Resumen (Revisión antes de publicar) ----- */
  .ml-resumen-section {
    padding: 16px 12px !important;
    overflow-x: hidden !important;
  }
  
  .ml-resumen-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    max-width: 100%;
  }

  .ml-resumen-header > div:first-child h1 {
    font-size: 18px;
    margin: 0 0 6px 0;
    word-wrap: break-word;
  }

  .ml-resumen-subtitle {
    font-size: 13px;
  }

  .ml-resumen-alias {
    display: block;
    margin-top: 2px;
    font-size: 11px;
  }

  .ml-resumen-actions {
    width: 100%;
  }

  .ml-resumen-actions .btn {
    width: 100%;
    font-size: 14px;
    padding: 10px 16px;
  }

  /* Tabla de formularios */
  .ml-resumen-table-wrapper {
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: auto;
    max-width: 100% !important;
    width: 100% !important;
  }

  .ml-resumen-table {
    width: 100%;
    max-width: 100%;
    min-width: 0 !important;
    display: block;
  }

  .ml-resumen-table tbody {
    display: block;
    width: 100%;
    max-width: 100%;
  }

  .ml-atributos-row {
    display: block;
    width: 100%;
    max-width: 100%;
    margin-bottom: 24px;
    border-bottom: 2px solid rgb(var(--adm-sup-e2e8f0, 226,232,240));
    padding-bottom: 16px;
    box-sizing: border-box;
  }

  .ml-atributos-row td {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    box-sizing: border-box;
  }

  /* Formulario del producto */
  .ml-atributos-form {
    padding: 12px;
    background: rgb(var(--adm-blanco-ffffff, 255,255,255));
    border-radius: 12px;
    border: 1px solid rgb(var(--adm-sup-e2e8f0, 226,232,240));
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    overflow: visible;
  }

  .ml-atributos-header {
    padding: 12px;
    background: linear-gradient(135deg, rgb(var(--adm-neutro-f8fafc, 248,250,252)) 0%, rgb(var(--adm-sup-e2e8f0, 226,232,240)) 100%);
    border-radius: 8px;
    margin-bottom: 16px;
    max-width: 100%;
    word-wrap: break-word;
  }

  .ml-atributos-header h3 {
    font-size: 15px;
    margin: 0 0 6px 0;
    line-height: 1.3;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
  }

  .ml-atributos-header a {
    font-size: 12px;
    word-break: break-all;
    overflow-wrap: break-word;
  }

  /* Grid de datos editables */
  .ml-atributos-summary {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
  }

  .ml-dato-editable {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .ml-dato-editable--titulo {
    margin-bottom: 8px;
  }

  .label {
    font-size: 13px;
    font-weight: 600;
    color: rgb(var(--adm-sup-0f172a-t, var(--adm-sup-0f172a, 15,23,42)));
    margin: 0;
  }

  .ml-dato-input {
    width: 100%;
    font-size: 14px;
    padding: 10px 12px;
    border: 1px solid rgb(var(--adm-sup-cbd5e1, 203,213,225));
    border-radius: 6px;
    background: rgb(var(--adm-blanco-ffffff, 255,255,255));
  }

  .ml-dato-note {
    font-size: 11px;
    color: rgb(var(--adm-sup-64748b-t, var(--adm-sup-64748b, 100,116,139)));
    margin: 0;
    line-height: 1.4;
  }

  .ml-title-counter {
    font-size: 11px;
    color: rgb(var(--adm-sup-475569-t, var(--adm-sup-475569, 71,85,105)));
    margin-top: 2px;
  }

  /* Fila de sincronización (checkboxes + inventario) */
  .ml-sync-row {
    flex-direction: column !important;
    gap: 12px !important;
  }

  .ml-sync-left {
    width: 100%;
    flex: 1 1 auto !important;
  }

  .ml-sync-cbs {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .ml-sync-cbs label {
    font-size: 14px;
    padding: 8px;
    background: rgb(var(--adm-neutro-f8fafc, 248,250,252));
    border-radius: 6px;
    cursor: pointer;
  }

  .ml-sync-right {
    width: 100%;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    margin-left: 0 !important;
  }

  .ml-sync-right select {
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Descripción del producto */
  .ml-product-description {
    margin: 16px 0 !important;
  }

  .ml-product-description textarea {
    min-height: 120px !important;
    font-size: 13px;
    line-height: 1.5;
  }

  /* Imágenes */
  .ml-imagenes-section {
    margin: 16px 0 !important;
  }

  .ml-imagenes-controls {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .ml-imagenes-add-input {
    width: 100% !important;
    flex: none !important;
    font-size: 13px;
  }

  .ml-imagenes-add-btn,
  .ml-imagenes-upload-btn {
    width: 100%;
    font-size: 14px;
    padding: 10px 12px;
  }

  .ml-imagenes-count {
    font-size: 13px !important;
    text-align: center;
  }

  .ml-imagenes-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
  }

  .ml-img-item img {
    height: 80px !important;
  }

  .ml-img-remove {
    width: 28px !important;
    height: 28px !important;
    line-height: 28px !important;
    font-size: 18px !important;
  }

  .ml-imagenes-empty {
    font-size: 13px !important;
    padding: 16px 8px;
  }

  /* Categoría */
  .ml-categoria-section {
    margin: 16px 0;
  }

  .ml-categoria-editor {
    background: rgb(var(--adm-neutro-f8fafc, 248,250,252));
    padding: 12px;
    border-radius: 8px;
    border: 1px solid rgb(var(--adm-sup-e2e8f0, 226,232,240));
  }

  .ml-categoria-current {
    flex-direction: column;
    gap: 12px;
    margin-bottom: 12px;
  }

  .ml-categoria-selected {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .ml-categoria-selected-name {
    font-size: 14px;
    word-break: break-word;
  }

  .ml-categoria-selected-id,
  .ml-categoria-selected-domain {
    font-size: 11px;
  }

  .ml-categoria-selected-path {
    font-size: 11px;
    word-break: break-word;
  }

  .ml-categoria-current > div:last-child {
    flex-direction: column;
    gap: 8px;
    width: 100%;
  }

  .ml-categoria-apply-all,
  .ml-categoria-clear {
    width: 100%;
    font-size: 14px;
    padding: 10px 12px;
  }

  .ml-categoria-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
  }

  .ml-categoria-crumb {
    font-size: 12px;
    padding: 6px 10px;
  }

  .ml-categoria-list {
    max-height: 280px;
    overflow-y: auto;
  }

  .ml-categoria-list-item {
    font-size: 13px;
    padding: 12px;
    min-height: 48px;
  }

  .ml-categoria-list-item-name {
    font-size: 13px;
    line-height: 1.3;
  }

  .ml-categoria-list-item-meta {
    font-size: 10px;
  }

  .ml-categoria-list-item-arrow {
    font-size: 18px;
  }

  .ml-categoria-help {
    font-size: 12px;
    margin: 8px 0 0 0;
  }

  /* Atributos ML */
  .ml-atributos-list {
    margin: 16px 0;
  }

  .ml-atributo-item {
    padding: 12px;
    margin-bottom: 12px;
    border-radius: 8px;
  }

  .ml-atributo-head {
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
    margin-bottom: 12px;
  }

  .ml-atributo-nombre,
  .ml-atributo-id {
    font-size: 13px;
  }

  .ml-atributo-flags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }

  .ml-atributo-badge {
    font-size: 10px;
    padding: 3px 8px;
  }

  .ml-atributo-inputs {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .ml-atributo-select,
  .ml-atributo-text {
    width: 100%;
    font-size: 14px;
    padding: 10px 12px;
  }

  .ml-atributo-help {
    font-size: 11px;
    margin: 4px 0 0 0;
  }

  .ml-atributos-vacio {
    font-size: 13px;
    padding: 16px 12px;
  }

  /* Acciones del formulario */
  .ml-atributos-actions {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 2px solid rgb(var(--adm-sup-e2e8f0, 226,232,240));
  }

  .ml-atributos-actions .ml-dato-editable {
    margin-bottom: 12px;
  }

  .ml-acciones-botones {
    display: flex;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .ml-acciones-botones .btn {
    width: 100%;
    font-size: 15px;
    padding: 12px 16px;
    min-height: 48px;
  }

  /* Modal de aplicar categoría */
  .ml-modal-dialog {
    width: 95% !important;
    max-width: 95% !important;
    margin: 16px;
    max-height: calc(100vh - 32px);
    overflow-y: auto;
  }

  .ml-modal-header {
    padding: 16px;
  }

  .ml-modal-header h3 {
    font-size: 16px;
  }

  .ml-modal-close {
    width: 32px;
    height: 32px;
    font-size: 24px;
  }

  .ml-modal-body {
    padding: 16px;
    font-size: 13px;
  }

  .ml-apply-actions {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .ml-apply-actions .btn {
    width: 100%;
    font-size: 14px;
  }

  .ml-apply-list {
    max-height: 240px !important;
    padding: 12px !important;
  }

  .ml-apply-list label {
    font-size: 13px;
    padding: 8px 4px;
  }

  .ml-modal-footer {
    padding: 16px;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .ml-modal-footer .btn {
    width: 100%;
    font-size: 15px;
    padding: 12px 16px;
  }

  /* Nota final */
  .ml-resumen-note {
    font-size: 13px;
    padding: 16px 12px;
    margin: 20px 0;
    line-height: 1.5;
  }
}

/* ══════════════════════════════════════════════════════════════════════
   BASE-MOVIL — reglas de tamaño para el teléfono.
   Se activa PANTALLA POR PANTALLA añadiendo la clase "movil" al <body>
   (en el bloque body_class de la plantilla). Sin esa clase no afecta
   absolutamente a nada, ni en escritorio ni en teléfono.
   Solo toca tamaños de letra y alto de botones: no cambia estructura,
   ni colores, ni comportamiento.
   ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 480px) {

  /* Con letra menor a 16px el iPhone hace zoom solo al tocar el campo
     y deja la pantalla descuadrada. 16px lo evita. */
  body.movil input[type="text"],
  body.movil input[type="search"],
  body.movil input[type="number"],
  body.movil input[type="date"],
  body.movil input[type="datetime-local"],
  body.movil input[type="time"],
  body.movil input[type="month"],
  body.movil input[type="email"],
  body.movil input[type="tel"],
  body.movil input[type="url"],
  body.movil input[type="password"],
  body.movil input:not([type]),
  body.movil select,
  body.movil textarea {
    font-size: 16px !important;
  }

  /* Botones al alcance del dedo */
  body.movil .btn,
  body.movil button.btn,
  body.movil input[type="submit"],
  body.movil input[type="button"] {
    min-height: 44px;
  }

  /* Nada se sale a lo ancho */
  body.movil img,
  body.movil video,
  body.movil canvas {
    max-width: 100%;
  }
}

/* ══════════════════════════════════════════════════════════════════════
   BASE-MOVIL (2) — que NADA se salga de la pantalla.
   Muchas pantallas tienen filas hechas con "display:flex" escrito en la
   propia etiqueta y sin permiso para bajar de linea. En un telefono eso
   deja los botones fuera de la pantalla (y como el body recorta lo que
   sobresale, ni siquiera se pueden alcanzar).
   Esta regla solo AÑADE la posibilidad de bajar de linea: nunca puede
   provocar un desborde, solo evitarlo. Se salta las filas que son
   columnas a proposito.
   ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 480px) {
  body.movil [style*="display:flex"]:not([style*="column"]),
  body.movil [style*="display: flex"]:not([style*="column"]) {
    flex-wrap: wrap;
  }
}
