/* ==========================================================================
   Авто+ — design tokens
   Source: design system 4d27c3e6 (fonts / colors / typography / radius)
   ========================================================================== */

/* Webfonts — Plus Jakarta Sans = UI + display, Montserrat ExtraBold = logotype,
   JetBrains Mono = part numbers, VIN, SKU. */
@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&family=Montserrat:wght@800&family=JetBrains+Mono:wght@400;500&display=swap");

:root {
  /* ---- Brand ---- */
  --red-500: #ED1B1B;      /* logo red — primary brand */
  --red-600: #CE1414;      /* hover */
  --red-700: #A80F0F;      /* press */
  --red-100: #FDE4E4;      /* tint surface */
  --red-050: #FFF4F4;

  /* ---- Ink (neutral ramp) ---- */
  --ink-900: #131313;      /* near-black: primary buttons, dark CTA band */
  --ink-800: #212121;
  --ink-700: #3D3D3D;
  --ink-500: #6B6B6B;      /* secondary text */
  --ink-400: #9A9A9A;      /* tertiary / placeholder */
  --ink-300: #C9C9C9;      /* strong border */
  --ink-200: #E4E4E4;      /* default border */
  --ink-100: #F0F0F0;      /* media tile / product photo plate */
  --ink-050: #F7F7F7;      /* app background */
  --white: #FFFFFF;

  /* ---- Semantic status ---- */
  --success-500: #1B9E5A;
  --success-100: #E4F5EC;
  --warning-500: #E8A400;
  --warning-100: #FDF2D9;
  --danger-500: #ED1B1B;
  --danger-100: #FDE4E4;
  --info-500: #1E6BE8;
  --info-100: #E4EDFD;
  --star-500: #F5A623;

  /* ---- Semantic aliases ---- */
  --text-heading: var(--ink-900);
  --text-body: var(--ink-800);
  --text-muted: var(--ink-500);
  --text-subtle: var(--ink-400);
  --text-inverse: var(--white);
  --text-brand: var(--red-500);
  --text-price: var(--ink-900);

  --surface-page: var(--white);
  --surface-app: var(--ink-050);
  --surface-card: var(--white);
  --surface-media: var(--ink-100);
  --surface-raised: var(--white);
  --surface-inverse: var(--ink-900);
  --surface-brand: var(--red-500);
  --surface-brand-tint: var(--red-050);
  --surface-hover: var(--ink-050);

  --text-warning: #9A6B00;
  --surface-warning: var(--warning-100);
  --border-warning: #F0D9A0;

  --border-default: var(--ink-200);
  --border-strong: var(--ink-300);
  --border-inverse: rgba(255, 255, 255, .18);
  --border-focus: var(--ink-900);

  --action-primary: var(--ink-900);
  --action-primary-hover: var(--ink-800);
  --action-primary-press: #000000;
  --action-brand: var(--red-500);
  --action-brand-hover: var(--red-600);
  --action-brand-press: var(--red-700);

  --overlay-scrim: rgba(19, 19, 19, .48);
  --overlay-protect: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .45) 100%);

  /* ---- Typography ---- */
  --font-display: "Plus Jakarta Sans", "Segoe UI", sans-serif;
  --font-body: "Plus Jakarta Sans", "Segoe UI", sans-serif;
  --font-logo: "Montserrat", "Plus Jakarta Sans", sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;

  --type-hero-size: 104px;  --type-hero-lh: .92;   --type-hero-ls: -.04em;  --type-hero-weight: var(--fw-extrabold);
  --type-display-size: 44px;--type-display-lh: 1.06;--type-display-ls: -.03em;--type-display-weight: var(--fw-extrabold);

  --type-h1-size: 32px; --type-h1-lh: 1.14; --type-h1-ls: -.022em; --type-h1-weight: var(--fw-bold);
  --type-h2-size: 24px; --type-h2-lh: 1.2;  --type-h2-ls: -.018em; --type-h2-weight: var(--fw-bold);
  --type-h3-size: 18px; --type-h3-lh: 1.28; --type-h3-ls: -.012em; --type-h3-weight: var(--fw-bold);

  --type-body-lg-size: 16px; --type-body-lg-lh: 1.55;
  --type-body-size: 14px;    --type-body-lh: 1.55;
  --type-ui-size: 14px;      --type-ui-lh: 1.2; --type-ui-weight: var(--fw-semibold);
  --type-caption-size: 12px; --type-caption-lh: 1.35;
  --type-micro-size: 11px;   --type-micro-lh: 1.3; --type-micro-ls: .04em;

  --type-price-size: 18px; --type-price-weight: var(--fw-extrabold); --type-price-ls: -.015em;
  --type-code-size: 12px;  --type-code-ls: .01em;

  /* ---- Radius ---- */
  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-pill: 999px;
  --radius-card: 12px;
  --radius-media: 10px;
  --radius-control: 999px;   /* buttons + inputs are pills in this brand */
  --radius-panel: 20px;      /* floating white panels over imagery */

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

  /* ---- Elevation ---- */
  --shadow-sm: 0 1px 2px rgba(19, 19, 19, .06);
  --shadow-md: 0 4px 16px rgba(19, 19, 19, .08);
  --shadow-panel: 0 12px 40px rgba(19, 19, 19, .10);

  /* ---- Motion ---- */
  --ease-standard: cubic-bezier(.2, .8, .2, 1);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;

  /* ---- Layout ---- */
  --page-max: 1520px;
  --page-pad: 32px;
}
