.league-region { margin-top: .8rem; }
.league-panel h2, .league-panel h3 { margin-block: .4rem .7rem; }
.league-panel > label { display: grid; gap: .3rem; margin-block: .8rem; }
.league-form { display: flex; gap: .5rem; align-items: end; margin-block: .7rem; }
.league-form label { display: grid; flex: 1; min-width: 0; gap: .3rem; font-size: .85rem; }
.league-form input, .league-form select, .league-member select, [data-league-ranking] select { min-width: 0; width: 100%; min-height: 40px; }
.league-names, .league-participants { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.league-member { display: grid; grid-template-columns: minmax(0, 1fr) minmax(5rem, .8fr) auto; gap: .45rem; align-items: center; border: 1px solid #d7d8dc; padding: .6rem; border-radius: 10px; }
.league-identity { min-width: 0; }
.league-identity strong, .league-identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.league-identity small { font-size: .75rem; }
[data-league-ranking] { margin-top: .75rem; }
[data-league-ranking] label { display: flex; align-items: center; gap: .6rem; }
[data-league-ranking] select { width: auto; max-width: 100%; }
.league-region button { white-space: nowrap; }
@media (max-width: 700px) { .league-names, .league-participants { grid-template-columns: 1fr; } }
