:root {
  color-scheme: dark;

  /* Core brand (MainActivity-aligned) */
  --pt-primary: #fb9b36;
  --pt-secondary: #fb9b36;
  --pt-accent: #7352b8;

  --pt-primary-rgb: 251, 155, 54;
  --pt-secondary-rgb: 251, 155, 54;
  --pt-accent-rgb: 115, 82, 184;

  /* Background layers */
  --pt-bg-canvas: #000000;
  --pt-bg-base: #000000;
  --pt-bg-surface: #0e0e0e;
  --pt-bg-surface-2: #151515;
  --pt-bg-elevated: #1c1c1c;

  /* Text hierarchy */
  --pt-text-primary: #ffffff;
  --pt-text-secondary: rgba(255, 255, 255, 0.86);
  --pt-text-muted: rgba(190, 190, 190, 0.92);
  --pt-text-disabled: rgba(190, 190, 190, 0.52);
  --pt-text-on-accent: #000000;

  /* Borders and dividers */
  --pt-border-subtle: rgba(255, 255, 255, 0.08);
  --pt-border-default: rgba(255, 255, 255, 0.12);
  --pt-border-strong: rgba(255, 255, 255, 0.18);
  --pt-divider: #222222;

  /* States */
  --pt-success: #9dff2c;
  --pt-warning: #f59e0b;
  --pt-error: #ff4d4d;
  --pt-info: #38bdf8;

  --pt-success-rgb: 157, 255, 44;
  --pt-warning-rgb: 245, 158, 11;
  --pt-error-rgb: 255, 77, 77;
  --pt-info-rgb: 56, 189, 248;

  /* Effects */
  --pt-shadow-sm: 0 10px 26px rgba(0, 0, 0, 0.52);
  --pt-shadow-md: 0 18px 50px rgba(0, 0, 0, 0.58);
  --pt-shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.42);
  --pt-focus-ring: 0 0 0 3px rgba(var(--pt-primary-rgb), 0.24);

  /* Radius */
  --pt-radius-sm: 10px;
  --pt-radius-md: 14px;
  --pt-radius-lg: 18px;
  --pt-radius-xl: 24px;

  /* Fintech semantic aliases */
  --bg-primary: var(--pt-bg-base);
  --bg-secondary: var(--pt-bg-surface-2);
  --bg-card: var(--pt-bg-surface);
  --text-primary: var(--pt-text-primary);
  --text-secondary: var(--pt-text-secondary);
  --text-muted: var(--pt-text-muted);
  --border-color: var(--pt-border-default);
  --hover-color: rgba(var(--pt-primary-rgb), 0.14);
  --active-color: rgba(var(--pt-primary-rgb), 0.24);
  --disabled-color: var(--pt-text-disabled);

  /* Compatibility aliases for existing CSS */
  --bg: var(--pt-bg-base);
  --surface: var(--pt-bg-surface);
  --surface-2: var(--pt-bg-surface-2);
  --card: var(--pt-bg-surface);

  --text: var(--pt-text-primary);
  --muted: var(--pt-text-muted);
  --border: var(--pt-border-default);
  --border-2: var(--pt-border-strong);

  --primary: var(--pt-primary);
  --primary-contrast: var(--pt-text-on-accent);
  --primary-rgb: var(--pt-primary-rgb);

  --success: var(--pt-success);
  --success-contrast: var(--pt-text-on-accent);
  --success-rgb: var(--pt-success-rgb);

  --warning: var(--pt-warning);
  --warning-rgb: var(--pt-warning-rgb);
  --danger: var(--pt-error);
  --danger-rgb: var(--pt-error-rgb);
  --info: var(--pt-info);
  --info-rgb: var(--pt-info-rgb);
}

/* Optional light mode (default remains dark) */
:root[data-theme="light"],
body[data-theme="light"] {
  color-scheme: light;
  --pt-bg-canvas: #f3f6fa;
  --pt-bg-base: #ffffff;
  --pt-bg-surface: #f8fafc;
  --pt-bg-surface-2: #eef2f7;
  --pt-bg-elevated: #e7edf4;

  --pt-text-primary: #0b1220;
  --pt-text-secondary: rgba(11, 18, 32, 0.82);
  --pt-text-muted: rgba(11, 18, 32, 0.62);
  --pt-text-disabled: rgba(11, 18, 32, 0.42);
  --pt-text-on-accent: #061002;

  --pt-border-subtle: rgba(11, 18, 32, 0.08);
  --pt-border-default: rgba(11, 18, 32, 0.14);
  --pt-border-strong: rgba(11, 18, 32, 0.22);
  --pt-divider: rgba(11, 18, 32, 0.09);
}
