/* ============================================================
   MediBook — shared design tokens
   Loaded by BOTH the patient booking flow and the staff portal,
   so the two never drift apart. Nothing here selects an element;
   it only declares values.
   ============================================================ */

:root {
  /* Brand — teal reads clinical without the coldness of pure blue.
     --brand carries white text (4.9:1). --brand-ink is the text colour
     for light surfaces (7.1:1 on white, 6.6:1 on --brand-soft). */
  --brand:        #0f766e;
  --brand-dark:   #0b5f57;
  --brand-ink:    #0a544d;
  --brand-soft:   #e6f4f2;
  --brand-line:   #b9ded9;

  --ink:          #0f172a;
  --ink-2:        #334155;
  --ink-3:        #5b6b7f;   /* 4.6:1 on white — the lightest text allowed */

  --surface:      #ffffff;
  --surface-2:    #f8fafc;
  --canvas:       #eef2f6;
  --line:         #dbe2ea;
  --line-strong:  #c3cedb;

  --ok:           #15803d;
  --ok-soft:      #e8f6ec;
  --warn-ink:     #92590b;
  --warn-soft:    #fdf3e0;
  --danger:       #b3261e;
  --danger-soft:  #fdeceb;

  /* Appointment status. Reserved — never reused as decoration or as a
     "series" colour. Each one always ships with a text label beside it,
     because the dot alone would put the whole meaning in hue. The -dot
     value is the mark; the -ink value is what text may use (the raw
     status hues are too light to carry text on a white surface). */
  --st-confirmed-dot:  #0f766e;  --st-confirmed-ink:  #0a544d;
  --st-arrived-dot:    #0ca30c;  --st-arrived-ink:    #17691a;
  --st-completed-dot:  #94a3b8;  --st-completed-ink:  #4f5d6e;
  --st-cancelled-dot:  #d03b3b;  --st-cancelled-ink:  #a52a2a;
  --st-noshow-dot:     #ec835a;  --st-noshow-ink:     #8a4a25;

  --radius-sm: .5rem;
  --radius:    .875rem;
  --radius-lg: 1.25rem;

  --shadow-1: 0 1px 2px rgb(15 23 42 / .06), 0 1px 3px rgb(15 23 42 / .08);
  --shadow-2: 0 4px 12px rgb(15 23 42 / .07), 0 12px 28px rgb(15 23 42 / .08);

  --step-0: clamp(.9375rem, .9rem + .18vw, 1rem);
  --step-1: clamp(1.0625rem, 1rem + .3vw, 1.1875rem);
  --step-2: clamp(1.25rem, 1.1rem + .6vw, 1.5rem);
  --step-3: clamp(1.5rem, 1.25rem + 1.1vw, 2.125rem);

  --shell: 68rem;

  --font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
