/* v0.9.4 · actual reading sizes, not tiny labels scaled with the layout. */
.legal-shell {width:min(1200px,calc(100% - 40px))}
.legal-top {height:auto; min-height:104px; padding:18px 0}
.legal-back {font-size:1rem; line-height:1.4; min-height:48px; padding:12px 18px; text-align:center}
.legal-brand b {font-family:'Arial Black',Impact,sans-serif; font-size:1.9rem}
.legal-hero {padding:44px}
.legal-hero .legal-kicker {font-size:1rem; line-height:1.5; margin:0 0 18px; color:#cfff45}
.legal-hero h1 {font-size:clamp(2.8rem,6.8vw,5rem); line-height:1.06; letter-spacing:-.055em; overflow-wrap:normal; hyphens:auto}
.legal-hero p:not(.legal-kicker) {font-size:1.25rem; line-height:1.7; margin-top:26px; max-width:44rem; color:#f7e8dc; font-weight:500}
.legal-grid {grid-template-columns:240px minmax(0,1fr); gap:30px; margin:38px 0 54px}
.legal-content,.legal-card {min-width:0}
.legal-aside {padding:20px 16px; gap:5px}
.legal-aside b {font-size:.875rem; line-height:1.4; margin:4px 10px 10px}
.legal-aside a {font-size:1.0625rem; line-height:1.5; min-height:46px; padding:10px; font-weight:700}
.legal-card {padding:32px; border-radius:24px}
.legal-card h2 {font-size:clamp(1.55rem,2.6vw,2rem); line-height:1.23; margin-bottom:18px; letter-spacing:-.035em; overflow-wrap:anywhere}
.legal-card h3 {font-size:1.25rem; line-height:1.4; margin:26px 0 12px}
.legal-card p,.legal-card li {font-size:1.125rem; line-height:1.8; color:#352b22; font-weight:450; overflow-wrap:anywhere}
.legal-card p {margin:12px 0}
.legal-card ul,.legal-card ol {padding-left:1.4em}
.legal-card li+li {margin-top:10px}
.legal-card a {color:#a92f00; text-underline-offset:3px; overflow-wrap:anywhere}
.legal-card code {font-size:.95em; padding:2px 5px; background:#f0d6b9; border-radius:5px}
.riot-note {padding:22px; gap:14px; margin:10px 0}
.riot-note b {font-size:1.0625rem; line-height:1.5}
.riot-note p {font-size:1.0625rem; line-height:1.7}
.contact-cta {font-size:1.0625rem; line-height:1.5; min-height:50px; padding:14px 18px; color:#11110e!important; text-align:left}
.contact-form {gap:26px; margin-top:24px}
.contact-form legend,.contact-label {font-size:1rem; line-height:1.5; letter-spacing:.05em; color:#352b22; margin-bottom:12px}
.contact-topics {gap:14px}
.contact-topic span {gap:8px; padding:18px; min-height:120px}
.contact-topic span b {font-size:1.125rem; line-height:1.4}
.contact-topic span small {font-size:1rem; line-height:1.6; font-weight:500; color:#554333}
.contact-field input,.contact-field textarea {font-family:inherit; font-size:1.125rem; line-height:1.6; padding:16px; font-weight:500}
.contact-field input {height:auto; min-height:58px}
.contact-field textarea {min-height:210px}
.contact-field input::placeholder,.contact-field textarea::placeholder {color:#6f5c4d; font-weight:450}
.contact-submit {font-size:1.125rem; min-height:64px; height:auto; padding:16px 20px; line-height:1.5; color:#11110e; gap:16px}
.contact-submit span {color:#11110e; font-size:1.5rem}
.contact-status {font-size:1.0625rem; line-height:1.7; padding:18px}
.contact-fineprint {font-size:1rem!important; line-height:1.7!important; color:#554333!important}
.contact-mini {padding:20px}
.contact-mini b {font-size:1.125rem; line-height:1.4}
.contact-mini p {font-size:1rem!important; line-height:1.7!important}
.contact-topic input:focus-visible+span {outline:3px solid #a92f00; outline-offset:4px}
.legal-shell a:focus-visible {outline:3px solid #11110e; outline-offset:4px}
/* Help also keeps readable text and natural scrolling. */
#aboutDialog.help-dialog {width:min(920px,calc(100% - 32px)); padding:38px!important; max-height:calc(100dvh - 32px); overflow-y:auto; overscroll-behavior:contain}
#aboutDialog .help-kicker span {font-size:1rem; line-height:1.5}
#aboutDialog h2 {font-size:clamp(2.25rem,5.5vw,3.75rem)!important; line-height:1.12!important; margin:26px 0 0!important; letter-spacing:-.04em}
#aboutDialog .help-lead {font-size:1.1875rem!important; line-height:1.75!important; margin:26px 0!important; padding:22px!important; background:#fff4e6!important; color:#21180f!important}
#aboutDialog .help-steps {gap:18px}
#aboutDialog .help-steps article {padding:22px!important; min-height:0}
#aboutDialog .help-steps article b {font-size:1.125rem!important; line-height:1.4}
#aboutDialog .help-steps article p {font-size:1.0625rem!important; line-height:1.75!important; margin:14px 0 0!important}
#aboutDialog .help-rule {padding:22px; margin-top:24px; gap:12px}
#aboutDialog .help-rule b,#aboutDialog .help-rule span {font-size:1.0625rem!important; line-height:1.7!important}
#aboutDialog .help-link {font-size:1rem!important; line-height:1.6; padding:16px 0; display:block}
@media(max-width:860px) {
  .legal-grid {grid-template-columns:1fr; margin-top:30px}
  .legal-aside {position:static; display:flex; flex-wrap:wrap; gap:4px 10px; overflow:visible; padding:14px}
  .legal-aside b {display:none}
  .legal-aside a {white-space:normal}
  .legal-hero {padding:34px}
}
@media(max-width:600px) {
  .legal-shell {width:calc(100% - 28px)}
  .legal-top {gap:12px; min-height:88px; flex-wrap:wrap; padding:18px 0 24px}
  .legal-brand img {width:44px; height:44px}
  .legal-brand b {font-size:1.55rem}
  .legal-back {font-size:.9375rem; min-height:44px; padding:10px 12px}
  .legal-back span {display:inline}
  .legal-hero {padding:28px 22px; border-radius:24px; box-shadow:5px 6px 0 #cfff45}
  .legal-hero h1 {font-size:clamp(2.25rem,10.4vw,3.5rem); line-height:1.07}
  .legal-hero p:not(.legal-kicker) {font-size:1.125rem; margin-top:22px}
  .legal-card {padding:24px 20px; border-radius:20px; box-shadow:3px 4px 0 #11110e}
  .legal-card p,.legal-card li {font-size:1.0625rem; line-height:1.8}
  .legal-card h2 {font-size:1.625rem}
  .contact-topics,.contact-two,.contact-mini-grid {grid-template-columns:1fr}
  .contact-topic span {min-height:0}
  .contact-field input,.contact-field textarea {font-size:1.0625rem}
  .contact-submit {font-size:1.0625rem}
  #aboutDialog.help-dialog {padding:24px 20px!important; width:calc(100% - 24px)}
  #aboutDialog .help-steps {grid-template-columns:1fr}
  #aboutDialog .help-rule {flex-direction:column; align-items:start}
  #aboutDialog .help-kicker {padding-right:36px}
  #aboutDialog .help-kicker span {font-size:.875rem}
}
/* Explicit text colors: old dialog defaults must not dim the dark cards. */
#aboutDialog .help-steps article p {color:#3c2e22!important; opacity:1!important; font-weight:550!important}
#aboutDialog .help-steps article:nth-child(2) p,
#aboutDialog .help-steps article:nth-child(3) p {color:#f5e4d2!important}
#aboutDialog .help-kicker span {font-size:.9375rem!important; line-height:1.5!important; letter-spacing:.08em!important}
#aboutDialog .help-rule b {white-space:normal}
@media(max-width:600px){#aboutDialog .help-kicker span{font-size:.8125rem!important}}


/* v0.9.7 · secondary pages: grown-up type, no ant-sized legalese */
@media(min-width:761px){
  .legal-hero p:not(.legal-kicker){font-size:1.34rem!important;line-height:1.72!important;max-width:48rem!important}
  .legal-aside a{font-size:1.08rem!important;line-height:1.45!important}
  .legal-card{padding:30px!important}
  .legal-card h2{font-size:clamp(1.85rem,2.9vw,2.35rem)!important;line-height:1.17!important}
  .legal-card h3{font-size:1.38rem!important}
  .legal-card p,.legal-card li{font-size:1.22rem!important;line-height:1.78!important}
  .riot-note b{font-size:1.12rem!important}.riot-note p{font-size:1.06rem!important;line-height:1.6!important}
}
@media(max-width:760px){
  .legal-hero p:not(.legal-kicker){font-size:1.12rem!important;line-height:1.7!important}
  .legal-aside a{font-size:1rem!important}
  .legal-card{padding:22px!important}
  .legal-card h2{font-size:1.72rem!important;line-height:1.18!important}
  .legal-card h3{font-size:1.2rem!important}
  .legal-card p,.legal-card li{font-size:1.075rem!important;line-height:1.75!important}
  .riot-note b{font-size:1.02rem!important}.riot-note p{font-size:1rem!important;line-height:1.58!important}
}
