.tournament-bracket .match-card{display:flex;flex-direction:column;min-width:0;overflow:hidden}
.tournament-bracket .tournament-match-side{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0}
.tournament-match-identity,.tournament-match-roster{min-width:0}
.tournament-match-roster{display:grid;gap:10px}
.tournament-match-player{display:flex;align-items:center;gap:10px;min-width:0;color:inherit;text-decoration:none}
.tournament-match-player:hover{text-decoration:none}
.tournament-match-avatar{width:40px;height:40px;flex:0 0 40px;border-radius:50%;object-fit:cover;border:1px solid #af8046;background:#111d28;box-shadow:0 0 0 3px #f1b55c0b}
.tournament-avatar-fallback{display:grid;place-items:center;font-weight:700;color:#e9bc76}
.tournament-bracket .tournament-match-name{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.45;font-weight:700;animation:tournament-name-glow 5.5s ease-in-out infinite}
.tournament-bracket .match-card:nth-child(even) .tournament-match-name{animation-delay:-2.75s}
.tournament-team-name{display:block;margin:0 0 14px;color:#e6bf80;font-size:1.03rem}
.tournament-bracket .tournament-match-score{font-variant-numeric:tabular-nums;font-size:1.75rem;color:#f0d6a1;min-width:26px;text-align:center}
.tournament-bracket .match-status{margin-top:auto}
.tournament-match-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #b08b4833}
.tournament-match-actions .btn{width:100%;justify-content:center;font-size:.74rem;white-space:normal;text-align:center;line-height:1.5}
.participant-share{margin:18px 0}
.participant-share>summary{cursor:pointer;width:fit-content;max-width:100%}
.participant-share[open]>summary{margin-bottom:18px}
.participant-entry-share{display:inline-block;margin-top:12px}
.tournament-bracket .tournament-match-player:focus-visible{outline:2px solid #f5c778;outline-offset:5px;border-radius:5px}
@keyframes tournament-name-glow{0%,100%{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 14px currentColor}}
html[data-motion='reduce'] .tournament-bracket .tournament-match-name{animation:none}
@media(prefers-reduced-motion:reduce){.tournament-bracket .tournament-match-name{animation:none}}
@media(max-width:540px){.tournament-bracket .match-grid{grid-template-columns:minmax(0,1fr)}.tournament-bracket .match-card{padding:18px}.tournament-match-avatar{width:36px;height:36px;flex-basis:36px}}
