/* Aura · working density. Opt-in CRM shell only; never the public patient app.
 * Remove stacked whitespace, not information. Keep each module's materials,
 * responsive layout, disclosure rules and native scrolling intact.
 * Agenda owns its Shadow DOM density/scroll rules in agenda.css.
 */
body.aura-density .app > .main {
  padding-top: 16px;
  padding-bottom: 32px;
}
body.aura-density #topBar {
  padding: 0 !important; /* replaces the host's inline shell spacing */
  margin-bottom: 18px !important;
  min-height: 48px;
}
body.aura-density #topBar .search-global {
  margin-bottom: 0;
  padding: 3px 12px;
  min-height: 48px;
}
body.aura-density #topBar .search-global input {
  min-width: 0;
  min-height: 40px;
  padding: 8px 10px;
}
body.aura-density #topBar .aura-icon-btn {
  min-width: 44px;
  min-height: 44px;
}
body.aura-density .main > .view > .top {
  margin-bottom: 14px;
  gap: 12px;
}
body.aura-density .main > .view > .top h1 {
  font-size: clamp(28px, 2.3vw, 36px);
}
body.aura-density .main > .view > .top .btn {
  min-height: 44px;
}

/* Patients: one rhythm instead of gap + margin accumulating between blocks. */
body.aura-density #v-pacientes .patx-heading {
  min-height: 102px;
  padding: 4px 132px 10px 0;
  gap: 14px;
}
body.aura-density #v-pacientes .patx-heading h1 {
  margin: 6px 0;
}
body.aura-density #v-pacientes .patx-heading-actions {
  position: static;
}
body.aura-density #v-pacientes .patx-identity-motif {
  width: 120px;
  height: 106px;
  right: 0;
  top: 0;
  bottom: auto;
  opacity: 0.5;
}
body.aura-density #patientsPlusRoot .patx-shell {
  gap: 14px;
}
body.aura-density #patientsPlusRoot .patx-nav {
  padding: 5px;
  margin-bottom: 0;
  gap: 8px;
}
body.aura-density #patientsPlusRoot .patx-tabs button {
  min-height: 44px;
  padding: 10px 16px;
}
body.aura-density #patientsPlusRoot .patx-overview {
  gap: 14px;
  margin-bottom: 0;
}
body.aura-density
  #patientsPlusRoot
  :is(.patx-overview, .patx-metrics)
  .patx-metric {
  min-height: 100px;
  padding: 16px 20px;
  border-radius: 22px;
}
body.aura-density #patientsPlusRoot .patx-metric strong {
  font-size: 32px;
  margin-top: 7px;
}
body.aura-density #patientsPlusRoot .patx-feature {
  min-height: 100px;
  padding: 16px 62px 16px 20px;
  border-radius: 22px;
}
body.aura-density #patientsPlusRoot .patx-feature strong {
  margin-top: 6px;
  font-size: 19px;
}
body.aura-density #patientsPlusRoot .patx-feature p {
  margin-top: 6px;
}
body.aura-density #patientsPlusRoot .patx-feature button {
  width: 44px;
  height: 44px;
}
body.aura-density #patientsPlusRoot .patx-toolbar {
  padding: 16px 20px 10px;
  gap: 10px;
}
body.aura-density #patientsPlusRoot .patx-search input {
  padding: 8px 4px;
  min-height: 40px;
}
body.aura-density #patientsPlusRoot .patx-filters {
  padding: 0 20px;
  gap: 4px;
}
body.aura-density #patientsPlusRoot .patx-filter {
  min-height: 44px;
  padding: 8px 12px;
}
body.aura-density #patientsPlusRoot .patx-hint {
  margin: 8px 0 4px;
  padding: 0 20px;
}
body.aura-density #patientsPlusRoot .patx-count {
  padding: 0 20px 10px;
}
body.aura-density #patientsPlusRoot .patx-head {
  padding: 12px 20px;
}
body.aura-density #patientsPlusRoot .patx-row {
  min-height: 80px;
  padding: 12px 20px;
  gap: 14px;
}

/* Pipeline: warnings stay visible, the actual queues move above the fold. */
body.aura-density.aura-pipeline-orbita-active .op-head {
  margin-bottom: 12px;
}
body.aura-density.aura-pipeline-orbita-active .op-summary {
  gap: 12px;
  margin-bottom: 12px;
}
body.aura-density.aura-pipeline-orbita-active :is(.op-stat, .op-priority) {
  min-height: 108px;
  padding: 14px 17px;
}
body.aura-density.aura-pipeline-orbita-active .op-stat > small {
  min-height: 0;
}
body.aura-density.aura-pipeline-orbita-active .op-stat > strong {
  margin-top: 6px;
  font-size: 30px;
}
body.aura-density.aura-pipeline-orbita-active .op-stat > p {
  margin-top: 5px;
}
body.aura-density.aura-pipeline-orbita-active .op-nav {
  margin-bottom: 10px;
  padding: 4px;
}
body.aura-density.aura-pipeline-orbita-active .op-notice {
  margin-bottom: 10px;
  padding: 8px 12px;
}
body.aura-density.aura-pipeline-orbita-active .op-board-tools {
  margin-bottom: 10px;
}
body.aura-density.aura-pipeline-orbita-active .op-column-head {
  min-height: 56px;
  padding: 12px 14px;
}
body.aura-density.aura-pipeline-orbita-active .op-column > p {
  min-height: 0;
  padding: 8px 14px 3px;
}

/* Cash / invoices: natural-height financial panels; no suppressed caveats. */
body.aura-density #cajaV2Root.aura-caja-look {
  padding-top: 2px;
}
body.aura-density #cajaV2Root.aura-caja-look :is(.cx-shell, .cx-grid) {
  gap: 12px;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-head {
  gap: 10px 18px;
  padding-right: 116px;
  min-height: 100px;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-head > .acl-aura-mark {
  top: 0;
  width: 100px;
  height: 100px;
  right: 0;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-banner {
  padding: 12px 16px;
  gap: 10px;
}
body.aura-density #cajaV2Root.aura-caja-look :is(.cx-panel, .cx-session) {
  padding: 20px;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-profit.acl-profit-hero {
  min-height: 250px;
  padding: 22px;
}
body.aura-density
  #cajaV2Root.aura-caja-look
  .acl-profit-hero
  .cx-panel-head
  > strong {
  margin-top: 18px;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-panel-head {
  margin-bottom: 14px;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-kpi {
  min-height: 108px;
  padding: 16px 18px;
}
body.aura-density #cajaV2Root.aura-caja-look .cx-kpi strong {
  margin-top: 8px;
}
body.aura-density #v-facturas .ab2-page-head {
  padding: 4px 0 10px;
  gap: 12px;
}
body.aura-density #v-facturas .ab2-kpis {
  gap: 12px;
  margin-bottom: 12px;
}
body.aura-density #v-facturas .ab2-kpi {
  min-height: 108px;
  padding: 14px 18px;
  justify-content: flex-start;
}
body.aura-density #v-facturas .ab2-kpi > strong {
  margin: 9px 0 6px;
}
body.aura-density #v-facturas .ab2-kpi--focus > strong {
  max-width: none;
}

/* Portal ADMIN only: it sits in the CRM, so it doesn't need a second page gutter. */
body.aura-density #v-portal .pv-admin {
  min-height: 0;
}
body.aura-density #v-portal .pv-admin-main {
  padding: 4px 0 24px;
}
body.aura-density #v-portal .pv-admin-header {
  min-height: 100px;
  margin-bottom: 14px;
  gap: 14px;
  padding-right: 122px;
}
body.aura-density #v-portal .pv-portal-motif {
  width: 96px;
  height: 86px;
  top: 0;
  right: 10px;
  pointer-events: none;
}
body.aura-density #v-portal .pv-portal-motif i {
  width: 86px;
  height: 38px;
  border-width: 10px;
}
body.aura-density #v-portal .pv-publication-bar {
  margin-bottom: 18px;
  padding: 12px 16px;
}
body.aura-density #v-portal .pv-admin-layout {
  gap: 20px;
}
body.aura-density #v-portal .pv-section-heading {
  margin-bottom: 14px;
  padding-bottom: 0;
}
body.aura-density #v-portal .pv-overview-hero {
  padding: 20px;
}
body.aura-density #v-portal .pv-overview-hero .pv-text-btn {
  margin-top: 10px;
}
body.aura-density #v-portal .pv-overview-steps {
  margin-top: 12px;
}
body.aura-density #v-portal .pv-overview-steps > button {
  padding: 12px 16px;
  margin-bottom: 10px;
}

/* Settings and experience modules: keep the distinctive surfaces, lower the gaps. */
body.aura-density #v-ajustes .as-header {
  min-height: 100px;
  padding: 4px 125px 6px 0;
  margin-bottom: 14px;
}
body.aura-density #v-ajustes .as-header h1 {
  font-size: 36px;
  margin: 5px 0 7px;
}
body.aura-density #v-ajustes .as-motif {
  width: 105px;
  height: 100px;
  right: 8px;
  top: 0;
  border-radius: 28px;
}
body.aura-density #v-ajustes .as-motif svg {
  width: 78px;
  height: 78px;
}
body.aura-density #v-ajustes .settings-layout {
  gap: 14px;
}
body.aura-density #v-ajustes .card {
  padding: 20px;
  margin-bottom: 14px;
}
body.aura-density #v-ajustes .as-overview {
  gap: 14px;
  margin-bottom: 14px;
}
body.aura-density #v-ajustes :is(.as-feature, .as-guide) {
  padding: 20px;
}
body.aura-density #v-ajustes .as-feature h2 {
  font-size: 25px;
  margin: 10px 0;
}
body.aura-density #v-ajustes .as-grid {
  gap: 12px;
}
body.aura-density #v-ajustes .as-category {
  min-height: 120px;
  padding: 17px;
}
body.aura-density #v-ajustes .as-icon {
  margin-bottom: 8px;
}
body.aura-density #v-ajustes .as-panel-header {
  padding-bottom: 14px;
}
body.aura-density #v-ajustes .as-panel-header h2 {
  margin: 8px 0;
}
body.aura-density #v-ajustes .as-context {
  padding: 12px 16px;
  margin-bottom: 12px;
}
body.aura-density #v-ajustes .as-peer-title {
  margin-top: 20px;
}
body.aura-density
  :is(#v-contenido, #v-formacion, #v-equipo)
  :is(.page-heading, .ct-heading, .fm-heading, .eq-heading) {
  margin-bottom: 14px;
  gap: 14px;
  padding-right: 122px;
  min-height: 100px;
}
body.aura-density
  :is(#v-contenido, #v-formacion, #v-equipo)
  :is(.tabs, .ct-tabs, .eq-tabs) {
  margin-bottom: 14px;
}
body.aura-density :is(#v-contenido, #v-formacion, #v-equipo) .panel {
  padding: 20px;
}
body.aura-density :is(#v-contenido, #v-formacion, #v-equipo) .section-orbit {
  width: 100px;
  height: 90px;
  top: 0;
  right: 0;
}
body.aura-density #v-equipo .eq-summary {
  margin-bottom: 14px;
  gap: 12px;
}
body.aura-density #v-equipo .eq-stat {
  min-height: 92px;
  padding: 16px 18px;
}
body.aura-density #v-equipo :is(.eq-overview-grid, .eq-access-layout) {
  gap: 14px;
}
body.aura-density #v-equipo .eq-section-top {
  margin-bottom: 14px;
}
body.aura-density #v-formacion .fm-next {
  min-height: 160px;
  padding: 20px;
}
body.aura-density #v-formacion .fm-light-button {
  margin-top: 12px;
}
body.aura-density #v-contenido .ct-empty-days {
  gap: 12px;
  margin: 14px 0;
}
body.aura-density #v-contenido .ct-empty-days > div {
  padding: 12px;
  gap: 6px;
}
body.aura-density #v-contenido .ct-empty-slot {
  height: 30px;
}
body.aura-density #v-contenido .ct-empty-hero {
  min-height: 180px;
  padding: 20px;
  gap: 24px;
}
body.aura-density #v-contenido .ct-empty-art {
  height: 130px;
  transform: scale(0.75);
}
/* Only the embedded builder workspace, never its public-page preview. */
body.aura-density #v-embudo .aura-funnel-ui main {
  padding: 4px 0 24px;
}
body.aura-density #v-embudo .aura-funnel-ui .page-head {
  margin-bottom: 14px;
  gap: 14px;
}
body.aura-density #v-embudo .aura-funnel-ui .lead-grid {
  gap: 14px;
  margin-bottom: 16px;
}
body.aura-density #v-embudo .aura-funnel-ui .gallery {
  gap: 14px;
}
/* Preserve comfortable targets while reducing the space around them. */
body.aura-density #v-facturas .ab2-btn,
body.aura-density #v-whatsapp .btn,
body.aura-density
  :is(#v-contenido, #v-formacion, #v-equipo)
  :is(.btn, .fm-light-button),
body.aura-density #v-embudo .aura-funnel-ui .page-head .button,
body.aura-density #v-ajustes .settings-nav button,
body.aura-density #v-admin :is(input[type="search"], .btn),
body.aura-density #v-formacion input[type="search"] {
  min-height: 44px;
}
body.aura-density #v-formacion .fm-search {
  min-height: 44px;
  height: auto;
}
body.aura-density :is(#adminSearch, #adminFilter) {
  min-height: 44px;
}

@media (max-width: 760px) {
  body.aura-density .app > .main {
    padding-top: 10px;
    padding-bottom: calc(76px + env(safe-area-inset-bottom));
  }
  body.aura-density #topBar {
    margin-bottom: 12px !important;
  }
  body.aura-density #topBar .search-global {
    padding: 2px 6px;
  }
  body.aura-density #topBar .search-global input {
    padding: 8px 4px;
  }
  body.aura-density #v-pacientes .patx-heading {
    padding: 4px 0 10px;
    min-height: 0;
  }
  body.aura-density #v-pacientes .patx-heading > div:first-child {
    padding-right: 94px;
  }
  body.aura-density #v-pacientes .patx-heading-actions {
    position: static;
  }
  body.aura-density #v-pacientes .patx-heading-actions {
    margin-top: 12px;
    gap: 8px;
  }
  body.aura-density #v-pacientes .patx-identity-motif {
    width: 90px;
    height: 80px;
    top: -4px;
    right: 0;
    opacity: 0.32;
  }
  body.aura-density #patientsPlusRoot .patx-shell {
    gap: 12px;
  }
  body.aura-density #patientsPlusRoot .patx-overview {
    gap: 10px;
  }
  body.aura-density #patientsPlusRoot .patx-overview .patx-metric {
    min-height: 88px;
    padding: 14px 16px;
  }
  body.aura-density #patientsPlusRoot .patx-feature {
    min-height: 96px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  body.aura-density #patientsPlusRoot .patx-row {
    padding: 14px 16px;
    gap: 10px;
  }
  body.aura-density #patientsPlusRoot .patx-toolbar {
    padding: 14px 16px 8px;
  }
  body.aura-density #patientsPlusRoot .patx-tabs button {
    padding: 10px 12px;
  }
  body.aura-density
    #patientsPlusRoot
    :is(.patx-hint, .patx-count, .patx-filters) {
    padding-left: 16px;
    padding-right: 16px;
  }
  body.aura-density #v-portal .pv-admin-header {
    min-height: 0;
    gap: 12px;
    padding-right: 0;
  }
  body.aura-density #v-portal .pv-admin-header > div:first-child {
    padding-right: 92px;
  }
  body.aura-density #v-portal .pv-portal-motif {
    width: 70px;
    height: 70px;
  }
  body.aura-density #v-portal .pv-portal-motif i {
    width: 66px;
    height: 30px;
    border-width: 8px;
  }
  body.aura-density #v-portal .pv-admin-layout {
    gap: 14px;
  }
  body.aura-density #v-portal .pv-overview-hero {
    padding: 16px;
  }
  body.aura-density #v-ajustes .as-header {
    min-height: 92px;
    padding-right: 88px;
  }
  body.aura-density #v-ajustes .as-header h1 {
    font-size: 32px;
  }
  body.aura-density #v-ajustes .as-motif {
    width: 76px;
    height: 80px;
    right: 0;
  }
  body.aura-density #v-ajustes .as-motif svg {
    width: 62px;
    height: 62px;
  }
  body.aura-density #v-ajustes :is(.card, .as-feature, .as-guide) {
    padding: 16px;
  }
  body.aura-density #v-ajustes .as-category {
    padding: 15px;
  }
  body.aura-density :is(#v-contenido, #v-formacion, #v-equipo) .panel {
    padding: 16px;
  }
  body.aura-density :is(#v-contenido, #v-formacion, #v-equipo) .page-heading {
    display: block;
    padding-right: 0;
    min-height: 0;
  }
  body.aura-density
    :is(#v-contenido, #v-formacion, #v-equipo)
    .page-heading
    > div:first-child {
    padding-right: 94px;
  }
  body.aura-density
    :is(#v-contenido, #v-formacion, #v-equipo)
    .page-heading
    > :is(button, .fm-header-actions, .eq-header-actions) {
    margin-top: 12px;
  }
  body.aura-density :is(#v-contenido, #v-formacion, #v-equipo) .section-orbit {
    width: 80px;
    height: 76px;
  }
  body.aura-density #v-contenido .ct-empty-days > div {
    padding: 10px 6px;
  }
  body.aura-density #v-equipo .eq-stat {
    padding: 14px 10px;
  }
  body.aura-density #v-facturas .ab2-kpis {
    gap: 7px;
  }
  body.aura-density #v-facturas .ab2-kpi {
    padding: 11px 9px;
    min-height: 100px;
  }
  body.aura-density #cajaV2Root.aura-caja-look .cx-kpi {
    padding: 14px;
    min-height: 105px;
  }
  body.aura-density #cajaV2Root.aura-caja-look .cx-profit.acl-profit-hero {
    padding: 20px;
    min-height: 0;
  }
  body.aura-density #cajaV2Root.aura-caja-look .cx-head {
    padding-right: 0;
    min-height: 0;
  }
  body.aura-density #cajaV2Root.aura-caja-look .cx-head > div:first-child {
    padding-right: 90px;
  }
  body.aura-density #cajaV2Root.aura-caja-look .cx-head > .acl-aura-mark {
    width: 80px;
    height: 80px;
  }
}

/* WhatsApp already has a viewport-sized workspace; don't disturb its scroll owner. */
body.aura-density.aura-whatsapp-active .app > .main {
  padding-top: 0.38rem;
}
