@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Sora:wght@400;600;700;800&display=swap');

/*
 * CashTime dedicated authentication visual layer
 * Figma Make reference adapted to the native React/Radix DOM.
 * No React-managed node is moved, inserted, or replaced here.
 */

  :root {
    --cash-figma-bg: #06130d;
    --cash-figma-bg-deep: #04100b;
    --cash-figma-panel: #0d2117;
    --cash-figma-panel-soft: rgba(17, 44, 30, 0.72);
    --cash-figma-line: rgba(111, 239, 185, 0.14);
    --cash-figma-line-strong: rgba(111, 239, 185, 0.28);
    --cash-figma-text: #e9f8f1;
    --cash-figma-muted: rgba(190, 226, 208, 0.62);
    --cash-figma-faint: rgba(190, 226, 208, 0.42);
    --cash-figma-mint: #34d399;
    --cash-figma-emerald: #059669;
    --cash-figma-red: #ff6b6b;
  }

  html[data-cash-auth-route],
  body[data-cash-auth-route] {
    background: var(--cash-figma-bg-deep) !important;
  }

  html[data-cash-auth-route] {
    min-height: 100%;
  }

  body[data-cash-auth-route] {
    min-height: 100svh !important;
    overflow: hidden !important;
    color: var(--cash-figma-text) !important;
  }

  body[data-cash-auth-route]::before,
  body[data-cash-auth-route]::after {
    position: fixed;
    inset: 0;
    z-index: 2147481000;
    display: block;
    pointer-events: none;
    content: "";
  }

  body[data-cash-auth-route]::before {
    background:
      radial-gradient(circle at 15% 18%, rgba(52, 211, 153, 0.14), transparent 28%),
      radial-gradient(circle at 88% 78%, rgba(16, 185, 129, 0.11), transparent 30%),
      radial-gradient(ellipse at 50% 102%, rgba(5, 150, 105, 0.14), transparent 44%),
      linear-gradient(135deg, #07170f 0%, #06130d 48%, #04100b 100%);
  }

  body[data-cash-auth-route]::after {
    opacity: 0.44;
    background-image:
      linear-gradient(rgba(111, 239, 185, 0.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(111, 239, 185, 0.035) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(to bottom, black, transparent 88%);
  }

  body[data-cash-auth-route] [data-radix-dialog-overlay],
  body[data-cash-auth-route] .nexo-dialog-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482000 !important;
    background: rgba(2, 14, 9, 0.78) !important;
    backdrop-filter: blur(15px) saturate(0.8) !important;
  }

  body[data-cash-auth-route] .nexo-dialog.cash-login-dialog[data-state="open"],
  body[data-cash-auth-route] .nexo-dialog.cash-registration-dialog[data-state="open"] {
    position: fixed !important;
    top: 50vh !important;
    left: 50vw !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 2147482500 !important;
    display: block !important;
    width: min(440px, calc(100vw - 32px)) !important;
    max-width: 440px !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: calc(100svh - 24px) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: translate(-50%, -50%) !important;
    translate: none !important;
    border: 1px solid rgba(52, 211, 153, 0.12) !important;
    border-radius: 26px !important;
    outline: 0 !important;
    background: linear-gradient(160deg, rgba(15, 30, 20, 0.97) 0%, rgba(10, 20, 15, 0.99) 100%) !important;
    backdrop-filter: blur(40px) !important;
    color: var(--cash-figma-text) !important;
    box-shadow: 0 0 60px rgba(52, 211, 153, 0.08), 0 32px 80px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(52, 211, 153, 0.1) !important;
    scrollbar-width: none !important;
  }

  body[data-cash-auth-route] .nexo-dialog.cash-login-dialog[data-state="open"]::-webkit-scrollbar,
  body[data-cash-auth-route] .nexo-dialog.cash-registration-dialog[data-state="open"]::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
  }

  body[data-cash-auth-route] .nexo-dialog.cash-login-dialog[data-state="open"]::before,
  body[data-cash-auth-route] .nexo-dialog.cash-registration-dialog[data-state="open"]::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 8;
    height: 2px;
    pointer-events: none;
    content: "";
    background: linear-gradient(90deg, transparent, var(--cash-figma-mint), #6ee7b7, var(--cash-figma-emerald), transparent);
    background-size: 200% auto;
    animation: cash-figma-shimmer 3.2s linear infinite;
  }

  body[data-cash-auth-route] .nexo-dialog[data-state="open"] > [data-slot="dialog-header"] {
    display: none !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand {
    position: relative !important;
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 40px 40px 32px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(111, 239, 185, 0.09) !important;
    background: linear-gradient(155deg, rgba(52, 211, 153, 0.08), rgba(5, 150, 105, 0.025) 58%, transparent) !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand::before {
    position: absolute;
    top: 40px;
    left: 40px;
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 1px solid rgba(110, 231, 183, 0.38);
    border-radius: 10px;
    content: "✦";
    background: linear-gradient(135deg, var(--cash-figma-mint), var(--cash-figma-emerald));
    color: white;
    font-size: 18px;
    font-weight: 800;
    box-shadow: 0 0 22px rgba(52, 211, 153, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  body[data-cash-auth-route] .cash-dialog-brand-glow {
    display: block !important;
    position: absolute !important;
    top: -40px !important;
    right: -40px !important;
    width: 180px !important;
    height: 180px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, rgba(52, 211, 153, 0.17), transparent 70%) !important;
    pointer-events: none !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand-copy {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand-eyebrow {
    display: block !important;
    margin: 0 !important;
    overflow-wrap: anywhere !important;
    color: rgba(110, 231, 183, 0.82) !important;
    font-family: Inter, system-ui, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand-eyebrow span {
    color: rgba(110, 231, 183, 0.66) !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand-title {
    display: block !important;
    width: 100% !important;
    max-width: 390px !important;
    margin: 11px 0 0 !important;
    overflow-wrap: anywhere !important;
    color: var(--cash-figma-text) !important;
    font-family: 'Sora', 'Inter', sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  body[data-cash-auth-route] .cash-dialog-brand-title strong {
    background: linear-gradient(90deg, #34d399, #10b981, #6ee7b7, #34d399) !important;
    background-size: 300% auto !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    font-weight: 800 !important;
  }

  body[data-cash-auth-route] .cash-auth-subtitle {
    display: block !important;
    margin: 8px 0 0 !important;
    color: var(--cash-figma-muted) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
  }

  body[data-cash-auth-route] .cash-registration-pix-notice,
  body[data-cash-auth-route] .cash-referral-invite {
    width: auto !important;
    min-width: 0 !important;
    margin: 20px 31px 0 !important;
    padding: 12px 14px !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(110, 231, 183, 0.16) !important;
    border-radius: 14px !important;
    background: rgba(17, 59, 40, 0.44) !important;
    color: var(--cash-figma-muted) !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  body[data-cash-auth-route] .cash-registration-pix-notice strong,
  body[data-cash-auth-route] .cash-referral-invite strong {
    color: var(--cash-figma-text) !important;
    font-weight: 700 !important;
  }

  body[data-cash-auth-route] .cash-registration-pix-notice p,
  body[data-cash-auth-route] .cash-referral-invite p,
  body[data-cash-auth-route] .cash-referral-invite span {
    margin: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
  }

  body[data-cash-auth-route] .cash-referral-invite {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }

  body[data-cash-auth-route] .cash-referral-invite code {
    flex: 0 0 auto !important;
    max-width: 42% !important;
    overflow: hidden !important;
    color: var(--cash-figma-mint) !important;
    font-size: 10px !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body[data-cash-auth-route] .cash-auth-step-rail {
    display: none !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) 28px !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    box-sizing: border-box !important;
    margin: 0 0 4px !important;
    padding: 9px 10px !important;
    border: 1px solid rgba(52, 211, 153, 0.22) !important;
    border-radius: 15px !important;
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.11), rgba(5, 150, 105, 0.05)) !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro > span:first-child {
    display: grid !important;
    width: 34px !important;
    height: 34px !important;
    place-items: center !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, var(--cash-figma-mint), var(--cash-figma-emerald)) !important;
    color: #042016 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro > div {
    min-width: 0 !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro p {
    margin: 0 !important;
    color: rgba(110, 231, 183, 0.8) !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro strong {
    display: block !important;
    margin-top: 4px !important;
    overflow-wrap: anywhere !important;
    color: var(--cash-figma-text) !important;
    font-size: 13px !important;
    line-height: 1.18 !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro .cash-registration-validation {
    display: grid !important;
    width: 28px !important;
    height: 28px !important;
    place-items: center !important;
    color: var(--cash-figma-mint) !important;
  }

  body[data-cash-auth-route] .cash-registration-step-intro .cash-registration-validation svg {
    width: 18px !important;
    height: 18px !important;
  }

  body[data-cash-auth-route] form.cash-login-form {
    display: grid !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    gap: 13px !important;
    margin: 0 !important;
    padding: 32px 40px 36px !important;
    box-sizing: border-box !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: left !important;
  }

  body[data-cash-auth-route] form.cash-login-form > div:not(.cash-auth-switch-line):not(.cash-registration-step-intro) {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body[data-cash-auth-route] form.cash-login-form label {
    display: block !important;
    margin: 0 !important;
    color: rgba(190, 226, 208, 0.78) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.07em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
  }

  body[data-cash-auth-route] form.cash-login-form input:not([type="checkbox"]) {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 50px !important;
    min-height: 50px !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(111, 239, 185, 0.18) !important;
    border-radius: 13px !important;
    outline: none !important;
    padding: 14px 16px 14px 46px !important;
    background: rgba(3, 17, 11, 0.54) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236ee7b7' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") no-repeat 16px center / 18px 18px !important;
    color: var(--cash-figma-text) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
    transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease !important;
  }

  body[data-cash-auth-route] form.cash-login-form input:not([type="checkbox"])::placeholder {
    color: rgba(190, 226, 208, 0.42) !important;
    opacity: 1 !important;
  }

  body[data-cash-auth-route] form.cash-login-form input:not([type="checkbox"]):focus {
    border-color: rgba(52, 211, 153, 0.72) !important;
    background: rgba(8, 38, 25, 0.72) !important;
    box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.11), 0 0 24px rgba(16, 185, 129, 0.09) !important;
  }

  body[data-cash-auth-route] form.cash-login-form p {
    display: block !important;
    margin: 0 !important;
    color: var(--cash-figma-faint) !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="submit"],
  body[data-cash-auth-route] form.cash-login-form .cash-registration-continue {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 4px 0 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #34d399 0%, #10b981 52%, #059669 100%) !important;
    color: #f2fff9 !important;
    font-family: 'Sora', 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
    box-shadow: 0 12px 28px rgba(5, 150, 105, 0.26), 0 0 20px rgba(52, 211, 153, 0.13), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
    transition: transform 180ms ease, filter 180ms ease, box-shadow 180ms ease !important;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="submit"]::after,
  body[data-cash-auth-route] form.cash-login-form .cash-registration-continue::after {
    position: absolute;
    inset: -50% auto -50% -38%;
    width: 26%;
    pointer-events: none;
    content: "";
    background: linear-gradient(105deg, transparent, rgba(255, 255, 255, 0.26), transparent);
    transform: skewX(-18deg);
    transition: left 420ms ease, opacity 420ms ease;
    opacity: 0;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="submit"]:hover,
  body[data-cash-auth-route] form.cash-login-form .cash-registration-continue:hover {
    filter: brightness(1.05) saturate(1.04) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 16px 32px rgba(5, 150, 105, 0.31), 0 0 28px rgba(52, 211, 153, 0.19), inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="submit"]:hover::after,
  body[data-cash-auth-route] form.cash-login-form .cash-registration-continue:hover::after {
    left: 112%;
    opacity: 1;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="submit"]:active,
  body[data-cash-auth-route] form.cash-login-form .cash-registration-continue:active {
    transform: scale(0.985) !important;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="button"]:not(.cash-auth-create-account-link) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: rgba(110, 231, 183, 0.72) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    transition: color 180ms ease, background 180ms ease !important;
  }

  body[data-cash-auth-route] form.cash-login-form button[type="button"]:not(.cash-auth-create-account-link):hover {
    background: rgba(52, 211, 153, 0.07) !important;
    color: var(--cash-figma-mint) !important;
  }

  body[data-cash-auth-route] .cash-auth-switch-line {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 38px !important;
    margin: 2px 0 0 !important;
    padding: 15px 0 0 !important;
    border-top: 1px solid var(--cash-figma-line) !important;
    color: var(--cash-figma-faint) !important;
    font-size: 11px !important;
  }

  body[data-cash-auth-route] .cash-auth-create-account-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 31px !important;
    padding: 0 11px !important;
    border: 1px solid rgba(110, 231, 183, 0.28) !important;
    border-radius: 9px !important;
    background: rgba(52, 211, 153, 0.06) !important;
    color: var(--cash-figma-mint) !important;
    font-size: 10px !important;
    font-weight: 750 !important;
    letter-spacing: 0.04em !important;
    transition: background 180ms ease, border-color 180ms ease !important;
  }

  body[data-cash-auth-route] .cash-auth-create-account-link:hover {
    border-color: rgba(110, 231, 183, 0.58) !important;
    background: rgba(52, 211, 153, 0.12) !important;
  }

  body[data-cash-auth-route] .cash-auth-security-grid {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: calc(100% - 62px) !important;
    margin: -9px 31px 0 !important;
    padding: 9px 13px !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(111, 239, 185, 0.11) !important;
    border-radius: 999px !important;
    background: rgba(52, 211, 153, 0.035) !important;
  }

  body[data-cash-auth-route] .cash-auth-security-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    min-width: 0 !important;
    color: rgba(190, 226, 208, 0.48) !important;
    font-size: 8px !important;
    line-height: 1.15 !important;
    text-align: center !important;
  }

  body[data-cash-auth-route] .cash-auth-security-icon {
    color: rgba(110, 231, 183, 0.72) !important;
    font-size: 12px !important;
  }

  body[data-cash-auth-route] .cash-auth-back-link {
    display: block !important;
    width: max-content !important;
    margin: 13px auto 19px !important;
    color: rgba(110, 231, 183, 0.58) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
  }

  body[data-cash-auth-route] .cash-auth-back-link:hover {
    color: var(--cash-figma-mint) !important;
  }

  body[data-cash-auth-route] .nexo-dialog[data-state="open"] > [data-slot="dialog-close"] {
    position: absolute !important;
    top: 17px !important;
    right: 17px !important;
    z-index: 40 !important;
    display: grid !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    max-width: 36px !important;
    max-height: 36px !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(255, 150, 150, 0.54) !important;
    border-radius: 11px !important;
    background: rgba(105, 25, 29, 0.86) !important;
    color: #ffd7d7 !important;
    opacity: 1 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
    transition: background 180ms ease, transform 180ms ease, border-color 180ms ease !important;
  }

  body[data-cash-auth-route] .nexo-dialog[data-state="open"] > [data-slot="dialog-close"]:hover {
    border-color: rgba(255, 190, 190, 0.78) !important;
    background: rgba(155, 38, 45, 0.96) !important;
    transform: translateY(-1px) !important;
  }

  body[data-cash-auth-route] .nexo-dialog[data-state="open"] > [data-slot="dialog-close"] svg {
    width: 17px !important;
    height: 17px !important;
    stroke: currentColor !important;
    stroke-width: 2.5 !important;
  }

  @keyframes cash-figma-shimmer {
    0% { background-position: -200% center; }
    100% { background-position: 200% center; }
  }

  @media (min-width: 700px) {
    body[data-cash-auth-route] .nexo-dialog.cash-login-dialog[data-state="open"],
    body[data-cash-auth-route] .nexo-dialog.cash-registration-dialog[data-state="open"] {
      max-height: calc(100svh - 48px) !important;
    }
  }

  @media (max-width: 699px) {
    body[data-cash-auth-route] .cash-dialog-brand {
      padding: 27px 57px 22px 62px !important;
    }

    body[data-cash-auth-route] .cash-dialog-brand::before {
      top: 26px;
      left: 20px;
    }

    body[data-cash-auth-route] .cash-dialog-brand-title {
      font-size: clamp(24px, 7.3vw, 30px) !important;
    }

    body[data-cash-auth-route] form.cash-login-form {
      padding: 22px 20px 23px !important;
    }

    body[data-cash-auth-route] .cash-registration-pix-notice,
    body[data-cash-auth-route] .cash-referral-invite {
      margin-right: 20px !important;
      margin-left: 20px !important;
    }

    body[data-cash-auth-route] .cash-auth-security-grid {
      width: calc(100% - 40px) !important;
      margin-right: 20px !important;
      margin-left: 20px !important;
    }

    body[data-cash-auth-route] .nexo-dialog[data-state="open"] > [data-slot="dialog-close"] {
      top: 14px !important;
      right: 14px !important;
    }
  }

  @media (max-width: 370px) {
    body[data-cash-auth-route] .cash-dialog-brand {
      padding-right: 49px !important;
      padding-left: 58px !important;
    }

    body[data-cash-auth-route] .cash-dialog-brand::before {
      left: 16px;
    }

    body[data-cash-auth-route] form.cash-login-form {
      padding-right: 16px !important;
      padding-left: 16px !important;
    }

    body[data-cash-auth-route] .cash-registration-pix-notice,
    body[data-cash-auth-route] .cash-referral-invite,
    body[data-cash-auth-route] .cash-auth-security-grid {
      margin-right: 16px !important;
      margin-left: 16px !important;
    }

    body[data-cash-auth-route] .cash-auth-security-grid {
      width: calc(100% - 32px) !important;
      gap: 5px !important;
      padding-right: 8px !important;
      padding-left: 8px !important;
    }

    body[data-cash-auth-route] .cash-auth-security-item {
      font-size: 7px !important;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    body[data-cash-auth-route] *,
    body[data-cash-auth-route] *::before,
    body[data-cash-auth-route] *::after {
      scroll-behavior: auto !important;
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
    }
  }


@layer theme {
  html body[data-cash-auth-route] .nexo-dialog.cash-login-dialog[data-state="open"],
  html body[data-cash-auth-route] .nexo-dialog.cash-registration-dialog[data-state="open"] {
    background: linear-gradient(160deg, rgba(15, 30, 20, 0.97) 0%, rgba(10, 20, 15, 0.99) 100%) padding-box, conic-gradient(from var(--cash-figma-angle), transparent 70%, #34d399, #059669, #34d399, transparent 30%) border-box !important;
    border: 1.5px solid transparent !important;
    box-shadow: 0 0 60px rgba(52, 211, 153, 0.08), 0 32px 80px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(52, 211, 153, 0.1) !important;
    animation: cash-figma-border-rotate 4s linear infinite !important;
  }
}


/* Native registration medallion is a legacy visual; the Figma reference uses one mint mark. */
html body[data-cash-auth-route] .nexo-dialog.cash-registration-dialog .cash-dialog-brand-medallion {
  display: none !important;
}

@media (min-width: 700px) {
  html body[data-cash-auth-route] .cash-dialog-brand {
    padding-left: 86px !important;
  }
}


/* The current release omits the old security-grid node; render the Figma SSL badge as CSS-only decoration. */
html body[data-cash-auth-route="login"] form.cash-login-form::after {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: center !important;
  width: max-content !important;
  max-width: 100% !important;
  min-height: 31px !important;
  margin: 7px auto 0 !important;
  padding: 8px 14px 8px 31px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(52, 211, 153, 0.08) !important;
  border-radius: 20px !important;
  background: rgba(52, 211, 153, 0.04) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2334d399' stroke-width='2'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E") no-repeat 14px center / 12px 12px !important;
  color: rgba(52, 211, 153, 0.45) !important;
  content: "Conexão segura com criptografia SSL" !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.03em !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

@media (max-width: 370px) {
  html body[data-cash-auth-route="login"] form.cash-login-form::after {
    padding-right: 10px !important;
    padding-left: 28px !important;
    font-size: 9px !important;
    background-position: 11px center !important;
  }
}


@property --cash-figma-angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}

@keyframes cash-figma-border-rotate {
  0% { --cash-figma-angle: 0deg; }
  100% { --cash-figma-angle: 360deg; }
}
