/* Self-hosted Plus Jakarta Sans 400–800, latin + latin-ext. License: fonts/OFL.txt. */
/* latin-ext, 400 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/plus-jakarta-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;
}

/* latin, 400 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/plus-jakarta-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;
}

/* latin-ext, 500 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/plus-jakarta-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;
}

/* latin, 500 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/plus-jakarta-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;
}

/* latin-ext, 600 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/plus-jakarta-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;
}

/* latin, 600 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/plus-jakarta-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;
}

/* latin-ext, 700 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/plus-jakarta-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;
}

/* latin, 700 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/plus-jakarta-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;
}

/* latin-ext, 800 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url("./fonts/plus-jakarta-sans-latin-ext-800-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;
}

/* latin, 800 */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url("./fonts/plus-jakarta-sans-latin-800-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;
}

/* ActionRoom design tokens. All application colors, type sizes and spacing live here. */
:root {
    --color-primary-900: #12302C;
    --color-primary-800: #173A35;
    --color-primary-600: #176D5D;
    --color-mint-100: #DEF5E9;
    --color-mint-300: #C4F2DF;
    --color-accent: #FF765F;
    --color-accent-hover: #F05F47;
    --color-accent-soft: color-mix(in srgb, var(--color-accent) 12%, var(--color-surface));
    --color-text: #1E3438;
    --color-text-muted: #56676B;
    --color-bg: #F5F8F6;
    --color-surface: #FFFFFF;
    --color-border: #DCE5E1;
    --color-warning-bg: #FFF7EC;
    --color-on-accent: #2D2826;
    /* The darker hover fill needs slightly darker text to retain 4.5:1. */
    --color-on-accent-hover: #2B2624;
    --color-on-dark: #DEF5E9;
    --color-danger: #A73528;
    --color-danger-bg: #FFF0EE;
    --color-warning: #80561E;
    --color-lilac: #62508C;
    --color-lilac-bg: #EEE8FF;
    --color-dark-border: #42665D;
    --color-dark-hover: #244B43;
    --color-nav-active: rgb(255 255 255 / 8%);
    --color-overlay: rgb(18 48 44 / 45%);
    --color-danger-on-dark: #FFB4A8;
    --call-bg: #111517;
    --call-surface: #1B2124;
    --call-surface-2: #242B2F;
    --call-text: #F3F5F4;
    --call-text-muted: #A9B4B1;
    --call-avatar-1: #6653A3;
    --call-avatar-2: #2B7382;
    --call-avatar-3: #A44467;
    --call-avatar-4: #85602E;
    --call-avatar-5: #3C7B68;
    --call-avatar-6: #9C553C;
    --call-avatar-7: #496CA2;
    --call-avatar-8: #79637B;
    --call-label-bg: rgb(0 0 0 / 60%);
    --call-control-bg: rgb(255 255 255 / 10%);
    --call-control-hover: rgb(255 255 255 / 18%);
    --call-control-active: rgb(255 255 255 / 24%);
    --call-border: rgba(255,255,255,0.08);
    --call-toolbar-bg: rgb(27 33 36 / 92%);
    --call-speaking-glow: rgb(196 242 223 / 22%);
    --call-danger-hover: #8C291F;
    --color-skeleton: color-mix(in srgb, var(--color-border) 65%, var(--color-bg));

    --font-family: "Plus Jakarta Sans", sans-serif;
    /* Seven sizes, in rem so browser text-size preferences remain effective. */
    --text-xs: .75rem;   /* 12px */
    --text-sm: .875rem;  /* 14px */
    --text-base: 1rem;   /* 16px */
    --text-lg: 1.25rem;  /* 20px */
    --text-xl: 1.5rem;   /* 24px */
    --text-2xl: 2rem;   /* 32px */
    --text-3xl: 3rem;   /* 48px */
    /* Reserved exclusively for the home page h1 (40–64px). */
    --tracking-hero: -.02em;
    --tracking-heading: -.015em;
    --text-hero: clamp(2.5rem, 5vw + 1rem, 4rem);

    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 20px;
    --radius-round: 999px;
    --shadow-sm: 0 2px 8px rgb(18 48 44 / 7%);
    --shadow-md: 0 8px 24px rgb(18 48 44 / 12%);
    --shadow-input-focus: 0 0 0 3px rgb(23 109 93 / 14%);
    /* Coral alone is 2.62:1 on white; this underlay gives it 5.39:1 contrast. */
    --shadow-focus: 0 0 0 5px var(--color-primary-900);

    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-6: 24px;
    --space-8: 32px;
    --space-12: 48px;
    --space-16: 64px;
    --space-24: 96px;
    --control-height: 44px;
    --button-padding-x: 20px;
    --icon-size: 20px;
    --icon-card-size: 24px;
    --icon-stroke: 1.75;
    --focus-ring: 2px solid var(--color-accent);
    --focus-offset: 2px;
    --marketing-header-height: 88px;
    --color-header-bg: color-mix(in srgb, var(--color-surface) 92%, transparent);
}
