/* Workspace 8.30.4 · legacy shell consolidated. Source order preserved. */

/* ===== SOURCE: rc-final8-fixes.css ===== */
/* RC Final 8: correcciones móviles conservadoras. No modifica la carátula aprobada. */
@media (max-width:820px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  *,*::before,*::after{box-sizing:border-box}
  .app,.layout,.content,.view,.card,.module-shell,.investigation-shell{max-width:100%!important;min-width:0!important}
  .content{overflow-x:hidden!important;padding-left:12px!important;padding-right:12px!important;padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
  textarea,input,select{max-width:100%!important;min-width:0!important}
  .narrative-flow{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important}
  .narrative-flow>*{min-width:0!important;max-width:100%!important;white-space:normal!important;text-align:center!important}
  .confirm-narrative{width:100%!important;max-width:100%!important;white-space:normal!important}
  #invNarrative{width:100%!important;max-width:100%!important;min-height:260px!important}
  .mobile-nav{
    display:grid!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;
    transform:none!important;width:100%!important;max-width:none!important;min-width:0!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 82px minmax(0,1fr) minmax(0,1fr)!important;
    padding:7px 6px calc(7px + env(safe-area-inset-bottom))!important;
    z-index:9000!important;overflow:visible!important
  }
  .mobile-nav button{min-width:0!important;max-width:100%!important;overflow:visible!important}
  .mobile-nav-item span{display:block!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:.7rem!important}
  .mobile-nav-mic{justify-self:center!important}
  body.br-cover-open .mobile-nav{display:none!important}
  .cloud-sync-status,.sync-status-pill,[data-cloud-sync-status]{max-width:calc(100vw - 24px)!important;right:12px!important;left:auto!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
}


/* ===== SOURCE: rc-final9-compact.css ===== */
/* RC Final 9 · compactación móvil y controles estables. Mantiene el diseño aprobado. */
@media (max-width:820px){
  /* Carátula: mismo lenguaje visual, 22% más compacta. */
  .br-cover-header{min-height:188px!important;padding:calc(env(safe-area-inset-top) + 10px) 16px 18px!important}
  .br-cover-mini{margin-bottom:20px!important;gap:20px!important}
  .br-cover-headrow{grid-template-columns:minmax(0,1fr) 148px 52px!important;gap:8px!important}
  .br-cover-logo{max-width:270px!important}
  .br-cover-device{height:54px!important;border-radius:19px!important}
  .br-cover-avatar{width:52px!important;height:52px!important;font-size:20px!important}
  .br-cover-curve{bottom:-60px!important;height:100px!important}
  .br-cover-sync{height:36px!important;bottom:6px!important;right:14px!important;padding:0 13px!important;font-size:12px!important;max-width:calc(100vw - 28px)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .br-cover-body{padding:12px 14px 16px!important}
  .br-cover-gridbox{padding:17px 14px 15px!important;border-radius:23px!important}
  .br-cover-gridhead{margin-bottom:12px!important}
  .br-cover-gridhead small{font-size:12px!important}
  .br-cover-gridhead h1{font-size:25px!important;margin-top:4px!important}
  .br-cover-gridhead>span{font-size:11px!important;padding:7px 9px!important;border-radius:12px!important}
  .br-cover-grid{gap:7px!important}
  .br-cover-grid button{min-height:82px!important;border-radius:16px!important;gap:7px!important;padding:8px!important}
  .br-cover-grid button svg{width:32px!important;height:32px!important;filter:none!important}
  .br-cover-grid strong{font-size:14px!important;line-height:1.1!important}
  .br-cover-info{min-height:76px!important;margin-top:10px!important;padding:9px 11px!important;border-radius:18px!important;grid-template-columns:48px minmax(0,1fr) auto!important;gap:9px!important}
  .br-cover-infoicon{width:44px!important;height:44px!important}
  .br-cover-infoicon svg{width:28px!important;height:28px!important}
  .br-cover-info small{font-size:11px!important}
  .br-cover-info strong{font-size:16px!important}
  .br-cover-info em{font-size:10.5px!important}
  .br-cover-voice{grid-template-columns:48px minmax(105px,1fr) 82px auto!important}
  .br-cover-wave{height:42px!important;gap:2px!important}
  .br-cover-wave i{width:3px!important}

  /* Barra inferior: fija, más baja y sin empujar el contenido. */
  .br-cover-nav{left:8px!important;right:8px!important;height:68px!important;border-radius:20px!important;grid-template-columns:1fr 1fr 78px 1fr 1fr!important;padding:4px 6px!important}
  .br-cover-nav>button{height:58px!important;font-size:10px!important;gap:2px!important;min-width:0!important}
  .br-cover-nav>button svg{width:23px!important;height:23px!important}
  .br-cover-nav>button.active:after{width:34px!important;height:3px!important}
  .br-cover-nav .br-cover-mic{width:78px!important;height:78px!important;border-width:6px!important;margin-bottom:-2px!important}
  .br-cover-mic>svg{width:34px!important;height:34px!important}

  /* Navegación interna: compacta, siempre centrada y con contraste uniforme. */
  .mobile-nav{height:68px!important;background:#fff!important;border-top:1px solid #e4d9ed!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 74px minmax(0,1fr) minmax(0,1fr)!important;padding:4px 4px calc(4px + env(safe-area-inset-bottom))!important;box-shadow:0 -6px 18px rgba(46,27,67,.12)!important}
  .mobile-nav-item{height:56px!important;padding:4px 2px!important;border-radius:12px!important;background:#fff!important;color:#523178!important;gap:1px!important}
  .mobile-nav-item.active{background:#f4eef9!important;color:#523178!important}
  .mobile-nav-item svg{width:22px!important;height:22px!important}
  .mobile-nav-item span{font-size:10px!important;line-height:1!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}
  .mobile-nav-mic{width:72px!important;height:72px!important;margin-top:-18px!important;border:6px solid #fff!important;background:#f9b52c!important;color:#523178!important;box-shadow:0 8px 18px rgba(46,27,67,.24)!important}
  .mobile-nav-mic svg{width:30px!important;height:30px!important}
  .mobile-nav-mic.universal-recording{background:#d92945!important;color:#fff!important}

  /* Evita mezclas de color y textos fuera de tarjetas. */
  .action-card,.action-btn,.mobile-command-grid button{overflow:hidden!important}
  .action-card *,.action-btn *,.mobile-command-grid button *{max-width:100%!important}
  #generateAllReports small,#generateAllReports span,.generate-reports-card small{color:#fff!important;opacity:.88!important}
  .content{padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}
}

@media(max-width:390px){
  .br-cover-grid button{min-height:78px!important}
  .br-cover-grid strong{font-size:13px!important}
  .br-cover-gridhead h1{font-size:23px!important}
  .br-cover-nav>button{font-size:9.5px!important}
}


/* ===== SOURCE: rc-final10-fixed-dock.css ===== */
/* Banco Ripley PR Enterprise 1.0 RC Final 10
   Barra inferior fija, estable y consistente en todas las pantallas móviles. */

@media (max-width: 930px) {
  :root {
    --br-dock-width: min(calc(100vw - 20px), 720px);
    --br-dock-height: 74px;
    --br-dock-bottom: max(8px, env(safe-area-inset-bottom));
    --br-dock-purple: #523178;
    --br-dock-purple-dark: #2E1B43;
    --br-dock-yellow: #F9B52C;
  }

  html, body {
    overflow-x: hidden !important;
  }

  body {
    padding-bottom: calc(var(--br-dock-height) + var(--br-dock-bottom) + 28px) !important;
  }

  /* La barra real de la aplicación y la barra de la carátula comparten
     exactamente la misma geometría para evitar saltos entre pantallas. */
  .mobile-nav,
  .br-cover-nav {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: var(--br-dock-bottom) !important;
    transform: translate3d(-50%, 0, 0) !important;
    width: var(--br-dock-width) !important;
    min-width: 0 !important;
    max-width: var(--br-dock-width) !important;
    height: var(--br-dock-height) !important;
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 86px minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 5px 6px !important;
    margin: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 24px !important;
    background: linear-gradient(100deg, var(--br-dock-purple-dark), var(--br-dock-purple), #672184) !important;
    box-shadow: 0 10px 28px rgba(46, 27, 67, .28) !important;
    z-index: 2147483000 !important;
    isolation: isolate !important;
    contain: layout style !important;
    -webkit-transform: translate3d(-50%, 0, 0) !important;
  }

  body.br-cover-open .mobile-nav {
    display: none !important;
  }
  body:not(.br-cover-open) .br-cover-nav {
    display: none !important;
  }

  .mobile-nav > button,
  .br-cover-nav > button:not(.br-cover-mic) {
    min-width: 0 !important;
    width: 100% !important;
    height: 60px !important;
    margin: 0 !important;
    padding: 5px 1px 4px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 2px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: transparent !important;
    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .mobile-nav > button.active,
  .br-cover-nav > button.active {
    color: var(--br-dock-yellow) !important;
    background: rgba(255,255,255,.06) !important;
  }

  .mobile-nav-item svg,
  .br-cover-nav > button:not(.br-cover-mic) svg {
    flex: 0 0 auto !important;
    width: 25px !important;
    height: 25px !important;
    stroke-width: 2.3 !important;
  }

  .mobile-nav-item span,
  .br-cover-nav > button:not(.br-cover-mic) span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
    text-align: center !important;
    font-size: clamp(10px, 2.8vw, 13px) !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    color: inherit !important;
  }

  .mobile-nav > button.active::after,
  .br-cover-nav > button.active::after {
    content: "" !important;
    position: absolute !important;
    bottom: 5px !important;
    width: 38px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: var(--br-dock-yellow) !important;
  }

  .mobile-nav-mic,
  .br-cover-mic {
    position: relative !important;
    justify-self: center !important;
    align-self: center !important;
    width: 86px !important;
    min-width: 86px !important;
    max-width: 86px !important;
    height: 86px !important;
    min-height: 86px !important;
    margin: -25px 0 0 !important;
    padding: 0 !important;
    border: 6px solid #fff !important;
    border-radius: 50% !important;
    background: var(--br-dock-yellow) !important;
    color: var(--br-dock-purple) !important;
    box-shadow: 0 9px 22px rgba(46,27,67,.34) !important;
    z-index: 3 !important;
    display: grid !important;
    place-items: center !important;
    overflow: visible !important;
    transform: none !important;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease, scale .12s ease !important;
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .mobile-nav-mic:active,
  .br-cover-mic:active {
    scale: .96 !important;
  }

  .mobile-nav-mic svg,
  .br-cover-mic > svg {
    width: 34px !important;
    height: 34px !important;
    stroke-width: 2.5 !important;
  }

  .mobile-nav-mic.universal-recording,
  .br-cover-mic.is-recording {
    background: #d52e48 !important;
    color: #fff !important;
    animation: brDockMicPulse 1.15s ease-in-out infinite !important;
  }

  .mobile-nav-mic.audio-transcribing {
    background: #23845b !important;
    color: #fff !important;
  }

  /* Evita que modales, tarjetas o contenidos con z-index alto desplacen o
     oculten el dock. El contenido queda por detrás, no alrededor de la barra. */
  .view,
  .main,
  main,
  .app-main {
    min-width: 0 !important;
    max-width: 100vw !important;
  }

  .view.active,
  .view.active > * {
    min-width: 0 !important;
  }
}

@media (max-width: 390px) {
  :root {
    --br-dock-width: calc(100vw - 12px);
  }
  .mobile-nav,
  .br-cover-nav {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 78px minmax(0, 1fr) minmax(0, 1fr) !important;
    padding-inline: 3px !important;
  }
  .mobile-nav-mic,
  .br-cover-mic {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
    height: 78px !important;
    min-height: 78px !important;
    margin-top: -21px !important;
  }
  .mobile-nav-item span,
  .br-cover-nav > button:not(.br-cover-mic) span {
    font-size: 10px !important;
  }
}

@keyframes brDockMicPulse {
  0%,100% { box-shadow: 0 9px 22px rgba(46,27,67,.34), 0 0 0 0 rgba(213,46,72,.40); }
  50% { box-shadow: 0 9px 22px rgba(46,27,67,.34), 0 0 0 13px rgba(213,46,72,0); }
}


/* ===== SOURCE: rc-final11-hybrid.css ===== */
/* Banco Ripley PR Enterprise 1.0 RC Final 11
   Diseño híbrido aprobado: fondo claro, tarjetas corporativas y dock inferior fino.
   Paleta oficial: #523178 #8C4799 #F9B52C #2E1B43 #A2A2A2 #AD9DBF #FFFFFF. */

:root{
  --br-purple:#523178;
  --br-purple-mid:#8C4799;
  --br-purple-deep:#2E1B43;
  --br-yellow:#F9B52C;
  --br-gray:#A2A2A2;
  --br-lilac:#AD9DBF;
  --br-white:#FFFFFF;
  --br-bg:#FAF9FC;
}

@media (max-width:930px){
  html,body{background:var(--br-bg)!important;overflow-x:hidden!important}
  body{padding-bottom:calc(70px + max(8px,env(safe-area-inset-bottom)) + 20px)!important}

  /* Encabezado más fino y liviano */
  .br-cover-header{
    min-height:152px!important;
    padding:calc(env(safe-area-inset-top) + 6px) 16px 12px!important;
    background:var(--br-white)!important;
    box-shadow:0 6px 20px rgba(46,27,67,.06)!important;
  }
  .br-cover-mini{margin-bottom:12px!important;gap:14px!important;color:var(--br-purple)!important}
  .br-cover-mini button,.br-cover-mini>svg{width:30px!important;height:30px!important}
  .br-cover-headrow{grid-template-columns:minmax(0,1fr) 130px 44px!important;gap:8px!important;align-items:center!important}
  .br-cover-logo{max-width:220px!important;max-height:56px!important;object-fit:contain!important}
  .br-cover-device{height:44px!important;border:1px solid rgba(82,49,120,.16)!important;border-radius:15px!important;background:#F5F1F8!important;padding:3px!important;box-shadow:none!important}
  .br-cover-device button{border-radius:11px!important;color:var(--br-purple)!important}
  .br-cover-device button.active{background:var(--br-yellow)!important;color:var(--br-purple-deep)!important;box-shadow:none!important}
  .br-cover-avatar{width:44px!important;height:44px!important;font-size:16px!important;background:var(--br-purple)!important;color:#fff!important;box-shadow:none!important}
  .br-cover-curve{display:none!important}
  .br-cover-sync{height:28px!important;bottom:6px!important;right:16px!important;padding:0 10px!important;border-radius:999px!important;background:#F3EEF7!important;color:var(--br-purple)!important;border:1px solid rgba(82,49,120,.10)!important;box-shadow:none!important;font-size:10px!important}

  /* Cuerpo claro con ondas apenas visibles */
  .br-final-cover,.br-cover-body{background:var(--br-bg)!important}
  .br-cover-body{
    padding:12px 14px 12px!important;
    background-image:
      radial-gradient(70% 26% at 18% 0%,rgba(173,157,191,.13),transparent 72%),
      radial-gradient(65% 22% at 90% 34%,rgba(173,157,191,.09),transparent 72%)!important;
  }

  /* Menú principal más fino: menos alto, menos brillo y mejor respiración */
  .br-cover-gridbox{
    padding:15px 13px 14px!important;
    border-radius:20px!important;
    background:linear-gradient(145deg,var(--br-purple-deep),var(--br-purple) 62%,var(--br-purple-mid))!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 10px 24px rgba(46,27,67,.16)!important;
  }
  .br-cover-gridhead{margin-bottom:10px!important}
  .br-cover-gridhead small{font-size:10px!important;letter-spacing:.12em!important;color:rgba(255,255,255,.70)!important}
  .br-cover-gridhead h1{font-size:22px!important;line-height:1.05!important;margin-top:3px!important;font-weight:750!important}
  .br-cover-gridhead>span{font-size:10px!important;padding:5px 8px!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important}
  .br-cover-grid{gap:7px!important}
  .br-cover-grid button{
    min-height:68px!important;
    padding:7px 5px!important;
    border-radius:14px!important;
    gap:5px!important;
    background:rgba(255,255,255,.075)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:none!important;
    color:#fff!important;
    transition:transform .12s ease,background .12s ease,border-color .12s ease!important;
  }
  .br-cover-grid button:active{transform:scale(.975)!important;background:rgba(255,255,255,.13)!important}
  .br-cover-grid button svg{width:27px!important;height:27px!important;color:#fff!important;stroke-width:2.05!important;filter:none!important}
  .br-cover-grid strong{font-size:12.5px!important;line-height:1.05!important;font-weight:700!important;color:#fff!important}

  .br-cover-info{
    min-height:68px!important;
    margin-top:9px!important;
    padding:9px 11px!important;
    border-radius:17px!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:9px!important;
    background:var(--br-white)!important;
    border:1px solid rgba(82,49,120,.10)!important;
    box-shadow:0 5px 15px rgba(46,27,67,.07)!important;
  }
  .br-cover-infoicon{width:40px!important;height:40px!important;border-radius:13px!important;background:#F2ECF6!important;color:var(--br-purple)!important}
  .br-cover-infoicon svg{width:23px!important;height:23px!important}
  .br-cover-info small{font-size:9.5px!important;color:var(--br-gray)!important}
  .br-cover-info strong{font-size:14px!important;color:var(--br-purple-deep)!important}
  .br-cover-info em{font-size:9.5px!important;color:#706777!important}
  .br-cover-voice{grid-template-columns:42px minmax(105px,1fr) 72px auto!important}
  .br-cover-wave{height:34px!important;gap:2px!important}
  .br-cover-wave i{width:2.5px!important;background:var(--br-purple-mid)!important}

  /* Dock híbrido: blanco, fino, delicado y único en todas las vistas */
  .mobile-nav,.br-cover-nav{
    --br-dock-width:min(calc(100vw - 18px),720px);
    position:fixed!important;
    left:50%!important;right:auto!important;
    bottom:max(7px,env(safe-area-inset-bottom))!important;
    transform:translate3d(-50%,0,0)!important;
    width:var(--br-dock-width)!important;
    max-width:var(--br-dock-width)!important;
    height:62px!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 70px minmax(0,1fr) minmax(0,1fr)!important;
    align-items:center!important;
    padding:3px 5px!important;
    gap:0!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.97)!important;
    border:1px solid rgba(82,49,120,.12)!important;
    box-shadow:0 8px 22px rgba(46,27,67,.14)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    overflow:visible!important;
    z-index:2147483000!important;
  }
  body.br-cover-open .mobile-nav{display:none!important}
  body:not(.br-cover-open) .br-cover-nav{display:none!important}
  .mobile-nav>button,.br-cover-nav>button:not(.br-cover-mic){
    position:relative!important;
    width:100%!important;min-width:0!important;
    height:52px!important;
    padding:3px 1px!important;
    gap:1px!important;
    border:0!important;border-radius:13px!important;
    background:transparent!important;
    color:var(--br-purple)!important;
    box-shadow:none!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
    overflow:hidden!important;
  }
  .mobile-nav>button.active,.br-cover-nav>button.active{background:#F4EFF7!important;color:var(--br-purple-deep)!important}
  .mobile-nav-item svg,.br-cover-nav>button:not(.br-cover-mic) svg{width:21px!important;height:21px!important;stroke-width:2.15!important}
  .mobile-nav-item span,.br-cover-nav>button:not(.br-cover-mic) span{font-size:9.5px!important;line-height:1!important;font-weight:700!important;color:inherit!important;white-space:nowrap!important}
  .mobile-nav>button.active::after,.br-cover-nav>button.active::after{bottom:2px!important;width:24px!important;height:2px!important;background:var(--br-yellow)!important;border-radius:99px!important}

  .mobile-nav-mic,.br-cover-mic{
    width:68px!important;min-width:68px!important;max-width:68px!important;
    height:68px!important;min-height:68px!important;
    margin:-17px 0 0!important;
    border:4px solid #fff!important;
    border-radius:50%!important;
    background:var(--br-yellow)!important;
    color:var(--br-purple-deep)!important;
    box-shadow:0 7px 17px rgba(46,27,67,.22)!important;
    display:grid!important;place-items:center!important;
    overflow:visible!important;
  }
  .mobile-nav-mic svg,.br-cover-mic>svg{width:27px!important;height:27px!important;stroke-width:2.4!important}
  .mobile-nav-mic.universal-recording,.br-cover-mic.is-recording{background:#D52E48!important;color:#fff!important}
  .mobile-nav-mic.audio-transcribing{background:var(--purple-mid,#8C4799)!important;color:#fff!important}

  /* Dotación: encabezado compacto, sin bloque morado gigante */
  .people-view{padding-bottom:90px!important}
  .people-hero{
    min-height:0!important;
    padding:12px 13px!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    border-radius:18px!important;
    background:linear-gradient(135deg,var(--br-purple-deep),var(--br-purple))!important;
    box-shadow:0 8px 20px rgba(46,27,67,.14)!important;
  }
  .people-hero-icon{width:42px!important;height:42px!important;border-radius:13px!important}
  .people-hero-icon svg{width:24px!important;height:24px!important}
  .people-hero h2{font-size:20px!important;line-height:1.05!important;margin:0 0 3px!important}
  .people-hero p{font-size:11px!important;line-height:1.25!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .people-hero .hero-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:2px!important}
  .people-hero .hero-actions button{height:40px!important;border-radius:12px!important;font-size:11px!important;padding:0 10px!important}

  /* Formularios internos más ligeros */
  .card,.people-import,.people-search-card,.people-guide{border-radius:18px!important;box-shadow:0 5px 15px rgba(46,27,67,.07)!important;border-color:rgba(82,49,120,.10)!important}
  .content{padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
}

@media(max-width:390px){
  .br-cover-header{min-height:145px!important}
  .br-cover-logo{max-width:190px!important}
  .br-cover-headrow{grid-template-columns:minmax(0,1fr) 118px 42px!important}
  .br-cover-grid button{min-height:64px!important}
  .br-cover-grid strong{font-size:11.5px!important}
  .mobile-nav,.br-cover-nav{width:calc(100vw - 10px)!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 66px minmax(0,1fr) minmax(0,1fr)!important}
  .mobile-nav-mic,.br-cover-mic{width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;min-height:64px!important}
}


/* ===== SOURCE: rc-final13-white-stable.css ===== */
/* Banco Ripley PR Enterprise 1.0 RC Final 13
   Corrección estable sobre RC Final 11: solo capa visual, sin tocar lógica ni DOM. */
:root{
  --br-purple:#523178;
  --br-purple-mid:#8C4799;
  --br-purple-deep:#2E1B43;
  --br-yellow:#F9B52C;
  --br-gray:#A2A2A2;
  --br-lilac:#AD9DBF;
  --br-white:#FFFFFF;
  --br-bg:#FBFAFD;
}

@media (max-width:930px){
  html,body{background:var(--br-bg)!important}

  /* Ondas decorativas: capa puramente visual */
  body::before,
  body::after{
    content:"";
    position:fixed;
    left:0;
    width:100%;
    height:118px;
    pointer-events:none;
    z-index:0;
    opacity:.22;
    background-repeat:no-repeat;
    background-size:100% 100%;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='130' viewBox='0 0 900 130'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.2' opacity='.55'%3E%3Cpath d='M-20 38 C120 5 180 88 330 46 S580 12 720 52 S890 84 940 42'/%3E%3Cpath d='M-20 46 C120 13 180 96 330 54 S580 20 720 60 S890 92 940 50'/%3E%3Cpath d='M-20 54 C120 21 180 104 330 62 S580 28 720 68 S890 100 940 58'/%3E%3Cpath d='M-20 62 C120 29 180 112 330 70 S580 36 720 76 S890 108 940 66'/%3E%3C/g%3E%3C/svg%3E");
  }
  body::before{top:58px}
  body::after{bottom:48px;transform:rotate(180deg)}
  body>*{position:relative;z-index:1}

  .br-cover-header{
    min-height:150px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 1px 0 rgba(82,49,120,.08)!important;
  }
  .br-cover-body{
    background:transparent!important;
    padding-top:16px!important;
  }

  /* Centro Preventivo claro, sin bloque morado */
  .br-cover-gridbox{
    padding:8px 0 4px!important;
    border-radius:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .br-cover-gridhead{padding:0 5px 12px!important;margin:0!important;color:var(--br-purple-deep)!important}
  .br-cover-gridhead small{color:var(--br-purple)!important;font-size:10px!important;letter-spacing:.16em!important}
  .br-cover-gridhead h1{color:var(--br-purple-deep)!important;font-size:24px!important}
  .br-cover-gridhead>span{background:#fff!important;color:var(--br-purple)!important;border:1px solid rgba(82,49,120,.16)!important}
  .br-cover-grid{gap:9px!important}
  .br-cover-grid button{
    min-height:78px!important;
    padding:10px 8px!important;
    border-radius:17px!important;
    background:rgba(255,255,255,.97)!important;
    border:1px solid rgba(82,49,120,.08)!important;
    box-shadow:0 5px 15px rgba(46,27,67,.07)!important;
    color:var(--br-purple-deep)!important;
  }
  .br-cover-grid button:active{background:#F8F5FA!important;transform:scale(.98)!important}
  .br-cover-grid button svg{
    width:28px!important;height:28px!important;
    color:var(--br-purple)!important;
    stroke-width:1.75!important;
  }
  .br-cover-grid strong{color:var(--br-purple-deep)!important;font-size:12.5px!important;font-weight:700!important}

  /* Primera acción con acento discreto */
  .br-cover-grid button:first-child{
    box-shadow:inset 3px 0 0 var(--br-yellow),0 5px 15px rgba(46,27,67,.07)!important;
    background:linear-gradient(90deg,rgba(249,181,44,.055),#fff 38%)!important;
  }

  /* Tarjetas informativas blancas */
  .br-cover-info{background:rgba(255,255,255,.97)!important}
  .br-cover-infoicon{background:#F3EEF7!important;color:var(--br-purple)!important}

  /* Dock blanco fino y elegante */
  .mobile-nav,.br-cover-nav{
    height:60px!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.97)!important;
    border:1px solid rgba(82,49,120,.10)!important;
    box-shadow:0 8px 22px rgba(46,27,67,.13)!important;
  }
  .mobile-nav>button,.br-cover-nav>button:not(.br-cover-mic){color:var(--br-purple)!important}
  .mobile-nav>button.active,.br-cover-nav>button.active{background:transparent!important;color:var(--br-purple-deep)!important}
  .mobile-nav-item svg,.br-cover-nav>button:not(.br-cover-mic) svg{stroke-width:1.8!important}
  .mobile-nav-mic,.br-cover-mic{
    width:64px!important;min-width:64px!important;max-width:64px!important;
    height:64px!important;min-height:64px!important;
    margin:-15px 0 0!important;
    border:4px solid #fff!important;
    background:var(--br-yellow)!important;
    box-shadow:0 7px 16px rgba(46,27,67,.18)!important;
  }

  /* Dotación compacta y clara */
  .people-hero{
    background:#fff!important;
    color:var(--br-purple-deep)!important;
    border:1px solid rgba(82,49,120,.10)!important;
    box-shadow:0 6px 18px rgba(46,27,67,.08)!important;
  }
  .people-hero h2,.people-hero p{color:var(--br-purple-deep)!important}
  .people-hero-icon{background:#F3EEF7!important;color:var(--br-purple)!important}
}

/* RC Final 14: ondas visibles y consistencia visual */
@media (max-width:930px){
  /* Evita que las ondas queden ocultas detrás de fondos opacos */
  body::before,body::after{display:none!important}

  .br-cover-header::before,
  .br-cover-header::after,
  .br-final-cover::after{
    content:"";
    position:absolute;
    left:-3%;
    width:106%;
    height:88px;
    pointer-events:none;
    z-index:1;
    opacity:.32;
    background-repeat:no-repeat;
    background-size:100% 100%;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='110' viewBox='0 0 900 110'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.25' opacity='.7'%3E%3Cpath d='M-20 30 C110 3 190 78 330 40 S580 8 720 45 S890 76 940 35'/%3E%3Cpath d='M-20 38 C110 11 190 86 330 48 S580 16 720 53 S890 84 940 43'/%3E%3Cpath d='M-20 46 C110 19 190 94 330 56 S580 24 720 61 S890 92 940 51'/%3E%3Cpath d='M-20 54 C110 27 190 102 330 64 S580 32 720 69 S890 100 940 59'/%3E%3C/g%3E%3C/svg%3E");
  }
  .br-cover-header::before{top:8px}
  .br-cover-header::after{bottom:-12px;transform:rotate(180deg)}
  .br-cover-header>*{position:relative;z-index:2}

  .br-final-cover{position:fixed!important}
  .br-final-cover::after{
    position:fixed;
    bottom:58px;
    transform:rotate(180deg);
    z-index:100001;
    opacity:.26;
  }
  .br-cover-nav{z-index:100010!important}
}


/* ===== SOURCE: rc-final16-master-responsive.css ===== */
/* Banco Ripley PR Enterprise 1.0 RC Final 16
   Plantilla maestra aprobada: móvil, iPad y PC. Solo capa visual. */
:root{
  --br-purple:#523178;--br-purple-mid:#8C4799;--br-purple-deep:#2E1B43;
  --br-yellow:#F9B52C;--br-gray:#A2A2A2;--br-lilac:#AD9DBF;
  --br-white:#FFFFFF;--br-surface:#FCFBFD;--br-line:rgba(173,157,191,.34);
  --br-shadow:0 8px 24px rgba(46,27,67,.08);
}
html,body{background:var(--br-surface)!important}
body{position:relative}
/* Ondas maestras: arriba, bajo cabecera y zona inferior */
body::before,body::after{
  content:"";position:fixed;left:0;width:100%;pointer-events:none;z-index:0;
  background-repeat:no-repeat;background-size:cover;background-position:center;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='190' viewBox='0 0 1600 190'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.15' opacity='.52'%3E%3Cpath d='M-40 58 C190 5 310 138 560 72 S930 15 1190 86 S1480 120 1650 58'/%3E%3Cpath d='M-40 68 C190 15 310 148 560 82 S930 25 1190 96 S1480 130 1650 68'/%3E%3Cpath d='M-40 78 C190 25 310 158 560 92 S930 35 1190 106 S1480 140 1650 78'/%3E%3Cpath d='M-40 88 C190 35 310 168 560 102 S930 45 1190 116 S1480 150 1650 88'/%3E%3C/g%3E%3C/svg%3E");
}
body::before{top:58px;height:180px;opacity:.34}
body::after{bottom:34px;height:160px;opacity:.20;transform:rotate(180deg)}
body>*{position:relative;z-index:1}

/* Cabecera común refinada */
.br-cover-header,.topbar{
  background:rgba(255,255,255,.95)!important;color:var(--br-purple-deep)!important;
  border-bottom:1px solid rgba(82,49,120,.08)!important;
  box-shadow:0 4px 18px rgba(46,27,67,.05)!important;
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
}
.br-cover-curve{display:none!important}
.br-cover-body,.br-final-cover{background:transparent!important}

/* Inicio: plantilla clara aprobada */
.br-cover-gridbox{background:transparent!important;border:0!important;box-shadow:none!important}
.br-cover-gridhead{color:var(--br-purple-deep)!important}
.br-cover-gridhead small,.br-cover-gridhead h1{color:var(--br-purple-deep)!important}
.br-cover-gridhead>span{background:#fff!important;color:var(--br-purple)!important;border:1px solid rgba(82,49,120,.13)!important}
.br-cover-grid button{
  background:rgba(255,255,255,.96)!important;color:var(--br-purple-deep)!important;
  border:1px solid rgba(82,49,120,.09)!important;border-radius:19px!important;
  box-shadow:var(--br-shadow)!important;transition:transform .15s ease,box-shadow .15s ease!important;
}
.br-cover-grid button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(46,27,67,.11)!important}
.br-cover-grid button svg{color:var(--br-purple)!important;stroke-width:1.65!important;filter:none!important}
.br-cover-grid strong{color:var(--br-purple-deep)!important;font-weight:700!important}
.br-cover-grid button:first-child{box-shadow:inset 3px 0 0 var(--br-yellow),var(--br-shadow)!important}
.br-cover-info{background:rgba(255,255,255,.96)!important;border:1px solid rgba(82,49,120,.09)!important;box-shadow:var(--br-shadow)!important}
.br-cover-infoicon{background:#F3EEF7!important;color:var(--br-purple)!important}

/* Dotación y módulos internos */
.people-hero{background:rgba(255,255,255,.97)!important;color:var(--br-purple-deep)!important;border:1px solid rgba(82,49,120,.10)!important;box-shadow:var(--br-shadow)!important}
.people-hero h2,.people-hero p{color:var(--br-purple-deep)!important}
.people-hero-icon{background:#F3EEF7!important;color:var(--br-purple)!important}
.card,.people-import,.people-search-card,.people-guide{background:rgba(255,255,255,.97)!important;border-color:rgba(82,49,120,.10)!important;box-shadow:var(--br-shadow)!important}

/* Dock único, delicado y estable */
.mobile-nav,.br-cover-nav{
  background:rgba(255,255,255,.97)!important;border:1px solid rgba(82,49,120,.11)!important;
  box-shadow:0 10px 28px rgba(46,27,67,.14)!important;backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;border-radius:22px!important;
}
.mobile-nav>button,.br-cover-nav>button:not(.br-cover-mic){color:var(--br-purple)!important;background:transparent!important}
.mobile-nav>button.active,.br-cover-nav>button.active{background:#F4EFF7!important;color:var(--br-purple-deep)!important}
.mobile-nav-mic,.br-cover-mic{background:var(--br-yellow)!important;color:var(--br-purple-deep)!important;border-color:#fff!important;box-shadow:0 7px 18px rgba(46,27,67,.20)!important}
.mobile-nav-mic.universal-recording,.br-cover-mic.is-recording{background:#D52E48!important;color:#fff!important}

/* Móvil */
@media(max-width:600px){
  body::before{top:52px;height:135px;opacity:.38} body::after{height:115px;bottom:54px;opacity:.22}
  .br-cover-header{min-height:142px!important;padding-bottom:10px!important}
  .br-cover-body{padding:18px 16px 98px!important}
  .br-cover-gridbox{padding:2px 0 4px!important}
  .br-cover-grid{gap:12px!important}
  .br-cover-grid button{min-height:82px!important;padding:11px 8px!important}
  .br-cover-grid button svg{width:27px!important;height:27px!important}
  .br-cover-grid strong{font-size:12px!important}
  .br-cover-info{margin-top:12px!important;border-radius:18px!important}
  .mobile-nav,.br-cover-nav{width:calc(100vw - 24px)!important;height:62px!important;bottom:max(8px,env(safe-area-inset-bottom))!important}
  .mobile-nav-mic,.br-cover-mic{width:66px!important;min-width:66px!important;max-width:66px!important;height:66px!important;min-height:66px!important;margin-top:-16px!important}
  .people-hero{padding:13px!important;border-radius:18px!important}
}

/* iPad */
@media(min-width:601px) and (max-width:1024px){
  body::before{top:62px;height:175px;opacity:.30} body::after{height:150px;bottom:38px;opacity:.17}
  .br-cover-header{min-height:150px!important;padding-left:28px!important;padding-right:28px!important}
  .br-cover-body{max-width:920px!important;margin:0 auto!important;padding:24px 28px 106px!important}
  .br-cover-gridbox{padding:4px 0 8px!important}
  .br-cover-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
  .br-cover-grid button{min-height:104px!important;padding:15px 10px!important}
  .br-cover-grid button svg{width:32px!important;height:32px!important}
  .br-cover-grid strong{font-size:13px!important}
  .br-cover-info{border-radius:20px!important;min-height:78px!important}
  .mobile-nav,.br-cover-nav{width:min(720px,calc(100vw - 48px))!important;height:64px!important}
}

/* PC */
@media(min-width:1025px){
  body::before{top:70px;height:190px;opacity:.26} body::after{height:170px;bottom:0;opacity:.15}
  .br-cover-header{min-height:138px!important;padding:18px 42px!important}
  .br-cover-body{max-width:1320px!important;margin:0 auto!important;padding:28px 42px 104px!important}
  .br-cover-gridbox{padding:6px 0 12px!important}
  .br-cover-gridhead{margin-bottom:18px!important}
  .br-cover-gridhead h1{font-size:30px!important}
  .br-cover-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
  .br-cover-grid button{min-height:118px!important;padding:18px 14px!important}
  .br-cover-grid button svg{width:35px!important;height:35px!important}
  .br-cover-grid strong{font-size:14px!important}
  .br-cover-info{border-radius:22px!important;min-height:84px!important}
  .mobile-nav,.br-cover-nav{width:min(760px,calc(100vw - 80px))!important;height:64px!important;bottom:14px!important}
  .content{max-width:1500px;margin:0 auto}
}


/* ===== SOURCE: rc-final17-unified-design.css ===== */
/* Banco Ripley PR Enterprise 1.0 RC Final 17
   Firma visual unificada, estado compacto y ondas estables en móvil, iPad y PC. */
:root{
  --br-purple:#523178;
  --br-purple-mid:#8C4799;
  --br-yellow:#F9B52C;
  --br-purple-deep:#2E1B43;
  --br-gray:#A2A2A2;
  --br-lilac:#AD9DBF;
  --br-white:#FFFFFF;
}

/* Evita que las capas fijas se crucen o se acumulen durante el desplazamiento. */
body::before,body::after{display:none!important}

/* Fondo estable del entorno general: las ondas pertenecen al contenido, no al viewport. */
.app{
  position:relative;
  isolation:isolate;
  background-color:#FCFBFD!important;
  background-repeat:no-repeat!important;
  background-size:100% 190px,100% 220px,100% 190px!important;
  background-position:center 78px,center 50%,center calc(100% - 22px)!important;
  background-attachment:scroll!important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='190' viewBox='0 0 1600 190'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.05' opacity='.36'%3E%3Cpath d='M-30 48 C190 4 330 132 565 70 S940 16 1190 84 S1480 118 1650 54'/%3E%3Cpath d='M-30 60 C190 16 330 144 565 82 S940 28 1190 96 S1480 130 1650 66'/%3E%3Cpath d='M-30 72 C190 28 330 156 565 94 S940 40 1190 108 S1480 142 1650 78'/%3E%3Cpath d='M-30 84 C190 40 330 168 565 106 S940 52 1190 120 S1480 154 1650 90'/%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='220' viewBox='0 0 1600 220'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='.95' opacity='.20'%3E%3Cpath d='M-40 74 C180 18 350 165 610 92 S1000 38 1260 116 S1500 155 1660 92'/%3E%3Cpath d='M-40 89 C180 33 350 180 610 107 S1000 53 1260 131 S1500 170 1660 107'/%3E%3Cpath d='M-40 104 C180 48 350 195 610 122 S1000 68 1260 146 S1500 185 1660 122'/%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='190' viewBox='0 0 1600 190'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1' opacity='.24'%3E%3Cpath d='M-30 96 C210 152 350 18 610 86 S990 142 1260 64 S1510 30 1660 96'/%3E%3Cpath d='M-30 108 C210 164 350 30 610 98 S990 154 1260 76 S1510 42 1660 108'/%3E%3Cpath d='M-30 120 C210 176 350 42 610 110 S990 166 1260 88 S1510 54 1660 120'/%3E%3C/g%3E%3C/svg%3E")!important;
}
.app>*{position:relative;z-index:1}

/* Portada móvil: ondas propias, ancladas al documento y separadas entre sí. */
.br-final-cover{
  background-color:#FCFBFD!important;
  background-repeat:no-repeat!important;
  background-size:100% 150px,100% 130px!important;
  background-position:center 82px,center calc(100% - 86px)!important;
  background-attachment:local!important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='150' viewBox='0 0 900 150'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1' opacity='.40'%3E%3Cpath d='M-20 42 C135 8 205 110 360 62 S600 16 760 72 S880 96 940 54'/%3E%3Cpath d='M-20 54 C135 20 205 122 360 74 S600 28 760 84 S880 108 940 66'/%3E%3Cpath d='M-20 66 C135 32 205 134 360 86 S600 40 760 96 S880 120 940 78'/%3E%3Cpath d='M-20 78 C135 44 205 146 360 98 S600 52 760 108 S880 132 940 90'/%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='130' viewBox='0 0 900 130'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='.95' opacity='.25'%3E%3Cpath d='M-20 78 C135 116 220 20 375 65 S605 110 765 52 S890 35 940 76'/%3E%3Cpath d='M-20 90 C135 128 220 32 375 77 S605 122 765 64 S890 47 940 88'/%3E%3Cpath d='M-20 102 C135 140 220 44 375 89 S605 134 765 76 S890 59 940 100'/%3E%3C/g%3E%3C/svg%3E")!important;
}
.br-cover-header{overflow:visible!important;padding-bottom:14px!important;min-height:132px!important}
.br-cover-mini{margin-bottom:18px!important}
.br-cover-headrow{padding-right:38px!important}
.br-cover-logo{max-width:305px!important}

/* Un solo símbolo de estado. No ocupa una fila ni tapa el logo. */
.br-cover-sync{
  width:30px!important;height:30px!important;min-width:30px!important;
  right:14px!important;bottom:16px!important;padding:0!important;
  border-radius:50%!important;display:grid!important;place-items:center!important;
  background:rgba(255,255,255,.96)!important;color:var(--br-purple)!important;
  border:1px solid rgba(82,49,120,.12)!important;
  box-shadow:0 5px 14px rgba(46,27,67,.09)!important;
  cursor:pointer;
}
.br-cover-sync span{display:none!important}
.br-cover-sync svg{width:16px!important;height:16px!important;stroke-width:1.7!important}
.br-cover-sync[data-state="online"]{color:#2F8A55!important}
.br-cover-sync[data-state="syncing"]{color:var(--br-yellow)!important}
.br-cover-sync[data-state="error"]{color:#C7354D!important}
.br-cover-sync[data-state="local"]{color:var(--br-purple)!important}
.br-cover-sync[data-state="syncing"] svg{animation:brSyncSoft 1.25s linear infinite}
@keyframes brSyncSoft{to{transform:rotate(360deg)}}

/* El aviso técnico duplicado pasa a ser accesible, pero no compite visualmente. */
.cloud-sync-status{display:none!important}

/* Más aire entre logo, menú e iconos; conserva la geometría aprobada. */
.br-cover-body{padding-top:24px!important}
.br-cover-grid{gap:14px!important}
.br-cover-grid button{padding:13px 10px!important}
.br-cover-grid button svg{stroke-width:1.55!important}
.br-cover-nav>button svg,.mobile-nav>button svg{stroke-width:1.65!important}

/* iPhone: sin ondas centrales para mantener limpieza. */
@media(max-width:600px){
  .app{background-image:none!important}
  .br-cover-header{min-height:136px!important}
  .br-cover-headrow{grid-template-columns:minmax(0,1fr) 142px 48px!important;gap:9px!important;padding-right:28px!important}
  .br-cover-logo{max-width:225px!important}
  .br-cover-sync{right:8px!important;bottom:12px!important}
  .br-cover-body{padding-top:21px!important}
  .br-cover-grid{gap:13px!important}
}

/* iPad = PC: tres zonas de ondas y mayor respiración. */
@media(min-width:601px) and (max-width:1024px){
  .app{background-size:100% 180px,100% 210px,100% 180px!important;background-position:center 86px,center 50%,center calc(100% - 22px)!important}
  .content{padding-left:30px!important;padding-right:30px!important}
}
@media(min-width:1025px){
  .app{background-size:100% 200px,100% 235px,100% 200px!important;background-position:center 88px,center 50%,center calc(100% - 26px)!important}
  .content{padding-left:42px!important;padding-right:42px!important}
}


/* ===== SOURCE: rc-final18-cover-lock.css ===== */
/* RC Final 18 — bloqueo visual de portada aprobada.
   Cargado al final para impedir regresiones por estilos heredados o caché parcial. */
:root{--br18-purple:#523178;--br18-deep:#2E1B43;--br18-mid:#8C4799;--br18-yellow:#F9B52C;--br18-lilac:#AD9DBF;}

@media (max-width:930px){
  #brFinalCover.br-final-cover{
    position:fixed!important;inset:0!important;z-index:100000!important;
    display:none;overflow-y:auto!important;overscroll-behavior:contain!important;
    padding:0 0 104px!important;color:var(--br18-deep)!important;
    background-color:#FCFBFD!important;background-attachment:local!important;
    background-repeat:no-repeat!important;background-size:100% 145px,100% 126px!important;
    background-position:center 66px,center calc(100% - 72px)!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='145' viewBox='0 0 900 145'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1' opacity='.38'%3E%3Cpath d='M-20 40 C135 7 205 108 360 61 S600 15 760 70 S880 95 940 53'/%3E%3Cpath d='M-20 52 C135 19 205 120 360 73 S600 27 760 82 S880 107 940 65'/%3E%3Cpath d='M-20 64 C135 31 205 132 360 85 S600 39 760 94 S880 119 940 77'/%3E%3Cpath d='M-20 76 C135 43 205 144 360 97 S600 51 760 106 S880 131 940 89'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='126' viewBox='0 0 900 126'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='.95' opacity='.24'%3E%3Cpath d='M-20 76 C135 114 220 18 375 63 S605 108 765 50 S890 33 940 74'/%3E%3Cpath d='M-20 88 C135 126 220 30 375 75 S605 120 765 62 S890 45 940 86'/%3E%3Cpath d='M-20 100 C135 138 220 42 375 87 S605 132 765 74 S890 57 940 98'/%3E%3C/g%3E%3C/svg%3E")!important;
  }
  body.br-cover-open #brFinalCover.br-final-cover{display:block!important}

  #brFinalCover .br-cover-header{
    position:relative!important;min-height:164px!important;padding:22px 16px 18px!important;
    overflow:hidden!important;background:rgba(255,255,255,.88)!important;
    border:0!important;border-bottom:1px solid rgba(82,49,120,.07)!important;
    box-shadow:none!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;
  }
  #brFinalCover .br-cover-header::before,
  #brFinalCover .br-cover-header::after{display:none!important}
  #brFinalCover .br-cover-mini{display:flex!important;align-items:center!important;gap:15px!important;margin:0 0 9px!important;color:var(--br18-purple)!important}
  #brFinalCover .br-cover-mini button{background:transparent!important;color:var(--br18-purple)!important;border:0!important;padding:0!important}
  #brFinalCover .br-cover-headrow{display:grid!important;grid-template-columns:minmax(0,1fr) 142px 50px!important;gap:9px!important;align-items:center!important;padding:0!important}
  #brFinalCover .br-cover-logo{display:block!important;width:min(225px,100%)!important;max-width:225px!important;height:auto!important;opacity:1!important;visibility:visible!important;filter:none!important}
  #brFinalCover .br-cover-device{height:54px!important;border-radius:18px!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(82,49,120,.14)!important;box-shadow:0 6px 16px rgba(46,27,67,.06)!important}
  #brFinalCover .br-cover-device button{background:transparent!important;color:var(--br18-purple)!important;border-radius:14px!important}
  #brFinalCover .br-cover-device button.active{background:var(--br18-yellow)!important;color:var(--br18-purple)!important}
  #brFinalCover .br-cover-avatar{width:50px!important;height:50px!important;background:var(--br18-purple)!important;color:#fff!important}
  #brFinalCover .br-cover-curve{display:none!important}
  #brFinalCover .br-cover-sync{position:absolute!important;right:15px!important;bottom:10px!important;width:30px!important;height:30px!important;min-width:30px!important;padding:0!important;border-radius:50%!important;background:#fff!important;border:1px solid rgba(82,49,120,.12)!important;color:var(--br18-purple)!important;box-shadow:0 5px 14px rgba(46,27,67,.08)!important;display:grid!important;place-items:center!important}
  #brFinalCover .br-cover-sync span{display:none!important}

  #brFinalCover .br-cover-body{padding:24px 16px 18px!important;background:transparent!important}
  #brFinalCover .br-cover-gridbox{padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  #brFinalCover .br-cover-gridhead{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;margin:0 3px 15px!important;padding:0!important}
  #brFinalCover .br-cover-gridhead small{color:var(--br18-purple)!important;font-size:11px!important;letter-spacing:.16em!important;font-weight:800!important}
  #brFinalCover .br-cover-gridhead h1{margin:5px 0 0!important;color:var(--br18-deep)!important;font-size:27px!important;line-height:1.05!important}
  #brFinalCover .br-cover-gridhead>span{display:flex!important;background:#fff!important;color:var(--br18-purple)!important;border:1px solid rgba(82,49,120,.14)!important;border-radius:16px!important;padding:9px 11px!important;box-shadow:none!important}
  #brFinalCover .br-cover-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  #brFinalCover .br-cover-grid button{
    min-height:91px!important;padding:12px 8px!important;border-radius:19px!important;
    background:rgba(255,255,255,.97)!important;color:var(--br18-deep)!important;
    border:1px solid rgba(82,49,120,.08)!important;box-shadow:0 7px 20px rgba(46,27,67,.075)!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  }
  #brFinalCover .br-cover-grid button:first-child{background:linear-gradient(90deg,rgba(249,181,44,.055),#fff 38%)!important;box-shadow:inset 3px 0 0 var(--br18-yellow),0 7px 20px rgba(46,27,67,.075)!important}
  #brFinalCover .br-cover-grid button svg{width:31px!important;height:31px!important;color:var(--br18-purple)!important;stroke:currentColor!important;stroke-width:1.65!important;filter:none!important}
  #brFinalCover .br-cover-grid strong{color:var(--br18-deep)!important;font-size:13px!important;font-weight:700!important}

  #brFinalCover .br-cover-info{margin-top:13px!important;min-height:86px!important;border-radius:19px!important;background:rgba(255,255,255,.97)!important;color:var(--br18-deep)!important;border:1px solid rgba(82,49,120,.08)!important;box-shadow:0 7px 20px rgba(46,27,67,.07)!important}
  #brFinalCover .br-cover-infoicon{background:#F3EEF7!important;color:var(--br18-purple)!important}
  #brFinalCover .br-cover-info strong{color:var(--br18-deep)!important}

  #brFinalCover .br-cover-nav{
    position:fixed!important;left:10px!important;right:10px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;
    width:auto!important;height:64px!important;padding:4px 7px!important;border-radius:22px!important;
    background:rgba(255,255,255,.98)!important;border:1px solid rgba(82,49,120,.10)!important;
    box-shadow:0 10px 26px rgba(46,27,67,.14)!important;display:grid!important;
    grid-template-columns:1fr 1fr 80px 1fr 1fr!important;align-items:center!important;z-index:100010!important;
  }
  #brFinalCover .br-cover-nav>button:not(.br-cover-mic){height:55px!important;background:transparent!important;color:var(--br18-purple)!important;border:0!important;border-radius:16px!important;font-size:11px!important}
  #brFinalCover .br-cover-nav>button.active:not(.br-cover-mic){background:#F4EFF7!important;color:var(--br18-deep)!important}
  #brFinalCover .br-cover-nav .br-cover-mic,
  #brFinalCover .br-cover-nav .br-cover-mic.recording{
    position:relative!important;align-self:center!important;width:72px!important;min-width:72px!important;max-width:72px!important;height:72px!important;min-height:72px!important;
    margin:-15px auto 0!important;padding:0!important;border-radius:50%!important;border:5px solid #fff!important;
    background:var(--br18-yellow)!important;color:var(--br18-purple)!important;box-shadow:0 8px 19px rgba(46,27,67,.19)!important;
    display:grid!important;place-items:center!important;overflow:hidden!important;
  }
  #brFinalCover .br-cover-nav .br-cover-mic.recording{background:#D13D50!important;color:#fff!important;border-radius:50%!important}
  #brFinalCover .br-cover-nav .br-cover-mic>svg{width:31px!important;height:31px!important}
  #brFinalCover .br-cover-nav .br-cover-mic.recording .br-cover-stop{display:grid!important;place-items:center!important}
}


/* ===== SOURCE: rc-final19-wave-visual.css ===== */
/* Banco Ripley PR Enterprise 1.0 RC Final 19
   Ondas corporativas con mayor presencia, sin competir con el contenido.
   iPhone: banda superior e inferior. iPad y PC: superior, central e inferior a todo el ancho. */
:root{
  --br19-purple:#523178;
  --br19-mid:#8C4799;
  --br19-yellow:#F9B52C;
  --br19-deep:#2E1B43;
  --br19-lilac:#AD9DBF;
}

/* Portada móvil: mejora de lectura y ondas un poco más visibles. */
@media (max-width:930px){
  #brFinalCover.br-final-cover{
    background-color:#FCFBFD!important;
    background-size:100% 158px,100% 142px!important;
    background-position:center 58px,center calc(100% - 66px)!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='158' viewBox='0 0 1000 158'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.15' opacity='.52'%3E%3Cpath d='M-35 38 C130 5 225 111 395 57 S665 8 835 69 S965 96 1040 49'/%3E%3Cpath d='M-35 50 C130 17 225 123 395 69 S665 20 835 81 S965 108 1040 61'/%3E%3Cpath d='M-35 62 C130 29 225 135 395 81 S665 32 835 93 S965 120 1040 73'/%3E%3Cpath d='M-35 74 C130 41 225 147 395 93 S665 44 835 105 S965 132 1040 85'/%3E%3Cpath d='M-35 86 C130 53 225 159 395 105 S665 56 835 117 S965 144 1040 97'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='142' viewBox='0 0 1000 142'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.05' opacity='.38'%3E%3Cpath d='M-35 74 C145 122 245 17 420 64 S690 119 850 52 S980 31 1040 78'/%3E%3Cpath d='M-35 86 C145 134 245 29 420 76 S690 131 850 64 S980 43 1040 90'/%3E%3Cpath d='M-35 98 C145 146 245 41 420 88 S690 143 850 76 S980 55 1040 102'/%3E%3Cpath d='M-35 110 C145 158 245 53 420 100 S690 155 850 88 S980 67 1040 114'/%3E%3C/g%3E%3C/svg%3E")!important;
  }

  #brFinalCover .br-cover-header{min-height:170px!important;padding-top:24px!important;padding-bottom:20px!important}
  #brFinalCover .br-cover-body{padding-top:27px!important}
  #brFinalCover .br-cover-grid{gap:15px!important}
  #brFinalCover .br-cover-grid button{min-height:96px!important}
  #brFinalCover .br-cover-nav{bottom:max(9px,env(safe-area-inset-bottom))!important}
}

/* iPad y PC: bandas completas, continuas y visibles con opacidad controlada. */
@media (min-width:601px){
  .app{
    background-color:#FCFBFD!important;
    background-repeat:no-repeat!important;
    background-attachment:scroll!important;
    background-position:center 72px,center 51%,center calc(100% - 12px)!important;
    background-size:100% 225px,100% 260px,100% 225px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2200' height='225' viewBox='0 0 2200 225'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.15' opacity='.46'%3E%3Cpath d='M-80 55 C230 0 430 160 760 82 S1290 8 1630 96 S2040 128 2280 59'/%3E%3Cpath d='M-80 69 C230 14 430 174 760 96 S1290 22 1630 110 S2040 142 2280 73'/%3E%3Cpath d='M-80 83 C230 28 430 188 760 110 S1290 36 1630 124 S2040 156 2280 87'/%3E%3Cpath d='M-80 97 C230 42 430 202 760 124 S1290 50 1630 138 S2040 170 2280 101'/%3E%3Cpath d='M-80 111 C230 56 430 216 760 138 S1290 64 1630 152 S2040 184 2280 115'/%3E%3Cpath d='M-80 125 C230 70 430 230 760 152 S1290 78 1630 166 S2040 198 2280 129'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2200' height='260' viewBox='0 0 2200 260'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.05' opacity='.30'%3E%3Cpath d='M-100 82 C210 18 455 190 820 105 S1370 35 1710 132 S2080 177 2300 96'/%3E%3Cpath d='M-100 98 C210 34 455 206 820 121 S1370 51 1710 148 S2080 193 2300 112'/%3E%3Cpath d='M-100 114 C210 50 455 222 820 137 S1370 67 1710 164 S2080 209 2300 128'/%3E%3Cpath d='M-100 130 C210 66 455 238 820 153 S1370 83 1710 180 S2080 225 2300 144'/%3E%3Cpath d='M-100 146 C210 82 455 254 820 169 S1370 99 1710 196 S2080 241 2300 160'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2200' height='225' viewBox='0 0 2200 225'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.12' opacity='.40'%3E%3Cpath d='M-80 105 C250 177 480 18 835 100 S1370 175 1720 76 S2080 34 2280 104'/%3E%3Cpath d='M-80 119 C250 191 480 32 835 114 S1370 189 1720 90 S2080 48 2280 118'/%3E%3Cpath d='M-80 133 C250 205 480 46 835 128 S1370 203 1720 104 S2080 62 2280 132'/%3E%3Cpath d='M-80 147 C250 219 480 60 835 142 S1370 217 1720 118 S2080 76 2280 146'/%3E%3Cpath d='M-80 161 C250 233 480 74 835 156 S1370 231 1720 132 S2080 90 2280 160'/%3E%3C/g%3E%3C/svg%3E")!important;
  }

  /* Más respiración para que la gráfica no se junte con las tarjetas. */
  .content{padding-top:28px!important;padding-bottom:30px!important}
  .dashboard-grid,.module-grid,.quick-grid{gap:18px!important}
}

@media (min-width:1025px){
  .app{background-size:100% 240px,100% 285px,100% 240px!important}
  .content{padding-left:48px!important;padding-right:48px!important}
}


/* ===== SOURCE: rc-final20-mobile-lock.css ===== */
/* RC Final 20 — portada móvil oficial compacta y bloqueada.
   Objetivos: evitar superposición/duplicación, fijar barra y micrófono,
   recuperar ondas y líneas divisorias, y reducir la carátula 10–12%. */
:root{
  --br20-purple:#523178;
  --br20-deep:#2E1B43;
  --br20-mid:#8C4799;
  --br20-yellow:#F9B52C;
  --br20-lilac:#AD9DBF;
  --br20-bg:#FCFBFD;
}

@media (max-width:930px){
  html,body{max-width:100%;overflow-x:hidden!important}
  body.br-cover-open{overflow:hidden!important;background:var(--br20-bg)!important}

  /* La portada es una capa completamente opaca e independiente. */
  #brFinalCover.br-final-cover{
    position:fixed!important;inset:0!important;z-index:2147483000!important;
    display:none!important;overflow-x:hidden!important;overflow-y:auto!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
    isolation:isolate!important;contain:layout paint style!important;
    padding:0 0 calc(88px + env(safe-area-inset-bottom))!important;
    background-color:var(--br20-bg)!important;
    background-repeat:no-repeat!important;
    background-attachment:local!important;
    background-position:center 154px,center 52%,center calc(100% - 70px)!important;
    background-size:100% 132px,100% 108px,100% 126px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='132' viewBox='0 0 1000 132'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.05' opacity='.48'%3E%3Cpath d='M-45 35 C125 4 225 100 395 52 S665 7 835 63 S970 90 1045 45'/%3E%3Cpath d='M-45 47 C125 16 225 112 395 64 S665 19 835 75 S970 102 1045 57'/%3E%3Cpath d='M-45 59 C125 28 225 124 395 76 S665 31 835 87 S970 114 1045 69'/%3E%3Cpath d='M-45 71 C125 40 225 136 395 88 S665 43 835 99 S970 126 1045 81'/%3E%3Cpath d='M-45 83 C125 52 225 148 395 100 S665 55 835 111 S970 138 1045 93'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='108' viewBox='0 0 1000 108'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='.9' opacity='.22'%3E%3Cpath d='M-40 45 C130 10 235 92 405 49 S680 8 845 57 S970 82 1040 44'/%3E%3Cpath d='M-40 57 C130 22 235 104 405 61 S680 20 845 69 S970 94 1040 56'/%3E%3Cpath d='M-40 69 C130 34 235 116 405 73 S680 32 845 81 S970 106 1040 68'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='126' viewBox='0 0 1000 126'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1' opacity='.36'%3E%3Cpath d='M-40 67 C145 111 250 18 420 59 S690 112 850 48 S980 29 1040 72'/%3E%3Cpath d='M-40 79 C145 123 250 30 420 71 S690 124 850 60 S980 41 1040 84'/%3E%3Cpath d='M-40 91 C145 135 250 42 420 83 S690 136 850 72 S980 53 1040 96'/%3E%3Cpath d='M-40 103 C145 147 250 54 420 95 S690 148 850 84 S980 65 1040 108'/%3E%3C/g%3E%3C/svg%3E")!important;
  }
  body.br-cover-open #brFinalCover.br-final-cover{display:block!important}

  /* Cabecera compacta, con logo completo y línea divisoria visible. */
  #brFinalCover .br-cover-header{
    position:relative!important;min-height:151px!important;padding:18px 14px 15px!important;
    background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(82,49,120,.12)!important;
    box-shadow:none!important;overflow:hidden!important;
  }
  #brFinalCover .br-cover-mini{margin:0 0 6px!important;gap:14px!important}
  #brFinalCover .br-cover-headrow{grid-template-columns:minmax(0,1fr) 137px 47px!important;gap:8px!important}
  #brFinalCover .br-cover-logo{width:min(210px,100%)!important;max-width:210px!important}
  #brFinalCover .br-cover-device{height:50px!important;border-radius:17px!important}
  #brFinalCover .br-cover-avatar{width:47px!important;height:47px!important}
  #brFinalCover .br-cover-sync{right:13px!important;bottom:8px!important;width:29px!important;height:29px!important;min-width:29px!important}

  /* Contenido: carátula aproximadamente 11% más compacta. */
  #brFinalCover .br-cover-body{padding:21px 14px 16px!important;background:transparent!important}
  #brFinalCover .br-cover-gridhead{margin:0 3px 12px!important}
  #brFinalCover .br-cover-gridhead h1{font-size:25px!important;line-height:1.04!important}
  #brFinalCover .br-cover-gridhead small{font-size:10.5px!important}
  #brFinalCover .br-cover-gridhead>span{padding:8px 10px!important;border-radius:15px!important}
  #brFinalCover .br-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
  #brFinalCover .br-cover-grid button{
    min-height:81px!important;padding:10px 7px!important;border-radius:18px!important;gap:7px!important;
    background:rgba(255,255,255,.985)!important;border:1px solid rgba(82,49,120,.085)!important;
    box-shadow:0 6px 17px rgba(46,27,67,.07)!important;
  }
  #brFinalCover .br-cover-grid button:first-child{box-shadow:inset 3px 0 0 var(--br20-yellow),0 6px 17px rgba(46,27,67,.07)!important}
  #brFinalCover .br-cover-grid button svg{width:28px!important;height:28px!important;stroke-width:1.6!important}
  #brFinalCover .br-cover-grid strong{font-size:12.5px!important}

  #brFinalCover .br-cover-info{min-height:76px!important;margin-top:11px!important;border-radius:18px!important;box-shadow:0 6px 17px rgba(46,27,67,.065)!important}
  #brFinalCover .br-cover-info+ .br-cover-info{margin-top:9px!important}

  /* Barra fija: geometría única, centrada, sin desplazamiento lateral. */
  #brFinalCover .br-cover-nav{
    position:fixed!important;left:12px!important;right:12px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;
    width:auto!important;height:62px!important;margin:0!important;padding:4px 6px!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 76px minmax(0,1fr) minmax(0,1fr)!important;
    border-radius:21px!important;transform:none!important;z-index:2147483640!important;
    background:rgba(255,255,255,.99)!important;box-shadow:0 10px 25px rgba(46,27,67,.14)!important;
  }
  #brFinalCover .br-cover-nav>button:not(.br-cover-mic){height:53px!important;min-width:0!important;padding:3px 2px!important}
  #brFinalCover .br-cover-nav .br-cover-mic,
  #brFinalCover .br-cover-nav .br-cover-mic.recording{
    position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;
    width:70px!important;min-width:70px!important;max-width:70px!important;height:70px!important;min-height:70px!important;
    margin:-14px auto 0!important;border-radius:50%!important;border:5px solid #fff!important;
  }
  #brFinalCover .br-cover-nav .br-cover-mic.recording{border-radius:50%!important;background:#D13D50!important}

  /* Oculta cualquier barra móvil heredada que pudiera asomarse bajo la portada. */
  body.br-cover-open .mobile-bottom-nav,
  body.br-cover-open .mobile-nav,
  body.br-cover-open #mobileNav,
  body.br-cover-open .universal-mobile-dock,
  body.br-cover-open .crisis-fab{visibility:hidden!important;pointer-events:none!important}
}

/* iPad y PC: ondas cruzan toda la pantalla, sin dominar el contenido. */
@media (min-width:931px){
  .app{
    background-position:center 65px,center 50%,center calc(100% - 10px)!important;
    background-size:100% 235px,100% 270px,100% 235px!important;
  }
}


/* ===== SOURCE: rc-final21-approved-exact.css ===== */
/* RC Final 21 — portada aprobada exacta: compacta, blanca y sin duplicaciones. */
:root{--br21-purple:#523178;--br21-deep:#2E1B43;--br21-yellow:#F9B52C;--br21-lilac:#AD9DBF;--br21-bg:#FCFBFD}

@media (max-width:930px){
  html,body{overflow-x:hidden!important;background:var(--br21-bg)!important}
  body.br-cover-open{overflow:hidden!important}
  body.br-cover-open>.app,
  body.br-cover-open>nav.mobile-nav,
  body.br-cover-open>.mobile-more-sheet,
  body.br-cover-open>.crisis-fab{display:none!important}

  #brFinalCover.br-final-cover{
    display:none!important;position:fixed!important;inset:0!important;z-index:2147483000!important;
    overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;
    padding:0 0 calc(82px + env(safe-area-inset-bottom))!important;
    background-color:var(--br21-bg)!important;background-attachment:local!important;background-repeat:no-repeat!important;
    background-position:center 285px,center 60%,center calc(100% - 66px)!important;
    background-size:100% 118px,100% 94px,100% 118px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='118' viewBox='0 0 1200 118'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.15' opacity='.44'%3E%3Cpath d='M-50 34 C160 -8 260 97 455 49 S770 0 955 58 S1120 93 1250 42'/%3E%3Cpath d='M-50 46 C160 4 260 109 455 61 S770 12 955 70 S1120 105 1250 54'/%3E%3Cpath d='M-50 58 C160 16 260 121 455 73 S770 24 955 82 S1120 117 1250 66'/%3E%3Cpath d='M-50 70 C160 28 260 133 455 85 S770 36 955 94 S1120 129 1250 78'/%3E%3Cpath d='M-50 82 C160 40 260 145 455 97 S770 48 955 106 S1120 141 1250 90'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='94' viewBox='0 0 1200 94'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='.9' opacity='.18'%3E%3Cpath d='M-50 36 C170 6 275 83 470 44 S780 5 965 51 S1120 76 1250 38'/%3E%3Cpath d='M-50 48 C170 18 275 95 470 56 S780 17 965 63 S1120 88 1250 50'/%3E%3Cpath d='M-50 60 C170 30 275 107 470 68 S780 29 965 75 S1120 100 1250 62'/%3E%3C/g%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='118' viewBox='0 0 1200 118'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.05' opacity='.38'%3E%3Cpath d='M-50 61 C170 112 280 11 470 57 S790 116 970 45 S1130 25 1250 68'/%3E%3Cpath d='M-50 73 C170 124 280 23 470 69 S790 128 970 57 S1130 37 1250 80'/%3E%3Cpath d='M-50 85 C170 136 280 35 470 81 S790 140 970 69 S1130 49 1250 92'/%3E%3Cpath d='M-50 97 C170 148 280 47 470 93 S790 152 970 81 S1130 61 1250 104'/%3E%3C/g%3E%3C/svg%3E")!important;
  }
  body.br-cover-open #brFinalCover.br-final-cover{display:block!important}

  #brFinalCover .br-cover-header{min-height:188px!important;padding:18px 16px 20px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid rgba(82,49,120,.22)!important;overflow:visible!important}
  #brFinalCover .br-cover-mini{margin:0 0 10px!important;gap:18px!important;color:var(--br21-purple)!important}
  #brFinalCover .br-cover-mini svg{width:25px!important;height:25px!important;stroke-width:1.75!important}
  #brFinalCover .br-cover-headrow{grid-template-columns:minmax(0,1fr) 142px 48px!important;gap:8px!important;align-items:center!important}
  #brFinalCover .br-cover-logo{width:min(220px,100%)!important;max-width:220px!important}
  #brFinalCover .br-cover-device{height:51px!important;border:1px solid rgba(82,49,120,.16)!important;background:rgba(255,255,255,.88)!important;border-radius:18px!important;padding:4px!important}
  #brFinalCover .br-cover-device button{border-radius:14px!important}
  #brFinalCover .br-cover-device button.active{background:var(--br21-yellow)!important;box-shadow:none!important}
  #brFinalCover .br-cover-device svg{width:25px!important;height:25px!important;stroke-width:1.65!important}
  #brFinalCover .br-cover-avatar{width:48px!important;height:48px!important;font-size:18px!important;background:var(--br21-purple)!important}
  #brFinalCover .br-cover-curve{display:none!important}
  #brFinalCover .br-cover-sync{right:13px!important;bottom:-18px!important;width:34px!important;height:34px!important;min-width:34px!important;padding:0!important;border-radius:50%!important;color:var(--br21-purple)!important;background:#fff!important;box-shadow:0 5px 14px rgba(46,27,67,.09)!important}
  #brFinalCover .br-cover-sync span{display:none!important}
  #brFinalCover .br-cover-sync svg{width:18px!important;height:18px!important}

  #brFinalCover .br-cover-body{padding:96px 16px 18px!important;background:transparent!important}
  #brFinalCover .br-cover-gridbox{padding:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  #brFinalCover .br-cover-gridhead{margin:0 4px 18px!important;align-items:center!important}
  #brFinalCover .br-cover-gridhead small{font-size:10px!important;letter-spacing:.17em!important;color:var(--br21-purple)!important}
  #brFinalCover .br-cover-gridhead h1{font-size:25px!important;line-height:1.05!important;margin:5px 0 0!important;color:var(--br21-deep)!important}
  #brFinalCover .br-cover-gridhead>span{padding:8px 11px!important;border:1px solid rgba(82,49,120,.15)!important;background:rgba(255,255,255,.78)!important;color:var(--br21-purple)!important;border-radius:16px!important;font-size:11px!important}

  #brFinalCover .br-cover-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
  #brFinalCover .br-cover-grid button{
    position:relative!important;min-width:0!important;min-height:112px!important;padding:12px 8px 10px!important;border-radius:17px!important;
    display:grid!important;grid-template-columns:1fr 12px!important;grid-template-rows:34px 1fr!important;column-gap:4px!important;row-gap:7px!important;
    align-items:start!important;justify-items:start!important;text-align:left!important;color:var(--br21-deep)!important;
    background:rgba(255,255,255,.96)!important;border:1px solid rgba(82,49,120,.09)!important;box-shadow:0 7px 18px rgba(46,27,67,.055)!important;
  }
  #brFinalCover .br-cover-grid button:first-child{box-shadow:inset 3px 0 0 var(--br21-yellow),0 7px 18px rgba(46,27,67,.055)!important}
  #brFinalCover .br-cover-grid button>svg:first-child{grid-column:1/3!important;width:27px!important;height:27px!important;stroke-width:1.45!important;color:var(--br21-purple)!important}
  #brFinalCover .br-cover-grid button>span{grid-column:1!important;min-width:0!important;display:flex!important;flex-direction:column!important;gap:5px!important}
  #brFinalCover .br-cover-grid button strong{font-size:10.2px!important;line-height:1.08!important;color:var(--br21-deep)!important;word-break:normal!important}
  #brFinalCover .br-cover-grid button small{font-size:8.2px!important;line-height:1.32!important;color:#5f5270!important;font-weight:550!important}
  #brFinalCover .br-cover-grid .br-card-arrow{grid-column:2!important;grid-row:2!important;width:13px!important;height:13px!important;align-self:center!important;justify-self:end!important;stroke-width:2!important}

  #brFinalCover .br-cover-info{min-height:68px!important;margin-top:10px!important;padding:10px 12px!important;grid-template-columns:48px minmax(0,1fr) auto!important;gap:9px!important;border-radius:17px!important;background:rgba(255,255,255,.97)!important;border:1px solid rgba(82,49,120,.09)!important;box-shadow:0 6px 16px rgba(46,27,67,.05)!important}
  #brFinalCover .br-cover-infoicon{width:43px!important;height:43px!important}
  #brFinalCover .br-cover-infoicon svg{width:25px!important;height:25px!important;stroke-width:1.55!important}
  #brFinalCover .br-cover-info small{font-size:9px!important}
  #brFinalCover .br-cover-info strong{font-size:15px!important}
  #brFinalCover .br-cover-info em{font-size:9px!important}
  #brFinalCover .br-cover-voice{grid-template-columns:48px minmax(0,1fr) 76px auto!important}
  #brFinalCover .br-cover-wave{height:40px!important;gap:2px!important}
  #brFinalCover .br-cover-wave i{width:2px!important}

  #brFinalCover .br-cover-nav{
    position:fixed!important;left:15px!important;right:15px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;
    width:auto!important;height:65px!important;margin:0!important;padding:4px 7px!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 74px minmax(0,1fr) minmax(0,1fr)!important;
    border-radius:22px!important;transform:none!important;z-index:2147483640!important;background:rgba(255,255,255,.985)!important;
    box-shadow:0 10px 24px rgba(46,27,67,.12)!important;
  }
  #brFinalCover .br-cover-nav>button:not(.br-cover-mic){height:55px!important;padding:3px 1px!important;color:var(--br21-purple)!important;font-size:10px!important}
  #brFinalCover .br-cover-nav>button:not(.br-cover-mic) svg{width:23px!important;height:23px!important;stroke-width:1.65!important}
  #brFinalCover .br-cover-nav>button.active{color:var(--br21-purple)!important}
  #brFinalCover .br-cover-nav>button.active:after{height:3px!important;width:31px!important;background:var(--br21-yellow)!important}
  #brFinalCover .br-cover-nav .br-cover-mic,
  #brFinalCover .br-cover-nav .br-cover-mic.recording{
    position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;
    width:72px!important;min-width:72px!important;height:72px!important;min-height:72px!important;margin:-15px auto 0!important;
    border-radius:50%!important;border:5px solid #fff!important;background:var(--br21-yellow)!important;color:var(--br21-purple)!important;
    box-shadow:0 8px 18px rgba(46,27,67,.17)!important;
  }
  #brFinalCover .br-cover-nav .br-cover-mic.recording{background:#D13D50!important;color:#fff!important;border-radius:50%!important}
  #brFinalCover .br-cover-mic>svg{width:31px!important;height:31px!important}
}

/* iPad y PC: misma identidad, tres bandas de ondas de ancho completo. */
@media (min-width:931px){
  .app{background-color:#FCFBFD!important;background-repeat:no-repeat!important;background-attachment:fixed!important;background-position:center 115px,center 52%,center calc(100% - 80px)!important;background-size:100% 180px,100% 150px,100% 180px!important}
}


/* ===== SOURCE: rc-final22-home-clean.css ===== */
/* RC Final 22 — Home único, blanco y compacto. Capa final anti-conflictos. */
:root{--br22-purple:#523178;--br22-deep:#2E1B43;--br22-mid:#8C4799;--br22-yellow:#F9B52C;--br22-lilac:#AD9DBF;--br22-bg:#FCFBFD}
@media (max-width:930px){
  body.br-cover-open{overflow:hidden!important;background:var(--br22-bg)!important}
  body.br-cover-open>.app,body.br-cover-open>nav.mobile-nav,body.br-cover-open>.mobile-more-sheet,body.br-cover-open>.crisis-fab{display:none!important}
  body.br-cover-open #brFinalCover{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
  #brFinalCover{position:fixed!important;inset:0!important;z-index:2147483000!important;overflow-y:auto!important;overflow-x:hidden!important;background-color:var(--br22-bg)!important;color:var(--br22-deep)!important;padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;background-repeat:no-repeat!important;background-position:center 270px,center 56%,center calc(100% - 70px)!important;background-size:100% 122px,100% 94px,100% 122px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='122' viewBox='0 0 1200 122'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.2' opacity='.50'%3E%3Cpath d='M-60 30 C150 -8 270 102 455 49 S770 0 955 60 S1125 95 1260 38'/%3E%3Cpath d='M-60 43 C150 5 270 115 455 62 S770 13 955 73 S1125 108 1260 51'/%3E%3Cpath d='M-60 56 C150 18 270 128 455 75 S770 26 955 86 S1125 121 1260 64'/%3E%3Cpath d='M-60 69 C150 31 270 141 455 88 S770 39 955 99 S1125 134 1260 77'/%3E%3Cpath d='M-60 82 C150 44 270 154 455 101 S770 52 955 112 S1125 147 1260 90'/%3E%3C/g%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='94' viewBox='0 0 1200 94'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='.9' opacity='.22'%3E%3Cpath d='M-60 30 C170 2 285 86 475 42 S790 4 970 54 S1130 78 1260 34'/%3E%3Cpath d='M-60 44 C170 16 285 100 475 56 S790 18 970 68 S1130 92 1260 48'/%3E%3Cpath d='M-60 58 C170 30 285 114 475 70 S790 32 970 82 S1130 106 1260 62'/%3E%3C/g%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='122' viewBox='0 0 1200 122'%3E%3Cg fill='none' stroke='%23AD9DBF' stroke-width='1.15' opacity='.44'%3E%3Cpath d='M-60 57 C165 113 280 8 475 58 S795 117 975 43 S1135 22 1260 69'/%3E%3Cpath d='M-60 70 C165 126 280 21 475 71 S795 130 975 56 S1135 35 1260 82'/%3E%3Cpath d='M-60 83 C165 139 280 34 475 84 S795 143 975 69 S1135 48 1260 95'/%3E%3Cpath d='M-60 96 C165 152 280 47 475 97 S795 156 975 82 S1135 61 1260 108'/%3E%3C/g%3E%3C/svg%3E")!important}
  #brFinalCover .br-cover-header{min-height:176px!important;padding:18px 16px 18px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid rgba(82,49,120,.18)!important}
  #brFinalCover .br-cover-mini{display:flex!important;margin:0 0 8px!important;gap:18px!important;color:var(--br22-purple)!important}
  #brFinalCover .br-cover-headrow{display:grid!important;grid-template-columns:minmax(0,1fr) 142px 48px!important;gap:8px!important;align-items:center!important}
  #brFinalCover .br-cover-logo{display:block!important;width:min(210px,100%)!important;max-width:210px!important;height:auto!important}
  #brFinalCover .br-cover-device{height:50px!important;border:1px solid rgba(82,49,120,.15)!important;background:#fff!important;border-radius:18px!important;padding:4px!important}
  #brFinalCover .br-cover-device button.active{background:var(--br22-yellow)!important}
  #brFinalCover .br-cover-avatar{width:48px!important;height:48px!important;border-radius:50%!important;background:var(--br22-purple)!important;color:#fff!important}
  #brFinalCover .br-cover-curve{display:none!important}
  #brFinalCover .br-cover-sync{position:absolute!important;right:14px!important;bottom:-17px!important;width:34px!important;height:34px!important;min-width:34px!important;padding:0!important;border-radius:50%!important;background:#fff!important;color:var(--br22-purple)!important;box-shadow:0 5px 14px rgba(46,27,67,.1)!important}
  #brFinalCover .br-cover-sync span{display:none!important}
  #brFinalCover .br-cover-body{padding:88px 16px 18px!important;background:transparent!important}
  #brFinalCover .br-cover-gridbox{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  #brFinalCover .br-cover-gridhead{margin:0 4px 16px!important;color:var(--br22-deep)!important}
  #brFinalCover .br-cover-gridhead small{font-size:10px!important;letter-spacing:.17em!important;color:var(--br22-purple)!important}
  #brFinalCover .br-cover-gridhead h1{font-size:25px!important;line-height:1.06!important;margin:5px 0 0!important;color:var(--br22-deep)!important}
  #brFinalCover .br-cover-gridhead>span{padding:8px 11px!important;border:1px solid rgba(82,49,120,.15)!important;background:rgba(255,255,255,.85)!important;color:var(--br22-purple)!important;border-radius:16px!important;font-size:11px!important}
  #brFinalCover .br-cover-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;background:transparent!important}
  #brFinalCover .br-cover-grid button{min-width:0!important;min-height:106px!important;padding:10px 7px 9px!important;border-radius:16px!important;display:grid!important;grid-template-columns:1fr 12px!important;grid-template-rows:31px 1fr!important;gap:6px 3px!important;align-items:start!important;text-align:left!important;background:rgba(255,255,255,.97)!important;color:var(--br22-deep)!important;border:1px solid rgba(82,49,120,.09)!important;box-shadow:0 6px 16px rgba(46,27,67,.05)!important}
  #brFinalCover .br-cover-grid button:first-child{box-shadow:inset 3px 0 0 var(--br22-yellow),0 6px 16px rgba(46,27,67,.05)!important}
  #brFinalCover .br-cover-grid button>svg:first-child{grid-column:1/3!important;width:26px!important;height:26px!important;color:var(--br22-purple)!important;stroke-width:1.45!important}
  #brFinalCover .br-cover-grid button>span{grid-column:1!important;display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important}
  #brFinalCover .br-cover-grid button strong{font-size:10px!important;line-height:1.08!important;color:var(--br22-deep)!important}
  #brFinalCover .br-cover-grid button small{font-size:8px!important;line-height:1.28!important;color:#62556f!important;font-weight:550!important}
  #brFinalCover .br-cover-grid .br-card-arrow{grid-column:2!important;grid-row:2!important;width:12px!important;height:12px!important;align-self:center!important;justify-self:end!important}
  #brFinalCover .br-cover-info{min-height:66px!important;margin-top:10px!important;padding:9px 11px!important;border-radius:17px!important;background:rgba(255,255,255,.97)!important;border:1px solid rgba(82,49,120,.09)!important;box-shadow:0 6px 16px rgba(46,27,67,.05)!important}
  #brFinalCover .br-cover-nav{position:fixed!important;left:15px!important;right:15px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;height:65px!important;padding:4px 7px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 74px minmax(0,1fr) minmax(0,1fr)!important;border-radius:22px!important;background:rgba(255,255,255,.99)!important;box-shadow:0 10px 24px rgba(46,27,67,.12)!important;transform:none!important;z-index:2147483640!important}
  #brFinalCover .br-cover-nav .br-cover-mic,#brFinalCover .br-cover-nav .br-cover-mic.recording,#brFinalCover .br-cover-nav .br-cover-mic.is-recording{position:relative!important;inset:auto!important;transform:none!important;width:72px!important;min-width:72px!important;height:72px!important;min-height:72px!important;margin:-15px auto 0!important;border-radius:50%!important;border:5px solid #fff!important;background:var(--br22-yellow)!important;color:var(--br22-purple)!important;box-shadow:0 8px 18px rgba(46,27,67,.17)!important}
  #brFinalCover .br-cover-nav .br-cover-mic.recording,#brFinalCover .br-cover-nav .br-cover-mic.is-recording{background:#D13D50!important;color:#fff!important}
}
@media (min-width:931px){.app{background-color:var(--br22-bg)!important;background-repeat:no-repeat!important;background-attachment:fixed!important;background-position:center 115px,center 52%,center calc(100% - 80px)!important;background-size:100% 185px,100% 155px,100% 185px!important}}


/* ===== SOURCE: rc-final24-visible-dictation.css ===== */
/* RC FINAL 24 · Dictado visible real y orden estable */
@media (max-width:820px){
  .br-cover-transcript{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    bottom:calc(102px + env(safe-area-inset-bottom))!important;
    z-index:2147483646!important;
    display:none;
    background:rgba(255,255,255,.985)!important;
    border:1px solid rgba(82,49,120,.18)!important;
    border-radius:20px!important;
    box-shadow:0 18px 42px rgba(46,27,67,.22)!important;
    padding:13px!important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }
  .br-cover-transcript.is-visible{display:block!important;animation:brTranscriptIn .18s ease-out}
  .br-cover-transcript::after{
    content:"";position:absolute;left:50%;bottom:-8px;width:16px;height:16px;
    background:#fff;border-right:1px solid rgba(82,49,120,.14);border-bottom:1px solid rgba(82,49,120,.14);
    transform:translateX(-50%) rotate(45deg)
  }
  .br-cover-transcript-head{display:flex;align-items:center;gap:9px;margin-bottom:8px}
  .br-cover-transcript-dot{width:9px;height:9px;border-radius:50%;background:#d13f4b;box-shadow:0 0 0 5px rgba(209,63,75,.10)}
  .br-cover-transcript-title{font:700 13px/1.2 Montserrat,Arial,sans-serif;color:#523178}
  .br-cover-transcript-destination{margin-left:auto;font:700 10px/1.2 Montserrat,Arial,sans-serif;color:#8c4799;background:#f5f0f8;border-radius:999px;padding:6px 8px}
  .br-cover-transcript-text{min-height:62px;max-height:120px;overflow:auto;padding:10px 11px;border:1px solid rgba(173,157,191,.4);border-radius:13px;background:#fbf9fc;color:#2e1b43;font:600 15px/1.42 Montserrat,Arial,sans-serif;white-space:pre-wrap}
  .br-cover-transcript-text.is-empty{color:#8f8798;font-weight:500}
  .br-cover-transcript-actions{display:flex;gap:8px;margin-top:9px}
  .br-cover-transcript-actions button{height:39px;border-radius:11px;border:1px solid rgba(82,49,120,.18);font:700 12px Montserrat,Arial,sans-serif;padding:0 13px}
  .br-cover-transcript-use{flex:1;background:#523178;color:#fff}
  .br-cover-transcript-cancel{background:#fff;color:#523178}

  #brFinalCover .br-cover-body{padding-top:42px!important}
  #brFinalCover .br-cover-header{min-height:150px!important}
  #brFinalCover .br-cover-location{margin-bottom:90px!important}
  #brFinalCover .br-cover-nav{z-index:2147483640!important}

  @keyframes brTranscriptIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
}


/* ===== SOURCE: rc-final26-waves-live-dictation.css ===== */
/* RC FINAL 26 · Ondas aprobadas + dictado visible sin superposición */
:root{--br26-purple:#523178;--br26-mid:#8C4799;--br26-lilac:#AD9DBF;--br26-yellow:#F9B52C;--br26-deep:#2E1B43}

@media (max-width:930px){
  #brFinalCover.br-final-cover{
    background:#fcfbfd!important;
    background-image:none!important;
    overflow-x:hidden!important;
  }
  /* Ondas reales, suaves y continuas; no líneas rectas. */
  #brFinalCover.br-final-cover::before,
  #brFinalCover.br-final-cover::after{
    content:""!important;
    position:absolute!important;
    left:-8%!important;
    width:116%!important;
    height:92px!important;
    pointer-events:none!important;
    z-index:0!important;
    opacity:.48!important;
    background-repeat:no-repeat!important;
    background-size:100% 100%!important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%23523178' stroke-opacity='.25' stroke-width='1.35'%3E%3Cpath d='M0 54 C180 2 340 110 530 58 S850 5 1200 56'/%3E%3Cpath d='M0 64 C180 12 340 120 530 68 S850 15 1200 66'/%3E%3Cpath d='M0 74 C180 22 340 130 530 78 S850 25 1200 76'/%3E%3Cpath d='M0 84 C180 32 340 140 530 88 S850 35 1200 86'/%3E%3C/g%3E%3C/svg%3E")!important;
  }
  #brFinalCover.br-final-cover::before{top:178px!important}
  #brFinalCover.br-final-cover::after{bottom:174px!important;transform:scaleX(-1)!important}

  #brFinalCover .br-cover-header,
  #brFinalCover .br-cover-body,
  #brFinalCover .br-cover-nav{position:relative!important;z-index:2!important}
  #brFinalCover .br-cover-header{min-height:148px!important;background:rgba(255,255,255,.97)!important}
  #brFinalCover .br-cover-body{
    padding-top:68px!important;
    padding-bottom:calc(248px + env(safe-area-inset-bottom))!important;
  }
  #brFinalCover .br-cover-location{margin-bottom:0!important}
  #brFinalCover .br-cover-nav{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    z-index:2147483640!important;
    background:rgba(255,255,255,.985)!important;
  }

  /* Panel visible justo sobre el dock, sin tapar tarjetas. */
  .br-cover-transcript{
    left:16px!important;right:16px!important;
    bottom:calc(126px + env(safe-area-inset-bottom))!important;
    border-radius:22px!important;padding:14px!important;
  }
  .br-cover-transcript.is-visible{display:block!important}
  .br-cover-transcript-head{flex-wrap:wrap!important}
  .br-cover-transcript-timer{margin-left:auto;font:800 12px/1 Montserrat,Arial,sans-serif;color:var(--br26-deep);font-variant-numeric:tabular-nums}
  .br-cover-transcript-destination{margin-left:0!important}
  .br-cover-transcript-text{min-height:76px!important;max-height:150px!important;font-size:16px!important}
  .br-cover-transcript-status{display:flex;align-items:center;gap:8px;margin-top:8px;color:#776d80;font:600 11px/1.3 Montserrat,Arial,sans-serif}
  .br-cover-transcript-wave{display:flex;align-items:center;gap:3px;height:18px}
  .br-cover-transcript-wave i{display:block;width:3px;height:7px;border-radius:4px;background:var(--br26-mid);animation:br26Wave .72s ease-in-out infinite alternate}
  .br-cover-transcript-wave i:nth-child(2){animation-delay:.12s}.br-cover-transcript-wave i:nth-child(3){animation-delay:.24s}.br-cover-transcript-wave i:nth-child(4){animation-delay:.36s}.br-cover-transcript-wave i:nth-child(5){animation-delay:.48s}
  .br-cover-transcript:not(.is-recording) .br-cover-transcript-wave i{animation:none;height:4px;opacity:.45}
  @keyframes br26Wave{to{height:17px}}
}

@media (min-width:931px){
  .app{background-image:none!important;position:relative!important}
  .app::before,.app::after{content:"";position:fixed;left:0;width:100%;height:110px;pointer-events:none;z-index:0;opacity:.35;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%23523178' stroke-opacity='.22' stroke-width='1.4'%3E%3Cpath d='M0 52 C210 0 360 112 560 58 S920 0 1200 60'/%3E%3Cpath d='M0 64 C210 12 360 124 560 70 S920 12 1200 72'/%3E%3Cpath d='M0 76 C210 24 360 136 560 82 S920 24 1200 84'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat}
  .app::before{top:92px}.app::after{bottom:50px;transform:scaleX(-1)}
}


/* ===== SOURCE: rc-final27-fixed-quick-cards.css ===== */
/* RC FINAL 27 · Voz + IA y Casa Matriz ancladas sobre la barra, sin superposición */
:root{
  --br27-nav-bottom:calc(12px + env(safe-area-inset-bottom));
  --br27-nav-height:65px;
  --br27-card-height:76px;
  --br27-gap:9px;
  --br27-side:16px;
}

@media (max-width:930px){
  /* Reserva real para las dos tarjetas + dock. El contenido nunca pasa por debajo. */
  #brFinalCover .br-cover-body{
    padding-bottom:calc(272px + env(safe-area-inset-bottom))!important;
  }

  /* Dock siempre al borde inferior, independiente del scroll. */
  #brFinalCover .br-cover-nav{
    position:fixed!important;
    left:var(--br27-side)!important;
    right:var(--br27-side)!important;
    bottom:var(--br27-nav-bottom)!important;
    z-index:2147483640!important;
    transform:none!important;
  }

  /* Casa Matriz inmediatamente arriba del dock. */
  #brFinalCover .br-cover-voice + .br-cover-info{
    position:fixed!important;
    left:var(--br27-side)!important;
    right:var(--br27-side)!important;
    bottom:calc(var(--br27-nav-bottom) + var(--br27-nav-height) + 12px)!important;
    min-height:var(--br27-card-height)!important;
    height:auto!important;
    margin:0!important;
    z-index:2147483600!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 7px 20px rgba(46,27,67,.08)!important;
  }

  /* Voz + IA sobre Casa Matriz, siempre en el mismo bloque visual. */
  #brFinalCover .br-cover-voice{
    position:fixed!important;
    left:var(--br27-side)!important;
    right:var(--br27-side)!important;
    bottom:calc(var(--br27-nav-bottom) + var(--br27-nav-height) + 12px + var(--br27-card-height) + var(--br27-gap))!important;
    min-height:var(--br27-card-height)!important;
    height:auto!important;
    margin:0!important;
    z-index:2147483601!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 7px 20px rgba(46,27,67,.08)!important;
  }

  /* El popup queda por encima de las tarjetas y del dock, sin moverlos. */
  .br-cover-transcript{
    bottom:calc(var(--br27-nav-bottom) + var(--br27-nav-height) + 14px)!important;
    z-index:2147483645!important;
  }

  /* Mientras se dicta, las tarjetas quedan ocultas detrás del popup para evitar ruido visual. */
  #brFinalCover:has(.br-cover-transcript.is-visible) .br-cover-voice,
  #brFinalCover:has(.br-cover-transcript.is-visible) .br-cover-voice + .br-cover-info{
    opacity:0!important;
    pointer-events:none!important;
  }
}

/* Fallback para navegadores sin :has(): JS añade esta clase al abrir/cerrar el dictado. */
@media (max-width:930px){
  #brFinalCover.br27-dictating .br-cover-voice,
  #brFinalCover.br27-dictating .br-cover-voice + .br-cover-info{
    opacity:0!important;
    pointer-events:none!important;
  }
}


/* ===== SOURCE: rc-final28-layout-map.css ===== */
/* RC FINAL 28 · orden móvil estable + reportes con mapa */
:root{
  --br28-side:16px;
  --br28-nav-bottom:calc(10px + env(safe-area-inset-bottom));
  --br28-nav-height:68px;
}

@media (max-width:930px){
  /* Las tarjetas vuelven al flujo normal: Centro → Voz + IA → Casa Matriz. */
  #brFinalCover .br-cover-body{
    display:block!important;
    padding-bottom:calc(var(--br28-nav-height) + 42px + env(safe-area-inset-bottom))!important;
    min-height:auto!important;
  }

  #brFinalCover .br-cover-voice,
  #brFinalCover .br-cover-voice + .br-cover-info{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:2!important;
    opacity:1!important;
    pointer-events:auto!important;
    min-height:74px!important;
    height:auto!important;
    margin:12px 0 0!important;
    transform:none!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 8px 24px rgba(46,27,67,.08)!important;
  }

  /* Navegación siempre pegada abajo y nunca encima de las tarjetas al final del scroll. */
  #brFinalCover .br-cover-nav{
    position:fixed!important;
    left:var(--br28-side)!important;
    right:var(--br28-side)!important;
    bottom:var(--br28-nav-bottom)!important;
    z-index:2147483640!important;
    transform:none!important;
  }

  /* El popup nace sobre la barra sin mover el layout. */
  .br-cover-transcript{
    position:fixed!important;
    left:var(--br28-side)!important;
    right:var(--br28-side)!important;
    bottom:calc(var(--br28-nav-bottom) + var(--br28-nav-height) + 14px)!important;
    z-index:2147483645!important;
    max-height:min(54vh,520px)!important;
    overflow:auto!important;
  }

  /* Durante el dictado no ocultamos ni movemos las tarjetas: el popup las cubre temporalmente. */
  #brFinalCover.br27-dictating .br-cover-voice,
  #brFinalCover.br27-dictating .br-cover-voice + .br-cover-info,
  #brFinalCover:has(.br-cover-transcript.is-visible) .br-cover-voice,
  #brFinalCover:has(.br-cover-transcript.is-visible) .br-cover-voice + .br-cover-info{
    opacity:1!important;
    pointer-events:auto!important;
  }

  /* El formulario de Nuevo reporte reserva espacio para la barra móvil. */
  .view[data-view-panel="new"],
  #newView,
  #view-new{
    padding-bottom:calc(110px + env(safe-area-inset-bottom))!important;
  }

  /* Mapa claramente visible dentro del flujo de generación del reporte. */
  #incidentMapCard.geo-map-card,
  .incident-geo-map{
    border:1px solid rgba(82,49,120,.18)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 10px 28px rgba(46,27,67,.08)!important;
    overflow:hidden!important;
  }
  #incidentMapFrame{
    width:100%!important;
    min-height:260px!important;
    border:0!important;
    display:block!important;
  }
}


/* ===== SOURCE: rc-final30-redistributed-home.css ===== */
/* RC30 — Inicio redistribuido sin duplicar Voz + IA */
@media (max-width: 900px) {
  #brFinalCover .br-cover-body {
    padding-bottom: calc(124px + env(safe-area-inset-bottom)) !important;
  }

  #brFinalCover .br-cover-quick-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 16px 0 8px;
    position: relative;
    z-index: 3;
  }

  #brFinalCover .br-cover-quick-row .br-cover-info {
    width: 100%;
    min-height: 92px;
    margin: 0 !important;
  }

  #brFinalCover .br-cover-nav {
    position: fixed !important;
    left: 16px !important;
    right: 16px !important;
    bottom: calc(10px + env(safe-area-inset-bottom)) !important;
    z-index: 1200 !important;
  }

  #brFinalCover .br-cover-gridbox {
    margin-bottom: 0 !important;
  }
}

@media (min-width: 560px) and (max-width: 900px) {
  #brFinalCover .br-cover-quick-row {
    grid-template-columns: 1.2fr .8fr;
  }
}

@media (min-width: 901px) {
  #brFinalCover .br-cover-quick-row {
    display: grid;
    grid-template-columns: 1.35fr .85fr;
    gap: 16px;
    margin-top: 18px;
  }

  #brFinalCover .br-cover-quick-row .br-cover-info {
    margin: 0 !important;
    width: 100%;
  }
}

/* El micrófono central conserva toda la función de dictado. */
#brFinalCover .br-cover-voice { display: none !important; }


/* ===== SOURCE: rc-final31-unified-nav-no-overlap.css ===== */
/* RC31 · Navegación móvil única y contenido protegido de superposición */
@media (max-width: 930px) {
  :root {
    --br31-nav-bottom: calc(10px + env(safe-area-inset-bottom));
    --br31-nav-height: 76px;
    --br31-content-safe: calc(112px + env(safe-area-inset-bottom));
  }

  /* Una sola geometría visual para Inicio y todos los módulos. */
  .mobile-nav,
  #brFinalCover .br-cover-nav {
    position: fixed !important;
    left: 16px !important;
    right: 16px !important;
    bottom: var(--br31-nav-bottom) !important;
    width: auto !important;
    height: var(--br31-nav-height) !important;
    min-height: var(--br31-nav-height) !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr 88px 1fr 1fr !important;
    align-items: center !important;
    padding: 7px 10px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.985) !important;
    border: 1px solid rgba(82,49,120,.10) !important;
    box-shadow: 0 10px 28px rgba(46,27,67,.16) !important;
    z-index: 2147483600 !important;
    transform: none !important;
  }

  body.br-cover-open .mobile-nav { display: none !important; }
  body:not(.br-cover-open) #brFinalCover .br-cover-nav { display: none !important; }

  .mobile-nav > .mobile-nav-item,
  #brFinalCover .br-cover-nav > button:not(.br-cover-mic) {
    height: 60px !important;
    min-width: 0 !important;
    padding: 4px 2px !important;
    border: 0 !important;
    border-radius: 17px !important;
    background: transparent !important;
    color: #523178 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    font-size: 11px !important;
    font-weight: 750 !important;
  }

  .mobile-nav > .mobile-nav-item.active,
  #brFinalCover .br-cover-nav > button.active:not(.br-cover-mic) {
    background: #F4EFF7 !important;
    color: #2E1B43 !important;
  }

  .mobile-nav > .mobile-nav-item.active::after,
  #brFinalCover .br-cover-nav > button.active:not(.br-cover-mic)::after {
    content: "" !important;
    display: block !important;
    width: 34px !important;
    height: 3px !important;
    margin-top: 1px !important;
    border-radius: 99px !important;
    background: #F9B52C !important;
    position: static !important;
  }

  .mobile-nav .mobile-nav-item svg,
  #brFinalCover .br-cover-nav > button:not(.br-cover-mic) svg {
    width: 25px !important;
    height: 25px !important;
    stroke-width: 1.9 !important;
  }

  .mobile-nav .mobile-nav-item span,
  #brFinalCover .br-cover-nav > button:not(.br-cover-mic) span {
    display: block !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  /* Micrófono idéntico en Inicio y en accidente/reportes. */
  .mobile-nav .mobile-nav-mic,
  #brFinalCover .br-cover-nav .br-cover-mic {
    width: 86px !important;
    min-width: 86px !important;
    max-width: 86px !important;
    height: 86px !important;
    min-height: 86px !important;
    margin: -18px auto 0 !important;
    border-radius: 50% !important;
    border: 7px solid #fff !important;
    background: #F9B52C !important;
    color: #523178 !important;
    box-shadow: 0 8px 22px rgba(46,27,67,.20) !important;
    display: grid !important;
    place-items: center !important;
  }

  .mobile-nav .mobile-nav-mic svg,
  #brFinalCover .br-cover-nav .br-cover-mic > svg {
    width: 34px !important;
    height: 34px !important;
    stroke-width: 2 !important;
  }

  .mobile-nav .mobile-nav-mic.universal-recording,
  .mobile-nav .mobile-nav-mic.recording,
  #brFinalCover .br-cover-nav .br-cover-mic.recording,
  #brFinalCover .br-cover-nav .br-cover-mic.is-recording {
    background: #D63C52 !important;
    color: #fff !important;
  }

  /* Reserva real en todas las pantallas internas. */
  body:not(.br-cover-open) .main > main,
  body:not(.br-cover-open) .main main,
  body:not(.br-cover-open) .view {
    padding-bottom: var(--br31-content-safe) !important;
    scroll-padding-bottom: var(--br31-content-safe) !important;
  }

  /* En la portada, las tarjetas terminan antes del dock. */
  #brFinalCover .br-cover-body {
    padding-bottom: var(--br31-content-safe) !important;
  }

  #brFinalCover .br-cover-quick-row {
    margin-bottom: 104px !important;
  }

  /* Popup siempre sobre el dock y sin moverlo. */
  .br-cover-transcript,
  .mobile-transcript-panel,
  .voice-live-panel {
    bottom: calc(var(--br31-nav-bottom) + var(--br31-nav-height) + 14px) !important;
    z-index: 2147483640 !important;
  }
}

@media (max-width: 390px) {
  .mobile-nav,
  #brFinalCover .br-cover-nav {
    left: 8px !important;
    right: 8px !important;
    grid-template-columns: 1fr 1fr 78px 1fr 1fr !important;
  }
  .mobile-nav .mobile-nav-mic,
  #brFinalCover .br-cover-nav .br-cover-mic {
    width: 78px !important;
    min-width: 78px !important;
    height: 78px !important;
    min-height: 78px !important;
  }
}


/* ===== SOURCE: rc-final32-stable-shell.css ===== */
/* RC32 · Capa única estable: portada blanca, navegación sin superposición */
@media (max-width: 930px) {
  :root {
    --br32-nav-h: 82px;
    --br32-nav-gap: 10px;
    --br32-safe-bottom: env(safe-area-inset-bottom, 0px);
  }

  /* PORTADA: verdadero shell de tres filas. La barra ocupa su propia fila. */
  #brFinalCover.br-final-cover {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    overflow: hidden !important;
    background: #fbfafd !important;
    color: #2E1B43 !important;
  }

  #brFinalCover .br-cover-header {
    position: relative !important;
    z-index: 5 !important;
    background: rgba(255,255,255,.96) !important;
  }

  #brFinalCover .br-cover-body {
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 18px 16px 18px !important;
    scroll-padding-bottom: 18px !important;
  }

  /* Se impone definitivamente la portada blanca aprobada. */
  #brFinalCover .br-cover-gridbox {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  #brFinalCover .br-cover-gridhead,
  #brFinalCover .br-cover-gridhead h1,
  #brFinalCover .br-cover-gridhead small {
    color: #2E1B43 !important;
  }

  #brFinalCover .br-cover-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: 9px !important;
    background: transparent !important;
  }

  #brFinalCover .br-cover-grid button {
    min-width: 0 !important;
    min-height: 124px !important;
    padding: 12px 8px 10px !important;
    border-radius: 17px !important;
    background: rgba(255,255,255,.98) !important;
    color: #2E1B43 !important;
    border: 1px solid rgba(82,49,120,.10) !important;
    box-shadow: 0 7px 20px rgba(46,27,67,.055) !important;
  }

  #brFinalCover .br-cover-grid button:first-child {
    box-shadow: inset 4px 0 0 #F9B52C, 0 7px 20px rgba(46,27,67,.055) !important;
  }

  #brFinalCover .br-cover-grid button svg,
  #brFinalCover .br-cover-grid button strong { color: #523178 !important; }
  #brFinalCover .br-cover-grid button small { color: #665a70 !important; }

  /* Accesos inferiores en flujo normal, siempre antes de la barra. */
  #brFinalCover .br-cover-quick-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
  }

  #brFinalCover .br-cover-quick-row .br-cover-info {
    position: relative !important;
    min-height: 76px !important;
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(82,49,120,.10) !important;
    box-shadow: 0 7px 20px rgba(46,27,67,.05) !important;
  }

  /* Barra dentro del grid: deja de flotar y jamás tapa tarjetas. */
  #brFinalCover .br-cover-nav {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: calc(100% - 24px) !important;
    height: var(--br32-nav-h) !important;
    min-height: var(--br32-nav-h) !important;
    margin: 0 12px calc(8px + var(--br32-safe-bottom)) !important;
    align-self: end !important;
    z-index: 50 !important;
    transform: none !important;
  }

  /* Popup sale desde la barra, sin alterar el shell. */
  #brFinalCover .br-cover-transcript,
  #brFinalCover .mobile-transcript-panel,
  #brFinalCover .voice-live-panel {
    position: fixed !important;
    left: 16px !important;
    right: 16px !important;
    bottom: calc(var(--br32-nav-h) + 24px + var(--br32-safe-bottom)) !important;
    z-index: 2147483640 !important;
  }

  /* MÓDULOS INTERNOS: una barra única y reserva robusta. */
  body:not(.br-cover-open) .mobile-nav {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    bottom: calc(8px + var(--br32-safe-bottom)) !important;
    width: auto !important;
    z-index: 2147483600 !important;
  }

  body:not(.br-cover-open) .main > main,
  body:not(.br-cover-open) .main main,
  body:not(.br-cover-open) .view,
  body:not(.br-cover-open) .view.active {
    padding-bottom: calc(var(--br32-nav-h) + 86px + var(--br32-safe-bottom)) !important;
    scroll-padding-bottom: calc(var(--br32-nav-h) + 86px + var(--br32-safe-bottom)) !important;
  }

  /* Evita que tarjetas finales queden debajo del dock al llegar al final. */
  body:not(.br-cover-open) .view > *:last-child,
  body:not(.br-cover-open) main > *:last-child {
    margin-bottom: 34px !important;
  }
}

@media (max-width: 390px) {
  #brFinalCover .br-cover-body { padding-inline: 10px !important; }
  #brFinalCover .br-cover-grid { gap: 7px !important; }
  #brFinalCover .br-cover-grid button { min-height: 118px !important; padding-inline: 6px !important; }
  #brFinalCover .br-cover-nav { width: calc(100% - 16px) !important; margin-inline: 8px !important; }
}


/* ===== SOURCE: rc-final33-nav-restored.css ===== */
/* RC33 · Restauración definitiva de barra inferior y micrófono */
@media (max-width: 930px) {
  :root {
    --br33-nav-height: 78px;
    --br33-nav-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
    --br33-reserve: calc(132px + env(safe-area-inset-bottom, 0px));
  }

  /* La portada conserva scroll interno, pero la barra queda fuera del flujo. */
  #brFinalCover.br-final-cover {
    display: block !important;
    overflow: hidden !important;
  }

  #brFinalCover .br-cover-header {
    position: relative !important;
  }

  #brFinalCover .br-cover-body {
    position: absolute !important;
    inset: auto 0 0 0 !important;
    top: var(--br-cover-header-h, 150px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: var(--br33-reserve) !important;
    scroll-padding-bottom: var(--br33-reserve) !important;
  }

  /* Se fuerza la navegación de portada visible, fija y por encima de todo. */
  body.br-cover-open #brFinalCover .br-cover-nav,
  #brFinalCover .br-cover-nav {
    display: grid !important;
    position: fixed !important;
    left: 14px !important;
    right: 14px !important;
    bottom: var(--br33-nav-bottom) !important;
    width: auto !important;
    height: var(--br33-nav-height) !important;
    min-height: var(--br33-nav-height) !important;
    margin: 0 !important;
    grid-template-columns: 1fr 1fr 88px 1fr 1fr !important;
    align-items: center !important;
    padding: 7px 10px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.99) !important;
    border: 1px solid rgba(82,49,120,.11) !important;
    box-shadow: 0 12px 30px rgba(46,27,67,.18) !important;
    transform: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 2147483600 !important;
  }

  body:not(.br-cover-open) #brFinalCover .br-cover-nav {
    display: none !important;
  }

  /* Barra interna: misma geometría y siempre visible en los módulos. */
  body:not(.br-cover-open) .mobile-nav {
    display: grid !important;
    position: fixed !important;
    left: 14px !important;
    right: 14px !important;
    bottom: var(--br33-nav-bottom) !important;
    width: auto !important;
    height: var(--br33-nav-height) !important;
    min-height: var(--br33-nav-height) !important;
    margin: 0 !important;
    grid-template-columns: 1fr 1fr 88px 1fr 1fr !important;
    z-index: 2147483600 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.br-cover-open .mobile-nav { display: none !important; }

  /* Reserva real: ninguna tarjeta o formulario termina debajo del dock. */
  #brFinalCover .br-cover-quick-row {
    margin-bottom: 18px !important;
  }

  body:not(.br-cover-open) .main > main,
  body:not(.br-cover-open) .main main,
  body:not(.br-cover-open) .view,
  body:not(.br-cover-open) .view.active {
    padding-bottom: var(--br33-reserve) !important;
    scroll-padding-bottom: var(--br33-reserve) !important;
  }

  /* Micrófono amarillo restaurado y consistente. */
  #brFinalCover .br-cover-nav .br-cover-mic,
  .mobile-nav .mobile-nav-mic {
    width: 86px !important;
    min-width: 86px !important;
    height: 86px !important;
    min-height: 86px !important;
    margin: -19px auto 0 !important;
    border-radius: 50% !important;
    border: 7px solid #fff !important;
    background: #F9B52C !important;
    color: #523178 !important;
    box-shadow: 0 9px 24px rgba(46,27,67,.22) !important;
    display: grid !important;
    place-items: center !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  #brFinalCover .br-cover-nav .br-cover-mic.recording,
  #brFinalCover .br-cover-nav .br-cover-mic.is-recording,
  .mobile-nav .mobile-nav-mic.recording,
  .mobile-nav .mobile-nav-mic.universal-recording {
    background: #D63C52 !important;
    color: #fff !important;
  }

  /* Popup de dictado siempre encima del dock restaurado. */
  #brFinalCover .br-cover-transcript,
  #brFinalCover .mobile-transcript-panel,
  #brFinalCover .voice-live-panel,
  .br-cover-transcript,
  .mobile-transcript-panel,
  .voice-live-panel {
    bottom: calc(var(--br33-nav-height) + 24px + env(safe-area-inset-bottom, 0px)) !important;
    z-index: 2147483640 !important;
  }
}

@media (max-width: 390px) {
  body.br-cover-open #brFinalCover .br-cover-nav,
  body:not(.br-cover-open) .mobile-nav {
    left: 8px !important;
    right: 8px !important;
    grid-template-columns: 1fr 1fr 78px 1fr 1fr !important;
  }

  #brFinalCover .br-cover-nav .br-cover-mic,
  .mobile-nav .mobile-nav-mic {
    width: 78px !important;
    min-width: 78px !important;
    height: 78px !important;
    min-height: 78px !important;
  }
}


/* ===== SOURCE: rc-final37-clean-home.css ===== */
/* RC37: Inicio limpio y navegación estable */
#brFinalCover .br-cover-quick-row,
#brFinalCover .br-cover-location-card,
#brFinalCover .br-cover-last-report{display:none!important;}

@media (max-width:820px){
  #brFinalCover .br-cover-body{padding-bottom:calc(150px + env(safe-area-inset-bottom))!important;}
  #brFinalCover .br-cover-gridbox{margin-bottom:20px!important;}
}


/* ===== SOURCE: rc-final38-navigation-stable.css ===== */
/* RC38 · navegación táctil estable */
.br-final-cover .br-cover-curve,
.br-final-cover .br-cover-gridbox::before,
.br-final-cover .br-cover-gridbox::after,
.br-final-cover::before,
.br-final-cover::after { pointer-events:none !important; }

.br-final-cover .br-cover-grid,
.br-final-cover .br-cover-grid button,
.br-cover-nav,
.br-cover-nav button,
.mobile-nav,
.mobile-nav button,
.mobile-more-sheet,
.mobile-more-panel,
.mobile-more-grid,
.mobile-more-grid button { pointer-events:auto !important; }

.br-final-cover .br-cover-grid,
.br-cover-nav,
.mobile-nav { position:relative; z-index:50 !important; }
.br-final-cover .br-cover-grid button { position:relative; z-index:51 !important; touch-action:manipulation; }
.br-cover-nav button,.mobile-nav button,.mobile-more-grid button { touch-action:manipulation; }

.mobile-more-sheet { z-index:9999 !important; }
.mobile-more-sheet[aria-hidden="true"] { pointer-events:none !important; visibility:hidden; }
.mobile-more-sheet.open { pointer-events:auto !important; visibility:visible; }

/* Evita capas antiguas invisibles sobre la portada. */
body.br-cover-open #brFinalCover { display:block !important; pointer-events:auto !important; }
body:not(.br-cover-open) #brFinalCover { pointer-events:none !important; }

/* Reserva inferior real sin cubrir los últimos controles de cada módulo. */
@media (max-width:820px){
  .view { padding-bottom:calc(150px + env(safe-area-inset-bottom)) !important; }
  .mobile-nav,.br-cover-nav { bottom:calc(8px + env(safe-area-inset-bottom)) !important; }
}

