/*
 * SheetBlast design tokens and self-hosted fonts.
 *
 * Loaded on the front end and in the block editor. GeneratePress's global
 * colours and typography mirror these values (bin/apply-gp-settings.php):
 * change a value here, change it there too.
 *
 * Fonts: Archivo (variable, wght 100–900, wdth 62–125) and JetBrains Mono 400/700,
 * both SIL OFL 1.1 (assets/fonts/OFL-*.txt). Latin + Latin Extended subsets;
 * the Extended file only downloads when a page uses those characters (e.g. š, ž).
 */

@font-face {
	font-family: "Archivo";
	font-style: normal;
	font-weight: 100 900;
	font-stretch: 62% 125%;
	font-display: swap;
	src: url("../fonts/archivo-latin-wdth-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: "Archivo";
	font-style: normal;
	font-weight: 100 900;
	font-stretch: 62% 125%;
	font-display: swap;
	src: url("../fonts/archivo-latin-ext-wdth-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: "JetBrains Mono";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/jetbrains-mono-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: "JetBrains Mono";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/jetbrains-mono-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: "JetBrains Mono";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../fonts/jetbrains-mono-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: "JetBrains Mono";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../fonts/jetbrains-mono-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;
}

:root {
	/* Brand colours */
	--sb-ink: #121513;          /* text, cells, dark sections */
	--sb-blast: #FF5A1F;        /* arrow, primary buttons (always with Ink text); never small text on light */
	--sb-grid: #F2F3EF;         /* page background */
	--sb-grid-line: #D9DCD4;    /* rules, table lines, light borders */
	--sb-grid-texture: #E3E5DF; /* 40px gridline texture on hero sections */
	--sb-sent: #0F7B4F;         /* success, "Sent" / "Replied" */
	--sb-select: #D7F25C;       /* selected-cell highlight, stickers */
	--sb-muted: #4A5049;        /* secondary text, labels */
	--sb-white: #FFFFFF;

	/* Supporting shades (from the brand kit) */
	--sb-text-soft: #262A25;    /* long-form paragraphs */
	--sb-ink-raised: #1F231F;   /* cards on Ink */
	--sb-on-ink-muted: #B9BEB5; /* labels on Ink */
	--sb-sent-soft: #E3F1EA;    /* "Sent" chip background */
	--sb-sent-text: #0B5E3C;    /* "Sent" chip text */
	--sb-select-soft: #F7FBE2;  /* selected row */
	--sb-neutral-chip: #ECEDE8; /* "Queued" chip background */
	--sb-neutral-text: #3A3F39; /* "Queued" chip text */

	/* Type */
	--sb-font-body: "Archivo", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--sb-font-display: var(--sb-font-body);
	--sb-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	--sb-stretch-display: 112%;
	--sb-tracking-display: -0.035em;
	--sb-tracking-label: 0.12em;

	--sb-fs-label: 0.75rem;                                 /* 12px mono labels */
	--sb-fs-small: 0.875rem;                                /* 14px */
	--sb-fs-body: 1.0625rem;                                /* 17px */
	--sb-fs-lead: clamp(1.0625rem, 1rem + 0.35vw, 1.25rem); /* 17 → 20px */
	--sb-fs-h3: clamp(1.375rem, 1.2rem + 0.8vw, 1.75rem);   /* 22 → 28px */
	--sb-fs-h2: clamp(2rem, 1.4rem + 2.8vw, 3.25rem);       /* 32 → 52px */
	--sb-fs-h1: clamp(2.5rem, 1.6rem + 4.2vw, 4.5rem);      /* 40 → 72px */

	/* Shape */
	--sb-border-width: 1.5px;
	--sb-border: var(--sb-border-width) solid var(--sb-ink);
	--sb-radius-sm: 8px;
	--sb-radius: 12px;
	--sb-radius-lg: 16px;
	--sb-radius-pill: 999px;
	--sb-shadow-hard: 4px 4px 0 var(--sb-ink);
	--sb-shadow-hard-lg: 6px 6px 0 var(--sb-ink);
	--sb-grid-size: 40px;

	/* Space and layout */
	--sb-space-1: 4px;
	--sb-space-2: 8px;
	--sb-space-3: 12px;
	--sb-space-4: 16px;
	--sb-space-5: 24px;
	--sb-space-6: 32px;
	--sb-space-7: 48px;
	--sb-space-8: 64px;
	--sb-space-9: 96px;
	--sb-section: clamp(64px, 8vw, 128px);
	--sb-container: 1200px;
	--sb-gutter: clamp(16px, 4vw, 32px);

	/* Focus ring */
	--sb-focus: 3px solid var(--sb-ink);
	--sb-focus-on-ink: 3px solid var(--sb-select);
}
