/* ---------------------------------------------------------------------------
   KWAVE — designové tokeny
   Jediné místo, kde se definují barvy, mezery, rádiusy a typografie.
   Komponenty níž v kaskádě smí sáhnout jen na proměnné odsud.

   Hodnoty vycházejí z mockupů designéra (docs/mockupy/). Poměry a mezery jsou
   změřené z předlohy, ne odhadnuté: obsah 979 px široký, mezery v mřížkách 15 px
   (1,5 % šířky) → na naší šířce 1200 px to dělá 20 px.
   --------------------------------------------------------------------------- */

/* Písma se hostují u nás. Google Fonts jako běhová závislost nechceme (další
   spojení, sdílení IP návštěvníka), ale systémový stack na tuhle předlohu nestačí:
   celý vzhled stojí na těžkém grotesku. Obojí je SIL OFL. */

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 400 800; /* variabilní řez — jeden soubor místo pěti */
	font-display: swap;
	src: url("../fonts/inter-latin-ext.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: "Inter";
	font-style: normal;
	font-weight: 400 800;
	font-display: swap;
	src: url("../fonts/inter-latin.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+2074, U+20AC,
	               U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Archivo Black nese jen wordmark KWAVE — v něm není jediná diakritika,
   takže stačí základní latinka (19 kB). */
@font-face {
	font-family: "Archivo Black";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/archivo-black-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF;
}

:root {
	/* Barvy podle mockupu. Fialová je hlavní, růžová nese rubriku článku
	   a newsletter — není to druhá hlavní barva. */
	--kw-bg:            #ffffff;
	--kw-bg-soft:       #f3f0ff; /* levandulový pás pod hero */
	--kw-bg-muted:      #fafafb; /* skoro bílá, pro střídání sekcí */
	--kw-bg-nav:        #fbfbfd; /* pás hlavní navigace */
	--kw-text:          #111114;
	--kw-text-soft:     #55555f; /* perex, popisky */
	--kw-text-faint:    #6b7280; /* datum, kredit fotky */
	--kw-accent:        #7c3aed;
	--kw-accent-dark:   #5b21b6;
	--kw-accent-soft:   #ede9fe; /* levandulové tlačítko a badge */
	--kw-cta-from:      #8b5cf6;
	--kw-cta-to:        #a855f7;
	--kw-pink:          #d6246e;
	--kw-pink-soft:     #ffe4ef; /* badge rubriky v článku */
	--kw-pink-card:     #f9d5e5; /* karta newsletteru */
	--kw-line:          #e9e7ee;
	--kw-line-strong:   #d2ceda;

	/* Mezery */
	--kw-space-2:   4px;
	--kw-space-3:   8px;
	--kw-space-4:  12px;
	--kw-space-16: 16px;
	--kw-space-20: 20px; /* mezera v mřížkách podle mockupu */
	--kw-space-24: 24px;
	--kw-space-32: 32px;
	--kw-space-40: 40px;
	--kw-space-48: 48px;
	--kw-space-64: 64px;

	/* Rádiusy — mockup má výrazně kulatější karty než první verze webu */
	--kw-radius:      16px;
	--kw-radius-sm:   10px;
	--kw-radius-lg:   16px;
	--kw-radius-pill: 999px;

	/* Rozměry layoutu */
	--kw-max:          1200px;
	--kw-gutter:       16px;  /* na mobilu; na desktopu se zvětšuje v layout.css */
	--kw-article-max:  760px; /* mockup má text širší než původní zadání (680–740) */
	--kw-sidebar:      320px;

	/* Typografie */
	--kw-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
	           "Helvetica Neue", "Noto Sans", Arial, sans-serif;
	--kw-font-display: "Archivo Black", "Inter", Impact, sans-serif;

	--kw-text-base:  1.0625rem; /* 17 px — mockup má drobnější text než první verze */
	--kw-text-lg:    1.125rem;
	--kw-text-sm:    0.9375rem;
	--kw-text-xs:    0.8125rem;
	--kw-leading:    1.65;
	--kw-leading-tight: 1.2;

	/* Titulky přes clamp() — dlouhé české titulky se musí vejít bez ručního zalamování */
	--kw-h1:      clamp(1.875rem, 1.2rem + 2.8vw, 2.625rem);
	--kw-h1-hero: clamp(1.5rem, 0.95rem + 2.4vw, 2.125rem);
	--kw-h2:      clamp(1.375rem, 1.1rem + 1.1vw, 1.75rem);
	--kw-h3:      clamp(1.125rem, 1rem + 0.6vw, 1.375rem);
	--kw-section: clamp(1.375rem, 1.05rem + 1.2vw, 1.75rem); /* nadpis sekce na homepage */
	--kw-card-title: clamp(1rem, 0.95rem + 0.3vw, 1.0625rem);

	/* Ostatní */
	--kw-focus: 3px solid var(--kw-accent);
	--kw-shadow-soft: 0 1px 2px rgb(21 21 26 / 6%);
	--kw-shadow-card: 0 4px 16px rgb(17 17 20 / 8%);
	--kw-transition: 120ms ease-out;
}

/* Uživatel s omezeným pohybem nechce animace ani plynulé posuny. */
@media (prefers-reduced-motion: reduce) {
	:root { --kw-transition: 0ms; }
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
