/*
 * VetVerify.Ui — design tokens. Every shared component reads --ui-* only, so this file is the
 * whole theme: the gold of the Ministry logo on warm paper, with steel blue (the --ui-brass tokens,
 * named before the colour changed) reserved for anything that comes from the proposed framework
 * rather than from law in force.
 */
:root {
  --ui-accent:#8A6229;
  --ui-accent-hover:#6F4E1F;
  --ui-accent-tint:#F7F0E4;
  --ui-accent-fill:#8A6229;
  --ui-accent-fill-hover:#6F4E1F;
  --ui-accent-strong:#6F4E1F;
  --ui-accent-line:#E3D2B4;
  --ui-accent-line-soft:#EEE3CF;
  --ui-accent-ring:rgba(138, 98, 41, .22);
  --ui-on-fill: #FFFFFF;

  --ui-surface: #FFFFFF;
  --ui-surface-page:#F8F6F1;
  --ui-surface-sunken:#F2EEE6;
  --ui-surface-strong:#E8E2D6;
  --ui-inverse:#2A241C;
  --ui-inverse-hover:#3B3327;
  --ui-document-paper: #FFFFFF;

  --ui-ink:#1F1B16;
  --ui-ink-2:#3D372F;
  --ui-ink-3:#575046;
  --ui-muted:#6F675C;
  --ui-faint:#A39B8E;

  --ui-line:#E6E0D4;
  --ui-line-soft:#EFEAE0;
  --ui-line-strong:#CFC7B8;

  --ui-danger: #C2372B;
  --ui-danger-ring: rgba(194, 55, 43, .20);
  --ui-attention:#35557A;
  --ui-attention-fill:#35557A;
  --ui-bad: #A8291F;
  --ui-bad-fill: #A8291F;
  --ui-bad-tint: #F6E3E0;
  --ui-good: #1B7A43;
  --ui-good-fill: #1B7A43;
  --ui-good-tint: #E1F1E7;
  --ui-good-line: #B5DCC3;
  --ui-warn: #A2590A;
  --ui-warn-fill: #A2590A;
  --ui-warn-tint: #F8ECD3;
  --ui-info: #1F5673;
  --ui-info-tint: #E1ECF2;
  --ui-logo-filter: none;

  /* The marker for "proposed framework, not law in force": steel blue. The token keeps its old name. */
  --ui-brass:#35557A;
  --ui-brass-tint:#EAF0F6;
  --ui-brass-line:#C2D1E2;

  --ui-radius: 6px;
  --ui-radius-lg: 10px;

  /* Names a few carried-over components still read. */
  --ink: var(--ui-ink);
  --muted: var(--ui-muted);
  --muted-2: var(--ui-faint);
  --line: var(--ui-line);
  --paper: var(--ui-surface);
  --primary: var(--ui-accent);
  --surface-2: var(--ui-surface-sunken);
  --surface-3: var(--ui-surface-strong);
  --success: var(--ui-good);
  --success-bg: var(--ui-good-tint);
  --warn: var(--ui-warn);
  --warn-bg: var(--ui-warn-tint);
  --danger: var(--ui-bad);
  --danger-bg: var(--ui-bad-tint);
  --info: var(--ui-info);
  --info-bg: var(--ui-info-tint);
  --panel-pad: 12px 16px;
  --row-pad: 10px 16px;
  --font-mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;
  --font-ui: "IBM Plex Sans", "IBM Plex Sans Arabic", system-ui, "Segoe UI", sans-serif;
}

.validation-message { display: block; margin-block-start: 4px; font-size: 12px; font-weight: 500; color: var(--ui-danger); }
.validation-errors { margin: 0; padding-inline-start: 1.1em; font-size: 12px; font-weight: 500; color: var(--ui-danger); }

/* Self-hosted type: IBM Plex Sans for Latin, IBM Plex Sans Arabic for Arabic (one family across both
   languages), IBM Plex Mono for reference numbers. No dependency on fonts installed on the server or the client. */
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-400-normal.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-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"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-500-normal.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-arabic-arabic-500-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-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"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-600-normal.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-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"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-ext-700-normal.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/ibm-plex-sans-arabic-arabic-700-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-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 Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2"); }
