.word-world {
  --world-color: #71344b;
  --world-tint: #f1d8bf;
  --world-ring: #b46e5b68;
}
.words-board [hidden] { display: none !important; }
.words-board { scroll-margin-top: 1rem; }
.words-board > h2 { max-width: none; }
.words-board p { max-width: 58ch; }
.words-board button { margin-top: 14px; }
.words-label { display: block; margin: 20px 0 5px; font-weight: 700; }
.words-board select { display: block; max-width: 100%; border: 1px solid var(--muted); background: var(--paper); padding: 8px; border-radius: 6px; }
.words-score { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 18px; }
.words-score span { display: inline-flex; align-items: baseline; gap: .65em; padding: 5px 12px; border: 1px solid #a87f72; border-radius: 6px; font-weight: 650; }
.words-score strong, .words-clock { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.words-turn { display: flex; align-items: center; justify-content: space-between; gap: 8px; max-width: 520px; margin: 14px 0 8px; }
.words-clock { padding: 3px 8px; border-radius: 4px; background: var(--ink); color: var(--paper); }
.words-card { padding: clamp(18px, 3vw, 32px); max-width: 520px; background: #fff8eb; border-radius: 14px; }
.words-kicker { font: 600 .82rem/1.4 var(--mono); color: var(--world-color); }
.words-card strong { display: block; font-size: clamp(1.65rem, 6vw, 3.6rem); line-height: 1.2; overflow-wrap: anywhere; margin-top: 8px; }
.words-prompt { font-size: clamp(1.2rem, 2.4vw, 1.65rem); font-weight: 760; }
@media (max-width: 450px) {
  .words-board { padding: 18px 14px; }
  .words-board .actions { gap: 6px; }
  .words-board .actions button { padding-inline: 12px; flex: 1 1 auto; }
}
