:root {
  color-scheme: dark;
  --bg: #101820; --surface: #19252f; --surface-raised: #22313c; --surface-warm: #292820;
  --ink: #f5f6f3; --muted: #aab7bf; --line: #34434c;
  --accent: #b5f36c; --accent-fill: #b5f36c; --on-accent: #14200b;
  --gold: #e8c785; --silver: #c6d5e0; --bronze: #e3b199; --danger: #ffc0b4;
  --s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px; --s5: 20px; --s6: 24px;
  --s8: 32px; --s10: 40px; --s12: 48px; --s16: 64px; --s20: 80px;
  --f-xs: .75rem; --f-sm: .875rem; --f-base: 1rem; --f-md: 1.25rem;
  --f-lg: 1.75rem; --f-xl: 2.5rem; --f-display: 3.5rem; --f-hero: 5rem;
  --r-sm: 8px; --r-md: 16px; --r-lg: 24px; --r-pill: 999px;
  --fast: 180ms; --ease: cubic-bezier(.22,1,.36,1);
  font-family: Arial, Helvetica, sans-serif;
  background: var(--bg); color: var(--ink);
}
* { box-sizing: border-box; }
body { margin: 0; font-size: var(--f-base); line-height: 1.55; }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; min-width: 44px; }
a { color: inherit; text-decoration: none; }
button, a, input, select { touch-action: manipulation; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: -3px; }
[hidden] { display: none !important; }
button { color: inherit; border: 0; }
img { display: block; max-width: 100%; }
svg { width: 20px; height: 20px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.6; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3 { line-height: 1.15; }
h2 { font-size: var(--f-lg); letter-spacing: -.035em; }
h3 { font-size: var(--f-md); letter-spacing: -.02em; }
p { max-width: 66ch; }
small { font-size: var(--f-xs); }
button:hover, a:hover { opacity: .86; }
button:active { transform: translateY(1px); }
button, a { transition: opacity var(--fast) var(--ease), transform var(--fast) var(--ease); }
.muted { color: var(--muted); }
.gold { color: var(--gold); }
.green { color: var(--accent); }
.eyebrow { font-size: var(--f-xs); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.display { font-weight: 800; letter-spacing: -.05em; font-variant-numeric: tabular-nums; line-height: 1.05; }
.wrap { max-width: 1280px; padding: 0 var(--s10); margin: auto; }
.skip { position: fixed; left: var(--s4); top: -100px; z-index: 50; padding: var(--s3); background: var(--accent); color: var(--on-accent); }
.skip:focus { top: var(--s2); }
.review-bar { background: #090f14; border-bottom: 1px solid var(--line); }
.review-inner { display: flex; align-items: center; justify-content: space-between; gap: var(--s4); min-height: 44px; }
.review-label { font-size: var(--f-xs); color: var(--muted); }
.review-label b { color: var(--gold); font-weight: 500; }
.review-nav { display: flex; gap: var(--s4); align-items: center; }
.review-nav a, .review-nav button { font-size: var(--f-xs); min-height: 44px; display: inline-flex; align-items: center; background: none; padding: 0 var(--s2); }
.review-nav [aria-current="true"] { color: var(--gold); text-decoration: underline; text-underline-offset: 5px; }
.site-header { border-bottom: 1px solid var(--line); background: var(--bg); }
.header-inner { display: flex; align-items: center; gap: var(--s10); min-height: 88px; }
.brand { display: flex; align-items: center; gap: var(--s3); min-height: 44px; flex: 0 0 auto; }
.wordmark { font-size: var(--f-xl); font-weight: 900; font-style: italic; letter-spacing: -.08em; line-height: 1; }
.brand-description { font-size: var(--f-xs); font-weight: 700; line-height: 1.25; letter-spacing: .06em; }
.primary-nav { display: flex; gap: var(--s6); align-self: stretch; }
.primary-nav a { display: flex; align-items: center; min-height: 44px; min-width: 44px; gap: var(--s2); font-size: var(--f-sm); color: var(--muted); border-bottom: 2px solid transparent; }
.primary-nav a[aria-current="page"] { color: var(--ink); border-color: var(--accent); }
.primary-nav svg { display: none; }
.header-actions { margin-left: auto; display: flex; align-items: center; gap: var(--s6); }
.login-short { display: none; }
.language { display: flex; }
.language button { min-width: 44px; min-height: 44px; background: transparent; color: var(--muted); font-size: var(--f-xs); padding: var(--s2); }
.language button[aria-pressed="true"] { color: var(--ink); font-weight: 700; text-decoration: underline; text-underline-offset: 6px; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--s2); padding: var(--s3) var(--s5); min-height: 48px; border-radius: var(--r-sm); font-weight: 700; font-size: var(--f-sm); text-align: center; background: var(--surface-raised); color: var(--ink); }
.btn-primary { background: var(--accent-fill); color: var(--on-accent); }
.btn-outline { background: transparent; border: 1px solid var(--line); }
.btn-text { background: transparent; padding: var(--s3) 0; }
.hero { position: relative; isolation: isolate; padding: var(--s16) 0 var(--s12); }
.hero-art { position: absolute; z-index: -2; right: 0; top: 0; width: 67%; height: 100%; object-fit: cover; object-position: 65% center; }
.hero::after { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,var(--bg) 26%,rgba(16,24,32,.94) 39%,rgba(16,24,32,.18) 74%),linear-gradient(0deg,var(--bg),transparent 25%); }
.hero-kicker { display: flex; gap: var(--s3); align-items: center; color: var(--muted); margin-bottom: var(--s6); }
.tiny-line { width: 28px; height: 2px; background: var(--gold); }
.hero h1 { font-size: var(--f-hero); max-width: 650px; letter-spacing: -.055em; line-height: .98; font-weight: 900; }
.hero h1 span { color: var(--gold); }
.hero-copy { margin-top: var(--s6); font-size: var(--f-base); color: var(--muted); max-width: 390px; }
.hero-buttons { display: flex; gap: var(--s3); margin-top: var(--s8); flex-wrap: wrap; }
.hero-stat { display: flex; align-items: center; gap: var(--s4); margin-top: var(--s10); }
.hero-stat svg { color: var(--gold); width: 32px; height: 32px; }
.hero-stat strong { font-size: var(--f-lg); }
.hero-stat small { display: block; color: var(--muted); }
.hero-caption { position: absolute; bottom: var(--s12); right: var(--s10); font-size: var(--f-xs); letter-spacing: .16em; color: var(--gold); }
.promo { display: flex; align-items: center; gap: var(--s8); padding: var(--s6) var(--s8); background: var(--surface); border-radius: var(--r-md); margin-top: var(--s4); }
.promo-percent { font-size: var(--f-xl); color: var(--accent); letter-spacing: -.05em; font-weight: 800; line-height: 1; }
.promo-text { flex: 1; }
.promo-text strong { font-size: var(--f-base); display: block; }
.promo-text small { color: var(--muted); }
.code-button { border: 1px dashed var(--line); border-radius: var(--r-sm); padding: var(--s2) var(--s4); min-height: 56px; background: transparent; display: flex; align-items: center; gap: var(--s6); }
.code-button span { text-align: left; }
.code-button small { display: block; color: var(--muted); }
.code-button b { letter-spacing: .1em; font-size: var(--f-md); }
.section { margin-top: var(--s16); scroll-margin-top: var(--s6); }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s6); margin-bottom: var(--s8); }
.section-head .eyebrow { color: var(--gold); margin-bottom: var(--s3); }
.section-head p { color: var(--muted); font-size: var(--f-sm); margin-top: var(--s3); }
.race-meta { display: flex; align-items: center; gap: var(--s3); margin-bottom: var(--s3); }
.pill { display: inline-flex; gap: var(--s2); align-items: center; padding: var(--s1) var(--s3); border-radius: var(--r-pill); font-size: var(--f-xs); font-weight: 700; background: var(--surface-raised); color: var(--muted); }
.pill-active { color: var(--accent); }
.pill-active::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.countdown-label { color: var(--muted); font-size: var(--f-xs); text-align: right; margin-bottom: var(--s2); }
.countdown { display: flex; gap: var(--s2); align-items: baseline; }
.countdown-unit { text-align: center; min-width: 48px; }
.countdown-unit b { font-size: var(--f-lg); line-height: 1.1; font-variant-numeric: tabular-nums; }
.countdown-unit small { display: block; color: var(--muted); font-size: var(--f-xs); margin-top: var(--s1); }
.countdown-separator { color: var(--muted); font-size: var(--f-md); }
.prize-heading { font-size: var(--f-xl); letter-spacing: -.045em; }
.prize-heading span { color: var(--gold); }
.podium { display: grid; grid-template-columns: 1fr 1.12fr 1fr; gap: var(--s4); align-items: end; padding-top: var(--s4); }
.podium-card { position: relative; border-radius: var(--r-md); background: var(--surface); padding: var(--s8) var(--s6); text-align: center; }
.podium-card.first { background: var(--surface-warm); padding-top: var(--s10); border-top: 2px solid var(--gold); }
.podium-place { display: flex; justify-content: center; gap: var(--s2); align-items: center; font-size: var(--f-xs); color: var(--silver); font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
.podium-card.first .podium-place { color: var(--gold); }
.podium-card.third .podium-place { color: var(--bronze); }
.avatar { display: inline-grid; place-items: center; width: 56px; height: 56px; background: var(--surface-raised); color: var(--silver); border-radius: var(--r-md); margin: var(--s5) 0 var(--s3); }
.avatar svg { width: 28px; height: 28px; }
.first .avatar { color: var(--gold); background: #41402e; }
.third .avatar { color: var(--bronze); }
.podium-name { font-weight: 700; font-size: var(--f-base); }
.podium-wager { font-size: var(--f-xs); color: var(--muted); margin-top: var(--s2); }
.podium-prize { font-size: var(--f-lg); font-weight: 800; letter-spacing: -.035em; margin-top: var(--s5); }
.podium-prize small { font-weight: 400; color: var(--muted); display: block; font-size: var(--f-xs); margin-top: var(--s1); letter-spacing: 0; }
.first .podium-prize { color: var(--gold); }
.table-container { overflow-x: auto; border-radius: var(--r-md); margin-top: var(--s6); background: var(--surface); }
table { width: 100%; border-collapse: collapse; text-align: left; font-size: var(--f-sm); font-variant-numeric: tabular-nums; }
th { color: var(--muted); font-weight: 400; font-size: var(--f-xs); padding: var(--s4) var(--s6); }
td { padding: var(--s4) var(--s6); border-top: 1px solid var(--line); }
th:last-child, td:last-child { text-align: right; }
td:last-child { font-weight: 700; }
th:nth-child(3), td:nth-child(3) { text-align: right; }
td:first-child { color: var(--muted); width: 80px; }
.table-user { display: flex; gap: var(--s3); align-items: center; }
.table-user svg { color: var(--muted); width: 16px; height: 16px; }
.table-actions { display: flex; justify-content: space-between; gap: var(--s4); align-items: center; margin-top: var(--s3); }
.table-actions small { color: var(--muted); }
.race-footnote { padding-top: var(--s3); color: var(--muted); font-size: var(--f-xs); }
.rules { padding: var(--s8); background: var(--surface); border-radius: var(--r-md); }
.rules-head { display: flex; gap: var(--s4); align-items: flex-start; }
.rules-head > svg { color: var(--gold); margin-top: var(--s1); }
.rules-head p { color: var(--muted); font-size: var(--f-sm); margin-top: var(--s3); }
.rule-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--s6); margin-top: var(--s8); }
.rule-item { border-left: 2px solid var(--line); padding-left: var(--s5); }
.rule-item strong { color: var(--gold); display: block; font-size: var(--f-lg); }
.rule-item b { display: block; font-size: var(--f-sm); margin-top: var(--s2); }
.rule-item p { color: var(--muted); font-size: var(--f-xs); margin-top: var(--s2); }
.rules > small { display: block; color: var(--muted); margin-top: var(--s6); }
.community-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s6); }
.community-card { padding: var(--s8); border-radius: var(--r-md); background: var(--surface); position: relative; isolation: isolate; overflow: clip; }
.community-card h3 { font-size: var(--f-lg); margin: var(--s6) 0 var(--s3); }
.community-card p { color: var(--muted); font-size: var(--f-sm); max-width: 28ch; }
.community-card a { margin-top: var(--s6); }
.community-card img { position: absolute; width: 100%; height: 100%; object-fit: cover; inset: 0; z-index: -2; }
.community-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,24,32,.97),rgba(16,24,32,.7) 62%,rgba(16,24,32,.15)); z-index: -1; }
.community-card.kick::after { background: linear-gradient(90deg,rgba(16,24,32,.97),rgba(16,24,32,.7) 60%,rgba(16,24,32,.2)); }
.social-label { font-size: var(--f-md); font-weight: 800; letter-spacing: -.04em; }
.footer { margin-top: var(--s16); padding: var(--s8) 0 var(--s6); border-top: 1px solid var(--line); }
.footer-top { display: flex; align-items: center; justify-content: space-between; gap: var(--s8); }
.footer-links { display: flex; flex-wrap: wrap; gap: var(--s6); font-size: var(--f-sm); color: var(--muted); }
.footer-links a, .footer-links button { display: inline-flex; min-height: 44px; align-items: center; background: transparent; color: inherit; padding: 0; }
.review-nav a, .review-nav button, .footer-links a, .footer-links button { min-width: 44px; }
.footer-bottom { display: flex; gap: var(--s8); margin-top: var(--s6); align-items: flex-start; font-size: var(--f-xs); color: var(--muted); }
.age-mark { border: 1px solid var(--line); padding: var(--s2); border-radius: var(--r-sm); color: var(--ink); font-weight: 700; }
.footer-bottom .copyright { margin-left: auto; white-space: nowrap; }
.footer-bottom p { font-size: var(--f-base); }
.page-intro { padding: var(--s12) 0 var(--s8); }
.page-intro h1 { margin-top: var(--s4); font-size: var(--f-display); letter-spacing: -.05em; }
.page-intro p { margin-top: var(--s4); color: var(--muted); }
.tabs { display: flex; gap: var(--s6); border-bottom: 1px solid var(--line); margin-bottom: var(--s8); }
.tabs button { padding: var(--s4) 0; min-height: 48px; background: none; color: var(--muted); border-bottom: 2px solid transparent; }
.tabs button[aria-selected="true"] { color: var(--ink); border-color: var(--accent); }
.giveaway-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: var(--s6); }
.giveaway-card { border-radius: var(--r-md); background: var(--surface); overflow: clip; }
.giveaway-art { position: relative; height: 200px; padding: var(--s6); background: var(--surface-warm); isolation: isolate; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; }
.giveaway-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.giveaway-art::after { content:''; position: absolute; inset:0; z-index:-1; background: linear-gradient(90deg,rgba(16,24,32,.96),rgba(16,24,32,.15)); }
.giveaway-art strong { font-size: var(--f-xl); }
.giveaway-body { padding: var(--s6); }
.giveaway-body p { margin: var(--s3) 0 var(--s6); font-size: var(--f-sm); color: var(--muted); }
.winners-total { padding: var(--s8); background: var(--surface-warm); border-radius: var(--r-md); display: flex; justify-content: space-between; align-items: center; }
.winners-total strong { font-size: var(--f-display); color: var(--gold); }
.winners-total p { margin-bottom: var(--s3); }
.winners-total > svg { width: 64px; height: 64px; color: var(--gold); }
.form-row { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s4); margin: var(--s8) 0 var(--s4); }
.field { display: flex; flex-direction: column; gap: var(--s2); font-size: var(--f-sm); color: var(--muted); }
input, select { color: var(--ink); background: var(--surface-raised); border: 1px solid var(--line); min-height: 48px; padding: var(--s3); border-radius: var(--r-sm); max-width: 100%; }
.dialog { width: min(480px, calc(100% - 32px)); background: var(--surface); color: var(--ink); border: 1px solid var(--line); border-radius: var(--r-lg); padding: var(--s10); max-height: calc(100svh - 32px); overflow-y: auto; }
.dialog::backdrop { background: rgba(5,10,15,.86); backdrop-filter: blur(8px); }
.dialog-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--s8); }
.dialog-icon { display: grid; place-items: center; width: 64px; height: 64px; color: var(--gold); background: var(--surface-warm); border-radius: var(--r-md); font-size: var(--f-lg); font-weight: 800; }
.dialog h2 { margin-bottom: var(--s4); }
.dialog p { color: var(--muted); font-size: var(--f-sm); margin-bottom: var(--s6); }
.dialog .btn { width: 100%; margin-top: var(--s3); }
.dialog .language { margin-bottom: var(--s4); justify-content: flex-end; }
.dialog-note { text-align: center; display: block; margin-top: var(--s6); color: var(--muted); }
.close-button { min-height: 44px; min-width: 44px; background: transparent; padding: var(--s3); border-radius: var(--r-sm); }
.dialog .field { margin-bottom: var(--s4); }
.toast { position: fixed; left: 50%; bottom: var(--s6); transform: translateX(-50%); padding: var(--s4) var(--s6); background: var(--accent); color: var(--on-accent); border-radius: var(--r-sm); z-index: 60; max-width: calc(100% - 32px); text-align: center; font-size: var(--f-sm); }
.sidebar { display: none; }
.race-first-banner { display: none; }
.admin-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--s6); margin-bottom: var(--s8); }
.admin-stat { background: var(--surface); border-radius: var(--r-md); padding: var(--s6); }
.admin-stat strong { display: block; font-size: var(--f-lg); margin-top: var(--s3); }
.admin-actions { display: flex; flex-wrap: wrap; gap: var(--s3); }
.danger { color: var(--danger); }
.empty-state { padding: var(--s12); text-align: center; color: var(--muted); background: var(--surface); border-radius: var(--r-md); }
.app-shell > *, .header-inner > *, .section-head > *, .promo > *, .form-row > *, .review-inner > *, .footer-top > *, .footer-bottom > *, .hero-stat > *, .rules-head > * { min-width: 0; }
.rules-head p, .rule-item p, .community-card p, .giveaway-body p, .section-head p, .dialog p { font-size: var(--f-base); }
table { font-size: var(--f-base); }
body[data-concept="race"] .sidebar { display: flex; width: 208px; position: fixed; left:0; top:0; height: 100svh; flex-direction: column; padding: var(--s8) var(--s6); border-right: 1px solid var(--line); background: #0d141b; z-index: 5; }
body[data-concept="race"] .sidebar .brand { margin-bottom: var(--s12); }
body[data-concept="race"] .sidebar nav { display: flex; flex-direction: column; gap: var(--s2); flex: 1; }
body[data-concept="race"] .sidebar nav a { display: flex; align-items: center; gap: var(--s3); min-height: 48px; padding: var(--s3); border-radius: var(--r-sm); color: var(--muted); font-size: var(--f-sm); }
body[data-concept="race"] .sidebar nav a[aria-current="page"] { color: var(--ink); background: var(--surface-raised); }
.sidebar-bottom { display: grid; gap: var(--s3); font-size: var(--f-sm); }
.sidebar-bottom a { min-height: 44px; display: flex; align-items: center; gap: var(--s3); }
.sidebar-bottom p { color:var(--muted); font-size:var(--f-xs); margin-top:var(--s4); }
body[data-concept="race"] .app-shell { margin-left: 208px; }
body[data-concept="race"] .header-inner > .brand, body[data-concept="race"] .header-inner > .primary-nav { display: none; }
body[data-concept="race"] .header-inner { min-height: 72px; }
body[data-concept="race"] .hero { display: none; }
body[data-concept="race"] .race-first-banner { display: grid; grid-template-columns: 1.4fr 1fr; gap: var(--s6); padding-top: var(--s8); }
.compact-brand { position: relative; isolation: isolate; padding:var(--s8); overflow:clip; border-radius:var(--r-md); }
.compact-brand img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.compact-brand::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--bg),rgba(16,24,32,.2)); z-index:-1; }
.compact-brand h1 { font-size:var(--f-lg); line-height:1.05; letter-spacing:-.04em; margin-top:var(--s3); }
.compact-total { padding:var(--s8); background:var(--surface-warm); border-radius:var(--r-md); }
.compact-total strong { display:block; font-size:var(--f-xl); color:var(--gold); margin-top:var(--s3); }
body[data-concept="race"] .home-race { margin-top: var(--s8); }
body[data-concept="race"] .home-promo { margin-top: var(--s8); }
body[data-concept="race"] .podium-card { padding:var(--s6); }
body[data-concept="race"] .podium-card.first { padding-top:var(--s8); }
body[data-concept="race"] .wrap { padding-inline:var(--s8); }
@media (min-width: 1700px) { body[data-concept="race"] .wrap { max-width: 1360px; } }
@media (max-width: 1150px) {
  .brand-description { display:none; }
  .header-inner { gap:var(--s8); }
  .primary-nav { gap:var(--s4); }
  .header-actions { gap:var(--s3); }
  .hero h1 { font-size:var(--f-display); }
  .hero::after { background:linear-gradient(90deg,var(--bg) 18%,rgba(16,24,32,.94) 38%,rgba(16,24,32,.1) 85%),linear-gradient(0deg,var(--bg),transparent 25%); }
  .promo { gap:var(--s5); padding:var(--s6); }
  body[data-concept="race"] .sidebar { width:176px; padding-inline:var(--s4); }
  body[data-concept="race"] .app-shell { margin-left:176px; }
  body[data-concept="race"] .promo { flex-wrap:wrap; }
}
@media (max-width: 850px) {
  .wrap, body[data-concept="race"] .wrap { padding-inline:var(--s6); }
  .header-inner { flex-wrap:wrap; gap:0; padding-top:var(--s4); }
  .header-actions { gap:var(--s3); }
  .primary-nav { order:3; width:100%; justify-content:space-between; margin-top:var(--s3); }
  .primary-nav a { padding:var(--s3) 0; }
  .promo { flex-wrap:wrap; }
  .promo-text { flex-basis:60%; }
  .promo > .btn { margin-left:auto; }
  .hero { padding-top:var(--s12); }
  .hero-caption { display:none; }
  .hero-art { width:85%; }
  .podium { gap:var(--s3); }
  .podium-card, .podium-card.first { padding:var(--s6) var(--s3); }
  .rule-grid { gap:var(--s4); }
  .rule-item { padding-left:var(--s3); }
  body[data-concept="race"] .sidebar { display:none; }
  body[data-concept="race"] .app-shell { margin-left:0; }
  body[data-concept="race"] .header-inner > .brand, body[data-concept="race"] .header-inner > .primary-nav { display:flex; }
  body[data-concept="race"] .header-inner { min-height:88px; }
}
@media (max-width: 600px) {
  .wrap, body[data-concept="race"] .wrap { padding-inline:var(--s5); }
  .review-inner { display:block; }
  .review-label { padding-top:var(--s2); font-size:var(--f-xs); }
  .review-nav { gap:var(--s3); justify-content:space-between; }
  .review-nav a, .review-nav button { padding:0; }
  .review-nav .review-age { display:none; }
  .wordmark { font-size:var(--f-lg); }
  .header-actions { gap:var(--s1); }
  .login-button { padding:var(--s3); font-size:var(--f-xs); }
  .login-button svg { width:16px; height:16px; }
  .language button { min-width:44px; }
  .login-long { display:none; }
  .login-short { display:inline; }
  .primary-nav { gap:var(--s3); }
  .primary-nav a { font-size:var(--f-xs); }
  .hero { padding:var(--s8) 0 var(--s8); }
  .hero-art { width:100%; height:300px; object-position:76% center; opacity:.55; }
  .hero::after { background:linear-gradient(90deg,rgba(16,24,32,.8),rgba(16,24,32,.04)),linear-gradient(0deg,var(--bg) 15%,rgba(16,24,32,.25) 75%); }
  .hero-kicker { margin-bottom:var(--s6); font-size:var(--f-xs); letter-spacing:.08em; }
  .hero h1 { font-size:var(--f-xl); letter-spacing:-.045em; }
  .hero-copy { margin-top:var(--s5); max-width:26ch; color:var(--ink); font-size:var(--f-sm); }
  .hero-buttons { margin-top:var(--s6); gap:var(--s2); }
  .hero-buttons .btn { flex:1; padding:var(--s3); font-size:var(--f-xs); }
  .hero-stat { margin-top:var(--s8); }
  .hero-stat strong { font-size:var(--f-lg); }
  .promo { gap:var(--s4); padding:var(--s5); }
  .promo-percent { font-size:var(--f-lg); }
  .promo-text { flex-basis:50%; }
  .promo-text strong { font-size:var(--f-sm); }
  .promo .code-button { width:100%; justify-content:space-between; }
  .promo > .btn { width:100%; }
  .section { margin-top:var(--s12); }
  .section-head { flex-direction:column; align-items:flex-start; gap:var(--s6); margin-bottom:var(--s6); }
  h2, .prize-heading { font-size:var(--f-lg); }
  .countdown-label { text-align:left; }
  .countdown { gap:var(--s3); }
  .countdown-unit { min-width:44px; }
  .podium { gap:var(--s2); grid-template-columns:1fr 1.08fr 1fr; }
  .podium-card, .podium-card.first, body[data-concept="race"] .podium-card { padding:var(--s5) var(--s2); }
  .podium-card.first { padding-top:var(--s8); }
  .podium-place { font-size:var(--f-xs); letter-spacing:0; gap:var(--s1); }
  .podium-place svg { width:16px; height:16px; }
  .avatar { width:44px; height:44px; margin:var(--s4) 0 var(--s3); }
  .podium-name { font-size:var(--f-xs); }
  .podium-wager { font-size:var(--f-xs); }
  .podium-wager span { display:none; }
  .podium-prize { font-size:var(--f-md); }
  .podium-prize small { font-size:var(--f-xs); }
  th, td { padding:var(--s4) var(--s2); }
  th { font-size:var(--f-xs); }
  td { font-size:var(--f-base); }
  td:first-child { width:auto; }
  .table-user { gap:var(--s1); }
  .table-user svg { display:none; }
  .table-actions { align-items:flex-start; flex-direction:column-reverse; gap:var(--s2); }
  .table-actions .btn { width:100%; }
  .rules { padding:var(--s6); }
  .rule-grid { grid-template-columns:1fr; gap:var(--s6); }
  .rule-item { padding-left:var(--s4); }
  .rules-head p, .rule-item p, .community-card p, .giveaway-body p { font-size:var(--f-base); }
  .community-grid, .giveaway-grid { grid-template-columns:1fr; gap:var(--s4); }
  .community-card { padding:var(--s6); }
  .footer-top { align-items:flex-start; gap:var(--s4); }
  .footer-links { flex-direction:column; gap:0; }
  .footer-bottom { flex-wrap:wrap; gap:var(--s4); }
  .footer-bottom p { flex:1; }
  .footer-bottom .copyright { width:100%; }
  .page-intro { padding-top:var(--s8); }
  .page-intro h1 { font-size:var(--f-xl); }
  .page-intro p { font-size:var(--f-base); }
  .winners-total { padding:var(--s6); }
  .winners-total strong { font-size:var(--f-xl); }
  .winners-total > svg { width:40px; height:40px; }
  .form-row { flex-direction:column; align-items:stretch; }
  .dialog { padding:var(--s6); }
  .dialog h2 { font-size:var(--f-lg); }
  body[data-concept="race"] .race-first-banner { grid-template-columns:1fr; gap:var(--s3); }
  .compact-brand { padding:var(--s6); }
  .compact-total { padding:var(--s6); }
  .compact-total strong { font-size:var(--f-lg); }
  .admin-stats { grid-template-columns:1fr; gap:var(--s3); }
  .admin-table { min-width:640px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition:none !important; animation:none !important; } }
@media (prefers-reduced-transparency: reduce) { .dialog::backdrop { backdrop-filter:none; background:#090f14; } }
@media (prefers-contrast: more) { :root { --muted:#dde6ec; --line:#899da9; } }
@media (forced-colors: active) { .btn, .pill, .podium-card, .dialog, .avatar { border:1px solid ButtonText; } :focus-visible { outline:3px solid Highlight; } }
