/* KH_PANEL_BUILD_20260517_ADMINLTE_VISUAL_V2
   Capa estética global para KAME HOUSE Panel sobre AdminLTE 4.
   Mantiene intactos IDs, names, rutas, actions y JS de módulos.
*/
:root{
  --kh-primary:#0f172a;
  --kh-primary-2:#1e3a8a;
  --kh-primary-3:#2563eb;
  --kh-accent:#f97316;
  --kh-success:#16a34a;
  --kh-warning:#f59e0b;
  --kh-danger:#dc2626;
  --kh-info:#0891b2;
  --kh-soft:#f6f8fb;
  --kh-card:#ffffff;
  --kh-muted:#64748b;
  --kh-border:rgba(148,163,184,.28);
  --kh-shadow-sm:0 10px 26px rgba(15,23,42,.07);
  --kh-shadow:0 18px 46px rgba(15,23,42,.11);
  --kh-radius:20px;
}

html{scroll-behavior:smooth;}
body{font-family:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;color:#0f172a;background:#eef3f8;}
a{text-decoration:none;}
a:hover{text-decoration:none;}

/* ===== AdminLTE shell ===== */
.kh-admin-body .app-wrapper{background:linear-gradient(180deg,#f8fafc 0,#eef3f8 38%,#edf2f7 100%);}
.kh-topbar{backdrop-filter:blur(18px);box-shadow:0 8px 24px rgba(15,23,42,.045);}
.kh-sidebar-toggle{font-size:1.2rem;border-radius:14px;}
.kh-sidebar-toggle:hover{background:#f1f5f9;}
.kh-current-module{font-weight:800;color:#1e293b!important;}
.kh-live-pill{display:inline-flex;align-items:center;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534;border-radius:999px;padding:.42rem .75rem;font-weight:800;font-size:.86rem;}
.kh-user-menu{display:flex;align-items:center;gap:.55rem;border:1px solid #e2e8f0;border-radius:999px;padding:.3rem .7rem!important;background:#fff;box-shadow:0 6px 16px rgba(15,23,42,.05);}
.kh-user-avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--kh-primary-2),var(--kh-primary-3));color:#fff;}
.kh-profile-dropdown{border:0;border-radius:18px;box-shadow:var(--kh-shadow);overflow:hidden;min-width:230px;}
.kh-profile-dropdown .dropdown-item{font-weight:700;padding:.7rem 1rem;}

.kh-sidebar{background:linear-gradient(180deg,#0b1220 0%,#111827 48%,#172554 100%)!important;border-right:1px solid rgba(255,255,255,.08);}
.kh-sidebar-brand{height:auto;min-height:74px;border-bottom:1px solid rgba(255,255,255,.08);padding:.7rem .85rem;}
.kh-sidebar .brand-link{display:flex;align-items:center;gap:.75rem;color:#fff;min-width:0;}
.kh-brand-emblem{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#f97316,#ef4444);font-weight:950;color:#fff;box-shadow:0 12px 28px rgba(249,115,22,.35);}
.kh-brand-logo{max-width:42px;max-height:42px;object-fit:contain;background:#fff;border-radius:14px;padding:.22rem;box-shadow:0 10px 22px rgba(15,23,42,.25);}
.kh-sidebar .brand-text{font-size:1.03rem;line-height:1.05;white-space:normal;}
.kh-sidebar .sidebar-wrapper{padding:.65rem .55rem;}
.kh-sidebar .nav-link{border-radius:14px;margin:.12rem 0;color:#cbd5e1;transition:.18s ease;font-weight:700;}
.kh-sidebar .nav-link:hover{background:rgba(255,255,255,.09);color:#fff;}
.kh-sidebar .nav-link.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 10px 24px rgba(37,99,235,.28);}
.kh-sidebar .nav-treeview{padding-left:.35rem;}
.kh-sidebar .nav-treeview .nav-link{font-size:.93rem;padding-top:.47rem;padding-bottom:.47rem;background:transparent;}
.kh-sidebar .nav-treeview .nav-link.active{background:rgba(37,99,235,.28);box-shadow:none;border:1px solid rgba(147,197,253,.18);}
.kh-sidebar .nav-icon{opacity:.95;}
.kh-content-header{background:transparent;border:0;padding:1.25rem 1rem .35rem;}
.kh-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:950;color:#64748b;}
.kh-page-title{font-size:clamp(1.35rem,2.1vw,2rem);font-weight:950;color:#0f172a;letter-spacing:-.025em;}
.kh-breadcrumb{background:rgba(255,255,255,.74);border:1px solid rgba(226,232,240,.95);border-radius:999px;padding:.45rem .85rem;box-shadow:0 8px 20px rgba(15,23,42,.04);}
.kh-content{max-width:1600px;}
.kh-app-footer{border-top:1px solid #e2e8f0;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);color:#334155;}
.kh-footer-chip{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:999px;padding:.28rem .6rem;font-weight:800;font-size:.8rem;}

/* ===== Componentes globales ===== */
.card,.modal-content,.dropdown-menu,.list-group{border-radius:var(--kh-radius);}
.card{border:1px solid rgba(226,232,240,.98);box-shadow:var(--kh-shadow-sm);overflow:hidden;}
.card-header{background:linear-gradient(180deg,#fff,#f8fafc);border-bottom:1px solid #e2e8f0;font-weight:900;color:#111827;}
.card-footer{background:#f8fafc;border-top:1px solid #e2e8f0;}
.shadow-sm{box-shadow:var(--kh-shadow-sm)!important;}
.border{border-color:var(--kh-border)!important;}
.rounded,.rounded-3{border-radius:16px!important;}

.kh-page-card,.kh-panel-section{background:#fff;border:1px solid rgba(226,232,240,.98);border-radius:24px;box-shadow:var(--kh-shadow-sm);}
.kh-panel-section{border-left:7px solid var(--kh-section-color,#2563eb);overflow:hidden;}
.kh-panel-section .kh-section-head{background:linear-gradient(90deg,var(--kh-section-soft,#eff6ff),#fff);border-bottom:1px solid rgba(148,163,184,.22);padding:1rem 1.15rem;font-weight:950;}
.kh-section-blue{--kh-section-color:#2563eb;--kh-section-soft:#eff6ff;}
.kh-section-green{--kh-section-color:#059669;--kh-section-soft:#ecfdf5;}
.kh-section-orange{--kh-section-color:#f97316;--kh-section-soft:#fff7ed;}
.kh-section-purple{--kh-section-color:#7c3aed;--kh-section-soft:#f5f3ff;}
.kh-section-red{--kh-section-color:#dc2626;--kh-section-soft:#fef2f2;}
.kh-section-slate{--kh-section-color:#475569;--kh-section-soft:#f8fafc;}

.table{--bs-table-bg:transparent;vertical-align:middle;}
.table thead th{font-size:.78rem;text-transform:uppercase;letter-spacing:.055em;color:#64748b;background:#f8fafc!important;border-bottom:1px solid #e2e8f0;font-weight:950;}
.table tbody tr{transition:.14s ease;}
.table tbody tr:hover{background:#f8fafc;}
.table>:not(caption)>*>*{padding:.72rem .78rem;}
.table-responsive{border-radius:18px;}

.form-control,.form-select{border-radius:14px;border-color:#dbe4ef;box-shadow:none!important;padding:.62rem .82rem;}
.form-control:focus,.form-select:focus{border-color:#60a5fa;box-shadow:0 0 0 .22rem rgba(37,99,235,.12)!important;}
.form-label{font-weight:800;color:#334155;}
.input-group-text{border-radius:14px;border-color:#dbe4ef;background:#f8fafc;color:#475569;font-weight:800;}

.btn{border-radius:14px;font-weight:850;box-shadow:none!important;}
.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1d4ed8;}
.btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);border-color:#1e40af;}
.btn-success{background:linear-gradient(135deg,#16a34a,#15803d);border-color:#15803d;}
.btn-warning{background:linear-gradient(135deg,#f59e0b,#f97316);border-color:#f97316;color:#111827;}
.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#dc2626;}
.btn-outline-primary,.btn-outline-secondary,.btn-outline-success,.btn-outline-danger,.btn-outline-dark{border-width:1.5px;}
.badge{border-radius:999px;font-weight:850;padding:.42rem .62rem;}
.alert{border-radius:18px;border:1px solid rgba(148,163,184,.25);box-shadow:0 10px 28px rgba(15,23,42,.04);}

/* Dashboard renovado */
.kh-dashboard-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#0f172a,#1e3a8a 56%,#2563eb);border:0;border-radius:28px;color:#fff;box-shadow:0 22px 60px rgba(30,58,138,.26);}
.kh-dashboard-hero::after{content:"";position:absolute;inset:auto -8% -40% auto;width:380px;height:380px;background:radial-gradient(circle,rgba(249,115,22,.32),transparent 62%);}
.kh-dashboard-hero .card-body{position:relative;z-index:1;padding:1.45rem;}
.kh-hero-title{font-size:clamp(1.7rem,3vw,2.65rem);font-weight:950;letter-spacing:-.04em;}
.kh-hero-subtitle{color:#dbeafe;font-size:1.02rem;max-width:780px;}
.kh-stat-card{position:relative;overflow:hidden;border:0;border-radius:22px;background:#fff;box-shadow:var(--kh-shadow-sm);}
.kh-stat-card::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--kh-stat-color,#2563eb);}
.kh-stat-icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:var(--kh-stat-soft,#eff6ff);color:var(--kh-stat-color,#2563eb);font-size:1.35rem;}
.kh-stat-label{font-size:.82rem;color:#64748b;font-weight:950;text-transform:uppercase;letter-spacing:.055em;}
.kh-stat-value{font-size:1.65rem;font-weight:950;color:#0f172a;line-height:1.05;}
.kh-stat-primary{--kh-stat-color:#2563eb;--kh-stat-soft:#eff6ff;}
.kh-stat-success{--kh-stat-color:#16a34a;--kh-stat-soft:#ecfdf5;}
.kh-stat-warning{--kh-stat-color:#f59e0b;--kh-stat-soft:#fffbeb;}
.kh-stat-danger{--kh-stat-color:#dc2626;--kh-stat-soft:#fef2f2;}
.kh-stat-info{--kh-stat-color:#0891b2;--kh-stat-soft:#ecfeff;}
.kh-stat-dark{--kh-stat-color:#334155;--kh-stat-soft:#f1f5f9;}
.kh-quick-action{display:flex;align-items:center;gap:.8rem;width:100%;border-radius:18px;padding:1rem;background:#fff;border:1px solid #e2e8f0;color:#0f172a;font-weight:900;box-shadow:0 8px 20px rgba(15,23,42,.045);transition:.16s ease;}
.kh-quick-action:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(15,23,42,.1);color:#0f172a;}
.kh-quick-action i{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:1.15rem;}
.kh-section-title{display:flex;align-items:center;gap:.6rem;font-size:1.08rem;font-weight:950;color:#0f172a;margin:1.35rem 0 .9rem;}
.kh-section-title::before{content:"";width:6px;height:28px;border-radius:999px;background:linear-gradient(180deg,#2563eb,#f97316);}
.kh-module-card{height:100%;border-radius:22px;border:1px solid #e2e8f0;background:#fff;box-shadow:var(--kh-shadow-sm);}
.kh-module-card .card-body{padding:1.25rem;}
.kh-module-card h5{font-weight:950;color:#0f172a;}

/* Login */
.kh-auth-body{min-height:100vh;background:radial-gradient(circle at top left,rgba(37,99,235,.30),transparent 32%),radial-gradient(circle at bottom right,rgba(249,115,22,.24),transparent 34%),linear-gradient(135deg,#0f172a,#111827 58%,#172554);}
.kh-auth-main{min-height:100vh;display:grid;place-items:center;padding:1.25rem;}
.kh-login-shell{width:min(980px,100%);}
.kh-login-card{border:1px solid rgba(255,255,255,.16);border-radius:30px;overflow:hidden;box-shadow:0 32px 90px rgba(0,0,0,.28);background:rgba(255,255,255,.94);backdrop-filter:blur(18px);}
.kh-login-brand{background:linear-gradient(135deg,#0f172a,#1e3a8a);color:#fff;padding:2rem;min-height:100%;position:relative;overflow:hidden;}
.kh-login-brand::after{content:"";position:absolute;right:-90px;bottom:-100px;width:280px;height:280px;border-radius:50%;background:rgba(249,115,22,.24);}
.kh-login-mark{width:62px;height:62px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,#f97316,#ef4444);font-size:1.55rem;font-weight:950;box-shadow:0 18px 35px rgba(249,115,22,.30);}
.kh-login-copy{color:#dbeafe;position:relative;z-index:1;}
.kh-login-form{padding:2rem;}

/* Compatibilidad con patrón de desbloqueo en formularios de taller */
#patternGrid{width:220px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:10px;}
.pattern-dot{width:60px;height:60px;border-radius:50%;background:#dee2e6;border:2px solid #6c757d;}
.pattern-dot.active{background:#0d6efd;}

@media (max-width:991.98px){
  .kh-content-header{padding:.95rem .75rem .25rem;}
  .kh-breadcrumb{display:none;}
  .kh-page-title{font-size:1.45rem;}
  .kh-dashboard-hero .card-body{padding:1.15rem;}
  .table>:not(caption)>*>*{padding:.58rem .55rem;}
}
@media (max-width:575.98px){
  .kh-login-brand{padding:1.4rem;}
  .kh-login-form{padding:1.35rem;}
  .kh-stat-value{font-size:1.35rem;}
}

/* ===== KH AdminLTE Visual V2: normalizador para TODAS las vistas PHP visibles =====
   Esta capa mejora formularios, tablas, filtros, botones y vistas sin tocar nombres,
   IDs, actions, métodos POST/GET, endpoints ni lógica JS propia de cada módulo. */
.kh-admin-body .app-main{background:
  radial-gradient(circle at top right,rgba(37,99,235,.075),transparent 28%),
  radial-gradient(circle at bottom left,rgba(249,115,22,.06),transparent 30%),
  #f4f7fb;
}
.kh-admin-body .kh-content > h1:first-child,
.kh-admin-body .kh-content > h2:first-child,
.kh-admin-body .kh-content > h3:first-child{font-weight:950;letter-spacing:-.03em;color:#0f172a;margin-bottom:1rem;}
.kh-admin-body .kh-content > .d-flex:first-child,
.kh-admin-body .kh-content > .d-flex.justify-content-between,
.kh-admin-body .kh-content > .d-flex.align-items-center{background:rgba(255,255,255,.82);border:1px solid rgba(226,232,240,.95);border-radius:22px;padding:.95rem 1rem;box-shadow:var(--kh-shadow-sm);margin-bottom:1rem;backdrop-filter:blur(10px);}

/* Formularios visibles: filtros, fichas y cajas operativas */
.kh-admin-body form.kh-auto-form:not(.d-inline):not(.d-inline-block):not([data-kh-compact]),
.kh-admin-body .kh-content > form:not(.d-inline):not(.d-inline-block):not(.navbar-form):not([data-kh-compact]){background:rgba(255,255,255,.94);border:1px solid rgba(226,232,240,.98);border-radius:24px;box-shadow:var(--kh-shadow-sm);padding:1rem;margin-bottom:1rem;}
.kh-admin-body form.kh-auto-filter,
.kh-admin-body form[method="get"]:not(.d-inline):not(.d-inline-block){border-left:6px solid #2563eb;background:linear-gradient(135deg,#fff,#f8fbff);}
.kh-admin-body form[method="post"]:not(.d-inline):not(.d-inline-block):not(.kh-login-form form){border-left:6px solid #f97316;}
.kh-admin-body form .row{--bs-gutter-y:.85rem;}
.kh-admin-body fieldset{border:1px solid #e2e8f0!important;border-radius:20px!important;background:#fff;padding:1rem!important;margin-bottom:1rem;}
.kh-admin-body legend{float:none;width:auto;padding:0 .55rem;font-size:.9rem;font-weight:950;color:#1e3a8a;}
.kh-admin-body .form-text{color:#64748b;font-weight:650;}
.kh-admin-body textarea.form-control{min-height:92px;}
.kh-admin-body input[type="file"].form-control{background:#fff;}
.kh-admin-body input[type="checkbox"],
.kh-admin-body input[type="radio"]{accent-color:#2563eb;}
.kh-admin-body .form-check-input{border-color:#94a3b8;box-shadow:none!important;}
.kh-admin-body .form-check-input:checked{background-color:#2563eb;border-color:#2563eb;}
.kh-admin-body .form-check-label{font-weight:700;color:#334155;}

/* Tablas visibles */
.kh-admin-body .kh-table-shell{background:#fff;border:1px solid rgba(226,232,240,.98);border-radius:24px;box-shadow:var(--kh-shadow-sm);overflow:hidden;margin-bottom:1rem;}
.kh-admin-body .table-responsive:not(.kh-no-shell){background:#fff;border:1px solid rgba(226,232,240,.98);border-radius:22px;box-shadow:var(--kh-shadow-sm);}
.kh-admin-body .table.kh-auto-table,
.kh-admin-body .kh-content table.table{margin-bottom:0;}
.kh-admin-body .kh-content table.table thead th{white-space:nowrap;position:relative;}
.kh-admin-body .kh-content table.table tbody td{border-color:#eef2f7;}
.kh-admin-body .kh-content table.table tbody tr:nth-child(even){background:rgba(248,250,252,.62);}
.kh-admin-body .kh-content table.table .btn{padding:.38rem .62rem;border-radius:12px;font-size:.86rem;}
.kh-admin-body .kh-content .table-sm>:not(caption)>*>*{padding:.55rem .65rem;}
.kh-admin-body .kh-content .table-light th,
.kh-admin-body .kh-content thead.table-light th{background:#f1f5f9!important;color:#334155!important;}

/* Tarjetas y paneles existentes por módulo */
.kh-admin-body .pos-card,
.kh-admin-body .apartado-card,
.kh-admin-body .report-card,
.kh-admin-body .card-custom,
.kh-admin-body .license-card,
.kh-admin-body .summary-card,
.kh-admin-body .filter-card,
.kh-admin-body .box-card,
.kh-admin-body .stat-box,
.kh-admin-body .info-box,
.kh-admin-body .module-box{background:#fff!important;border:1px solid rgba(226,232,240,.98)!important;border-radius:24px!important;box-shadow:var(--kh-shadow-sm)!important;overflow:hidden;}
.kh-admin-body .pos-card,
.kh-admin-body .apartado-card,
.kh-admin-body .report-card{padding:1rem;}
.kh-admin-body .card.border-start{border-left-width:6px!important;}
.kh-admin-body .card-header.bg-primary,
.kh-admin-body .card-header.bg-dark,
.kh-admin-body .card-header.bg-success,
.kh-admin-body .card-header.bg-info,
.kh-admin-body .card-header.bg-secondary,
.kh-admin-body .card-header.bg-danger{background:linear-gradient(135deg,#0f172a,#1e3a8a)!important;color:#fff!important;}
.kh-admin-body .card-header.bg-warning{background:linear-gradient(135deg,#f59e0b,#f97316)!important;color:#111827!important;}
.kh-admin-body .card-header.bg-light{background:linear-gradient(180deg,#fff,#f8fafc)!important;color:#0f172a!important;}
.kh-admin-body .card-title,.kh-admin-body .modal-title{font-weight:950;letter-spacing:-.015em;}
.kh-admin-body .modal-header{border-bottom:1px solid rgba(226,232,240,.95);}
.kh-admin-body .modal-footer{background:#f8fafc;border-top:1px solid rgba(226,232,240,.95);}

/* Acciones y botones */
.kh-admin-body .btn-group .btn{border-radius:12px!important;margin-right:.18rem;}
.kh-admin-body .btn-sm{border-radius:12px;font-weight:850;}
.kh-admin-body a.btn[href*="form"],
.kh-admin-body a.btn[href*="new"],
.kh-admin-body a.btn[href*="add"],
.kh-admin-body button[type="submit"]{letter-spacing:.005em;}
.kh-admin-body button[type="submit"]:not(.btn-danger):not(.btn-outline-danger){box-shadow:0 12px 24px rgba(37,99,235,.11)!important;}
.kh-admin-body .btn-light{background:#fff;border-color:#e2e8f0;color:#0f172a;}
.kh-admin-body .btn-dark{background:linear-gradient(135deg,#0f172a,#334155);border-color:#0f172a;}

/* Badges de estados más comerciales */
.kh-admin-body .text-bg-success,.kh-admin-body .badge.bg-success{background:#dcfce7!important;color:#166534!important;border:1px solid #bbf7d0;}
.kh-admin-body .text-bg-warning,.kh-admin-body .badge.bg-warning{background:#fef3c7!important;color:#92400e!important;border:1px solid #fde68a;}
.kh-admin-body .text-bg-danger,.kh-admin-body .badge.bg-danger{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fecaca;}
.kh-admin-body .text-bg-info,.kh-admin-body .badge.bg-info{background:#cffafe!important;color:#155e75!important;border:1px solid #a5f3fc;}
.kh-admin-body .text-bg-primary,.kh-admin-body .badge.bg-primary{background:#dbeafe!important;color:#1e40af!important;border:1px solid #bfdbfe;}
.kh-admin-body .text-bg-secondary,.kh-admin-body .badge.bg-secondary{background:#f1f5f9!important;color:#334155!important;border:1px solid #e2e8f0;}
.kh-admin-body .text-bg-dark,.kh-admin-body .badge.bg-dark{background:#0f172a!important;color:#fff!important;border:1px solid #334155;}

/* Listas, tickets y detalles */
.kh-admin-body .list-group-item{border-color:#eef2f7;padding:.86rem 1rem;}
.kh-admin-body .list-group-item:first-child{border-top-left-radius:18px;border-top-right-radius:18px;}
.kh-admin-body .list-group-item:last-child{border-bottom-left-radius:18px;border-bottom-right-radius:18px;}
.kh-admin-body dl.row{background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:1rem;box-shadow:var(--kh-shadow-sm);}
.kh-admin-body dt{color:#64748b;text-transform:uppercase;letter-spacing:.045em;font-size:.75rem;}
.kh-admin-body dd{font-weight:750;color:#0f172a;}
.kh-admin-body hr{border-color:#dbe4ef;opacity:1;}
.kh-admin-body pre,.kh-admin-body code{border-radius:16px;}
.kh-admin-body pre{background:#0f172a;color:#e2e8f0;padding:1rem;border:1px solid #334155;}

/* Páginas específicas sin tocar lógica */
body[data-kh-view="pos_new"] .kh-content{max-width:1760px;}
body[data-kh-view="pos_new"] .card,
body[data-kh-view="pos_new"] .pos-card{border-radius:22px!important;}
body[data-kh-view="order_view"] .kh-content,
body[data-kh-view="tiendaenlinea_pedido_view"] .kh-content,
body[data-kh-view="pos_view"] .kh-content{max-width:1500px;}
body[data-kh-view="reports"] canvas,
body[data-kh-view="income_report"] canvas,
body[data-kh-view="accounting_report"] canvas{max-width:100%;}
body[data-kh-view="company"] .nav-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:.35rem;box-shadow:var(--kh-shadow-sm);}
body[data-kh-view="company"] .nav-tabs .nav-link{border:0;border-radius:14px;font-weight:850;color:#475569;}
body[data-kh-view="company"] .nav-tabs .nav-link.active{background:#2563eb;color:#fff;}

/* Estados vacíos */
.kh-empty-state{border:1px dashed #cbd5e1;border-radius:24px;background:linear-gradient(135deg,#fff,#f8fafc);padding:2rem;text-align:center;color:#64748b;font-weight:750;}
.kh-empty-state i{display:block;font-size:2rem;color:#94a3b8;margin-bottom:.5rem;}

@media (max-width:767.98px){
  .kh-admin-body .kh-content > .d-flex:first-child,
  .kh-admin-body .kh-content > .d-flex.justify-content-between,
  .kh-admin-body .kh-content > .d-flex.align-items-center{display:block!important;padding:.85rem;}
  .kh-admin-body form.kh-auto-form:not(.d-inline):not(.d-inline-block),
  .kh-admin-body .kh-content > form:not(.d-inline):not(.d-inline-block){padding:.85rem;border-radius:20px;}
  .kh-admin-body .table-responsive{border-radius:18px;}
  .kh-admin-body .kh-content table.table{font-size:.9rem;}
}



/* ========================================================================
   v307.2_inputs_globales
   Limpieza global de inputs/formularios sin tocar lógica, names, IDs ni rutas.
   ======================================================================== */

/* Quitar flechas/spinners de campos numéricos en navegadores comunes */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  margin:0!important;
}
input[type="number"]{
  -moz-appearance:textfield!important;
  appearance:textfield!important;
}

/* Evitar que controles nativos raros rompan el diseño visual */
.kh-admin-body input,
.kh-admin-body select,
.kh-admin-body textarea,
.kh-auth-body input,
.kh-auth-body select,
.kh-auth-body textarea{
  font-size:1rem;
}

.kh-admin-body input.form-control,
.kh-admin-body select.form-select,
.kh-admin-body textarea.form-control,
.kh-auth-body input.form-control,
.kh-auth-body select.form-select,
.kh-auth-body textarea.form-control{
  transition:border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

/* Campos bloqueados o de solo lectura: más claros y sin sensación de error */
.kh-admin-body .form-control[readonly],
.kh-admin-body .form-select[readonly],
.kh-admin-body textarea[readonly],
.kh-auth-body .form-control[readonly],
.kh-auth-body .form-select[readonly],
.kh-auth-body textarea[readonly]{
  background:#f8fafc!important;
  color:#475569!important;
  border-color:#dbe4ef!important;
  cursor:default;
}
.kh-admin-body .form-control:disabled,
.kh-admin-body .form-select:disabled,
.kh-admin-body textarea:disabled,
.kh-auth-body .form-control:disabled,
.kh-auth-body .form-select:disabled,
.kh-auth-body textarea:disabled{
  background:#eef2f7!important;
  color:#64748b!important;
  border-color:#dbe4ef!important;
  opacity:1;
  cursor:not-allowed;
}

/* Autocomplete/autofill: no se puede eliminar al 100% por CSS,
   pero se neutraliza el estilo amarillo/azul que mete el navegador. */
.kh-admin-body input:-webkit-autofill,
.kh-admin-body input:-webkit-autofill:hover,
.kh-admin-body input:-webkit-autofill:focus,
.kh-admin-body textarea:-webkit-autofill,
.kh-admin-body textarea:-webkit-autofill:hover,
.kh-admin-body textarea:-webkit-autofill:focus,
.kh-admin-body select:-webkit-autofill,
.kh-admin-body select:-webkit-autofill:hover,
.kh-admin-body select:-webkit-autofill:focus,
.kh-auth-body input:-webkit-autofill,
.kh-auth-body input:-webkit-autofill:hover,
.kh-auth-body input:-webkit-autofill:focus{
  -webkit-text-fill-color:#0f172a!important;
  box-shadow:0 0 0 1000px #fff inset!important;
  transition:background-color 999999s ease-in-out 0s!important;
  caret-color:#0f172a;
}

/* Campos sensibles marcados por JS */
.kh-no-browser-autofill,
.kh-sensitive-control{
  background-clip:padding-box;
}
.kh-sensitive-control::placeholder{
  color:#94a3b8;
}

/* Mejor lectura para grupos de campos con prefijos/sufijos */
.kh-admin-body .input-group > .form-control,
.kh-admin-body .input-group > .form-select,
.kh-auth-body .input-group > .form-control,
.kh-auth-body .input-group > .form-select{
  min-width:0;
}

/* En móviles evita zoom inesperado por tamaños pequeños heredados */
@media (max-width: 575.98px){
  .kh-admin-body input,
  .kh-admin-body select,
  .kh-admin-body textarea,
  .kh-auth-body input,
  .kh-auth-body select,
  .kh-auth-body textarea{
    font-size:16px!important;
  }
}
