/* =====================================================================
   SEMANTIC — motyw "Lekarz" (warstwa 2/2)
   Aliasy ról → primitives.css. To JEDYNA warstwa, której używają
   komponenty i strony (np. var(--bg-brand), var(--text-default)).
   :root                = Light Lekarz
   [data-theme="dark"]  = Dark Lekarz
   ===================================================================== */

:root {
  /* ---- BACKGROUND · Default ---- */
  --bg-default: var(--white-1000);
  --bg-default-hover: var(--gray-100);
  --bg-secondary: var(--gray-100);
  --bg-secondary-hover: var(--gray-200);
  --bg-tertiary: var(--gray-300);
  --bg-tertiary-hover: var(--gray-400);

  /* ---- BACKGROUND · Neutral ---- */
  --bg-neutral: var(--slate-700);
  --bg-neutral-hover: var(--slate-800);
  --bg-neutral-secondary: var(--slate-300);
  --bg-neutral-secondary-hover: var(--slate-400);
  --bg-neutral-tertiary: var(--slate-200);
  --bg-neutral-tertiary-hover: var(--slate-300);
  --bg-neutral-quaternary: var(--slate-900);
  --bg-neutral-quaternary-hover: var(--slate-1000);

  /* ---- BACKGROUND · Brand ---- */
  --bg-brand: var(--brand-800);
  --bg-brand-hover: var(--brand-900);
  --bg-brand-active: var(--brand-1000);
  --bg-brand-secondary: var(--brand-200);
  --bg-brand-secondary-hover: var(--brand-300);
  --bg-brand-tertiary: var(--brand-100);
  --bg-brand-tertiary-hover: var(--brand-200);

  /* ---- BACKGROUND · Positive / Warning / Danger ---- */
  --bg-positive: var(--green-500);
  --bg-positive-hover: var(--green-600);
  --bg-positive-secondary: var(--green-200);
  --bg-positive-tertiary: var(--green-100);
  --bg-warning: var(--yellow-400);
  --bg-warning-hover: var(--yellow-500);
  --bg-warning-secondary: var(--yellow-200);
  --bg-warning-tertiary: var(--yellow-100);
  --bg-danger: var(--red-500);
  --bg-danger-hover: var(--red-600);
  --bg-danger-secondary: var(--red-200);
  --bg-danger-tertiary: var(--red-100);

  /* ---- BACKGROUND · stany ---- */
  --bg-disabled: var(--gray-300);
  --bg-scrim: var(--black-1000);

  /* ---- TEXT · Default ---- */
  --text-default: var(--gray-900);
  --text-secondary: var(--gray-500);
  --text-tertiary: var(--gray-400);

  /* ---- TEXT · Neutral ---- */
  --text-neutral: var(--slate-900);
  --text-neutral-secondary: var(--slate-700);
  --text-neutral-tertiary: var(--slate-600);
  --text-on-neutral: var(--slate-100);

  /* ---- TEXT · Brand ---- */
  --text-brand: var(--brand-800);
  --text-brand-secondary: var(--brand-600);
  --text-brand-tertiary: var(--brand-500);
  --text-on-brand: var(--brand-100);

  /* ---- TEXT · Positive / Warning / Danger ---- */
  --text-positive: var(--green-800);
  --text-positive-secondary: var(--green-600);
  --text-on-positive: var(--green-100);
  --text-warning: var(--yellow-900);
  --text-warning-secondary: var(--yellow-700);
  --text-on-warning: var(--yellow-1000);
  --text-danger: var(--red-700);
  --text-danger-secondary: var(--red-600);
  --text-on-danger: var(--red-100);
  --text-danger-placeholder: var(--red-400);

  /* ---- TEXT · stany ---- */
  --text-disabled: var(--gray-400);

  /* ---- BORDER ---- */
  --border-default: var(--gray-300);
  --border-secondary: var(--gray-500);
  --border-tertiary: var(--gray-700);
  --border-neutral: var(--slate-900);
  --border-brand: var(--brand-800);
  --border-brand-secondary: var(--brand-600);
  --border-positive: var(--green-800);
  --border-warning: var(--yellow-900);
  --border-danger: var(--red-700);
  --border-disabled: var(--gray-400);
  --border-focus: var(--blue-600);

  /* ---- ICON (w motywie Lekarz pokrywa się z TEXT) ---- */
  --icon-default: var(--text-default);
  --icon-secondary: var(--text-secondary);
  --icon-tertiary: var(--text-tertiary);
  --icon-brand: var(--text-brand);
  --icon-on-brand: var(--text-on-brand);
  --icon-positive: var(--text-positive);
  --icon-warning: var(--text-warning);
  --icon-danger: var(--text-danger);

  /* ---- GRADIENT brand ---- */
  --gradient-brand-dark: var(--brand-extra);
  --gradient-brand-light: var(--brand-1000);
  --gradient-brand: linear-gradient(360deg, var(--gradient-brand-dark) 0%, var(--gradient-brand-light) 100%);
}

[data-theme="dark"] {
  /* ---- BACKGROUND · Default ---- */
  --bg-default: var(--gray-900);
  --bg-default-hover: var(--gray-700);
  --bg-secondary: var(--gray-800);
  --bg-secondary-hover: var(--gray-900);
  --bg-tertiary: var(--gray-600);
  --bg-tertiary-hover: var(--gray-700);

  /* ---- BACKGROUND · Neutral ---- */
  --bg-neutral: var(--slate-400);
  --bg-neutral-hover: var(--slate-500);
  --bg-neutral-secondary: var(--slate-900);
  --bg-neutral-secondary-hover: var(--slate-1000);
  --bg-neutral-tertiary: var(--slate-900);
  --bg-neutral-tertiary-hover: var(--slate-1000);
  --bg-neutral-quaternary: var(--slate-600);
  --bg-neutral-quaternary-hover: var(--slate-700);

  /* ---- BACKGROUND · Brand ---- */
  --bg-brand: var(--brand-100);
  --bg-brand-hover: var(--brand-300);
  --bg-brand-active: var(--brand-200);
  --bg-brand-secondary: var(--brand-600);
  --bg-brand-secondary-hover: var(--brand-500);
  --bg-brand-tertiary: var(--brand-600);
  --bg-brand-tertiary-hover: var(--brand-800);

  /* ---- BACKGROUND · Positive / Warning / Danger ---- */
  --bg-positive: var(--green-700);
  --bg-positive-hover: var(--green-800);
  --bg-positive-secondary: var(--green-800);
  --bg-positive-tertiary: var(--green-900);
  --bg-warning: var(--yellow-400);
  --bg-warning-hover: var(--yellow-500);
  --bg-warning-secondary: var(--yellow-800);
  --bg-warning-tertiary: var(--yellow-900);
  --bg-danger: var(--red-600);
  --bg-danger-hover: var(--red-700);
  --bg-danger-secondary: var(--red-800);
  --bg-danger-tertiary: var(--red-900);

  /* ---- BACKGROUND · stany ---- */
  --bg-disabled: var(--gray-700);
  --bg-scrim: var(--black-1000);

  /* ---- TEXT · Default ---- */
  --text-default: var(--white-1000);
  --text-secondary: var(--white-500);
  --text-tertiary: var(--white-400);

  /* ---- TEXT · Neutral ---- */
  --text-neutral: var(--slate-200);
  --text-neutral-secondary: var(--slate-300);
  --text-neutral-tertiary: var(--slate-400);
  --text-on-neutral: var(--slate-1000);

  /* ---- TEXT · Brand ---- */
  --text-brand: var(--brand-100);
  --text-brand-secondary: var(--brand-300);
  --text-brand-tertiary: var(--brand-400);
  --text-on-brand: var(--brand-900);

  /* ---- TEXT · Positive / Warning / Danger ---- */
  --text-positive: var(--green-200);
  --text-positive-secondary: var(--green-400);
  --text-on-positive: var(--green-100);
  --text-warning: var(--yellow-200);
  --text-warning-secondary: var(--yellow-400);
  --text-on-warning: var(--yellow-1000);
  --text-danger: var(--red-200);
  --text-danger-secondary: var(--red-400);
  --text-on-danger: var(--red-100);
  --text-danger-placeholder: var(--red-400);

  /* ---- TEXT · stany ---- */
  --text-disabled: var(--gray-500);

  /* ---- BORDER ---- */
  --border-default: var(--gray-600);
  --border-secondary: var(--gray-500);
  --border-tertiary: var(--gray-400);
  --border-neutral: var(--slate-100);
  --border-brand: var(--brand-100);
  --border-brand-secondary: var(--brand-300);
  --border-positive: var(--green-200);
  --border-warning: var(--yellow-200);
  --border-danger: var(--red-200);
  --border-disabled: var(--gray-600);
  --border-focus: var(--blue-400);

  /* ---- GRADIENT brand ---- */
  --gradient-brand-dark: var(--brand-700);
  --gradient-brand-light: var(--brand-600);
}
