/* Replica: геометрия референса пользователя, нейтральная чёрная тема. */
:root {
  color-scheme: dark;
  --bg: #121211;
  --surface: #1a1a18;
  --surface-raised: #242421;
  --surface-input: #151513;
  --border: #343430;
  --border-input: #77776f;
  --text: #eeede9;
  --text-muted: #b5b4ab;
  --text-dim: #a19f95;
  --accent: #eeede9;
  --on-accent: #121211;
  --danger: #ffad99;
  --danger-bg: #2c201c;
  --success: #b4ddba;
  --success-bg: #1b2920;
  --warning: #ecd08b;
  --warning-bg: #2a251b;
  --on-image: #f0f3ed;
  --image-bg: #080b09;
  --image-muted: #b0bcb3;
  --hover-primary: #d2d0c7;
  --font-sans: Arial, 'Segoe UI', system-ui, sans-serif;
  --font-mono: Consolas, 'Cascadia Mono', 'Courier New', monospace;
  --text-xs: 12px;
  --text-sm: 14px;
  --text-base: 17px;
  --text-lg: 20px;
  --text-xl: 28px;
  --text-heading: 44px;
  --text-display: 88px;
  --line-xs: 16px;
  --line-sm: 22px;
  --line-base: 28px;
  --line-lg: 30px;
  --line-xl: 34px;
  --line-heading: 48px;
  --line-display: 84px;
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-bold: 600;
  --space-0: 0;
  --space-1: 2px;
  --space-2: 4px;
  --space-3: 6px;
  --space-4: 8px;
  --space-5: 12px;
  --space-6: 16px;
  --space-7: 20px;
  --space-8: 24px;
  --space-9: 32px;
  --space-10: 40px;
  --space-11: 48px;
  --space-12: 64px;
  --space-13: 72px;
  --space-14: 88px;
  --space-15: 96px;
  --space-16: 120px;
  --space-17: 160px;
  --radius-sm: 0;
  --radius-md: 0;
  --radius-lg: 0;
  --radius-pill: 999px;
  --shadow-card: none;
  --shadow-pop: none;
  --motion-fast: 120ms;
  --motion-base: 180ms;
  --ease: cubic-bezier(.2,.8,.2,1);
  --sidebar-width: 300px;
  --header-height: clamp(56px,3.43vw,80px);
  --page-max: 2560px;
  --page-gutter: clamp(20px,2.7vw,72px);
  --article-width: 780px;
  --rail-width: 240px;
  --reading-max: 1140px;
  --utility-height: 40px;
  --hero-display: clamp(76px,11.1vw,260px);
  --hero-leading: .9;
  --hero-tracking: -.055em;
  --hero-intro-size: clamp(20px,1.2vw,28px);
  --hero-intro-line: 1.45;
  --hero-copy-width: 26.5vw;
  --hero-height: max(calc(100vh - var(--header-height) - var(--space-4)),52vw);
  --hero-art-top: 14.6vw;
  --hero-art-left: 34vw;
  --hero-art-width: 100vw;
  --page-title-size: clamp(64px,7vw,160px);
  --section-title-size: clamp(40px,4vw,88px);
  --header-brand-size: clamp(24px,1.6vw,36px);
  --hero-button-height: clamp(52px,3.25vw,76px);
  --hero-button-size: clamp(16px,1vw,24px);
  --hero-image-ratio: 3200 / 2300;
  --hero-shadow-fade: 6%;
  --mobile-hero-display: clamp(40px,10.5vw,76px);
  --mobile-page-title-size: clamp(40px,10.5vw,64px);
  --mobile-art-height: 310px;
  --mobile-art-width: 150%;
  --mobile-art-offset: -35%;
  --demo-screen-size: 320px;
  --demo-card-min: 300px;
  --screen-record-size: 213px;
  --support-qr-size: 64px;
  --support-qr-mobile-size: 56px;
  --donation-qr-size: 280px;
  --account-width: 560px;
  --support-qr-bg: #ffffff;
  --border-width: 1px;
  --focus-width: 2px;
  --focus-offset: 4px;
  --button-sm: 36px;
  --button-md: 44px;
  --button-lg: 52px;
  --icon-size: 18px;
  --icon-small: 14px;
  --firmware-intro-width: 850px;
  --firmware-card-title: clamp(36px,3vw,60px);
  --firmware-loading-height: 280px;
  --firmware-preview-height: 210px;
  --firmware-passport-preview-height: 400px;
  --portal-display: clamp(64px,9.1vw,216px);
  --portal-hero-height: max(850px,65vw);
  --portal-device-top: 18vw;
  --portal-device-right: -30%;
  --portal-device-width: 115%;
  --hero-video-dim: .62;
  --section-hero-height: max(680px,52vw);
  --section-hero-mobile-height: 560px;
  --guide-key-width: 220px;
}

/* Дополнительные измеренные размеры компонентов; без изменения геометрии. */
:root {
  --size-minus-100: -100px;
  --size-1: 1px;
  --size-12: 12px;
  --size-18: 18px;
  --size-20: 20px;
  --size-24: 24px;
  --size-48: 48px;
  --size-56: 56px;
  --size-64: 64px;
  --size-72: 72px;
  --size-96: 96px;
  --size-100: 100px;
  --size-120: 120px;
  --size-144: 144px;
  --size-145: 145px;
  --size-160: 160px;
  --size-170: 170px;
  --size-180: 180px;
  --size-190: 190px;
  --size-195: 195px;
  --size-200: 200px;
  --size-210: 210px;
  --size-220: 220px;
  --size-240: 240px;
  --size-250: 250px;
  --size-280: 280px;
  --size-310: 310px;
  --size-320: 320px;
  --size-330: 330px;
  --size-350: 350px;
  --size-360: 360px;
  --size-400: 400px;
  --size-420: 420px;
  --size-440: 440px;
  --size-450: 450px;
  --size-470: 470px;
  --size-510: 510px;
  --size-560: 560px;
  --size-650: 650px;
  --size-690: 690px;
  --size-700: 700px;
  --size-760: 760px;
  --size-850: 850px;
}
