/* Sólo la app Android: mismo SIGED, sin tocar flujos ni permisos. */
:root { --siged-android-height:100dvh; --siged-android-width:100vw; }
body.siged-android-app #app,
body.siged-android-app #app > .main {
  height:var(--siged-android-height)!important;
  min-height:0!important;
  max-height:var(--siged-android-height)!important;
}
body.siged-android-app #sidebar {
  box-sizing:border-box!important;
  height:var(--siged-android-height)!important;
  min-height:0!important;
  max-height:var(--siged-android-height)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scroll-padding-block:16px;
  padding-bottom:24px!important;
  will-change:auto!important;
  transition:transform .16s ease!important;
  flex:0 0 auto;
  text-align:left;
}
body.siged-android-app #sidebar > * { flex-shrink:0; }
body.siged-android-app #sidebar :is(.nav-item,.user-badge,.sidebar-header) { min-width:0; overflow-wrap:anywhere; white-space:normal; }
body.siged-android-app #sidebar .nav-item { min-height:48px; height:auto; line-height:1.35; gap:7px; padding:12px; }
body.siged-android-app #sidebar .nav-item::before { flex:0 0 25px; margin-right:3px; }
body.siged-android-app #sidebar .badge { flex:0 0 auto; max-width:64px; }
body.siged-android-app #sidebar .sidebar-header { padding-inline:16px; }
body.siged-android-app #sidebar .sidebar-header h2 { font-size:1rem; line-height:1.3; letter-spacing:.035em; }
body.siged-android-app #sidebar .sidebar-header::before { width:150px; height:70px; filter:none; }
body.siged-android-app #sidebar > button { white-space:normal; max-width:calc(100% - 36px); }
#sigedAndroidSidebarClose { display:none; }
body.siged-android-app .content { min-width:0!important; scroll-padding-block:80px 24px; }
body.siged-android-app #moduleContent { min-width:0!important; max-width:100%; }
body.siged-android-app .topbar h2 { min-width:0;white-space:normal;overflow-wrap:anywhere; }
body.siged-android-app .topbar-actions { flex-wrap:wrap; }
body.siged-android-app #moduleContent :is(button,.btn) { max-width:100%; min-width:0; white-space:normal; overflow-wrap:anywhere; line-height:1.3; }
body.siged-android-app #moduleContent :is(input,select,textarea) { min-width:0; max-width:100%; box-sizing:border-box; }
body.siged-android-app #moduleContent :is(.visitas-actions,.alm-actions,.inventario-actions,.vehiculos-actions,.rrhh-actions,.cred-actions,.med-actions,.siged-admin-user-actions) { flex-wrap:wrap; gap:8px; min-width:0; }
body.siged-android-app #moduleContent > * { transition:none; }
/* Evita siete botones estrechos que parten «Registrar» en la tableta. */
body.siged-android-app #moduleContent .visitas-hero .visitas-actions {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));
  gap:10px;
  align-items:stretch;
}
body.siged-android-app #moduleContent .visitas-hero .visitas-action {
  width:100%;min-height:52px;height:auto;padding:12px;
  font-size:1rem;white-space:normal;overflow-wrap:normal;word-break:normal;hyphens:none;
}
body.siged-android-app #moduleContent .visitas-hero h3 { font-size:clamp(1.35rem,2.4vw,1.8rem); }
body.siged-android-app #moduleContent .visitas-hero p { line-height:1.45; }
body.siged-android-app #moduleContent button:hover { transform:none!important; filter:none!important; }
body.siged-android-app :is(.visitas-modal,.alm-modal,.rrhh-modal,.inventario-modal,.veh-modal,.vehiculos-modal,.modal-overlay,.siged-ui-backdrop) {
  box-sizing:border-box;max-height:var(--siged-android-height)!important;padding:12px!important;
  backdrop-filter:none!important; -webkit-backdrop-filter:none!important;
}
body.siged-android-app :is(.visitas-modal-card,.alm-modal-card,.rrhh-modal-card,.veh-modal-card,.vehiculos-modal-card,.inventario-modal-card,.cred-modal-card,.med-modal-card,.dir-modal-card,.modal-box) {
  box-sizing:border-box;
  max-width:calc(var(--siged-android-width) - 24px)!important;
  max-height:calc(var(--siged-android-height) - 24px)!important;
  overflow:auto;
}
@media(max-width:850px) {
  body.siged-android-app #sidebar {
    position:fixed!important;
    inset:0 auto auto 0!important;
    width:min(88vw,320px)!important;
    min-width:0!important;
    transform:translateX(-102%);
    padding-top:12px!important;
    z-index:1001;
  }
  body.siged-android-app #sidebar.open { transform:translateX(0); }
  body.siged-android-app #sidebar .sidebar-header { padding-right:52px; }
  body.siged-android-app #sigedAndroidSidebarClose {
    position:absolute;top:0;right:8px;display:grid;place-items:center;
    width:44px;height:44px;min-height:44px;min-width:44px;padding:0;
    font-size:1.8rem;line-height:1;border:1px solid #ffffff60;border-radius:12px;
    background:#ffffff18;color:#fff;box-shadow:none;
  }
  body.siged-android-app .siged-context-bar { gap:8px; padding:8px; min-width:0; }
  body.siged-android-app .siged-breadcrumb { flex:1 1 0; min-width:0; }
  body.siged-android-app .siged-breadcrumb strong { white-space:normal; overflow-wrap:anywhere; line-height:1.3; }
  body.siged-android-app .siged-context-more { font-size:1rem; min-width:50px; padding:8px; }
  body.siged-android-app .siged-context-actions { max-width:calc(100vw - 40px); }
}
@media(max-width:760px), (orientation:portrait) and (max-width:1024px) {
  body.siged-android-app table.siged-responsive-table tbody td { grid-template-columns:minmax(78px,.65fr) minmax(0,1.35fr); }
  body.siged-android-app table.siged-responsive-table tbody td > * { min-width:0; max-width:100%; overflow-wrap:anywhere; }
  body.siged-android-app table.siged-responsive-table tbody td[data-label="Acciones"] { display:block!important; }
  body.siged-android-app table.siged-responsive-table tbody td[data-label="Acciones"]::before { display:block; margin-bottom:8px; }
  body.siged-android-app .content { padding-inline:12px!important; }
}
@media(max-width:560px) {
  body.siged-android-app #moduleContent .visitas-hero { padding:18px 14px; }
  body.siged-android-app #moduleContent .siged-experience-tabs-cards { grid-template-columns:minmax(0,1fr)!important; }
}
@media(prefers-reduced-motion:reduce) { body.siged-android-app #sidebar { transition:none!important; } }
