/* v0.7.2 : Nuit douce, décisions V11–V17 du 28/10/2026. */
:root {
  color-scheme: dark;
  --bg: #171512;
  --surface: #211e1a;
  --surface-sunken: #1c1a16;
  --line: #3a362f;
  --line-strong: #7a7369;
  --text: #f4efe5;
  --muted: #b2aa9d;
  --lime: #dfff53;
  --ink: #14160c;
  --present: #ce741a;
  --danger: #ffa7a7;
  --me-row: #2f311a;
  --scrim: rgb(23 21 18 / .84);
  --absent: #5c574e;
  --key: #6b655d;
  --key-action: transparent;
  --key-absent: #1f1d19;
  --key-absent-text: #948c80;
  --font-system: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --fs-hero-num: clamp(3.5rem, 16vw, 5rem);
  --fs-timer: clamp(2rem, 8.9vw, 2.4rem);
  --fs-h1: clamp(1.5rem, 6.4vw, 2.2rem);
  --fs-h2: 1.375rem;
  --fs-body: 1rem;
  --fs-label: 1rem;
  --fs-small: .875rem;
  --fs-eyebrow: .8125rem;
  --fs-tile: clamp(1.1rem, 4.5vw, 1.4rem);
  --fs-key: clamp(.8rem, 3.4vw, 1rem);
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --radius-tile: 6px;
  --radius-control: 12px;
  --radius-key: 10px;
  --radius-surface: 16px;
  --shadow-dialog: 0 16px 48px rgb(0 0 0 / .5);
  --motion-fast: 90ms;
  --motion-base: 180ms;
  --motion-slow: 400ms;
  --motion-ease: cubic-bezier(.2, .8, .2, 1);
}

.rushmo-brand-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.rushmo-brand { display: inline-flex; flex: none; color: var(--text); }
.rushmo-brand svg { display: block; flex: none; overflow: visible; }
.rushmo-brand__header { width: 113.4px; height: 44px; }
.rushmo-brand--large { flex-direction: column; align-items: center; --brand-size: clamp(.72, var(--brand-scale, 1), 1.25); }
.rushmo-brand__tiles { width: calc(150px * var(--brand-size)); height: calc(57px * var(--brand-size)); margin-bottom: 16px; }
.rushmo-brand__signature { width: calc(117px * var(--brand-size)); height: calc(22px * var(--brand-size)); margin-bottom: 8px; }
.rushmo-brand__name { width: calc(286.5px * var(--brand-size)); height: calc(32px * var(--brand-size)); }
.rushmo-brand__accent { fill: var(--lime); }
.rushmo-brand__outlines { fill: none; stroke: var(--line-strong); stroke-width: 1; }
.rushmo-brand__frame { fill: none; stroke: var(--ink); stroke-width: 2; }
@media (forced-colors: active) {
  .rushmo-brand { color: CanvasText; }
  .rushmo-brand__accent { fill: Highlight; }
  .rushmo-brand__outlines { stroke: CanvasText; }
  .rushmo-brand__frame { stroke: HighlightText; }
}
