.competition-creator-modal{width:min(980px,calc(100vw - 32px))}
.competition-creator-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0 0 22px;padding:0;list-style:none}
.competition-creator-steps li{display:flex;align-items:center;gap:7px;min-width:0;padding:8px;border-bottom:2px solid var(--line);color:var(--muted);font-size:10px}
.competition-creator-steps li span{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--gray-bg);font-weight:850}
.competition-creator-steps li b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competition-creator-steps li.active{border-color:var(--accent);color:var(--accent-ink)}.competition-creator-steps li.active span,.competition-creator-steps li.done span{background:var(--accent);color:#fff}
.competition-creator-pane{min-width:0}.competition-creator-heading{margin-bottom:18px}.competition-creator-heading .kicker{margin:0;color:var(--accent)}.competition-creator-heading h2{margin:4px 0 5px;font-size:22px}.competition-creator-heading p:last-child{margin:0;color:var(--muted);font-size:12px}
.competition-type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:720px}
.competition-type-options button{display:grid;gap:4px;min-height:118px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);text-align:left}.competition-type-options button:hover,.competition-type-options button.selected{border-color:var(--accent);background:var(--accent-soft-bg)}.competition-type-options button span{color:var(--accent-ink);font-size:11px;font-weight:900;letter-spacing:.08em}.competition-type-options button strong{font-size:16px}.competition-type-options button small{color:var(--muted)}
.competition-creator-form fieldset{min-width:0;margin:0;padding:0;border:0}.competition-creator-form legend,.competition-creator-form label>span{margin-bottom:6px;color:var(--muted-2);font-size:12px;font-weight:700}.competition-segmented{display:flex;gap:5px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.competition-segmented label{flex:1}.competition-segmented input{position:absolute;opacity:0;pointer-events:none}.competition-segmented span{display:grid;place-items:center;min-height:38px;margin:0!important;padding:7px;border-radius:7px;text-align:center}.competition-segmented input:checked+span{background:var(--panel);color:var(--accent-ink);box-shadow:0 1px 5px rgba(10,30,50,.1)}
.competition-team-counter{display:flex;align-items:center;gap:8px;margin-bottom:10px}.competition-team-counter b{font-size:22px}.competition-team-counter span{margin-right:auto;color:var(--muted);font-size:11px}.competition-team-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-height:390px;overflow:auto;border:1px solid var(--line);border-radius:11px;background:var(--panel-2)}.competition-team-picker>label{display:flex;align-items:center;gap:8px;min-width:0;padding:10px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);cursor:pointer}.competition-team-picker>label:has(input:checked){background:var(--accent-soft-bg)}.competition-team-picker>label>span{min-width:0}.competition-team-picker .team-identity-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.competition-preview{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:480px;overflow:auto;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.competition-preview.is-review{max-height:330px}.competition-redraw{position:sticky;z-index:2;top:0;grid-column:1/-1;justify-self:end}.competition-redraw-message{grid-column:1/-1;margin:0;text-align:right}.competition-preview-round,.competition-preview-groups>section{min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.competition-preview-round h4,.competition-preview-groups h4{margin:0 0 9px;color:var(--accent-ink);font-size:11px;text-transform:uppercase}.competition-preview-round>div{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:5px;min-height:34px;border-top:1px solid var(--line-soft);font-size:11px}.competition-preview-round>div span:last-child{text-align:right}.competition-preview-round>div b{text-align:center;color:var(--muted);font-size:9px}.competition-preview-groups{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.competition-preview-groups section>div{padding:6px 0;border-top:1px solid var(--line-soft);font-size:11px}.competition-preview-subtitle{grid-column:1/-1;margin:8px 0 0;font-size:14px}
.competition-create-summary{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;margin-bottom:14px;padding:14px;border:1px solid var(--accent-soft-line);border-radius:12px;background:var(--accent-soft-bg)}.competition-create-mark{grid-row:1/3;width:58px;height:58px}.competition-create-mark img{width:100%;height:100%;object-fit:contain}.competition-create-summary h3{margin:5px 0 2px}.competition-create-summary p{margin:0;color:var(--muted);font-size:11px}.competition-create-summary dl{display:grid;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:4px 0 0}.competition-create-summary dl div{padding:8px;border-radius:8px;background:var(--panel)}.competition-create-summary dt{color:var(--muted);font-size:9px;text-transform:uppercase}.competition-create-summary dd{margin:3px 0 0;font-size:12px;font-weight:800}
.competition-field-hint{grid-column:1/-1;margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.competition-fixture-panel{min-width:0;margin:0 0 14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.competition-fixture-panel legend{padding:0 6px;color:var(--muted-2);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.competition-locked-rounds{display:grid;gap:10px;margin-top:12px}
.competition-locked-round{display:grid;gap:8px;padding:11px;border:1px solid var(--accent-soft-line);border-radius:10px;background:var(--panel)}
.competition-locked-round header{display:flex;align-items:end;gap:10px}.competition-locked-round header label{display:grid;gap:4px;font-size:11px}.competition-locked-round header label span{color:var(--muted);font-weight:700}.competition-locked-round header .btn{margin-left:auto}
.competition-locked-pair{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr) 34px;align-items:center;gap:6px}.competition-locked-pair b{text-align:center;color:var(--muted);font-size:10px}
.competition-group-assign{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}.competition-group-assign label{display:grid;grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:8px;font-size:12px}.competition-group-assign label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.competition-preview-error{grid-column:1/-1;padding:14px;border:1px solid var(--danger,#c0392b);border-radius:10px;background:var(--panel);color:var(--danger,#c0392b);font-size:12px;font-weight:700}
.competition-preview-round.is-locked{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft-line)}
.competition-preview-round>div.is-locked{background:var(--accent-soft-bg)}
.competition-lock{font-size:10px}
.competition-lock-flag{padding:2px 6px;border-radius:99px;background:var(--accent);color:#fff;font-size:8px;letter-spacing:.08em}
@media(max-width:760px){.competition-creator-modal{width:100%}.competition-creator-steps li{justify-content:center}.competition-creator-steps li b{display:none}.competition-type-options{grid-template-columns:1fr}.competition-type-options button{min-height:102px}.competition-team-picker{grid-template-columns:1fr 1fr}.competition-preview{grid-template-columns:1fr}.competition-preview-groups{grid-template-columns:1fr 1fr}.competition-create-summary dl{grid-template-columns:1fr 1fr}.competition-group-assign{grid-template-columns:1fr}}
@media(max-width:430px){.competition-creator-steps{margin-bottom:16px}.competition-creator-heading h2{font-size:19px}.competition-team-picker,.competition-preview-groups{grid-template-columns:1fr}.competition-team-counter{flex-wrap:wrap}.competition-team-counter span{margin-right:0}.competition-team-counter .btn:first-of-type{margin-left:auto}.competition-preview{max-height:none;padding:10px}.competition-create-summary dl{grid-template-columns:1fr}.competition-creator-form{grid-template-columns:1fr}.competition-creator-form .full{grid-column:auto}.competition-segmented{display:grid}.competition-creator-modal .modal-foot{display:grid;grid-template-columns:1fr 1fr}.competition-creator-modal .modal-foot .btn:first-child{grid-column:1/-1;order:3}.competition-locked-pair{grid-template-columns:minmax(0,1fr) 34px;grid-template-areas:'home home' 'vs vs' 'away away' 'remove remove'}.competition-locked-pair select:first-of-type{grid-area:home}.competition-locked-pair b{grid-area:vs}.competition-locked-pair select:last-of-type{grid-area:away}.competition-locked-pair .btn{grid-area:remove;justify-self:end}.competition-locked-round header{flex-wrap:wrap}.competition-group-assign label{grid-template-columns:1fr}}

/* V2.2 · Competition shell: participantes por definir y plazas manuales de Copa. */
.competition-slots-toggle{display:grid;gap:10px;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2)}
.competition-slots-toggle .checkitem{display:flex;align-items:flex-start;gap:9px;cursor:pointer}
.competition-slots-toggle .checkitem input{margin-top:3px;flex:0 0 auto}
.competition-slots-toggle .checkitem span{display:grid;gap:3px;min-width:0}
.competition-slots-toggle .checkitem small{color:var(--muted);font-size:11px;line-height:1.45}
.competition-slot-count{max-width:200px}
.competition-slot-count span{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.competition-slot-count input{width:100%}
.competition-slots-blocked{margin-bottom:12px}
.competition-preview-shell{padding:18px;border:1px dashed var(--line);border-radius:11px;background:var(--panel-2);text-align:center}
.competition-preview-shell h4{margin:0 0 5px}
.competition-preview-shell p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.competition-create-summary.is-shell{border-style:dashed}
.competition-shell-note{margin-bottom:14px;font-size:11px;line-height:1.5}
/* V2.2 · Jornadas especiales del creador. Reutilizan el editor de cruces fijados. */
.competition-extra-panel .competition-field-hint{margin:0 0 4px}
.competition-extra-round header{display:flex;flex-wrap:wrap;align-items:end;gap:10px}
.competition-extra-round header label{display:grid;gap:4px;flex:1 1 150px;min-width:0;font-size:11px}
.competition-extra-round header label span{color:var(--muted);font-weight:700}
.competition-extra-round header .btn{margin-left:auto}
.competition-extra-error{margin:10px 0 0;color:var(--danger,#c0392b);font-size:12px;font-weight:700}
.competition-preview-extra h4{color:var(--accent)}
@media(max-width:430px){.competition-extra-round header label{flex:1 1 100%}.competition-extra-round header .btn{margin-left:0}}
