/* Clear vector controls and a shared logo frame on every account card. */
.ico { width:24px; height:24px; stroke-width:2; shape-rendering:geometricPrecision }
.nav-item .ico,.bottom-item .ico,.btn.icon-button .ico,.top-actions .ico { width:24px; height:24px; opacity:1 }
.nav-item { color:#655f70 }
.bottom-item { color:#655f70 }
.btn .ico { width:20px; height:20px }
.tx-icon .ico { width:24px; height:24px; stroke-width:2 }
.bank-card .bank-emblem,.bank-card .bank-emblem:has(.brand-logo) {
  width:80px; min-width:80px; height:48px; justify-content:flex-start;
  border:0; background:none; border-radius:0;
}
.bank-card .brand-logo,.bank-card .brand-logo.logo-wordmark,.bank-card .brand-logo.logo-centered-square {
  width:80px; height:48px; flex-basis:80px; padding:0;
  border:0; border-radius:0; background:transparent; box-shadow:none;
  color:inherit; justify-content:flex-start;
}
.bank-card .brand-logo img { width:80px; height:44px; object-fit:contain; object-position:left center; border-radius:0 }
.bank-card .brand-logo.logo-symbol img { width:48px; height:44px; object-position:center }
.bank-card .brand-logo.logo-centered-square img { width:80px; height:44px; object-fit:cover; object-position:center }
.bank-card .brand-logo.logo-dark-art { mix-blend-mode:screen }
.bank-card .brand-logo.logo-dark-art img { filter:grayscale(1) contrast(5) invert(1) }
.bank-card .brand-logo.logo-light-art { mix-blend-mode:screen }
.bank-card .brand-logo.logo-light-art img { filter:grayscale(1) brightness(1.4) contrast(6) }
.bank-card .brand-logo:has(img[src*="brand-yoy"]) img { filter:grayscale(1) brightness(2.3) contrast(6) }
.bank-card.card-dark-ink .brand-logo { mix-blend-mode:multiply }
.bank-card.card-dark-ink .brand-logo.logo-dark-art img { filter:grayscale(1) contrast(5) }
.bank-card.card-dark-ink .brand-logo.logo-light-art img { filter:grayscale(1) brightness(1.4) contrast(6) invert(1) }
.bank-card .brand-logo>span { font-size:22px; color:inherit; font-weight:700 }
.bank-card .brand-logo:has(img[src$=".svg"]) img,.bank-card .brand-logo.logo-alpha-art img { filter:brightness(0) invert(1) }
.bank-card.card-dark-ink .brand-logo:has(img[src$=".svg"]) img,.bank-card.card-dark-ink .brand-logo.logo-alpha-art img { filter:brightness(0) }
.bank-card .brand-logo:has(img[src*="brand-global66"]) img,.bank-card .brand-logo:has(img[src*="brand-belo"]) img { width:80px; height:80px; object-fit:contain }
.bank-card .brand-logo:has(img[src*="brand-mercadopago-card"]) { mix-blend-mode:normal }
.bank-card .brand-logo:has(img[src*="brand-mercadopago-card"]) img { filter:none; width:80px; height:44px; object-fit:contain }
.bank-card .bank-emblem>.ico { width:30px; height:30px; stroke-width:1.8 }
.bank-card .bank-name { margin-top:22px }
#appearanceSelect { width:100%; min-height:48px; margin-top:9px }

:root[data-theme=dark] {
  --bg:#17161e; --panel:#24222d; --ink:#f0edf7; --muted:#b5aec4;
  --line:#ffffff14; --primary:#bca2ff; --purple:#bca2ff; --soft:#353043;
  --green:#83d5b5; --red:#f4a0b7; --focus:#c6aaff;
  --glass-surface:rgba(39,36,49,.86); --glass-control:rgba(48,43,62,.82);
  --glass-border:rgba(255,255,255,.1);
  --glass-shadow:0 8px 26px #00000014,inset 0 1px 0 #ffffff07;
  color-scheme:dark;
}
[data-theme=dark] body { background:radial-gradient(ellipse at 4% 0%,#34254136,transparent 52%),radial-gradient(ellipse at 95% 32%,#212c4238,transparent 50%),#17161e; color:var(--ink) }
[data-theme=dark] :is(.sidebar,.bottomnav,.chat-compose) { background:#24212ce8; border-color:#ffffff17; box-shadow:0 8px 30px #0003,inset 0 1px 0 #ffffff09; outline-color:#ffffff0b }
[data-theme=dark] :is(.modal,.login-card) { background:#24212bf5; border-color:#ffffff20; color:var(--ink); box-shadow:0 18px 60px #0005,inset 0 1px 0 #ffffff09 }
[data-theme=dark] .modalback { background:#07060c88 }
[data-theme=dark] :is(.nav-item,.bottom-item,.brand small,.side-caption,.side-bottom>small,.side-message span,.app-footer,.today-label,.eyebrow,.balance-label,.balance-caption,.income-expense span,.page-heading p,.modal-description,.footnote,.muted,.tx-content small,.plan-preview>span,.stat>span,.stat>small,.plan-row small,.simple-row small,.goal-summary,.goal-card small,.goal-card-footer small,.goal-detail-stats small,.toggle-row small,.empty p,.field label,.field small,.optional,.calendar-key,.weekday,.legend,.donut-center small,.donut-center span,.finance-card>small,.brand-library-row small,.brand-selection small) { color:#b5aec4 }
[data-theme=dark] :is(.greeting h2,.page-heading h1,.tx-content strong,.plan-preview strong,.stat>strong,.big-number,.donut-center strong,.simple-row b,.report-hero>strong,.total-balance,.goal-detail-stats b,.goal-card strong,.question-card,.empty h3,.modal-head h2,.login-card h1) { color:var(--ink) }
[data-theme=dark] :is(.nav-item.active,.bottom-item.active) { background:linear-gradient(140deg,#514066c9,#3c304fd9); color:#d5beff; box-shadow:inset 0 1px 0 #ffffff12 }
[data-theme=dark] :is(.nav-item:hover,.transaction:hover,.brand-result:hover) { background:#ffffff06 }
[data-theme=dark] :is(.side-message,.assistant-prompt,.insight strong) { color:#c9b2ee }
[data-theme=dark] :is(.btn.secondary,.btn.subtle,.btn.icon-button) { background:var(--glass-control); color:#dacdef; border-color:var(--glass-border); box-shadow:inset 0 1px 0 #ffffff08 }
[data-theme=dark] :is(.btn.primary,.fab) { color:#fff; background:linear-gradient(150deg,#9168dd,#774cc6); border-color:#ffffff25 }
[data-theme=dark] .btn.text { color:#c9aff5; background:transparent }
[data-theme=dark] .btn.danger { color:#ffc2ce; background:#72354966; border-color:#a64c665e }
[data-theme=dark] :is(.field input:not([type=checkbox]):not([type=file]),.field select,.field textarea,.filters select,.search-field,.search-field input,.chat-compose input,.chat-compose textarea,.voice-input textarea,.login-card input,.brand-search input,.month-switch input) { background:#1e1b26; color:#f0eaf9; border-color:#51475f; box-shadow:none }
[data-theme=dark] :is(input,textarea)::placeholder { color:#a69ab6 }
[data-theme=dark] .field select:disabled { background:#302a39; color:#b2a6bf }
[data-theme=dark] :is(.currency-pill,.insight-icon,.badge,.nav-new,.file-label,.secure,.voice-mode,.voice-status,.voice-examples,.goal-placeholder,.goal-image-placeholder) { background:#3b314c; color:#d0b9f0; border-color:#584269 }
[data-theme=dark] .badge.green { background:#234537; color:#a5e1bf }
[data-theme=dark] :is(.tx-amount.expense,.negative) { color:#f0a0b9 }
[data-theme=dark] :is(.tx-amount.income,.positive) { color:#88d7bc }
[data-theme=dark] .tx-amount small { color:#e4c284 }
[data-theme=dark] .income-expense .expense-summary .ico { color:#eca0b8 }
[data-theme=dark] .income-expense .ico { color:#8fd8bf }
[data-theme=dark] .insight small { color:#afa4bf }
[data-theme=dark] .goal-empty-art { background:linear-gradient(125deg,#352b44,#2a3043); color:#c1a8e3 }
[data-theme=dark] :is(.progress,.segmented,.currency-toggle) { background:#1d1b26; border-color:#ffffff10 }
[data-theme=dark] :is(.segmented .btn,.currency-toggle .btn) { color:#c1b7ce }
[data-theme=dark] :is(.segmented .selected,.currency-toggle .selected) { background:#57416f; color:#f0e2ff; box-shadow:inset 0 1px 0 #ffffff16 }
[data-theme=dark] .notice { background:#332c40; color:#d2c2e6; border-color:#594567 }
[data-theme=dark] :is(.notice.warning,#syncBanner) { background:#493b25; color:#f0d5a4; border-color:#76603c }
[data-theme=dark] :is(.form-error,.login-msg) { background:#502b39; color:#ffc0cf; border-color:#805064 }
[data-theme=dark] .calendar-cell { background:#282431; color:#c9bdd7; border-color:#ffffff16 }
[data-theme=dark] .calendar-cell.selected { background:#4b395e; color:#ecd8ff; border-color:#a78acd }
[data-theme=dark] .calendar-cell.today b { border-color:#b799dd }
[data-theme=dark] .check-button { border-color:#736480 }
[data-theme=dark] .check-button.checked { background:#8969b0; border-color:#8969b0 }
[data-theme=dark] .plan-row.done strong { color:#b5a9c2 }
[data-theme=dark] :is(.brand-editor,.brand-search,.brand-upload-preview,.schedule-row,.voice-review,.chat-message,.chat-message.assistant,.chat-bubble,.chat-empty,.voice-history) { background:#28232f; color:var(--ink); border-color:#ffffff19 }
[data-theme=dark] :is(.chat-message.user,.chat-bubble.user) { background:#493457; color:#f2e7fc }
[data-theme=dark] .toggle-row input[type=checkbox] { background:#51495e; border-color:#665b77 }
[data-theme=dark] .toggle-row input[type=checkbox]:checked { background:#8d64cd; border-color:#a17cdd }
[data-theme=dark] .tx-icon.category-market,[data-theme=dark] .tx-icon.category-income { background:#273f35; color:#a1dbb3 }
[data-theme=dark] .tx-icon.category-food { background:#493824; color:#ebc58e }
[data-theme=dark] .tx-icon.category-transport { background:#273752; color:#aec9f6 }
[data-theme=dark] .tx-icon.category-health { background:#492c3c; color:#f2abc2 }
[data-theme=dark] .tx-icon.category-personal,[data-theme=dark] .tx-icon.category-shopping { background:#3b304c; color:#ceb3e8 }
[data-theme=dark] .tx-icon.category-education { background:#273d43; color:#98cfda }
[data-theme=dark] .tx-icon.category-work { background:#313b4b; color:#b9c9df }
[data-theme=dark] .tx-icon.category-home { background:#383e2c; color:#c9d394 }
[data-theme=dark] .tx-icon.category-leisure { background:#452d49; color:#e2b4e7 }
[data-theme=dark] .save-status { color:#9bd4b8 }
[data-theme=dark] .save-status.error { color:#ffb1bf }
[data-theme=dark] .toast { background:#40334fec; color:#fff; border-color:#88719e }
[data-theme=dark] :is(.transcript,.goal-detail-stats>div,.goal-mini-art,.assistant-hero>span,.brand-editor,.voice-result,.voice-history) { background:#352c42; color:#dbc7ef; border-color:#5c496e }
[data-theme=dark] :is(.goal-filter select,.month-switch) { background:#282231; color:#d1c3e2; border-color:#574461 }
[data-theme=dark] :is(.voice-intro p,.assistant-hero p,.assistant-note,.goal-link,details>summary,.goal-mini small,.chat-bubble small,.sub) { color:#bfb0ce }
[data-theme=dark] :is(.transaction,.overview-side,.plan-row,.goal-mini,.goal-card-footer,.plan-preview,.toggle-row,.schedule-row) { border-color:var(--line) }
[data-theme=dark] .brand-result { background:#28232f; border-color:#564662; color:var(--ink) }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
  :root[data-theme=dark] { --glass-surface:#28232f; --glass-control:#332c3d; --glass-border:#786783; --line:#63546e }
  [data-theme=dark] :is(.sidebar,.bottomnav,.chat-compose,.modal,.login-card) { background:#24212c; -webkit-backdrop-filter:none; backdrop-filter:none; border-color:#786783 }
}
