/* Protecom — estilos propios sobre Bootstrap 5 */
:root{
  --pc-primary:#0d4d92;
  --pc-dark:#0b1f33;
}

/* Marca */
.brand-badge{
  width:48px;height:48px;border-radius:12px;
  background:linear-gradient(135deg,var(--pc-primary),#1273d1);
  color:#fff;font-weight:800;font-size:1.4rem;
  display:flex;align-items:center;justify-content:center;
}
.brand-badge-sm{width:30px;height:30px;border-radius:8px;font-size:1rem;}

/* ── Autenticación ── */
.auth-body{background:#eef2f6;min-height:100vh;}
.auth-wrap{max-width:400px;margin:0 auto;padding:8vh 1rem 2rem;}
.auth-card{border:0;border-radius:16px;}

/* ── Panel admin ── */
.admin-shell{display:flex;min-height:calc(100vh - 56px);}
.admin-side{
  width:230px;flex:0 0 230px;background:#fff;border-right:1px solid #e5e9ef;
  padding:.75rem;position:sticky;top:56px;height:calc(100vh - 56px);overflow:auto;
}
.admin-side .nav-link{color:#334155;border-radius:8px;padding:.55rem .75rem;font-size:.95rem;}
.admin-side .nav-link:hover{background:#f1f5f9;}
.admin-side .nav-link.active{background:var(--pc-primary);color:#fff;}
.admin-side .nav-link.disabled{color:#94a3b8;}
.admin-main{flex:1;padding:1.5rem;max-width:100%;overflow-x:auto;background:#f6f8fb;}

@media (max-width:768px){
  .admin-shell{flex-direction:column;}
  .admin-side{width:100%;flex:none;height:auto;position:static;
    display:flex;overflow-x:auto;gap:.25rem;}
  .admin-side .nav{flex-direction:row!important;flex-wrap:nowrap;}
  .admin-side .nav-link{white-space:nowrap;}
}

.stat-card{border:1px solid #e5e9ef;border-radius:14px;}
.stat-num{font-size:2rem;font-weight:800;line-height:1;}
.stat-lbl{color:#64748b;font-size:.85rem;margin-top:.25rem;}

/* ── Conductor (móvil) ── */
.conductor-body{background:#eef2f6;}
.conductor-main{max-width:640px;}
.vehiculo-card{border-radius:16px;border-width:2px;}
.vehiculo-card .btn{border-radius:12px;}

/* ── Auditoría ── */
.audit-json{background:#f6f8fa;border:1px solid #e5e9ef;border-radius:8px;
  padding:.5rem .75rem;font-size:.72rem;max-height:260px;overflow:auto;margin:.25rem 0 .5rem;}
