/* belot-ui a436409ebdf22158a2928805b9a5f0d63ddc8d5b tokens.css — selectors scoped onto the v2 chrome + v2 screens so v1 stays pixel-identical (6 selectors) + the [data-bel-tokens] opt-in hook (MANIFEST v1.9.22 §2.1) */
/* source sha256 cf6a0be5031c74e97ecb11daf45e2278c3e7654e81d966c15f6a61c05314a2a4 */
/* package 0.6.1 */
/* GENERATED from tokens/tokens.json — do not edit by hand. npm run tokens */
html[data-ui="v2"] :is(#topbar, #tabbar, bel-top-bar, bel-bottom-nav, bel-left-rail, bel-sheet, bel-modal, bel-toast, bel-home-screen, bel-settings-screen, bel-connection-banner, bel-lobby-screen, bel-vip-screen, bel-table-room, bel-tournaments-screen, bel-rankings-screen, bel-profile-screen, bel-friends-screen, bel-notifications-screen, bel-missions-screen, bel-bonus-screen, bel-store-screen, [data-bel-tokens]) {
  --bg-base: #101A2E;
  --bg-pattern-opacity: 0.06;
  --surface-1: #182540;
  --surface-2: #22314F;
  --surface-3: #2C3D60;
  --overlay-scrim: rgba(6, 10, 20, 0.64);
  --border-subtle: rgba(255,255,255,0.08);
  --border-strong: rgba(255,255,255,0.16);
  --border-focus: #FFC85C;
  --text-primary: #F5F7FB;
  --text-secondary: #B7C2D9;
  --text-muted: #8E9BB6;
  --text-disabled: #8B99B4;
  --icon-disabled: #8B99B4;
  --toggle-knob-fill: #FFFFFF;
  --toggle-track-off: #2C3D60;
  --toggle-border-off: #7C89AE;
  --toggle-track-on: #2E9C50;
  --toggle-track-disabled: #182540; /* = --surface-1; no fill reaches 3:1 against the row, the dashed border carries the boundary (§11.2) */
  --toggle-border-disabled: #8B99B4; /* 4.51 vs surface-2, 5.31 vs the disabled track; 2 px DASHED */
  --toggle-knob-disabled: #8B99B4; /* 5.31 on the disabled track */
  --control-disabled-fill: #182540; /* = --surface-1; the button stops reading as raised. The fill exists so the ink never contends with whatever is behind the control (§12.1). Named for controls, not buttons: Button and Input/Select both use it */
  --control-disabled-ink: #8B99B4; /* 5.31 on the disabled fill */
  --control-disabled-border: #8B99B4; /* 3.76 against --surface-3, the lightest surface a button sits on; 5.31 against its own fill */
  --text-on-accent: #141821;
  --text-on-play: #FFFFFF;
  --text-on-danger: #FFFFFF;
  --accent-gold: #F2A93B;
  --accent-gold-text: #F2A93B;
  --accent-gold-strong: #FFC85C;
  --accent-gold-pressed: #D9932F;
  --action-play: #237F3F;
  --action-play-pressed: #1B6F37;
  --info: #2A6FC6;
  --info-text: #7DB8F7;
  --success: #237F3F;
  --text-on-success: #FFFFFF; /* v1.9.22 §2.1 — ink for a solid --success fill, 5.03:1. Its own token so --text-on-play is never borrowed off --action-play (v1.9.15 gate). */
  --success-text: #4EC86E; /* Text-on-surface success. Dark: 7.12:1 on surface-1, 6.06:1 on surface-2, 5.05:1 on surface-3. PROPOSED pending Design Director. */
  --warning: #F2A93B;
  --danger: #D0343A;
  --danger-pressed: #C62F34;
  --danger-text: #FF858A; /* Text-on-surface danger. Dark: 6.51:1 on surface-1, 5.54:1 on surface-2, 4.62:1 on surface-3. PROPOSED pending Design Director. */
  --currency-chips: #F2A93B;
  --currency-gems: #5AC8FA;
  --currency-club: #FF8FB8;
  --currency-tokens: #9B7DF0; /* DESIGN_MANIFEST v1.1 §13.2 (violet). Glyph carries currency identity, colour only reinforces it — never separate two currencies by colour alone. */
  --card-face: #FFFFFF;
  --card-ink: #141821;
  --card-red: #E5484D;
  --card-back: #23407A;
  --felt-center: #1E5A3B;
  --felt-edge: #153F2A;
  --tier-finals: #5B7BB4;
  --tier-advanced: #3B8BEB;
  --tier-professionals: #B9812E;
  --tier-masters: #C0526A;
  --tier-legends: #2FA3A0;
  --tier-supreme: #7B61D9;
  --art-scrim: rgba(6, 10, 20, 0.72); /* FIXED §11.3 — identical in all three themes. Scrim under text on artwork; the artwork does not theme, so nothing painted on it may. */
  --art-ink: #FFFFFF; /* FIXED §11.3 — band/label ink over artwork. 19.13:1 over --art-scrim on the brightest measured band pixel (L=0.012). Never --text-on-play: that token is #000000 in high contrast. */
  --badge-soon-bg: #F2A93B; /* FIXED §11.3 — 8.48:1 boundary against the brightest band pixel. */
  --badge-soon-ink: #141821; /* FIXED §11.3 — 8.89:1 on --badge-soon-bg in every theme (white measured 2.00 dark / 3.39 light / 1.43 HC). */
  --font-ui: "Golos Text", Inter, "Segoe UI", Roboto, system-ui, sans-serif;
  --font-numeric-features: "tnum" 1, "lnum" 1;
  --fs-display: 28px;
  --lh-display: 34px;
  --fs-h1: 22px;
  --lh-h1: 28px;
  --fs-h2: 18px;
  --lh-h2: 24px;
  --fs-h3: 16px;
  --lh-h3: 22px;
  --fs-body: 15px;
  --lh-body: 22px;
  --fs-small: 13px;
  --lh-small: 18px;
  --fs-caption: 12px;
  --lh-caption: 16px;
  --fs-label: 12px;
  --ls-label: 0.02em;
  --fs-button: 15px;
  --lh-button: 20px;
  --fs-num-l: 20px;
  --fs-num-xl: 28px;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --page-margin: 16px;
  --grid-gutter: 12px;
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-card: 6px;
  --radius-full: 999px;
  --shadow-1: 0 1px 2px rgba(0,0,0,.24);
  --shadow-2: 0 4px 12px rgba(0,0,0,.28);
  --shadow-3: 0 12px 32px rgba(0,0,0,.36);
  --dur-feedback: 120ms;
  --dur-ui: 200ms;
  --dur-card: 320ms;
  --dur-count: 600ms;
  --ease-standard: cubic-bezier(.2,.8,.2,1);
  --ease-card: cubic-bezier(.4,0,.2,1);
  --bp-xs: 320px;
  --bp-sm: 360px;
  --bp-md: 390px;
  --bp-md-plus: 430px;
  --bp-tab: 768px;
  --bp-lg: 1024px;
  --bp-xl: 1280px;
  --bp-xxl: 1440px;
  --bp-max: 1920px;
  --touch-min: 44px;
  --touch-floor: 44px; /* WCAG 2.2 AA hit-area floor. Product --touch-min is 52/58/64 under data-fs. TopBar chrome below 430 uses this (MANIFEST v1.9.3 §12.2). */
  --icon-size: 24px;
  --focus-ring-width: 2px;
  --focus-ring-offset: 2px;
  --topbar-height: 56px;
  --ticker-height: 32px;
  --bottom-nav-height: 56px;
  --left-rail-width: 72px;
  --list-row-height: 72px;
  --settings-row-height: 56px;
  --room-card-width: 264px;
  --room-card-peek: 16px;
  --content-max-tab: 720px;
  --content-max-lg: 960px;
  --content-max-xl: 1120px;
  --content-max-xxl: 1200px;
  --button-sm-height: 36px;
  --button-lg-height: 52px;
  --field-height: 48px;
  --toggle-track-width: 44px;
  --toggle-track-height: 24px;
  --toggle-knob: 20px;
  --banner-height: 40px;
  --badge-count-size: 18px;
}

@media (min-width: 768px) {
  html[data-ui="v2"] :is(#topbar, #tabbar, bel-top-bar, bel-bottom-nav, bel-left-rail, bel-sheet, bel-modal, bel-toast, bel-home-screen, bel-settings-screen, bel-connection-banner, bel-lobby-screen, bel-vip-screen, bel-table-room, bel-tournaments-screen, bel-rankings-screen, bel-profile-screen, bel-friends-screen, bel-notifications-screen, bel-missions-screen, bel-bonus-screen, bel-store-screen, [data-bel-tokens]) {
    --fs-display: 34px;
    --lh-display: 40px;
    --fs-h1: 26px;
    --lh-h1: 32px;
    --fs-body: 16px;
    --lh-body: 24px;
    --page-margin: 24px;
    --grid-gutter: 16px;
  }
}

@media (min-width: 1024px) {
  html[data-ui="v2"] :is(#topbar, #tabbar, bel-top-bar, bel-bottom-nav, bel-left-rail, bel-sheet, bel-modal, bel-toast, bel-home-screen, bel-settings-screen, bel-connection-banner, bel-lobby-screen, bel-vip-screen, bel-table-room, bel-tournaments-screen, bel-rankings-screen, bel-profile-screen, bel-friends-screen, bel-notifications-screen, bel-missions-screen, bel-bonus-screen, bel-store-screen, [data-bel-tokens]) {
    --page-margin: 32px;
  }
}

html[data-ui="v2"][data-motion="off"] :is(#topbar, #tabbar, bel-top-bar, bel-bottom-nav, bel-left-rail, bel-sheet, bel-modal, bel-toast, bel-home-screen, bel-settings-screen, bel-connection-banner, bel-lobby-screen, bel-vip-screen, bel-table-room, bel-tournaments-screen, bel-rankings-screen, bel-profile-screen, bel-friends-screen, bel-notifications-screen, bel-missions-screen, bel-bonus-screen, bel-store-screen, [data-bel-tokens]) {
    --dur-feedback: 0ms;
    --dur-ui: 120ms;
    --dur-card: 0ms;
    --dur-count: 0ms;
}

@media (prefers-reduced-motion: reduce) {
  html[data-ui="v2"]:not([data-motion="on"]) {
    --dur-feedback: 0ms;
    --dur-ui: 120ms;
    --dur-card: 0ms;
    --dur-count: 0ms;
  }
}

/* Light: PROPOSED-FROM-PRODUCT until Design Director ships values. */
html[data-ui="v2"][data-theme="light"] :is(#topbar, #tabbar, bel-top-bar, bel-bottom-nav, bel-left-rail, bel-sheet, bel-modal, bel-toast, bel-home-screen, bel-settings-screen, bel-connection-banner, bel-lobby-screen, bel-vip-screen, bel-table-room, bel-tournaments-screen, bel-rankings-screen, bel-profile-screen, bel-friends-screen, bel-notifications-screen, bel-missions-screen, bel-bonus-screen, bel-store-screen, [data-bel-tokens]) {
  --bg-base: #EEF3F0;
  --surface-1: #FFFFFF;
  --surface-2: #F2F7F4;
  --surface-3: #E4EDE8;
  --overlay-scrim: rgba(14, 26, 21, 0.48);
  --border-subtle: #CDDDD4;
  --border-strong: #B5C9BE;
  --text-primary: #0E1A15;
  --text-secondary: #4B5F56;
  --text-muted: #556A60;
  --text-disabled: #5F6E67;
  --icon-disabled: #5F6E67;
  --toggle-knob-fill: #FFFFFF;
  --toggle-track-off: #E4EDE8;
  --toggle-border-off: #6E7E76;
  --toggle-track-on: #08794B;
  --toggle-track-disabled: #FFFFFF; /* = --surface-1 */
  --toggle-border-disabled: #5F6E67; /* 4.95 vs surface-2, 5.37 vs the disabled track; 2 px DASHED */
  --toggle-knob-disabled: #5F6E67; /* 5.37 on the disabled track */
  --control-disabled-fill: #FFFFFF; /* = --surface-1 */
  --control-disabled-ink: #5F6E67; /* 5.37 on the disabled fill */
  --control-disabled-border: #5F6E67; /* 4.49 against --surface-3; 5.37 against its own fill */
  --accent-gold: #B6820B;
  --accent-gold-text: #7F5A07;
  --accent-gold-strong: #D4A017;
  --accent-gold-pressed: #9A6E09;
  --action-play: #08794B;
  --action-play-pressed: #066640;
  --info: #0A7FB8;
  --info-text: #065E88;
  --success: #0F7A40;
  --text-on-success: #FFFFFF; /* v1.9.22 §2.1 — 5.41:1 on light --success. Explicit, never inherited. */
  --success-text: #0A6B32;
  --warning: #8A5705;
  --danger: #CF2B2B;
  --danger-pressed: #B02424;
  --danger-text: #B02424;
  --currency-chips: #8F6408;
  --currency-gems: #0A6E9E;
  --currency-club: #B02E63;
  --currency-tokens: #6A46D6;
  --felt-center: #2F9A70;
  --felt-edge: #135B3F;
  --text-on-play: #FFFFFF; /* Explicit; previously inherited from :root. Light matches dark; high contrast deliberately differs (#000000). */
  --art-scrim: rgba(6, 10, 20, 0.72); /* FIXED §11.3 — identical in all three themes. Scrim under text on artwork; the artwork does not theme, so nothing painted on it may. */
  --art-ink: #FFFFFF; /* FIXED §11.3 — band/label ink over artwork. 19.13:1 over --art-scrim on the brightest measured band pixel (L=0.012). Never --text-on-play: that token is #000000 in high contrast. */
  --badge-soon-bg: #F2A93B; /* FIXED §11.3 — 8.48:1 boundary against the brightest band pixel. */
  --badge-soon-ink: #141821; /* FIXED §11.3 — 8.89:1 on --badge-soon-bg in every theme (white measured 2.00 dark / 3.39 light / 1.43 HC). */
}

/* High contrast: PROPOSED-FROM-PRODUCT until Design Director ships values. */
html[data-ui="v2"][data-contrast="high"] :is(#topbar, #tabbar, bel-top-bar, bel-bottom-nav, bel-left-rail, bel-sheet, bel-modal, bel-toast, bel-home-screen, bel-settings-screen, bel-connection-banner, bel-lobby-screen, bel-vip-screen, bel-table-room, bel-tournaments-screen, bel-rankings-screen, bel-profile-screen, bel-friends-screen, bel-notifications-screen, bel-missions-screen, bel-bonus-screen, bel-store-screen, [data-bel-tokens]) {
  --bg-base: #000000;
  --surface-1: #000000;
  --surface-2: #10100F;
  --surface-3: #1C1C1A;
  --border-subtle: #FFFFFF;
  --border-strong: #FFFFFF;
  --text-primary: #FFFFFF;
  --text-secondary: #E6F2EC;
  --text-muted: #E6F2EC;
  --text-disabled: #B8C4BE;
  --icon-disabled: #B8C4BE;
  --toggle-knob-fill: #000000;
  --toggle-track-off: #1C1C1A;
  --toggle-border-off: #FFFFFF;
  --toggle-track-on: #2BFF9D;
  --toggle-track-disabled: #000000; /* = --surface-1 */
  --toggle-border-disabled: #B8C4BE; /* 10.59 vs surface-2, 11.68 vs the disabled track; 2 px DASHED */
  --toggle-knob-disabled: #B8C4BE; /* 11.68 on the disabled track */
  --control-disabled-fill: #000000; /* = --surface-1 */
  --control-disabled-ink: #B8C4BE; /* 11.68 on the disabled fill */
  --control-disabled-border: #B8C4BE; /* 9.49 against --surface-3; 11.68 against its own fill */
  --accent-gold: #FFD400;
  --accent-gold-text: #FFD400;
  --accent-gold-strong: #FFD400;
  --action-play: #2BFF9D;
  --action-play-pressed: #00E68C;
  --success: #2BFF9D;
  --text-on-success: #000000; /* v1.9.22 §2.1 — 15.89:1 on high-contrast --success (#2BFF9D); white would be 1.32:1. */
  --warning: #FFD400;
  --text-on-play: #000000;
  --text-on-danger: #000000;
  --text-on-accent: #000000;
  --success-text: #2BFF9D;
  --danger: #FF5A5A;
  --danger-pressed: #FF8080;
  --danger-text: #FF8A8E;
  --currency-chips: #FFD400;
  --currency-gems: #5AD8FF;
  --currency-tokens: #A9A0FF;
  --currency-club: #FF8FD0;
  --art-scrim: rgba(6, 10, 20, 0.72); /* FIXED §11.3 — identical in all three themes. Scrim under text on artwork; the artwork does not theme, so nothing painted on it may. */
  --art-ink: #FFFFFF; /* FIXED §11.3 — band/label ink over artwork. 19.13:1 over --art-scrim on the brightest measured band pixel (L=0.012). Never --text-on-play: that token is #000000 in high contrast. */
  --badge-soon-bg: #F2A93B; /* FIXED §11.3 — 8.48:1 boundary against the brightest band pixel. */
  --badge-soon-ink: #141821; /* FIXED §11.3 — 8.89:1 on --badge-soon-bg in every theme (white measured 2.00 dark / 3.39 light / 1.43 HC). */
}
