/* OBX v1.10.18 R2 HF2 · UX administrativa. Nada del backend se modifica. */
#pageSettings .obx-ux-navigation,
#pageGeofences .obx-ux-navigation,
#pageHr .obx-ux-navigation,
#pageReports .obx-ux-navigation {
  margin: 14px 0 20px;
}
.obx-ux-navigation .obx-ux-intro { margin:0 0 14px; }
.obx-ux-navigation .obx-ux-intro h3 { font-size: 17px; line-height:1.35; letter-spacing:-.025em; margin:0 0 4px; color:#142642; }
.obx-ux-navigation .obx-ux-intro p { color:#5b6f87; margin:0; font-size:13px; line-height:1.5; }
.obx-ux-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.obx-ux-tabs[data-count='3'] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.obx-ux-tab { min-width:0; display:flex; flex-direction:column; align-items:stretch; text-align:left;
  padding:15px 15px 14px; border-radius:13px; border:1px solid #d9e3ef; background:#fff;
  color:#253d58; cursor:pointer; gap:5px; font:inherit; font-size:13px;
  transition:background-color .15s,border-color .15s,box-shadow .15s;
}
.obx-ux-tab:hover { background:#f7faff; border-color:#a8c1e7; }
.obx-ux-tab:focus-visible {outline:3px solid #2186ef; outline-offset:2px; }
.obx-ux-tab[aria-pressed='true'] { background:#eaf3ff; border-color:#2e73e7; box-shadow:inset 0 0 0 1px #2e73e7; }
.obx-ux-tab-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.obx-ux-tab-n { font-weight:800; font-size:11px; line-height:1.5; letter-spacing:.07em; color:#547aa7; }
.obx-ux-tab-dot { display:block; width:8px;height:8px;border-radius:50%;background:#ccd7e3; flex-shrink:0; }
.obx-ux-tab[aria-pressed='true'] .obx-ux-tab-dot {background:#216ef0; }
.obx-ux-tab-label { font-size:14px; line-height:1.3; font-weight:800; color:#152d4b; }
.obx-ux-tab-desc { font-size:11.7px; font-weight:400; line-height:1.42; color:#5b708b; }
.obx-ux-context { margin:15px 0 17px; padding:13px 16px; border-left:3px solid #2670de;
  background:#f3f8ff; border-radius:0 10px 10px 0;
}
.obx-ux-context h3 { margin:0 0 3px; color:#173358; font-size:16px; font-weight:800; }
.obx-ux-context p { margin:0; color:#556e89; font-size:12px; line-height:1.45; }
.obx-ux-hint { display:block; margin-top:8px; font-size:11.5px; color:#667f99; }
.obx-ux-concealed { display:none !important; }
/* Scope estrictamente administrativo; no tocar biometria, checadas ni kiosco. */
#pageSettings > .panel,
#pageGeofences > .panel,
#pageHr > .panel,
#pageReports > .panel { margin-bottom:14px; }
#pageSettings .panelhead h3,
#pageGeofences .panelhead h3,
#pageHr .panelhead h3,
#pageReports .panelhead h3 { line-height:1.4; }
#pageSettings textarea,
#pageGeofences textarea,
#pageReports textarea { max-width:100%; }
@media(max-width:1100px) {
  .obx-ux-tabs,.obx-ux-tabs[data-count='3'] {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px) {
  .obx-ux-tabs,.obx-ux-tabs[data-count='3'] {grid-template-columns:1fr;gap:8px;}
  .obx-ux-tab {padding:11px 13px;}
  .obx-ux-tab-desc {font-size:12px;}
  .obx-ux-context {padding:12px 13px;}
}
@media(prefers-reduced-motion:reduce){ .obx-ux-tab {transition:none;} }
