/* ==========================================================
   EXTHA — Wealthtech Design System v3
   Paleta: Onyx #0A0A0A + Azul elétrico #1B5AF3 + Branco
   Tipografia: Inter Display (títulos/números) + Inter (corpo)
   ========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@500;600;700;800;900&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700&display=swap');

:root{
  --x-onyx:       #0A0A0A !important;
  --x-onyx-2:     #111216 !important;
  --x-ink:        #16181D !important;
  --x-ink-2:      #1F222A !important;
  --x-blue:       #1B5AF3 !important;
  --x-blue-2:     #0F3FC1 !important;
  --x-blue-soft:  #EAF1FF !important;
  --x-blue-glow:  rgba(27,90,243,.28) !important;
  --x-silver:     #C7CBD1 !important;
  --x-paper:      #F6F7FA !important;
  --x-paper-2:    #EEF1F7 !important;
  --x-white:      #FFFFFF !important;
  --x-text:       #1C1F26 !important;
  --x-muted:      #5E6675 !important;
  --x-line:       #E5E8EF !important;
  --x-line-2:     #D3D9E4 !important;
  --x-success:    #059669 !important;
  --x-warn:       #B7791F !important;
  --x-danger:     #B42318 !important;

  /* Reescreve variáveis legadas */
  --red:            #1B5AF3 !important;
  --red-dark:       #0F3FC1 !important;
  --red-light:      #EAF1FF !important;
  --red-border:     rgba(27,90,243,.14) !important;
  --deep-red:       #0F3FC1 !important;
  --gold:           #1B5AF3 !important;
  --gold-light:     #4D7EF8 !important;
  --gold-bg:        rgba(27,90,243,.06) !important;
  --dark:           #0A0A0A !important;
  --black:          #0A0A0A !important;
  --text:           #1C1F26 !important;
  --text-light:     #5E6675 !important;
  --bg:             #F6F7FA !important;
  --bg-alt:         #EEF1F7 !important;
  --border:         #E5E8EF !important;
  --charcoal:       #5E6675 !important;
  --white:          #FFFFFF !important;
  --gray-lt:        #F6F7FA !important;
  --gray-md:        #E5E8EF !important;
  --gray-light:     #F6F7FA !important;
  --gray-mid:       #E5E8EF !important;
  --brand:          #1B5AF3 !important;
  --brand-deep:     #0F3FC1 !important;
  --accent:         #1B5AF3 !important;
  --ink:            #0A0A0A !important;
  --navy:           #0A0A0A !important;
  --muted:          #5E6675 !important;
  --line:           #E5E8EF !important;
  --line-strong:    #D3D9E4 !important;
  --surface:        #FFFFFF !important;
  --surface-alt:    #F6F7FA !important;
  --surface-soft:   #FBFBFD !important;
  --shadow:         0 14px 40px rgba(10,10,10,.07) !important;
  --shadow-strong:  0 28px 70px rgba(10,10,10,.14) !important;

  --x-shadow-card:  0 18px 44px rgba(10,10,10,.08);
  --x-shadow-hover: 0 26px 60px rgba(10,10,10,.14);
  --x-radius:       16px;
  --x-radius-sm:    12px;
  --x-radius-lg:    22px;
}

html,body{
  background: var(--x-white) !important;
  color: var(--x-text) !important;
  font-family: 'Inter','Manrope','Segoe UI',system-ui,-apple-system,sans-serif !important;
  -webkit-font-smoothing: antialiased;
  letter-spacing: -.005em;
}

h1,h2,h3,h4,h5,h6,
.nav-logo,.logo-text,.hero h1,.hero h2,.hero-title,
.section-title,.featured h2,.article-card-body h3,
.products-title,.products-cta-title,.editorial-feature-title,
.page-title,.bank-heading,.cta-panel h2,.newsletter-shell h2,
.brand-title,.section-head h3,.topbar-title,.page-header h1{
  font-family: 'Inter Tight','Inter','Segoe UI',system-ui,sans-serif !important;
  color: var(--x-onyx) !important;
  letter-spacing: -.022em !important;
  font-weight: 800 !important;
  font-feature-settings: "ss01","cv11";
}

a{ color: var(--x-blue) !important; }
a:hover{ color: var(--x-blue-2) !important; }

/* Números/monetária usam tabular */
.value, .trust-value, .hero-rate, .hero-stat-value,
.metric-card .value, .hero-card strong, .inv-rate,
.product-metric-value, .stat-num{
  font-family: 'Inter Tight','Inter',sans-serif !important;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.02em !important;
  color: var(--x-onyx) !important;
}

/* ==========================================================
   HEADER público
   ========================================================== */
nav,.pub-header,#navbar,.site-nav{
  background: rgba(255,255,255,.92) !important;
  backdrop-filter: saturate(140%) blur(18px) !important;
  -webkit-backdrop-filter: saturate(140%) blur(18px) !important;
  border-bottom: 1px solid rgba(10,10,10,.06) !important;
  box-shadow: 0 1px 0 rgba(10,10,10,.02) !important;
}
#navbar.scrolled{
  background: rgba(10,10,10,.94) !important;
  border-bottom-color: rgba(255,255,255,.08) !important;
}
#navbar.scrolled .nav-logo-text,
#navbar.scrolled #nav-links a{ color: #fff !important; }

.nav-logo,.nav-brand,.logo-mark,.logo-text,.nav-logo-text{
  font-family: 'Inter Tight',sans-serif !important;
  font-weight: 800 !important;
  color: var(--x-onyx) !important;
  letter-spacing: -.02em !important;
}
.nav-logo span,.logo-text span,.nav-logo-text span,.nav-brand span{ color: var(--x-blue) !important; }

.nav-links a,#nav-links a,.pub-nav a{
  font-family: 'Inter',sans-serif !important;
  font-weight: 600 !important;
  color: #2A2E37 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: .92rem !important;
}
.nav-links a:hover,#nav-links a:hover{ color: var(--x-blue) !important; }

/* ==========================================================
   BOTÕES
   ========================================================== */
.btn,.btn-primary,.btn-outline,.btn-secondary,.btn-sm,.btn-lg,
.hero-cta a,.hero-cta button,.primary-btn,.secondary-btn,
.action-btn,.products-carousel-arrow,.editorial-feature-cta,
a.btn,button.btn{
  border-radius: 10px !important;
  font-family: 'Inter',sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease !important;
  font-size: .94rem !important;
  padding: 12px 22px !important;
}
.btn-lg{ padding: 14px 26px !important; font-size: .98rem !important; }
.btn-sm{ padding: 8px 14px !important; font-size: .86rem !important; }

.btn-primary,.nav-links a.btn-primary,.btn-success,
button[type="submit"].btn-primary,.primary-btn,.editorial-feature-cta{
  background: var(--x-blue) !important;
  color: #fff !important;
  border: 1px solid var(--x-blue) !important;
  box-shadow: 0 10px 22px rgba(27,90,243,.22) !important;
}
.btn-primary:hover,.primary-btn:hover{
  transform: translateY(-1px);
  background: var(--x-blue-2) !important;
  box-shadow: 0 14px 28px rgba(27,90,243,.28) !important;
  color: #fff !important;
}
.btn-outline,.btn-secondary,.secondary-btn{
  background: #fff !important;
  color: var(--x-onyx) !important;
  border: 1px solid var(--x-line-2) !important;
  box-shadow: none !important;
}
.btn-outline:hover,.btn-secondary:hover{
  border-color: var(--x-onyx) !important;
  color: var(--x-onyx) !important;
  background: var(--x-paper) !important;
}

/* ==========================================================
   HERO — onyx premium
   ========================================================== */
.hero,.hero-shell,.cta-panel,.newsletter-shell,.featured,.hero-bg{
  background:
    radial-gradient(1200px 520px at 80% -20%, rgba(27,90,243,.22), transparent 60%),
    radial-gradient(900px 560px at 0% 120%, rgba(27,90,243,.15), transparent 55%),
    linear-gradient(180deg, #0A0A0A 0%, #111216 100%) !important;
  color: #fff !important;
  position: relative;
  overflow: hidden;
}
.hero::before,.hero-bg::after{ opacity: .04 !important; }
.hero h1,.hero h2,.hero-title,.cta-panel h2,
.newsletter-shell h2,.featured h2{
  color: #fff !important;
  font-weight: 800 !important;
}
.hero h1 em,.hero h1 span,.hero-title .accent{
  color: var(--x-blue) !important;
  font-style: normal !important;
  background: linear-gradient(90deg, #4D7EF8 0%, #1B5AF3 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hero p,.hero-subtitle,.newsletter-shell p,.cta-panel p,.featured p,.hero-sub{
  color: rgba(255,255,255,.72) !important;
}
.hero-eyebrow,.section-eyebrow{
  font-family: 'Inter',sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  font-size: .72rem !important;
  color: rgba(255,255,255,.58) !important;
}
.section-eyebrow{ color: var(--x-blue) !important; }

/* ==========================================================
   TRUST BAR & SEÇÕES claras
   ========================================================== */
.trust-bar{
  background: var(--x-white) !important;
  border-top: 1px solid var(--x-line) !important;
  border-bottom: 1px solid var(--x-line) !important;
}
.trust-value{ color: var(--x-onyx) !important; }
.trust-label,.hero-stat-label,.hero-rate-label,.section-desc,.hero-sub{
  color: var(--x-muted) !important;
}
.section-alt,.newsletter-panel,.section-dark{
  background: var(--x-paper) !important;
  color: var(--x-text) !important;
}
.section-dark{ background: var(--x-onyx) !important; color: #fff !important; }

/* ==========================================================
   CARDS
   ========================================================== */
.garantia-card,.step,.step-card,.inv-card,.article-card,.editorial-map-card,
.resource-card,.empty-state,.newsletter-strip,.product-card,
.bank-form-panel,.bank-card,.bank-dashboard,.content-card,.dashboard-card,
.data-card,.table-wrap,.table-card,.section-card,.editorial-feature-card,
.metric-card,.table-wrapper,.hero-card{
  background: #fff !important;
  border: 1px solid var(--x-line) !important;
  border-radius: var(--x-radius) !important;
  box-shadow: var(--x-shadow-card) !important;
  color: var(--x-text) !important;
}
.garantia-card:hover,.inv-card:hover,.article-card:hover,
.editorial-map-card:hover,.product-card:hover{
  transform: translateY(-2px);
  border-color: var(--x-blue) !important;
  box-shadow: var(--x-shadow-hover) !important;
}
.garantia-icon{
  border: 1px solid var(--x-blue) !important;
  background: rgba(27,90,243,.06) !important;
  border-radius: 10px !important;
}
.garantia-icon svg{ stroke: var(--x-blue) !important; }
.step-num{
  background: var(--x-onyx) !important;
  color: #fff !important;
  box-shadow: 0 6px 14px rgba(10,10,10,.20) !important;
  border-radius: 12px !important;
}

/* Pílulas, badges */
.badge,.pill,.meta-badge,.editorial-map-card span,.hero-badge,.hero-chip,.chip,
.products-badge,.bank-chip,.status-pill,.origin-pill,.status-chip,.bank-pill{
  background: rgba(27,90,243,.08) !important;
  color: var(--x-blue-2) !important;
  border: 1px solid rgba(27,90,243,.14) !important;
  border-radius: 999px !important;
  font-family: 'Inter',sans-serif !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: .78rem !important;
}
.origin-pill.auto{ background: rgba(5,150,105,.08) !important; color: var(--x-success) !important; border-color: rgba(5,150,105,.22) !important; }
.status-chip.pending{ background: rgba(183,121,31,.10) !important; color: var(--x-warn) !important; border-color: rgba(183,121,31,.22) !important; }
.status-chip.active{ background: rgba(5,150,105,.10) !important; color: var(--x-success) !important; border-color: rgba(5,150,105,.22) !important; }

/* ==========================================================
   PRODUTOS / carrossel
   ========================================================== */
.products-section{ background: var(--x-paper) !important; padding: 88px 0 !important; }
.product-chip{ background: rgba(27,90,243,.10) !important; color: var(--x-blue-2) !important; border-color: rgba(27,90,243,.18) !important; }
.product-icon{
  background: rgba(27,90,243,.06) !important;
  border: 1px solid rgba(27,90,243,.16) !important;
  color: var(--x-blue) !important;
  border-radius: 12px !important;
}
.product-metric{
  background: var(--x-paper) !important;
  border: 1px solid var(--x-line) !important;
  border-radius: var(--x-radius-sm) !important;
}
.product-metric-label{ color: var(--x-muted) !important; text-transform: none !important; letter-spacing: 0 !important; }
.product-metric-value,.product-list li strong{ color: var(--x-onyx) !important; }
.product-list li{ background: var(--x-paper) !important; border: 1px solid var(--x-line) !important; color: var(--x-text) !important; }
.product-highlight,.products-cta{
  background: var(--x-onyx) !important;
  color: #fff !important;
}
.products-cta{
  border-radius: var(--x-radius) !important;
  padding: 32px !important;
  text-align: left !important;
}
.products-cta-title{ color: #fff !important; }
.products-cta-copy{ color: rgba(255,255,255,.72) !important; }
.product-subline{ color: var(--x-blue) !important; }

.products-table-shell{ background: #fff !important; border: 1px solid var(--x-line) !important; border-radius: var(--x-radius) !important; }
.products-table thead th{ color: var(--x-muted) !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 600 !important; }
.products-table tbody tr{ background: var(--x-paper) !important; }
.products-table strong{ color: var(--x-onyx) !important; }

/* ==========================================================
   INPUTS
   ========================================================== */
input,select,textarea,.form-control,.bank-input,.bank-select{
  border: 1px solid var(--x-line-2) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--x-onyx) !important;
  box-shadow: none !important;
  padding: 12px 14px !important;
  font-size: .95rem !important;
}
input:focus,select:focus,textarea:focus,.form-control:focus{
  border-color: var(--x-blue) !important;
  box-shadow: 0 0 0 4px rgba(27,90,243,.12) !important;
  outline: none !important;
}
.form-group label,.label{
  color: var(--x-ink) !important;
  font-weight: 600 !important;
  font-size: .86rem !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ==========================================================
   FOOTER
   ========================================================== */
footer,.footer,.footer-bottom{
  background: var(--x-onyx) !important;
  color: rgba(255,255,255,.72) !important;
}
footer h4,.footer h4{ color: #fff !important; font-family: 'Inter Tight',sans-serif !important; }
footer ul li a,.footer a,.footer-links a{ color: rgba(255,255,255,.64) !important; }
footer ul li a:hover,.footer a:hover{ color: var(--x-blue) !important; }

/* ==========================================================
   DASHBOARD / ÁREA LOGADA
   ========================================================== */
body.dashboard-premium,body.panel-premium,body.deposit-premium,body.page-saque{
  background: var(--x-paper) !important;
}
.app-layout,.dashboard-layout{ display: flex; min-height: 100vh; }

.sidebar{
  width: 248px !important;
  background: var(--x-onyx) !important;
  border-right: 1px solid rgba(255,255,255,.06) !important;
  color: #fff !important;
}
.sidebar-logo{
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  padding: 22px 20px !important;
}
.sidebar-label{
  color: rgba(255,255,255,.38) !important;
  font-family: 'Inter',sans-serif !important;
  font-size: .70rem !important;
  letter-spacing: .14em !important;
  padding: 20px 22px 8px !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}
.sidebar-nav{ padding: 8px 10px 20px !important; }
.sidebar-item{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 11px 14px !important;
  margin: 2px 4px !important;
  min-height: 44px !important;
  color: rgba(255,255,255,.72) !important;
  font-family: 'Inter',sans-serif !important;
  font-weight: 500 !important;
  font-size: .92rem !important;
  border-radius: 10px !important;
  border-left: 0 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  transition: background .15s ease, color .15s ease !important;
}
.sidebar-item svg{ flex: 0 0 18px !important; width: 18px !important; height: 18px !important; stroke: currentColor; }
.sidebar-item .sidebar-item-label{
  flex: 1 1 auto !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.2 !important;
  font-size: .92rem !important;
  font-weight: 500 !important;
}
.sidebar-item:hover{
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
}
.sidebar-item.active{
  background: rgba(27,90,243,.18) !important;
  color: #fff !important;
  border-left: 0 !important;
  box-shadow: inset 2px 0 0 var(--x-blue) !important;
}
.sidebar-footer{ border-top: 1px solid rgba(255,255,255,.06) !important; padding: 14px 14px !important; }
.sidebar-avatar{
  background: var(--x-blue) !important;
  color: #fff !important;
  font-family: 'Inter Tight',sans-serif !important;
  font-weight: 800 !important;
  border-radius: 10px !important;
}
.sidebar-user-info .name{ color: #fff !important; font-weight: 600 !important; }
.sidebar-user-info .role{ color: rgba(255,255,255,.55) !important; }

.topbar{
  position: fixed !important;
  top: 0 !important;
  left: 248px !important;
  right: 0 !important;
  height: 64px !important;
  background: rgba(255,255,255,.92) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom: 1px solid var(--x-line) !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 28px !important;
  z-index: 90 !important;
}
.topbar-title{
  font-family: 'Inter Tight',sans-serif !important;
  font-weight: 800 !important;
  color: var(--x-onyx) !important;
  font-size: 1.08rem !important;
  letter-spacing: -.02em !important;
}
.main-content{
  flex: 1 !important;
  margin-left: 248px !important;
  padding-top: 88px !important;
  padding-bottom: 40px !important;
  background: transparent !important;
}
.page-content{ max-width: 1280px; margin: 0 auto; padding: 0 28px !important; }

.page-header h1{
  font-family: 'Inter Tight',sans-serif !important;
  font-size: 1.88rem !important;
  font-weight: 800 !important;
  color: var(--x-onyx) !important;
  letter-spacing: -.025em !important;
}
.page-header p{ color: var(--x-muted) !important; }

.metric-card{ padding: 20px !important; }
.metric-card .label{
  color: var(--x-muted) !important;
  font-family: 'Inter',sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: .84rem !important;
}
.metric-card .value{
  font-size: 1.9rem !important;
  font-weight: 800 !important;
  margin-top: 4px !important;
}
.metric-card .sub{ color: var(--x-muted) !important; font-size: .84rem !important; margin-top: 6px !important; }
.metric-icon{
  width: 38px !important; height: 38px !important; border-radius: 10px !important;
  display: grid !important; place-items: center !important;
  background: rgba(27,90,243,.08) !important; color: var(--x-blue) !important;
  font-weight: 800 !important; font-size: 1.1rem;
}
.metric-icon.green{ background: rgba(5,150,105,.08) !important; color: var(--x-success) !important; }
.metric-icon.yellow{ background: rgba(183,121,31,.12) !important; color: var(--x-warn) !important; }

.panel-grid-2{ display: grid; grid-template-columns: 1.35fr 1fr; gap: 22px; }
@media(max-width:1100px){ .panel-grid-2{ grid-template-columns: 1fr; } }

.table-header h3{ font-family: 'Inter Tight',sans-serif !important; color: var(--x-onyx) !important; font-size: 1.02rem !important; margin: 0 !important; }
table{ width: 100%; border-collapse: separate; border-spacing: 0; }
table th{
  background: var(--x-paper) !important;
  color: var(--x-ink) !important;
  font-weight: 600 !important;
  font-family: 'Inter',sans-serif !important;
  padding: 12px 14px !important;
  text-align: left !important;
  font-size: .80rem !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  border-bottom: 1px solid var(--x-line) !important;
}
table td{ padding: 14px !important; border-bottom: 1px solid var(--x-line) !important; color: var(--x-text) !important; font-size: .92rem !important; }

.transaction-item{ display: flex; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--x-line); }
.transaction-item:last-child{ border-bottom: 0; }
.transaction-type{ font-weight: 600; color: var(--x-onyx); font-family: 'Inter',sans-serif; }
.transaction-desc{ color: var(--x-muted); font-size: .84rem; margin-top: 4px; }
.transaction-amount.positive{ color: var(--x-success) !important; font-weight: 700; font-family: 'Inter Tight',sans-serif; }
.transaction-amount.negative{ color: var(--x-danger) !important; font-weight: 700; font-family: 'Inter Tight',sans-serif; }

@media (max-width: 992px){
  .sidebar{ transform: translateX(-100%); position: fixed; height: 100vh; z-index: 200; }
  .sidebar.open{ transform: translateX(0); }
  .topbar{ left: 0 !important; }
  .main-content{ margin-left: 0 !important; }
}

/* ==========================================================
   LOGIN PREMIUM — modal centrado
   ========================================================== */
body.fintech-login{
  background:
    radial-gradient(1200px 520px at 80% -20%, rgba(27,90,243,.22), transparent 60%),
    radial-gradient(900px 560px at 0% 120%, rgba(27,90,243,.15), transparent 55%),
    linear-gradient(180deg, #0A0A0A 0%, #111216 100%) !important;
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.fintech-login .auth-page{
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: unset !important;
  width: min(460px, 92vw) !important;
  padding: 30px !important;
  background: #fff !important;
  border: 1px solid var(--x-line) !important;
  border-radius: 18px !important;
  box-shadow: 0 40px 100px rgba(0,0,0,.45) !important;
  margin: 40px auto !important;
}
body.fintech-login .auth-left{ display: none !important; }
body.fintech-login .auth-right{ padding: 4px !important; }
body.fintech-login .auth-box{ max-width: 100% !important; }
body.fintech-login .auth-box h1{
  font-family: 'Inter Tight',sans-serif !important;
  font-size: 1.5rem !important;
  color: var(--x-onyx) !important;
  margin-bottom: 4px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
}
body.fintech-login .tabs{
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  background: var(--x-paper) !important;
  border-radius: 10px !important;
  padding: 4px !important;
  margin-bottom: 22px !important;
}
body.fintech-login .tab-btn{
  background: transparent !important;
  color: var(--x-muted) !important;
  border: 0 !important;
  padding: 10px 12px !important;
  font-family: 'Inter',sans-serif !important;
  font-weight: 600 !important;
  font-size: .9rem !important;
  border-radius: 8px !important;
  cursor: pointer;
}
body.fintech-login .tab-btn.active{
  background: #fff !important;
  color: var(--x-onyx) !important;
  box-shadow: 0 4px 10px rgba(10,10,10,.06) !important;
}

/* ==========================================================
   BLOG
   ========================================================== */
.blog-shell .hero{
  background:
    radial-gradient(800px 360px at 100% 0%, rgba(27,90,243,.22), transparent 60%),
    linear-gradient(180deg, #0A0A0A 0%, #111216 100%) !important;
  border-radius: 20px !important;
  margin-top: 22px !important;
  padding: 48px !important;
}
.blog-shell .eyebrow{ color: var(--x-blue) !important; letter-spacing: .16em !important; }
.blog-shell .hero h1{ color:#fff !important; font-family:'Inter Tight',sans-serif !important; }
.blog-shell .hero h1 strong{
  color: var(--x-blue) !important;
  font-weight: 800 !important;
  font-style: normal !important;
  background: linear-gradient(90deg,#4D7EF8,#1B5AF3);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.blog-shell .hero p{ color: rgba(255,255,255,.74) !important; }
.blog-shell .metric strong{ color: var(--x-blue) !important; font-family:'Inter Tight',sans-serif !important; }
.chip{
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.12) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.chip.active{ background: var(--x-blue) !important; color:#fff !important; border-color: transparent !important; }
.editorial-feature-pill{
  background: rgba(27,90,243,.08) !important;
  color: var(--x-blue-2) !important;
  border: 1px solid rgba(27,90,243,.16) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.editorial-feature-title{ color: var(--x-onyx) !important; font-family:'Inter Tight',sans-serif !important; }
.editorial-feature-title .title-accent{ color: var(--x-blue) !important; font-style: normal !important; }
.editorial-feature-summary{ color: var(--x-muted) !important; }
.article-card-body h3{ color: var(--x-onyx) !important; font-family:'Inter Tight',sans-serif !important; }
.article-card-body p{ color: var(--x-muted) !important; }
.subtle{ color: var(--x-muted) !important; }
.text-link{ color: var(--x-blue) !important; font-weight: 600; }

/* Bank / Dados bancários */
.bank-dashboard{ padding: 22px !important; }
.bank-section-title{ color: var(--x-onyx) !important; font-family:'Inter Tight',sans-serif !important; }
.bank-section-subtitle{ color: var(--x-muted) !important; }
.bank-metric{ background: #fff !important; border: 1px solid var(--x-line) !important; border-radius: var(--x-radius-sm) !important; padding: 16px !important; }
.bank-mini-btn{ border-radius: 10px !important; padding: 8px 14px !important; font-weight: 600 !important; border: 1px solid var(--x-line-2) !important; background: #fff !important; color: var(--x-onyx) !important; font-family:'Inter',sans-serif !important; }
.bank-mini-btn.primary{ background: var(--x-blue) !important; color: #fff !important; border: 0 !important; box-shadow: 0 10px 22px rgba(27,90,243,.22) !important; }

.auth-page{ background: transparent !important; }

/* Pequenas correções */
.hero-ctas .btn,.hero-ctas a.btn{ padding: 13px 24px !important; font-size: .96rem !important; border-radius: 10px !important; }
.section-alt{ background: var(--x-paper) !important; }

/* Wrappers e placeholders de logo antigos ficam invisíveis quando não tiverem imagem */
.brand-mark,.brand-mark-sm,.brand-mark-md{ color: var(--x-blue) !important; }

/* Barra superior do app/PWA */
.topbar{
}


/* === PATCH: força texto preto no CTA flutuante "Abrir conta premium" === */
.luxury-floating-cta a.primary,
.luxury-floating-cta a.primary *{
  color: #0A0A0A !important;
  background: #fff !important;
  border: 1px solid #D3D9E4 !important;
  text-shadow: none !important;
  font-weight: 700 !important;
}
.luxury-floating-cta a.primary:hover{
  background: #F6F7FA !important;
  border-color: #0A0A0A !important;
  color: #0A0A0A !important;
}
.luxury-floating-cta a.secondary{
  color: #0A0A0A !important;
}
