/* Bridge: maps the prototype's original phyx.css token names onto the real PHYX design-system
   tokens (site/assets/ds/tokens.css), so the clinician portal and consult room inherit the
   design's exact colours, radii, shadows and the real Satoshi/DM Sans faces without a rewrite.
   Load AFTER tokens.css and AFTER phyx.css. */
:root{
  /* brand + neutrals */
  --linen:#F5EDDC;                   /* DS linen-300 */
  --forest:#122E30;                  /* DS forest-700, Deep Forest */
  --forest-700:#0E2224;              /* old name meant a darker shade: DS forest-800 */
  --forest-500:#1B4145;              /* DS forest-600 */
  --aqua:#1FC7CF;                    /* DS aqua-500 */
  --aqua-600:#18A5AB;                /* DS aqua-600 */
  --aqua-100:#DFF8F9;                /* DS aqua-100 */
  --stone:var(--stone-600);
  --black:var(--phyx-carbon-black);
  --white:var(--phyx-white);
  --g-25:#FCFAF4;                    /* DS linen-100 */
  --g-50:#F9F4E9;                    /* DS linen-200 */
  --g-100:#F4F3F3;                   /* DS stone-100 */
  --g-150:#EDE3CB;
  --g-200:#E8E6E6;                   /* DS stone-200 */
  --g-300:#D4D1D2;                   /* DS stone-300 */
  --border:#E8E6E6;                  /* DS border-hairline */
  --border-strong:#D4D1D2;           /* DS border-default */
  --ink:#1C1A1B;                     /* DS stone-800 */
  --ink-soft:#3A3739;                /* DS stone-700 */
  --ink-muted:#6B6466;               /* DS stone-600 */
  /* status */
  --good:#1E8F6B;                    /* DS status-success */
  --good-bg:#E4F4EE;
  --watch:#B87A1C;                   /* DS status-warning */
  --watch-bg:#FBF0DD;
  --attention:#B3372F;               /* DS status-danger */
  --attention-bg:#FAE9E7;
  --c-aqua:#1FC7CF;
  /* shape: the old scale was rounder than the design system */
  --radius-sm:8px;                   /* DS radius-sm */
  --radius-md:12px;                  /* DS radius-md */
  --radius-lg:16px;                  /* DS radius-lg, the card corner */
  /* type: the real brand faces */
  --font-head:"Satoshi","Satoshi Variable",-apple-system,"Helvetica Neue",Arial,sans-serif;
  --font-body:"DM Sans","Satoshi",-apple-system,"Helvetica Neue",Arial,sans-serif;
}

/* Design-system type rules the old shell predates: headings are Satoshi Medium with
   the brand's negative tracking, not bold. */
body{letter-spacing:var(--tracking-body);}
h1,h2,h3,h4,h5,.card-title,.stat .v,.datebox .d,.timebox{
  font-weight:var(--weight-medium);
  letter-spacing:var(--tracking-heading);
}
.eyebrow,.nav-section-label,th{letter-spacing:var(--tracking-eyebrow);}

/* Buttons and pills follow the design system: fully pill, uppercase Satoshi, no bold. */
.btn{
  border-radius:var(--radius-pill);
  font-family:var(--font-display);
  font-weight:var(--weight-medium);
  letter-spacing:var(--tracking-eyebrow);
  text-transform:uppercase;
  font-size:12.5px;
  transition:var(--transition-interactive);
}
.btn-sm{font-size:11.5px;}
.btn-primary{background:var(--action-primary-bg);color:var(--action-primary-fg);}
.btn-primary:hover{background:var(--action-primary-bg-hover);}
.btn-aqua{background:var(--action-accent-bg);color:var(--action-accent-fg);}
.btn-aqua:hover{background:var(--action-accent-bg-hover);box-shadow:none;}
.btn-ghost{border-color:var(--border-strong);color:var(--text-heading);}
.btn:active{transform:none;}
.pill{border-radius:var(--radius-xs);font-family:var(--font-body);font-weight:var(--weight-medium);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;font-size:var(--size-micro);}
.tag{border-radius:var(--radius-xs);}

/* Cards: hairline border, no shadow. Separation comes from hairlines and surface shifts. */
.card{box-shadow:none;border-color:var(--border);border-radius:16px;}
.card-dark{background:var(--forest);border-color:var(--forest);}

/* Focus ring is the brand's aqua glow, everywhere. */
:focus-visible{outline:none;box-shadow:var(--shadow-focus);}
input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus);}
