/* Tournament management: directory and editor chrome, independent of board geometry. */
.tournament-library{max-width:1280px;margin:auto}.tournament-library-hero{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:36px 40px;background:radial-gradient(ellipse at right top,#38798266,transparent 65%),#15364b;border:1px solid #2c5067;border-radius:20px;color:#ccdee8;margin-bottom:28px}.tournament-library-hero .eyebrow{color:#98dfcb}.tournament-library-hero h2{color:#fff;font-size:clamp(27px,3vw,39px);line-height:1.45;margin-bottom:14px}.tournament-library-hero p:not(.eyebrow){font-size:14px;max-width:540px}.tournament-library-hero .button{background:#c9f1df;border-color:#c9f1df;color:#194c41}.tournament-library-guide{display:flex;flex-direction:column;gap:14px;align-items:flex-start;padding:28px;border-left:1px solid #ffffff2b;max-width:300px}.tournament-library-guide>svg{width:48px;height:48px;color:#e6c982}.tournament-library-guide strong{font-size:16px;color:#fff}.tournament-library-guide span{font-size:12px;line-height:1.9}.tournament-library-tabs{display:flex;gap:8px;border-bottom:1px solid #d6e3eb;margin-bottom:26px}.tournament-library-tabs>a{display:flex;gap:8px;align-items:center;min-height:52px;padding:12px 20px;border-radius:10px 10px 0 0;color:#61798a;font-size:14px}.tournament-library-tabs>a[aria-current=page]{background:white;color:#175b60;box-shadow:inset 0 -3px #16877b;font-weight:700}.tournament-library-results{padding:28px;border:1px solid #dae5ed;border-radius:16px;background:white;box-shadow:0 5px 22px #193d4f05}.tournament-library-toolbar{display:flex;gap:24px;align-items:center;justify-content:space-between}.tournament-library-toolbar h2{font-size:22px;margin:0}.tournament-library-toolbar .eyebrow{font-size:10px;margin-bottom:6px}.tournament-library-search{display:flex;gap:8px;flex:0 1 420px}.tournament-library-search input{flex:1;min-width:0;width:100%;border:1px solid #cbdce6;border-radius:9px;padding:12px 14px;background:#f6f9fb;font-size:13px}.tournament-library-search button{flex-shrink:0}.tournament-library-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:22px 0 16px;color:#607989;font-size:12px;overflow-wrap:anywhere}.tournament-library-meta p{margin:0}.tournament-library-meta strong{font-size:19px;color:#264c62}.tournament-library-meta span{margin-left:6px}.tournament-managed-list{display:grid;gap:12px}.tournament-managed-card{display:flex;align-items:center;gap:20px;padding:22px;border:1px solid #dae5ed;border-radius:12px;min-width:0;background:#fff}.tournament-managed-card:hover{border-color:#a8c8d5;background:#fbfdfd}.tournament-managed-icon{padding:16px;background:#edf5f8;border-radius:14px;display:flex;color:#24748a;flex-shrink:0}.tournament-managed-icon svg{width:27px;height:27px}.tournament-managed-info{flex:1;min-width:0}.tournament-format{display:inline-flex;background:#eaf3ef;color:#366c5c;border-radius:6px;padding:3px 9px;font-size:10px;font-weight:650}.tournament-managed-info h3{font-size:17px;margin:8px 0;line-height:1.7;overflow-wrap:anywhere}.tournament-managed-info h3 a{color:#20465c}.tournament-managed-info p{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:#6a7e8e;margin:0}.tournament-managed-info p svg{width:14px;height:14px}.tournament-managed-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex-shrink:0;min-width:144px}.tournament-managed-actions .button{font-size:13px;min-height:46px}.tournament-view-link{font-size:12px;padding:8px;text-align:center;color:#597689}.tournament-library-empty{text-align:center;padding:44px 20px;background:#f6f9fb;border:1px dashed #c8dbe6;border-radius:12px}.tournament-library-empty>svg{width:48px;height:48px;color:#7d9fae;margin-bottom:18px}.tournament-library-empty h3{font-size:20px}.tournament-library-empty p{font-size:14px;color:#617a89}.tournament-discovery{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:24px 8px;font-size:12px;color:#657e8d}.tournament-discovery>a{min-height:44px;display:inline-flex;align-items:center;gap:12px}.tournament-help{margin:0 0 24px;border:1px solid #cfdfe9;border-radius:12px;background:#f6fafc}.tournament-help>summary{cursor:pointer;padding:16px 20px;font-size:13px;color:#345f77}.tournament-help>div{padding:0 20px 16px;font-size:13px;color:#5c7485}.tournament-help p:last-child{margin:0}
.mypage-content .tournament-operation-header{background:linear-gradient(115deg,#17374c,#25546b);border:1px solid #2c5268;border-radius:16px;padding:28px;color:#c9dee8;gap:24px}.tournament-operation-header h2{color:white;font-size:clamp(23px,2.7vw,32px);line-height:1.5}.tournament-operation-header .eyebrow{color:#9de0ca;font-size:11px;letter-spacing:.08em}.tournament-operation-header p:last-child{color:#c9dee8;font-size:12px}.tournament-operation-header>.button{background:white;border-color:white;color:#234f64;flex-shrink:0}.tournament-operation-nav{padding:12px;background:#fff;border:1px solid #dce6ed;border-radius:12px;margin:14px 0}.tournament-operation-nav>a{min-height:44px;display:inline-flex;align-items:center;padding:10px 14px;font-size:13px}.tournament-operation-nav .management-utility>summary{min-height:44px;padding:10px 14px;background:#edf4f8;border-radius:8px;cursor:pointer;font-size:12px}.tournament-operation-nav .management-utility>div{max-width:calc(100vw - 48px);overflow-wrap:anywhere}.tournament-support-settings{margin:0 0 24px;border:1px solid #d6e3ec;border-radius:12px;background:#f7fafc}.tournament-support-settings>summary{display:flex;gap:12px;align-items:center;cursor:pointer;min-height:56px;padding:14px 18px;list-style:none;color:#3a6077;font-size:13px}.tournament-support-settings>summary::-webkit-details-marker{display:none}.tournament-support-settings>summary:after{content:'＋';margin-left:auto;font-size:18px}.tournament-support-settings[open]>summary:after{content:'−'}.tournament-support-settings>summary small{font-size:11px;color:#698292}.tournament-support-settings>div{padding:0 18px 18px}.tournament-support-settings .tour-plan-limits,.tournament-support-settings .tour-collaboration{background:white;border:1px solid #dce6ed;margin:12px 0 0;padding:20px}.tournament-support-settings h2{font-size:16px}.tournament-support-settings p{font-size:13px}
.mypage-content:has(.tournament-operation-header) .manage-toolbar{padding:20px;border:1px solid #dbe6ed;border-radius:12px;background:#f5f9fb;gap:18px;margin-bottom:20px}.mypage-content:has(.tournament-operation-header) .manage-toolbar .section-title{font-size:22px;margin-bottom:8px}.mypage-content:has(.tournament-operation-header) .manage-toolbar p{font-size:13px;color:#5a7485}.mypage-content:has(.tournament-operation-header) .operation-panel{border:1px solid #dce6ed;border-radius:12px;box-shadow:none}.mypage-content:has(.tournament-operation-header) .operation-actions,.mypage-content:has(.tournament-operation-header) .manage-toolbar .inline-actions{display:flex;flex-wrap:wrap;gap:10px}.mypage-content:has(.tournament-operation-header) .operation-actions>.btn,.mypage-content:has(.tournament-operation-header) .manage-toolbar .inline-actions>.btn{min-height:44px;background:white;color:#315d75;border:1px solid #c9dce7}.mypage-content:has(.tournament-operation-header) .modal-box,.mypage-content:has(.tournament-operation-header) .match-modal{border-radius:16px;overflow:hidden}.mypage-content:has(.tournament-operation-header) .modal-header,.mypage-content:has(.tournament-operation-header) .match-modal-header{background:#1b4058;color:white}
@media(max-width:1000px){.tournament-library-guide{display:none}.tournament-library-toolbar{align-items:stretch;flex-direction:column;gap:18px}.tournament-library-search{flex-basis:auto}.tournament-managed-card{gap:14px;padding:18px}.tournament-managed-icon{padding:12px}}
@media(max-width:600px){.tournament-library-hero{padding:26px 22px;border-radius:16px}.tournament-library-hero h2{font-size:29px}.tournament-library-tabs{gap:0}.tournament-library-tabs>a{flex:1;justify-content:center;padding:12px 8px;font-size:12px}.tournament-library-tabs svg{display:none}.tournament-library-results{padding:18px 14px}.tournament-library-toolbar h2{font-size:20px}.tournament-managed-card{display:grid;grid-template-columns:42px minmax(0,1fr);padding:16px;gap:12px}.tournament-managed-icon{padding:10px;align-self:start}.tournament-managed-icon svg{width:22px;height:22px}.tournament-managed-info h3{font-size:16px}.tournament-managed-actions{grid-column:1/-1;flex-direction:row;align-items:center;padding-top:14px;border-top:1px solid #e2ebf0}.tournament-managed-actions>*{flex:1}.tournament-managed-actions .button{padding-inline:10px}.tournament-view-link{font-size:11px}.tournament-library-empty{padding:30px 16px}.tournament-operation-header{flex-direction:column;align-items:flex-start}.mypage-content .tournament-operation-header{padding:22px}.tournament-operation-nav{gap:6px}.tournament-operation-nav>a{padding:10px;font-size:12px}.tournament-operation-nav .management-utility{width:100%;margin:0}.tournament-support-settings>summary small{display:none}.tournament-support-settings>div{padding:0 12px 12px}.mypage-content:has(.tournament-operation-header) .manage-toolbar{padding:16px}.mypage-content:has(.tournament-operation-header) .operation-actions>.btn,.mypage-content:has(.tournament-operation-header) .manage-toolbar .inline-actions>.btn{flex:1 1 140px;font-size:12px}.tournament-discovery{gap:8px 18px}.tournament-discovery>span{flex-basis:100%}}

.mypage-content:has(.league-management) { max-width: none; min-width: 0; }
.league-management, .league-management .card-block { min-width: 0; }
.league-management .league-wrap { max-width: 100%; overflow-x: auto; }
.league-management .league-table { width: 100%; table-layout: fixed; }
.league-management .league-table .summary-column { width: 64px; }
.league-management .league-table td, .league-management .btn { white-space: nowrap; }
.league-management .league-match { white-space: normal; overflow-wrap: anywhere; }
.league-management .league-wrap:focus-visible { outline: 3px solid #218578; outline-offset: 3px; }

.league-management .league-score-edit { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; max-width: 100%; padding: 4px 8px; border: 0; border-radius: 6px; background: transparent; box-shadow: none; color: #087d95; font: inherit; cursor: pointer; }
.league-management .league-score-edit svg { flex-shrink: 0; }
.league-management .league-score-edit:hover { background: #edf6f8; }
.league-management .league-score-edit:focus-visible { outline: 2px solid #087d95; outline-offset: 2px; }
.league-management .cell-actions { justify-content: center; }

.league-management .league-team-edit { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; max-width: 100%; padding: 4px 8px; border: 0; border-radius: 6px; background: transparent; box-shadow: none; color: #087d95; font: inherit; cursor: pointer; }
.league-management .league-team-edit .team-name { min-width: 0; }
.league-management .league-team-edit svg { flex-shrink: 0; }
.league-management .league-team-edit:hover { background: #edf6f8; }
.league-management .league-team-edit:focus-visible { outline: 2px solid #087d95; outline-offset: 2px; }

#settingsModal .modal-box { width: min(820px, 100%); }
#settingsModal .settings-mode { display: flex; gap: 8px; flex-wrap: wrap; padding: 8px; background: #eef4f7; border-radius: 10px; margin-bottom: 20px; }
#settingsModal .settings-mode label { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; min-height: 44px; box-sizing: border-box; border: 1px solid transparent; border-radius: 7px; cursor: pointer; }
#settingsModal .settings-mode label:has(input:checked) { background: #fff; border-color: #b8d2dc; color: #086d82; }
#settingsModal .league-settings-section { border: 1px solid #d5e3e8; border-radius: 10px; margin: 0 0 20px; padding: 16px 18px 20px; min-width: 0; }
#settingsModal .league-settings-section legend { padding: 0 8px; width: auto; font-size: 16px; font-weight: 700; color: #173b50; }
#settingsModal .league-settings-section > p { margin: 0 0 16px; font-size: 12px; color: #607a89; }
#settingsModal .league-settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; align-items: start; }
#settingsModal .league-settings-grid > label, #settingsModal .league-point-settings label { display: grid; gap: 7px; min-width: 0; font-size: 13px; font-weight: 650; }
#settingsModal .league-settings-grid > label:has([name=title]), #settingsModal .league-settings-grid > label:has(textarea), #settingsModal .league-settings-grid > label:has([name=place]) { grid-column: 1 / -1; }
#settingsModal .league-settings-grid .form-control, #settingsModal .league-point-settings .form-control { width: 100%; min-width: 0; box-sizing: border-box; min-height: 44px; margin: 0; padding: 10px 12px; font-size: 16px; }
#settingsModal .league-settings-grid small { font-size: 11px; font-weight: 400; }
#settingsModal .league-point-settings { margin-top: 16px; padding: 14px; border-radius: 8px; background: #f0f6f8; }
#settingsModal .league-point-settings > span { display: block; font-size: 12px; margin-bottom: 10px; color: #526b7b; }
#settingsModal .league-point-settings > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
#settingsModal .league-point-settings input { text-align: center; }
#settingsModal [hidden] { display: none !important; }
#settingsModal .modal-body > .actions { position: sticky; bottom: -24px; padding: 14px 0; margin-top: 12px; border-top: 1px solid #d5e3e8; background: #fff; z-index: 2; }
@media(max-width:540px) { #settingsModal .modal-body { padding: 16px; } #settingsModal .league-settings-section { padding: 12px; } #settingsModal .league-settings-grid { grid-template-columns: minmax(0,1fr); } #settingsModal .modal-body > .actions { bottom: -16px; } }

#rankModal .modal-box { width: min(1000px,100%); }
#rankModal .rank-help { margin: 0 0 16px; color: #526b7b; font-size: 13px; }
.rank-picker { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr); gap: 20px; }
.rank-picker section { min-width: 0; }
.rank-picker h3 { font-size: 15px; margin: 0 0 10px; }
.rank-picker h3 small { font-size: 11px; color: #627b89; font-weight: 400; }
.rank-picker [data-rank-teams], .rank-picker [data-rank-slots] { display: grid; gap: 8px; max-height: 52vh; overflow-y: auto; padding: 3px; }
.rank-picker button { cursor: pointer; }
.rank-picker .rank-source-team { min-height: 44px; padding: 10px 12px; border: 1px solid #c6dbe3; border-radius: 7px; background: #fff; color: #087d95; text-align: left; overflow-wrap: anywhere; }
.rank-picker .rank-source-team:disabled { background: #edf0f2; color: #87939b; border-color: #e0e5e8; cursor: default; }
.rank-slot { display: flex; align-items: center; gap: 6px; min-height: 54px; padding: 8px; border: 1px solid #cfdee5; border-radius: 8px; background: #f6fafb; font-size: 12px; }
.rank-slot input { width: 48px; min-width: 0; padding: 6px 2px; height: 36px; text-align: center; }
.rank-slot-name { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.rank-slot-name[draggable=true] { cursor: grab; font-weight: 650; }
.rank-slot-actions { display: flex; gap: 3px; }
.rank-slot-actions button { min-width: 32px; min-height: 40px; border: 1px solid #bed1da; border-radius: 5px; background: #fff; color: #306174; }
.rank-slot-actions button:disabled { opacity: .35; cursor: default; }
.rank-slot.drag-over { border-color: #087d95; background: #e0f2f5; }
.rank-picker :is(button,input):focus-visible { outline: 3px solid #218578; outline-offset: 1px; }
@media(max-width:600px) { .rank-picker { gap: 8px; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); } .rank-slot { flex-wrap: wrap; } .rank-slot-actions { width: 100%; justify-content: flex-end; } .rank-picker .rank-source-team { padding: 8px; font-size: 12px; } }

#settingsModal .league-venue-editor { grid-column: 1 / -1; display: grid; gap: 8px; min-width: 0; }
#settingsModal .venue-heading { font-size: 13px; font-weight: 650; }
#settingsModal [data-venue-rows] { display: grid; gap: 8px; }
#settingsModal .venue-row { display: flex; gap: 8px; align-items: center; }
#settingsModal .venue-row input { flex: 1; min-width: 0; }
#settingsModal .venue-row button { min-width: 40px; min-height: 44px; border: 1px solid #c6d7df; border-radius: 7px; background: #fff; color: #526b7b; cursor: pointer; }
#settingsModal [data-add-venue] { justify-self: start; min-height: 44px; }
#settingsModal .league-venue-editor small { font-size: 12px; color: #607a89; }

#rankModal .rank-import-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; margin-bottom: 16px; }
#rankModal .rank-import-actions small { font-size: 12px; color: #607a89; }

#rankModal .match-modal{width:min(980px,100%);border-radius:16px}
#rankModal .match-modal-header{background:#1c4054;padding:20px 24px}

.management-context-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.management-context-links .button{min-height:44px}@media(max-width:600px){.management-context-links{width:100%}.management-context-links .button{flex:1;justify-content:center}}

/* Keep URL labels, controls and help text on separate lines. */
.tournament-operation-nav .management-utility[open]>summary{background:#dfeef1;color:#174b58}
.tournament-operation-nav .management-utility>.management-sharing-panel{top:calc(100% + 8px);width:440px;max-width:calc(100vw - 48px);box-sizing:border-box;padding:20px;box-shadow:0 12px 32px #17374c18;display:grid;gap:20px;line-height:1.6}
.management-sharing-field{display:grid;gap:8px;min-width:0}
.management-sharing-label{display:block;margin:0;font-size:13px;font-weight:700;color:#25495b}
.tournament-operation-nav .management-sharing-field>.management-sharing-url{display:block;min-width:0;margin:0;padding:12px;border:1px solid #d5e5ed;border-radius:8px;background:#eef7fb;color:#006b8b;font-size:13px;line-height:1.6;overflow-wrap:anywhere;white-space:normal}
.tournament-operation-nav .management-sharing-input{display:block;box-sizing:border-box;width:100%;max-width:none;min-width:0;height:44px;margin:0;padding:10px 12px;font-size:13px;line-height:22px;background:#f7f9fb;border:1px solid #bdcfd9;border-radius:8px;color:#25495b}
.tournament-operation-nav .management-sharing-hint{margin:0;font-size:12px;line-height:1.8;color:#597282}
.tournament-operation-nav .management-sharing-panel>.danger-zone{margin:0;padding:12px 14px;border:1px solid #f0ced6;border-radius:10px;background:#fff5f6}
.management-sharing-panel .danger-zone>summary{cursor:pointer;min-height:24px;color:#963d50;font-size:13px}
.management-sharing-panel :is(a,input,summary,button):focus-visible,.management-utility>summary:focus-visible{outline:3px solid #008aa4;outline-offset:3px}
@media(max-width:800px){.tournament-operation-nav .management-utility{width:100%;margin-left:0}.tournament-operation-nav .management-utility>.management-sharing-panel{position:static;width:100%;max-width:none;margin-top:10px;padding:16px;box-shadow:none}}

/* Related-tournament management is reached from the operation buttons. */
#relatedTournaments{scroll-margin-top:120px}

/* Header actions share one compact area instead of a separate empty toolbar. */
.tournament-operation-header>div:first-child{flex:1;min-width:0;overflow-wrap:anywhere}
.tournament-operation-header>.management-context-links{flex:0 1 auto;justify-content:flex-end;padding:0;margin:0;border:0;border-radius:0;background:transparent;min-width:0}
.tournament-operation-header .management-context-links>.button{background:#fff;border:1px solid #fff;color:#234f64;white-space:nowrap}
.tournament-operation-header .management-utility{margin:0}
.tournament-operation-header .management-utility>summary{box-sizing:border-box;border:1px solid #71909f;background:#ffffff10;color:#e3eef3;white-space:nowrap}
.tournament-operation-header .management-sharing-panel{color:#25495b;text-align:left}
.tournament-operation-header .management-sharing-panel .management-sharing-hint{color:#597282;font-size:12px;margin:0}
@media(max-width:800px){.tournament-operation-header>.management-context-links{width:100%;justify-content:flex-start}.tournament-operation-header .management-context-links>.button{flex:0 1 auto}.tournament-operation-header .management-utility{width:100%}.tournament-operation-header .management-utility>summary{width:fit-content}.tournament-operation-header .management-sharing-panel{max-width:100%}}

.tournament-plan-status{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 18px;padding:0 4px;color:#526e7e;font-size:12px;line-height:1.7}
.tournament-plan-status strong{color:#315d68;font-size:12px}.tournament-plan-status small{font-size:11px;color:#627b89}
@media(max-width:600px){.tournament-plan-status{gap:3px 10px}.tournament-plan-status small{flex-basis:100%}}

/* Operations are grouped by purpose, with predictable button columns. */
.mypage-content:has(.tournament-operation-header) .manage-toolbar:has(.management-operation-groups){display:block}
.management-operation-groups{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,4fr);gap:20px;margin:16px 0 20px;container-type:inline-size}
.management-operation-group{min-width:0}
.management-operation-group h3{font-size:12px;font-weight:700;color:#627b89;margin:0 0 8px}
.management-operation-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.management-operation-group:last-child .management-operation-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}
.mypage-content .management-operation-buttons>.btn{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:44px;padding:10px 8px;border:1px solid #c9dce7;border-radius:8px;background:#fff;color:#315d75;font-size:13px;line-height:1.4;white-space:normal;text-align:center;text-decoration:none}
.management-operation-buttons .ui-icon{width:17px;height:17px;flex-shrink:0;color:#4b7989}
.mypage-content .management-operation-buttons>.btn:hover{background:#edf6f8;border-color:#8cb7c6}
.management-operation-buttons>.btn:focus-visible{outline:3px solid #168397;outline-offset:2px}
@media(max-width:1250px){.management-operation-groups{grid-template-columns:minmax(0,1fr);gap:16px}}
@media(max-width:600px){.management-operation-group:last-child .management-operation-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.mypage-content .management-operation-buttons>.btn{font-size:12px;gap:5px;padding:9px 5px}.management-operation-group:first-child .btn{flex-direction:column}}

.league-management-heading{display:flex;align-items:center;gap:10px;position:relative}
.mypage-content .league-management-heading .section-title{margin:0}
.league-management-help>summary{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #b9cfdc;border-radius:50%;background:white;color:#416b7f;font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.league-management-help>summary::-webkit-details-marker{display:none}
.league-management-help>summary:focus-visible{outline:3px solid #168397;outline-offset:3px}
.league-management-help>div{position:absolute;top:calc(100% + 8px);left:0;z-index:80;width:min(480px,100%);box-sizing:border-box;padding:18px 20px;border:1px solid #ccdfe8;border-radius:12px;background:white;box-shadow:0 10px 30px #17374c20;font-size:13px;line-height:1.8;color:#315368}
.league-management-help ul{padding-left:20px;margin:8px 0 0}.league-management-help li+li{margin-top:8px}
@media(max-width:600px){.league-management-heading:has(.league-management-help[open]){flex-wrap:wrap}.league-management-help[open]{flex:1 1 100%}.league-management-help>div{position:static;width:100%;margin-top:8px;box-shadow:none}}

/* Placement switches use native checkboxes for keyboard and form submission. */
#settingsModal .placement-settings{grid-column:1/-1;min-width:0;margin:4px 0 0;padding:18px;border:1px solid #d6e3eb;border-radius:10px;background:#f8fbfd}
#settingsModal .placement-settings legend{float:none;width:auto;margin:0;padding:0 6px;font-size:15px;font-weight:700;color:#25495b}
#settingsModal .placement-settings-help{margin:0;font-size:12px;line-height:1.8;color:#587181}
#settingsModal .placement-settings-list{display:grid;grid-template-columns:1fr;gap:4px;margin:14px 0}
#settingsModal .placement-switch-row{display:flex;align-items:center;justify-content:flex-start;gap:20px;width:fit-content;max-width:100%;margin:0;cursor:pointer;min-height:44px}
#settingsModal .placement-switch-name{margin:0;font-size:14px;white-space:nowrap}
#settingsModal .placement-switch-control{position:relative;display:inline-flex;align-items:center;gap:8px;flex-shrink:0;min-height:44px;margin:0}
#settingsModal .placement-switch-control input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
#settingsModal .placement-switch-track{position:relative;width:40px;height:24px;box-sizing:border-box;border:1px solid #8195a2;border-radius:20px;background:#8195a2}
#settingsModal .placement-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}
#settingsModal .placement-switch-control input:checked~.placement-switch-track{background:#0085a6;border-color:#0085a6}
#settingsModal .placement-switch-control input:checked~.placement-switch-track::after{transform:translateX(16px)}
#settingsModal .placement-switch-control input:focus-visible~.placement-switch-track{outline:3px solid #1d617c;outline-offset:3px}
#settingsModal .placement-switch-state{min-width:2em;font-size:12px;color:#526b7b}
#settingsModal .placement-switch-on,#settingsModal .placement-switch-control input:checked~.placement-switch-state .placement-switch-off{display:none}
#settingsModal .placement-switch-control input:checked~.placement-switch-state .placement-switch-on{display:inline;color:#00718e}
@media(prefers-reduced-motion:reduce){#settingsModal .placement-switch-track::after{transition:none}}

/* Keep settings actions outside the scrolling fields in both tournament formats. */
#settingsModal > .match-modal,#settingsModal > .modal-box{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 48px)}
#settingsModal .match-modal-header,#settingsModal .modal-header{flex-shrink:0}
#settingsModal .settings-modal-form{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0;margin:0}
#settingsModal .settings-modal-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:24px;scroll-padding-block:24px}
#settingsModal .settings-modal-form > .settings-modal-footer{position:static;flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:0;padding:16px 24px;border-top:1px solid #d5e3e8;background:#fff}
@media(max-width:640px){#settingsModal > .match-modal,#settingsModal > .modal-box{max-height:calc(100dvh - 24px)}#settingsModal .settings-modal-scroll{padding:18px;scroll-padding-block:18px}#settingsModal .settings-modal-form > .settings-modal-footer{padding:12px 18px;padding-bottom:max(12px,env(safe-area-inset-bottom))}}
#settingsModal .venue-row{min-width:0}#settingsModal .venue-row button{flex:0 0 44px}#settingsModal .league-venue-editor small{overflow-wrap:anywhere}#settingsModal .league-venue-editor :focus-visible{outline:2px solid #1670a0;outline-offset:2px}
