/*!
 * Rusconveyor Design Tokens — скомпилировано из design.md
 * НЕ РЕДАКТИРОВАТЬ ВРУЧНУЮ. Изменения вносятся в design.md
 * Компилятор: php tools/compile-design-tokens.php --write
 */

:root {
  /* Closed Color Palette */
  --primary:        #277044;
  --primary-hover:  #18492b;
  --accent-soft:    #eef4f0;
  --ink:            #000000;
  --ink-2:          #333333;
  --ink-3:          #6b6b65;
  --ink-4:          #a0a099;
  --surface:        #ffffff;
  --line:           #f5f5f5;
  --line-2:         #cccccc;
  --form-bg:        rgba(0,0,0,.04);
  --focus-ring:     rgba(39,112,68,.85);
  --overlay:        rgba(51,51,51,.33);
  --err:            #c41200;

  /* Layout Containers */
  --max:            1280px;
  --max-narrow:     980px;
  --max-mobile:     680px;
  --measure:        800px;
  --min:            360px;

  /* Typography Base */
  --ff-body:        'Roboto', system-ui, -apple-system, sans-serif;
  --fs-h1:          28px;
  --fs-h2:          22px;
  --fs-h3:          22px;
  --fs-h4:          16px;
  --fs-lede:        16px;
  --fs-body:        14px;
  --fs-micro:       12px;
  --fs-micro-wide:  12px;
  --fs-caption:     12px;
  --fs-num:         22px;

  /* 4px Spacing Grid */
  --s-1:  4px;
  --s-2:  8px;
  --s-3:  12px;
  --s-4:  16px;
  --s-5:  20px;
  --s-6:  24px;
  --s-7:  32px;
  --s-8:  40px;
  --s-9:  48px;
  --s-10: 56px;
  --s-11: 72px;

  /* Fluid Sizes (360px → 1280px) */
  --gutter:    clamp(20px, calc(15.303px + 1.3045vw), 32px);
  --space-sec: clamp(56px, calc(49.738px + 1.7393vw), 72px);
  --text-hero: clamp(26px, calc(23.651px + 0.6523vw), 32px);
  --text-wm:   clamp(44px, calc(36.173px + 2.1741vw), 64px);

  /* Element Sizes */
  --sz-marker:          6px;
  --sz-dot-step:        12px;
  --sz-check:           14px;
  --sz-checkbox:        20px;
  --sz-touch:           44px;
  --sz-rule-eyebrow:    22px;
  --sz-logo-max-h:      32px;
  --sz-field-icon-pad:  36px;
  --sz-scroll-track:    3px;
  --sz-legend-num:      24px;
  --sz-avatar:          72px;
  --sz-subject-col:     180px;
  --sz-table-min:       800px;
  --sz-nav-col:         240px;
  --sz-wm:              64px;
  --sz-wm-mobile:       44px;
  --sz-peek:            86%;
  --sz-header-h:        125px;
  --sz-header-h-mobile: 70px;
  --sz-field-h:         52px;
  --sz-textarea-h:      120px;
  --sz-textarea-min:    150px;
  --sz-num-field:       50px;
  --sz-checkbox-sm:     18px;
  --sz-control-h:       48px;
  --sz-play-w:          68px;
  --sz-play-h:          48px;
  --sz-icon-s:          14px;
  --sz-icon:            16px;
  --sz-icon-btn:        32px;
  --sz-icon-btn-mobile: 36px;
  --sz-cart-img:        28px;
  --sz-caret-w:         8px;
  --sz-caret-h:         5px;
  --sz-burger:          20px;
  --sz-logo-h-mobile:   24px;
  --sz-logo-cell:       180px;
  --sz-logo-cell-h:     90px;
  --sz-logo-cell-min-h: 80px;
  --sz-logo-img-w:      120px;
  --sz-logo-img-h:      48px;
  --sz-footer-logo:     200px;
  --sz-footer-logo-img: 190px;
  --sz-sidebar:         260px;
  --sz-sidebar-min:     240px;
  --sz-card-min:        240px;
  --sz-card-min-s:      160px;
  --sz-thumb-h:         180px;
  --sz-media-h:         260px;
  --sz-menu-min:        280px;
  --sz-hatch:           10px;
  --sz-hero-media:      1000px;
  --sz-page-404:        640px;

  /* Border Widths (Strict 3 roles) */
  --bw-hair: 0.5px;
  --bw-thin: 1px;
  --bw-mark: 2px;

  /* Motion Durations & Easing */
  --dur-fast: 0.12s;
  --dur-med:  0.15s;
  --dur-slow: 0.2s;
  --ease:     cubic-bezier(0.2, 0.6, 0.2, 1);
}
