/* Pishonserv AI CRM — Shared Design Tokens */
:root {
  --ps-primary:        #1a237e;
  --ps-primary-light:  #3949ab;
  --ps-primary-dark:   #0d1542;
  --ps-gold:           #c8a84b;
  --ps-gold-light:     #dbc56d;
  --ps-gold-dark:      #9e7c29;

  --ps-success:        #2e7d32;
  --ps-success-bg:     #e8f5e9;
  --ps-warning:        #f57f17;
  --ps-warning-bg:     #fff8e1;
  --ps-danger:         #c62828;
  --ps-danger-bg:      #ffebee;
  --ps-info:           #0277bd;
  --ps-info-bg:        #e3f2fd;

  --ps-bg:             #f0f2f8;
  --ps-surface:        #ffffff;
  --ps-surface-2:      #f5f7fa;
  --ps-border:         #e0e4f0;
  --ps-border-hover:   #b8c0e0;

  --ps-text:           #1a1f36;
  --ps-text-muted:     #6b7280;
  --ps-text-light:     #9ca3af;
  --ps-text-inverse:   #ffffff;

  --ps-sidebar-bg:     #1a237e;
  --ps-sidebar-text:   rgba(255,255,255,0.82);
  --ps-sidebar-muted:  rgba(255,255,255,0.45);
  --ps-sidebar-active: rgba(255,255,255,0.13);
  --ps-sidebar-hover:  rgba(255,255,255,0.07);

  --ps-shadow-xs:      0 1px 2px  rgba(0,0,0,0.06);
  --ps-shadow-sm:      0 1px 4px  rgba(0,0,0,0.09);
  --ps-shadow:         0 4px 12px rgba(0,0,0,0.10);
  --ps-shadow-lg:      0 8px 24px rgba(0,0,0,0.13);
  --ps-shadow-xl:      0 16px 40px rgba(0,0,0,0.15);

  --ps-radius-sm:  4px;
  --ps-radius:     8px;
  --ps-radius-lg:  12px;
  --ps-radius-xl:  16px;
  --ps-radius-full: 9999px;

  --ps-transition: 0.18s ease;
  --ps-transition-slow: 0.3s ease;

  --ps-sidebar-width: 240px;
  --ps-topbar-height: 56px;
  --ps-font: 'Inter', system-ui, -apple-system, sans-serif;
  --ps-font-mono: 'JetBrains Mono', 'Fira Mono', monospace;
}

[data-theme="dark"] {
  --ps-bg:             #0e1117;
  --ps-surface:        #1c2033;
  --ps-surface-2:      #242840;
  --ps-border:         #2e3456;
  --ps-border-hover:   #4a5280;

  --ps-text:           #e8eaf6;
  --ps-text-muted:     #9fa8da;
  --ps-text-light:     #7986cb;

  --ps-sidebar-bg:     #0d1027;
  --ps-sidebar-active: rgba(255,255,255,0.10);
  --ps-sidebar-hover:  rgba(255,255,255,0.05);

  --ps-success-bg:     #1b3a1c;
  --ps-warning-bg:     #3a2a00;
  --ps-danger-bg:      #3a1010;
  --ps-info-bg:        #0a2a3a;

  --ps-shadow-xs:      0 1px 2px  rgba(0,0,0,0.25);
  --ps-shadow-sm:      0 1px 4px  rgba(0,0,0,0.35);
  --ps-shadow:         0 4px 12px rgba(0,0,0,0.45);
  --ps-shadow-lg:      0 8px 24px rgba(0,0,0,0.55);
  --ps-shadow-xl:      0 16px 40px rgba(0,0,0,0.60);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { font-size: 15px; scroll-behavior: smooth; }

body {
  font-family: var(--ps-font);
  background: var(--ps-bg);
  color: var(--ps-text);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--ps-primary-light); text-decoration: none; }
a:hover { text-decoration: underline; }

input, select, textarea, button { font-family: inherit; font-size: inherit; }

:focus-visible { outline: 2px solid var(--ps-primary-light); outline-offset: 2px; }
