/* ── Toast ───────────────────────────────────────────────── */
.toast {
  position: fixed; bottom: 20px; right: 20px;
  background: var(--card-bg); /* FIX: era `white` hardcoded */
  border: 1px solid var(--border);
  padding: 14px 20px; border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
  display: flex; align-items: center; gap: 10px;
  font-weight: 500; font-size: 13px; color: var(--text);
  z-index: 10000; animation: slideIn 0.25s ease;
}
.toast.success { border-left: 3px solid var(--success); }
.toast.error   { border-left: 3px solid var(--danger); }
.toast.warning { border-left: 3px solid var(--warning); }

/* ── Animaciones ─────────────────────────────────────────── */
@keyframes slideIn   { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: translateX(0); } }
@keyframes slideDown { from { opacity: 0; transform: translateY(-8px);  } to { opacity: 1; transform: translateY(0); } }
@keyframes slideUp   { from { opacity: 0; transform: translateY(20px);  } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeIn    { from { opacity: 0; } to { opacity: 1; } }

/* ── Dark mode overrides ─────────────────────────────────── */
/* Solo se mantienen los overrides que NO pueden resolverse con variables en la base */

/* FIX: #0F172A → var(--bg) en todos los casos */
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea            { background: var(--bg); color: var(--text); border-color: var(--border); }
[data-theme="dark"] input::placeholder  { color: var(--text-muted); }

[data-theme="dark"] .modalFormGroup input,
[data-theme="dark"] .modalFormGroup select,
[data-theme="dark"] .formInput          { background: var(--bg); color: var(--text); border-color: var(--border); }

[data-theme="dark"] .fundInputPrefix    { background: var(--bg); border-color: var(--border); }

[data-theme="dark"] thead               { background: var(--bg); border-color: var(--border); }
[data-theme="dark"] tbody tr:hover      { background: rgba(255,255,255,0.02); }
[data-theme="dark"] td                  { border-color: var(--border); }
[data-theme="dark"] th                  { color: var(--text-light); }

[data-theme="dark"] .optionsItem:hover  { background: rgba(255,255,255,0.04); }
[data-theme="dark"] .langOption:hover   { background: rgba(255,255,255,0.04); }

[data-theme="dark"] .btnSecondary       { background: transparent; color: var(--text); border-color: var(--border); }
[data-theme="dark"] .btnSecondary:hover { background: var(--border); }
[data-theme="dark"] select.btnSecondary { background: var(--card-bg); }

[data-theme="dark"] .tableBtn           { border-color: var(--border); color: var(--text); }
[data-theme="dark"] .tableBtn:hover     { background: var(--border); }

[data-theme="dark"] .draftBadge  { background: rgba(217,119,6,0.1);  border-color: rgba(217,119,6,0.3); }
[data-theme="dark"] .warningBox  { background: rgba(217,119,6,0.08); }
[data-theme="dark"] .warningBox p,
[data-theme="dark"] .hint strong,
[data-theme="dark"] .hint p      { color: #FCD34D; }