:root {
  --np-bg: #030809;
  --np-surface: #081012;
  --np-surface-soft: #0c1517;
  --np-line: rgba(255, 255, 255, 0.09);
  --np-text: #f5f8f7;
  --np-muted: #8f9b99;
  --np-accent: var(--bs-primary, #76e900);
  --np-accent-2: var(--bs-secondary, #123d1e);
  --np-radius: 22px;
}

/* Identidad unificada para administración y páginas internas. */
body.is-admin-area,
body:not(.is-marketing-home):not(.is-client-area) {
  min-height: 100vh;
  color: #e8efed;
  background: radial-gradient(circle at 84% 4%, rgba(91, 214, 0, 0.09), transparent 28%), #030a0b;
}

.is-admin-area .header,
body:not(.is-marketing-home):not(.is-client-area) .header {
  border-bottom: 1px solid rgba(255,255,255,.07);
  background: rgba(3, 10, 11, .9);
  backdrop-filter: blur(18px);
}

.is-admin-area .navbar .nav-link,
body:not(.is-marketing-home):not(.is-client-area) .navbar .nav-link { color: #9eaaa7 !important; }
.is-admin-area .navbar .nav-link:hover,
.is-admin-area .navbar .nav-link.active,
body:not(.is-marketing-home):not(.is-client-area) .navbar .nav-link:hover,
body:not(.is-marketing-home):not(.is-client-area) .navbar .nav-link.active { color: var(--nex-green) !important; }

.is-admin-area .container > .card,
body:not(.is-marketing-home):not(.is-client-area) .container > .card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 24px;
  color: #e8efed;
  background: rgba(8, 18, 19, .88);
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
}

.is-admin-area .card,
.is-admin-area .accordion-item,
.is-admin-area .accordion-button,
.is-admin-area .modal-content,
body:not(.is-marketing-home):not(.is-client-area) .card,
body:not(.is-marketing-home):not(.is-client-area) .modal-content {
  border-color: rgba(255,255,255,.08);
  color: #e8efed;
  background-color: #091314;
}

.is-admin-area .card-header,
.is-admin-area .card-footer,
body:not(.is-marketing-home):not(.is-client-area) .card-header,
body:not(.is-marketing-home):not(.is-client-area) .card-footer {
  border-color: rgba(255,255,255,.07);
  background: rgba(255,255,255,.018);
}

.is-admin-area h1,.is-admin-area h2,.is-admin-area h3,.is-admin-area h4,.is-admin-area h5,.is-admin-area h6,
body:not(.is-marketing-home):not(.is-client-area) h1,
body:not(.is-marketing-home):not(.is-client-area) h2,
body:not(.is-marketing-home):not(.is-client-area) h3 { color: #f4f8f7 !important; }
.is-admin-area .text-primary { color: var(--nex-green) !important; }
.is-admin-area .text-body,.is-admin-area .text-muted,.is-admin-area small { color: #8e9b98 !important; }

.is-admin-area .form-control,
.is-admin-area .form-select,
body:not(.is-marketing-home):not(.is-client-area) .form-control,
body:not(.is-marketing-home):not(.is-client-area) .form-select {
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  color: #eef4f2;
  background: #050d0e;
}
.is-admin-area .form-control:focus,
body:not(.is-marketing-home):not(.is-client-area) .form-control:focus {
  border-color: rgba(111,239,25,.65);
  box-shadow: 0 0 0 3px rgba(111,239,25,.1);
}
.is-admin-area .form-control::placeholder { color: #56625f; }

.is-admin-area .accordion-button:not(.collapsed) {
  color: var(--nex-green);
  background: rgba(83,192,7,.1);
  box-shadow: inset 3px 0 var(--nex-green);
}
.is-admin-area .accordion-button::after { filter: invert(1); }
.is-admin-area a { text-decoration: none; }
.is-admin-area .table { --bs-table-bg: transparent; --bs-table-color: #dce5e2; --bs-table-border-color: rgba(255,255,255,.08); }

.credential-summary {
  display: flex;
  margin-top: 12px;
  padding: 10px 12px;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  border: 1px solid rgba(111,239,25,.14);
  border-radius: 12px;
  background: rgba(111,239,25,.035);
}
.credential-summary > span { color: #9fabaa; font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.credential-summary code { padding: 5px 9px; border-radius: 7px; color: #baff83; background: #030909; }
.credential-summary em { margin-left: auto; color: #71807c; font-size: .7rem; font-style: normal; }
.copy-password { border: 0; color: var(--nex-green); font-size: .72rem; background: transparent; }

.security-notice {
  display: grid;
  max-width: 1120px;
  margin: 14px auto 18px;
  padding: 16px 18px;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 14px;
  border: 1px solid rgba(111,239,25,.22);
  border-radius: 18px;
  color: #eef4f2;
  background: linear-gradient(110deg, rgba(49,117,5,.22), rgba(8,18,19,.94) 50%);
}
.security-notice__icon { display:grid; width:42px; height:42px; place-items:center; border-radius:13px; color:var(--nex-green); background:rgba(111,239,25,.1); }
.security-notice__copy { display:flex; flex-direction:column; gap:2px; }
.security-notice__copy span { color:#91a09c; font-size:.78rem; }
.security-notice__error { color:#ff6e75 !important; }
.security-notice .btn-link { color:#8e9b98; font-size:.75rem; text-decoration:none; }
.security-modal .modal-header small { color:var(--nex-green); font-size:.62rem; letter-spacing:.16em; }
.security-hint { display:block; margin-top:10px; color:#71807c; }
.security-toast { max-width:1120px; margin:12px auto; padding:12px 16px; border-radius:14px; color:#baff8b; background:rgba(73,170,7,.12); }
.security-toast i { margin-right:8px; }

body:not(.is-marketing-home):not(.is-client-area) .contact-info p { color:#aab5b2 !important; }
body:not(.is-marketing-home):not(.is-client-area) .contact-image img,
body:not(.is-marketing-home):not(.is-client-area) img[src*="contactanos"] { filter: invert(1) hue-rotate(65deg) saturate(2); opacity:.7; }

@media (max-width: 760px) {
  .security-notice { margin-inline:14px; grid-template-columns:auto 1fr; }
  .security-notice > .btn,.security-notice > form { grid-column:2; }
  .credential-summary em { width:100%; margin-left:0; }
  .is-admin-area .container > .card { border-radius:18px; }
}

body.splash-visible {
  overflow: hidden;
}

.brand-splash {
  position: fixed;
  inset: 0;
  z-index: 200000;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--np-accent) 13%, transparent), transparent 28rem),
    #020708;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.45s ease, visibility 0.45s ease;
}

.brand-splash--leaving {
  opacity: 0;
  visibility: hidden;
}

.brand-splash__glow {
  position: absolute;
  width: min(72vw, 620px);
  aspect-ratio: 1;
  border: 1px solid color-mix(in srgb, var(--np-accent) 18%, transparent);
  border-radius: 50%;
  box-shadow: 0 0 120px color-mix(in srgb, var(--np-accent) 12%, transparent);
  animation: splash-pulse 2.4s ease-in-out infinite;
}

.brand-splash__identity {
  position: relative;
  z-index: 1;
  display: flex;
  width: min(80vw, 420px);
  flex-direction: column;
  align-items: center;
  gap: 18px;
}

.brand-splash__logo {
  max-width: min(70vw, 320px);
  max-height: 130px;
  object-fit: contain;
  filter: drop-shadow(0 12px 32px rgba(0, 0, 0, 0.5));
}

.brand-splash__mark {
  display: grid;
  width: 112px;
  height: 112px;
  place-items: center;
  border-radius: 32px 10px 32px 10px;
  color: #071005;
  background: linear-gradient(145deg, #d7ff42, var(--np-accent), var(--np-accent-2));
  box-shadow: 0 0 46px color-mix(in srgb, var(--np-accent) 34%, transparent);
  font-size: 4.3rem;
  font-weight: 900;
  line-height: 1;
}

.brand-splash__name {
  font-size: clamp(2rem, 7vw, 3.6rem);
  letter-spacing: -0.055em;
}

.brand-splash__loader {
  width: 48px;
  height: 48px;
  margin-top: 14px;
  border: 4px solid rgba(255, 255, 255, 0.1);
  border-top-color: var(--np-accent);
  border-right-color: var(--np-accent);
  border-radius: 50%;
  animation: splash-spin 0.85s linear infinite;
}

.brand-splash__label {
  color: var(--np-muted);
  font-size: 0.88rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@keyframes splash-spin {
  to { transform: rotate(360deg); }
}

@keyframes splash-pulse {
  50% { transform: scale(1.06); opacity: 0.56; }
}

.is-client-area {
  min-height: 100vh;
  color: var(--np-text);
  background:
    radial-gradient(circle at 82% 4%, color-mix(in srgb, var(--np-accent) 8%, transparent), transparent 28rem),
    linear-gradient(180deg, #020607 0%, var(--np-bg) 100%);
}

.is-client-area .header,
.is-client-area .footer {
  display: none;
}

.client-shell {
  width: min(100% - 32px, 1040px);
  margin-inline: auto;
  padding: 28px 0 120px;
}

.client-shell > .mb-3.mt-4.row,
.client-shell > .card.mb-3.border-0 {
  display: none;
}

.client-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 28px;
}

.client-brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.client-brand img {
  width: auto;
  max-width: 190px;
  height: 44px;
  object-fit: contain;
}

.client-brand__fallback {
  color: var(--np-text);
  font-size: 1.35rem;
  font-weight: 800;
}

.client-brand__dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--np-accent);
  box-shadow: 0 0 20px var(--np-accent);
}

.client-topbar__actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.client-icon-btn {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid var(--np-line);
  border-radius: 14px;
  color: var(--np-text);
  background: rgba(255, 255, 255, 0.035);
  text-decoration: none;
}

.client-greeting {
  margin-bottom: 22px;
}

.client-eyebrow {
  margin: 0 0 5px;
  color: var(--np-accent);
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.client-greeting h1 {
  margin: 0;
  color: var(--np-text);
  font-size: clamp(1.8rem, 5vw, 3rem);
  font-weight: 720;
  letter-spacing: -0.045em;
}

.client-greeting p {
  margin: 7px 0 0;
  color: var(--np-muted);
}

.account-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(24px, 5vw, 42px);
  border: 1px solid color-mix(in srgb, var(--np-accent) 24%, var(--np-line));
  border-radius: 28px;
  background:
    radial-gradient(circle at 84% 34%, color-mix(in srgb, var(--np-accent) 23%, transparent), transparent 26%),
    linear-gradient(125deg, #081112 5%, color-mix(in srgb, var(--np-accent-2) 50%, #071012) 100%);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.34);
}

.account-hero::after {
  content: "";
  position: absolute;
  top: -34%;
  right: -8%;
  width: 360px;
  height: 360px;
  border: 1px solid color-mix(in srgb, var(--np-accent) 23%, transparent);
  border-radius: 50%;
  box-shadow: inset 0 0 80px color-mix(in srgb, var(--np-accent) 7%, transparent);
}

.account-hero__content {
  position: relative;
  z-index: 1;
}

.account-hero__label {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 12px;
  color: #b2bcba;
  font-size: 0.92rem;
}

.account-balance {
  margin: 0;
  color: #fff;
  font-size: clamp(2.25rem, 8vw, 4.8rem);
  font-weight: 750;
  letter-spacing: -0.065em;
  line-height: 1;
}

.account-balance small {
  color: #aab6b3;
  font-size: 0.2em;
  font-weight: 650;
  letter-spacing: 0.04em;
}

.account-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.account-meta__item {
  min-width: 150px;
  padding: 12px 15px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(12px);
}

.account-meta__item span {
  display: block;
  color: #8e9b98;
  font-size: 0.72rem;
  text-transform: uppercase;
}

.account-meta__item strong {
  display: block;
  margin-top: 3px;
  color: var(--np-text);
  font-size: 0.94rem;
}

.status-active {
  color: var(--np-accent) !important;
}

.quick-actions {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid var(--np-line);
  border-radius: var(--np-radius);
  background: rgba(8, 16, 18, 0.82);
}

.quick-action {
  display: flex;
  min-width: 0;
  padding: 8px 4px;
  align-items: center;
  flex-direction: column;
  gap: 9px;
  border: 0;
  color: var(--np-text);
  background: transparent;
  font-size: 0.75rem;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}

.quick-action__icon {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--np-accent) 20%, var(--np-line));
  border-radius: 18px;
  color: var(--np-accent);
  background: color-mix(in srgb, var(--np-accent) 8%, #0c1415);
  font-size: 1.25rem;
  transition: transform 0.2s ease, background 0.2s ease;
}

.quick-action:hover .quick-action__icon {
  transform: translateY(-3px);
  background: color-mix(in srgb, var(--np-accent) 16%, #0c1415);
}

.dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(290px, 0.65fr);
  gap: 18px;
}

.np-panel,
.client-shell .details > .card,
.client-shell #tarjeta-container > .card {
  border: 1px solid var(--np-line);
  border-radius: var(--np-radius);
  color: var(--np-text);
  background: rgba(8, 16, 18, 0.9);
  box-shadow: none;
}

.np-panel {
  padding: 22px;
}

.np-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.np-panel__header h2 {
  margin: 0;
  color: var(--np-text);
  font-size: 1.08rem;
  font-weight: 700;
}

.np-panel__link {
  color: var(--np-accent);
  font-size: 0.82rem;
  text-decoration: none;
}

.movement-list {
  display: grid;
  gap: 5px;
}

.movement-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.movement-item:last-child {
  border-bottom: 0;
}

.movement-item__icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  color: var(--np-accent);
  background: color-mix(in srgb, var(--np-accent) 11%, transparent);
}

.movement-item--out .movement-item__icon {
  color: #ff8a82;
  background: rgba(255, 88, 77, 0.1);
}

.movement-item__main strong,
.movement-item__amount strong {
  display: block;
  color: var(--np-text);
  font-size: 0.9rem;
}

.movement-item__main span,
.movement-item__amount span {
  color: var(--np-muted);
  font-size: 0.74rem;
}

.movement-item__amount {
  text-align: right;
}

.account-summary {
  display: grid;
  gap: 12px;
}

.summary-row {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.summary-row span {
  color: var(--np-muted);
  font-size: 0.78rem;
}

.summary-row strong {
  color: var(--np-text);
  font-size: 0.84rem;
  text-align: right;
}

.client-shell .details {
  margin-top: 18px !important;
}

.client-shell .details .card-body,
.client-shell #tarjeta-container .card-body {
  padding: 22px;
}

.client-shell .details h5,
.client-shell .details h6 {
  color: var(--np-text);
}

.client-shell .details .text_normal,
.client-shell .details p,
.client-shell .details span {
  color: var(--np-muted);
}

.client-shell .details .list-group-item {
  border-color: var(--np-line);
  color: var(--np-text);
  background: transparent;
}

.client-shell .tarjeta {
  background:
    radial-gradient(circle at 85% 10%, color-mix(in srgb, var(--np-accent) 30%, transparent), transparent 34%),
    linear-gradient(135deg, #0a1112, color-mix(in srgb, var(--np-accent-2) 65%, #06100b));
}

.client-bottom-nav {
  position: fixed;
  z-index: 1040;
  right: 50%;
  bottom: 16px;
  display: flex;
  width: min(calc(100% - 28px), 520px);
  padding: 9px;
  justify-content: space-around;
  transform: translateX(50%);
  border: 1px solid var(--np-line);
  border-radius: 22px;
  background: rgba(5, 12, 13, 0.91);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(22px);
}

.client-bottom-nav a,
.client-bottom-nav button {
  display: grid;
  min-width: 58px;
  padding: 7px 8px;
  place-items: center;
  gap: 2px;
  border: 0;
  color: #9aa5a3;
  background: transparent;
  font-size: 0.67rem;
  text-decoration: none;
}

.client-bottom-nav i {
  font-size: 1.25rem;
}

.client-bottom-nav .is-active {
  color: var(--np-accent);
}

.client-shell .modal-content {
  border: 1px solid var(--np-line);
  border-radius: 22px;
  color: var(--np-text);
  background: #0a1214;
}

.client-shell .modal-header,
.client-shell .modal-footer {
  border-color: var(--np-line);
}

.client-shell .form-control,
.client-shell .form-select {
  border-color: var(--np-line);
  color: var(--np-text);
  background: #0d1719;
}

@media (max-width: 760px) {
  .client-shell {
    width: min(100% - 22px, 520px);
    padding-top: 18px;
  }

  .client-topbar {
    margin-bottom: 22px;
  }

  .client-brand img {
    max-width: 150px;
    height: 36px;
  }

  .account-hero {
    padding: 24px 20px;
    border-radius: 23px;
  }

  .account-meta__item {
    min-width: calc(50% - 5px);
    flex: 1;
  }

  .quick-actions {
    grid-template-columns: repeat(3, 1fr);
    padding: 12px 8px;
  }

  .dashboard-grid {
    grid-template-columns: 1fr;
  }

  .movement-item {
    grid-template-columns: 40px minmax(0, 1fr) auto;
    gap: 9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .brand-splash__glow,
  .brand-splash__loader {
    animation-duration: 0.01ms;
  }
}

.is-marketing-home {
  color: var(--np-text);
  background: var(--np-bg);
}

.is-marketing-home .nav-bar {
  position: relative;
  z-index: 20;
  border-bottom: 1px solid var(--np-line);
  background: rgba(3, 8, 9, 0.94);
}

.is-marketing-home .navbar-light .navbar-nav .nav-link {
  color: #c7d0ce;
}

.is-marketing-home .navbar-light .navbar-nav .nav-link:hover,
.is-marketing-home .navbar-light .navbar-nav .nav-link.active {
  color: var(--np-accent);
}

.is-marketing-home .header-carousel .header-carousel-item {
  height: min(760px, calc(100vh - 88px));
  min-height: 620px;
  background:
    radial-gradient(circle at 76% 50%, color-mix(in srgb, var(--np-accent) 17%, transparent), transparent 28rem),
    linear-gradient(105deg, #020607 30%, #061012 100%) !important;
}

.is-marketing-home .header-carousel .header-carousel-item .carousel-caption {
  background: transparent;
}

.is-marketing-home .header-carousel h1 {
  max-width: 800px;
  font-size: clamp(3rem, 6vw, 6.3rem);
  font-weight: 760;
  letter-spacing: -0.065em;
  line-height: 0.98;
}

.is-marketing-home .home-accent {
  display: block;
  color: var(--np-accent);
}

.is-marketing-home .header-carousel p.fs-5 {
  max-width: 660px;
  color: #a8b2b0;
  line-height: 1.75;
}

.is-marketing-home .header-carousel .calrousel-img img {
  filter: drop-shadow(0 28px 50px rgba(0, 0, 0, 0.6));
}

.is-marketing-home > .bg-white,
.is-marketing-home > .bg-light {
  color: var(--np-text);
  background: #050b0c !important;
}

.is-marketing-home > .bg-light {
  background: #081012 !important;
}

.is-marketing-home > .bg-primary {
  background:
    radial-gradient(circle at 50% 0, color-mix(in srgb, var(--np-accent) 15%, transparent), transparent 32rem),
    #071011 !important;
}

.is-marketing-home h2,
.is-marketing-home h5,
.is-marketing-home h6 {
  color: var(--np-text);
}

.is-marketing-home .text-muted {
  color: #929d9b !important;
}

.is-marketing-home .card {
  border: 1px solid var(--np-line) !important;
  border-radius: 20px;
  color: var(--np-text);
  background: #0a1214;
  box-shadow: none !important;
}

.is-marketing-home .card .border-bottom {
  border-color: var(--np-line) !important;
}

.is-marketing-home .footer {
  border-top: 1px solid var(--np-line);
  background: #020607;
}

@media (max-width: 991px) {
  .is-marketing-home .navbar-collapse {
    margin-top: 14px;
    border: 1px solid var(--np-line);
    background: #081012;
  }

  .is-marketing-home .header-carousel .header-carousel-item {
    height: auto;
    min-height: 920px;
  }

  .is-marketing-home .header-carousel .carousel-caption {
    padding-top: 100px;
  }

  .is-marketing-home .header-carousel .carousel-caption .row {
    margin-inline: 0;
  }

  .is-marketing-home .header-carousel .carousel-caption .container {
    padding-inline: 22px;
  }

  .is-marketing-home .header-carousel h1 {
    font-size: clamp(2.45rem, 12vw, 4rem);
  }

  .is-marketing-home .header-carousel .d-flex.flex-shrink-0 {
    flex-wrap: wrap;
    gap: 10px;
  }

  .is-marketing-home .header-carousel .d-flex.flex-shrink-0 .btn {
    margin-right: 0 !important;
  }
}

/* Client banking refinement */
.navbar-dashboard {
  display: none !important;
}

.client-topbar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  min-height: 54px;
}

.client-topbar__hello {
  color: #dce3e1;
  font-size: 1rem;
  white-space: nowrap;
}

.client-topbar__hello strong {
  color: var(--np-accent);
  font-weight: 650;
}

.client-brand {
  justify-self: center;
}

.client-topbar__actions {
  justify-self: end;
}

.client-icon-btn {
  position: relative;
}

.client-icon-btn__dot {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 7px;
  height: 7px;
  border: 1px solid #071011;
  border-radius: 50%;
  background: var(--np-accent);
}

.account-switcher {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin-bottom: 18px;
  padding: 5px;
  border: 1px solid rgba(255, 255, 255, 0.055);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
}

.account-switcher__item {
  display: flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 0;
  border-radius: 14px;
  color: #8f9a98;
  background: transparent;
  font-size: 0.88rem;
}

.account-switcher__item.is-selected {
  color: #fff;
  background: linear-gradient(110deg, color-mix(in srgb, var(--np-accent) 48%, #17340a), color-mix(in srgb, var(--np-accent) 17%, #15220f));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--np-accent) 28%, transparent);
}

.account-switcher__item.is-selected i {
  color: var(--np-accent);
}

.account-hero {
  min-height: 285px;
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 82% 48%, color-mix(in srgb, var(--np-accent) 18%, transparent), transparent 28%),
    linear-gradient(125deg, #091113 4%, color-mix(in srgb, var(--np-accent-2) 45%, #071012) 100%);
}

.account-hero::after {
  opacity: 0.55;
}

.account-hero__content {
  width: min(72%, 650px);
}

.account-hero__summary {
  display: flex;
  margin-top: 22px;
  align-items: center;
  gap: 12px;
  color: #a6b0ae;
  font-size: 0.82rem;
}

.account-hero__summary strong {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.76rem;
  font-weight: 650;
}

.status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 10px currentColor;
}

.account-hero__visual {
  position: absolute;
  z-index: 1;
  right: clamp(24px, 7vw, 72px);
  bottom: 42px;
  color: color-mix(in srgb, var(--np-accent) 74%, #14350c);
  filter: drop-shadow(0 18px 30px color-mix(in srgb, var(--np-accent) 15%, transparent));
}

.account-hero__visual > i {
  font-size: clamp(5.4rem, 13vw, 9rem);
  line-height: 1;
}

.account-hero__coin {
  position: absolute;
  z-index: 2;
  top: -23px;
  left: 49%;
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  border: 2px solid #c7ff26;
  border-radius: 50%;
  color: #142005;
  background: linear-gradient(145deg, #eaff58, var(--np-accent));
  font-weight: 900;
  box-shadow: 0 0 20px color-mix(in srgb, var(--np-accent) 28%, transparent);
}

.quick-actions {
  grid-template-columns: repeat(4, 1fr);
  padding-block: 14px;
}

.quick-action__icon {
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.045);
}

.account-services {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 18px;
}

.account-services button {
  display: flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid var(--np-line);
  border-radius: 12px;
  color: #aeb8b6;
  background: rgba(255, 255, 255, 0.025);
  font-size: 0.73rem;
}

@media (max-width: 760px) {
  .client-shell {
    width: min(100% - 24px, 520px);
  }

  .client-topbar {
    margin-bottom: 18px;
  }

  .client-brand img {
    max-width: 132px;
    height: 38px;
  }

  .client-brand__fallback {
    max-width: 128px;
    overflow: hidden;
    font-size: 1.08rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .client-logout-btn {
    display: none;
  }

  .client-topbar__hello {
    font-size: 0.9rem;
  }

  .client-icon-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
  }

  .account-hero {
    min-height: 300px;
    align-items: flex-start;
    padding: 28px 22px;
  }

  .account-hero__content {
    width: 100%;
  }

  .account-balance {
    max-width: 76%;
    font-size: clamp(2.05rem, 10vw, 3.2rem);
  }

  .account-hero__summary {
    max-width: 65%;
    margin-top: 16px;
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .account-hero__visual {
    right: 18px;
    bottom: 34px;
  }

  .account-hero__visual > i {
    font-size: clamp(5.2rem, 24vw, 7.4rem);
  }

  .quick-actions {
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
    padding-inline: 6px;
  }

  .quick-action {
    font-size: 0.69rem;
  }

  .quick-action__icon {
    width: 47px;
    height: 47px;
  }

  .np-panel {
    padding: 19px 17px;
  }

  .movement-item__amount strong {
    font-size: 0.8rem;
  }
}

@media (max-width: 390px) {
  .client-topbar__hello {
    max-width: 82px;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .client-brand img {
    max-width: 108px;
  }
}

/* Resumen de cuenta abierto: más ligero y cercano a una banca real. */
.account-hero {
  display: block;
  min-height: 0;
  padding: 20px 4px 8px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.account-hero::after {
  display: none;
}

.account-hero__content {
  width: 100%;
}

.account-balance {
  display: flex;
  max-width: none;
  margin-top: 12px;
  align-items: baseline;
  color: #f7fbfa;
  line-height: 0.95;
}

.account-balance__currency {
  margin-right: 9px;
  font-size: 0.58em;
  font-weight: 650;
}

.account-balance__major {
  letter-spacing: -0.055em;
}

.account-balance__minor {
  margin-left: 3px;
  font-size: 0.43em;
  font-weight: 650;
  letter-spacing: -0.02em;
}

.account-balance small {
  margin-left: 9px;
  font-size: 0.16em;
  letter-spacing: 0.08em;
}

.account-hero__facts {
  position: static;
  display: grid;
  margin-top: 25px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
}

.account-hero__facts > div {
  padding: 16px 18px;
}

.account-hero__facts > div:first-child {
  padding-left: 0;
}

.account-hero__facts > div:last-child {
  padding-right: 0;
}

.account-hero__facts span {
  color: #6f7f7b;
}

.account-hero__facts strong {
  color: #e9efed;
  font-size: 0.8rem;
}

.account-hero__fee {
  margin: 11px 0 0;
  color: #71807c;
  font-size: 0.67rem;
}

.account-hero__fee i {
  margin-right: 5px;
  color: var(--nex-green);
}

@media (max-width: 760px) {
  .account-hero {
    min-height: 0;
    padding: 16px 2px 6px;
  }

  .account-balance {
    max-width: none;
    margin-top: 10px;
  }

  .account-hero__facts {
    margin-top: 21px;
    grid-template-columns: 1fr;
  }

  .account-hero__facts > div,
  .account-hero__facts > div:first-child,
  .account-hero__facts > div:last-child {
    padding: 11px 0;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

  .account-hero__facts > div + div {
    border-top: 1px solid rgba(255, 255, 255, 0.065);
    border-left: 0;
  }

  .account-hero__facts strong {
    font-size: 0.72rem;
  }
}

/* Transfer form */
.bank-transfer-modal .modal-dialog,
.transfer-receipt-modal .modal-dialog {
  width: min(calc(100% - 24px), 480px);
  margin-inline: auto;
}

.bank-transfer-modal .modal-content {
  overflow: hidden;
  border: 1px solid var(--np-line);
  border-radius: 24px;
  color: var(--np-text);
  background: #091113;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.7);
}

.bank-transfer-modal .modal-header {
  padding: 22px 24px 18px;
  border-color: var(--np-line);
}

.bank-transfer-modal .modal-title {
  color: var(--np-text);
  font-size: 1.35rem;
  font-weight: 720;
  letter-spacing: -0.025em;
}

.transfer-modal__eyebrow {
  color: var(--np-accent);
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.bank-transfer-modal .btn-close {
  filter: invert(1) grayscale(1);
  opacity: 0.75;
}

.bank-transfer-modal .modal-body {
  max-height: min(68vh, 620px);
  padding: 20px 24px 8px;
  overflow-y: auto;
}

.bank-transfer-modal .form-label {
  margin-bottom: 7px;
  color: #b9c2c0;
  font-size: 0.78rem;
  font-weight: 600;
}

.bank-transfer-modal .form-control,
.bank-transfer-modal .form-select,
.bank-transfer-modal .input-group-text {
  min-height: 50px;
  border-color: rgba(255, 255, 255, 0.11);
  color: #f4f7f6;
  background: #0d181a;
  font-size: 0.95rem;
  box-shadow: none;
}

.bank-transfer-modal .form-control::placeholder {
  color: #5f6c69;
  opacity: 1;
}

.bank-transfer-modal .form-control:focus,
.bank-transfer-modal .form-select:focus {
  border-color: color-mix(in srgb, var(--np-accent) 70%, #fff);
  background: #0f1c1e;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--np-accent) 12%, transparent);
}

.bank-transfer-modal .input-group-text {
  color: var(--np-accent);
  font-weight: 750;
}

.bank-transfer-modal .modal-footer {
  padding: 16px 24px 22px;
  border: 0;
}

.bank-transfer-modal .modal-footer .btn {
  min-height: 52px;
  border-radius: 14px;
}

/* Transfer receipt */
.transfer-receipt-modal .modal-content {
  border: 0;
  background: transparent;
}

.transfer-receipt {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 26px !important;
  color: var(--np-text) !important;
  background: #0a1214 !important;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.72);
}

.transfer-receipt__top {
  display: flex;
  padding: 22px 24px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--np-line);
}

.transfer-receipt__top img {
  width: auto;
  max-width: 145px;
  height: 34px;
  object-fit: contain;
}

.transfer-receipt__top strong {
  color: var(--np-text);
  font-size: 1.05rem;
}

.transfer-receipt__top > span {
  color: var(--np-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.transfer-receipt__hero {
  padding: 28px 24px 24px;
  text-align: center;
  background:
    radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--np-accent) 12%, transparent), transparent 42%),
    #0a1214;
}

.transfer-receipt__icon {
  display: grid;
  width: 54px;
  height: 54px;
  margin: 0 auto 13px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--np-accent) 35%, transparent);
  border-radius: 50%;
  color: var(--np-accent);
  background: color-mix(in srgb, var(--np-accent) 9%, transparent);
  font-size: 1.35rem;
}

.transfer-receipt__hero p {
  margin: 0 0 4px;
  color: #a8b2b0;
  font-size: 0.82rem;
}

.transfer-receipt__hero h5 {
  margin: 0;
  color: #fff;
  font-size: clamp(2.25rem, 10vw, 3.45rem);
  font-weight: 760;
  letter-spacing: -0.055em;
}

.transfer-receipt__details {
  display: grid;
  padding: 4px 24px 10px;
}

.transfer-receipt__details > div {
  display: grid;
  grid-template-columns: minmax(110px, 0.8fr) minmax(0, 1.2fr);
  gap: 18px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.transfer-receipt__details span {
  color: var(--np-muted);
  font-size: 0.75rem;
}

.transfer-receipt__details strong {
  overflow-wrap: anywhere;
  color: #e8edec;
  font-size: 0.8rem;
  font-weight: 620;
  text-align: right;
}

.transfer-receipt__status {
  margin: 12px 24px 6px;
  padding: 13px 15px;
  border: 1px solid rgba(255, 190, 55, 0.16);
  border-radius: 13px;
  background: rgba(255, 190, 55, 0.055);
}

.transfer-receipt__status span {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #ffc95e;
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: capitalize;
}

.transfer-receipt__status small {
  display: block;
  margin-top: 4px;
  color: #8e9997;
  font-size: 0.69rem;
  line-height: 1.45;
}

.transfer-receipt__footer {
  padding: 16px 24px 24px;
}

.transfer-receipt__footer .btn {
  min-height: 50px;
  border-radius: 14px;
}

@media (max-width: 560px) {
  .bank-transfer-modal .modal-dialog {
    align-items: flex-end;
    min-height: calc(100% - 16px);
    margin-bottom: 8px;
  }

  .bank-transfer-modal .modal-content {
    border-radius: 24px 24px 18px 18px;
  }

  .bank-transfer-modal .modal-body {
    max-height: 63vh;
  }
}

/* Balance movement indicators and fee disclosure */
.client-shell #tarjeta-container {
  margin-top: 22px;
}

.client-shell #tarjeta-container > .tarjeta {
  margin-top: 0;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.movement-item:not(.movement-item--out) .movement-item__amount strong {
  color: #76e66a;
}

.movement-item--out .movement-item__amount strong {
  color: #ff716a;
}

.movement-item__main small {
  display: block;
  margin-top: 3px;
  color: #d49b55;
  font-size: 0.65rem;
}

.movement-item__main .movement-item__legacy {
  color: #697572;
}

.movement-item:not(.movement-item--out) {
  border-left: 2px solid rgba(83, 211, 92, 0.34);
  padding-left: 10px;
}

.movement-item--out {
  border-left: 2px solid rgba(255, 91, 82, 0.42);
  padding-left: 10px;
}

.fee-disclosure,
.transfer-fee-summary {
  border: 1px solid rgba(255, 190, 55, 0.13);
  border-radius: 13px;
  background: rgba(255, 190, 55, 0.045);
}

.fee-disclosure {
  display: flex;
  padding: 11px 13px;
  align-items: center;
  justify-content: space-between;
  color: #aeb8b6;
  font-size: 0.76rem;
}

.fee-disclosure strong {
  color: #ffc868;
}

.transfer-fee-summary {
  padding: 7px 14px;
}

.transfer-fee-summary > div {
  display: flex;
  padding: 8px 0;
  align-items: center;
  justify-content: space-between;
  color: #9ca7a5;
  font-size: 0.76rem;
}

.transfer-fee-summary > div + div {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.transfer-fee-summary strong {
  color: #f4f7f6;
  font-size: 0.82rem;
}

.transfer-fee-summary > div:last-child strong {
  color: var(--np-accent);
  font-size: 0.92rem;
}

.transfer-receipt__details .transfer-receipt__total strong {
  color: var(--np-accent);
  font-size: 0.88rem;
}

/* Modern digital bank card */
.bank-card {
  position: relative;
  isolation: isolate;
  width: min(100%, 560px);
  aspect-ratio: 1.586 / 1;
  margin-inline: auto;
  padding: clamp(22px, 5vw, 34px);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--np-accent) 24%, rgba(255, 255, 255, 0.12));
  border-radius: clamp(23px, 5vw, 32px);
  color: #fff;
  background:
    radial-gradient(circle at 78% 20%, color-mix(in srgb, var(--np-accent) 32%, transparent), transparent 30%),
    radial-gradient(circle at 18% 92%, color-mix(in srgb, var(--np-accent-2) 75%, transparent), transparent 42%),
    linear-gradient(125deg, #10191b 0%, color-mix(in srgb, var(--np-accent-2) 60%, #061012) 54%, #050a0b 100%);
  box-shadow:
    0 30px 70px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.09);
  text-align: left;
}

.bank-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0.32;
  background:
    linear-gradient(115deg, transparent 0 38%, rgba(255, 255, 255, 0.075) 40%, transparent 43%),
    linear-gradient(145deg, transparent 0 64%, rgba(255, 255, 255, 0.04) 65%, transparent 69%);
}

.bank-card::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -48%;
  right: -17%;
  width: 70%;
  aspect-ratio: 1;
  border: 1px solid color-mix(in srgb, var(--np-accent) 22%, transparent);
  border-radius: 50%;
  box-shadow:
    0 0 0 28px color-mix(in srgb, var(--np-accent) 3%, transparent),
    0 0 0 58px color-mix(in srgb, var(--np-accent) 2%, transparent);
}

.bank-card__orb {
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  filter: blur(1px);
}

.bank-card__orb--one {
  right: 12%;
  bottom: -25%;
  width: 44%;
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--np-accent) 10%, transparent);
}

.bank-card__orb--two {
  top: 28%;
  left: -22%;
  width: 45%;
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.055);
}

.bank-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.bank-card__brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.bank-card__brand img {
  width: auto;
  max-width: clamp(125px, 29vw, 190px);
  height: clamp(30px, 7vw, 48px);
  object-fit: contain;
  object-position: left center;
  filter: drop-shadow(0 7px 18px rgba(0, 0, 0, 0.3));
}

.bank-card__brand strong {
  font-size: clamp(1rem, 4vw, 1.45rem);
}

.bank-card__brand span {
  color: rgba(255, 255, 255, 0.62);
  font-size: clamp(0.58rem, 1.6vw, 0.72rem);
  font-weight: 650;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.bank-card__contactless {
  margin-top: 4px;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(1.45rem, 5vw, 2rem);
  transform: rotate(90deg);
}

.bank-card__chip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: clamp(43px, 10vw, 58px);
  height: clamp(32px, 7.5vw, 42px);
  margin-top: clamp(20px, 5vw, 32px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 9px;
  background: linear-gradient(135deg, #f8df8d, #b98c2f 48%, #f4d875);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
}

.bank-card__chip span {
  border-right: 1px solid rgba(72, 47, 6, 0.28);
}

.bank-card__chip span:nth-child(2) {
  border-top: 1px solid rgba(72, 47, 6, 0.22);
  border-bottom: 1px solid rgba(72, 47, 6, 0.22);
}

.bank-card__number {
  margin: clamp(17px, 4vw, 27px) 0 clamp(16px, 4vw, 25px);
  color: #f8faf9;
  font-family: "Roboto Mono", monospace;
  font-size: clamp(1.05rem, 4.2vw, 1.65rem);
  font-weight: 590;
  letter-spacing: clamp(0.04em, 0.7vw, 0.11em);
  line-height: 1.25;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  white-space: nowrap;
}

.bank-card__footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: clamp(16px, 4vw, 30px);
  align-items: end;
}

.bank-card__holder,
.bank-card__expiry {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 3px;
}

.bank-card__holder span,
.bank-card__expiry span {
  color: rgba(255, 255, 255, 0.5);
  font-size: clamp(0.52rem, 1.45vw, 0.66rem);
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.bank-card__holder strong,
.bank-card__expiry strong {
  overflow: hidden;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(0.72rem, 2.4vw, 0.95rem);
  font-weight: 620;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.bank-card__network {
  width: clamp(48px, 12vw, 72px);
  max-height: 45px;
  object-fit: contain;
}

@media (max-width: 420px) {
  .bank-card {
    padding: 20px;
  }

  .bank-card__number {
    font-size: clamp(0.92rem, 4.3vw, 1.15rem);
    letter-spacing: 0.025em;
  }

  .bank-card__footer {
    gap: 12px;
  }
}

/* Richer client dashboard header */
.client-topbar {
  margin-bottom: 20px;
  padding: 3px 4px;
}

.client-topbar__hello {
  display: flex;
  align-items: center;
  gap: 10px;
}

.client-topbar__hello > span:last-child {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  line-height: 1.12;
}

.client-topbar__hello small {
  color: #7f8b88;
  font-size: 0.65rem;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.client-topbar__hello strong {
  max-width: 135px;
  overflow: hidden;
  font-size: 0.94rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.client-avatar {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--np-accent) 25%, var(--np-line));
  border-radius: 13px;
  color: var(--np-accent);
  background:
    radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--np-accent) 15%, transparent), transparent 50%),
    rgba(255, 255, 255, 0.035);
  font-size: 0.9rem;
  font-weight: 800;
}

.account-switcher {
  gap: 8px;
  margin-bottom: 20px;
  padding: 7px;
  border-radius: 21px;
}

.account-switcher__item {
  min-height: 62px;
  padding: 7px 13px;
  justify-content: flex-start;
  text-align: left;
}

.account-switcher__item > i {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  place-items: center;
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.045);
}

.account-switcher__item > span {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.account-switcher__item strong {
  color: inherit;
  font-size: 0.86rem;
  font-weight: 650;
}

.account-switcher__item small {
  overflow: hidden;
  color: #66726f;
  font-size: 0.62rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-switcher__item.is-selected small {
  color: rgba(255, 255, 255, 0.58);
}

.account-hero {
  min-height: 330px;
  padding-bottom: 104px;
  align-items: flex-start;
}

.account-hero__label {
  margin-top: 3px;
}

.account-balance {
  margin-top: 18px;
}

.account-hero__visual {
  right: clamp(28px, 8vw, 82px);
  bottom: 112px;
  opacity: 0.82;
}

.account-hero__facts {
  position: absolute;
  z-index: 3;
  right: clamp(18px, 4vw, 34px);
  bottom: clamp(18px, 4vw, 30px);
  left: clamp(18px, 4vw, 34px);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 16px;
  background: rgba(2, 8, 9, 0.48);
  backdrop-filter: blur(14px);
}

.account-hero__facts > div {
  display: flex;
  min-width: 0;
  padding: 13px 15px;
  flex-direction: column;
  gap: 4px;
}

.account-hero__facts > div + div {
  border-left: 1px solid rgba(255, 255, 255, 0.065);
}

.account-hero__facts span {
  overflow: hidden;
  color: #71807c;
  font-size: 0.62rem;
  font-weight: 650;
  letter-spacing: 0.035em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.account-hero__facts strong {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  overflow: hidden;
  color: #dce4e2;
  font-size: 0.76rem;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .client-topbar {
    grid-template-columns: minmax(88px, 1fr) auto minmax(40px, 1fr);
  }

  .client-avatar {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    border-radius: 11px;
  }

  .client-topbar__hello {
    gap: 7px;
  }

  .client-topbar__hello strong {
    max-width: 78px;
    font-size: 0.82rem;
  }

  .client-topbar__hello small {
    font-size: 0.55rem;
  }

  .account-switcher__item {
    min-height: 58px;
    padding-inline: 10px;
  }

  .account-switcher__item > i {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
  }

  .account-switcher__item strong {
    font-size: 0.78rem;
  }

  .account-switcher__item small {
    font-size: 0.56rem;
  }

  .account-hero {
    min-height: 330px;
    padding: 27px 22px 104px;
  }

  .account-balance {
    max-width: 68%;
    margin-top: 15px;
  }

  .account-hero__visual {
    right: 21px;
    bottom: 112px;
  }

  .account-hero__facts {
    right: 16px;
    bottom: 16px;
    left: 16px;
  }

  .account-hero__facts > div {
    padding: 11px 10px;
  }

  .account-hero__facts span {
    font-size: 0.52rem;
  }

  .account-hero__facts strong {
    font-size: 0.67rem;
  }
}

@media (max-width: 390px) {
  .client-topbar__hello > span:last-child {
    display: none;
  }

  .account-switcher__item small {
    display: none;
  }

  .account-hero__facts > div {
    padding-inline: 8px;
  }
}

/* Debe permanecer al final: sustituye la antigua tarjeta de saldo. */
.account-hero {
  display: block;
  min-height: 0;
  padding: 20px 4px 8px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.account-hero::after {
  display: none;
}

.account-hero__content {
  width: 100%;
}

.account-balance {
  display: flex;
  max-width: none;
  margin-top: 12px;
  align-items: baseline;
  line-height: 0.95;
}

.account-hero__facts {
  position: static;
  right: auto;
  bottom: auto;
  left: auto;
  margin-top: 25px;
  overflow: visible;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
}

@media (max-width: 760px) {
  .account-hero {
    min-height: 0;
    padding: 16px 2px 6px;
  }

  .account-balance {
    max-width: none;
    margin-top: 10px;
  }

  .account-hero__facts {
    right: auto;
    bottom: auto;
    left: auto;
    margin-top: 21px;
    grid-template-columns: 1fr;
  }

  .account-hero__facts > div,
  .account-hero__facts > div:first-child,
  .account-hero__facts > div:last-child {
    padding: 11px 0;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

  .account-hero__facts > div + div {
    border-top: 1px solid rgba(255, 255, 255, 0.065);
    border-left: 0;
  }
}

/* Inicio editorial financiero */
.is-marketing-home { color:#e8efed; background:#03090a; }
.is-marketing-home .header { position:absolute; z-index:20; top:0; border-bottom:1px solid rgba(255,255,255,.06); background:rgba(3,9,10,.72); backdrop-filter:blur(18px); }
.finance-home { overflow:hidden; font-family:'DM Sans',sans-serif; background:#03090a; }
.finance-hero { position:relative; min-height:820px; display:flex; align-items:center; padding:150px 0 100px; background:radial-gradient(circle at 78% 42%,rgba(89,203,7,.12),transparent 28%),linear-gradient(135deg,#020708,#061011 72%,#020708); }
.finance-hero::before { content:""; position:absolute; inset:0; opacity:.17; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:70px 70px; mask-image:linear-gradient(to right,black,transparent 75%); }
.finance-hero__grid { position:relative; z-index:2; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:80px; }
.finance-kicker { display:inline-flex; align-items:center; gap:8px; color:#80df3c; font-size:.72rem; font-weight:750; letter-spacing:.13em; text-transform:uppercase; }
.finance-hero h1 { max-width:720px; margin:24px 0; color:#f7faf9; font-size:clamp(3.4rem,6vw,6.6rem); font-weight:600; line-height:.96; letter-spacing:-.065em; }
.finance-hero h1 span { color:#78df2f; }
.finance-hero__copy > p { max-width:620px; color:#98a6a2; font-size:1.08rem; line-height:1.75; }
.finance-actions { display:flex; gap:12px; margin-top:34px; flex-wrap:wrap; }
.finance-btn { display:inline-flex; min-height:52px; padding:0 23px; align-items:center; justify-content:center; gap:13px; border:1px solid rgba(255,255,255,.12); border-radius:11px; color:#edf4f1; font-size:.84rem; font-weight:700; transition:.25s ease; }
.finance-btn:hover { color:#fff; transform:translateY(-2px); }
.finance-btn--primary { border-color:#78e125; color:#071004; background:#78e125; box-shadow:0 12px 35px rgba(91,205,10,.17); }
.finance-btn--primary:hover { color:#071004; background:#8bef3e; box-shadow:0 16px 40px rgba(91,205,10,.25); }
.finance-btn--ghost { background:rgba(255,255,255,.025); }
.finance-trust { display:flex; margin-top:40px; gap:24px; flex-wrap:wrap; color:#788581; font-size:.7rem; }
.finance-trust span { display:flex; align-items:center; gap:7px; }.finance-trust i { color:#66c823; }
.finance-hero__visual { position:relative; min-height:490px; display:grid; place-items:center; }
.finance-visual__halo { position:absolute; width:430px; height:430px; border:1px solid rgba(118,224,42,.18); border-radius:50%; box-shadow:0 0 100px rgba(77,177,6,.08),inset 0 0 80px rgba(77,177,6,.04); animation:financePulse 5s ease-in-out infinite; }
.finance-account-preview { position:relative; z-index:2; width:min(440px,88%); min-height:285px; padding:32px; border:1px solid rgba(255,255,255,.11); border-radius:27px; background:linear-gradient(145deg,rgba(18,35,34,.95),rgba(4,12,13,.96)); box-shadow:0 35px 80px rgba(0,0,0,.42); transform:rotate(-4deg); }
.finance-account-preview::after { content:""; position:absolute; inset:0; border-radius:inherit; background:radial-gradient(circle at 85% 10%,rgba(111,239,25,.16),transparent 35%); }
.finance-preview__top,.finance-preview__bottom { position:relative; z-index:2; display:flex; justify-content:space-between; align-items:center; color:#788783; font-size:.64rem; letter-spacing:.13em; }.finance-account-preview > small { position:relative; z-index:2; display:block; margin-top:34px; color:#77847f; }.finance-account-preview > strong { position:relative; z-index:2; display:block; margin-top:5px; color:white; font-size:2.55rem; font-weight:600; letter-spacing:-.05em; }
.finance-preview__chart { position:relative; z-index:2; height:55px; display:flex; align-items:flex-end; gap:7px; margin:24px 0 18px; }.finance-preview__chart i { flex:1; height:35%; border-radius:4px 4px 0 0; background:#285913; }.finance-preview__chart i:nth-child(2){height:48%}.finance-preview__chart i:nth-child(3){height:38%}.finance-preview__chart i:nth-child(4){height:63%}.finance-preview__chart i:nth-child(5){height:58%}.finance-preview__chart i:nth-child(6){height:74%}.finance-preview__chart i:nth-child(7){height:68%}.finance-preview__chart i:nth-child(8){height:94%;background:#72db25}
.finance-preview__bottom b { display:block; color:#74db28; font-size:.9rem; letter-spacing:0; }.finance-preview__bottom small { display:block; letter-spacing:0; }.finance-preview__logo { display:grid; width:37px;height:37px;place-items:center;border-radius:12px;color:#0b1606;font-size:1.2rem;font-weight:900;background:#79e326; }
.finance-float { position:absolute; z-index:3; display:flex; padding:13px 16px; align-items:center; gap:11px; border:1px solid rgba(255,255,255,.09); border-radius:15px; background:rgba(7,17,18,.88); box-shadow:0 15px 45px rgba(0,0,0,.35); backdrop-filter:blur(12px); animation:financeFloat 4s ease-in-out infinite; }.finance-float > i { display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#78e02b;background:rgba(100,213,23,.1); }.finance-float span{display:flex;flex-direction:column}.finance-float b{font-size:.72rem}.finance-float small{color:#71807c;font-size:.61rem}.finance-float--security{top:50px;right:-15px}.finance-float--movement{bottom:45px;left:-25px;animation-delay:-2s}
.finance-scroll { position:absolute; bottom:28px; left:50%; display:flex; align-items:center; gap:10px; color:#66736f; font-size:.65rem; transform:translateX(-50%); }.finance-scroll span { width:1px;height:28px;background:linear-gradient(#76dc2e,transparent);animation:scrollLine 1.7s infinite; }
.finance-strip { border-block:1px solid rgba(255,255,255,.07); background:#071011; }.finance-strip__grid{display:grid;grid-template-columns:repeat(4,1fr)}.finance-strip__grid>div{display:flex;padding:29px 24px;align-items:center;gap:14px;border-right:1px solid rgba(255,255,255,.06)}.finance-strip__grid>div:first-child{border-left:1px solid rgba(255,255,255,.06)}.finance-strip strong{color:#62bd22;font-size:.7rem}.finance-strip span{display:flex;flex-direction:column}.finance-strip b{font-size:.84rem}.finance-strip small{color:#697571;font-size:.67rem}
.finance-section,.finance-process { padding:120px 0; }.finance-heading{display:flex;margin-bottom:52px;align-items:flex-end;justify-content:space-between;gap:50px}.finance-heading h2,.finance-story h2,.finance-cta h2{margin:13px 0 0;color:#f2f7f5;font-size:clamp(2.15rem,4vw,3.6rem);font-weight:570;line-height:1.08;letter-spacing:-.045em}.finance-heading>p{max-width:460px;margin:0;color:#7f8d89;line-height:1.7}.finance-services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.finance-service{position:relative;min-height:360px;padding:32px;border:1px solid rgba(255,255,255,.075);border-radius:21px;background:#071011;transition:.3s ease}.finance-service:hover{border-color:rgba(116,221,39,.3);transform:translateY(-7px)}.finance-service--featured{background:linear-gradient(145deg,rgba(37,82,10,.4),#071011 58%)}.finance-service__number{position:absolute;top:26px;right:28px;color:#43504c;font-size:.7rem}.finance-service__icon{display:grid;width:50px;height:50px;margin-bottom:54px;place-items:center;border-radius:14px;color:#78df2d;background:rgba(103,213,25,.09)}.finance-service h3{color:#edf3f1;font-size:1.28rem}.finance-service p{min-height:78px;color:#788682;font-size:.86rem;line-height:1.65}.finance-service a{display:inline-flex;margin-top:20px;align-items:center;gap:10px;color:#78df2d;font-size:.76rem;font-weight:700}
.finance-story{padding:110px 0;background:#071011}.finance-story__grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:100px}.finance-story__visual{position:relative;min-height:440px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:26px;background:radial-gradient(circle,rgba(83,179,14,.13),transparent 47%),#040b0c}.finance-story__lines{position:absolute;width:390px;height:390px;border:1px solid rgba(117,222,41,.12);border-radius:50%}.finance-story__lines::before,.finance-story__lines::after{content:"";position:absolute;border:inherit;border-radius:inherit;inset:45px}.finance-story__lines::after{inset:90px}.finance-story__mark{z-index:2;color:#71d42a;font-size:8rem;font-weight:900;font-style:italic;filter:drop-shadow(0 0 35px rgba(100,215,22,.25))}.finance-story__badge{position:absolute;right:24px;bottom:24px;display:flex;padding:14px 18px;flex-direction:column;border-radius:13px;background:#0b1717}.finance-story__badge strong{font-size:.8rem}.finance-story__badge small{color:#6f7c78;font-size:.66rem}.finance-story__copy>p{color:#82908c;line-height:1.8}.finance-values{display:grid;margin-top:28px;grid-template-columns:1fr 1fr;gap:13px}.finance-values span{color:#b8c2bf;font-size:.8rem}.finance-values i{margin-right:8px;color:#73d829}
.finance-heading--center{justify-content:center;text-align:center}.finance-process__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(255,255,255,.07)}.finance-process__grid>div{position:relative;padding:45px 42px;border-right:1px solid rgba(255,255,255,.07)}.finance-process__grid>div:first-child{border-left:1px solid rgba(255,255,255,.07)}.finance-process__grid span{position:absolute;top:18px;right:22px;color:#3c4845;font-size:.68rem}.finance-process__grid i{margin-bottom:25px;color:#72d528;font-size:1.4rem}.finance-process__grid h3{color:#e7edeb;font-size:1.08rem}.finance-process__grid p{color:#74817d;font-size:.8rem;line-height:1.65}
.finance-cta{padding:20px 0 110px}.finance-cta__box{display:flex;padding:58px 64px;align-items:center;justify-content:space-between;gap:50px;border:1px solid rgba(113,216,40,.18);border-radius:26px;background:radial-gradient(circle at 85% 50%,rgba(92,195,17,.16),transparent 30%),#081213}.finance-cta__box p{color:#7f8d89}.finance-home+.footer{border-top:1px solid rgba(255,255,255,.07);background:#03090a!important}
.reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal-on-scroll.is-visible{opacity:1;transform:none}.finance-services .reveal-on-scroll:nth-child(2),.finance-process__grid .reveal-on-scroll:nth-child(2){transition-delay:.12s}.finance-services .reveal-on-scroll:nth-child(3),.finance-process__grid .reveal-on-scroll:nth-child(3){transition-delay:.24s}
@keyframes financeFloat{50%{transform:translateY(-9px)}}@keyframes financePulse{50%{transform:scale(1.045);opacity:.72}}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-width:991px){.finance-hero{padding-top:130px}.finance-hero__grid{grid-template-columns:1fr;gap:35px}.finance-hero__copy{text-align:center}.finance-hero__copy>p{margin-inline:auto}.finance-actions,.finance-trust{justify-content:center}.finance-hero__visual{min-height:420px}.finance-strip__grid{grid-template-columns:1fr 1fr}.finance-services{grid-template-columns:1fr 1fr}.finance-service:last-child{grid-column:1/-1}.finance-story__grid{gap:45px}.finance-cta__box{padding:45px}.finance-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.is-marketing-home .header{position:relative}.finance-hero{min-height:auto;padding:85px 0 70px}.finance-hero h1{font-size:3.15rem}.finance-trust{gap:12px}.finance-hero__visual{min-height:365px}.finance-account-preview{padding:25px}.finance-account-preview>strong{font-size:2rem}.finance-visual__halo{width:310px;height:310px}.finance-float--security{right:0}.finance-float--movement{left:0}.finance-strip__grid{grid-template-columns:1fr}.finance-strip__grid>div{border-left:1px solid rgba(255,255,255,.06)}.finance-section,.finance-process{padding:80px 0}.finance-services,.finance-story__grid,.finance-process__grid{grid-template-columns:1fr}.finance-service:last-child{grid-column:auto}.finance-story__visual{min-height:340px}.finance-story__grid{gap:45px}.finance-values{grid-template-columns:1fr}.finance-process__grid>div{border-left:1px solid rgba(255,255,255,.07)}.finance-cta__box{padding:35px 27px;align-items:flex-start;flex-direction:column}.finance-cta h2 br{display:none}.finance-heading h2 br{display:none}}
@media(prefers-reduced-motion:reduce){.finance-float,.finance-visual__halo,.finance-scroll span{animation:none}.reveal-on-scroll{opacity:1;transform:none;transition:none}}

.movement-item--extra { display:none; }
#movement-summary { scroll-margin-top:24px; transition:border-color .25s ease,box-shadow .25s ease; }
#movement-summary.is-expanded { border-color:rgba(91,214,0,.22); box-shadow:0 18px 55px rgba(0,0,0,.18); }

.transactions-page { min-height:72vh; padding:48px 0 90px; color:#e5ecea; }
.transactions-toolbar { display:flex; margin-bottom:48px; align-items:center; justify-content:space-between; }
.transactions-back { display:inline-flex; align-items:center; gap:10px; color:#95a29e; font-size:.8rem; font-weight:650; }
.transactions-back:hover { color:var(--nex-green); }
.transactions-toolbar>div { display:flex; flex-direction:column; align-items:flex-end; }
.transactions-toolbar span { color:#6e7c78; font-size:.65rem; text-transform:uppercase; letter-spacing:.09em; }
.transactions-toolbar strong { color:#f0f5f3; font-size:1.25rem; }
.transactions-heading { display:flex; margin-bottom:34px; align-items:flex-end; justify-content:space-between; gap:30px; }
.transactions-heading h1 { margin:8px 0 5px; color:#f2f6f5; font-size:clamp(2rem,4vw,3.4rem); font-weight:580; letter-spacing:-.045em; }
.transactions-heading p { margin:0; color:#74817d; }
.transactions-count { display:flex; min-width:110px; padding:14px 18px; flex-direction:column; align-items:center; border:1px solid rgba(255,255,255,.08); border-radius:15px; background:#091314; }
.transactions-count strong { color:var(--nex-green); font-size:1.5rem; }.transactions-count span{color:#71807c;font-size:.66rem}
.transactions-ledger { overflow:hidden; border:1px solid rgba(255,255,255,.08); border-radius:22px; background:#071011; box-shadow:0 25px 70px rgba(0,0,0,.2); }
.transactions-ledger__head,.transaction-row { display:grid; grid-template-columns:minmax(250px,1.3fr) minmax(180px,.8fr) 140px minmax(260px,1fr); align-items:center; gap:20px; }
.transactions-ledger__head { padding:14px 22px; color:#596662; font-size:.62rem; font-weight:750; letter-spacing:.1em; text-transform:uppercase; background:#050c0d; }
.transaction-row { position:relative; min-height:108px; padding:18px 22px; border-top:1px solid rgba(255,255,255,.065); transition:background .2s ease; }
.transaction-row:hover { background:rgba(255,255,255,.018); }
.transaction-row::before { content:""; position:absolute; top:20px; bottom:20px; left:0; width:2px; border-radius:2px; background:#28b86a; }
.transaction-row--out::before { background:#ed555d; }
.transaction-row__movement { display:flex; min-width:0; align-items:center; gap:14px; }
.transaction-row__icon { display:grid; width:43px;height:43px;flex:0 0 43px;place-items:center;border-radius:13px;color:#39df83;background:rgba(30,167,93,.1); }
.transaction-row--out .transaction-row__icon { color:#ff6c72;background:rgba(213,56,64,.1); }
.transaction-row__movement>div,.transaction-row__info { display:flex; min-width:0; flex-direction:column; gap:3px; }
.transaction-row__movement strong { overflow:hidden;color:#e6ecea;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap; }
.transaction-row small,.transaction-row__info span { color:#71807c;font-size:.68rem; }
.transaction-amount { color:#3add82;font-size:.93rem; }.transaction-row--out .transaction-amount{color:#ff656c}
.transaction-status { display:inline-flex;padding:6px 9px;align-items:center;gap:7px;border-radius:20px;color:#8c9995;font-size:.66rem;font-weight:700;text-transform:capitalize;background:rgba(255,255,255,.04); }
.transaction-status i { width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor; }
.transaction-status--completado{color:#50dd8c;background:rgba(46,181,106,.09)}.transaction-status--pendiente{color:#f5b943;background:rgba(218,153,27,.09)}.transaction-status--fallido{color:#ff656c;background:rgba(221,65,73,.09)}
.transaction-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.transaction-action { display:inline-flex; min-height:34px;padding:0 10px;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.09);border-radius:9px;color:#9ba7a3;font-size:.65rem;background:transparent;transition:.2s ease; }
.transaction-action:hover { border-color:rgba(111,239,25,.3);color:var(--nex-green);background:rgba(111,239,25,.04); }
.transaction-action--document{color:#70d82b}.transaction-action--danger:hover{border-color:rgba(255,77,86,.35);color:#ff656c;background:rgba(255,77,86,.05)}
.transactions-empty { padding:60px;text-align:center;color:#71807c; }.transactions-empty i{display:block;margin-bottom:10px;font-size:2rem}
.transaction-modal { overflow:hidden;border:1px solid rgba(255,255,255,.1)!important;border-radius:20px!important;background:#081213!important; }
.transaction-modal .modal-header,.transaction-modal .modal-footer { border-color:rgba(255,255,255,.07); }.transaction-modal .modal-header small{color:var(--nex-green);font-size:.6rem;letter-spacing:.14em}.transaction-modal .modal-title{margin-top:3px;color:#eef4f2}.transaction-modal .modal-body>p{color:#7c8985}
.transaction-status-options { display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.transaction-status-options label{cursor:pointer}.transaction-status-options input{position:absolute;opacity:0}.transaction-status-options span{width:100%;justify-content:center;padding:12px 8px;border:1px solid transparent}.transaction-status-options input:checked+span{border-color:currentColor}
.transaction-dropzone { display:flex;padding:35px;align-items:center;flex-direction:column;gap:6px;border:1px dashed rgba(111,239,25,.3);border-radius:16px;cursor:pointer;background:rgba(111,239,25,.025)}.transaction-dropzone i{margin-bottom:5px;color:var(--nex-green);font-size:1.8rem}.transaction-dropzone strong{color:#dfe7e4}.transaction-dropzone span{color:#70807b;font-size:.7rem}.transaction-dropzone input{display:none}
.transaction-detail-list{display:flex;flex-direction:column}.transaction-detail-list>div{display:flex;padding:13px 0;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(255,255,255,.065)}.transaction-detail-list span{color:#71807c;font-size:.75rem}.transaction-detail-list strong{color:#e1e8e6;font-size:.8rem;text-align:right}
@media(max-width:1100px){.transactions-ledger__head{display:none}.transaction-row{grid-template-columns:1fr 1fr;gap:18px}.transaction-actions{justify-content:flex-start}}
@media(max-width:680px){.transactions-page{padding-top:25px}.transactions-toolbar{margin-bottom:30px}.transactions-heading{align-items:flex-start;flex-direction:column}.transactions-count{align-items:flex-start}.transaction-row{grid-template-columns:1fr;padding:20px}.transaction-actions{padding-top:4px}.transaction-action{min-height:38px}.transaction-status-options{grid-template-columns:1fr}.transactions-toolbar>div{display:none}}
.receipt-export-actions{display:grid;margin-bottom:9px;grid-template-columns:1fr 1fr;gap:8px}.receipt-export-actions .btn{min-height:42px;border-color:rgba(255,255,255,.12);color:#cbd4d1;font-size:.72rem}.receipt-export-actions .btn:hover{border-color:rgba(111,239,25,.35);color:var(--nex-green);background:rgba(111,239,25,.05)}
@media(max-width:420px){.receipt-export-actions{grid-template-columns:1fr}}

.account-state-alert{display:grid;margin:4px 0 18px;padding:16px 18px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;border:1px solid rgba(244,180,55,.22);border-radius:18px;background:linear-gradient(110deg,rgba(111,75,12,.16),rgba(8,18,19,.9));transition:.25s ease}.account-state-alert.is-highlighted{border-color:rgba(244,180,55,.7);box-shadow:0 0 0 4px rgba(244,180,55,.08)}.account-state-alert__icon{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#f2b23c;background:rgba(242,178,60,.1)}.account-state-alert strong{color:#f0f4f3;font-size:.82rem}.account-state-alert p{margin:3px 0 0;color:#8e9b97;font-size:.72rem;line-height:1.45}.account-state-alert .btn{border-color:rgba(255,255,255,.12);color:#d4dcda;font-size:.7rem}.quick-action--blocked{cursor:pointer;opacity:.52}.quick-action--blocked .quick-action__icon{color:#f0ae37!important;background:rgba(240,174,55,.08)!important}

.user-filters{display:grid;margin:18px 0 20px;padding:17px;grid-template-columns:minmax(190px,.85fr) minmax(170px,.7fr) minmax(240px,1.25fr) auto;align-items:end;gap:12px;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:#050d0e}.user-filters label{display:flex;min-width:0;margin:0;flex-direction:column;gap:7px}.user-filters label>span{color:#71807c;font-size:.6rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.user-filters .form-select,.user-filters .form-control{height:43px;margin:0;font-size:.76rem}.user-filter-search>div{position:relative}.user-filter-search i{position:absolute;z-index:2;top:50%;left:13px;color:#5f6d69;font-size:.72rem;transform:translateY(-50%)}.user-filter-search input{padding-left:36px}.user-filters__clear{display:inline-flex;height:43px;padding:0 13px;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,255,255,.08);border-radius:11px;color:#85928e;font-size:.69rem}.user-filters__clear:hover{border-color:rgba(111,239,25,.25);color:var(--nex-green)}.admin-client-count{margin-left:auto;margin-right:18px;color:#75827e;font-size:.66rem;font-weight:550}.client-item__heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.client-item__heading time{color:#65736f;font-size:.65rem}.client-item__heading time i{margin-right:5px}.user-empty-state{padding:65px 20px;text-align:center}.user-empty-state>i{display:grid;width:54px;height:54px;margin:0 auto 14px;place-items:center;border-radius:17px;color:var(--nex-green);font-size:1.25rem;background:rgba(111,239,25,.08)}.user-empty-state h5{margin-bottom:5px}.user-empty-state p{color:#71807c;font-size:.78rem}
@media(max-width:1000px){.user-filters{grid-template-columns:1fr 1fr}.user-filter-search{grid-column:1/-1}.user-filters__clear{justify-self:start}.admin-client-count{display:none}}
@media(max-width:600px){.account-state-alert{grid-template-columns:auto 1fr}.account-state-alert .btn{grid-column:2;justify-self:start}.user-filters{grid-template-columns:1fr}.user-filter-search{grid-column:auto}.client-item__heading{align-items:flex-start;flex-direction:column;gap:4px}}

/* Páginas públicas de herramientas y contacto */
.public-tool-page{overflow:hidden;color:#e7eeec;background:#030a0b}.public-page-hero{position:relative;padding:105px 0 82px;border-bottom:1px solid rgba(255,255,255,.065);background:radial-gradient(circle at 83% 30%,rgba(92,199,15,.12),transparent 28%),#040c0d}.public-page-orb{position:absolute;right:-120px;top:-160px;width:520px;height:520px;border:1px solid rgba(111,239,25,.07);border-radius:50%}.public-page-orb::before,.public-page-orb::after{content:"";position:absolute;inset:65px;border:inherit;border-radius:inherit}.public-page-orb::after{inset:130px}.public-page-hero__inner{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.public-page-hero h1,.contact-hero h1{margin:18px 0;color:#f2f7f5;font-size:clamp(2.8rem,5vw,5.2rem);font-weight:580;line-height:.98;letter-spacing:-.06em}.public-page-hero h1 em,.contact-hero h1 em{color:var(--nex-green);font-style:normal}.public-page-hero__inner>div:first-child>p,.contact-hero__copy>p{max-width:650px;margin:0;color:#899793;font-size:1rem;line-height:1.75}.loan-hero-stat{display:flex;min-width:275px;padding:17px 19px;align-items:center;gap:13px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(7,17,18,.75)}.loan-hero-stat>i{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:var(--nex-green);background:rgba(111,239,25,.08)}.loan-hero-stat div{display:flex;flex-direction:column}.loan-hero-stat strong{font-size:.78rem}.loan-hero-stat span{color:#71807c;font-size:.65rem}
.loan-workspace{padding:75px 0 95px}.loan-workspace__grid{display:grid;grid-template-columns:minmax(300px,.68fr) minmax(520px,1.32fr);align-items:start;gap:22px}.loan-calculator,.loan-results{border:1px solid rgba(255,255,255,.075);border-radius:22px;background:#071112}.loan-calculator{position:sticky;top:25px;padding:29px}.loan-card-heading{display:flex;margin-bottom:30px;gap:13px}.loan-card-heading>span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:var(--nex-green);font-size:.65rem;background:rgba(111,239,25,.08)}.loan-card-heading h2,.loan-table-heading h2{margin:0;color:#edf3f1;font-size:1.22rem}.loan-card-heading p{margin:3px 0 0;color:#6f7c78;font-size:.7rem}.loan-field{margin-bottom:18px}.loan-field label{display:block;margin-bottom:7px;color:#9aa6a2;font-size:.7rem;font-weight:650}.loan-input{display:flex;height:53px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#040b0c;transition:.2s ease}.loan-input:focus-within{border-color:rgba(111,239,25,.48);box-shadow:0 0 0 3px rgba(111,239,25,.07)}.loan-input span{padding:0 15px;color:#71807c;font-size:.78rem}.loan-input input{width:100%;height:100%;padding:0 14px;border:0;outline:0;color:#f1f6f4;font-size:1rem;background:transparent}.loan-rate{display:flex;margin:2px 0 5px;padding:12px 0;justify-content:space-between;border-block:1px solid rgba(255,255,255,.06);color:#74817d;font-size:.69rem}.loan-rate strong{color:#b9c4c0}.loan-form-error{min-height:18px;margin:8px 0 4px;color:#ff6d74;font-size:.67rem}.loan-calculate{width:100%;border:0}.loan-note{display:flex;margin-top:20px;padding:12px;gap:9px;border-radius:11px;color:#687571;font-size:.63rem;line-height:1.5;background:rgba(255,255,255,.025)}.loan-note i{margin-top:2px;color:#78d934}.loan-note p{margin:0}.loan-results{min-height:520px;padding:28px}.loan-results__empty{min-height:460px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.loan-empty-visual{position:relative;display:grid;width:120px;height:120px;margin-bottom:26px;place-items:center;border:1px solid rgba(111,239,25,.13);border-radius:50%;color:#70d52a;font-size:2rem;background:radial-gradient(circle,rgba(111,239,25,.09),transparent 67%)}.loan-results__empty h2{margin:10px 0;color:#e7eeeb;font-size:1.6rem}.loan-results__empty p{max-width:390px;color:#71807c;font-size:.76rem}.loan-summary{display:grid;margin-bottom:30px;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:15px}.loan-summary>div{padding:17px 18px;border-right:1px solid rgba(255,255,255,.065)}.loan-summary>div:last-child{border-right:0}.loan-summary span{display:block;color:#71807c;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em}.loan-summary strong{display:block;margin-top:4px;color:#e9efed;font-size:1rem}.loan-summary>div:first-child strong{color:var(--nex-green)}.loan-table-heading{display:flex;margin-bottom:16px;align-items:flex-end;justify-content:space-between}.loan-table-heading .finance-kicker{font-size:.58rem}.loan-table-heading h2{margin-top:5px}.loan-table-toggle{border:0;color:#75d72d;font-size:.67rem;background:transparent}.loan-table-wrap{max-height:480px;overflow:auto;border:1px solid rgba(255,255,255,.065);border-radius:13px;transition:.3s ease}.loan-table-wrap.is-collapsed{max-height:0;border-color:transparent}.loan-table{width:100%;border-collapse:collapse}.loan-table thead{position:sticky;z-index:2;top:0;background:#0a1717}.loan-table th{padding:12px;color:#71807c;font-size:.6rem;text-align:right;text-transform:uppercase}.loan-table th:first-child{text-align:left}.loan-table td{padding:11px 12px;border-top:1px solid rgba(255,255,255,.055);color:#aeb9b5;font-size:.68rem;text-align:right}.loan-table td:first-child{text-align:left}.loan-table td:first-child span{display:inline-grid;width:24px;height:24px;margin-right:8px;place-items:center;border-radius:7px;color:#65bd27;font-size:.56rem;background:rgba(111,239,25,.06)}.public-reassurance{padding:30px 0;border-block:1px solid rgba(255,255,255,.065);background:#061011}.public-reassurance .container{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center}.public-reassurance span{display:grid;padding:7px 24px;grid-template-columns:auto 1fr;column-gap:10px;border-right:1px solid rgba(255,255,255,.065)}.public-reassurance span:first-child{padding-left:0}.public-reassurance i{grid-row:1/3;color:#6dcc2b}.public-reassurance b{font-size:.72rem}.public-reassurance small{color:#687570;font-size:.62rem}.public-reassurance a{display:flex;padding-left:30px;align-items:center;gap:10px;color:var(--nex-green);font-size:.7rem;font-weight:700}
.contact-hero{padding:105px 0}.contact-hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:90px}.contact-availability{display:flex;margin-top:35px;align-items:center;gap:11px}.contact-availability>i{width:9px;height:9px;border-radius:50%;background:#6fe128;box-shadow:0 0 14px #6fe128}.contact-availability span{display:flex;flex-direction:column}.contact-availability strong{font-size:.72rem}.contact-availability small{color:#71807c;font-size:.63rem}.contact-visual{position:relative;min-height:330px;display:grid;place-items:center}.contact-visual>i{position:relative;z-index:2;display:grid;width:124px;height:124px;place-items:center;border-radius:38px;color:#081105;font-size:3.2rem;background:linear-gradient(145deg,#8ced42,#5ab918);box-shadow:0 25px 60px rgba(75,176,4,.2)}.contact-visual__rings{position:absolute;width:300px;height:300px;border:1px solid rgba(111,239,25,.12);border-radius:50%}.contact-visual__rings::before,.contact-visual__rings::after{content:"";position:absolute;inset:45px;border:inherit;border-radius:inherit}.contact-visual__rings::after{inset:-45px;opacity:.5}.contact-float{position:absolute;z-index:3;padding:11px 15px;border:1px solid rgba(255,255,255,.09);border-radius:12px;color:#aeb9b5;font-size:.65rem;background:rgba(7,17,18,.9);box-shadow:0 14px 35px rgba(0,0,0,.3)}.contact-float i{margin-right:7px;color:#72d62c}.contact-float--one{top:20px;right:0}.contact-float--two{bottom:20px;left:0}.contact-options{padding:100px 0}.contact-section-heading{margin-bottom:40px}.contact-section-heading h2,.contact-confidence h2{margin:10px 0;color:#edf3f1;font-size:clamp(2rem,3.5vw,3.2rem);font-weight:570;letter-spacing:-.045em}.contact-section-heading p{color:#74817d}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.contact-channel{position:relative;min-height:330px;padding:29px;overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:20px;color:inherit;background:#071112;transition:.28s ease}.contact-channel:hover{border-color:rgba(111,239,25,.3);color:inherit;transform:translateY(-6px)}.contact-channel--featured{background:linear-gradient(145deg,rgba(48,110,8,.35),#071112 55%)}.contact-channel__icon{display:grid;width:49px;height:49px;margin-bottom:48px;place-items:center;border-radius:14px;color:var(--nex-green);font-size:1.2rem;background:rgba(111,239,25,.08)}.contact-channel>span{color:#65726e;font-size:.58rem;font-weight:750;letter-spacing:.1em}.contact-channel h3{margin:8px 0;color:#e9efed;font-size:1.25rem}.contact-channel p{min-height:70px;color:#75827e;font-size:.76rem;line-height:1.65}.contact-channel b{display:flex;margin-top:23px;align-items:center;justify-content:space-between;color:#74d72c;font-size:.7rem}.contact-confidence{padding:85px 0;background:#071011}.contact-confidence__grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:90px}.contact-promises{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.065)}.contact-promises span{display:flex;min-height:170px;padding:25px;flex-direction:column;background:#071011}.contact-promises i{margin-bottom:28px;color:#70d12b;font-size:1.15rem}.contact-promises b{font-size:.78rem}.contact-promises small{margin-top:5px;color:#71807c;font-size:.66rem;line-height:1.5}
@media(max-width:991px){.public-page-hero__inner{align-items:flex-start;flex-direction:column}.loan-workspace__grid{grid-template-columns:1fr}.loan-calculator{position:static}.public-reassurance .container{grid-template-columns:1fr 1fr}.public-reassurance span:nth-child(2){border-right:0}.public-reassurance a{padding:20px 0}.contact-hero__grid,.contact-confidence__grid{grid-template-columns:1fr;gap:45px}.contact-visual{min-height:300px}.contact-cards{grid-template-columns:1fr 1fr}.contact-channel:last-child{grid-column:1/-1}}
@media(max-width:650px){.public-page-hero,.contact-hero{padding:70px 0}.public-page-hero h1,.contact-hero h1{font-size:3rem}.loan-hero-stat{min-width:0}.loan-workspace{padding:45px 0}.loan-calculator,.loan-results{padding:20px;border-radius:17px}.loan-summary{grid-template-columns:1fr}.loan-summary>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.065)}.loan-summary>div:last-child{border-bottom:0}.loan-table-wrap{overflow-x:auto}.loan-table{min-width:660px}.public-reassurance .container{grid-template-columns:1fr}.public-reassurance span{padding:14px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.contact-cards{grid-template-columns:1fr}.contact-channel:last-child{grid-column:auto}.contact-promises{grid-template-columns:1fr}.contact-promises span{min-height:140px}.contact-visual{transform:scale(.86)}}
.nav-account-cta{display:inline-flex;min-height:48px;padding:0 20px;align-items:center;justify-content:center;gap:14px;border:1px solid var(--nex-green);border-radius:11px;color:#071004!important;font-size:0;font-weight:750;background:var(--nex-green);box-shadow:0 10px 30px rgba(84,191,8,.14);transition:.24s ease}.nav-account-cta::before{content:"Acceder a mi cuenta";font-size:.78rem}.nav-account-cta::after{content:"\2192";font-size:1rem;line-height:1;transition:transform .24s ease}.nav-account-cta:hover{color:#071004!important;background:#8bed43;box-shadow:0 14px 34px rgba(84,191,8,.22);transform:translateY(-2px)}.nav-account-cta:hover::after{transform:translateX(3px)}
@media(max-width:991px){.nav-account-cta{width:100%;margin-top:10px}.nav-btn{width:100%;padding:0!important}}
.nav-account-cta,
.is-marketing-home .nav-account-cta,
body:not(.is-client-area) .nav-account-cta{border-color:#78e125!important;color:#071004!important;background-color:#78e125!important;background-image:none!important;opacity:1!important}.nav-account-cta::before,.nav-account-cta::after{color:#071004!important}.nav-account-cta:hover,.is-marketing-home .nav-account-cta:hover,body:not(.is-client-area) .nav-account-cta:hover{border-color:#8bed43!important;color:#071004!important;background-color:#8bed43!important}

/* Acceso a cuenta */
.auth-page{position:relative;min-height:760px;display:flex;padding:75px 0 95px;align-items:center;overflow:hidden;color:#e8efed;background:radial-gradient(circle at 14% 80%,rgba(79,175,9,.08),transparent 26%),radial-gradient(circle at 89% 12%,rgba(79,175,9,.09),transparent 25%),#030a0b}.auth-page__orb{position:absolute;width:430px;height:430px;border:1px solid rgba(111,239,25,.06);border-radius:50%}.auth-page__orb::before,.auth-page__orb::after{content:"";position:absolute;inset:60px;border:inherit;border-radius:inherit}.auth-page__orb::after{inset:120px}.auth-page__orb--one{bottom:-250px;left:-130px}.auth-page__orb--two{top:-270px;right:-100px}.auth-shell{position:relative;z-index:2;display:grid;max-width:1180px;grid-template-columns:1.05fr .95fr;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:28px;background:#071112;box-shadow:0 35px 100px rgba(0,0,0,.28)}
.auth-story{position:relative;min-height:620px;padding:45px;overflow:hidden;background:radial-gradient(circle at 80% 75%,rgba(98,211,18,.15),transparent 33%),linear-gradient(145deg,#0a1818,#050d0e)}.auth-story::before{content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 75%)}.auth-brand{position:relative;z-index:2;min-height:45px;display:flex;align-items:center;gap:10px}.auth-brand img{max-width:185px;max-height:50px;object-fit:contain}.auth-brand>span{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#071004;font-size:1.3rem;font-weight:900;background:#78e125}.auth-story__copy{position:relative;z-index:2;margin-top:62px}.auth-story__copy h1{margin:16px 0;color:#f3f7f6;font-size:clamp(2.3rem,3.5vw,3.7rem);font-weight:580;line-height:1.04;letter-spacing:-.055em}.auth-story__copy h1 em{color:#78e125;font-style:normal}.auth-story__copy p{max-width:500px;color:#82908c;font-size:.88rem;line-height:1.72}
.auth-preview{position:relative;z-index:2;width:82%;margin:45px 0 28px;padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:linear-gradient(145deg,rgba(13,31,30,.95),rgba(4,12,13,.96));box-shadow:0 20px 50px rgba(0,0,0,.25);transform:rotate(-2deg)}.auth-preview::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 90% 0,rgba(111,239,25,.12),transparent 38%);pointer-events:none}.auth-preview__top,.auth-preview__bottom{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;color:#66736f;font-size:.58rem;letter-spacing:.11em}.auth-preview>small{position:relative;z-index:2;display:block;margin-top:19px;color:#687570;font-size:.62rem}.auth-preview>strong{position:relative;z-index:2;display:block;margin-top:3px;color:#eef4f2;font-size:1.35rem}.auth-preview__line{position:relative;z-index:2;height:30px;display:flex;margin:20px 0 16px;align-items:flex-end;gap:6px}.auth-preview__line i{flex:1;height:35%;border-radius:4px;background:#265511}.auth-preview__line i:nth-child(2){height:55%}.auth-preview__line i:nth-child(3){height:42%}.auth-preview__line i:nth-child(4){height:72%}.auth-preview__line i:nth-child(5){height:95%;background:#73db27}.auth-preview__bottom span i{margin-right:6px;color:#71d52b}.auth-preview__bottom b{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;color:#071004;font-size:.9rem;background:#78e125}.auth-trust{position:relative;z-index:2;display:flex;gap:23px;color:#75827e;font-size:.65rem}.auth-trust i{margin-right:6px;color:#6dcc27}
.auth-form-panel{display:flex;padding:55px 52px;justify-content:center;flex-direction:column;background:#071112}.auth-form-heading{display:flex;margin-bottom:35px;align-items:center;gap:14px}.auth-form-heading__icon{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;border:1px solid rgba(111,239,25,.14);border-radius:14px;color:#78e125;background:rgba(111,239,25,.055)}.auth-form-heading .finance-kicker{font-size:.56rem}.auth-form-heading h2{margin:4px 0 2px;color:#f1f5f4;font-size:1.65rem;letter-spacing:-.03em}.auth-form-heading p{margin:0;color:#6f7c78;font-size:.7rem}.auth-error{display:flex;margin-bottom:20px;padding:13px 14px;gap:10px;border:1px solid rgba(255,89,98,.2);border-radius:12px;color:#ff737a;background:rgba(194,44,53,.07)}.auth-error>i{margin-top:3px}.auth-error span{display:flex;flex-direction:column;font-size:.7rem}.auth-error strong{color:#ff9298}
.auth-form{display:flex;flex-direction:column;gap:19px}.auth-form>label{display:flex;margin:0;flex-direction:column;gap:7px}.auth-form>label>span{color:#9aa6a2;font-size:.7rem;font-weight:650}.auth-input{display:flex;height:54px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#040b0c;transition:.2s ease}.auth-input:focus-within{border-color:rgba(120,225,37,.55);box-shadow:0 0 0 3px rgba(120,225,37,.07)}.auth-input>i{width:46px;color:#5f6d69;text-align:center}.auth-input input{width:100%;height:100%;padding:0;border:0;outline:0;color:#eef4f2;font-size:.79rem;background:transparent}.auth-input input::placeholder{color:#4f5b58}.auth-password-toggle{width:46px;height:100%;border:0;color:#687570;background:transparent}.auth-form__help{display:flex;margin-top:-4px;align-items:center;justify-content:space-between;color:#64716d;font-size:.62rem}.auth-form__help i{margin-right:5px}.auth-form__help a{color:#76d92e}.auth-submit{display:flex;height:54px;margin-top:4px;padding:0 19px;align-items:center;justify-content:space-between;border:0;border-radius:12px;color:#071004;font-size:.78rem;font-weight:800;background:#78e125;box-shadow:0 14px 35px rgba(89,199,10,.16);transition:.25s ease}.auth-submit:hover{background:#8ced43;transform:translateY(-2px)}.auth-submit i{transition:transform .25s ease}.auth-submit:hover i{transform:translateX(4px)}
.auth-support{display:grid;margin-top:31px;padding-top:22px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;border-top:1px solid rgba(255,255,255,.065)}.auth-support>i{display:grid;width:37px;height:37px;place-items:center;border-radius:11px;color:#70d12b;background:rgba(111,239,25,.06)}.auth-support span{display:flex;flex-direction:column}.auth-support strong{font-size:.68rem}.auth-support small{color:#687570;font-size:.6rem}.auth-support>a{color:#76d92e;font-size:.65rem;font-weight:700}.auth-session-modal{overflow:hidden;border:1px solid rgba(255,255,255,.1)!important;border-radius:20px!important;background:#081213!important}.auth-session-modal .modal-header,.auth-session-modal .modal-footer{border-color:rgba(255,255,255,.07)}.auth-session-modal .modal-title{margin-top:4px;color:#edf3f1}.auth-session-modal .modal-body p{margin:0;color:#82908c}
@media(max-width:991px){.auth-page{padding:45px 14px}.auth-shell{grid-template-columns:1fr}.auth-story{min-height:auto;padding:35px}.auth-story__copy{margin-top:45px}.auth-preview{max-width:520px}.auth-form-panel{padding:45px 35px}}
@media(max-width:580px){.auth-page{padding:20px 10px}.auth-shell{border-radius:20px}.auth-story{padding:27px}.auth-story__copy h1{font-size:2.5rem}.auth-preview{width:100%;margin-top:32px}.auth-trust{gap:10px;flex-direction:column}.auth-form-panel{padding:35px 25px}.auth-form__help{align-items:flex-start;flex-direction:column;gap:8px}.auth-support{grid-template-columns:auto 1fr}.auth-support>a{grid-column:2}}

/* Acceso directo: formulario primero y contexto visual reducido */
.auth-shell{grid-template-columns:minmax(410px,.92fr) minmax(0,1.08fr)}
.auth-form-panel{order:1;padding:58px 60px;background:linear-gradient(145deg,#081314,#061011)}
.auth-story{order:2;min-height:570px;display:flex;padding:48px;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 75% 70%,rgba(98,211,18,.17),transparent 35%),linear-gradient(145deg,#091817,#040c0d)}
.auth-story__copy{margin:0}
.auth-story__copy h1{max-width:500px;margin:18px 0;font-size:clamp(2.5rem,3.7vw,4rem)}
.auth-story__copy p{max-width:410px;margin:0}
.auth-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.auth-trust span{display:grid;padding:15px;grid-template-columns:auto 1fr;column-gap:10px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(2,9,9,.4)}
.auth-trust i{grid-row:1/3;margin:2px 0 0;color:#70d52b}
.auth-trust b{color:#dce5e2;font-size:.67rem}
.auth-trust small{color:#697672;font-size:.58rem;line-height:1.45}
@media(max-width:991px){.auth-shell{grid-template-columns:1fr}.auth-form-panel{order:1;padding:45px 35px}.auth-story{order:2;min-height:auto;padding:32px 35px;gap:30px}.auth-brand{display:none}.auth-story__copy h1{font-size:2.1rem}.auth-story__copy p{font-size:.78rem}}
@media(max-width:580px){.auth-form-panel{padding:32px 24px}.auth-story{padding:26px 24px}.auth-story__copy{margin:0}.auth-story__copy h1{margin:12px 0;font-size:1.85rem}.auth-story__copy p{font-size:.72rem}.auth-trust{grid-template-columns:1fr}.auth-trust span:nth-child(2){display:none}.auth-support small{display:none}}

/* Footer institucional */
.site-footer{position:relative;padding:78px 0 0!important;overflow:hidden;border-top:1px solid rgba(255,255,255,.07);color:#dbe4e1;background:radial-gradient(circle at 82% 12%,rgba(100,210,18,.09),transparent 25%),#03090a!important}
.site-footer::before{content:"";position:absolute;right:-180px;top:-240px;width:520px;height:520px;border:1px solid rgba(111,239,25,.05);border-radius:50%;box-shadow:0 0 0 70px rgba(111,239,25,.012),0 0 0 140px rgba(111,239,25,.008)}
.site-footer__inner{position:relative;z-index:2}
.site-footer__main{display:grid;padding-bottom:58px;grid-template-columns:.78fr 1.22fr;gap:clamp(55px,9vw,140px)}
.site-footer__brand{display:flex;align-items:flex-start;flex-direction:column}
.site-footer__logo{display:inline-flex;min-height:50px;align-items:center;gap:10px}
.site-footer__logo img{width:auto;max-width:205px;max-height:54px;object-fit:contain;object-position:left center}
.site-footer__logo>span{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#071004;font-weight:900;background:#78e125}
.site-footer__logo>strong{color:#edf3f1;font-size:1.2rem}
.site-footer__brand>p{max-width:350px;margin:24px 0 25px;color:#778480;font-size:.78rem;line-height:1.7}
.site-footer__access{display:inline-flex;align-items:center;gap:11px;color:#76da2d!important;font-size:.7rem!important;font-weight:750;line-height:1.4!important}
.site-footer__access i{font-size:.62rem;transition:transform .2s ease}.site-footer__access:hover i{transform:translateX(4px)}
.site-footer__support{padding-left:clamp(0px,4vw,60px);border-left:1px solid rgba(255,255,255,.07)}
.site-footer__section-heading{display:flex;align-items:center;gap:13px}.site-footer__section-heading>span{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(111,239,25,.13);border-radius:12px;color:#73d62e;background:rgba(111,239,25,.055)}
.site-footer__section-heading div{display:flex;flex-direction:column}.site-footer__section-heading small{color:#67c328;font-size:.56rem;font-weight:750;letter-spacing:.12em}.site-footer__section-heading h2{margin:3px 0 0;color:#edf3f1;font-size:1.35rem;font-weight:600}
.site-footer__support>p{max-width:620px;margin:19px 0 25px;color:#74817d;font-size:.73rem;line-height:1.65}
.site-footer__support-logos{display:grid;grid-template-columns:minmax(250px,1fr) 112px;align-items:center;gap:14px}
.site-footer__fdic-wide,.site-footer__fdic-badge{display:flex;min-height:104px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.075);border-radius:15px;background:rgba(255,255,255,.025)}
.site-footer__fdic-wide{padding:19px 24px}.site-footer__fdic-wide img{width:100%;max-width:390px;max-height:64px;object-fit:contain}
.site-footer__fdic-badge{position:relative;padding:13px;line-height:1!important}.site-footer__fdic-badge img{max-width:82px;max-height:78px;object-fit:contain;border-radius:8px}.site-footer__fdic-badge i{position:absolute;right:8px;top:8px;color:#6e7a76;font-size:.55rem;opacity:0;transition:.2s}.site-footer__fdic-badge:hover i{opacity:1}
.site-footer__contact{display:grid;padding:25px 0;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid rgba(255,255,255,.07)}
.site-footer__contact>div{display:grid;min-width:0;padding:3px 28px;grid-template-columns:auto 1fr;align-items:center;gap:12px}.site-footer__contact>div:first-child{padding-left:0}.site-footer__contact>div+div{border-left:1px solid rgba(255,255,255,.065)}
.site-footer__contact>div>i{display:grid;width:35px;height:35px;place-items:center;border-radius:10px;color:#6fce2c;font-size:.76rem;background:rgba(111,239,25,.055)}.site-footer__contact span{display:flex;min-width:0;flex-direction:column}.site-footer__contact small{color:#64706d;font-size:.52rem;font-weight:700;letter-spacing:.09em}.site-footer__contact strong{overflow:hidden;color:#b9c3c0;font-size:.65rem;font-weight:580;text-overflow:ellipsis;white-space:nowrap}
.site-footer__bottom{display:flex;padding:21px 0 24px;align-items:center;justify-content:space-between;color:#596561;font-size:.57rem}.site-footer__bottom i{margin-right:6px;color:#65bd28}
@media(max-width:800px){.site-footer{padding-top:55px!important}.site-footer__main{grid-template-columns:1fr;gap:45px}.site-footer__support{padding:35px 0 0;border-top:1px solid rgba(255,255,255,.07);border-left:0}.site-footer__contact{grid-template-columns:1fr}.site-footer__contact>div,.site-footer__contact>div:first-child{padding:13px 0}.site-footer__contact>div+div{border-top:1px solid rgba(255,255,255,.055);border-left:0}.site-footer__bottom{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:480px){.site-footer__support-logos{grid-template-columns:1fr 92px}.site-footer__fdic-wide,.site-footer__fdic-badge{min-height:90px}.site-footer__fdic-wide{padding:14px}.site-footer__section-heading h2{font-size:1.2rem}}
