/* @file JDB theme stylesheet (test environment).
 * @description CSS-variable mirror of `theme.yaml`, served from the theme-assets CDN root and loaded
 * by every browser surface (SPA, Cognito Hosted UI, future admin apps) via a single <link>. It
 * overrides the SPA's baked-in `tokens.css` fallback defaults. Self-hosted @font-face declarations
 * reference the woff2 files in `fonts/` by RELATIVE path so they resolve against the CDN root.
 * Values reproduce today's "Jeff de Bruges" brand exactly. */

/* Manrope regular (400) — self-hosted sans-serif brand font. */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("fonts/Manrope-Regular.woff2") format("woff2");
}

/* Manrope bold (700) — declared as its own face so font-weight:700 never triggers faux bold. */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("fonts/Manrope-Bold.woff2") format("woff2");
}

/* Libre Caslon Text regular (400) — self-hosted serif accent font. */
@font-face {
    font-family: "Libre Caslon Text";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("fonts/LibreCaslonText-Regular.woff2") format("woff2");
}

/* Libre Caslon Text bold (700) — separate face so the serif heading bold renders the real cut. */
@font-face {
    font-family: "Libre Caslon Text";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("fonts/LibreCaslonText-Bold.woff2") format("woff2");
}

/* JDB brand token contract — mirrors theme.yaml; overrides the SPA tokens.css fallback defaults. */
:root {
    /* Sans-serif brand font stack. */
    --theme-font: "Manrope", "Inter", sans-serif;
    /* Serif accent font stack. */
    --theme-serif-font: "Libre Caslon Text", "Georgia", serif;
    /* Dominant brand colour — accents and primary actions. */
    --theme-primary: #2d190d;
    /* Hover state for the primary brown. */
    --theme-primary-hover: #5f3f38;
    /* Teal accent for links and secondary affordances. */
    --theme-secondary: #54bcbf;
    /* Soft teal for subtle fills. */
    --theme-secondary-soft: #c4f0f0;
    /* Standard body text colour. */
    --theme-text: #495057;
    /* Strong text colour for headings and emphasis. */
    --theme-text-strong: #2d190d;
    /* Muted text colour for placeholders and secondary copy. */
    --theme-text-muted: #8a8a8a;
    /* Warm cream page background. */
    --theme-background: #faf8f5;
    /* Card / panel surface colour. */
    --theme-surface: #ffffff;
    /* Muted surface colour for inset panels. */
    --theme-surface-muted: #f4f2ec;
    /* Warm taupe border colour. */
    --theme-border: #e7ddd2;
    /* Low-alpha brown drop-shadow colour. */
    --theme-shadow: rgba(45, 25, 13, 0.1);

    /* Admin overlay tint resolved from the teal accent. */
    --admin-overlay-tint: var(--theme-secondary);
    /* Admin table row-flash highlight. */
    --admin-row-flash-color: #c4f0f0;
}
