/* =========================================================
   Cursapp · Apoderado Home V40
   Sprint 1: normaliza SOLO capa visual del Home Apoderado.
   Mantiene JS, Supabase, pagos, informes, mercado y lógica existente.
   Cargar SIEMPRE al final de apoderado.html.
   ========================================================= */

:root{
  --apo40-bg:#f6f8fc;
  --apo40-card:#ffffff;
  --apo40-text:#101828;
  --apo40-muted:#64748b;
  --apo40-line:#e7edf6;
  --apo40-primary:#6d28d9;
  --apo40-primary-soft:#f1eafe;
  --apo40-green:#15803d;
  --apo40-green-soft:#e8f8df;
  --apo40-yellow:#fff7d6;
  --apo40-orange:#f97316;
  --apo40-blue:#2563eb;
  --apo40-shadow:0 10px 28px rgba(15,23,42,.07);
}

html,
body.apoderado-ui-v24{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  background:var(--apo40-bg)!important;
  color:var(--apo40-text)!important;
  -webkit-font-smoothing:antialiased!important;
}

body.apoderado-ui-v24 *,
body.apoderado-ui-v24 *::before,
body.apoderado-ui-v24 *::after{
  box-sizing:border-box!important;
}

/* =============================
   HEADER APODERADO PREMIUM V40
   ============================= */
body.apoderado-ui-v24 header{
  position:sticky!important;
  top:0!important;
  z-index:40000!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid rgba(226,232,240,.88)!important;
  box-shadow:0 6px 22px rgba(15,23,42,.04)!important;
  backdrop-filter:blur(16px)!important;
}

body.apoderado-ui-v24 header .topbar{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 44px 44px!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  max-width:430px!important;
  min-height:86px!important;
  max-height:96px!important;
  margin:0 auto!important;
  padding:12px 16px!important;
  overflow:visible!important;
}

body.apoderado-ui-v24 header .brand{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}

body.apoderado-ui-v24 header .brand .logo{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  border-radius:17px!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#6d28d9,#4f46e5)!important;
  box-shadow:0 12px 24px rgba(109,40,217,.20)!important;
  font-size:22px!important;
  font-weight:900!important;
  line-height:1!important;
}

body.apoderado-ui-v24 #whoRoleTitle{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 3px!important;
  color:var(--apo40-text)!important;
  font-size:18px!important;
  line-height:1.05!important;
  font-weight:850!important;
  letter-spacing:-.03em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.apoderado-ui-v24 #whoCourseLine{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:none!important;
  color:var(--apo40-muted)!important;
  font-size:12px!important;
  line-height:1.18!important;
  font-weight:720!important;
  overflow:hidden!important;
  white-space:normal!important;
  text-overflow:unset!important;
}

body.apoderado-ui-v24 #whoCourseLine .apoHeaderRole,
body.apoderado-ui-v24 #whoCourseLine .apoHeaderCourse{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:12px!important;
  line-height:1.18!important;
  font-weight:720!important;
  color:var(--apo40-muted)!important;
}

body.apoderado-ui-v24 #whoCourseLine .apoHeaderCourse b{
  color:var(--apo40-primary)!important;
  font-weight:850!important;
}

body.apoderado-ui-v24 #avisosBellHost,
body.apoderado-ui-v24 #menuBtn{
  position:static!important;
  inset:auto!important;
  justify-self:end!important;
  align-self:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  max-width:44px!important;
  max-height:44px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

body.apoderado-ui-v24 #avisosBellHost{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* En mobile dejamos solo la última acción de avisos/notificaciones para evitar montajes */
body.apoderado-ui-v24 #avisosBellHost > *:not(:last-child){
  display:none!important;
}

body.apoderado-ui-v24 #avisosBellHost button,
body.apoderado-ui-v24 #avisosBellHost a,
body.apoderado-ui-v24 #avisosBellHost .btn,
body.apoderado-ui-v24 #menuBtn{
  position:static!important;
  inset:auto!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  max-width:44px!important;
  max-height:44px!important;
  border-radius:16px!important;
  border:1px solid rgba(226,232,240,.96)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  color:var(--apo40-primary)!important;
  background:#fff!important;
  box-shadow:0 10px 22px rgba(15,23,42,.07)!important;
  font-size:20px!important;
  line-height:1!important;
  transform:none!important;
  z-index:auto!important;
}

body.apoderado-ui-v24 #menuDropdown{
  position:fixed!important;
  top:92px!important;
  right:14px!important;
  left:auto!important;
  width:min(320px,calc(100vw - 28px))!important;
  max-height:min(68vh,520px)!important;
  overflow:auto!important;
  z-index:70000!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(226,232,240,.96)!important;
  border-radius:22px!important;
  padding:10px!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
  backdrop-filter:blur(14px)!important;
}

body.apoderado-ui-v24 #menuDropdown::before{
  content:'Menú';
  display:block!important;
  margin:4px 8px 8px!important;
  color:var(--apo40-muted)!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}

body.apoderado-ui-v24 #menuDropdown button,
body.apoderado-ui-v24 #menuDropdown a,
body.apoderado-ui-v24 #menuDropdown .btn{
  min-height:42px!important;
  width:100%!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.1!important;
  text-align:left!important;
  margin:4px 0!important;
  background:#fff!important;
  border:1px solid #edf2f7!important;
  box-shadow:none!important;
}

/* =============================
   SHELL / CONTENEDOR
   ============================= */
body.apoderado-ui-v24 .container{
  width:100%!important;
  max-width:430px!important;
  margin:0 auto!important;
  padding:14px 0 142px!important;
  overflow-x:hidden!important;
}

body.apoderado-ui-v24 .apoV2Page.apoderado-home,
body.apoderado-ui-v24 .apoderado-home{
  width:100%!important;
  max-width:100%!important;
  display:block!important;
  padding-bottom:142px!important;
  overflow-x:hidden!important;
}

body.apoderado-ui-v24 .apoV2IconSvg,
body.apoderado-ui-v24 .apoderado-home svg,
body.apoderado-ui-v24 .apoderado-home .lucide,
body.apoderado-ui-v24 .apoderado-home [data-lucide]{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
  flex:0 0 22px!important;
  display:block!important;
  transform:none!important;
}

/* =============================
   PRÓXIMA CUOTA
   ============================= */
body.apoderado-ui-v24 .apoV2DueCarousel.next-payment-card{
  width:calc(100% - 32px)!important;
  max-width:398px!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:14px auto 16px!important;
  padding:0!important;
  border:1px solid rgba(124,58,237,.14)!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,#fff 0%,#fbf8ff 100%)!important;
  box-shadow:var(--apo40-shadow)!important;
  overflow:hidden!important;
}

body.apoderado-ui-v24 .apoV2DueTrack{
  display:flex!important;
  width:100%!important;
  height:auto!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
}
body.apoderado-ui-v24 .apoV2DueTrack::-webkit-scrollbar{display:none!important;}

body.apoderado-ui-v24 .apoV2DueSlide{
  position:relative!important;
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  height:auto!important;
  min-height:0!important;
  scroll-snap-align:start!important;
  display:grid!important;
  grid-template-columns:68px minmax(0,1fr)!important;
  grid-template-areas:
    "date main"
    ". actions"!important;
  gap:12px 14px!important;
  align-items:start!important;
  padding:16px!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

body.apoderado-ui-v24 .apoV2PayIllustration{
  display:none!important;
}

body.apoderado-ui-v24 .apoV2DateBox{
  grid-area:date!important;
  width:68px!important;
  height:78px!important;
  min-width:68px!important;
  min-height:78px!important;
  max-width:68px!important;
  max-height:78px!important;
  border-radius:18px!important;
  display:grid!important;
  grid-template-rows:24px 1fr 22px!important;
  align-items:center!important;
  justify-items:center!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(226,232,240,.9)!important;
  box-shadow:0 10px 22px rgba(15,23,42,.07)!important;
}

body.apoderado-ui-v24 .apoV2DateBox b{
  width:100%!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#ef4444,#f43f5e)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}

body.apoderado-ui-v24 .apoV2DateBox span{
  color:var(--apo40-text)!important;
  font-size:27px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:-.04em!important;
}

body.apoderado-ui-v24 .apoV2DateBox small{
  max-width:100%!important;
  padding:0 4px!important;
  color:var(--apo40-muted)!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.apoderado-ui-v24 .apoV2DueMain{
  grid-area:main!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}

body.apoderado-ui-v24 .apoV2Kicker{
  margin:0 0 4px!important;
  color:var(--apo40-primary)!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
}

body.apoderado-ui-v24 .apoV2DueMain h1{
  margin:0 0 5px!important;
  max-width:100%!important;
  color:var(--apo40-text)!important;
  font-size:23px!important;
  line-height:1.06!important;
  font-weight:880!important;
  letter-spacing:-.04em!important;
  white-space:normal!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}

body.apoderado-ui-v24 .apoV2DueMeta{
  margin:0 0 8px!important;
  max-width:100%!important;
  color:var(--apo40-muted)!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:700!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

body.apoderado-ui-v24 .apoV2DueMeta b{
  color:var(--apo40-muted)!important;
  font-weight:850!important;
}

body.apoderado-ui-v24 .apoV2DueMain strong{
  display:block!important;
  margin:0!important;
  max-width:100%!important;
  color:var(--apo40-text)!important;
  font-size:31px!important;
  line-height:.98!important;
  font-weight:900!important;
  letter-spacing:-.055em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:unset!important;
}

body.apoderado-ui-v24 .apoV2DueActions{
  grid-area:actions!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}

body.apoderado-ui-v24 .apoV2Pay,
body.apoderado-ui-v24 .apoV2Detail{
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  border-radius:15px!important;
  padding:0 10px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.apoderado-ui-v24 .apoV2Pay{
  color:#fff!important;
  border:0!important;
  background:linear-gradient(135deg,#6d28d9,#5b21d8)!important;
  box-shadow:0 12px 24px rgba(109,40,217,.18)!important;
}

body.apoderado-ui-v24 .apoV2Detail{
  color:var(--apo40-primary)!important;
  border:1.5px solid rgba(109,40,217,.28)!important;
  background:#fff!important;
}

body.apoderado-ui-v24 .apoV2DueDots{
  display:flex!important;
  gap:7px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:0 16px 12px 98px!important;
}
body.apoderado-ui-v24 .apoV2DueDots span{
  width:8px!important;
  height:8px!important;
  border-radius:999px!important;
  background:#d1d5db!important;
}
body.apoderado-ui-v24 .apoV2DueDots span.active{
  background:var(--apo40-primary)!important;
}

/* =============================
   RESUMEN RÁPIDO
   ============================= */
body.apoderado-ui-v24 .apoV2SummaryCard.quick-summary-card{
  width:calc(100% - 32px)!important;
  max-width:398px!important;
  margin:0 auto 16px!important;
  padding:14px 12px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(226,232,240,.95)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.055)!important;
  display:block!important;
  overflow:hidden!important;
}

body.apoderado-ui-v24 .apoV2SummaryHead{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 10px!important;
}
body.apoderado-ui-v24 .apoV2SummaryHead h2{
  margin:0!important;
  color:var(--apo40-text)!important;
  font-size:17px!important;
  line-height:1.1!important;
  font-weight:880!important;
  letter-spacing:-.03em!important;
}
body.apoderado-ui-v24 .apoV2SummaryHead button{
  border:0!important;
  background:transparent!important;
  color:var(--apo40-primary)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:850!important;
  padding:0!important;
}

body.apoderado-ui-v24 .apoV2Summary{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.apoderado-ui-v24 .apoV2Summary article,
body.apoderado-ui-v24 .quick-summary-item{
  position:relative!important;
  min-width:0!important;
  min-height:0!important;
  padding:4px 5px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  text-align:center!important;
  overflow:visible!important;
}
body.apoderado-ui-v24 .apoV2Summary article:not(:last-child)::after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  top:8px!important;
  bottom:8px!important;
  width:1px!important;
  background:#e2e8f0!important;
}

body.apoderado-ui-v24 .apoV2Summary span,
body.apoderado-ui-v24 .quick-summary-item .icon-circle{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  max-width:34px!important;
  max-height:34px!important;
  margin:0 auto 6px!important;
  border-radius:13px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV2Summary span svg,
body.apoderado-ui-v24 .quick-summary-item .icon-circle svg{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  min-height:17px!important;
}
body.apoderado-ui-v24 .apoV2Summary .is-pending span{background:#f1eafe!important;color:#6d28d9!important;}
body.apoderado-ui-v24 .apoV2Summary .is-paid span{background:#dcfce7!important;color:#16a34a!important;}
body.apoderado-ui-v24 .apoV2Summary .is-next span{background:#ffedd5!important;color:#f97316!important;}
body.apoderado-ui-v24 .apoV2Summary .is-total span{background:#dbeafe!important;color:#2563eb!important;}

body.apoderado-ui-v24 .apoV2Summary small,
body.apoderado-ui-v24 .quick-summary-title{
  display:block!important;
  color:var(--apo40-muted)!important;
  font-size:10px!important;
  line-height:1.08!important;
  font-weight:800!important;
  white-space:normal!important;
  overflow:visible!important;
}

body.apoderado-ui-v24 .apoV2Summary b,
body.apoderado-ui-v24 .quick-summary-value{
  display:block!important;
  margin:5px 0 0!important;
  max-width:100%!important;
  color:var(--apo40-text)!important;
  font-size:14px!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:-.045em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:unset!important;
}

body.apoderado-ui-v24 .apoV2Summary em,
body.apoderado-ui-v24 .quick-summary-meta{
  display:block!important;
  margin-top:4px!important;
  font-size:9.5px!important;
  line-height:1.05!important;
  font-weight:850!important;
  font-style:normal!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.apoderado-ui-v24 .apoV2Summary .is-pending em{color:#6d28d9!important;}
body.apoderado-ui-v24 .apoV2Summary .is-paid em{color:#16a34a!important;}
body.apoderado-ui-v24 .apoV2Summary .is-next em{color:#f97316!important;}
body.apoderado-ui-v24 .apoV2Summary .is-total em{color:#2563eb!important;}

/* =============================
   ACCESOS RÁPIDOS
   ============================= */
body.apoderado-ui-v24 .apoV2Section{
  width:100%!important;
  margin:0 0 16px!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV2Section h2,
body.apoderado-ui-v24 .apoV2SectionHead h2{
  margin:0 16px 10px!important;
  color:var(--apo40-text)!important;
  font-size:19px!important;
  line-height:1.1!important;
  font-weight:880!important;
  letter-spacing:-.035em!important;
}
body.apoderado-ui-v24 .apoV2QuickGrid.quick-access-grid{
  width:calc(100% - 32px)!important;
  max-width:398px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}

body.apoderado-ui-v24 .apoV2Quick.quick-access-card,
body.apoderado-ui-v24 .apoV2Quick.market-access-card{
  width:100%!important;
  min-height:70px!important;
  max-height:none!important;
  padding:11px 13px!important;
  border:0!important;
  border-bottom:1px solid rgba(226,232,240,.82)!important;
  border-radius:0!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) auto 18px!important;
  gap:10px!important;
  align-items:center!important;
  background:#fff!important;
  color:var(--apo40-text)!important;
  text-align:left!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV2Quick.quick-access-card:last-child{border-bottom:0!important;}
body.apoderado-ui-v24 .apoV2Quick.market-access-card,
body.apoderado-ui-v24 .apoV2Quick.market{
  background:linear-gradient(135deg,#fff7d6 0%,#e8f8df 100%)!important;
  color:#166534!important;
}

body.apoderado-ui-v24 .apoV2QuickIcon,
body.apoderado-ui-v24 .apoderado-icon-bubble{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  max-width:40px!important;
  max-height:40px!important;
  border-radius:15px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:var(--apo40-primary)!important;
  background:#f1eafe!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV2Quick.market .apoV2QuickIcon,
body.apoderado-ui-v24 .apoV2Quick.market .market-icon{
  color:#16a34a!important;
  background:#dcfce7!important;
}
body.apoderado-ui-v24 .apoV2QuickIcon svg{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
}
body.apoderado-ui-v24 .apoV2Quick > span:nth-child(2){min-width:0!important;display:block!important;}
body.apoderado-ui-v24 .apoV2Quick b,
body.apoderado-ui-v24 .market-access-card-title{
  display:block!important;
  color:var(--apo40-text)!important;
  font-size:15px!important;
  line-height:1.1!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.apoderado-ui-v24 .apoV2Quick.market b,
body.apoderado-ui-v24 .apoV2Quick.market .market-access-card-title{color:#166534!important;}
body.apoderado-ui-v24 .apoV2Quick small,
body.apoderado-ui-v24 .market-access-card-subtitle{
  display:block!important;
  margin-top:4px!important;
  color:var(--apo40-muted)!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:650!important;
  white-space:normal!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
body.apoderado-ui-v24 .apoV2Quick.market small,
body.apoderado-ui-v24 .apoV2Quick.market .market-access-card-subtitle{color:#166534!important;opacity:.88!important;}
body.apoderado-ui-v24 .apoV2QuickBadge{
  justify-self:end!important;
  display:inline-flex!important;
  align-items:center!important;
  height:24px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  color:#16a34a!important;
  background:#dcfce7!important;
  border:1px solid rgba(22,163,74,.18)!important;
  font-size:11px!important;
  font-weight:850!important;
  font-style:normal!important;
  white-space:nowrap!important;
}
body.apoderado-ui-v24 .apoV2Quick i{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#475569!important;
  font-style:normal!important;
}
body.apoderado-ui-v24 .apoV2Quick i svg{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;}
body.apoderado-ui-v24 .apoV2Quick.market i{color:#16a34a!important;}

/* =============================
   AVISOS + BANNER
   ============================= */
body.apoderado-ui-v24 .apoV2SectionHead{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
}
body.apoderado-ui-v24 .apoV2SectionHead button{
  margin:0 16px 10px 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--apo40-primary)!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:850!important;
}
body.apoderado-ui-v24 .apoV2NoticeSection{margin:0 0 14px!important;}
body.apoderado-ui-v24 .apoV2RealAvisos{
  width:calc(100% - 32px)!important;
  max-width:398px!important;
  margin:0 auto!important;
}
body.apoderado-ui-v24 .apoV2Notice,
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section{
  width:100%!important;
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
  overflow:hidden!important;
  margin:0!important;
}
body.apoderado-ui-v24 .apoV2Notice{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  min-height:76px!important;
  padding:12px!important;
}
body.apoderado-ui-v24 .apoV2Notice span,
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary i{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  border-radius:15px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:var(--apo40-primary)!important;
  background:#f1eafe!important;
  font-size:0!important;
  font-style:normal!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV2Notice span svg{width:21px!important;height:21px!important;}
body.apoderado-ui-v24 .apoV2Notice h3,
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary b{
  margin:0 0 3px!important;
  font-size:15px!important;
  line-height:1.12!important;
  color:var(--apo40-text)!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.apoderado-ui-v24 .apoV2Notice p,
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary em{
  margin:0!important;
  font-size:12px!important;
  line-height:1.22!important;
  color:var(--apo40-muted)!important;
  font-style:normal!important;
  font-weight:700!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV2Notice button{
  border:0!important;
  background:transparent!important;
  color:var(--apo40-primary)!important;
  font-weight:850!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary{
  min-height:76px!important;
  padding:12px!important;
  list-style:none!important;
}
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary::-webkit-details-marker{display:none!important;}
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary span{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  min-width:0!important;
}
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section summary u{display:none!important;}
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6SectionBody{padding:0 12px 12px!important;}
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6ListItem{
  border:1px solid #eef2f7!important;
  border-radius:16px!important;
  padding:10px!important;
  margin-top:8px!important;
  background:#fff!important;
}

body.apoderado-ui-v24 [data-monetization-slot="apoderado"]{
  width:calc(100% - 32px)!important;
  max-width:398px!important;
  margin:4px auto 86px!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 [data-monetization-slot="apoderado"] .cursappRetailSlot,
body.apoderado-ui-v24 .cursappRetailSlot{
  margin:0!important;
  min-height:0!important;
  padding-top:0!important;
}
body.apoderado-ui-v24 [data-monetization-slot="apoderado"] .cursappRetailCard,
body.apoderado-ui-v24 .cursappRetailCard{
  min-height:96px!important;
  max-height:128px!important;
  overflow:hidden!important;
}

/* =============================
   BOTTOM NAV V40
   ============================= */
body.apoderado-ui-v24 .bottomNav.apoderado-bottom-nav,
body.apoderado-ui-v24 .bottomNav{
  position:fixed!important;
  left:16px!important;
  right:16px!important;
  bottom:calc(env(safe-area-inset-bottom) + 10px)!important;
  width:auto!important;
  max-width:398px!important;
  height:72px!important;
  min-height:72px!important;
  max-height:72px!important;
  margin:0 auto!important;
  padding:6px!important;
  border-radius:26px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:3px!important;
  align-items:center!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(226,232,240,.92)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.14)!important;
  backdrop-filter:blur(16px)!important;
  z-index:60000!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .bottomNav .navItem,
body.apoderado-ui-v24 .bottomNav .marketBottomTab,
body.apoderado-ui-v24 .bottomNav .apoderado-bottom-nav-item{
  min-width:0!important;
  width:100%!important;
  height:60px!important;
  border:0!important;
  border-radius:20px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  color:#64748b!important;
  background:transparent!important;
  text-decoration:none!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:800!important;
  padding:4px 2px!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .bottomNav .navItem.active{
  color:var(--apo40-primary)!important;
  background:#f1eafe!important;
}
body.apoderado-ui-v24 .bottomNav .marketBottomTab:hover,
body.apoderado-ui-v24 .bottomNav .marketBottomTab:focus-visible,
body.apoderado-ui-v24 .bottomNav .marketBottomTab.active{
  color:#15803d!important;
  background:#e8f8df!important;
}
body.apoderado-ui-v24 .bottomNav .nav-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.apoderado-ui-v24 .bottomNav svg,
body.apoderado-ui-v24 .bottomNav i,
body.apoderado-ui-v24 .bottomNav .caSvgIcon{
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
  min-height:21px!important;
  max-width:21px!important;
  max-height:21px!important;
  flex:0 0 21px!important;
}
body.apoderado-ui-v24 .bottomNav .nav-label,
body.apoderado-ui-v24 .bottomNav .navItem span,
body.apoderado-ui-v24 .bottomNav .marketBottomTab span:last-child{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  color:inherit!important;
  font-size:10px!important;
  line-height:1.05!important;
  font-weight:800!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
}

@media(max-width:374px){
  body.apoderado-ui-v24 header .topbar{
    grid-template-columns:minmax(0,1fr) 40px 40px!important;
    gap:6px!important;
    padding:10px 12px!important;
  }
  body.apoderado-ui-v24 header .brand{grid-template-columns:44px minmax(0,1fr)!important;gap:8px!important;}
  body.apoderado-ui-v24 header .brand .logo{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;}
  body.apoderado-ui-v24 #whoRoleTitle{font-size:16px!important;}
  body.apoderado-ui-v24 #whoCourseLine,
  body.apoderado-ui-v24 #whoCourseLine .apoHeaderRole,
  body.apoderado-ui-v24 #whoCourseLine .apoHeaderCourse{font-size:11px!important;}
  body.apoderado-ui-v24 #avisosBellHost,
  body.apoderado-ui-v24 #menuBtn,
  body.apoderado-ui-v24 #avisosBellHost button,
  body.apoderado-ui-v24 #avisosBellHost a{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;}
  body.apoderado-ui-v24 .apoV2DueSlide{grid-template-columns:60px minmax(0,1fr)!important;gap:10px 12px!important;padding:14px!important;}
  body.apoderado-ui-v24 .apoV2DateBox{width:60px!important;min-width:60px!important;height:72px!important;}
  body.apoderado-ui-v24 .apoV2DueMain h1{font-size:21px!important;}
  body.apoderado-ui-v24 .apoV2DueMain strong{font-size:28px!important;}
  body.apoderado-ui-v24 .apoV2Summary b{font-size:12.5px!important;}
  body.apoderado-ui-v24 .apoV2QuickBadge{display:none!important;}
}

@media(min-width:760px){
  body.apoderado-ui-v24 header .topbar,
  body.apoderado-ui-v24 .container,
  body.apoderado-ui-v24 .bottomNav{max-width:430px!important;}
}

/* =========================================================
   Sprint 1.5 · Limpieza de herencias Home Apoderado
   ========================================================= */
body.apoderado-ui-v24 .bottomNav .navItem > .caSvgIcon,
body.apoderado-ui-v24 .bottomNav .marketBottomTab > .caSvgIcon{
  display:none!important;
}
body.apoderado-ui-v24 .bottomNav .nav-icon + .nav-icon,
body.apoderado-ui-v24 .bottomNav svg + svg{
  display:none!important;
}
body.apoderado-ui-v24 .bottomNav .nav-icon{
  display:flex!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:0!important;
}
body.apoderado-ui-v24 .bottomNav .nav-label,
body.apoderado-ui-v24 .bottomNav .marketBottomTab .nav-label{
  display:block!important;
  width:100%!important;
  font-size:10px!important;
  line-height:1.05!important;
  font-weight:800!important;
  text-align:center!important;
  color:inherit!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.apoderado-ui-v24 .bottomNav .navItem span:not(.nav-icon):not(.nav-label),
body.apoderado-ui-v24 .bottomNav .marketBottomTab span:not(.nav-icon):not(.nav-label){
  display:none!important;
}

/* Menú compacto de menu.js, sin drawer antiguo */
body.apoderado-ui-v24 #menuDropdown{
  padding:12px!important;
}
body.apoderado-ui-v24 #menuDropdown::before{
  content:"Menú"!important;
}
body.apoderado-ui-v24 #menuDropdown .btn,
body.apoderado-ui-v24 #menuDropdown button,
body.apoderado-ui-v24 #menuDropdown a{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:44px!important;
  padding:11px 12px!important;
  margin:0 0 6px!important;
  border-radius:15px!important;
  border:1px solid rgba(226,232,240,.92)!important;
  background:#fff!important;
  color:#101828!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:850!important;
  text-align:left!important;
  box-shadow:none!important;
}
body.apoderado-ui-v24 #menuDropdown div[style*="height:1px"]{
  margin:8px 0!important;
}

/* Avisos V40 compactos */
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6Section,
body.apoderado-ui-v24 .apoV2RealAvisos details,
body.apoderado-ui-v24 .apoV2RealAvisos summary,
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6SectionBody,
body.apoderado-ui-v24 .apoV2RealAvisos .cpV6ListItem{
  all:unset!important;
}
body.apoderado-ui-v24 .apoV40NoticeCard{
  width:100%!important;
  min-height:96px!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:14px!important;
  border-radius:24px!important;
  border:1px solid rgba(226,232,240,.96)!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.06)!important;
}
body.apoderado-ui-v24 .apoV40NoticeIcon{
  width:54px!important;
  height:54px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f1eafe!important;
  font-size:25px!important;
}
body.apoderado-ui-v24 .apoV40NoticeCopy{
  min-width:0!important;
}
body.apoderado-ui-v24 .apoV40NoticeCopy h3{
  margin:0!important;
  color:#101828!important;
  font-size:17px!important;
  line-height:1.12!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.apoderado-ui-v24 .apoV40NoticeCopy p{
  margin:5px 0 0!important;
  color:#64748b!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:700!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
body.apoderado-ui-v24 .apoV40NoticeCopy small{
  display:block!important;
  margin-top:5px!important;
  color:#94a3b8!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:800!important;
}
body.apoderado-ui-v24 .apoV40NoticeCard button{
  min-width:48px!important;
  height:36px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  border:1px solid #d8c8fb!important;
  background:#faf5ff!important;
  color:#6d28d9!important;
  font-size:13px!important;
  font-weight:900!important;
}

/* Header: ocultar botones extra si alguna capa intenta inyectar más de una acción */
body.apoderado-ui-v24 #avisosBellHost > *:nth-child(n+2){
  display:none!important;
}
body.apoderado-ui-v24 #avisosBellHost button span{
  transform:none!important;
}

/* =========================================================
   Cursapp Apoderado Home V42 - Pulido Premium final
   Capa visual. No modifica lógica de negocio.
   ========================================================= */
body.apoderado-home-v40{
  --apo-bg:#f6f8fc;
  --apo-card:#ffffff;
  --apo-text:#101828;
  --apo-muted:#667085;
  --apo-line:#e7edf6;
  --apo-primary:#6d28d9;
  --apo-green:#16a34a;
  --apo-orange:#f97316;
  --apo-blue:#2563eb;
  background:var(--apo-bg)!important;
}
body.apoderado-home-v40 header .topbar{
  min-height:88px!important;
  padding:14px 18px!important;
  grid-template-columns:minmax(0,1fr) 52px 52px!important;
  gap:10px!important;
  border-bottom:1px solid rgba(226,232,240,.78)!important;
}
body.apoderado-home-v40 header .brand{
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:12px!important;
}
body.apoderado-home-v40 header .brand .logo{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  min-height:54px!important;
  border-radius:19px!important;
  font-size:24px!important;
  box-shadow:0 14px 28px rgba(109,40,217,.18)!important;
}
body.apoderado-home-v40 #whoRoleTitle{
  font-size:22px!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
}
body.apoderado-home-v40 #whoCourseLine,
body.apoderado-home-v40 #whoCourseLine .apoHeaderRole,
body.apoderado-home-v40 #whoCourseLine .apoHeaderCourse{
  font-size:13px!important;
  line-height:1.18!important;
  font-weight:750!important;
}
body.apoderado-home-v40 #whoCourseLine .apoHeaderRole{margin-top:2px!important;}
body.apoderado-home-v40 #avisosBellHost,
body.apoderado-home-v40 #menuBtn,
body.apoderado-home-v40 .apoV42BellBtn{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
  border-radius:18px!important;
  position:static!important;
  inset:auto!important;
}
body.apoderado-home-v40 #menuBtn,
body.apoderado-home-v40 .apoV42BellBtn{
  border:1px solid rgba(226,232,240,.95)!important;
  background:#fff!important;
  color:var(--apo-primary)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.07)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:20px!important;
  padding:0!important;
}
body.apoderado-home-v40 .apoV42BellBtn{position:relative!important;}
body.apoderado-home-v40 .apoV42BellDot{
  position:absolute!important;
  top:11px!important;
  right:12px!important;
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  background:#ef4444!important;
  border:2px solid #fff!important;
}
body.apoderado-home-v40 .container{
  padding-top:16px!important;
  padding-bottom:132px!important;
}
body.apoderado-home-v40 .apoV2Page.apoderado-home{
  gap:18px!important;
  padding-bottom:132px!important;
}

/* Próxima cuota: más compacta y equilibrada */
body.apoderado-home-v40 .apoV2DueCarousel.next-payment-card{
  margin:14px auto 18px!important;
  border-radius:26px!important;
  box-shadow:0 14px 34px rgba(15,23,42,.065)!important;
  background:linear-gradient(135deg,#fff 0%,#fbf8ff 68%,#fff 100%)!important;
}
body.apoderado-home-v40 .apoV2DueSlide{
  min-height:188px!important;
  padding:18px!important;
  grid-template-columns:68px minmax(0,1fr) 74px!important;
  grid-template-areas:"date main art" ". actions actions"!important;
  gap:12px 14px!important;
  align-items:center!important;
}
body.apoderado-home-v40 .apoV2DateBox{
  width:68px!important;
  height:78px!important;
  min-width:68px!important;
  border-radius:18px!important;
  box-shadow:0 10px 22px rgba(15,23,42,.07)!important;
}
body.apoderado-home-v40 .apoV2DateBox b{height:24px!important;font-size:12px!important;}
body.apoderado-home-v40 .apoV2DateBox span{font-size:29px!important;}
body.apoderado-home-v40 .apoV2DateBox small{font-size:10px!important;}
body.apoderado-home-v40 .apoV2Kicker{font-size:15px!important;margin-bottom:5px!important;}
body.apoderado-home-v40 .apoV2DueMain h1{
  font-size:24px!important;
  line-height:1.08!important;
  margin-bottom:5px!important;
}
body.apoderado-home-v40 .apoV2DueMeta{font-size:12.5px!important;line-height:1.22!important;margin-bottom:6px!important;}
body.apoderado-home-v40 .apoV2DueMain strong{
  font-size:32px!important;
  line-height:1!important;
  margin-top:6px!important;
  overflow:visible!important;
  text-overflow:unset!important;
}
body.apoderado-home-v40 .apoV2PayIllustration{
  width:74px!important;
  height:74px!important;
  opacity:.92!important;
}
body.apoderado-home-v40 .apoV2Paper{width:42px!important;height:58px!important;left:10px!important;top:2px!important;}
body.apoderado-home-v40 .apoV2Paper i{width:23px!important;height:4px!important;margin:9px auto!important;}
body.apoderado-home-v40 .apoV2CardMini{width:40px!important;height:26px!important;right:2px!important;top:33px!important;}
body.apoderado-home-v40 .apoV2Coin{width:28px!important;height:28px!important;font-size:14px!important;}
body.apoderado-home-v40 .apoV2CheckMini{width:28px!important;height:28px!important;}
body.apoderado-home-v40 .apoV2DueActions{gap:10px!important;}
body.apoderado-home-v40 .apoV2Pay,
body.apoderado-home-v40 .apoV2Detail{
  height:42px!important;
  min-height:42px!important;
  border-radius:15px!important;
  font-size:13.5px!important;
}
body.apoderado-home-v40 .apoV2DueDots{padding:0 18px 14px!important;}

/* Resumen rápido: dashboard, no tabla */
body.apoderado-home-v40 .apoV2SummaryCard.quick-summary-card{
  width:calc(100% - 32px)!important;
  margin:0 auto 18px!important;
  padding:18px 14px 16px!important;
  border-radius:26px!important;
  background:#fff!important;
  border:1px solid rgba(226,232,240,.96)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}
body.apoderado-home-v40 .apoV2SummaryHead{margin-bottom:12px!important;}
body.apoderado-home-v40 .apoV2SummaryHead h2{font-size:18px!important;letter-spacing:-.02em!important;}
body.apoderado-home-v40 .apoV2SummaryHead button{font-size:13px!important;}
body.apoderado-home-v40 .apoV2Summary{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.apoderado-home-v40 .apoV2Summary article,
body.apoderado-home-v40 .quick-summary-item{
  min-height:104px!important;
  padding:6px 8px!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  text-align:center!important;
}
body.apoderado-home-v40 .apoV2Summary article:not(:last-child):after{
  top:18px!important;
  bottom:18px!important;
  background:rgba(226,232,240,.72)!important;
}
body.apoderado-home-v40 .apoV2Summary span,
body.apoderado-home-v40 .quick-summary-item .icon-circle{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  margin:0 auto 9px!important;
  border-radius:16px!important;
}
body.apoderado-home-v40 .apoV2Summary span svg{width:21px!important;height:21px!important;}
body.apoderado-home-v40 .apoV2Summary small{font-size:11px!important;line-height:1.05!important;font-weight:850!important;}
body.apoderado-home-v40 .apoV2Summary b{
  font-size:18px!important;
  line-height:1.04!important;
  margin-top:7px!important;
  letter-spacing:-.04em!important;
  overflow:visible!important;
  text-overflow:unset!important;
}
body.apoderado-home-v40 .apoV2Summary em{font-size:10.5px!important;margin-top:6px!important;}

/* Accesos rápidos: mantener aprobado, solo uniformar */
body.apoderado-home-v40 .apoV2Section h2,
body.apoderado-home-v40 .apoV2SectionHead h2{
  font-size:20px!important;
  margin:0 16px 12px!important;
}
body.apoderado-home-v40 .apoV2QuickGrid.quick-access-grid{
  margin-bottom:18px!important;
  border-radius:24px!important;
}
body.apoderado-home-v40 .apoV2Quick.quick-access-card{
  min-height:78px!important;
  padding:13px 15px!important;
}
body.apoderado-home-v40 .apoV2Quick b{font-size:16px!important;}
body.apoderado-home-v40 .apoV2Quick small{font-size:12.5px!important;}

/* Avisos compactos */
body.apoderado-home-v40 .apoV2NoticeSection{margin-top:2px!important;margin-bottom:18px!important;}
body.apoderado-home-v40 .apoV2RealAvisos{width:calc(100% - 32px)!important;margin:0 auto!important;}
body.apoderado-home-v40 .apoV40NoticeCard{
  min-height:88px!important;
  grid-template-columns:50px minmax(0,1fr) 46px!important;
  padding:13px!important;
  border-radius:24px!important;
}
body.apoderado-home-v40 .apoV40NoticeIcon{
  width:50px!important;
  height:50px!important;
  border-radius:17px!important;
  font-size:23px!important;
}
body.apoderado-home-v40 .apoV40NoticeCopy h3{font-size:16px!important;}
body.apoderado-home-v40 .apoV40NoticeCopy p{font-size:12.5px!important;line-height:1.22!important;}
body.apoderado-home-v40 .apoV40NoticeCopy small{font-size:10.5px!important;}
body.apoderado-home-v40 .apoV40NoticeCard button{height:34px!important;min-width:44px!important;font-size:12.5px!important;padding:0 10px!important;}
body.apoderado-home-v40 [data-monetization-slot="apoderado"]{margin-top:2px!important;margin-bottom:92px!important;}

/* Menú Premium V42 */
body.apoderado-home-v40 #menuDropdown.apoV42Menu{
  position:fixed!important;
  top:96px!important;
  right:16px!important;
  left:auto!important;
  width:min(336px,calc(100vw - 32px))!important;
  max-height:min(70vh,560px)!important;
  overflow:auto!important;
  padding:12px!important;
  border-radius:26px!important;
  border:1px solid rgba(226,232,240,.96)!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 26px 80px rgba(15,23,42,.22)!important;
  backdrop-filter:blur(16px)!important;
  z-index:60000!important;
}
body.apoderado-home-v40 .apoV42MenuHeader{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  padding:8px 8px 12px!important;
  border-bottom:1px solid rgba(226,232,240,.9)!important;
  margin-bottom:10px!important;
}
body.apoderado-home-v40 .apoV42MenuAvatar{
  width:48px!important;height:48px!important;border-radius:17px!important;
  display:grid!important;place-items:center!important;
  background:linear-gradient(135deg,#6d28d9,#4f46e5)!important;color:#fff!important;font-weight:900!important;
}
body.apoderado-home-v40 .apoV42MenuHeader strong{display:block!important;font-size:15px!important;line-height:1.1!important;color:#101828!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
body.apoderado-home-v40 .apoV42MenuHeader span{display:block!important;margin-top:4px!important;font-size:11.5px!important;line-height:1.2!important;color:#667085!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
body.apoderado-home-v40 .apoV42MenuGroup{padding:6px 0!important;}
body.apoderado-home-v40 .apoV42MenuGroup small{display:block!important;margin:0 8px 7px!important;font-size:10.5px!important;line-height:1!important;color:#98a2b3!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
body.apoderado-home-v40 .apoV42MenuItem{
  width:100%!important;
  min-height:44px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  border:0!important;
  background:transparent!important;
  border-radius:16px!important;
  padding:7px 9px!important;
  text-align:left!important;
  color:#101828!important;
  box-shadow:none!important;
}
body.apoderado-home-v40 .apoV42MenuItem:hover,
body.apoderado-home-v40 .apoV42MenuItem:focus-visible{background:#f8fafc!important;}
body.apoderado-home-v40 .apoV42MenuItem.market{background:linear-gradient(135deg,#fff7d6,#ecfdf5)!important;color:#166534!important;}
body.apoderado-home-v40 .apoV42MenuItem.danger{color:#b42318!important;}
body.apoderado-home-v40 .apoV42MenuItem span{width:34px!important;height:34px!important;border-radius:13px!important;display:grid!important;place-items:center!important;background:#f2f4f7!important;font-size:16px!important;}
body.apoderado-home-v40 .apoV42MenuItem.market span{background:#dcfce7!important;}
body.apoderado-home-v40 .apoV42MenuItem b{font-size:14px!important;font-weight:850!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}

@media(max-width:380px){
  body.apoderado-home-v40 header .topbar{grid-template-columns:minmax(0,1fr) 46px 46px!important;padding:12px!important;}
  body.apoderado-home-v40 header .brand{grid-template-columns:50px minmax(0,1fr)!important;}
  body.apoderado-home-v40 header .brand .logo{width:50px!important;height:50px!important;min-width:50px!important;}
  body.apoderado-home-v40 #whoRoleTitle{font-size:20px!important;}
  body.apoderado-home-v40 #whoCourseLine,
  body.apoderado-home-v40 #whoCourseLine .apoHeaderRole,
  body.apoderado-home-v40 #whoCourseLine .apoHeaderCourse{font-size:12px!important;}
  body.apoderado-home-v40 #avisosBellHost,
  body.apoderado-home-v40 #menuBtn,
  body.apoderado-home-v40 .apoV42BellBtn{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;}
  body.apoderado-home-v40 .apoV2DueSlide{grid-template-columns:62px minmax(0,1fr)!important;grid-template-areas:"date main" ". actions"!important;}
  body.apoderado-home-v40 .apoV2PayIllustration{display:none!important;}
  body.apoderado-home-v40 .apoV2DueMain h1{font-size:22px!important;}
  body.apoderado-home-v40 .apoV2DueMain strong{font-size:29px!important;}
  body.apoderado-home-v40 .apoV2Summary b{font-size:16px!important;}
}

/* =====================================================
   Cursapp · Home Apoderado V43
   Pulido fino solicitado: tipografías más pequeñas,
   card compacta, KPIs seguros para montos largos y
   menor espacio bajo banner.
   ===================================================== */
body.apoderado-home-v40 header .topbar{
  min-height:78px!important;
  padding:10px 16px!important;
  grid-template-columns:minmax(0,1fr) 46px 46px!important;
  gap:8px!important;
}
body.apoderado-home-v40 header .brand{
  grid-template-columns:48px minmax(0,1fr)!important;
  gap:10px!important;
}
body.apoderado-home-v40 header .brand .logo{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  border-radius:17px!important;
  font-size:21px!important;
}
body.apoderado-home-v40 #whoRoleTitle{
  font-size:18px!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  max-width:100%!important;
}
body.apoderado-home-v40 #whoCourseLine,
body.apoderado-home-v40 #whoCourseLine .apoHeaderRole,
body.apoderado-home-v40 #whoCourseLine .apoHeaderCourse{
  font-size:12px!important;
  line-height:1.12!important;
  font-weight:740!important;
}
body.apoderado-home-v40 #whoCourseLine .apoHeaderRole{margin-top:1px!important;}
body.apoderado-home-v40 #avisosBellHost,
body.apoderado-home-v40 #menuBtn,
body.apoderado-home-v40 .apoV42BellBtn{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  max-width:46px!important;
  max-height:46px!important;
  border-radius:16px!important;
}
body.apoderado-home-v40 #menuBtn,
body.apoderado-home-v40 .apoV42BellBtn{font-size:18px!important;}

/* Próxima cuota: bajar título/monto/botones aprox. 30% */
body.apoderado-home-v40 .apoV2DueCarousel.next-payment-card{
  margin:12px auto 14px!important;
  border-radius:24px!important;
}
body.apoderado-home-v40 .apoV2DueSlide{
  min-height:154px!important;
  padding:14px!important;
  grid-template-columns:58px minmax(0,1fr) 56px!important;
  gap:8px 12px!important;
}
body.apoderado-home-v40 .apoV2DateBox{
  width:58px!important;
  height:67px!important;
  min-width:58px!important;
  border-radius:16px!important;
}
body.apoderado-home-v40 .apoV2DateBox b{height:20px!important;font-size:10.5px!important;}
body.apoderado-home-v40 .apoV2DateBox span{font-size:24px!important;line-height:1!important;}
body.apoderado-home-v40 .apoV2DateBox small{font-size:9px!important;line-height:1.05!important;}
body.apoderado-home-v40 .apoV2Kicker{font-size:12.5px!important;line-height:1.05!important;margin-bottom:3px!important;}
body.apoderado-home-v40 .apoV2DueMain h1{
  font-size:17px!important;
  line-height:1.08!important;
  margin-bottom:3px!important;
  -webkit-line-clamp:2!important;
}
body.apoderado-home-v40 .apoV2DueMeta{
  font-size:10.8px!important;
  line-height:1.15!important;
  margin-bottom:4px!important;
  -webkit-line-clamp:2!important;
}
body.apoderado-home-v40 .apoV2DueMain strong{
  font-size:22px!important;
  line-height:1!important;
  margin-top:4px!important;
  letter-spacing:-.04em!important;
}
body.apoderado-home-v40 .apoV2PayIllustration{
  width:56px!important;
  height:56px!important;
  transform:scale(.88)!important;
  opacity:.86!important;
}
body.apoderado-home-v40 .apoV2DueActions{gap:8px!important;margin-top:2px!important;}
body.apoderado-home-v40 .apoV2Pay,
body.apoderado-home-v40 .apoV2Detail{
  height:32px!important;
  min-height:32px!important;
  border-radius:12px!important;
  font-size:11px!important;
  padding:0 10px!important;
}
body.apoderado-home-v40 .apoV2DueDots{padding:0 14px 10px!important;gap:7px!important;}
body.apoderado-home-v40 .apoV2DueDots i{width:8px!important;height:8px!important;}

/* Resumen rápido: valores más chicos para 6+ dígitos */
body.apoderado-home-v40 .apoV2SummaryCard.quick-summary-card{
  margin:0 auto 14px!important;
  padding:14px 10px 12px!important;
  border-radius:24px!important;
}
body.apoderado-home-v40 .apoV2SummaryHead{margin-bottom:10px!important;}
body.apoderado-home-v40 .apoV2SummaryHead h2{font-size:16px!important;}
body.apoderado-home-v40 .apoV2SummaryHead button{font-size:11.5px!important;}
body.apoderado-home-v40 .apoV2Summary article,
body.apoderado-home-v40 .quick-summary-item{
  min-height:88px!important;
  padding:4px 5px!important;
}
body.apoderado-home-v40 .apoV2Summary span,
body.apoderado-home-v40 .quick-summary-item .icon-circle{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  border-radius:13px!important;
  margin:0 auto 7px!important;
}
body.apoderado-home-v40 .apoV2Summary span svg{width:17px!important;height:17px!important;}
body.apoderado-home-v40 .apoV2Summary small{
  font-size:9.8px!important;
  line-height:1.05!important;
  min-height:20px!important;
}
body.apoderado-home-v40 .apoV2Summary b{
  font-size:14.5px!important;
  line-height:1.02!important;
  margin-top:4px!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:unset!important;
  font-variant-numeric:tabular-nums!important;
}
body.apoderado-home-v40 .apoV2Summary em{
  font-size:9.5px!important;
  line-height:1!important;
  margin-top:4px!important;
  white-space:nowrap!important;
}
body.apoderado-home-v40 .apoV2Summary article:not(:last-child):after{
  top:14px!important;
  bottom:14px!important;
}

/* Compactar secciones posteriores y eliminar espacio muerto bajo banner */
body.apoderado-home-v40 .apoV2Section h2,
body.apoderado-home-v40 .apoV2SectionHead h2{
  font-size:18px!important;
  margin:0 16px 10px!important;
}
body.apoderado-home-v40 .apoV2QuickGrid.quick-access-grid{margin-bottom:14px!important;}
body.apoderado-home-v40 .apoV2Quick.quick-access-card{min-height:68px!important;padding:11px 14px!important;}
body.apoderado-home-v40 .apoV2Quick b{font-size:14.5px!important;}
body.apoderado-home-v40 .apoV2Quick small{font-size:11.5px!important;line-height:1.18!important;}
body.apoderado-home-v40 .apoV2NoticeSection{margin-bottom:12px!important;}
body.apoderado-home-v40 .apoV40NoticeCard{min-height:78px!important;padding:11px!important;}
body.apoderado-home-v40 [data-monetization-slot="apoderado"],
body.apoderado-home-v40 .monetization-banner,
body.apoderado-home-v40 .cursapp-monetization-banner{
  margin-top:10px!important;
  margin-bottom:22px!important;
}
body.apoderado-home-v40 .container,
body.apoderado-home-v40 .apoV2Page.apoderado-home{
  padding-bottom:96px!important;
}
body.apoderado-home-v40 .bottomNav.apoderado-bottom-nav{
  bottom:calc(env(safe-area-inset-bottom) + 8px)!important;
}

@media(max-width:380px){
  body.apoderado-home-v40 #whoRoleTitle{font-size:17px!important;}
  body.apoderado-home-v40 #whoCourseLine,
  body.apoderado-home-v40 #whoCourseLine .apoHeaderRole,
  body.apoderado-home-v40 #whoCourseLine .apoHeaderCourse{font-size:11.5px!important;}
  body.apoderado-home-v40 .apoV2DueSlide{grid-template-columns:54px minmax(0,1fr)!important;}
  body.apoderado-home-v40 .apoV2DueMain h1{font-size:16px!important;}
  body.apoderado-home-v40 .apoV2DueMain strong{font-size:21px!important;}
  body.apoderado-home-v40 .apoV2Summary b{font-size:13.5px!important;}
}

/* ===== V44: campana de avisos + carrusel dashboard ===== */
body.apoderado-home-v40 #avisosBellHost{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.apoderado-home-v40 .apoV44BellBtn,
body.apoderado-home-v40 .apoV42BellBtn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
}
body.apoderado-home-v40 .apoV42BellIcon{
  font-size:20px!important;
  line-height:1!important;
  transform:translateY(1px);
}
body.apoderado-home-v40 .apoV42BellDot{
  display:block!important;
}
body.apoderado-home-v40 .apoV2DueTrack{
  cursor:grab!important;
  scroll-behavior:smooth!important;
  overscroll-behavior-x:contain!important;
}
body.apoderado-home-v40 .apoV2DueTrack:active{cursor:grabbing!important;}
body.apoderado-home-v40 .apoV2DueDots{
  pointer-events:auto!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
}
body.apoderado-home-v40 .apoV2DueDots span{
  width:8px!important;
  height:8px!important;
  border-radius:999px!important;
  background:#cbd5e1!important;
  cursor:pointer!important;
  transition:width .18s ease, background .18s ease, transform .18s ease!important;
}
body.apoderado-home-v40 .apoV2DueDots span.active{
  width:18px!important;
  background:var(--apo-primary)!important;
}
body.apoderado-home-v40 .apoV2DueSlide{
  scroll-snap-align:center!important;
}
@media (max-width:420px){
  body.apoderado-home-v40 #avisosBellHost,
  body.apoderado-home-v40 #menuBtn,
  body.apoderado-home-v40 .apoV42BellBtn{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    border-radius:16px!important;
  }
}

/* ===== V45: campana estable + estado vencida ===== */
body.apoderado-home-v40 #avisosBellHost:empty::before{
  content:"🔔";
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:16px;
  border:1px solid rgba(226,232,240,.95);
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.07);
  font-size:18px;
}
body.apoderado-home-v40 .apoV2DueSlide.is-overdue .apoV2DueMeta b,
body.apoderado-home-v40 .apoV2DueSlide.is-overdue .apoV2DueMeta{
  color:#dc2626!important;
}
body.apoderado-home-v40 .apoV2DueSlide.is-overdue .apoV2DateBox b{
  background:#dc2626!important;
}
body.apoderado-home-v40 .apoV2DueSlide.is-overdue .apoV2Kicker{
  color:#dc2626!important;
}


/* ===== V46: campana visible y estable + evitar recarga por layout legacy ===== */
body.apoderado-home-v40 header .topbar{
  grid-template-columns:minmax(0,1fr) 46px 46px!important;
}
body.apoderado-home-v40 #avisosBellHost{
  grid-column:2!important;
  position:static!important;
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:10002!important;
}
body.apoderado-home-v40 #menuBtn{
  grid-column:3!important;
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.apoderado-home-v40 #avisosBellHost .apoV42BellBtn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  border-radius:16px!important;
  border:1px solid rgba(226,232,240,.95)!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(15,23,42,.07)!important;
  color:#0f172a!important;
  padding:0!important;
}
body.apoderado-home-v40 #avisosBellHost .apoV42BellIcon{
  display:block!important;
  font-size:18px!important;
  line-height:1!important;
}
body.apoderado-home-v40 #avisosBellHost .apoV42BellDot{
  position:absolute!important;
  top:8px!important;
  right:8px!important;
  width:7px!important;
  height:7px!important;
  border-radius:999px!important;
  background:#ef4444!important;
  border:2px solid #fff!important;
}

/* ===== V47: sobre/mensajes flotante fuera del header ===== */
body.apoderado-home-v40 .apoV47FloatingMessagesBtn{
  position:fixed!important;
  right:18px!important;
  bottom:calc(env(safe-area-inset-bottom) + 104px)!important;
  z-index:1200!important;
  min-width:54px!important;
  height:52px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  border:1px solid rgba(226,232,240,.95)!important;
  background:#fff!important;
  color:#6d28d9!important;
  box-shadow:0 14px 34px rgba(15,23,42,.14)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font:900 14px/1 -apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,Arial,sans-serif!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
}
body.apoderado-home-v40 .apoV47FloatingMessagesBtn:active{transform:scale(.98)!important;}
body.apoderado-home-v40 .apoV47FloatingMessagesIcon{font-size:19px!important;line-height:1!important;}
body.apoderado-home-v40 .apoV47FloatingMessagesLabel{white-space:nowrap!important;}
body.apoderado-home-v40 .apoV47FloatingMessagesBadge{
  position:absolute!important;
  top:-5px!important;
  right:-5px!important;
  min-width:20px!important;
  height:20px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  background:#ef4444!important;
  color:#fff!important;
  border:2px solid #fff!important;
  font-size:11px!important;
  font-weight:950!important;
  align-items:center!important;
  justify-content:center!important;
  display:none;
}
@media (max-width:430px){
  body.apoderado-home-v40 .apoV47FloatingMessagesBtn{
    width:52px!important;
    min-width:52px!important;
    height:52px!important;
    padding:0!important;
    right:16px!important;
    bottom:calc(env(safe-area-inset-bottom) + 96px)!important;
  }
  body.apoderado-home-v40 .apoV47FloatingMessagesLabel{display:none!important;}
}

/* =========================================================
   Cursapp Apoderado · Pagos V48
   Diseño premium consistente con Home V47
   ========================================================= */
body.apoderado-home-v40 .apoPayPage{
  padding:18px 0 140px;
}
body.apoderado-home-v40 .apoPayHeader,
body.apoderado-home-v40 .apoPayHero,
body.apoderado-home-v40 .apoPayUpToDateHero,
body.apoderado-home-v40 .apoPaySummary,
body.apoderado-home-v40 .apoPayTabs,
body.apoderado-home-v40 .apoPayGroup,
body.apoderado-home-v40 .apoPayCelebrate,
body.apoderado-home-v40 .apoPayEmpty{
  width:calc(100% - 32px);
  margin-left:auto;
  margin-right:auto;
}
body.apoderado-home-v40 .apoPayHeader{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  margin-bottom:14px;
}
body.apoderado-home-v40 .apoPayHeader h1{
  margin:0;
  font-size:28px;
  line-height:1.05;
  letter-spacing:-.04em;
  color:#0f172a;
}
body.apoderado-home-v40 .apoPayHeader p{
  margin:6px 0 0;
  font-size:14px;
  line-height:1.25;
  color:#64748b;
  font-weight:800;
}
body.apoderado-home-v40 .apoPaySecure{
  flex:0 0 auto;
  min-width:98px;
  border-radius:18px;
  padding:10px 12px;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  text-align:center;
}
body.apoderado-home-v40 .apoPaySecure b{
  display:block;
  font-size:13px;
  color:#ef4444;
  letter-spacing:-.01em;
}
body.apoderado-home-v40 .apoPaySecure span{
  display:block;
  margin-top:2px;
  font-size:10px;
  font-weight:900;
  color:#64748b;
}
body.apoderado-home-v40 .apoPayHero,
body.apoderado-home-v40 .apoPayUpToDateHero{
  border-radius:26px;
  border:1px solid rgba(109,40,217,.14);
  background:linear-gradient(135deg,#fff 0%,#fbf8ff 100%);
  box-shadow:0 16px 34px rgba(15,23,42,.07);
  padding:18px;
  margin-bottom:14px;
}
body.apoderado-home-v40 .apoPayHero.danger{
  border-color:rgba(220,38,38,.20);
  background:linear-gradient(135deg,#fff 0%,#fff7f7 100%);
}
body.apoderado-home-v40 .apoPayHero.warn{
  border-color:rgba(249,115,22,.18);
  background:linear-gradient(135deg,#fff 0%,#fffaf2 100%);
}
body.apoderado-home-v40 .apoPayHeroTop{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:12px;
}
body.apoderado-home-v40 .apoPayHeroTop span{
  font-size:13px;
  font-weight:950;
  color:#6d28d9;
}
body.apoderado-home-v40 .apoPayHero.danger .apoPayHeroTop span,
body.apoderado-home-v40 .apoPayHero .danger{ color:#dc2626; }
body.apoderado-home-v40 .apoPayHero.warn .apoPayHeroTop span,
body.apoderado-home-v40 .apoPayHero .warn{ color:#ea580c; }
body.apoderado-home-v40 .apoPayHeroTop small{
  font-size:11px;
  color:#16a34a;
  font-weight:950;
  padding:6px 10px;
  background:#ecfdf5;
  border-radius:999px;
}
body.apoderado-home-v40 .apoPayHeroMain{
  display:grid;
  grid-template-columns:minmax(0,1fr) 104px;
  gap:14px;
  align-items:center;
}
body.apoderado-home-v40 .apoPayHeroCopy h2{
  margin:0;
  font-size:24px;
  line-height:1.05;
  letter-spacing:-.04em;
  color:#0f172a;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.apoderado-home-v40 .apoPayHeroCopy p{
  margin:8px 0 0;
  font-size:13px;
  line-height:1.25;
  font-weight:900;
  color:#64748b;
}
body.apoderado-home-v40 .apoPayHeroCopy strong{
  display:block;
  margin-top:10px;
  font-size:30px;
  line-height:1;
  letter-spacing:-.05em;
  color:#0f172a;
}
body.apoderado-home-v40 .apoPayHeroBadge{
  height:96px;
  border-radius:22px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  background:linear-gradient(135deg,#fff 0%,#eef6ff 100%);
  border:1px solid rgba(37,99,235,.12);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.8);
}
body.apoderado-home-v40 .apoPayHeroBadge span{
  font-size:11px;
  font-weight:950;
  color:#ef4444;
}
body.apoderado-home-v40 .apoPayHeroBadge b{
  font-size:13px;
  color:#0f172a;
  text-align:center;
}
body.apoderado-home-v40 .apoPayHeroBadge small{
  font-size:10px;
  color:#64748b;
  font-weight:800;
  text-align:center;
}
body.apoderado-home-v40 .apoPayHeroActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}
body.apoderado-home-v40 .apoPayHeroActions button,
body.apoderado-home-v40 .apoPayLine button{
  height:42px;
  border-radius:16px;
  border:1px solid rgba(109,40,217,.22);
  background:#fff;
  color:#6d28d9;
  font-weight:950;
  font-size:13px;
}
body.apoderado-home-v40 .apoPayHeroActions button:first-child,
body.apoderado-home-v40 .apoPayLine:not(.paid) button{
  background:linear-gradient(135deg,#7c3aed,#5b21b6);
  color:#fff;
  border:0;
  box-shadow:0 12px 22px rgba(109,40,217,.16);
}
body.apoderado-home-v40 .apoPayUpToDateHero{
  display:grid;
  grid-template-columns:68px minmax(0,1fr);
  gap:14px;
  align-items:center;
}
body.apoderado-home-v40 .apoPayHeroIcon{
  width:64px;
  height:64px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:#ecfdf5;
  font-size:32px;
}
body.apoderado-home-v40 .apoPayUpToDateHero span{
  color:#16a34a;
  font-weight:950;
  font-size:13px;
}
body.apoderado-home-v40 .apoPayUpToDateHero h2{
  margin:2px 0 4px;
  font-size:24px;
}
body.apoderado-home-v40 .apoPayUpToDateHero p{
  margin:0;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
body.apoderado-home-v40 .apoPaySummary{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 14px 30px rgba(15,23,42,.06);
  padding:14px 8px;
  margin-bottom:14px;
}
body.apoderado-home-v40 .apoPaySummary article{
  min-width:0;
  text-align:center;
  padding:0 6px;
  border-right:1px solid rgba(226,232,240,.95);
}
body.apoderado-home-v40 .apoPaySummary article:last-child{ border-right:0; }
body.apoderado-home-v40 .apoPaySummary article > span{
  width:42px;
  height:42px;
  border-radius:16px;
  display:grid;
  place-items:center;
  margin:0 auto 8px;
  font-weight:950;
}
body.apoderado-home-v40 .apoPaySummary .purple{ background:#f3e8ff; color:#7c3aed; }
body.apoderado-home-v40 .apoPaySummary .green{ background:#dcfce7; color:#16a34a; }
body.apoderado-home-v40 .apoPaySummary .orange{ background:#ffedd5; color:#f97316; }
body.apoderado-home-v40 .apoPaySummary .blue{ background:#dbeafe; color:#2563eb; }
body.apoderado-home-v40 .apoPaySummary svg{ width:20px!important; height:20px!important; }
body.apoderado-home-v40 .apoPaySummary p{
  margin:0;
  font-size:12px;
  line-height:1.05;
  color:#64748b;
  font-weight:950;
}
body.apoderado-home-v40 .apoPaySummary strong{
  display:block;
  margin-top:7px;
  font-size:19px;
  line-height:1;
  color:#0f172a;
  letter-spacing:-.04em;
  white-space:nowrap;
}
body.apoderado-home-v40 .apoPaySummary small{
  display:block;
  margin-top:5px;
  font-size:11px;
  line-height:1.1;
  font-weight:950;
  color:#64748b;
}
body.apoderado-home-v40 .apoPaySummary .purple ~ small{ color:#7c3aed; }
body.apoderado-home-v40 .apoPaySummary .green ~ small{ color:#16a34a; }
body.apoderado-home-v40 .apoPaySummary .orange ~ small{ color:#f97316; }
body.apoderado-home-v40 .apoPaySummary .blue ~ small{ color:#2563eb; }
body.apoderado-home-v40 .apoPayTabs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-bottom:14px;
}
body.apoderado-home-v40 .apoPayTabs button{
  height:44px;
  border-radius:16px;
  border:1px solid rgba(226,232,240,.95);
  background:#fff;
  color:#0f172a;
  font-size:14px;
  font-weight:950;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
}
body.apoderado-home-v40 .apoPayTabs button.active{
  color:#fff;
  border:0;
  background:linear-gradient(135deg,#7c3aed,#5b21b6);
}
body.apoderado-home-v40 .apoPayGroup,
body.apoderado-home-v40 .apoPayCelebrate,
body.apoderado-home-v40 .apoPayEmpty{
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 12px 28px rgba(15,23,42,.06);
  margin-bottom:12px;
  overflow:hidden;
}
body.apoderado-home-v40 .apoPayGroupHead{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:16px;
  border-bottom:1px solid rgba(226,232,240,.9);
}
body.apoderado-home-v40 .apoPayGroupHead span{
  color:#6d28d9;
  font-size:12px;
  font-weight:950;
}
body.apoderado-home-v40 .apoPayGroupHead h3{
  margin:4px 0 0;
  font-size:20px;
  line-height:1.05;
  letter-spacing:-.035em;
}
body.apoderado-home-v40 .apoPayGroupHead p{
  margin:6px 0 0;
  color:#64748b;
  font-size:12px;
  line-height:1.25;
  font-weight:800;
}
body.apoderado-home-v40 .apoPayGroupAmount{
  flex:0 0 auto;
  text-align:right;
}
body.apoderado-home-v40 .apoPayGroupAmount small{
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:950;
}
body.apoderado-home-v40 .apoPayGroupAmount strong{
  display:block;
  margin-top:4px;
  color:#0f172a;
  font-size:20px;
  letter-spacing:-.04em;
  white-space:nowrap;
}
body.apoderado-home-v40 .apoPayMonthHint{
  margin:12px 16px 0;
  padding:10px 12px;
  border-radius:16px;
  background:#f8fafc;
  color:#64748b;
  font-size:12px;
  line-height:1.25;
  font-weight:850;
}
body.apoderado-home-v40 .apoPayLines{ padding:8px 12px 12px; }
body.apoderado-home-v40 .apoPayLine{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid rgba(226,232,240,.85);
}
body.apoderado-home-v40 .apoPayLine:last-child{ border-bottom:0; }
body.apoderado-home-v40 .apoPayLineIcon{
  width:30px;
  height:30px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#f3e8ff;
  color:#7c3aed;
  font-weight:950;
}
body.apoderado-home-v40 .apoPayLine.danger .apoPayLineIcon{ background:#fee2e2; color:#dc2626; }
body.apoderado-home-v40 .apoPayLine.warn .apoPayLineIcon{ background:#ffedd5; color:#f97316; }
body.apoderado-home-v40 .apoPayLine.paid .apoPayLineIcon{ background:#dcfce7; color:#16a34a; }
body.apoderado-home-v40 .apoPayLineInfo{ min-width:0; }
body.apoderado-home-v40 .apoPayLineInfo h4{
  margin:0;
  color:#0f172a;
  font-size:15px;
  line-height:1.1;
  font-weight:950;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.apoderado-home-v40 .apoPayLineInfo p{
  margin:4px 0 0;
  color:#64748b;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.apoderado-home-v40 .apoPayLine > strong{
  grid-column:2 / 3;
  color:#0f172a;
  font-size:18px;
  letter-spacing:-.04em;
  white-space:nowrap;
}
body.apoderado-home-v40 .apoPayLine button{
  grid-column:3 / 4;
  grid-row:1 / span 2;
  min-width:92px;
  height:38px;
  font-size:12px;
}
body.apoderado-home-v40 .apoPayLine.paid button{
  background:#fff;
  color:#6d28d9;
}
body.apoderado-home-v40 .apoPayCelebrate,
body.apoderado-home-v40 .apoPayEmpty{
  text-align:center;
  padding:22px 18px;
}
body.apoderado-home-v40 .apoPayCelebrate div,
body.apoderado-home-v40 .apoPayEmpty div{
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  margin:0 auto 10px;
  border-radius:26px;
  background:#ecfdf5;
  font-size:36px;
}
body.apoderado-home-v40 .apoPayCelebrate h2,
body.apoderado-home-v40 .apoPayEmpty h3{
  margin:0;
  font-size:24px;
  line-height:1.1;
  letter-spacing:-.035em;
}
body.apoderado-home-v40 .apoPayCelebrate p,
body.apoderado-home-v40 .apoPayEmpty p{
  margin:8px auto 0;
  max-width:280px;
  color:#64748b;
  font-size:14px;
  line-height:1.3;
  font-weight:800;
}
body.apoderado-home-v40 .apoPayCelebrate span{
  display:inline-flex;
  margin-top:12px;
  padding:8px 12px;
  border-radius:999px;
  color:#166534;
  background:#dcfce7;
  font-size:12px;
  font-weight:950;
}
@media (max-width:430px){
  body.apoderado-home-v40 .apoPayPage{ padding-top:14px; }
  body.apoderado-home-v40 .apoPayHeader h1{ font-size:26px; }
  body.apoderado-home-v40 .apoPayHeader p{ font-size:13px; }
  body.apoderado-home-v40 .apoPaySecure{ display:none; }
  body.apoderado-home-v40 .apoPayHeroMain{ grid-template-columns:1fr; }
  body.apoderado-home-v40 .apoPayHeroBadge{ height:auto; min-height:52px; flex-direction:row; padding:10px; justify-content:flex-start; }
  body.apoderado-home-v40 .apoPayHeroBadge small{ display:none; }
  body.apoderado-home-v40 .apoPayHeroCopy h2{ font-size:22px; }
  body.apoderado-home-v40 .apoPayHeroCopy strong{ font-size:28px; }
  body.apoderado-home-v40 .apoPaySummary strong{ font-size:17px; }
  body.apoderado-home-v40 .apoPaySummary p{ font-size:11px; }
  body.apoderado-home-v40 .apoPayLine{ grid-template-columns:32px minmax(0,1fr) auto; }
  body.apoderado-home-v40 .apoPayLine button{ min-width:76px; padding:0 10px; }
}

/* =========================================================
   Pagos Apoderado V49 · cierre UX
   - Sello Transbank + candado
   - Cuotas largas agrupadas por año
   - Banner más cerca del listado
   ========================================================= */
body.apoderado-home-v40 .apoPayTrustBadge{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:54px!important;
  border-radius:18px!important;
  padding:10px 12px!important;
  background:linear-gradient(135deg,#f8fafc 0%,#eef8ff 100%)!important;
  border:1px solid rgba(37,99,235,.14)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.82)!important;
}
body.apoderado-home-v40 .apoPayTrustBadge.header{
  width:auto!important;
  min-width:150px!important;
  flex:0 0 auto!important;
}
body.apoderado-home-v40 .apoPayTrustBadge.hero{
  min-height:72px!important;
  align-self:center!important;
}
body.apoderado-home-v40 .apoPayTrustLock{
  width:34px!important;
  height:34px!important;
  border-radius:13px!important;
  display:grid!important;
  place-items:center!important;
  background:#dcfce7!important;
  color:#16a34a!important;
  font-size:17px!important;
  flex:0 0 auto!important;
}
body.apoderado-home-v40 .apoPayTrustText{min-width:0!important;}
body.apoderado-home-v40 .apoPayTrustText b{
  display:block!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.05!important;
  color:#0f172a!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
}
body.apoderado-home-v40 .apoPayTrustText b span{
  color:#ef4444!important;
  font-weight:950!important;
}
body.apoderado-home-v40 .apoPayTrustText small{
  display:block!important;
  margin-top:4px!important;
  font-size:10.5px!important;
  line-height:1.1!important;
  color:#64748b!important;
  font-weight:850!important;
}
body.apoderado-home-v40 .apoPayYear{
  margin:10px 12px!important;
  border:1px solid rgba(226,232,240,.92)!important;
  border-radius:18px!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.apoderado-home-v40 .apoPayYear + .apoPayYear{margin-top:8px!important;}
body.apoderado-home-v40 .apoPayYear summary{
  list-style:none!important;
  cursor:pointer!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:4px 10px!important;
  align-items:center!important;
  padding:12px 14px!important;
  background:#fbfdff!important;
}
body.apoderado-home-v40 .apoPayYear summary::-webkit-details-marker{display:none!important;}
body.apoderado-home-v40 .apoPayYear summary::after{
  content:'⌄'!important;
  grid-column:2!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
  justify-self:end!important;
  margin-left:8px!important;
  color:#6d28d9!important;
  font-weight:950!important;
  transition:transform .18s ease!important;
}
body.apoderado-home-v40 .apoPayYear[open] summary::after{transform:rotate(180deg)!important;}
body.apoderado-home-v40 .apoPayYear summary span{
  grid-column:1!important;
  font-size:16px!important;
  line-height:1.05!important;
  font-weight:950!important;
  color:#0f172a!important;
  text-transform:none!important;
}
body.apoderado-home-v40 .apoPayYear summary small{
  grid-column:1!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:850!important;
  color:#64748b!important;
}
body.apoderado-home-v40 .apoPayYear summary b{
  grid-column:2!important;
  grid-row:1!important;
  padding-right:22px!important;
  font-size:14px!important;
  color:#0f172a!important;
  white-space:nowrap!important;
}
body.apoderado-home-v40 .apoPayYear .apoPayLines{
  padding:0 12px 8px!important;
  border-top:1px solid rgba(226,232,240,.82)!important;
}
body.apoderado-home-v40 .apoPayGroup.is-collapsible .apoPayLines{
  padding-top:4px!important;
}
body.apoderado-home-v40 .apoPayList{margin-bottom:4px!important;}
body.apoderado-home-v40 .apoPayGroup:last-child{margin-bottom:6px!important;}
body.apoderado-home-v40 .apoPayPage + [data-monetization-slot="apoderado"],
body.apoderado-home-v40 [data-monetization-slot="apoderado"],
body.apoderado-home-v40 .monetization-banner,
body.apoderado-home-v40 .cursapp-monetization-banner{
  margin-top:6px!important;
  margin-bottom:92px!important;
}
@media(max-width:430px){
  body.apoderado-home-v40 .apoPayTrustBadge.header{display:none!important;}
  body.apoderado-home-v40 .apoPayHeroMain{grid-template-columns:1fr!important;}
  body.apoderado-home-v40 .apoPayTrustBadge.hero{
    min-height:50px!important;
    margin-top:2px!important;
  }
  body.apoderado-home-v40 .apoPayTrustText b{font-size:12.5px!important;}
  body.apoderado-home-v40 .apoPayTrustText small{font-size:10px!important;}
  body.apoderado-home-v40 .apoPayYear summary span{font-size:15px!important;}
  body.apoderado-home-v40 .apoPayYear summary b{font-size:13px!important;}
}

/* =========================================================
   Pagos Apoderado V50 · Transbank compacto + texto usuario
   ========================================================= */
body.apoderado-home-v40 .apoPayTrustBadge{
  gap:8px!important;
  min-height:52px!important;
  padding:9px 12px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#f8fafc 0%,#f1f8ff 100%)!important;
  border:1px solid rgba(14,165,233,.14)!important;
}
body.apoderado-home-v40 .apoPayTrustBadge.hero{
  min-height:58px!important;
  align-self:center!important;
}
body.apoderado-home-v40 .apoPayTrustLock{
  width:30px!important;
  height:30px!important;
  border-radius:12px!important;
  background:#dcfce7!important;
  color:#16a34a!important;
  font-size:15px!important;
  box-shadow:0 8px 18px rgba(22,163,74,.10)!important;
}
body.apoderado-home-v40 .apoPayTrustLogo{
  width:70px!important;
  max-width:70px!important;
  height:auto!important;
  display:block!important;
  flex:0 0 auto!important;
  object-fit:contain!important;
}
body.apoderado-home-v40 .apoPayTrustText{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
body.apoderado-home-v40 .apoPayTrustText b{
  font-size:12.5px!important;
  line-height:1.05!important;
  color:#0f172a!important;
  white-space:nowrap!important;
}
body.apoderado-home-v40 .apoPayTrustText small{
  margin-top:3px!important;
  font-size:10px!important;
  line-height:1.1!important;
  color:#64748b!important;
  white-space:nowrap!important;
}
body.apoderado-home-v40 .apoPayMonthHint{
  margin:10px 16px 0!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.28!important;
  font-weight:850!important;
}
body.apoderado-home-v40 .apoPayGroup.is-collapsible{
  margin-bottom:10px!important;
}
body.apoderado-home-v40 .apoPayList{margin-bottom:0!important;}
body.apoderado-home-v40 .apoPayPage + [data-monetization-slot="apoderado"],
body.apoderado-home-v40 [data-monetization-slot="apoderado"],
body.apoderado-home-v40 .monetization-banner,
body.apoderado-home-v40 .cursapp-monetization-banner{
  margin-top:4px!important;
}
@media(max-width:430px){
  body.apoderado-home-v40 .apoPayTrustLogo{width:64px!important;max-width:64px!important;}
  body.apoderado-home-v40 .apoPayTrustBadge.hero{min-height:54px!important;}
  body.apoderado-home-v40 .apoPayTrustText b{font-size:12px!important;}
  body.apoderado-home-v40 .apoPayTrustText small{font-size:9.5px!important;}
}

/* =========================================================
   Comprobante de pago Apoderado V51
   ========================================================= */
body.apoderado-home-v40 .receiptV51Shell{
  background:#fff!important;
  min-height:100%!important;
  padding:0 0 18px!important;
  color:#0f172a!important;
}
body.apoderado-home-v40 .receiptV51Topbar{
  height:58px!important;
  padding:0 10px!important;
  display:grid!important;
  grid-template-columns:44px 1fr 44px!important;
  align-items:center!important;
  gap:8px!important;
}
body.apoderado-home-v40 .receiptV51Title{
  text-align:center!important;
  font-size:18px!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
body.apoderado-home-v40 .receiptV51IconBtn{
  width:42px!important;
  height:42px!important;
  border:0!important;
  background:transparent!important;
  color:#6d28d9!important;
  font-size:24px!important;
  font-weight:900!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
}
body.apoderado-home-v40 .receiptV51Card{
  width:calc(100% - 28px)!important;
  max-width:540px!important;
  margin:10px auto 14px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid rgba(226,232,240,.92)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.08)!important;
  overflow:hidden!important;
  text-align:center!important;
}
body.apoderado-home-v40 .receiptV51Brand{
  margin-top:22px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  color:#5b21b6!important;
  font-size:19px!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
}
body.apoderado-home-v40 .receiptV51BrandIcon{font-size:21px!important;line-height:1!important;}
body.apoderado-home-v40 .receiptV51Card h2{
  margin:14px 18px 0!important;
  font-size:25px!important;
  line-height:1.05!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}
body.apoderado-home-v40 .receiptV51Status{
  margin:18px auto 0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  color:#16a34a!important;
  font-size:16px!important;
  font-weight:950!important;
}
body.apoderado-home-v40 .receiptV51Status span{
  width:28px!important;
  height:28px!important;
  border-radius:999px!important;
  background:#16a34a!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:17px!important;
}
body.apoderado-home-v40 .receiptV51Amount{
  margin-top:20px!important;
  font-size:48px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
}
body.apoderado-home-v40 .receiptV51Date{
  margin-top:8px!important;
  color:#64748b!important;
  font-size:15px!important;
  font-weight:750!important;
}
body.apoderado-home-v40 .receiptV51Divider{
  height:1px!important;
  margin:24px 24px!important;
  background:repeating-linear-gradient(90deg, rgba(148,163,184,.55) 0 7px, transparent 7px 13px)!important;
}
body.apoderado-home-v40 .receiptV51Details{
  position:relative!important;
  padding:0 28px!important;
  isolation:isolate!important;
}
body.apoderado-home-v40 .receiptV51Watermark{
  position:absolute!important;
  inset:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:.075!important;
}
body.apoderado-home-v40 .receiptV51StampRing{
  width:280px!important;
  height:280px!important;
  border-radius:999px!important;
  border:5px solid #6d28d9!important;
  color:#6d28d9!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  transform:rotate(-10deg)!important;
  font-weight:950!important;
  text-transform:uppercase!important;
}
body.apoderado-home-v40 .receiptV51StampTop{font-size:28px!important;letter-spacing:.14em!important;}
body.apoderado-home-v40 .receiptV51Shield{
  margin:10px 0 4px!important;
  min-width:106px!important;
  min-height:78px!important;
  padding:12px!important;
  border:5px solid #6d28d9!important;
  border-radius:28px 28px 36px 36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:46px!important;
  letter-spacing:-.06em!important;
}
body.apoderado-home-v40 .receiptV51StampYear{font-size:32px!important;letter-spacing:.06em!important;}
body.apoderado-home-v40 .receiptV51StampBottom{font-size:28px!important;letter-spacing:.13em!important;}
body.apoderado-home-v40 .receiptV51Row{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:28px 1fr minmax(116px,auto)!important;
  align-items:center!important;
  gap:14px!important;
  min-height:48px!important;
  text-align:left!important;
}
body.apoderado-home-v40 .receiptV51RowIcon{
  width:24px!important;
  height:24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#6d28d9!important;
}
body.apoderado-home-v40 .receiptV51RowIcon svg{
  width:22px!important;
  height:22px!important;
  stroke:currentColor!important;
  fill:none!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.apoderado-home-v40 .receiptV51RowLabel{
  color:#64748b!important;
  font-size:14px!important;
  font-weight:750!important;
}
body.apoderado-home-v40 .receiptV51Row strong{
  color:#0f172a!important;
  font-size:14px!important;
  font-weight:950!important;
  text-align:right!important;
  line-height:1.15!important;
}
body.apoderado-home-v40 .receiptV51PaidPill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  padding:5px 12px!important;
  background:#dcfce7!important;
  color:#15803d!important;
  font-size:13px!important;
  font-weight:950!important;
  border:1px solid rgba(22,163,74,.18)!important;
}
body.apoderado-home-v40 .receiptV51Folio{
  margin:0 24px 22px!important;
  min-height:64px!important;
  border:1px solid rgba(226,232,240,.96)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#f8fafc,#fff)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
body.apoderado-home-v40 .receiptV51Folio span{
  color:#64748b!important;
  font-size:12px!important;
  font-weight:800!important;
}
body.apoderado-home-v40 .receiptV51Folio strong{
  margin-top:4px!important;
  color:#0f172a!important;
  font-size:16px!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
}
body.apoderado-home-v40 .receiptV51Trust{
  min-height:92px!important;
  padding:16px 24px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:10px!important;
  background:linear-gradient(180deg,rgba(248,250,252,.4),#f8fafc)!important;
  color:#475569!important;
}
body.apoderado-home-v40 .receiptV51Trust > span{font-size:16px!important;opacity:.75!important;}
body.apoderado-home-v40 .receiptV51Trust p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:760!important;
}
body.apoderado-home-v40 .receiptV51Trust b{color:#b0006d!important;font-weight:950!important;font-size:16px!important;}
body.apoderado-home-v40 .receiptV51Trust small{
  display:block!important;
  margin-top:7px!important;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:650!important;
}
body.apoderado-home-v40 .receiptV51Primary,
body.apoderado-home-v40 .receiptV51Secondary{
  width:calc(100% - 28px)!important;
  max-width:540px!important;
  height:52px!important;
  margin:0 auto 10px!important;
  border-radius:14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  font-size:15px!important;
  font-weight:950!important;
  cursor:pointer!important;
}
body.apoderado-home-v40 .receiptV51Primary{
  border:0!important;
  color:#fff!important;
  background:linear-gradient(135deg,#4c1d95,#6d28d9)!important;
  box-shadow:0 16px 28px rgba(109,40,217,.18)!important;
}
body.apoderado-home-v40 .receiptV51Secondary{
  border:1px solid rgba(109,40,217,.55)!important;
  color:#5b21b6!important;
  background:#fff!important;
}
@media(max-width:430px){
  body.apoderado-home-v40 .receiptV51Card{width:calc(100% - 22px)!important;border-radius:22px!important;}
  body.apoderado-home-v40 .receiptV51Amount{font-size:42px!important;}
  body.apoderado-home-v40 .receiptV51Card h2{font-size:23px!important;}
  body.apoderado-home-v40 .receiptV51Details{padding:0 18px!important;}
  body.apoderado-home-v40 .receiptV51Row{grid-template-columns:24px 1fr minmax(94px,auto)!important;gap:10px!important;}
  body.apoderado-home-v40 .receiptV51Row strong{font-size:13px!important;}
  body.apoderado-home-v40 .receiptV51StampRing{width:245px!important;height:245px!important;}
}
@media print{
  body.apoderado-home-v40 .receiptV51Topbar,
  body.apoderado-home-v40 .receiptV51Primary,
  body.apoderado-home-v40 .receiptV51Secondary{display:none!important;}
  body.apoderado-home-v40 .receiptV51Card{box-shadow:none!important;border:1px solid #e2e8f0!important;max-width:560px!important;}
}

/* =========================================================
   Comprobante de pago Apoderado V52 compact
   - Marca de agua detrás de los datos
   - Datos en dos columnas
   - Acciones superiores pequeñas
   - Compartir mediante PDF
   ========================================================= */
body.apoderado-home-v40 .receiptV51Shell{
  padding:0 0 12px!important;
}
body.apoderado-home-v40 .receiptV52Topbar{
  height:auto!important;
  padding:12px 14px 10px!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:8px!important;
}
body.apoderado-home-v40 .receiptV52Brand{
  margin:0!important;
  justify-content:flex-start!important;
  font-size:17px!important;
  letter-spacing:.02em!important;
}
body.apoderado-home-v40 .receiptV52Actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
body.apoderado-home-v40 .receiptV52ActionBtn{
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#6d28d9!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  font-weight:900!important;
}
body.apoderado-home-v40 .receiptV52ActionBtn span{
  font-size:22px!important;
  line-height:1!important;
}
body.apoderado-home-v40 .receiptV52ActionBtn small{
  font-size:9px!important;
  line-height:1!important;
  font-weight:850!important;
}
body.apoderado-home-v40 .receiptV52Card{
  width:calc(100% - 26px)!important;
  margin:6px auto 10px!important;
  padding-top:0!important;
  border-radius:20px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Status{
  margin-top:22px!important;
  font-size:15px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Status span{
  width:32px!important;
  height:32px!important;
  background:#fff!important;
  color:#16a34a!important;
  border:2px solid #16a34a!important;
  font-size:18px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Amount{
  margin-top:14px!important;
  font-size:44px!important;
  letter-spacing:-.05em!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Date{
  margin-top:5px!important;
  font-size:13px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Divider{
  margin:20px 22px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Details{
  padding:0 22px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  column-gap:14px!important;
  row-gap:14px!important;
  text-align:left!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Watermark{
  inset:-8px 0!important;
  opacity:.07!important;
  z-index:0!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51StampRing{
  width:260px!important;
  height:260px!important;
  border-width:4px!important;
  transform:rotate(-10deg)!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51StampTop,
body.apoderado-home-v40 .receiptV52Card .receiptV51StampBottom{
  font-size:24px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Shield{
  font-size:32px!important;
  min-width:92px!important;
  min-height:64px!important;
  border-width:4px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51StampYear{
  font-size:28px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Row{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:28px 1fr!important;
  grid-template-areas:"icon label" "icon value"!important;
  align-items:start!important;
  gap:1px 9px!important;
  min-height:50px!important;
  background:rgba(255,255,255,.34)!important;
  border-radius:14px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51RowIcon{
  grid-area:icon!important;
  margin-top:4px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51RowLabel{
  grid-area:label!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:850!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Row strong{
  grid-area:value!important;
  text-align:left!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:950!important;
  word-break:break-word!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51PaidPill{
  padding:3px 9px!important;
  font-size:12px!important;
}
body.apoderado-home-v40 .receiptV52DividerBottom{
  margin-top:18px!important;
  margin-bottom:0!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Trust{
  min-height:78px!important;
  padding:12px 22px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Trust p{
  font-size:12px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Trust b{
  font-size:14px!important;
}
body.apoderado-home-v40 .receiptV52Card .receiptV51Trust small{
  font-size:11px!important;
  margin-top:5px!important;
}
body.apoderado-home-v40 .receiptV52BottomActions{
  width:calc(100% - 26px)!important;
  max-width:540px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
body.apoderado-home-v40 .receiptV52BottomActions .receiptV51Primary,
body.apoderado-home-v40 .receiptV52BottomActions .receiptV51Secondary{
  width:100%!important;
  height:44px!important;
  margin:0!important;
  border-radius:13px!important;
  font-size:13px!important;
}
@media(max-width:430px){
  body.apoderado-home-v40 .receiptV52Topbar{padding:10px 12px 8px!important;}
  body.apoderado-home-v40 .receiptV52ActionBtn{width:38px!important;min-width:38px!important;height:38px!important;}
  body.apoderado-home-v40 .receiptV52ActionBtn span{font-size:20px!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51Amount{font-size:38px!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51Details{padding:0 18px!important;column-gap:10px!important;row-gap:12px!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51StampRing{width:230px!important;height:230px!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51RowIcon svg{width:20px!important;height:20px!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51Row strong{font-size:12.5px!important;}
}
@media print{
  body.apoderado-home-v40 .receiptV52Topbar,
  body.apoderado-home-v40 .receiptV52BottomActions{display:none!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51Details{display:grid!important;grid-template-columns:1fr 1fr!important;}
  body.apoderado-home-v40 .receiptV52Card .receiptV51Row{break-inside:avoid!important;}
}


/* =========================================================
   Comprobante V53: impresión/compartir PDF limpio
   - Al imprimir o compartir PDF se muestra SOLO el comprobante.
   - Oculta el Home/Pagos/Banner/fondo detrás del modal.
   ========================================================= */
@media print{
  @page{ margin:10mm; size:auto; }
  html, body{
    background:#fff!important;
    width:auto!important;
    height:auto!important;
    overflow:visible!important;
  }
  body.receipt-printing{
    background:#fff!important;
  }
  body.receipt-printing *{
    visibility:hidden!important;
  }
  body.receipt-printing #modalRoot,
  body.receipt-printing #modalRoot *,
  body.receipt-printing #modalCard,
  body.receipt-printing #modalCard *,
  body.receipt-printing .receiptV51Shell,
  body.receipt-printing .receiptV51Shell *,
  body.receipt-printing .receiptV52Card,
  body.receipt-printing .receiptV52Card *{
    visibility:visible!important;
  }
  body.receipt-printing #modalRoot{
    position:static!important;
    display:block!important;
    background:#fff!important;
  }
  body.receipt-printing #modalRoot > div{
    position:static!important;
    inset:auto!important;
    display:block!important;
    padding:0!important;
    margin:0!important;
    background:#fff!important;
    box-shadow:none!important;
    width:auto!important;
    min-height:auto!important;
  }
  body.receipt-printing #modalCard{
    position:static!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0 auto!important;
    padding:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
  }
  body.receipt-printing .receiptV51Shell{
    display:block!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
    background:#fff!important;
  }
  body.receipt-printing .receiptV52Topbar,
  body.receipt-printing .receiptV52BottomActions,
  body.receipt-printing .receiptV51Primary,
  body.receipt-printing .receiptV51Secondary{
    display:none!important;
  }
  body.receipt-printing .receiptV52Card{
    width:100%!important;
    max-width:560px!important;
    margin:0 auto!important;
    box-shadow:none!important;
    border:1px solid #e2e8f0!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }
}

/* =========================================================
   Informes Apoderado V55 - Dashboard premium
   ========================================================= */
.apoReportPage{
  width:min(100%, 760px);
  margin:0 auto;
  padding:18px 18px calc(120px + env(safe-area-inset-bottom));
  color:#0f172a;
}
.apoReportHero{
  position:relative;
  text-align:center;
  padding:18px 0 14px;
}
.apoReportBrand{
  display:flex;align-items:center;gap:8px;justify-content:flex-start;
  color:#5b21b6;font-weight:950;letter-spacing:.04em;font-size:18px;
  margin-bottom:10px;
}
.apoReportBrand span{font-size:20px}
.apoReportActions{position:absolute;right:0;top:10px;display:flex;gap:10px}
.apoReportActions button{
  border:0;background:#fff;color:#5b21b6;font-weight:900;border-radius:14px;
  min-width:54px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  box-shadow:0 10px 24px rgba(15,23,42,.08);font-size:18px;
}
.apoReportActions small{font-size:10px;line-height:1;margin-top:1px}
.apoReportHero h1{font-size:26px;line-height:1.05;margin:4px 0 6px;font-weight:950;letter-spacing:-.035em}
.apoReportHero p{font-size:14px;color:#64748b;font-weight:850;margin:0 0 14px}
.apoReportPeriod{
  width:min(260px, 100%);height:48px;border:1px solid #e2e8f0;background:#fff;border-radius:16px;
  display:inline-flex;align-items:center;justify-content:space-between;padding:0 18px;
  color:#0f172a;font-weight:900;box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.apoReportCard{
  background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:18px;margin:14px 0;
  box-shadow:0 16px 34px rgba(15,23,42,.06);
}
.apoReportCard h2{font-size:17px;line-height:1.15;margin:0;font-weight:950;letter-spacing:-.02em}
.apoReportCardHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.apoReportCardHead button{border:0;background:transparent;color:#6d28d9;font-weight:900;font-size:13px}
.apoReportTabs{background:#f1f5f9;border-radius:14px;padding:3px;display:flex;gap:2px;white-space:nowrap}
.apoReportTabs span{font-size:11px;font-weight:850;color:#64748b;padding:8px 10px;border-radius:11px}
.apoReportTabs .active{background:#6d28d9;color:#fff;box-shadow:0 8px 18px rgba(109,40,217,.22)}
.apoReportLineChart{width:100%;height:auto;display:block;margin-top:4px}
.apoReportAxis{font-size:10px;fill:#64748b;font-weight:800;text-transform:capitalize}
.apoReportChartValue{font-size:11px;font-weight:950;fill:#fff;paint-order:stroke;stroke:#6d28d9;stroke-width:10px;stroke-linejoin:round}
.apoReportDonutWrap{display:grid;grid-template-columns:132px 1fr;gap:18px;align-items:center;margin-top:14px}
.apoReportDonut{width:132px;height:132px;overflow:visible}
.apoReportDonutSeg{fill:none;stroke-width:24;transform:rotate(-90deg);transform-origin:64px 64px;stroke-linecap:butt}
.apoReportDonut text:first-of-type{font-size:11px;fill:#64748b;font-weight:900}
.apoReportDonut text:last-of-type{font-size:13px;fill:#0f172a;font-weight:950}
.apoReportLegend{display:flex;flex-direction:column;gap:10px}
.apoReportLegend div{display:grid;grid-template-columns:12px 1fr auto 34px;gap:8px;align-items:center;font-size:12px;color:#0f172a}
.apoReportLegend span{width:10px;height:10px;border-radius:99px}
.apoReportLegend b{font-weight:850}.apoReportLegend strong{font-weight:950}.apoReportLegend small{color:#64748b;text-align:right;font-weight:850}
.apoReportMoves{display:flex;flex-direction:column;gap:0}
.apoReportMove{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #eef2f7;position:relative}
.apoReportMove:first-child{border-top:0}
.apoReportMove>span{width:38px;height:38px;border-radius:14px;background:#f3e8ff;color:#6d28d9;display:flex;align-items:center;justify-content:center}
.apoReportMove svg{width:20px;height:20px;stroke:currentColor}
.apoReportMove strong{display:block;font-size:14px;font-weight:950}.apoReportMove small{display:block;color:#64748b;font-weight:800;margin-top:2px;font-size:12px}.apoReportMove b{font-size:14px;font-weight:950}
.apoReportMove button{grid-column:3;border:0;background:transparent;color:#6d28d9;font-size:12px;font-weight:950;padding:0}
.apoReportEmptyMove{display:block;background:#f8fafc;border-radius:16px;padding:14px;color:#64748b}.apoReportEmptyMove strong{display:block;color:#0f172a}.apoReportEmptyMove small{display:block;margin-top:4px;font-weight:750}
.apoReportStats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}
.apoReportStats div{border-radius:16px;padding:14px 12px;border:1px solid #e2e8f0;min-height:126px}
.apoReportStats span{width:38px;height:38px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:950;font-size:20px;margin-bottom:10px}
.apoReportStats small{display:block;color:#334155;font-weight:900;font-size:12px;line-height:1.1}.apoReportStats strong{display:block;color:#0f172a;font-size:19px;font-weight:950;margin:6px 0 3px;letter-spacing:-.03em}.apoReportStats em{font-style:normal;font-size:11px;font-weight:900}
.apoReportStats .income{background:#f0fdf4;border-color:#bbf7d0}.apoReportStats .income span{background:#dcfce7;color:#16a34a}.apoReportStats .income em{color:#16a34a}
.apoReportStats .expense{background:#fff7f7;border-color:#fecaca}.apoReportStats .expense span{background:#fee2e2;color:#ef4444}.apoReportStats .expense em{color:#ef4444}
.apoReportStats .balance{background:#eff6ff;border-color:#bfdbfe}.apoReportStats .balance span{background:#dbeafe;color:#2563eb}.apoReportStats .balance em{color:#2563eb}
.apoReportStats .pending{background:#faf5ff;border-color:#e9d5ff}.apoReportStats .pending span{background:#f3e8ff;color:#7c3aed}.apoReportStats .pending em{color:#7c3aed}
.apoReportTrust{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;align-items:center;background:linear-gradient(135deg,#fff,#fbf8ff);border:1px solid #d8b4fe;border-radius:20px;padding:16px;margin:14px 0 4px;box-shadow:0 14px 30px rgba(109,40,217,.06)}
.apoReportTrust>div{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center}.apoReportTrust>div span{grid-row:1/3;width:48px;height:48px;border-radius:16px;background:#f3e8ff;display:flex;align-items:center;justify-content:center;font-size:24px}.apoReportTrust h2{font-size:16px;margin:0;font-weight:950}.apoReportTrust p{grid-column:2;margin:3px 0 0;color:#64748b;font-size:12px;font-weight:750;line-height:1.35}.apoReportTrust ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;color:#334155;font-size:12px;font-weight:850}.apoReportTrust b{display:block;color:#0f172a;font-weight:950}
@media(max-width:430px){
  .apoReportPage{padding:14px 16px calc(112px + env(safe-area-inset-bottom))}
  .apoReportHero{text-align:left;padding-top:12px}.apoReportHero h1{text-align:center;font-size:24px}.apoReportHero p{text-align:center}.apoReportBrand{font-size:16px}.apoReportActions{top:8px}.apoReportActions button{height:40px;min-width:48px;font-size:16px}
  .apoReportCard{padding:15px;border-radius:18px}.apoReportCardHead{align-items:flex-start}.apoReportTabs span{font-size:10px;padding:7px 8px}
  .apoReportDonutWrap{grid-template-columns:118px 1fr;gap:12px}.apoReportDonut{width:118px;height:118px}.apoReportLegend div{grid-template-columns:10px 1fr auto;gap:6px}.apoReportLegend small{display:none}
  .apoReportStats{grid-template-columns:repeat(2,1fr)}
  .apoReportTrust{grid-template-columns:1fr}.apoReportTrust>div{grid-template-columns:42px 1fr}.apoReportTrust>div span{width:42px;height:42px}
}


/* =============================
   PERFIL APODERADO V56
   ============================= */
body.apoderado-ui-v24 .apoProfilePage{max-width:430px;margin:0 auto;padding:8px 18px 150px;color:#0f172a;}
body.apoderado-ui-v24 .apoProfileTopbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;margin:2px 0 14px;}
body.apoderado-ui-v24 .apoProfileTopbar button{width:40px;height:40px;border:0;background:#fff;border-radius:14px;color:#6d28d9;font-weight:900;font-size:20px;box-shadow:0 8px 24px rgba(15,23,42,.08);}
body.apoderado-ui-v24 .apoProfileTopbar h1{text-align:center;font-size:18px;margin:0;font-weight:950;}
body.apoderado-ui-v24 .apoProfileHero{display:grid;grid-template-columns:94px 1fr;gap:18px;align-items:center;padding:20px;border-radius:26px;background:linear-gradient(135deg,#f3e8ff 0%,#fff 55%,#ede9fe 100%);border:1px solid rgba(221,214,254,.88);box-shadow:0 16px 38px rgba(88,28,135,.10);overflow:hidden;position:relative;}
body.apoderado-ui-v24 .apoProfileHero:after{content:'';position:absolute;right:-54px;top:-42px;width:150px;height:150px;border-radius:999px;background:rgba(124,58,237,.09);}
body.apoderado-ui-v24 .apoProfileAvatar{position:relative;width:92px;height:92px;border-radius:999px;background:linear-gradient(135deg,#7c3aed,#4c1d95);display:grid;place-items:center;color:#fff;font-size:34px;font-weight:950;box-shadow:0 16px 32px rgba(109,40,217,.24);}
body.apoderado-ui-v24 .apoProfileAvatar button{position:absolute;right:-4px;bottom:-4px;width:34px;height:34px;border:0;border-radius:999px;background:#fff;color:#6d28d9;box-shadow:0 10px 24px rgba(15,23,42,.14);font-size:15px;}
body.apoderado-ui-v24 .apoProfileHeroText{position:relative;z-index:1;min-width:0;}
body.apoderado-ui-v24 .apoProfileHeroText h1{margin:0 0 4px;font-size:23px;line-height:1.05;font-weight:950;letter-spacing:-.03em;}
body.apoderado-ui-v24 .apoProfileHeroText p{margin:0 0 10px;color:#6d28d9;font-weight:900;font-size:14px;}
body.apoderado-ui-v24 .apoProfileHeroText div{display:flex;align-items:center;gap:8px;min-width:0;margin:5px 0;color:#334155;font-size:13px;font-weight:750;}
body.apoderado-ui-v24 .apoProfileHeroText span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.apoderado-ui-v24 .apoProfileCard{margin-top:14px;padding:16px;border-radius:22px;background:#fff;border:1px solid rgba(226,232,240,.95);box-shadow:0 16px 38px rgba(15,23,42,.07);}
body.apoderado-ui-v24 .apoProfileCard h2{margin:0 0 12px;font-size:17px;font-weight:950;letter-spacing:-.02em;}
body.apoderado-ui-v24 .apoProfileLockedCard article,.apoProfileRow{display:grid;grid-template-columns:40px 1fr 34px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #eef2f7;}
body.apoderado-ui-v24 .apoProfileLockedCard article:last-of-type,.apoProfileRow:last-child{border-bottom:0;}
body.apoderado-ui-v24 .apoProfileLockedCard article>span,.apoProfileRow>span{width:40px;height:40px;border-radius:15px;background:#f3e8ff;color:#6d28d9;display:grid;place-items:center;font-size:20px;}
body.apoderado-ui-v24 .apoProfileLockedCard b,.apoProfileRow b{display:block;font-size:14px;font-weight:950;color:#0f172a;}
body.apoderado-ui-v24 .apoProfileLockedCard small,.apoProfileRow small{display:block;margin-top:2px;font-size:13px;font-weight:700;color:#64748b;}
body.apoderado-ui-v24 .apoProfileLockedCard p{margin:12px 0 0;padding:12px;border-radius:16px;background:#f7f2ff;color:#334155;font-size:13px;font-weight:700;line-height:1.35;}
body.apoderado-ui-v24 .apoProfileLock{color:#94a3b8;font-size:15px;justify-self:end;}
body.apoderado-ui-v24 .apoProfileEdit{width:34px;height:34px;border:0;background:transparent;color:#6d28d9;font-size:22px;font-weight:900;justify-self:end;border-radius:12px;}
body.apoderado-ui-v24 .apoProfileEdit:active{background:#f3e8ff;}
body.apoderado-ui-v24 .apoProfileCardHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px;}
body.apoderado-ui-v24 .apoProfileCardHead h2{margin:0;}
body.apoderado-ui-v24 .apoProfileCardHead p{margin:4px 0 0;color:#64748b;font-size:12px;font-weight:700;}
body.apoderado-ui-v24 .apoProfileCardHead button{border:0;background:transparent;color:#6d28d9;font-weight:950;font-size:13px;}
body.apoderado-ui-v24 .apoProfileChannels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
body.apoderado-ui-v24 .apoProfileChannel{border-radius:18px;padding:12px 8px;text-align:center;background:#f8fafc;border:1px solid #edf2f7;}
body.apoderado-ui-v24 .apoProfileChannel span{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;margin:0 auto 8px;font-size:22px;}
body.apoderado-ui-v24 .apoProfileChannel.push span{background:#f3e8ff;color:#6d28d9}.apoProfileChannel.email span{background:#dcfce7}.apoProfileChannel.sms span{background:#ffedd5}
body.apoderado-ui-v24 .apoProfileChannel b{display:block;font-size:13px;font-weight:950;}.apoProfileChannel small{display:inline-block;margin-top:5px;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:900;background:#f3e8ff;color:#6d28d9;}
body.apoderado-ui-v24 .apoProfileSummaryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
body.apoderado-ui-v24 .apoProfileSummaryGrid article{border-radius:18px;padding:13px 8px;text-align:center;background:#f8fafc;border:1px solid #edf2f7;}
body.apoderado-ui-v24 .apoProfileSummaryGrid span{display:block;font-size:20px;margin-bottom:5px}.apoProfileSummaryGrid b{font-size:22px;font-weight:950}.apoProfileSummaryGrid small{display:block;color:#64748b;font-size:11px;font-weight:750;margin-top:4px;}
body.apoderado-ui-v24 .apoProfilePrefsIntro{box-shadow:none;background:transparent;border:0;padding:6px 2px;margin-top:0}.apoProfilePrefsIntro h2{font-size:18px}.apoProfilePrefsIntro p{margin:0;color:#64748b;font-size:13px;font-weight:700;}
body.apoderado-ui-v24 .apoProfilePrefHead{display:grid;grid-template-columns:46px 1fr 54px;gap:12px;align-items:center;margin-bottom:8px;}
body.apoderado-ui-v24 .apoProfilePrefHead>span{width:46px;height:46px;border-radius:18px;display:grid;place-items:center;background:#f3e8ff;font-size:22px;}.apoProfilePrefsBlock.email .apoProfilePrefHead>span{background:#dcfce7}.apoProfilePrefsBlock.sms .apoProfilePrefHead>span{background:#ffedd5}
body.apoderado-ui-v24 .apoProfilePrefHead h2{margin:0 0 3px;font-size:16px}.apoProfilePrefHead p{margin:0;color:#64748b;font-size:12px;font-weight:700;line-height:1.3;}
body.apoderado-ui-v24 .apoProfileSwitch{width:50px;height:30px;border:0;border-radius:999px;background:#e2e8f0;padding:3px;display:inline-flex;align-items:center;justify-content:flex-start;transition:.18s ease;}
body.apoderado-ui-v24 .apoProfileSwitch em{width:24px;height:24px;background:#fff;border-radius:999px;box-shadow:0 3px 8px rgba(15,23,42,.18);transition:.18s ease;}
body.apoderado-ui-v24 .apoProfileSwitch.on{background:#7c3aed;justify-content:flex-end;}
body.apoderado-ui-v24 .apoProfileToggleRow{width:100%;border:0;background:transparent;display:grid;grid-template-columns:1fr 54px;gap:12px;align-items:center;text-align:left;padding:12px 0;border-top:1px solid #eef2f7;}
body.apoderado-ui-v24 .apoProfileToggleRow b{display:block;font-size:14px;font-weight:950;color:#0f172a;}.apoProfileToggleRow small{display:block;margin-top:3px;color:#64748b;font-size:12px;font-weight:700;}
body.apoderado-ui-v24 .apoProfileInfoNote{margin:14px 0 0;padding:14px 16px;border-radius:18px;background:#f7f2ff;border:1px solid rgba(221,214,254,.95);color:#475569;font-size:13px;font-weight:750;line-height:1.4;}
@media(max-width:380px){body.apoderado-ui-v24 .apoProfileHero{grid-template-columns:80px 1fr;padding:16px}body.apoderado-ui-v24 .apoProfileAvatar{width:78px;height:78px;font-size:28px}body.apoderado-ui-v24 .apoProfileHeroText h1{font-size:20px}body.apoderado-ui-v24 .apoProfileChannels,body.apoderado-ui-v24 .apoProfileSummaryGrid{gap:7px}}
