:root {
  /* Polosa UI Kit — locked source palette */
  --white: #ffffff;
  --light-blue: #9ed5ff;
  --blue: #3a7caf;
  --dark-blue: #0a2a43;
  --orange: #ff742f;
  --light-gray: #f2f2f2;

  /* Semantic */
  --canvas: #f7f7f5;
  --surface: #ffffff;
  --surface-alt: #f2f2f2;
  --ink: #0a2a43;
  --muted: #686f74;
  --border: #aeb7bd;
  --border-strong: #0a2a43;
  --action: #3a7caf;
  --action-soft: #dff1ff;
  --action-hover: #0a2a43;
  --accent: #ff742f;
  --accent-hover: #e85c16;
  --accent-soft: #fff0e8;
  --success: #3a7caf;
  --success-soft: #dff1ff;
  --danger: #ff742f;
  --focus: #9ed5ff;
  --binary: #a7aaad;

  /* Type */
  --font-display: "IBM Plex Mono", "Roboto Mono", "SFMono-Regular", Consolas, monospace;
  --font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-meta: "IBM Plex Mono", "Roboto Mono", "SFMono-Regular", Consolas, monospace;
  --display: clamp(2.65rem, 8vw, 4rem);
  --h1: clamp(2.15rem, 6vw, 3.2rem);
  --h2: clamp(1.65rem, 4.8vw, 2.35rem);
  --h3: clamp(1.1rem, 3vw, 1.35rem);
  --body: clamp(.98rem, 1.8vw, 1.08rem);
  --small: .82rem;
  --meta: .75rem;

  /* 50–100px macro rhythm; compact spacing only inside atomic controls */
  --gap-xxs: 8px;
  --gap-xs: 12px;
  --gap-sm: 16px;
  --gap-md: 24px;
  --gap-lg: 32px;
  --gap-inner: clamp(24px, 3vw, 34px);
  --gap-block: clamp(50px, 7vw, 72px);
  --gap-section: clamp(64px, 9vw, 96px);
  --gap-page: clamp(72px, 10vw, 100px);
  --page-x: clamp(20px, 5vw, 64px);

  /* Controls / Fitts */
  --target-min: 50px;
  --target-lg: 58px;
  --target-xl: 64px;
  --button-pad-x: 24px;

  /* Radius: near-square retro-future */
  --r-xs: 2px;
  --r-sm: 4px;
  --r-md: 6px;
  --r-lg: 10px;
  --r-pill: 999px;

  /* Borders */
  --line: 1px solid var(--border);
  --line-strong: 1px solid var(--dark-blue);
  --line-blue: 1px solid var(--blue);
  --line-orange: 1px solid var(--orange);

  /* Shadows deliberately restrained */
  --shadow-0: none;
  --shadow-1: 3px 3px 0 rgba(10,42,67,.10);
  --shadow-2: 6px 6px 0 rgba(10,42,67,.14);
  --shadow-overlay: 0 24px 70px rgba(10,42,67,.20);
  --focus-ring: 0 0 0 3px rgba(158,213,255,.82);

  /* Motion */
  --fast: 120ms;
  --normal: 220ms;
  --slow: 460ms;
  --ease: cubic-bezier(.2,.8,.2,1);
  --ease-pixel: steps(5,end);

  /* Layout */
  --content: 1320px;
  --reading: 780px;
  --header-h: 88px;
  --player-h: 92px;
}
