/* AI Financial Advisor — Dark Theme */
  body { font-family: 'Inter', system-ui, -apple-system, sans-serif; background-color: #0B0F19; color: #E2E8F0; margin: 0; padding: 0; }
  .text-gradient { background: linear-gradient(135deg, #34D399 0%, #059669 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
  .text-gradient-gold { background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
  .card-dark { background: #1A2235; border: 1px solid #2D3748; transition: transform 0.3s ease, border-color 0.3s ease; }
  .card-dark:hover { transform: translateY(-5px); border-color: #34D399; }
  .section-pad { padding: 100px 20px; }
  .container { max-width: 1200px; margin: 0 auto; }
  .container-narrow { max-width: 900px; margin: 0 auto; }
  .btn-primary-fin { background: linear-gradient(135deg, #059669 0%, #047857 100%); color: #ffffff; padding: 16px 40px; border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 18px; box-shadow: 0 4px 14px rgba(5, 150, 105, 0.4); display: inline-block; transition: transform 0.2s ease, box-shadow 0.2s ease; }
  .btn-primary-fin:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(5, 150, 105, 0.5); color: #ffffff; text-decoration: none; }
  .btn-outline-fin { background: transparent; color: #34D399; padding: 16px 40px; border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 18px; border: 2px solid #34D399; display: inline-block; transition: background 0.2s ease; }
  .btn-outline-fin:hover { background: rgba(52, 211, 153, 0.1); color: #34D399; text-decoration: none; }

  /* Score Card */
  .score-card { background: #1A2235; border: 1px solid #2D3748; border-radius: 16px; padding: 32px; max-width: 460px; box-shadow: 0 12px 40px rgba(0,0,0,0.4); }
  .score-badge { background: linear-gradient(135deg, #059669, #047857); color: white; border-radius: 12px; padding: 12px 18px; text-align: center; min-width: 72px; }
  .score-badge .num { font-size: 2rem; font-weight: 800; line-height: 1; }
  .score-badge .lbl { font-size: 11px; opacity: 0.85; margin-top: 2px; }
  .kpi-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 20px 0; }
  .kpi-item { background: #111827; border-radius: 10px; padding: 14px; }
  .kpi-item .k-lbl { font-size: 11px; color: #64748B; margin-bottom: 4px; text-transform: uppercase; letter-spacing: 0.05em; }
  .kpi-item .k-val { font-size: 16px; font-weight: 700; color: #F8FAFC; }
  .kpi-item .k-val.pos { color: #34D399; }
  .insight-row { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 8px; font-size: 13px; color: #94A3B8; }
  .insight-dot { width: 6px; height: 6px; border-radius: 50%; background: #34D399; margin-top: 5px; flex-shrink: 0; }

  /* Bar */
  .bar-row { margin-bottom: 18px; }
  .bar-lbl { display: flex; justify-content: space-between; font-size: 13px; margin-bottom: 6px; color: #94A3B8; }
  .bar-lbl span:last-child { font-weight: 700; color: #F8FAFC; }
  .bar-track { height: 8px; background: #111827; border-radius: 9999px; overflow: hidden; }
  .bar-fill { height: 100%; border-radius: 9999px; background: linear-gradient(90deg, #059669, #34D399); }
  .bar-fill.gold { background: linear-gradient(90deg, #D97706, #F59E0B); }