.brawl-list,.brawl-teams { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px; }
.home-brawl-card .card-heading { border-bottom:1px solid var(--line); }
.home-brawl-card { overflow:hidden; }
.home-brawl-content { padding:14px 21px; }
.home-brawl-spotlight.event-detail-hero { min-height:0; border:0; border-bottom:1px solid var(--line); border-radius:0; box-shadow:none; }
.home-brawl-spotlight:last-child { border-bottom:0; }
.home-brawl-spotlight .home-brawl-content { position:relative; z-index:1; }
.home-brawl-spotlight h3 { min-width:0; flex:1 1 220px; margin:0; color:var(--text); font-size:18px; line-height:1.4; overflow-wrap:anywhere; }
.home-brawl-meta { display:flex; flex-wrap:wrap; gap:4px 16px; margin:8px 0; color:var(--muted); font-size:var(--font-caption); font-variant-numeric:tabular-nums; }
.home-brawl-title { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.home-brawl-title .match-status { display:inline-flex; }
.home-brawl-dates { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:18px 0; }
.home-brawl-dates dt { margin-bottom:5px; color:var(--muted); font-size:var(--font-secondary); }
.home-brawl-dates dd { margin:0; color:var(--text); font-size:var(--font-reading); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.home-brawl-date-end { display:block; }
.home-brawl-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.home-brawl-footer .btn { min-height:36px; padding:6px 12px; font-size:var(--font-caption); }
.brawl-participation { display:grid; grid-template-columns:1fr auto; gap:10px; min-width:0; font-size:var(--font-caption); color:var(--muted); }
.brawl-capacity { text-align:right; }
.brawl-progress { grid-column:1 / -1; height:4px; overflow:hidden; border-radius:4px; background:var(--line); }
.brawl-progress > span { display:block; height:100%; background:var(--accent); border-radius:inherit; }
.home-brawl-footer .brawl-participation { flex:1 1 130px; grid-template-columns:1fr; gap:6px; }
.home-brawl-footer .brawl-capacity { display:none; }
.brawl-event-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
#brawl-content .tournament-panel-heading .tournament-retry { flex-shrink:0; white-space:nowrap; }
.brawl-event-card .tournament-card-top { justify-content:space-between; flex-wrap:wrap; gap:12px; }
.brawl-event-card .eyebrow,.brawl-card p,.brawl-stats small,.brawl-dialog-body p { min-width:0; overflow-wrap:anywhere; }
.brawl-event-card .tournament-card-body { align-items:flex-start; }
.brawl-event-card h3 a { color:inherit; }
.brawl-event-card h3 a:hover { color:var(--accent); }
.brawl-event-description { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; margin:12px 0 0; color:var(--muted); font-size:var(--font-secondary); line-height:1.7; }
.brawl-event-dates { display:grid; gap:12px; margin:0 0 20px; }
.brawl-event-dates > div { display:grid; grid-template-columns:auto minmax(0,1fr); gap:16px; }
.brawl-event-dates dt { color:var(--muted); }
.brawl-event-dates dd { margin:0; text-align:right; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.brawl-event-card > .btn { width:100%; margin-top:18px; }
@media(max-width:600px) {
  .home-brawl-content { padding:12px 15px; }
  .home-brawl-dates { grid-template-columns:minmax(0,1fr); gap:12px; margin:16px 0; }
  .brawl-event-grid { grid-template-columns:minmax(0,1fr); }
  .brawl-event-dates > div { grid-template-columns:minmax(0,1fr); gap:4px; }
  .brawl-event-dates dd { text-align:left; }
}
.brawl-card,.brawl-summary { padding:21px 23px; min-width:0; }
.brawl-card h2 { font-size:22px; overflow-wrap:anywhere; }
.brawl-card p,.brawl-summary p { color:var(--muted); margin:12px 0; white-space:pre-wrap; }
.brawl-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.brawl-panel-body { min-width:0; padding:0 23px 23px; }
.brawl-info,.brawl-admin { margin-top:17px; }
.brawl-info .home-brawl-dates { margin:0 0 16px; }
.brawl-rewards { margin:0; padding-top:16px; border-top:1px solid var(--line); color:var(--muted); font-size:var(--font-secondary); line-height:1.8; }
.brawl-info .event-detail-notice { margin:16px 0 0; }
.brawl-status { color:var(--muted); font-size:var(--font-secondary); }
.brawl-card > .brawl-status { color:var(--accent); }
.brawl-countdown { font-variant-numeric:tabular-nums; }
#brawl-content .event-detail-kicker { flex-wrap:wrap; }
#brawl-content .event-detail-hero-copy h1 { overflow-wrap:anywhere; }
#brawl-content .event-detail-hero-copy p { white-space:pre-wrap; }
.brawl-stats small { white-space:normal; }
.brawl-team header { display:flex; gap:12px; align-items:center; }
.brawl-team h3 { min-width:0; flex:1; font-size:18px; overflow-wrap:anywhere; }
.brawl-team.is-mine { border-color:var(--accent); }
.brawl-roster-heading { flex-wrap:wrap; }
.brawl-roster-heading > div { flex:1 1 260px; }
.brawl-roster-heading [data-toggle-power] { flex-shrink:0; white-space:nowrap; }
.brawl-team-power { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; margin-top:12px; padding-top:12px; border-top:1px solid var(--line); font-size:var(--font-secondary); }
.brawl-team-power strong { color:var(--accent); font-variant-numeric:tabular-nums; }
.brawl-team-power small,.brawl-member-power { color:var(--muted); font-size:var(--font-caption); font-weight:400; }
.brawl-team-power p { flex-basis:100%; margin:0; color:var(--muted); font-size:var(--font-caption); }
.brawl-member-power { display:block; margin-top:3px; }
.brawl-member-power b { color:var(--text); font-weight:600; font-variant-numeric:tabular-nums; }
.brawl-reserved { color:var(--muted); }
.brawl-user-results { display:grid; gap:8px; margin-bottom:14px; }
.brawl-user-result { width:100%; text-align:left; display:flex; flex-direction:column; align-items:flex-start; white-space:normal; overflow-wrap:anywhere; }
.brawl-user-result span { color:var(--muted); font-size:var(--font-caption); }
.brawl-team ul { list-style:none; padding:0; margin:16px 0; }
.brawl-team li { display:flex; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.brawl-team li strong { min-width:0; flex:1; font-size:var(--font-reading); }
.brawl-team li > span:last-child { margin-left:auto; color:var(--muted); white-space:nowrap; font-size:var(--font-caption); }
.brawl-bracket { overflow-x:auto; padding:8px 23px 23px; }
.brawl-rounds { position:relative; display:flex; gap:32px; min-width:max-content; align-items:stretch; }
.brawl-connectors { position:absolute; top:0; left:0; pointer-events:none; overflow:visible; }
.brawl-connectors path { fill:none; stroke:var(--line); stroke-width:1.5; }
.brawl-connectors path.is-complete { stroke:var(--accent); }
.brawl-round { position:relative; display:flex; flex-direction:column; min-width:240px; width:260px; }
.brawl-round-games { display:flex; flex:1; flex-direction:column; justify-content:space-around; gap:24px; }
.brawl-match { position:relative; }
.brawl-lineup { display:flex; flex-wrap:wrap; gap:5px; min-width:0; list-style:none; padding:0; margin:8px 0 0; }
.brawl-lineup .event-player-chip { min-width:0; }
.brawl-lineup-name { min-width:0; white-space:normal; overflow-wrap:anywhere; }
.brawl-lineup-empty { margin:8px 0 0; color:var(--muted); font-size:var(--font-caption); }
.brawl-match-side { border-bottom:1px solid var(--line); }
.brawl-match-side .brawl-match-row { border-bottom:0; }
.brawl-match-side .brawl-match-row > span { white-space:normal; overflow-wrap:anywhere; }
.brawl-match-side .brawl-lineup,.brawl-match-side .brawl-lineup-empty { margin:0; padding:6px 11px 10px; }
.brawl-results .event-standings-table { min-width:0; table-layout:fixed; }
.brawl-results .event-standings-table th,.brawl-results .event-standings-table td { white-space:normal; overflow-wrap:anywhere; vertical-align:top; }
.brawl-results .event-standings-table th:first-child { width:84px; }
.brawl-results .event-standings-table th:last-child { width:128px; }
.brawl-result-name { display:block; color:var(--text); }
.brawl-result-note { display:block; color:var(--muted); font-size:var(--font-caption); }
.brawl-match-actions { display:flex; flex-wrap:wrap; gap:8px; padding:10px; }
.brawl-match-actions:empty { display:none; }
.brawl-match-actions .btn { min-height:34px; padding:6px 10px; font-size:var(--font-caption); }
.brawl-bronze { width:min(100%,306px); padding:0 23px 23px; }
.brawl-dialog table { width:100%; border-collapse:collapse; }
.brawl-dialog th,.brawl-dialog td { padding:10px; text-align:left; border-bottom:1px solid var(--line); }
.brawl-dialog { width:min(720px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; overflow:hidden; }
.brawl-dialog form { display:flex; flex-direction:column; max-height:calc(100dvh - 36px); }
.brawl-dialog h2 { padding:25px 25px 0; }
.brawl-dialog-body { overflow-y:auto; min-height:0; padding:16px 25px; }
.brawl-dialog .admin-dialog-actions { flex-shrink:0; padding:16px 25px; margin:0; border-top:1px solid var(--line); }
.brawl-dialog .admin-field { margin-bottom:14px; }
.brawl-dialog .admin-field input[type=checkbox] { width:auto; }
.brawl-dialog .admin-form-error { white-space:pre-wrap; }
.brawl-poster-preview { display:block; max-width:100%; max-height:220px; object-fit:contain; margin:12px 0; border-radius:var(--radius); }
.brawl-poster-preview[hidden] { display:none; }
.brawl-dialog input[type=file] { max-width:100%; min-width:0; }
.admin-dialog.brawl-ranking-dialog { width:min(1120px,calc(100vw - 28px)); }
.brawl-rank-tools { display:flex; align-items:end; gap:12px; margin:16px 0; padding-bottom:12px; position:sticky; top:0; z-index:2; background:var(--panel); }
.brawl-rank-tools .admin-field { flex:1; margin:0; min-width:0; }
.brawl-rank-tools > .btn { flex-shrink:0; }
.brawl-rank-workspace { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:20px; align-items:start; }
.brawl-rank-pane { min-width:0; }
.brawl-rank-pane h3 { font-size:18px; margin:0 0 12px; }
.brawl-rank-tabs { display:none; }
.brawl-rank-pick { display:flex; align-items:start; gap:10px; padding:12px 0; border-bottom:1px solid var(--line); }
.brawl-rank-pick > input { width:18px; height:18px; margin:3px 0 0; flex-shrink:0; accent-color:var(--accent); }
.brawl-rank-selection { display:flex; gap:8px; align-items:center; justify-content:space-between; flex-wrap:wrap; font-size:var(--font-caption); color:var(--muted); }
.brawl-rank-selection .btn,.brawl-rank-buttons .btn,.brawl-rank-members > .btn,.brawl-rank-adjust > .btn { min-height:34px; padding:5px 9px; font-size:var(--font-caption); }
.brawl-rank-selection + .admin-field { margin:12px 0; }
.brawl-rank-group { display:grid; grid-template-columns:112px minmax(0,1fr); gap:12px; border:1px solid var(--line); border-radius:var(--radius); padding:12px; margin-bottom:10px; min-width:0; }
.brawl-rank-group > header { display:flex; flex-direction:column; align-items:start; gap:8px; padding-right:10px; border-right:1px solid var(--line); color:var(--accent); }
.brawl-rank-members { min-width:0; }
.brawl-rank-group.is-rank-drop-target { outline:2px solid var(--accent); outline-offset:1px; }
.brawl-rank-buttons { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.brawl-rank-grip { cursor:grab; }
.brawl-rank-assigned { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; padding:8px 0; min-width:0; }
.brawl-rank-assigned:first-child { padding-top:0; }
.brawl-rank-assigned > .brawl-rank-adjust { grid-column:1/-1; }
.brawl-rank-assigned + .brawl-rank-assigned { border-top:1px solid var(--line); }
.brawl-rank-identity { min-width:0; overflow-wrap:anywhere; }
.brawl-rank-identity > small { display:block; margin-top:3px; }
.brawl-rank-name > small { display:inline; margin-right:4px; }
.brawl-rank-roster { margin:6px 0; font-size:var(--font-caption); color:var(--muted); }
.brawl-rank-roster summary,.brawl-rank-adjust summary,.brawl-rank-review summary { cursor:pointer; overflow-wrap:anywhere; }
.brawl-rank-roster summary:hover,.brawl-rank-adjust summary:hover,.brawl-rank-review summary:hover { color:var(--accent); }
.brawl-rank-roster .brawl-lineup { margin-top:8px; }
.brawl-rank-adjust { margin-top:8px; font-size:var(--font-caption); }
.brawl-rank-adjust[open] { padding:10px; border:1px solid var(--line); border-radius:var(--radius); }
.brawl-rank-adjust[open] > summary { margin-bottom:10px; }
.brawl-rank-adjust .admin-field { margin:10px 0; }
.brawl-rank-review { margin:20px 0; padding:14px; border:1px solid var(--line); border-radius:var(--radius); }
.brawl-rank-review ul { margin:12px 0; padding-left:20px; overflow-wrap:anywhere; }
.brawl-ranking-dialog .admin-dialog-actions { align-items:center; flex-wrap:wrap; }
.brawl-ranking-dialog [data-ranking-summary] { flex:1 1 230px; margin:0; font-size:var(--font-caption); color:var(--muted); overflow-wrap:anywhere; }
@media(min-width:901px) {
  .brawl-rank-workspace[data-empty-pool=true] { grid-template-columns:minmax(0,1fr); }
  .brawl-rank-workspace[data-empty-pool=true] #rank-pool { display:none; }
}
@media(max-width:900px) {
  .brawl-rank-workspace { grid-template-columns:minmax(0,1fr); }
  .brawl-rank-tabs { display:flex; flex-shrink:0; margin:8px 16px 0; }
  .brawl-rank-tabs .event-detail-tab { flex:1; padding:10px 4px; font-size:var(--font-caption); }
  .brawl-ranking-dialog form[data-rank-view=pool] #rank-ranked,.brawl-ranking-dialog form[data-rank-view=ranked] #rank-pool { display:none; }
  .brawl-rank-tools { align-items:end; }
  .brawl-rank-undo-label,.brawl-rank-grip,.brawl-rank-drag-hint { display:none; }
  .brawl-rank-group { grid-template-columns:minmax(0,1fr); }
  .brawl-rank-group > header { flex-direction:row; align-items:center; justify-content:space-between; padding:0 0 8px; border-right:0; border-bottom:1px solid var(--line); }
  .brawl-rank-assigned { grid-template-columns:minmax(0,1fr); }
}
.brawl-table-wrap { overflow-x:auto; }
.brawl-audit { margin-top:16px; padding-top:16px; border-top:1px solid var(--line); }
.brawl-audit li { margin:10px 0; overflow-wrap:anywhere; }
.brawl-audit pre { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; color:var(--muted); }
@media(max-width:600px) {
  .brawl-ranking-dialog h2 { padding:18px 16px 0; }
  .brawl-ranking-dialog .brawl-dialog-body { padding:12px 16px; }
  .brawl-ranking-dialog .admin-dialog-actions { padding:12px 16px; }
  .brawl-ranking-dialog [data-ranking-summary] { flex-basis:100%; }
  .brawl-list,.brawl-teams { grid-template-columns:1fr; }
  .brawl-card,.brawl-summary { padding:17px 15px; }
  .brawl-panel-body { padding:0 15px 17px; }
  .brawl-bracket { padding:8px 15px 17px; }
  .brawl-bronze { padding:0 15px 17px; }
  .brawl-round { width:240px; }
  .brawl-results .event-standings-table th,.brawl-results .event-standings-table td { padding:11px 8px; }
  .brawl-results .event-standings-table th:first-child { width:52px; }
  .brawl-results .event-standings-table th:last-child { width:76px; }
  .brawl-dialog h2 { padding:19px 19px 0; }
  .brawl-dialog-body,.brawl-dialog .admin-dialog-actions { padding:16px 19px; }
}
