:root {
    --gb-ink: #10233f;
    --gb-ink-deep: #09182c;
    --gb-primary: #13b8a6;
    --gb-primary-dark: #0d847d;
    --gb-mint: #38d6c2;
    --gb-blue: #3977c5;
    --gb-canvas: #f3f7fa;
    --gb-surface: #ffffff;
    --gb-line: #dce7ed;
    --gb-muted: #617589;
    --gb-shadow: 0 18px 52px rgba(16, 35, 63, .09);
    --gb-radius: 18px;
    --primary: var(--gb-primary);
    --primary-light: var(--gb-mint);
    --primary-dark: var(--gb-primary-dark);
    --accent: var(--gb-blue);
    --gradient-start: var(--gb-primary-dark);
    --gradient-end: var(--gb-mint);
}

/* GetBank public landing */
:root {
    --v3-ink: #10233f;
    --v3-dark: #09182c;
    --v3-primary: #13b8a6;
    --v3-primary-dark: #0d847d;
    --v3-secondary: #38d6c2;
    --v3-accent: #3977c5;
    --v3-highlight: #13b8a6;
    --v3-highlight-soft: rgba(19, 184, 166, .12);
    --v3-bg: #f3f7fa;
    --v3-surface: #ffffff;
    --v3-surface-alt: #edf6f6;
    --v3-white: #ffffff;
    --v3-muted: #617589;
    --v3-border: #dce7ed;
    --v3-hero-start: #f0f8f8;
    --v3-hero-end: #f3f7fa;
    --v3-hero-surface: rgba(255,255,255,.82);
    --v3-hero-border: rgba(19,184,166,.18);
    --v3-nav-bg: rgba(255,255,255,.92);
    --v3-primary-soft: rgba(19,184,166,.1);
    --v3-shadow: 0 24px 70px rgba(16,35,63,.12);
    --v3-radius: 20px;
}
.v3-nav { border-bottom: 1px solid rgba(16,35,63,.08) !important; box-shadow: 0 8px 30px rgba(16,35,63,.04); }
.v3-brand img, .v3-footer-brand img { max-width: 176px !important; max-height: 52px !important; object-fit: contain; }
.v3-btn-primary { color: #08253a !important; background: linear-gradient(135deg,#38d6c2,#13b8a6) !important; box-shadow: 0 12px 26px rgba(19,184,166,.22) !important; }
.v3-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(19,184,166,.28) !important; }
.v3-kicker, .v3-number, .v3-feature-icon { color: var(--gb-primary-dark) !important; }
.v3-section-dark, .v3-cta { background: linear-gradient(140deg,#10233f,#0b2b3c) !important; }
.v3-section-dark h2, .v3-cta h2 { color: #f5fafc !important; }
.v3-control-shell, .v3-product-screen { border-color: rgba(19,184,166,.16) !important; box-shadow: 0 34px 90px rgba(12,35,57,.2) !important; }
.v3-feature, .v3-insight-card, .v3-proof-item, .v3-faq details { border-radius: 16px !important; box-shadow: 0 12px 34px rgba(16,35,63,.055); }

/* Sign in, registration and recovery */
.auth-v2 { --auth-bg: #edf3f6; --auth-panel: #ffffff; --auth-panel-soft: #f5f9fa; --auth-border: #dce7ed; --auth-text: #10233f; --auth-muted: #617589; --auth-primary: #13b8a6; --auth-primary-dark: #0d847d; --auth-accent: #3977c5; --auth-blue: #3977c5; --auth-success: #139b79; --auth-shadow: 0 28px 80px rgba(16,35,63,.14); }
.auth-v2::before { background: radial-gradient(circle at 16% 18%, rgba(19,184,166,.13), transparent 32%), radial-gradient(circle at 86% 16%, rgba(57,119,197,.1), transparent 30%), linear-gradient(rgba(16,35,63,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(16,35,63,.025) 1px,transparent 1px) !important; }
.auth-v2 .main-container { width: min(1180px, calc(100% - 36px)); gap: clamp(28px,6vw,76px); }
.auth-v2 .auth-container { border-radius: 22px; background: rgba(255,255,255,.96); box-shadow: var(--auth-shadow); }
.auth-v2 .auth-header { border-bottom-color: #e7eef2; }
.auth-v2 .auth-logo { max-width: 190px; max-height: 54px; }
.auth-v2 .auth-title { color: var(--gb-ink); letter-spacing: -.035em; }
.auth-v2 .auth-subtitle, .auth-v2 .form-label { color: var(--gb-muted); }
.auth-v2 .auth-body { color: var(--gb-ink); }
.auth-v2 .form-control { color: var(--gb-ink); background: #f8fbfc; border: 1px solid #dce7ed; border-radius: 12px; box-shadow: none; }
.auth-v2 .form-control:focus { border-color: var(--gb-primary); background: #fff; box-shadow: 0 0 0 4px rgba(19,184,166,.12); }
.auth-v2 .input-icon, .auth-v2 .password-toggle { color: #72889a; }
.auth-v2 .btn-login, .auth-v2 .btn-register { color: #09283a; border: 0; border-radius: 12px; background: linear-gradient(135deg,#38d6c2,#13b8a6); box-shadow: 0 12px 24px rgba(19,184,166,.2); }
.auth-v2 .btn-login:hover, .auth-v2 .btn-register:hover { filter: saturate(1.08); transform: translateY(-1px); }
.auth-v2 .info-section { padding: clamp(26px,4vw,48px); border: 1px solid rgba(255,255,255,.12); border-radius: 24px; background: radial-gradient(circle at 85% 12%,rgba(56,214,194,.18),transparent 32%),linear-gradient(150deg,#10233f,#0b2b3c); box-shadow: 0 30px 80px rgba(16,35,63,.18); }
.auth-v2 .info-title { color: #f6fbfc; }
.auth-v2 .info-subtitle, .auth-v2 .feature-description { color: #b6c9d2; }
.auth-v2 .feature-card { border-color: rgba(222,245,242,.14); background: rgba(255,255,255,.055); }
.auth-v2 .feature-icon { color: var(--gb-mint); }
.auth-v2 .feature-title { color: #eef9f8; }
.auth-v2 .auth-footer, .auth-v2 .footer { color: #718498; }
.auth-v2 .auth-footer a, .auth-v2 .footer a { color: var(--gb-primary-dark); font-weight: 700; }

/* User dashboard */
.user-sidebar { background: linear-gradient(180deg,#09182c 0%,#10233f 58%,#0b2b3c 100%) !important; border-right-color: rgba(174,214,219,.12) !important; box-shadow: 14px 0 42px rgba(9,24,44,.12) !important; }
.user-brand img { max-width: 172px !important; max-height: 46px !important; object-fit: contain; }
.user-nav-link.active { color: #f3fffd !important; background: rgba(19,184,166,.17) !important; box-shadow: inset 3px 0 0 #38d6c2; }
.user-nav-link:hover { background: rgba(255,255,255,.08) !important; }
.user-main { background: var(--gb-canvas) !important; }
.user-topbar { background: rgba(255,255,255,.9) !important; border-bottom-color: var(--gb-line) !important; backdrop-filter: blur(14px); }
.user-page-kicker { color: var(--gb-primary-dark) !important; }
.user-page-title { color: var(--gb-ink) !important; letter-spacing: -.035em; }
.user-content { background: var(--gb-canvas) !important; }
.user-content .card, .user-content .stat-card, .user-content .dashboard-card { border-color: var(--gb-line) !important; border-radius: 16px !important; box-shadow: 0 12px 34px rgba(16,35,63,.055) !important; }
.user-footer { color: #75889a !important; }

/* Admin dashboard */
.bank-sidebar { background: linear-gradient(180deg,#09182c 0%,#10233f 58%,#0b2b3c 100%) !important; border-right-color: rgba(174,214,219,.12) !important; box-shadow: 14px 0 42px rgba(9,24,44,.12) !important; }
.bank-brand img { max-width: 172px !important; max-height: 48px !important; object-fit: contain; }
.bank-nav-link.active { color: #f3fffd !important; background: rgba(19,184,166,.17) !important; box-shadow: inset 3px 0 0 #38d6c2 !important; }
.bank-nav-link:hover, .bank-nav-toggle:hover { background: rgba(255,255,255,.08) !important; }
.bank-nav-link i:first-child, .bank-nav-toggle i:first-child { color: #70dccd !important; }
.bank-main, .bank-content { background: var(--gb-canvas) !important; }
.bank-topbar { background: rgba(255,255,255,.92) !important; border-bottom-color: var(--gb-line) !important; backdrop-filter: blur(14px); }
.bank-page-kicker { color: var(--gb-primary-dark) !important; }
.bank-page-title { color: var(--gb-ink) !important; letter-spacing: -.035em; }
.bank-content .card, .bank-content .stat-card, .bank-content .dashboard-card { border-color: var(--gb-line) !important; border-radius: 16px !important; box-shadow: 0 12px 34px rgba(16,35,63,.055) !important; }

/* Legacy V1 layouts and shared screens */
body { font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.modern-sidebar { background: linear-gradient(180deg,#09182c,#10233f 58%,#0b2b3c) !important; }
.main-content { background: var(--gb-canvas) !important; }
.nav-menu .active, .pc-sidebar .pc-item.active > .pc-link { color: #0d847d !important; }
.btn-primary, .btn-success { border-color: var(--gb-primary-dark) !important; background-color: var(--gb-primary-dark) !important; }
.btn-primary:hover, .btn-success:hover { background-color: #096d69 !important; }
.form-control:focus, .form-select:focus { border-color: var(--gb-primary); box-shadow: 0 0 0 .2rem rgba(19,184,166,.13); }

/* Brand manual page */
.gb-manual { max-width: 1320px; margin: 0 auto; color: var(--gb-ink); }
.gb-manual-hero { position: relative; overflow: hidden; padding: clamp(26px,4vw,48px); border-radius: 24px; color: #f4fbfc; background: radial-gradient(circle at 88% 12%,rgba(56,214,194,.24),transparent 34%),linear-gradient(130deg,#10233f,#0b2b3c); box-shadow: var(--gb-shadow); }
.gb-manual-hero::after { content:""; position:absolute; width:300px;height:300px;right:-90px;bottom:-180px;border:1px solid rgba(56,214,194,.3);border-radius:50%;box-shadow:0 0 0 32px rgba(56,214,194,.04),0 0 0 64px rgba(56,214,194,.035); }
.gb-manual-hero h1 { position:relative; z-index:1; margin:14px 0 10px; font-size:clamp(30px,4vw,48px); font-weight:800; letter-spacing:-.04em; }
.gb-manual-hero p { position:relative; z-index:1; max-width:680px; margin:0; color:#c5d6df; font-size:16px; }
.gb-manual-kicker { color:#69dfd1; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.gb-manual-section { margin-top:28px; padding:clamp(22px,3vw,34px); border:1px solid var(--gb-line); border-radius:20px; background:#fff; box-shadow:0 12px 32px rgba(16,35,63,.045); }
.gb-manual-section h2 { margin:0 0 7px; color:var(--gb-ink); font-size:23px; font-weight:800; letter-spacing:-.03em; }
.gb-manual-section > p { margin:0 0 22px; color:var(--gb-muted); }
.gb-logo-grid,.gb-color-grid,.gb-post-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.gb-logo-sample { min-height:190px; display:flex; flex-direction:column; justify-content:space-between; padding:22px; border:1px solid var(--gb-line); border-radius:16px; background:linear-gradient(135deg,#fff,#f6fafb); }
.gb-logo-sample.dark { color:#fff; border-color:#19364d; background:linear-gradient(135deg,#10233f,#0b2b3c); }
.gb-logo-sample img { width:min(100%,310px); height:64px; object-fit:contain; object-position:left center; }
.gb-logo-sample span { font-size:12px; font-weight:700; opacity:.74; }
.gb-download { display:inline-flex; align-items:center; gap:8px; color:var(--gb-primary-dark); font-weight:800; text-decoration:none; }
.gb-color-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.gb-color { overflow:hidden; border:1px solid var(--gb-line); border-radius:14px; background:#fff; }
.gb-color-swatch { height:76px; background:var(--swatch); }
.gb-color-meta { padding:12px 14px; }
.gb-color-meta strong,.gb-color-meta code { display:block; }
.gb-color-meta code { margin-top:4px; color:var(--gb-muted); }
.gb-type-sample { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:18px; padding:22px; border-radius:16px; background:#f4f8fa; }
.gb-type-sample strong { color:var(--gb-ink); font-size:30px; letter-spacing:-.04em; }
.gb-type-sample span { color:var(--gb-muted); }
.gb-guidelines { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.gb-guideline { padding:20px; border-radius:16px; background:#f5f9fa; }
.gb-guideline h3 { margin:0 0 10px; color:var(--gb-ink); font-size:16px; font-weight:800; }
.gb-guideline li { margin:7px 0; color:var(--gb-muted); }
.gb-post-card { overflow:hidden; border:1px solid var(--gb-line); border-radius:16px; background:#fff; }
.gb-post-card img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; background:#eef3f5; }
.gb-post-info { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; }
.gb-post-info strong { display:block; color:var(--gb-ink); }
.gb-post-info small { display:block; color:var(--gb-muted); }
@media(max-width:900px){.gb-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:680px){.gb-logo-grid,.gb-post-grid,.gb-guidelines{grid-template-columns:1fr}.gb-manual-section{padding:20px}.auth-v2 .main-container{width:min(100% - 28px,560px);grid-template-columns:1fr;grid-template-areas:"auth" "info";padding:26px 0 54px}.auth-v2 .info-section{padding:24px}.auth-v2 .auth-header{padding:24px 20px 18px}.auth-v2 .auth-body{padding:22px}}

/* Admin access screen */
.login-container { min-height:100vh; padding:clamp(20px,5vw,64px); background:radial-gradient(circle at 12% 20%,rgba(19,184,166,.15),transparent 30%),linear-gradient(145deg,#eff5f7,#f8fbfc) !important; }
.login-card { border:1px solid #dce7ed !important; border-radius:24px !important; background:#fff !important; box-shadow:0 28px 80px rgba(16,35,63,.15) !important; }
.login-card::before { background:linear-gradient(90deg,#13b8a6,#38d6c2) !important; }
.login-title { color:#10233f !important; letter-spacing:-.035em; }
.login-subtitle,.login-footer { color:#617589 !important; }
.login-card .form-control { color:#10233f !important; background:#f8fbfc !important; border-color:#dce7ed !important; border-radius:12px !important; }
.login-card .form-control:focus { border-color:#13b8a6 !important; box-shadow:0 0 0 4px rgba(19,184,166,.12) !important; }
.login-card .btn-login { color:#09283a !important; border:0 !important; border-radius:12px !important; background:linear-gradient(135deg,#38d6c2,#13b8a6) !important; box-shadow:0 12px 24px rgba(19,184,166,.2) !important; }

/* GetBank landing: contrast and visual hierarchy refinement */
:root {
    --v3-ink: #10233f;
    --v3-muted: #52677c;
    --v3-dark: #071423;
    --v3-highlight: #65e0d2;
    --v3-highlight-soft: rgba(101, 224, 210, .14);
    --v3-surface-alt: #eef4f7;
    --v3-hero-start: #08172a;
    --v3-hero-end: #0d3345;
    --v3-hero-surface: #10283b;
    --v3-hero-border: rgba(101, 224, 210, .24);
    --v3-primary-soft: rgba(13, 132, 125, .09);
    --v3-shadow: 0 24px 70px rgba(16, 35, 63, .12);
}
.v3-hero {
    color: #f6fbff !important;
    background: linear-gradient(118deg, #08172a 0%, #0b2639 58%, #0d3345 100%) !important;
}
.v3-hero::before {
    opacity: .48 !important;
    background: radial-gradient(ellipse at 88% 35%, rgba(19,184,166,.22), transparent 36%), linear-gradient(116deg, #08172a 0%, #0b2639 58%, #0d3345 100%) !important;
}
.v3-hero::after { opacity: .12 !important; }
.v3-hero .v3-kicker,
.v3-section-dark .v3-kicker,
.v3-code-panel .v3-kicker,
.v3-cta .v3-kicker { color: #65e0d2 !important; }
.v3-hero h1 em { color: #65e0d2 !important; }
.v3-hero-copy { color: #d0dfe8 !important; }
.v3-hero-meta { color: #c0d1dc !important; }
.v3-section-dark {
    color: #f4f8fb !important;
    background: linear-gradient(135deg, #09182b 0%, #0d2638 100%) !important;
}
.v3-section-dark h2,
.v3-section-dark h3,
.v3-cta h2 { color: #f4f8fb !important; }
.v3-section-dark .v3-section-head p { color: #c4d2dd !important; }
.v3-cta {
    color: #f4f8fb !important;
    background: radial-gradient(ellipse at 50% 0%, #123c4d 0%, #0b2639 46%, #08172a 100%) !important;
}
.v3-cta p { color: #d0dfe8 !important; }
.v3-insight-lead,
.v3-solution-board,
.v3-code-panel,
.v3-shield,
.v3-usecase-stage,
.v3-proof-quote {
    color: #f4f8fb !important;
    background: linear-gradient(145deg, #10283b, #0c2032) !important;
    border-color: rgba(101, 224, 210, .22) !important;
    box-shadow: 0 22px 54px rgba(8, 23, 42, .16) !important;
}
.v3-insight-lead p,
.v3-board-label,
.v3-code-panel p,
.v3-usecase-content p { color: #c4d2dd !important; }
.v3-proof-quote strong,
.v3-insight-route,
.v3-board-label b { color: #65e0d2 !important; }
.v3-insight-card,
.v3-feature,
.v3-proof-item,
.v3-product-screen,
.v3-faq details {
    color: #10233f;
    border-color: #d8e3e9 !important;
    box-shadow: 0 12px 32px rgba(16, 35, 63, .06) !important;
}
.v3-insight-card i,
.v3-proof-item i { color: #0d847d !important; }
.v3-feature-icon { color: #0d847d !important; }
.v3-usecase-tab.active { color: #075f5d !important; border-color: #b8dfd9 !important; }
.v3-btn-primary { color: #08253a !important; }
.v3-nav-links a:hover,
.v3-nav-links a.is-active { color: #075f5d !important; }
.v3-nav-links a::after { background: #0d847d !important; }
.v3-footer { color: #c4d2dd !important; }
.v3-footer-links a:hover { color: #65e0d2 !important; }
@media (prefers-reduced-motion: reduce) {
    .v3-hero-glow, .v3-control-shell::before, .v3-shield::before, .v3-shield::after { animation: none !important; }
}

/* Compact hero so the primary actions stay in the first viewport */
@media (min-width: 1051px) {
    .v3-hero-inner { padding: clamp(38px, 6vh, 64px) 0 clamp(42px, 6vh, 68px) !important; }
    .v3-hero-grid { gap: clamp(30px, 4vw, 52px) !important; }
    .v3-hero h1 { max-width: 620px; margin: 14px 0 16px !important; font-size: clamp(40px, 4.25vw, 60px) !important; line-height: 1.04 !important; }
    .v3-hero-copy { max-width: 540px; font-size: 16px !important; line-height: 1.55; }
    .v3-hero-actions { gap: 9px; margin-top: 22px !important; }
    .v3-hero-meta { gap: 14px; margin-top: 19px !important; font-size: 11px; }
    .v3-control-app { min-height: 350px !important; }
    .v3-app-main { padding: 16px !important; }
    .v3-app-stats { gap: 7px; margin-top: 14px; }
    .v3-stat { min-height: 70px; padding: 10px; }
    .v3-stat strong { margin-top: 7px; font-size: 16px; }
    .v3-app-panels { gap: 7px; margin-top: 7px; }
    .v3-app-panel { min-height: 140px; padding: 12px; }
    .v3-panel-title { margin-bottom: 11px; }
    .v3-bars { height: 78px; }
    .v3-trust-item { min-height: 78px; padding: 12px 16px; }
}
@media (min-width: 761px) and (max-width: 1050px) {
    .v3-hero-inner { padding: 46px 0 50px !important; }
    .v3-hero-grid { gap: 30px !important; }
    .v3-hero h1 { margin: 13px 0 15px !important; font-size: clamp(40px, 5.5vw, 56px) !important; line-height: 1.04 !important; }
    .v3-hero-copy { font-size: 16px !important; }
    .v3-hero-actions { margin-top: 21px !important; }
    .v3-hero-meta { margin-top: 19px !important; }
    .v3-control-app { min-height: 350px !important; }
}
@media (max-width: 760px) {
    .v3-hero-inner { padding: 40px 0 46px !important; }
    .v3-hero-grid { gap: 30px !important; }
    .v3-hero h1 { margin: 13px 0 15px !important; font-size: clamp(36px, 9vw, 48px) !important; line-height: 1.05 !important; }
    .v3-hero-copy { font-size: 15px !important; }
    .v3-hero-actions { display: flex !important; gap: 9px; margin-top: 21px !important; }
    .v3-hero-actions .v3-btn { min-height: 44px; padding: 0 13px; font-size: 12px; }
    .v3-hero-meta { gap: 9px 14px; margin-top: 18px !important; font-size: 10px; }
    .v3-control-app { min-height: 0 !important; }
    .v3-app-panels { margin-top: 8px; }
    .v3-app-panel { min-height: 130px; }
    .v3-bars { height: 74px; }
    .v3-trust-item { min-height: 74px; padding: 13px; }
}
@media (max-width: 390px) {
    .v3-hero-actions { display: grid !important; grid-template-columns: 1fr; }
    .v3-hero-actions .v3-btn { width: 100%; }
}
@media (max-height: 760px) and (min-width: 1051px) {
    .v3-hero-inner { padding-top: 30px !important; padding-bottom: 34px !important; }
    .v3-hero h1 { font-size: clamp(38px, 4vw, 54px) !important; }
    .v3-control-app { min-height: 325px !important; }
    .v3-app-panel { min-height: 126px; }
    .v3-bars { height: 68px; }
}

/* Original GetBank payment-flow animation */
.gb-flow-scene {
    position: relative;
    width: 100%;
    min-height: 420px;
    aspect-ratio: 1.3 / 1;
    overflow: hidden;
    isolation: isolate;
    border: 1px solid rgba(101,224,210,.16);
    border-radius: 28px;
    background: radial-gradient(ellipse at 50% 48%, rgba(19,184,166,.15), transparent 39%), linear-gradient(145deg,#0d2034 0%,#09182a 62%,#0d2b3b 100%);
    box-shadow: 0 34px 80px rgba(3,13,27,.28), inset 0 1px rgba(255,255,255,.06);
}
.gb-flow-scene::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .28;
    background-image: linear-gradient(rgba(191,224,230,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(191,224,230,.13) 1px,transparent 1px);
    background-size: 34px 34px;
    mask-image: radial-gradient(ellipse at center,#000 12%,transparent 78%);
}
.gb-flow-scene::after {
    content: "";
    position: absolute;
    width: 230px;
    height: 230px;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    background: rgba(19,184,166,.10);
    filter: blur(48px);
    transform: translate(-50%,-50%);
    pointer-events: none;
}
.gb-flow-orbit {
    position: absolute;
    z-index: 0;
    top: 49%;
    left: 50%;
    border: 1px solid rgba(151,204,213,.19);
    border-radius: 50%;
    transform-origin: center;
    pointer-events: none;
}
.gb-flow-orbit-one { width: 86%; height: 67%; animation: gbFlowOrbit 28s linear infinite; }
.gb-flow-orbit-two { width: 68%; height: 91%; border-color: rgba(101,224,210,.14); animation: gbFlowOrbitReverse 34s linear infinite; }
.gb-flow-orbit i { position: absolute; top: 9%; left: 18%; width: 8px; height: 8px; border-radius: 50%; background: #65e0d2; box-shadow: 0 0 16px 4px rgba(101,224,210,.45); }
.gb-flow-orbit-two i { top: auto; right: 14%; bottom: 13%; left: auto; width: 6px; height: 6px; background: #85adf7; box-shadow: 0 0 14px 4px rgba(92,143,230,.5); }
.gb-flow-node {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 154px;
    padding: 12px 14px;
    color: #eef6fb;
    border: 1px solid rgba(186,218,226,.16);
    border-radius: 15px;
    background: linear-gradient(145deg,rgba(22,47,67,.96),rgba(14,34,51,.96));
    box-shadow: 0 14px 34px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.05);
    animation: gbNodeFloat 5s ease-in-out infinite;
}
.gb-flow-node-pix { top: 12%; left: 4%; }
.gb-flow-node-checkout { top: 13%; right: 4%; animation-delay: -1.7s; }
.gb-flow-node-api { bottom: 12%; left: 12%; animation-delay: -3.1s; }
.gb-flow-node-icon { display: grid; place-items: center; width: 36px; height: 36px; flex: 0 0 36px; color: #09243b; border-radius: 11px; background: linear-gradient(145deg,#75eadb,#25b8aa); font-size: 17px; }
.gb-flow-node-checkout .gb-flow-node-icon { background: linear-gradient(145deg,#a8c7ff,#6595e7); }
.gb-flow-node-api .gb-flow-node-icon { background: linear-gradient(145deg,#d6c8ff,#9e85e6); }
.gb-flow-node strong,.gb-flow-node small { display: block; white-space: nowrap; }
.gb-flow-node strong { font: 700 13px/1.2 "Manrope",sans-serif; }
.gb-flow-node small { margin-top: 4px; color: #a9bfcc; font-size: 9px; }
.gb-flow-core { position: absolute; z-index: 2; top: 51%; left: 50%; width: min(310px,70%); transform: translate(-50%,-50%); }
.gb-core-card {
    position: relative;
    padding: 20px 21px 17px;
    color: #f4f8fb;
    border: 1px solid rgba(101,224,210,.34);
    border-radius: 21px;
    background: linear-gradient(145deg,rgba(20,47,67,.98),rgba(9,28,45,.98));
    box-shadow: 0 26px 65px rgba(0,0,0,.3),0 0 46px rgba(19,184,166,.09),inset 0 1px rgba(255,255,255,.08);
    transition: transform .25s ease-out;
    backdrop-filter: blur(18px);
}
.gb-core-brand { display: flex; align-items: center; gap: 10px; }
.gb-core-mark { display: grid; place-items: center; width: 37px; height: 37px; color: #09283a; border-radius: 12px; background: linear-gradient(145deg,#71e5d6,#13b8a6); font: 800 22px/1 "Manrope",sans-serif; box-shadow: 0 5px 18px rgba(19,184,166,.2); }
.gb-core-brand small,.gb-core-brand strong { display: block; }
.gb-core-brand small { color: #75d9ce; font-size: 8px; font-weight: 800; letter-spacing: .16em; }
.gb-core-brand strong { margin-top: 3px; color: #f3f8fb; font: 700 12px "Manrope",sans-serif; }
.gb-core-live { width: 8px; height: 8px; margin-left: auto; border-radius: 50%; background: #45d6a2; box-shadow: 0 0 0 5px rgba(69,214,162,.12),0 0 15px rgba(69,214,162,.5); animation: gbLivePulse 2s ease-in-out infinite; }
.gb-core-amount { margin-top: 20px; }
.gb-core-amount small { display: block; color: #a9bfcc; font-size: 10px; }
.gb-core-amount strong { display: block; margin-top: 4px; font: 700 29px/1.1 "Manrope",sans-serif; letter-spacing: -.04em; }
.gb-core-progress { height: 3px; margin-top: 16px; overflow: hidden; border-radius: 5px; background: rgba(255,255,255,.1); }
.gb-core-progress span { display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#13b8a6,#82e8da); box-shadow: 0 0 12px rgba(101,224,210,.55); animation: gbProgressFlow 3.2s ease-in-out infinite; }
.gb-core-status { display: flex; align-items: center; justify-content: space-between; margin-top: 12px; color: #c8d9e2; font-size: 10px; }
.gb-core-status span { display: flex; align-items: center; gap: 6px; }
.gb-core-status i { color: #65e0b9; }
.gb-core-status small { color: #8fa8b6; font-size: 9px; }
.gb-flow-caption { position: absolute; right: 0; bottom: 17px; left: 0; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 9px; color: #93aebe; font-size: 9px; font-weight: 800; letter-spacing: .17em; }
.gb-flow-caption span { width: 19px; height: 1px; background: #65e0d2; box-shadow: 0 0 9px rgba(101,224,210,.7); }
@keyframes gbFlowOrbit { from { transform: translate(-50%,-50%) rotate(-22deg); } to { transform: translate(-50%,-50%) rotate(338deg); } }
@keyframes gbFlowOrbitReverse { from { transform: translate(-50%,-50%) rotate(32deg); } to { transform: translate(-50%,-50%) rotate(-328deg); } }
@keyframes gbNodeFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes gbLivePulse { 0%,100% { opacity: 1; box-shadow: 0 0 0 5px rgba(69,214,162,.12),0 0 15px rgba(69,214,162,.5); } 50% { opacity: .68; box-shadow: 0 0 0 8px rgba(69,214,162,.05),0 0 20px rgba(69,214,162,.35); } }
@keyframes gbProgressFlow { 0% { width: 22%; transform: translateX(-20%); } 50% { width: 82%; transform: translateX(20%); } 100% { width: 42%; transform: translateX(115%); } }
@media (max-width: 760px) {
    .gb-flow-scene { min-height: 340px; aspect-ratio: 1 / 1.05; border-radius: 22px; }
    .gb-flow-orbit-one { width: 98%; height: 65%; }
    .gb-flow-orbit-two { width: 78%; height: 88%; }
    .gb-flow-node { min-width: 0; gap: 7px; padding: 9px 10px; }
    .gb-flow-node-icon { width: 30px; height: 30px; flex-basis: 30px; border-radius: 9px; font-size: 14px; }
    .gb-flow-node strong { font-size: 11px; }
    .gb-flow-node small { font-size: 8px; }
    .gb-flow-node-pix { top: 8%; left: 2%; }
    .gb-flow-node-checkout { top: 8%; right: 2%; }
    .gb-flow-node-api { bottom: 7%; left: 3%; }
    .gb-flow-caption { right: 12px; bottom: 15px; left: auto; font-size: 7px; }
    .gb-flow-core { top: 51%; width: min(285px,76%); }
    .gb-core-card { padding: 17px 16px 15px; }
    .gb-core-amount { margin-top: 15px; }
    .gb-core-amount strong { font-size: 25px; }
    .gb-flow-caption { bottom: 17px; font-size: 8px; }
}
@media (max-width: 390px) {
    .gb-flow-scene { min-height: 320px; }
    .gb-flow-node { gap: 6px; padding: 8px; }
    .gb-flow-node small { font-size: 7px; }
    .gb-flow-core { width: 79%; }
    .gb-core-card { padding: 15px 13px; }
}
@media (prefers-reduced-motion: reduce) {
    .gb-flow-orbit,.gb-flow-node,.gb-core-live,.gb-core-progress span { animation: none !important; }
}

/* Hero copy breathing room */
.v3-hero h1 { max-width: 570px; margin: 18px 0 20px !important; font-size: clamp(40px, 4.1vw, 58px) !important; line-height: 1.08 !important; letter-spacing: -.045em !important; }
.v3-hero .v3-hero-copy { max-width: 470px; font-size: 16px !important; line-height: 1.7 !important; }
.v3-hero-actions { gap: 11px; margin-top: 25px !important; }
.v3-hero-meta { gap: 14px; margin-top: 20px !important; }
@media (min-width: 761px) and (max-width: 1050px) {
    .v3-hero h1 { margin: 16px 0 18px !important; font-size: clamp(40px, 5vw, 54px) !important; }
    .v3-hero .v3-hero-copy { max-width: 520px; }
    .v3-hero-actions { margin-top: 23px !important; }
}
@media (max-width: 760px) {
    .v3-hero h1 { margin: 15px 0 17px !important; font-size: clamp(36px, 9vw, 46px) !important; line-height: 1.08 !important; }
    .v3-hero .v3-hero-copy { max-width: 440px; font-size: 15px !important; line-height: 1.65 !important; }
    .v3-hero-actions { margin-top: 22px !important; }
    .v3-hero-meta { margin-top: 17px !important; }
}

/* Editorial product sections below the hero */
.v3-section { padding: clamp(82px, 8vw, 112px) 0; }
.v3-section-head { max-width: 700px; margin-bottom: 48px; }
.v3-section-head h2 { font-size: clamp(30px, 3.5vw, 44px); line-height: 1.1; }
.v3-section-head p { max-width: 590px; font-size: 16px; line-height: 1.7; }
.v3-trust-line { background: linear-gradient(105deg,#09182b,#102b40) !important; }
.v3-trust-inner { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
.v3-trust-item { min-height: 92px; display:flex; flex-direction:row !important; align-items:center; justify-content:flex-start !important; gap:14px; padding:16px 22px; }
.v3-trust-item > i { display:grid; place-items:center; width:38px; height:38px; flex:0 0 38px; color:#09283a; border-radius:12px; background:#65e0d2; font-size:17px; }
.v3-trust-item > div { min-width:0; }
.v3-trust-item strong { color:#f4f8fb !important; font:700 14px/1.2 "Manrope",sans-serif !important; }
.v3-trust-item span { margin-top:4px !important; color:#b8cbd6; font-size:11px; }
.gb-platform-layout { display:grid; grid-template-columns:minmax(290px,.78fr) minmax(0,1.22fr); gap:clamp(28px,5vw,68px); align-items:center; }
.gb-platform-features { display:grid; gap:12px; }
.gb-platform-feature { position:relative; display:grid; grid-template-columns:36px 42px 1fr; gap:12px; align-items:start; padding:19px 18px; border:1px solid #e0e9ee; border-radius:16px; background:#fff; box-shadow:0 12px 30px rgba(16,35,63,.035); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.gb-platform-feature:hover { transform:translateY(-3px); border-color:#b9dfd9; box-shadow:0 18px 38px rgba(16,35,63,.07); }
.gb-platform-index { padding-top:10px; color:#7c94a3; font:700 11px "Manrope",sans-serif; letter-spacing:.08em; }
.gb-platform-feature-icon { display:grid; place-items:center; width:40px; height:40px; color:#0b716c; border-radius:12px; background:#e8f7f4; font-size:17px; }
.gb-platform-feature h3 { margin:2px 0 5px; color:#10233f; font:700 16px/1.3 "Manrope",sans-serif; }
.gb-platform-feature p { margin:0; color:#617589; font-size:13px; line-height:1.55; }
.gb-platform-visual { position:relative; display:grid; place-items:center; min-height:420px; padding:34px; overflow:hidden; border:1px solid #d7e5e9; border-radius:26px; background:radial-gradient(circle at 78% 18%,rgba(19,184,166,.14),transparent 34%),linear-gradient(145deg,#eaf3f4,#f7fafb 58%,#e7f0f3); }
.gb-platform-visual::before,.gb-platform-visual::after { content:""; position:absolute; width:260px; height:260px; border:1px solid rgba(13,132,125,.16); border-radius:50%; right:-95px; bottom:-150px; box-shadow:0 0 0 28px rgba(13,132,125,.035),0 0 0 58px rgba(13,132,125,.025); }
.gb-platform-visual::after { width:180px; height:180px; left:-110px; top:-115px; right:auto; bottom:auto; }
.gb-platform-window { position:relative; z-index:1; width:min(100%,490px); padding:23px; border:1px solid rgba(255,255,255,.85); border-radius:19px; background:rgba(255,255,255,.94); box-shadow:0 30px 65px rgba(16,35,63,.15); transform:rotate(-1deg); }
.gb-platform-window-head { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-bottom:18px; border-bottom:1px solid #e9eff2; }
.gb-platform-window-head small,.gb-platform-window-head strong { display:block; }
.gb-platform-window-head small { color:#75899a; font-size:9px; font-weight:800; letter-spacing:.12em; }
.gb-platform-window-head strong { margin-top:5px; color:#10233f; font:700 17px "Manrope",sans-serif; }
.gb-platform-window-head > span { display:flex; align-items:center; gap:6px; padding:7px 9px; color:#0b716c; border-radius:20px; background:#e7f7f2; font-size:9px; font-weight:800; }
.gb-platform-window-head > span i { width:6px; height:6px; border-radius:50%; background:#19ad7d; box-shadow:0 0 0 3px rgba(25,173,125,.12); }
.gb-platform-summary { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; padding:17px 0 15px; border-bottom:1px solid #edf1f3; }
.gb-platform-summary small,.gb-platform-summary strong { display:block; }
.gb-platform-summary small { color:#75899a; font-size:10px; }
.gb-platform-summary strong { margin-top:5px; color:#10233f; font:700 14px "Manrope",sans-serif; }
.gb-platform-sparkline { height:38px; display:flex; align-items:flex-end; gap:5px; }
.gb-platform-sparkline i { width:7px; height:30%; border-radius:4px 4px 1px 1px; background:#9bded3; }
.gb-platform-sparkline i:nth-child(2) { height:55%; }.gb-platform-sparkline i:nth-child(3) { height:43%; }.gb-platform-sparkline i:nth-child(4) { height:78%; background:#13b8a6; }.gb-platform-sparkline i:nth-child(5) { height:62%; }.gb-platform-sparkline i:nth-child(6) { height:91%; background:#0d847d; }.gb-platform-sparkline i:nth-child(7) { height:70%; }
.gb-platform-events { display:grid; gap:5px; padding-top:9px; }
.gb-platform-event { display:grid; grid-template-columns:34px 1fr auto; gap:10px; align-items:center; padding:10px 2px; border-bottom:1px solid #f0f3f5; }
.gb-platform-event:last-child { border-bottom:0; }
.gb-platform-event-icon { display:grid; place-items:center; width:32px; height:32px; color:#0b716c; border-radius:10px; background:#e7f7f3; }
.gb-platform-event-icon.blue { color:#356cba; background:#eaf1fd; }.gb-platform-event-icon.purple { color:#7354b5; background:#f1edfb; }
.gb-platform-event strong,.gb-platform-event small { display:block; }.gb-platform-event strong { color:#243c53; font-size:11px; }.gb-platform-event small { margin-top:3px; color:#7b8e9c; font-size:9px; }
.gb-platform-event b { color:#0b716c; font-size:9px; font-weight:800; }
.gb-platform-note { position:absolute; z-index:2; right:18px; bottom:18px; display:flex; align-items:center; gap:9px; padding:11px 14px; border:1px solid #deebe9; border-radius:13px; background:#fff; box-shadow:0 14px 32px rgba(16,35,63,.12); }
.gb-platform-note > i { color:#0b9c7f; font-size:18px; }.gb-platform-note strong,.gb-platform-note small { display:block; }.gb-platform-note strong { color:#203b4d; font-size:10px; }.gb-platform-note small { margin-top:3px; color:#7b8e9c; font-size:9px; }
.gb-solution-copy { position:relative; z-index:1; max-width:360px; margin:22px 0 -12px; }
.gb-solution-copy h3 { margin:0; color:#f4f8fb; font:700 clamp(21px,2.3vw,28px)/1.15 "Manrope",sans-serif; }
.gb-solution-copy p { margin:9px 0 0; color:#c4d2dd; font-size:13px; line-height:1.55; }
.v3-solution-core { width:118px; height:118px; margin:26px auto 24px; }
.v3-solution-core div { width:72px; height:72px; border-width:6px; }
.gb-resources-intro { max-width:700px; margin-bottom:36px; }
.gb-resources-intro h2 { margin:13px 0 12px; color:#10233f; font:800 clamp(30px,3.5vw,44px)/1.1 "Manrope",sans-serif; letter-spacing:-.035em; }
.gb-resources-intro p { max-width:580px; margin:0; color:#52677c; font-size:16px; line-height:1.7; }
.v3-product-grid { gap:24px; }
.v3-product-frame { padding:14px; border-radius:22px !important; background:linear-gradient(145deg,#e5f0f2,#f5f8fa) !important; }
.v3-product-screen { border-radius:16px !important; box-shadow:0 18px 40px rgba(16,35,63,.09); }
.v3-product-top { padding:17px 20px; }
.v3-product-top strong { color:#10233f; }
.v3-product-top span { padding:7px 10px; border-radius:20px; background:#e8f7f2; }
.v3-checkout-preview { padding:22px; }
.gb-checkout-illustration { display:grid; place-items:center; gap:5px; width:100px; height:100px; color:#0b716c; border:1px solid #dcebe8; border-radius:16px; background:linear-gradient(145deg,#fff,#eaf7f4); box-shadow:0 10px 24px rgba(16,35,63,.06); }
.gb-checkout-illustration i { font-size:38px; }.gb-checkout-illustration span { color:#10233f; font:700 12px "Manrope",sans-serif; }.gb-checkout-illustration small { color:#718698; font-size:9px; }
.v3-code-panel { min-height:310px; padding:32px !important; border:1px solid rgba(101,224,210,.2); border-radius:22px !important; }
.v3-code-panel h3 { font-size:clamp(23px,2.4vw,30px) !important; line-height:1.18 !important; }
.v3-security-wrap { gap:clamp(36px,6vw,82px); }
.v3-shield { min-height:390px; border-radius:26px !important; }
.v3-security-list { gap:14px; }
.v3-security-item { border-radius:16px; background:rgba(255,255,255,.055); }
.v3-security-item h3 { color:#f1f7fa; }.v3-security-item p { color:#c4d2dd !important; line-height:1.55; }
.v3-usecase-layout { gap:48px; }
.v3-usecase-tab { min-height:58px; border-radius:12px; }
.v3-usecase-tab.active { background:#eaf6f4 !important; }
.v3-usecase-stage { min-height:320px; border-radius:24px !important; }
.gb-proof-label { display:inline-flex; align-items:center; gap:8px; color:#65e0d2; font-size:10px; font-weight:800; letter-spacing:.14em; }
.gb-proof-label i { font-size:15px; }
.v3-proof-quote { border-radius:24px !important; }
.v3-proof-quote p { max-width:520px; margin:16px 0; font-size:clamp(21px,2.4vw,28px); line-height:1.25; }
.v3-proof-quote strong { color:#d0dfe8 !important; font-size:10px !important; letter-spacing:.12em; }
.gb-proof-steps { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:20px; color:#d2e0e7; font-size:10px; font-weight:700; }
.gb-proof-steps span { display:inline-flex; align-items:center; gap:6px; }.gb-proof-steps i { color:#65e0d2; }.gb-proof-steps b { width:18px; height:1px; background:rgba(101,224,210,.5); }
.v3-faq details { border-color:#d9e4e9 !important; }.v3-faq summary { min-height:70px; color:#10233f !important; }.v3-faq p { padding-right:36px; line-height:1.7; }
@media (max-width: 900px) {
    .gb-platform-layout { grid-template-columns:1fr; gap:26px; }
    .gb-platform-features { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .gb-platform-feature { grid-template-columns:34px 1fr; gap:9px; }
    .gb-platform-index { grid-column:1; grid-row:1; }.gb-platform-feature-icon { grid-column:1; grid-row:2; }.gb-platform-feature > div { grid-column:2; grid-row:1 / span 2; }
}
@media (max-width: 760px) {
    .v3-section { padding:68px 0; }
    .v3-section-head { margin-bottom:30px; }
    .v3-trust-inner { grid-template-columns:1fr !important; }
    .v3-trust-item { min-height:68px; padding:12px 8px; border-right:0; border-bottom:1px solid rgba(255,255,255,.08); }
    .v3-trust-item:last-child { border-bottom:0; }
    .gb-platform-features { grid-template-columns:1fr; }
    .gb-platform-feature { grid-template-columns:34px 42px 1fr; gap:10px; }
    .gb-platform-index { grid-column:auto; grid-row:auto; }.gb-platform-feature-icon { grid-column:auto; grid-row:auto; }.gb-platform-feature > div { grid-column:auto; grid-row:auto; }
    .gb-platform-visual { min-height:350px; padding:18px; border-radius:20px; }
    .gb-platform-window { padding:17px; border-radius:16px; }
    .gb-platform-note { right:10px; bottom:10px; padding:9px 11px; }
    .gb-solution-copy { margin-top:16px; }
    .v3-product-grid { grid-template-columns:1fr; }
    .gb-resources-intro { margin-bottom:26px; }
    .v3-shield { min-height:300px; }
    .v3-usecase-layout { gap:22px; }
    .v3-usecase-stage { padding:28px; }
    .gb-proof-steps { gap:7px; }
}
@media (prefers-reduced-motion: reduce) {
    .gb-platform-feature { transition:none !important; }
}

/* GetBank auth and account screens refresh */
.auth-v1, .auth-v2 {
    --gb-auth-ink: #10233f;
    --gb-auth-muted: #617589;
    --gb-auth-line: #dce7ed;
    --gb-auth-teal: #0d847d;
    --gb-auth-mint: #38d6c2;
}
.auth-v1 {
    min-height: 100vh;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 34px 20px 22px;
    color: var(--gb-auth-ink);
    background: radial-gradient(circle at 10% 12%, rgba(56,214,194,.13), transparent 30%), radial-gradient(circle at 88% 18%, rgba(57,119,197,.1), transparent 28%), #f1f6f8 !important;
    animation: none !important;
}
.auth-v1::before { opacity: 0 !important; }
.auth-v1::after { opacity: .3; }
.auth-v1 .main-container { width: min(1180px, 100%); max-width: 1180px; gap: clamp(28px,5vw,68px); align-items: center; }
.auth-v1 .auth-container { overflow: hidden; border: 1px solid #dce7ed; border-radius: 24px; background: #fff; box-shadow: 0 28px 72px rgba(16,35,63,.13); }
.auth-v1 .auth-header { padding: 30px 34px 24px; border-bottom-color: #e8eff2; background: linear-gradient(180deg,#fff,#fbfdfd); }
.auth-v1 .auth-logo { max-width: 182px; max-height: 54px; margin-bottom: 18px; }
.auth-v1 .auth-title { color: #10233f; font-size: clamp(22px,2.2vw,27px); letter-spacing: -.035em; }
.auth-v1 .auth-body { padding: 26px 34px 28px; color: #10233f; }
.auth-v1 .auth-footer { padding: 17px 28px; border-top-color: #e8eff2; background: #f7fafb; }
.auth-v1 .auth-subtitle, .auth-v1 .form-label { color: #526a7e; }
.auth-v1 .form-label { font-size: 13px; font-weight: 700; }
.auth-v1 .form-control { min-height: 50px; color: #10233f !important; background: #f8fbfc !important; border-color: #d7e3e9 !important; border-radius: 0 11px 11px 0; }
.auth-v1 .form-control:focus { border-color: #13b8a6 !important; background: #fff !important; box-shadow: 0 0 0 4px rgba(19,184,166,.13) !important; }
.auth-v1 .input-icon { color: #0d847d; background: #edf7f6; border-color: #d7e3e9; border-radius: 11px 0 0 11px; }
.auth-v1 .password-toggle { color: #617589; }
.auth-v1 .btn-login, .auth-v1 .btn-register { min-height: 52px; color: #062b35; border-radius: 12px; background: linear-gradient(135deg,#55dfce,#16b8a6); box-shadow: 0 12px 24px rgba(19,184,166,.2); }
.auth-v1 .btn-login:hover, .auth-v1 .btn-register:hover { color: #062b35; background: linear-gradient(135deg,#6de7d8,#13a99b); }
.auth-v1 .forgot-password, .auth-v1 .terms-link, .auth-v1 .login-link a { color: #0d847d; }
.auth-v1 .form-check { padding: 13px 14px; color: #526a7e; background: #f7fafb; border: 1px solid #e0e9ed; border-radius: 12px; }
.auth-v1 .form-check-label { color: #526a7e; }
.auth-v1 .referral-info { color: #0b5d5a; background: #e9f8f5; border-color: #cbece5; border-radius: 12px; }
.auth-v1 .info-section { padding: clamp(24px,3vw,40px); border: 1px solid rgba(255,255,255,.16); border-radius: 24px; background: radial-gradient(circle at 85% 12%,rgba(56,214,194,.2),transparent 32%),linear-gradient(145deg,#10233f,#0b2b3c); box-shadow: 0 28px 70px rgba(16,35,63,.15); }
.auth-v1 .info-title { font-size: clamp(2rem,4vw,3.3rem); }
.auth-v1 .feature-card { border-radius: 16px; }
.auth-v1 .footer { color: #718498; }
.auth-v2 { --auth-bg:#f1f6f8; --auth-panel:#fff; --auth-panel-soft:#f6fafb; --auth-border:#dce7ed; --auth-text:#10233f; --auth-muted:#617589; --auth-primary:#13b8a6; --auth-primary-dark:#0d847d; --auth-accent:#3977c5; --auth-blue:#3977c5; --auth-shadow:0 26px 72px rgba(16,35,63,.14); --auth-radius:20px; }
.auth-v2::before { background: radial-gradient(circle at 12% 14%,rgba(56,214,194,.16),transparent 31%),radial-gradient(circle at 88% 14%,rgba(57,119,197,.1),transparent 28%),linear-gradient(rgba(16,35,63,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(16,35,63,.025) 1px,transparent 1px) !important; background-size:auto,auto,64px 64px,64px 64px !important; }
.auth-v2 .auth-container { border-color:#dce7ed; border-radius:22px; background:rgba(255,255,255,.97); }
.auth-v2 .auth-body { color:#10233f; }
.auth-v2 .form-label { color:#526a7e; }
.auth-v2 .form-control { min-height:49px; color:#10233f !important; background:#f8fbfc !important; border-color:#d7e3e9 !important; border-radius:0 11px 11px 0; }
.auth-v2 .input-icon { color:#0d847d; background:#edf7f6; border-color:#d7e3e9; }
.auth-v2 .form-control:focus { border-color:#13b8a6 !important; background:#fff !important; box-shadow:0 0 0 4px rgba(19,184,166,.13) !important; }
.auth-v2 .btn-login,.auth-v2 .btn-register,.auth-v2 .action-buttons .btn-primary { color:#062b35 !important; background:linear-gradient(135deg,#55dfce,#16b8a6) !important; box-shadow:0 12px 24px rgba(19,184,166,.2) !important; }
.auth-v2 .forgot-password,.auth-v2 .terms-link { color:#0d847d; }
.auth-v2 .form-check { padding:13px 14px; color:#526a7e; background:#f7fafb; border:1px solid #e0e9ed; border-radius:12px; }
.auth-v2 .form-check-label { color:#526a7e; }
.auth-v2 .referral-info { color:#0b5d5a; background:#e9f8f5; border-color:#cbece5; }
.auth-v2 .field-error { color:#b4233b; }
.auth-v2 .alert-danger { color:#9c2337; background:#fff1f2; border-color:#fecdd3; }
.auth-v2 .alert-success { color:#08765b; background:#ecfdf5; border-color:#a7f3d0; }
.auth-v2 .verify-container { overflow:hidden; border:1px solid #dce7ed; border-radius:22px; background:#fff; box-shadow:0 26px 72px rgba(16,35,63,.14); }
.auth-v2 .verify-header { background:linear-gradient(145deg,#10233f,#0b2b3c); }
.auth-v2 .verify-title { color:#fff; }
.auth-v2 .verify-subtitle { color:#ccdae1; }
.auth-v2 .progress-steps { gap:8px; }
.auth-v2 .step-circle { border-color:#cbdde2; color:#617589; background:#f5f9fa; }
.auth-v2 .progress-steps .step.active .step-circle,.auth-v2 .progress-steps .step.completed .step-circle { color:#063a42; border-color:#38d6c2; background:#38d6c2; }
.auth-v2 .step-label { color:#617589; }
.auth-v2 .step.active .step-label,.auth-v2 .step.completed .step-label { color:#0d6e69; }
.auth-v2 .step-content,.auth-v2 .review-section,.auth-v2 .status-card { border-color:#dce7ed; border-radius:16px; background:#fff; }
.auth-v2 .file-upload-area { border-color:#bed8d9; border-radius:16px; background:#f6fbfa; }
.auth-v2 .file-upload-area:hover { border-color:#13b8a6; background:#edf9f7; }
.auth-v2 .file-upload-area .upload-content i { color:#0d847d; }
.auth-v2 .btn-next,.auth-v2 .btn-submit,.auth-v2 .btn-primary { color:#062b35; border:0; border-radius:11px; background:linear-gradient(135deg,#55dfce,#16b8a6); }
.auth-v2 .btn-prev,.auth-v2 .btn-secondary { border-radius:11px; }
.auth-v2 .status-card.status-pending { border-left-color:#e4a11b; background:#fffaf0; }
.auth-v2 .status-card.status-approved { border-left-color:#139b79; background:#effaf6; }
.auth-v2 .status-card.status-rejected { border-left-color:#d83e53; background:#fff3f4; }
.auth-v2 .footer { color:#718498; }

/* Account verification and two factor screens inside the signed-in shell */
.user-content .pc-content > .row > .col-lg-12 > .card,
.user-content .pc-content > .row > .col-lg-6 > .card,
.user-content .container-fluid > .pc-container .card { overflow:hidden; border-radius:20px !important; }
.user-content .pc-content > .row > .col-lg-12 > .card .card-body,
.user-content .pc-content > .row > .col-lg-6 > .card .card-body { padding:clamp(22px,4vw,40px) !important; }
.user-content #verification-steps { max-width:920px; margin:0 auto; }
.user-content #verification-form { margin-top:22px; }
.user-content #verification-form .step-content { padding:clamp(18px,3vw,30px); border:1px solid var(--gb-line); border-radius:16px; background:#fbfdfd; }
.user-content #verification-form .steps-indicator { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; }
.user-content #verification-form .steps-indicator .step { flex:1 1 120px; text-align:center; color:var(--gb-muted); }
.user-content #verification-form .steps-indicator .step i { display:grid; place-items:center; width:42px; height:42px; margin:0 auto 8px; border-radius:50%; color:var(--gb-primary-dark); background:#e8f7f4; }
.user-content #verification-form .steps-indicator .step.active i { color:#fff; background:var(--gb-primary-dark); }
.user-content input[type="file"].form-control { padding:.65rem .8rem; }
.user-content #verification-form .btn { min-height:42px; border-radius:10px; font-weight:700; }
.user-content #verification-form .btn-primary,.user-content #verification-form .btn-success { background:#0d847d; border-color:#0d847d; }
.user-content #status-check { padding:14px; border-radius:14px; background:#f4f9f8; }
.user-content #verification-steps[style*="display: none"] { display:none !important; }
.user-content #verification-steps[style*="display: block"] { display:block !important; }
.user-content #verification-form .form-control,.user-content #verification-form .form-select { min-height:46px; border-radius:10px; }
.user-content form[action*="2fa"] .form-control { max-width:300px; min-height:54px; margin:8px auto 0; font-size:22px; text-align:center; letter-spacing:.22em; border-radius:12px; }
.user-content form[action*="2fa"] .form-group { text-align:center; }
.user-content form[action*="2fa"] .btn { min-height:42px; border-radius:10px; }

/* User dashboard: stronger product identity and clearer hierarchy */
.user-shell { --user-sidebar-width:264px; --user-primary:#0d847d; --user-primary-dark:#086b68; --user-accent:#3977c5; --user-gradient-start:#0d847d; --user-gradient-end:#38cbb9; --user-radius:16px; }
.user-sidebar { background:linear-gradient(180deg,#0c2036 0%,#102d43 52%,#0b3540 100%) !important; }
.user-brand { min-height:80px !important; padding-inline:24px !important; }
.user-profile { margin:16px 14px 10px !important; padding:14px !important; border-radius:16px !important; background:rgba(255,255,255,.075) !important; }
.user-nav { padding-inline:12px !important; }
.user-nav-section { margin-top:20px !important; }
.user-nav-title { color:#87a7b5 !important; letter-spacing:.12em !important; }
.user-nav-link,.user-nav-toggle { min-height:44px !important; border-radius:11px !important; font-weight:600 !important; }
.user-nav-link.active { color:#fff !important; background:linear-gradient(90deg,rgba(19,184,166,.24),rgba(19,184,166,.07)) !important; box-shadow:inset 3px 0 #55dfce !important; }
.user-nav-link i:first-child,.user-nav-toggle i:first-child { color:#79d9cc !important; }
.user-main { background:#f1f6f8 !important; }
.user-topbar { min-height:72px !important; padding-inline:clamp(16px,3vw,38px) !important; }
.user-content { padding:clamp(18px,2.5vw,34px) !important; }
.user-content .card,.user-content .modern-card,.user-content .stats-card,.user-content .period-card { border-radius:16px !important; box-shadow:0 10px 30px rgba(16,35,63,.055) !important; }
.user-content .bank-card { min-height:228px; border-radius:22px !important; background:radial-gradient(circle at 85% 12%,rgba(255,255,255,.2),transparent 24%),linear-gradient(125deg,#0b716c 0%,#0d847d 46%,#19b8a6 100%) !important; box-shadow:0 20px 48px rgba(13,132,125,.2) !important; }
.user-content .bank-card::before { top:auto; right:-4%; bottom:-65%; width:360px; height:360px; border:1px solid rgba(255,255,255,.2); background:transparent; box-shadow:0 0 0 30px rgba(255,255,255,.035),0 0 0 60px rgba(255,255,255,.025); }
.user-content .bank-card::after { display:none; }
.user-content .stats-card { min-height:158px; align-items:flex-start; text-align:left; gap:.65rem; }
.user-content .stats-header { justify-content:flex-start; }
.user-content .stats-content { text-align:left; }
.user-content .stats-icon,.user-content .period-icon { border-radius:13px; }
.user-content .period-card { align-items:flex-start; text-align:left; border-top:3px solid #b9e9e3 !important; }
.user-content .form-control:focus,.user-content .form-select:focus { box-shadow:0 0 0 .2rem rgba(19,184,166,.14) !important; }
.user-content .btn-modern,.user-content .btn-primary { border-radius:10px; }
.user-content > .container-fluid > .row:first-child { margin-bottom:22px !important; }
.user-content > .container-fluid > .row:first-child h1 { letter-spacing:-.04em; }
.user-content > .container-fluid > .row:first-child p { max-width:620px; }
.user-overlay { background:rgba(7,20,35,.5) !important; backdrop-filter:blur(3px); }
[data-pc-theme="dark"] .user-main { background:#0c1523 !important; }
[data-pc-theme="dark"] .user-topbar { background:rgba(14,25,40,.92) !important; }
[data-pc-theme="dark"] .user-page-title { color:#edf7f8 !important; }
[data-pc-theme="dark"] .user-content .card,[data-pc-theme="dark"] .user-content .modern-card,[data-pc-theme="dark"] .user-content .stats-card,[data-pc-theme="dark"] .user-content .period-card { background:#111f30 !important; border-color:rgba(148,183,194,.18) !important; }
[data-pc-theme="dark"] .user-content .card-body h1,[data-pc-theme="dark"] .user-content .card-body h2,[data-pc-theme="dark"] .user-content .card-body h3,[data-pc-theme="dark"] .user-content .card-body h4,[data-pc-theme="dark"] .user-content .card-body h5,[data-pc-theme="dark"] .user-content .card-body h6 { color:#edf7f8 !important; }
[data-pc-theme="dark"] .user-content #verification-form .step-content { background:#142235; border-color:rgba(148,183,194,.2); }
@media (max-width:980px) { .auth-v1 { padding:18px 12px 12px; } .auth-v1 .main-container { width:min(100%,620px); gap:22px; } .auth-v1 .info-section { padding:24px; } }
@media (max-width:560px) { .auth-v1 { padding:10px 10px 8px; } .auth-v1 .main-container { width:100%; gap:16px; padding:8px 0 20px; } .auth-v1 .auth-header { padding:22px 20px 18px; } .auth-v1 .auth-body { padding:20px; } .auth-v1 .auth-footer { padding:15px 18px; } .auth-v1 .info-section { padding:22px; border-radius:18px; } .auth-v1 .info-title { font-size:2rem; } .auth-v2 .main-container { width:calc(100% - 20px); padding:12px 0 38px; } .auth-v2 .auth-container { border-radius:18px; } .auth-v2 .auth-body { padding:21px 20px; } .auth-v2 .progress-steps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); } .auth-v2 .step-label { font-size:11px; } .user-content .bank-card { min-height:0; } .user-content .stats-card { min-height:130px; } }
