/* Legal pages — readable long-form */
.legal-page{max-width:780px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-6)}
.legal-page h1{font-size:var(--fs-28);margin-bottom:var(--s-2)}
.legal-page .updated{color:var(--ink-3);font-size:var(--fs-12);margin-bottom:var(--s-5)}
.legal-page h2{font-size:var(--fs-18);margin:var(--s-5) 0 var(--s-2);color:var(--ink)}
.legal-page h3{font-size:var(--fs-16);margin:var(--s-4) 0 var(--s-2);color:var(--ink)}
.legal-page p,.legal-page li{color:var(--ink-2);font-size:var(--fs-14);line-height:1.7}
.legal-page ul,.legal-page ol{padding-left:var(--s-5);margin:var(--s-2) 0 var(--s-3)}
.legal-page ul li,.legal-page ol li{margin-bottom:var(--s-1);list-style:disc}
.legal-page ol li{list-style:decimal}
.legal-page a{color:var(--accent-hi);text-decoration:underline}
.legal-page .callout{background:var(--rail);border:1px solid var(--line-2);border-radius:var(--r-sm);padding:var(--s-3) var(--s-4);margin:var(--s-3) 0}
.legal-page .callout strong{color:var(--ink)}

/* Help */
.help-grid{display:grid;grid-template-columns:1fr 320px;gap:var(--s-5)}
@media (max-width:960px){ .help-grid{grid-template-columns:1fr} }
.help-contact{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-4)}
.help-contact h3{font-size:var(--fs-16)}
.help-contact ul{display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--fs-13);color:var(--ink-2);margin-top:var(--s-3)}

/* Auth */
.auth-page{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
@media (max-width:720px){ .auth-page{grid-template-columns:1fr} }
.auth-page__left{background:linear-gradient(180deg,#0E1620,#0B0F14);padding:var(--s-8);display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-5)}
.auth-page__right{background:var(--surface);padding:var(--s-8)}
.auth-page__pitch h2{font-size:var(--fs-28);margin-bottom:var(--s-2)}
.auth-page__pitch ul{margin-top:var(--s-3);display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--fs-13);color:var(--ink-2)}
.auth-page__pitch li::before{content:"✓";color:var(--ok);margin-right:8px;font-weight:700}
.auth-steps{display:flex;gap:var(--s-2);margin-bottom:var(--s-5)}
.auth-step{flex:1;height:4px;background:var(--rail);border-radius:2px;overflow:hidden}
.auth-step.is-active{background:var(--accent)}
.auth-step.is-done{background:var(--accent-lo)}
.age-gate{background:#180D0D;border:1px solid #3A1818;color:#FFD4D4;padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);font-size:var(--fs-13);margin-bottom:var(--s-4)}

/* Filter bar (sports comp filter, racing discipline note) */
.filter-bar{
  background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-sm);padding:var(--s-3) var(--s-4);
  margin-bottom:var(--s-4);font-size:var(--fs-13);color:var(--ink-2);
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;
}
.filter-bar strong{color:var(--ink)}
.filter-bar a{color:var(--accent-hi)}
.page-title__count{font-weight:500;margin-left:var(--s-2)}

/* Promotions */
.promos-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--s-4)}
.promo-banner{background:var(--rail);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);font-size:var(--fs-13);color:var(--ink-2);margin-bottom:var(--s-5)}

/* 404 */
.notfound{
  text-align:center;padding:var(--s-12) var(--s-5);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
}
.notfound__code{font-family:'Inter Tight';font-size:var(--fs-48);color:var(--accent-hi);font-weight:800}
.notfound h1{margin:var(--s-3) 0 var(--s-2)}
