/*
Theme Name: 8BitClub Museum
Theme URI: https://8bitclub.com
Author: 8BitClub
Author URI: https://8bitclub.com
Description: Original, production-ready WordPress theme for the 8BitClub interactive museum of retro computers, game consoles, phones, broadcast equipment and vintage electronics. Modern museum presentation with a strong retro-computing identity: structured Exhibit collection catalogue with search, filtering, sorting and grid/list views, dedicated exhibit detail pages with structured technical specifications, a full blog, and an accessible, responsive, brand-driven design built on the official 8BitClub black / red / green / blue palette. Translation-ready, no page-builder dependency.
Version: 1.1.0
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: 8bitclub-museum
Tags: museum, blog, portfolio, custom-logo, custom-menu, featured-images, block-styles, editor-style, translation-ready, threaded-comments, full-width-template, custom-colors, sticky-post, footer-widgets

8BitClub Museum — History in a Byte. Distributed under the terms of the GNU GPL v2 or later.
The theme's runtime CSS lives in assets/css/main.css (enqueued separately); this file provides
the required theme header and the design-token layer of the design system.
*/

/* =========================================================
   DESIGN TOKENS
   A restrained system: neutral canvas, one dominant accent
   (brand blue), brand red/green reserved for micro-accents.
   ========================================================= */
:root {
	/* ---- Brand (official values — do not alter) ---- */
	--ebcm-black: #000000;
	--ebcm-red: #ef2136;
	--ebcm-green: #16b54a;
	--ebcm-blue: #2b39d4;

	/* ---- Accessible brand variants for text/UI on light ---- */
	--ebcm-blue-ink: #2530bd;   /* links, primary actions */
	--ebcm-blue-deep: #1e2799;  /* hover / pressed */
	--ebcm-red-ink: #c9152a;
	--ebcm-green-ink: #0d7a33;
	--ebcm-blue-050: #eff1fe;
	--ebcm-red-050: #fdedef;
	--ebcm-green-050: #e8f7ee;

	/* ---- Neutral ramp (cool-tinted, museum-quiet) ---- */
	/* Three emphasis tiers — all verified ≥4.5:1 on the canvas (WCAG AA),
	   so small meta text and field labels stay legible. */
	--ebcm-ink: #0c0d10;        /* display / headings   ~19:1 */
	--ebcm-ink-2: #3f444c;      /* body copy            ~8.9:1 */
	--ebcm-muted: #5f6570;      /* meta / captions      ~5.6:1 */
	--ebcm-faint: #676d7a;      /* least emphasis       ~4.7:1 */

	--ebcm-canvas: #fafafb;     /* page background */
	--ebcm-surface: #ffffff;    /* cards, panels */
	--ebcm-band: #f5f6f8;       /* alternating section band */
	--ebcm-band-2: #eef0f3;     /* wells, media placeholders */

	/* Hairlines — alpha-based so they sit correctly on any surface */
	--ebcm-line: rgba(12, 13, 16, 0.09);
	--ebcm-line-2: rgba(12, 13, 16, 0.16);
	--ebcm-line-3: rgba(12, 13, 16, 0.26);

	/* ---- Dark surfaces (header / hero / CTA / footer) ---- */
	--ebcm-dark: #0b0c0e;
	--ebcm-dark-2: #14161a;
	--ebcm-on-dark: #f4f5f7;
	--ebcm-on-dark-2: rgba(244, 245, 247, 0.72);
	--ebcm-on-dark-3: rgba(244, 245, 247, 0.52);
	--ebcm-line-on-dark: rgba(255, 255, 255, 0.12);
	--ebcm-line-on-dark-2: rgba(255, 255, 255, 0.22);

	/* ---- Typography ---- */
	--ebcm-font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
	--ebcm-font-mono: ui-monospace, "SFMono-Regular", "DejaVu Sans Mono", "Liberation Mono", Menlo, Consolas, monospace;

	/* Fluid type scale (minor-third-ish, clamped) */
	--ebcm-fs-xs: 0.78rem;
	--ebcm-fs-sm: 0.875rem;
	--ebcm-fs-base: 1.0625rem;
	--ebcm-fs-md: clamp(1.08rem, 0.3vw + 1rem, 1.2rem);
	--ebcm-fs-lg: clamp(1.25rem, 0.5vw + 1.1rem, 1.4rem);
	--ebcm-fs-xl: clamp(1.5rem, 1vw + 1.2rem, 1.85rem);
	--ebcm-fs-2xl: clamp(1.85rem, 2vw + 1.3rem, 2.5rem);
	--ebcm-fs-3xl: clamp(2.25rem, 3.2vw + 1.3rem, 3.4rem);
	--ebcm-fs-4xl: clamp(2.6rem, 5vw + 1rem, 4.25rem);

	--ebcm-lh-tight: 1.08;
	--ebcm-lh-snug: 1.22;
	--ebcm-lh-body: 1.68;
	--ebcm-track-tight: -0.022em;
	--ebcm-track-wide: 0.14em;

	/* ---- Spacing scale (8pt based) ---- */
	--ebcm-s1: 0.25rem;
	--ebcm-s2: 0.5rem;
	--ebcm-s3: 0.75rem;
	--ebcm-s4: 1rem;
	--ebcm-s5: 1.5rem;
	--ebcm-s6: 2rem;
	--ebcm-s7: 2.5rem;
	--ebcm-s8: 3rem;
	--ebcm-s9: 4rem;
	--ebcm-s10: 5rem;
	--ebcm-section-y: clamp(3.5rem, 7vw, 6.5rem);

	/* ---- Layout ---- */
	--ebcm-wrap: 1180px;
	--ebcm-wrap-wide: 1360px;
	--ebcm-measure: 68ch;
	--ebcm-gutter: clamp(1.15rem, 4vw, 2.5rem);
	--ebcm-header-h: 68px;

	/* ---- Radii ---- */
	--ebcm-r-sm: 8px;
	--ebcm-r: 12px;
	--ebcm-r-lg: 18px;
	--ebcm-r-pill: 999px;

	/* ---- Elevation (low-alpha, layered) ---- */
	--ebcm-shadow-xs: 0 1px 2px rgba(12, 13, 16, 0.04);
	--ebcm-shadow-sm: 0 1px 2px rgba(12, 13, 16, 0.04), 0 2px 8px rgba(12, 13, 16, 0.04);
	--ebcm-shadow: 0 2px 4px rgba(12, 13, 16, 0.04), 0 10px 24px rgba(12, 13, 16, 0.07);
	--ebcm-shadow-lg: 0 4px 8px rgba(12, 13, 16, 0.05), 0 24px 56px rgba(12, 13, 16, 0.12);

	/* ---- Motion ---- */
	--ebcm-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
	--ebcm-t-fast: 140ms;
	--ebcm-t: 220ms;
	--ebcm-t-slow: 420ms;
}
