/* Cashbook Finance 3.16.16 — targeted responsive corrections.
   Loaded after generated template styles. No form, passkey or portal logic is changed. */

/* A continuous accent across the entire white login card, instead of a
   partially clipped inset decoration. Applies to desktop and mobile. */
html body:not(#cb-portal-fix-1):not(#cb-portal-fix-2):not(#cb-portal-fix-3):not(#cb-portal-fix-4):not(#cb-portal-fix-5):not(#cb-portal-fix-6):not(#cb-portal-fix-7):not(#cb-portal-fix-8):not(#cb-portal-fix-9):not(#cb-portal-fix-10):not(#cb-portal-fix-11):not(#cb-portal-fix-12):not(#cb-portal-fix-13):not(#cb-portal-fix-14):not(#cb-portal-fix-15):not(#cb-portal-fix-16)[data-page="portal-login"] .portal-access-card {
  border-top: 3px solid #5a9dff !important;
}

/* Remove the legacy 56px margin in front of the portal footer on phones.
   Keep a deliberate 20–24px breathing space after the panel. */
@media (max-width: 920px) {
  html body:not(#cb-portal-fix-1):not(#cb-portal-fix-2):not(#cb-portal-fix-3):not(#cb-portal-fix-4):not(#cb-portal-fix-5):not(#cb-portal-fix-6):not(#cb-portal-fix-7):not(#cb-portal-fix-8):not(#cb-portal-fix-9):not(#cb-portal-fix-10):not(#cb-portal-fix-11):not(#cb-portal-fix-12):not(#cb-portal-fix-13):not(#cb-portal-fix-14):not(#cb-portal-fix-15):not(#cb-portal-fix-16)[data-page="portal-login"] .portal-footer {
    margin-top: 0 !important;
  }
  html body:not(#cb-portal-fix-1):not(#cb-portal-fix-2):not(#cb-portal-fix-3):not(#cb-portal-fix-4):not(#cb-portal-fix-5):not(#cb-portal-fix-6):not(#cb-portal-fix-7):not(#cb-portal-fix-8):not(#cb-portal-fix-9):not(#cb-portal-fix-10):not(#cb-portal-fix-11):not(#cb-portal-fix-12):not(#cb-portal-fix-13):not(#cb-portal-fix-14):not(#cb-portal-fix-15):not(#cb-portal-fix-16)[data-page="portal-login"] .portal-access-shell {
    min-height: 0 !important;
    flex: 0 0 auto !important;
    padding-bottom: 24px !important;
  }
}
@media (max-width: 640px) {
  html body:not(#cb-portal-fix-1):not(#cb-portal-fix-2):not(#cb-portal-fix-3):not(#cb-portal-fix-4):not(#cb-portal-fix-5):not(#cb-portal-fix-6):not(#cb-portal-fix-7):not(#cb-portal-fix-8):not(#cb-portal-fix-9):not(#cb-portal-fix-10):not(#cb-portal-fix-11):not(#cb-portal-fix-12):not(#cb-portal-fix-13):not(#cb-portal-fix-14):not(#cb-portal-fix-15):not(#cb-portal-fix-16)[data-page="portal-login"] .portal-access-shell {
    padding-bottom: 20px !important;
  }
}

/* The existing radial hero glow is authored around x=64%; at phone widths
   it visibly pulls the top of the luminous arch to the right. Override only
   on mobile and tablet widths and preserve the remaining gradient stops / palettes. */
@media (max-width: 980px) {
  html body:not(#cb-arcfix-1):not(#cb-arcfix-2):not(#cb-arcfix-3):not(#cb-arcfix-4):not(#cb-arcfix-5):not(#cb-arcfix-6):not(#cb-arcfix-7):not(#cb-arcfix-8):not(#cb-arcfix-9):not(#cb-arcfix-10):not(#cb-arcfix-11):not(#cb-arcfix-12):not(#cb-arcfix-13):not(#cb-arcfix-14):not(#cb-arcfix-15):not(#cb-arcfix-16):not(#cb-arcfix-17):not(#cb-arcfix-18):not(#cb-arcfix-19):not(#cb-arcfix-20):not(#cb-arcfix-21):not(#cb-arcfix-22):not(#cb-arcfix-23):not(#cb-arcfix-24) :is(.subhero.ink-bg,.cb91-hero,.cb147-sector-hero,.cb71-legal-hero,.cb1106-trust-hero,.cb71-local-hero,.cb-growth-hero,.cb-calculator-hero)::before {
    background-image:
      radial-gradient(200% 150% at 50% 194%, transparent 68.2%, rgba(169,205,251,.62) 69.6%, rgba(90,157,255,.30) 70.6%, rgba(26,102,224,.10) 72.5%, transparent 77%),
      radial-gradient(200% 150% at 50% 194%, rgba(26,102,224,.30) 0%, rgba(13,58,134,.20) 55%, rgba(26,51,82,.10) 66%, transparent 69.4%),
      radial-gradient(36% 50% at 84% 6%, rgba(26,102,224,.40) 0%, rgba(26,102,224,.12) 50%, transparent 72%),
      radial-gradient(30% 40% at 48% -12%, rgba(90,157,255,.20) 0%, transparent 70%),
      radial-gradient(34% 44% at -4% 8%, rgba(26,102,224,.16) 0%, transparent 70%) !important;
  }
}

/* Optical centring of the number/legend as a unit in the LTV donut.
   The circular conic-gradient and its percentage remain untouched. */
.cb-bj .cb-bj-ring > :is(b,small) {
  position: relative;
  top: 4px;
}
