.dcm-page .section-heading { margin-bottom: 1rem; }
.dcm-page h1 { font-size: clamp(1.35rem, 5vw, 2.6rem); }
.dcm-content { padding: clamp(1rem, 3vw, 1.5rem); }
.dcm-competition { margin-bottom: 1rem; }
.dcm-disclosure-heading { display: grid; gap: .2rem; min-width: 0; }
.dcm-competition .group-category-toggle-icon { flex-shrink: 0; }
.dcm-disclosure-heading strong { font-size: 1.15rem; }
.dcm-disclosure-heading > span { font-size: .85rem; font-weight: 400; color: var(--tcg-color-text-muted); }
.dcm-rules summary { cursor: pointer; font-weight: 600; }
.dcm-table-heading, .dcm-round-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .4rem 1rem; }
.dcm-table-heading h3, .dcm-round-heading h3 { margin: .75rem 0; }
.dcm-table-heading span, .dcm-round-heading span { color: var(--tcg-color-text-muted); font-size: .85rem; font-weight: 400; }
.dcm-standings { width: 100%; border-collapse: collapse; font-size: .93rem; }
.dcm-standings th, .dcm-standings td { padding: .6rem .5rem; border-bottom: 1px solid var(--tcg-color-border); text-align: center; }
.dcm-standings th:nth-child(2), .dcm-standings th[scope="row"] { text-align: left; overflow-wrap: break-word; }
.dcm-standings thead { background: var(--tcg-color-primary-light); }
.dcm-standings tbody th { font-weight: 500; }
.dcm-standings tbody tr:nth-child(even) { background: var(--tcg-color-surface-muted); }
.dcm-round { margin-top: 1.25rem; }
.dcm-matches { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr)); gap: .75rem; }
.dcm-match { min-width: 0; padding: 1rem; margin: 0; border: 1px solid var(--tcg-color-border); border-radius: 12px; background: var(--tcg-color-surface); }
.dcm-pair { display: grid; gap: .25rem; margin-bottom: .8rem; overflow-wrap: break-word; }
.dcm-pair span { font-size: .8rem; color: var(--tcg-color-text-muted); }
.dcm-dialog { width: min(560px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; padding: clamp(1rem,3vw,1.5rem); border: 1px solid var(--tcg-color-border); border-radius: 16px; color: var(--tcg-color-text); background: var(--tcg-color-surface); }
.dcm-dialog::backdrop { background: rgba(0,43,73,.55); }
.dcm-dialog h2 { font-size: clamp(1.25rem,4vw,1.7rem); }
.dcm-dialog [hidden] { display: none !important; }
.dcm-dialog select, .dcm-dialog input, .dcm-dialog textarea { min-width: 0; max-width: 100%; font: inherit; }
.dcm-score-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.dcm-score-inputs label { min-width: 0; display: grid; align-content: space-between; gap: .5rem; overflow-wrap: break-word; }
.dcm-score-inputs input { width: 100%; text-align: center; font-size: 1.25rem; }
@media (max-width: 480px) {
  .dcm-standings { font-size: .78rem; }
  .dcm-standings th, .dcm-standings td { padding: .5rem .25rem; }
  .dcm-standings th[scope="row"] { max-width: 110px; }
}
