/**
 * Lucide Icons — Premium fintech / gold saving
 * Rounded containers, gold accents, consistent spacing
 */

/* Base: Lucide SVG injected by createIcons() */
.lucide {
  flex-shrink: 0;
  stroke: currentColor;
}
.entry-header .logo-icon .lucide {
  width: 24px;
  height: 24px;
  color: var(--charcoal);
}
.sidebar-brand .icon-wrap-gold .lucide,
.navbar-brand .icon-wrap-gold .lucide {
  width: 20px;
  height: 20px;
}
.wallet-card .wallet-label .lucide { width: 16px; height: 16px; opacity: 0.9; }
.badge .lucide { width: 14px; height: 14px; }
.icon-sm .lucide,
.icon-wrap.icon-sm .lucide { width: 18px; height: 18px; }
.icon-md .lucide,
.icon-wrap .lucide { width: 22px; height: 22px; }
.icon-lg .lucide,
.icon-wrap.icon-lg .lucide { width: 26px; height: 26px; }
.icon-xl .lucide,
.icon-wrap.icon-xl .lucide { width: 32px; height: 32px; }

/* Rounded icon container — neutral */
.icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius);
  flex-shrink: 0;
}
.icon-wrap .lucide { width: 22px; height: 22px; }
.icon-wrap.icon-sm .lucide { width: 18px; height: 18px; }
.icon-wrap.icon-lg .lucide { width: 26px; height: 26px; }

/* Gold accent container */
.icon-wrap-gold {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius);
  background: linear-gradient(135deg, var(--soft-gold-bg) 0%, rgba(232, 197, 71, 0.2) 100%);
  color: var(--gold-deep);
  flex-shrink: 0;
}
.icon-wrap-gold .lucide { stroke: currentColor; }

/* Entry card visual badge */
.entry-card .card-visual-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 44px;
  height: 44px;
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: var(--shadow-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold-deep);
}
.entry-card .card-visual-badge .lucide { width: 24px; height: 24px; }

/* CTA button with icon */
.btn-cta .lucide,
.landing-cta-btn .lucide { width: 18px; height: 18px; margin-left: 0.25rem; }
.btn-cta,
.landing-cta-btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem; }

/* Nav items (sidebar + bottom nav) */
.nav-link .lucide,
.nav-item .lucide { width: 20px; height: 20px; flex-shrink: 0; }
.nav-link,
.nav-item { display: inline-flex; align-items: center; gap: 0.5rem; }
/* Branch / HQ app sidebar */
.app-sidebar .nav-link { display: inline-flex; align-items: center; gap: 0.5rem; }
.app-sidebar .nav-link .lucide { width: 20px; height: 20px; }
.nav-item { flex-direction: column; gap: 0.2rem; }
.nav-item .lucide { width: 22px; height: 22px; }

/* Quick action / QA icon box */
.quick-action-btn .qa-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold-deep);
}
.quick-action-btn .qa-icon .lucide { width: 28px; height: 28px; }

/* Wallet card */
.wallet-card .wallet-actions .btn .lucide { width: 16px; height: 16px; margin-right: 0.25rem; }
.wallet-card .wallet-actions .btn { display: inline-flex; align-items: center; }

/* Price card header */
.price-chart-card .card-header .lucide { width: 18px; height: 18px; color: var(--text-muted); margin-right: 0.35rem; }

/* Report / stat card link */
.card-gold .icon-wrap-gold .lucide { width: 26px; height: 26px; }

/* List item icons (orders, notifications) */
.list-group-item .icon-wrap .lucide,
.list-group-item .icon-wrap-gold .lucide { width: 22px; height: 22px; }

/* Promotion card */
.promo-card .icon-wrap-gold .lucide { width: 22px; height: 22px; }

/* Footer / trust strip */
.entry-footer .lucide,
.login-trust .lucide { width: 16px; height: 16px; vertical-align: -0.2em; margin-right: 0.25rem; }
.login-trust span { display: inline-flex; align-items: center; gap: 0.35rem; }

/* Modal notification icons */
.list-group-item .icon-wrap-gold .lucide,
.list-group-item .icon-wrap .lucide { width: 22px; height: 22px; }

/* Button with icon */
.btn .lucide { width: 18px; height: 18px; margin-right: 0.35rem; }
.btn .lucide:last-child { margin-right: 0; margin-left: 0.35rem; }
