/* cm-theme.css — Cave Idea brand layer: fonts, colours, glass, dark/light.
   Values follow the public website (caveidea.com): orange #ff7300 on near-black. */

@font-face { font-family: 'Outfit'; src: url('fonts/outfit-600.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Outfit'; src: url('fonts/outfit-800.woff2') format('woff2'); font-weight: 800; font-display: swap; }
@font-face { font-family: 'Plus Jakarta Sans'; src: url('fonts/plus-jakarta-sans-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Plus Jakarta Sans'; src: url('fonts/plus-jakarta-sans-500.woff2') format('woff2'); font-weight: 500 700; font-display: swap; }
/* Arabic (IBM Plex Sans Arabic, local files, Arabic letters only) */
@font-face { font-family: 'IBM Plex Sans Arabic'; src: url('fonts/plex-arabic-400.woff2') format('woff2'); font-weight: 400; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0898-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC; }
@font-face { font-family: 'IBM Plex Sans Arabic'; src: url('fonts/plex-arabic-500.woff2') format('woff2'); font-weight: 500; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0898-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC; }
@font-face { font-family: 'IBM Plex Sans Arabic'; src: url('fonts/plex-arabic-600.woff2') format('woff2'); font-weight: 600; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0898-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC; }
@font-face { font-family: 'IBM Plex Sans Arabic'; src: url('fonts/plex-arabic-700.woff2') format('woff2'); font-weight: 700 800; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0898-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC; }

:root {
  --font-heading: 'Outfit', 'IBM Plex Sans Arabic', 'Segoe UI', system-ui, sans-serif;
  --font-body: 'Plus Jakarta Sans', 'IBM Plex Sans Arabic', 'Segoe UI', system-ui, sans-serif;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --radius: 16px;
  --radius-sm: 10px;

  --brand: #ff7300;
  --brand-hover: #ff851a;
  --accent: var(--brand);
  --accent-hover: var(--brand-hover);
  --on-accent: #ffffff;
  --danger: #ef4444;
  --ok: #22c55e;
  --usd: #60a5fa;           /* dollar amounts */

  /* status colours (chips, card bars, board columns) */
  --st-draft: #9ca3af;
  --st-pending: #eab308;
  --st-sent: #3b82f6;
  --st-accepted: #22c55e;
  --st-rejected: #ef4444;
  --st-paid: #14b8a6;
  --st-cancelled: #a855f7;
}

/* ---------- dark (default) ---------- */
:root, [data-theme="dark"] {
  color-scheme: dark;
  --bg: #07080a;
  --bg-2: #0c0e14;
  --card: rgba(16, 19, 27, 0.72);
  --sidebar: rgba(12, 14, 20, 0.82);
  --toast: #141821;
  --btn: rgba(255, 255, 255, 0.05);
  --btn-hover: rgba(255, 255, 255, 0.09);
  --field: rgba(255, 255, 255, 0.04);
  --field-line: rgba(255, 255, 255, 0.16);
  --line: rgba(255, 255, 255, 0.08);
  --line-strong: rgba(255, 255, 255, 0.14);
  --line-hover: rgba(255, 255, 255, 0.26);
  --row-hover: rgba(255, 115, 0, 0.06);
  --text: #ffffff;
  --text-2: #a1a1aa;
  --text-3: #71717a;
  --accent-soft: rgba(255, 115, 0, 0.16);
  --glass: blur(18px) saturate(140%);
  --shadow: 0 1px 0 rgba(255,255,255,.03) inset, 0 10px 30px rgba(0,0,0,.35);
  --shadow-lg: 0 20px 50px rgba(0,0,0,.5);
  --wallpaper:
    radial-gradient(900px 500px at 85% -10%, rgba(255, 115, 0, 0.10), transparent 60%),
    radial-gradient(700px 500px at -10% 110%, rgba(255, 115, 0, 0.06), transparent 60%),
    linear-gradient(180deg, #07080a, #0a0c11);
}

/* ---------- light: opaque cards, darker text, visible borders ---------- */
[data-theme="light"] {
  color-scheme: light;
  --bg: #f3f3f5;
  --bg-2: #ffffff;
  --card: #ffffff;
  --sidebar: #ffffff;
  --toast: #ffffff;
  --btn: #f4f4f5;
  --btn-hover: #e9e9ec;
  --field: #ffffff;
  --field-line: #c4c4cc;
  --line: #e4e4e7;
  --line-strong: #d4d4d8;
  --line-hover: #a1a1aa;
  --row-hover: rgba(255, 115, 0, 0.07);
  --text: #111114;
  --text-2: #52525b;
  --text-3: #8a8a94;
  --accent: #e86500;          /* a touch darker for contrast on white */
  --accent-hover: #ff7300;
  --accent-soft: rgba(255, 115, 0, 0.16);
  --usd: #1d4ed8;
  --glass: none;
  --shadow: 0 1px 2px rgba(0,0,0,.05), 0 6px 20px rgba(0,0,0,.05);
  --shadow-lg: 0 16px 40px rgba(0,0,0,.14);
  --wallpaper: linear-gradient(180deg, #f6f6f8, #efeff2);
}

body { background: var(--wallpaper); background-attachment: fixed; }
