/* RuStore — прод-слой. Сгенерировано tools/code-index.py из rustore-app-android origin/develop (406a8d88db3, 2026-09-09).
   Не править вручную. Подключать ПОСЛЕ tokens/prototype.css: имена --rs-* те же, значения — из кода louis,
   поэтому там, где Figma и код расходятся, побеждает код (список — ds/code/prod-diff.json).
   Дополнительно к prototype.css: --rs-type-<стиль>-size|line|weight (MobileTypography), --rs-layout-padding-*,
   --rs-layout-max-width-*, --rs-min-interactive. */

/* ── семантические цвета из LightRuStorePalette / DarkRuStorePalette / MonochromePalette */
:root {
  --rs-background-primary: #F2F3F5;
  --rs-background-secondary: #FFFFFF;
  --rs-background-accent: #0077FF;
  --rs-surface-primary: #FFFFFF;
  --rs-surface-secondary: #F2F3F5;
  --rs-surface-tertiary: #E1E3E6;
  --rs-surface-constant: #FFFFFF;
  --rs-surface-constantalpha: #FFFFFF1F;
  --rs-surface-constantinverse: #000000;
  --rs-surface-constantinversealpha: #000000CC;
  --rs-surface-accent: #0077FF;
  --rs-surface-accentsubdued: #E5F1FF;
  --rs-surface-positive: #4BB34B;
  --rs-surface-positivesubdued: #E4F4E4;
  --rs-surface-warning: #FFA000;
  --rs-surface-warningsubdued: #FFF2D6;
  --rs-surface-negative: #FF3347;
  --rs-surface-negativesubdued: #FAEBEB;
  --rs-surface-input: #F2F3F5;
  --rs-surface-snack: #242A32F5;
  --rs-surface-bannerinfosubdued: #DAE7FF;
  --rs-surface-bannernegativesubdued: #F9DBDB;
  --rs-surface-bannerwarningsubdued: #FFE3AC;
  --rs-surface-bannerpositivesubdued: #D2E8EC;
  --rs-surface-accentmuted: #CBE4FF;
  --rs-text-primary: #171C22;
  --rs-text-secondary: #6A7481;
  --rs-text-tertiary: #99A2AD;
  --rs-text-quaternaryconstant: #FFFFFF;
  --rs-text-quaternaryconstantinverse: #000000;
  --rs-text-link: #0077FF;
  --rs-text-linkvisited: #005FCC;
  --rs-text-accent: #0077FF;
  --rs-text-positive: #4BB34B;
  --rs-text-warning: #FFA000;
  --rs-text-negative: #FF3347;
  --rs-icon-primary: #171C22;
  --rs-icon-secondary: #6A7481;
  --rs-icon-tertiary: #99A2AD;
  --rs-icon-quaternary: #E1E3E6;
  --rs-icon-constant: #FFFFFF;
  --rs-icon-constantinverse: #000000;
  --rs-icon-constantalpha: #FFFFFF66;
  --rs-icon-accent: #0077FF;
  --rs-icon-positive: #4BB34B;
  --rs-icon-warning: #FFA000;
  --rs-icon-negative: #FF3347;
  --rs-rainbowsurface-blue: #0077FF;
  --rs-rainbowsurface-bluesubdued: #E5F1FF;
  --rs-rainbowsurface-green: #4BB34B;
  --rs-rainbowsurface-greensubdued: #E4F4E4;
  --rs-rainbowsurface-orange: #FFA000;
  --rs-rainbowsurface-orangesubdued: #FFF2D6;
  --rs-rainbowsurface-orangefire: #F05C44;
  --rs-rainbowsurface-orangefiresubdued: #FDEFEC;
  --rs-rainbowsurface-red: #FF3347;
  --rs-rainbowsurface-redsubdued: #FAEBEB;
  --rs-rainbowsurface-purple: #735CE6;
  --rs-rainbowsurface-purplesubdued: #F1EFFC;
  --rs-rainbowsurface-violet: #792EC0;
  --rs-rainbowsurface-violetsubdued: #F2EAF9;
  --rs-rainbowsurface-raspberrypink: #E03FAB;
  --rs-rainbowsurface-raspberrypinksubdued: #FCECF7;
  --rs-rainbowsurface-mint: #25BAA2;
  --rs-rainbowcontent-blue: #0077FF;
  --rs-rainbowcontent-green: #4BB34B;
  --rs-rainbowcontent-orange: #FFA000;
  --rs-rainbowcontent-orangefire: #F05C44;
  --rs-rainbowcontent-red: #FF3347;
  --rs-rainbowcontent-purple: #735CE6;
  --rs-rainbowcontent-violet: #792EC0;
  --rs-rainbowcontent-raspberrypink: #E03FAB;
  --rs-rainbowcontent-mint: #25BAA2;
  --rs-stroke-primary: #E1E3E6;
  --rs-stroke-secondary: #EBEDF0;
  --rs-stroke-tertiary: #FFFFFF;
  --rs-stroke-quaternary: #99A2AD;
  --rs-stroke-accent: #0077FF;
  --rs-stroke-negative: #FF3347;
  --rs-stroke-accentmuted: #CBE4FF;
  --rs-stroke-monochrome: #FFFFFF00;
  --rs-divider-primary: #EBEDF0;
  --rs-divider-secondary: #E1E3E6;
  --rs-divider-tertiary: #AEB7C2;
  --rs-overlay-primary: #00000059;
  --rs-overlay-secondary: #00000014;
  --rs-overlay-accent: #0077FF1F;
  --rs-overlay-negative: #FF33471F;
  --rs-overlay-constant: #FFFFFF66;
  --rs-overlay-constantinverse: #00000066;
}

[data-theme="dark"] {
  --rs-background-primary: #0F1214;
  --rs-background-secondary: #171C22;
  --rs-background-accent: #0072E5;
  --rs-surface-primary: #171C22;
  --rs-surface-secondary: #242A32;
  --rs-surface-tertiary: #333A47;
  --rs-surface-constant: #FFFFFF;
  --rs-surface-constantalpha: #FFFFFF1F;
  --rs-surface-constantinverse: #000000;
  --rs-surface-constantinversealpha: #000000CC;
  --rs-surface-accent: #0072E5;
  --rs-surface-accentsubdued: #192E44;
  --rs-surface-positive: #37B837;
  --rs-surface-positivesubdued: #213E29;
  --rs-surface-warning: #E5A525;
  --rs-surface-warningsubdued: #453916;
  --rs-surface-negative: #E34949;
  --rs-surface-negativesubdued: #402023;
  --rs-surface-input: #242A32;
  --rs-surface-snack: #333A47F5;
  --rs-surface-bannerinfosubdued: #1E3A58;
  --rs-surface-bannernegativesubdued: #4C272A;
  --rs-surface-bannerwarningsubdued: #4D3F26;
  --rs-surface-bannerpositivesubdued: #214326;
  --rs-surface-accentmuted: #152D47;
  --rs-text-primary: #EBF1F6;
  --rs-text-secondary: #A3ADB7;
  --rs-text-tertiary: #838D99;
  --rs-text-quaternaryconstant: #FFFFFF;
  --rs-text-quaternaryconstantinverse: #000000;
  --rs-text-link: #2994FF;
  --rs-text-linkvisited: #4086D6;
  --rs-text-accent: #2994FF;
  --rs-text-positive: #37B837;
  --rs-text-warning: #E5A525;
  --rs-text-negative: #E34949;
  --rs-icon-primary: #EBF1F6;
  --rs-icon-secondary: #A3ADB7;
  --rs-icon-tertiary: #838D99;
  --rs-icon-quaternary: #333A47;
  --rs-icon-constant: #FFFFFF;
  --rs-icon-constantinverse: #000000;
  --rs-icon-constantalpha: #FFFFFF66;
  --rs-icon-accent: #2994FF;
  --rs-icon-positive: #37B837;
  --rs-icon-warning: #E5A525;
  --rs-icon-negative: #E34949;
  --rs-rainbowsurface-blue: #2994FF;
  --rs-rainbowsurface-bluesubdued: #192E44;
  --rs-rainbowsurface-green: #45A645;
  --rs-rainbowsurface-greensubdued: #213E29;
  --rs-rainbowsurface-orange: #D98800;
  --rs-rainbowsurface-orangesubdued: #453916;
  --rs-rainbowsurface-orangefire: #CC4E3A;
  --rs-rainbowsurface-orangefiresubdued: #502C29;
  --rs-rainbowsurface-red: #CC3342;
  --rs-rainbowsurface-redsubdued: #402023;
  --rs-rainbowsurface-purple: #604DBF;
  --rs-rainbowsurface-purplesubdued: #3A3658;
  --rs-rainbowsurface-violet: #6828A6;
  --rs-rainbowsurface-violetsubdued: #3E2958;
  --rs-rainbowsurface-raspberrypink: #BF3692;
  --rs-rainbowsurface-raspberrypinksubdued: #502D48;
  --rs-rainbowsurface-mint: #21A690;
  --rs-rainbowcontent-blue: #2994FF;
  --rs-rainbowcontent-green: #37B837;
  --rs-rainbowcontent-orange: #E5A525;
  --rs-rainbowcontent-orangefire: #F05C44;
  --rs-rainbowcontent-red: #E34949;
  --rs-rainbowcontent-purple: #9985FF;
  --rs-rainbowcontent-violet: #A94FFF;
  --rs-rainbowcontent-raspberrypink: #F060C0;
  --rs-rainbowcontent-mint: #27C2A9;
  --rs-stroke-primary: #333A47;
  --rs-stroke-secondary: #404855;
  --rs-stroke-tertiary: #171C22;
  --rs-stroke-quaternary: #838D99;
  --rs-stroke-accent: #0087FE;
  --rs-stroke-negative: #E34949;
  --rs-stroke-accentmuted: #152D47;
  --rs-stroke-monochrome: #FFFFFF00;
  --rs-divider-primary: #404855;
  --rs-divider-secondary: #333A47;
  --rs-divider-tertiary: #242A32;
  --rs-overlay-primary: #000000A6;
  --rs-overlay-secondary: #FFFFFF14;
  --rs-overlay-accent: #0072E53D;
  --rs-overlay-negative: #E349493D;
  --rs-overlay-constant: #FFFFFF66;
  --rs-overlay-constantinverse: #00000066;
}

[data-theme="monochrome"] {
  --rs-background-primary: #FFFFFF;
  --rs-background-secondary: #FFFFFF;
  --rs-background-accent: #FFFFFF;
  --rs-surface-primary: #FFFFFF;
  --rs-surface-secondary: #FFFFFF;
  --rs-surface-tertiary: #FFFFFF;
  --rs-surface-constant: #FFFFFF;
  --rs-surface-constantalpha: #FFFFFF1F;
  --rs-surface-constantinverse: #FFFFFF;
  --rs-surface-constantinversealpha: #FFFFFF1F;
  --rs-surface-accent: #FFFFFF;
  --rs-surface-accentsubdued: #FFFFFF;
  --rs-surface-positive: #FFFFFF;
  --rs-surface-positivesubdued: #FFFFFF;
  --rs-surface-warning: #FFFFFF;
  --rs-surface-warningsubdued: #FFFFFF;
  --rs-surface-negative: #FFFFFF;
  --rs-surface-negativesubdued: #FFFFFF;
  --rs-surface-input: #FFFFFF;
  --rs-surface-snack: #FFFFFF;
  --rs-surface-bannerinfosubdued: #FFFFFF;
  --rs-surface-bannernegativesubdued: #FFFFFF;
  --rs-surface-bannerwarningsubdued: #FFFFFF;
  --rs-surface-bannerpositivesubdued: #FFFFFF;
  --rs-surface-accentmuted: #FFFFFF;
  --rs-text-primary: #000000;
  --rs-text-secondary: #737373;
  --rs-text-tertiary: #A1A1A1;
  --rs-text-quaternaryconstant: #000000;
  --rs-text-quaternaryconstantinverse: #000000;
  --rs-text-link: #000000;
  --rs-text-linkvisited: #000000;
  --rs-text-accent: #000000;
  --rs-text-positive: #000000;
  --rs-text-warning: #000000;
  --rs-text-negative: #000000;
  --rs-icon-primary: #000000;
  --rs-icon-secondary: #737373;
  --rs-icon-tertiary: #A1A1A1;
  --rs-icon-quaternary: #E3E3E3;
  --rs-icon-constant: #000000;
  --rs-icon-constantinverse: #000000;
  --rs-icon-constantalpha: #000000;
  --rs-icon-accent: #000000;
  --rs-icon-positive: #000000;
  --rs-icon-warning: #000000;
  --rs-icon-negative: #000000;
  --rs-rainbowsurface-blue: #FFFFFF;
  --rs-rainbowsurface-bluesubdued: #FFFFFF;
  --rs-rainbowsurface-green: #FFFFFF;
  --rs-rainbowsurface-greensubdued: #FFFFFF;
  --rs-rainbowsurface-orange: #FFFFFF;
  --rs-rainbowsurface-orangesubdued: #FFFFFF;
  --rs-rainbowsurface-orangefire: #FFFFFF;
  --rs-rainbowsurface-orangefiresubdued: #FFFFFF;
  --rs-rainbowsurface-red: #FFFFFF;
  --rs-rainbowsurface-redsubdued: #FFFFFF;
  --rs-rainbowsurface-purple: #FFFFFF;
  --rs-rainbowsurface-purplesubdued: #FFFFFF;
  --rs-rainbowsurface-violet: #FFFFFF;
  --rs-rainbowsurface-violetsubdued: #FFFFFF;
  --rs-rainbowsurface-raspberrypink: #FFFFFF;
  --rs-rainbowsurface-raspberrypinksubdued: #FFFFFF;
  --rs-rainbowsurface-mint: #FFFFFF;
  --rs-rainbowcontent-blue: #000000;
  --rs-rainbowcontent-green: #000000;
  --rs-rainbowcontent-orange: #000000;
  --rs-rainbowcontent-orangefire: #000000;
  --rs-rainbowcontent-red: #000000;
  --rs-rainbowcontent-purple: #000000;
  --rs-rainbowcontent-violet: #000000;
  --rs-rainbowcontent-raspberrypink: #000000;
  --rs-rainbowcontent-mint: #000000;
  --rs-stroke-primary: #000000;
  --rs-stroke-secondary: #000000;
  --rs-stroke-tertiary: #000000;
  --rs-stroke-quaternary: #000000;
  --rs-stroke-accent: #000000;
  --rs-stroke-negative: #000000;
  --rs-stroke-accentmuted: #000000;
  --rs-stroke-monochrome: #000000;
  --rs-divider-primary: #000000;
  --rs-divider-secondary: #000000;
  --rs-divider-tertiary: #000000;
  --rs-overlay-primary: #00000059;
  --rs-overlay-secondary: #00000014;
  --rs-overlay-accent: #00000059;
  --rs-overlay-negative: #00000059;
  --rs-overlay-constant: #FFFFFF66;
  --rs-overlay-constantinverse: #00000066;
}

/* ── акцент Pink: только то, что LightPinkPalette/DarkPinkPalette переопределяют через .copy() */
/* ── радиусы BorderRadius.kt (имена совпадают с Figma border-radius; none = sharp).
   pill = 999px, как в prototype.css и TOKENS.md: в Compose Pill — 50 % меньшей стороны (капсула),
   а CSS-50 % на неквадратном элементе даёт эллипс. В radii.json остаётся кодовое 50 %. */
:root {
  --rs-radius-sharp: 0px;
  --rs-radius-xs: 4px;
  --rs-radius-s: 8px;
  --rs-radius-m: 12px;
  --rs-radius-l: 16px;
  --rs-radius-xl: 20px;
  --rs-radius-xxl: 24px;
  --rs-radius-xxxl: 32px;
  --rs-radius-xl4: 48px;
  --rs-radius-pill: 999px;
  --rs-radius-none: 0px;
}

/* ── типографика MobileTypography.kt: size/line в px (1sp = 1px в прототипе при x1), weight числом */
:root {
  --rs-type-special10-size: 64px;
  --rs-type-special10-line: 68px;
  --rs-type-special10-weight: 500;
  --rs-type-special20-size: 36px;
  --rs-type-special20-line: 36px;
  --rs-type-special20-weight: 500;
  --rs-type-headline10-size: 22px;
  --rs-type-headline10-line: 28px;
  --rs-type-headline10-weight: 500;
  --rs-type-headline20-size: 20px;
  --rs-type-headline20-line: 24px;
  --rs-type-headline20-weight: 500;
  --rs-type-subheadline10-size: 16px;
  --rs-type-subheadline10-line: 20px;
  --rs-type-subheadline10-weight: 500;
  --rs-type-subheadline20-size: 14px;
  --rs-type-subheadline20-line: 18px;
  --rs-type-subheadline20-weight: 500;
  --rs-type-body10-size: 16px;
  --rs-type-body10-line: 20px;
  --rs-type-body10-weight: 400;
  --rs-type-body20-size: 15px;
  --rs-type-body20-line: 20px;
  --rs-type-body20-weight: 400;
  --rs-type-body30-size: 14px;
  --rs-type-body30-line: 18px;
  --rs-type-body30-weight: 400;
  --rs-type-caption10-size: 12px;
  --rs-type-caption10-line: 14px;
  --rs-type-caption10-weight: 500;
  --rs-type-caption20-size: 12px;
  --rs-type-caption20-line: 14px;
  --rs-type-caption20-weight: 400;
  --rs-type-caption23-size: 10px;
  --rs-type-caption23-line: 12px;
  --rs-type-caption23-weight: 600;
  --rs-type-caption25-size: 9px;
  --rs-type-caption25-line: 12px;
  --rs-type-caption25-weight: 600;
  --rs-type-caption30-size: 9px;
  --rs-type-caption30-line: 12px;
  --rs-type-caption30-weight: 400;
  --rs-type-caption40-size: 6px;
  --rs-type-caption40-line: 8px;
  --rs-type-caption40-weight: 500;
}

/* ── layout по size-классам (compact = :root) */
:root {
  --rs-layout-padding-content: 20px;
  --rs-layout-padding-screenm: 0px;
  --rs-layout-padding-screenl: 8px;
  --rs-min-interactive: 48px;
}

[data-size-class="medium"] {
  --rs-layout-padding-content: 24px;
  --rs-layout-padding-screenm: 0px;
  --rs-layout-padding-screenl: 8px;
  --rs-layout-max-width-m-component: 316px;
  --rs-layout-max-width-m-layout: 480px;
  --rs-layout-max-width-l-layout: 800px;
}

[data-size-class="expanded"] {
  --rs-layout-padding-content: 32px;
  --rs-layout-padding-screenm: 32px;
  --rs-layout-padding-screenl: 8px;
  --rs-layout-max-width-m-component: 316px;
  --rs-layout-max-width-m-layout: 480px;
  --rs-layout-max-width-l-layout: 800px;
}
