:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#182335;background:#f4f6f9;font-size:14px;--orange:#eb6835;--nav:#101c2d;--muted:#718096}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #dbe1e9;border-radius:8px;background:white;color:#25364a;padding:10px 15px;font-weight:600}button:hover{border-color:var(--orange)}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--orange);color:#fff;border-color:var(--orange)}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}aside{background:var(--nav);color:white;padding:28px 18px;display:flex;flex-direction:column;gap:30px}.brand{font-size:23px;font-weight:850;letter-spacing:-1px}.ball{display:inline-grid;place-items:center;background:var(--orange);border-radius:10px;width:36px;height:36px;margin-right:8px}.brand small{display:block;color:#8898ad;font-size:10px;letter-spacing:2px;margin:8px 0 0 46px}nav{display:grid;gap:7px}nav button{text-align:left;background:none;border:0;color:#9fafc2;padding:13px}nav button.active{background:#283244;color:#fff;box-shadow:inset 3px 0 var(--orange)}nav button span{display:inline-block;width:26px}.side-footer{margin-top:auto;color:#8e9db1;font-size:12px;line-height:1.8}.side-footer strong{color:white}main{min-width:0}header{height:79px;background:#fff;border-bottom:1px solid #e6ebf1;display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:15px}header select{max-width:340px}select,input,textarea{border:1px solid #dce2eb;border-radius:7px;background:#fff;padding:10px;color:#26374b;width:100%}header .user{display:flex;gap:12px;align-items:center;font-size:12px}.avatar{width:33px;height:33px;border-radius:50%;background:#fff0e9;color:#c25229;display:grid;place-items:center;font-weight:800}.content{padding:32px;max-width:1500px;margin:auto}.eyebrow{font-size:11px;letter-spacing:1.7px;color:var(--orange);text-transform:uppercase;font-weight:800}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}h1{font-size:29px;letter-spacing:-.8px;margin:8px 0}h2{font-size:17px;margin:0 0 18px}h3{font-size:14px;margin:0 0 12px}p{line-height:1.65;color:var(--muted)}.sub{margin:0;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:25px}.stat,.card{background:white;border:1px solid #e3e8ef;border-radius:12px;padding:23px}.stat{position:relative}.stat strong{font-size:30px;display:block;margin:10px 0}.stat small{color:var(--muted)}.stat label{color:#63728a;font-size:12px}.grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.card-head h2{margin:0}.badge{font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:1px;background:#edf2f7;color:#617086;border-radius:5px;padding:5px 8px}.badge.live{color:#15966e;background:#e2f6ee}.match{padding:19px 0;border-top:1px solid #eef1f5}.match-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0}.match-row strong{font-size:15px}.score{font-size:22px;font-weight:800;white-space:nowrap}.muted{color:var(--muted)}.empty{text-align:center;padding:45px 20px;color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:#8995a6;font-size:10px;text-transform:uppercase;letter-spacing:.7px;font-weight:600}td,th{padding:15px 10px;border-bottom:1px solid #eef1f5}td:first-child,th:first-child{padding-left:0}.team-dot{width:25px;height:25px;border-radius:7px;background:#edf0f6;display:inline-grid;place-items:center;margin-right:8px;font-size:10px;font-weight:800}.buttons{display:flex;gap:9px;flex-wrap:wrap}.teamcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.playerline{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid #edf1f5}.scoreboard{background:#111f30;color:white;border-radius:13px;padding:25px;display:grid;grid-template-columns:1fr 180px 1fr;align-items:center;text-align:center;margin-bottom:20px}.scoreboard .total{font-size:58px;line-height:1.1;font-weight:800}.clock{font:700 42px ui-monospace,monospace;color:#f6b57a}.scoreboard p{color:#9eb1c6;font-size:11px}.court{height:320px;border:2px solid #d9b27f;background:repeating-linear-gradient(90deg,#f4ddba 0px,#f4ddba 35px,#f0d5ab 36px,#f0d5ab 38px);border-radius:10px;position:relative;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.court:before{content:'';position:absolute;left:50%;top:0;bottom:0;border-left:2px solid #fff9}.court:after{content:'';position:absolute;width:86px;height:86px;border:2px solid #fff9;border-radius:50%;left:calc(50% - 44px);top:calc(50% - 44px);pointer-events:none}.half{position:relative;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;padding:24px;gap:18px}.half:before{content:'';position:absolute;left:-55px;top:65px;width:125px;height:185px;border:2px solid #fff9;border-radius:50%;pointer-events:none}.half:last-child:before{left:auto;right:-55px}.jersey{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;background:transparent;border:0;padding:5px;min-width:58px;font-size:10px}.jersey b{display:grid;place-items:center;width:39px;height:42px;background:#143c61;color:white;clip-path:polygon(20% 0,35% 8%,65% 8%,80% 0,100% 25%,85% 40%,85% 100%,15% 100%,15% 40%,0 25%);font-size:18px;margin-bottom:6px}.half:last-child .jersey b{background:#e76231}.jersey.selected{background:#ffffffaa;outline:2px solid var(--orange);border-radius:6px}.bench{display:flex;gap:4px;flex-wrap:wrap;background:#f6f8fb;padding:12px;border-radius:8px;margin-top:12px}.bench .jersey b{background:#77869a}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.actions button{padding:18px 10px;font-size:20px}.feed{max-height:370px;overflow:auto}.feed article{border-left:2px solid #e7edf4;padding:0 0 19px 15px;margin-left:5px;font-size:12px}.feed small{display:block;color:#8a98a9;margin-bottom:5px}.feed .void{text-decoration:line-through;opacity:.5}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at top right,#304258,#101c2d 70%);padding:25px}.login .card{width:min(440px,100%);padding:35px}.login .brand{margin-bottom:30px}.login .brand small{color:#8592a5}form{display:grid;gap:16px}label{font-size:12px;display:grid;gap:8px;font-weight:600}textarea{min-height:130px;resize:vertical}dialog{width:min(500px,95vw);border:0;border-radius:14px;padding:30px;box-shadow:0 20px 100px #0004}dialog::backdrop{background:#101c2d99}.error{color:#b8462e;font-size:12px}.demo-banner{background:#fff4e3;color:#8c5b12;padding:9px 32px;font-size:12px}#notice{position:fixed;bottom:25px;right:25px;background:#172538;color:#fff;padding:15px 22px;border-radius:9px;display:none;z-index:100}.scroll{overflow:auto}.print-only{display:none}@media(max-width:1000px){.shell{grid-template-columns:180px 1fr}.content{padding:22px}aside{padding:22px 10px}.grid{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:15px}header{padding:0 22px}.brand{font-size:20px}}@media(max-width:650px){.shell{display:block}aside{padding:14px;gap:16px}.brand small,.side-footer{display:none}nav{display:flex;overflow:auto;gap:3px}nav button{white-space:nowrap;padding:10px;font-size:12px}nav button span{display:none}header{height:65px;padding:0 15px}.user .username{display:none}.content{padding:20px 14px}.stats{grid-template-columns:repeat(2,1fr)}.heading{align-items:start}h1{font-size:25px}.scoreboard{grid-template-columns:1fr 105px 1fr;padding:20px 10px}.scoreboard .total{font-size:42px}.clock{font-size:29px}.half{gap:6px;padding:9px}.jersey{min-width:45px}.court{height:300px}.card{padding:18px}.demo-banner{padding:9px 14px}}@media print{aside,header,.heading button,.demo-banner,.buttons,.actions,.court,.bench,#notice{display:none!important}.shell,.grid{display:block}.content{padding:0}.card{border:0;break-inside:avoid}.scoreboard{background:white;color:black}.clock{color:black}.feed{max-height:none}.print-only{display:block}}

[hidden]{display:none!important}dialog{width:min(760px,95vw);max-height:90vh;overflow:auto}.section-title{font-size:13px;font-weight:800;border-bottom:1px solid #e5eaf1;padding:12px 0;color:#d45a2d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{display:flex;align-items:center;gap:10px}.check input{width:17px;height:17px}.color-row{display:flex;gap:10px;margin:8px 0}.color-row input{width:60px;height:42px;padding:3px}.club-logo,.logo-preview img{width:64px;height:64px;object-fit:contain;border-radius:8px}.club-heading{display:flex;align-items:center;gap:14px}.club-heading h2{margin:0}.swatches{display:flex;gap:8px}.swatches span{width:25px;height:25px;border:1px solid #cbd4df;border-radius:50%}.playerline{align-items:center;gap:8px}.playerline small{display:block;color:#8190a2;font-size:11px;margin-top:4px}.playerline button{padding:6px 10px;font-size:12px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:15px}.closed-banner{background:#fff0dc;color:#8c5817;border-radius:8px;padding:14px 18px;margin-bottom:20px;font-size:12px}.logo-preview:empty{display:none}a{color:#bd512c}@media(max-width:650px){.form-grid,.filter-grid{grid-template-columns:1fr}dialog{padding:22px}nav{padding-bottom:5px}}

.preparation-tabs{display:flex;gap:8px;margin:25px 0;flex-wrap:wrap}.preparation-tabs [aria-selected=true]{background:#15304c;color:white;border-color:#15304c}.preparation-table{min-width:600px}.preparation-table input[type=checkbox],.preparation-table input[type=radio]{width:18px;height:18px;accent-color:#eb6835}.preparation-table input[type=text]{width:75px}.preparation-table small{display:block;color:#8897aa;font-size:11px;margin-top:6px}.home-away{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#f5f7fa;border-radius:10px;padding:20px}.home-away h3{margin:12px 0 0}.legacy-note{color:#946322;background:#fff1dc;padding:13px;border-radius:8px;font-size:12px}@media(max-width:650px){.home-away{flex-direction:column;align-items:start}}

.summary-tabs{display:flex;gap:10px;margin:20px 0 26px;flex-wrap:wrap}.summary-tabs [aria-selected=true]{background:#17314d;color:white;border-color:#17314d}.danger{color:#bd4837;border-color:#e7b8b1}.champion-strip{background:#fff3d6;color:#85621b;padding:17px 20px;border-radius:9px;font-weight:750}.money-stat{font-size:25px!important}.void-payment{color:#919ba8}.void-payment td:nth-child(3){text-decoration:line-through}td small{display:block;color:#8a96a8;margin-top:6px}details{margin-top:10px}summary{cursor:pointer;color:#b74d25;white-space:nowrap}details p{font-size:11px;white-space:nowrap}.stats .stat{min-width:0}

.sanction-entry{border:1px solid #e5e9f0;border-left:3px solid #df7946;border-radius:8px;padding:15px;margin:15px 0}.sanction-entry strong{margin-left:12px}#enroll-roster input[type=checkbox]{width:18px;height:18px;accent-color:#e56a35}#dialog h3{margin-top:24px}.playerline .buttons{gap:4px}.playerline .buttons button{font-size:11px;padding:6px}.club-heading h2{overflow-wrap:anywhere}
/* v0.6 shared club identity, navigation and match officials */
.brand{display:flex;align-items:center;gap:8px;padding-right:10px}.brand>span:nth-child(2){flex:1}.brand small,.header-brand small{display:block;font-size:8px;letter-spacing:1px;margin-top:5px;white-space:nowrap}.brand .ball,.header-brand .ball{display:flex;align-items:center;justify-content:center;flex-shrink:0}.menu-toggle{padding:7px;display:flex;align-items:center;background:transparent;color:inherit;border-color:#ffffff35}.shell.sidebar-hidden{grid-template-columns:minmax(0,1fr)}.shell.sidebar-hidden>aside{display:none}.header-brand{display:none;align-items:center;gap:10px;font-weight:800}.header-brand .menu-toggle{color:#143c61;border-color:#ccd5dd}.sidebar-hidden .header-brand{display:flex}nav button{display:flex;align-items:center;gap:12px}nav button>svg{flex-shrink:0}.club-identity{display:inline-flex;align-items:center;gap:7px;vertical-align:middle;max-width:100%;white-space:normal}.club-mark{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border:1px solid #0002;color:white;font-size:11px;font-weight:800;text-shadow:0 1px 2px #000,0 0 3px #000}.club-mark img{width:100%;height:100%;object-fit:cover}.staff-editor{margin:20px 0;border-top:1px solid #ddd;padding-top:15px}.staff-row{padding:12px;background:#f3f6f8;border-radius:10px;margin:10px 0;display:grid;gap:9px}.staff-row label{margin:0}.staff-summary{border-top:1px solid #e1e7ed;margin-top:15px;padding-top:10px}.staff-summary p{font-size:13px}.ref-signature{display:block;max-width:100%;width:220px;height:90px;object-fit:contain;background:white;border-bottom:1px solid #bcc8d1;margin:10px 0}.match-officials{margin-top:20px;break-inside:avoid}.official-select{margin-top:25px;border-top:1px solid #ddd;padding-top:15px}.official-select label{display:inline-block;min-width:180px;margin-right:12px}.native-club-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.club-select{position:relative;display:inline-block;min-width:180px;max-width:100%}.club-select>button{width:100%;text-align:left;min-height:44px}.club-select>button:after{content:' ▾'}.club-options{position:absolute;z-index:50;top:100%;left:0;min-width:100%;max-height:300px;overflow:auto;background:white;box-shadow:0 5px 25px #102a4433;border:1px solid #ccd5dd;border-radius:8px;padding:5px}.club-options button{display:block;width:100%;border:0;text-align:left;white-space:nowrap}.club-options button:hover,.club-options button:focus{background:#e7eff7}[hidden]{display:none!important}
@media(max-width:1000px){.sidebar-hidden main header{flex-wrap:wrap;height:auto;min-height:79px;gap:12px;padding:14px}.header-brand{flex-basis:100%}}
@media(max-width:650px){.brand{max-width:none}.brand>span:nth-child(2){flex:0 1 auto}.brand .menu-toggle{margin-left:auto}.club-options{max-width:90vw}.official-select label{display:block;margin-right:0}}
@media print{.match-officials{display:block!important}.ref-signature{height:70px}.club-mark{width:22px;height:22px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.header-brand,.club-select,.menu-toggle{display:none!important}}
.brand{padding-right:0;font-size:17px;letter-spacing:-.6px;gap:6px}.brand .ball{width:28px;height:30px;margin-right:0}.brand>span:nth-child(2){min-width:0}.brand small{font-size:6px;letter-spacing:.5px;margin:5px 0 0}.brand .menu-toggle{flex-shrink:0;padding:4px}.brand .menu-toggle svg{width:18px;height:18px}.header-brand .ball{margin-right:0}.header-brand small{margin-left:0}nav button>span{width:auto}
@media(max-width:1000px) and (min-width:651px){.brand{font-size:14px;gap:4px}.brand small{font-size:5px;letter-spacing:.2px}.brand .ball{width:24px;height:27px}.brand .menu-toggle{padding:3px}}
@media(max-width:650px){nav button>span{display:inline}.heading{flex-wrap:wrap}.brand{font-size:19px}.brand small{display:block;font-size:6px}}
.quick-league{font-size:11px;color:#63728a;gap:4px;flex:1;max-width:380px}.quick-league select{max-width:100%;font-size:13px}.league-match-rules{margin-top:20px}.league-match-rules p{margin-bottom:0}input[readonly]{background:#f0f3f7;color:#63728a}
@media(max-width:650px){header{min-height:84px;height:auto;padding-top:10px;padding-bottom:10px}.quick-league{min-width:0}.summary-tabs{flex-wrap:wrap}}
/* v0.8 discipline and league audit */
.jersey .jersey-name{font-size:14px;font-weight:750;display:flex;align-items:center;gap:5px}.jersey small{font-size:12px;font-weight:700}.jersey{min-width:75px}.captain-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#f3b34c;color:#172538;font-size:11px;font-weight:900;border:1px solid #a96c12}.exclusion-label{font-size:10px;color:#a12620;font-weight:800}.excluded-player{opacity:.65}.role-icon{display:inline-flex;vertical-align:middle;margin-right:7px;color:#63758c}.staff-match,.closure-card{margin-top:20px}.staff-person{display:flex;gap:8px;align-items:center;border-top:1px solid #e4e9f0;padding:13px 0}.staff-person>span:nth-child(2){flex:1}.staff-person small{display:block;margin-top:5px;color:#718096}.staff-preparation{margin-top:25px}.staff-preparation .card{margin:10px 0}.league-diary article{border-left:3px solid #d4deea;margin:15px 0;padding:12px 18px;background:#f8fafc}.league-diary article small{color:#718096}.league-diary article.void{text-decoration:line-through;opacity:.6}.league-diary p{color:#283a4a}.summary-tabs{flex-wrap:wrap}td>small{display:block;margin-top:4px;color:#718096}@media(max-width:650px){.jersey{min-width:65px}.jersey .jersey-name{font-size:13px}.jersey small{font-size:11px}.half{gap:4px}.staff-person{flex-wrap:wrap}}@media print{.staff-person button,#resume-match,.league-diary button{display:none!important}.staff-match,.closure-card{break-inside:avoid}.captain-icon{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* La cancha crece con los nombres y contadores de los cinco titulares. */
.court{height:auto;min-height:340px}.half{align-content:center}
.team-penalties{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 16px}.team-penalty{padding:12px;background:#f5f8fb;border:1px solid #dce5ef;border-radius:10px;min-width:0}.penalty-title{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px}.penalty-status{border-radius:20px;padding:4px 7px;background:#e8edf2;font-size:10px;text-transform:uppercase;font-weight:800}.penalty-flag{background:#fff0bd;color:#735000}.penalty-on{background:#ffe0dc;color:#a52518}.penalty-bells{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:10px 0}.penalty-bells span{display:grid;place-items:center;padding:8px;background:#e3e8ed;color:#8896a5;border-radius:6px}.penalty-bells .active{background:#d6f5e4;color:#16804b}.team-penalty small{display:block;font-size:11px;color:#526175;line-height:1.5}.previous-attempts{margin-top:20px}@media(max-width:500px){.team-penalties{grid-template-columns:1fr}.penalty-title{font-size:13px}}@media print{#resolve09,#official-result09,#continue09{display:none}.team-penalties{break-inside:avoid}}
.postgame-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.postgame-tabs [aria-selected=true]{background:#143c61;color:#fff;border-color:#143c61}.postgame-tabs button:focus-visible{outline:3px solid #eb6835;outline-offset:2px}.postgame-panels>[hidden]{display:none!important}.postgame-match-grid{grid-template-columns:1fr}.postgame-panels .quarter-stats,.postgame-panels .roster-stats,.postgame-panels .total-chart,.scorer-section{margin-top:22px}.quarter-row{padding:20px 0;border-bottom:1px solid #e3e8ef}.quarter-row:last-child{border-bottom:0}.quarter-score,.bar-labels{display:flex;justify-content:space-between;gap:16px;align-items:center}.quarter-score>span{display:flex;align-items:center;gap:10px}.quarter-score strong{font-size:22px}.points-bar{height:14px;border-radius:10px;display:flex;overflow:hidden;background:#e4e9ef;margin:12px 0 6px}.points-bar>span:first-child,.legend-dot.home{background:#143c61}.points-bar>span:last-child,.legend-dot.away{background:#eb6835}.bar-labels{font-size:12px;color:#63758c}.scorer-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.scorer-player{display:flex;gap:16px;align-items:center;padding:14px 0;border-top:1px solid #edf1f5}.scorer-icon{display:grid;place-items:center;width:50px;height:50px;flex-shrink:0;border-radius:50%;background:#edf3f8;color:#143c61}.scorer-player strong{font-size:18px}.scorer-player p{margin:5px 0}.roster-stats h3{margin-top:24px}.roster-stats td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.pie-layout{display:flex;align-items:center;justify-content:center;gap:42px;flex-wrap:wrap;margin:24px 0}.points-pie{width:220px;height:220px;border-radius:50%;background:conic-gradient(#143c61 0 var(--home-share),#eb6835 var(--home-share) 100%);box-shadow:0 0 0 6px #f3f6f9}.points-pie.empty-pie{background:#e4e9ef}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px}.pie-legend p{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.postgame-log article{border-left:3px solid #dce5ef;padding:12px 18px;margin:12px 0;background:#f7f9fc}.postgame-log small{color:#718096}.postgame-log .void{opacity:.65;text-decoration:line-through}.postgame-score .badge{white-space:normal;display:inline-block}.postgame-panels .club-label{display:inline-flex;align-items:center;gap:8px}.postgame-panels .scoreboard h2 .club-label{justify-content:center}.postgame-panels .closure-card{margin-bottom:20px}@media(max-width:650px){.scorer-cards{grid-template-columns:1fr}.quarter-score{font-size:12px}.quarter-score>span{gap:5px;flex-wrap:wrap}.quarter-score .club-mark{width:22px;height:22px}.pie-layout{gap:18px}.points-pie{width:180px;height:180px}}@media print{.postgame-tabs{display:none!important}.postgame-panels>[hidden]{display:none!important}.postgame-panels .card,.quarter-row,.scorer-card{break-inside:avoid}.points-pie,.points-bar,.legend-dot{-webkit-print-color-adjust:exact;print-color-adjust:exact}.postgame-panels details{display:block}.postgame-log{break-inside:auto!important}}
/* Original vector court: the players remain interactive above the floor. */
.court{background:#e6b879 url('court.svg') center/100% 100% no-repeat;border:0;border-radius:10px;min-height:350px}.court:before,.court:after,.half:before{display:none}.court .half{padding:30px 20px;gap:18px}.court .jersey-name,.court .jersey small,.court .exclusion-label{background:#fff5e1e8;border-radius:4px;padding:2px 4px;color:#182335}.court .jersey:disabled{opacity:.85}.scoreboard-center{display:flex;flex-direction:column;align-items:center;justify-content:center}.scoreboard-center>.badge{margin-bottom:18px;max-width:100%;white-space:normal;line-height:1.5}.scoreboard-period{font-size:16px;font-weight:750;color:#f5f8fc;margin:6px 0 0}.scoreboard-center>p{margin:9px 0 0}.scoreboard-center .clock{line-height:1.1}@media(max-width:650px){.court .half{padding:24px 8px;gap:8px}.scoreboard-center>.badge{font-size:9px;letter-spacing:.3px;margin-bottom:14px}.scoreboard-period{font-size:13px}}@media print{.scoreboard-period{color:#182335}}
/* Fixed court ratio and five permanent grid positions on every screen. */
.court-layout{grid-template-columns:1fr}.court-viewport{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:8px}.court-viewport:focus-visible{outline:2px solid #eb6835;outline-offset:3px}.court-viewport .court{width:100%;min-width:640px;height:auto;min-height:0;aspect-ratio:940/500;grid-template-rows:minmax(0,1fr)}.court-viewport .half{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));padding:7% 5%;gap:8px 0;min-height:0;align-content:normal;align-items:center;justify-items:center}.court-viewport .half>.jersey{grid-column:span 2;min-width:0;width:max-content;max-width:100%;padding:3px}.court-viewport .half>.jersey:nth-child(4){grid-column:2 / span 2}.court-viewport .half>.jersey:nth-child(5){grid-column:4 / span 2}.court-viewport .jersey-name{font-size:13px;max-width:100%;white-space:nowrap}.court-viewport .jersey small{font-size:11px;white-space:nowrap}.court-viewport .jersey b{width:35px;height:38px}.exclusion-label,.court .exclusion-label{display:inline-block;background:#b42318;color:#fff;padding:4px 7px;border-radius:5px;font-size:11px;font-weight:850;line-height:1.3}.excluded-player{opacity:1!important}.disqualified-text{color:#b42318!important;background:#fee4e2;border-radius:5px;padding:6px 8px;font-weight:800}.standings-explanation{font-size:12px;margin-top:18px}.court-viewport .captain-icon{width:16px;height:16px;font-size:10px;flex-shrink:0}@media print{.court-viewport{display:none!important}}
.court-layout>section{min-width:0}.court-viewport{min-width:0}
.state-success{background:#d8f5e5!important;color:#126640!important}.state-danger{background:#fee4e2!important;color:#a3241b!important}.state-warning{background:#fff0c2!important;color:#7b5600!important}.state-info{background:#dcecff!important;color:#174f91!important}.select-all13,.staff-row label{display:flex;align-items:center;gap:9px;line-height:1.5}.select-all13{margin:14px 0}.select-all13 input,.staff-row label input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:0}.official-select>.sub{margin-bottom:20px}.sanction-label13{color:#ac281f!important;font-weight:750}.sanction-info13{padding:2px 7px;margin-left:6px;border-color:#e0a49f;color:#a3241b;background:#fff1ef;font-size:18px}.action-period{background:#e0edff;color:#174f91;border-color:#9ebce5}.action-undo{background:#fff0cd;color:#805700;border-color:#e9c56f}.action-final{background:#b33429;color:#fff;border-color:#b33429}.action-print{background:#e8e4fa;color:#55418c;border-color:#b9abdf}.clock-state{display:inline-block;padding:5px 9px;border-radius:6px;font-weight:750;font-size:10px!important}.clock-running{background:#d8f5e5;color:#126640!important}.clock-paused{background:#fff0c2;color:#7b5600!important}.court-viewport .jersey b{width:43px;height:47px;font-size:21px}.standings-legend{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 14px}.standings-legend>span{padding:10px 14px;border-radius:8px;background:#eaf2fa;color:#234c70}.standings-legend b{margin-left:7px}.standings-note{background:#f1f6fb;border-left:4px solid #3778a7;border-radius:6px;padding:15px 18px;line-height:1.8}.standings-order{border-top:1px solid #dce5ee;padding-top:16px;color:#344b65}.standings-order p{margin:6px 0}.standings-order small{color:#718096}@media(min-width:1100px){.live-court-layout{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start}}@media print{.select-all13,.sanction-info13{display:none!important}}
/* v0.14: programming and visual refinements */
select:not(.native-club-select){appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2357677b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}.club-select>button{position:relative;padding-right:38px}.club-select>button:after{position:absolute;right:14px;top:50%;transform:translateY(-50%);content:'▾'}.game-selector14{width:min(700px,100%)}.match-option14{display:grid;gap:8px}.match-option-meta14{font-size:11px;color:#57677b}.match-live14{color:#b52331;font-weight:800}.match-option-teams14{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.match-option-teams14>span{display:inline-flex;align-items:center;gap:6px}.versus14{color:#8a95a4;font-size:11px;flex-shrink:0}.game-selector14 .club-options{width:100%}.game-selector14 .club-options button{white-space:normal;padding:12px}.round-action14{display:inline-flex;gap:9px;align-items:center}.action-icon14{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#143c61;color:white;flex-shrink:0}.action-undo .action-icon14{background:#91600c}.action-final .action-icon14{background:#8f1924}.action-print .action-icon14{background:#5f438c}[data-action=clock] .action-icon14{background:#bd401a}.info-panel14{padding:18px 20px;border:1px solid #d8e5ee;border-left:4px solid #ed7544;border-radius:10px;background:linear-gradient(115deg,#f1f6fb,#fff8f2);color:#324b60;line-height:1.7;margin:16px 0;font-size:14px}.map-link14{display:inline-block;color:#17496d;font-weight:600;padding:10px 0;text-decoration:none;margin-right:12px}.schedule-label14{font-size:13px;color:#375269;line-height:1.7}.fixture-export-actions14{margin:18px 0}.staff-summary p{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.court-layout .card-head .badge{white-space:normal;text-align:right}.fixture-preview14{width:100%;height:auto;border-radius:12px;margin:15px 0}.export-dialog14{width:min(760px,95vw)}
@media(min-width:1100px){.control-panel14{display:flex;flex-direction:column;min-height:0;overflow:hidden}.control-panel14>.feed{min-height:0;flex:1;max-height:none;overflow:auto}.control-panel14>h2,.control-panel14>.sub,.control-panel14>.actions,.control-panel14>.buttons,.control-panel14>h3{flex-shrink:0}}
/* v0.15 match review and outcomes */
.game-selector14{width:auto;min-width:250px;max-width:100%}.game-selector14>button{padding:9px 34px 9px 12px;min-height:42px}.game-selector14 .match-option14{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.game-selector14 .match-option-teams14{gap:8px}.game-selector14 .club-mark{width:24px;height:24px}.game-selector14 .match-option-meta14{font-size:11px}.period-ended15{display:flex;align-items:center;gap:16px;background:linear-gradient(110deg,#fff3da,#fffaf0);border:1px solid #eec374;border-left:5px solid #dc8d25;border-radius:12px;padding:18px 22px;margin:-3px 0 20px;color:#75500f}.period-ended15>span{font-size:30px}.period-ended15 p{margin:6px 0 0;line-height:1.5}.review-close15{width:min(850px,95vw)}.review-close15 .scoreboard{grid-template-columns:1fr 130px 1fr}.review-close15 .total{font-size:38px}.quarter-summary15{margin:14px 0}.quarter-summary15>div{display:grid;grid-template-columns:130px 1fr 90px 1fr;align-items:center;gap:12px;padding:14px;border-bottom:1px solid #e5ebf0}.quarter-summary15>div:nth-child(odd){background:#f4f7fa}.quarter-summary15 b{text-align:center;white-space:nowrap}.closure-message15{display:flex;gap:13px;align-items:center;background:#e8f7ee;color:#21633f;padding:20px;border-radius:12px;margin:20px 0}.closure-message15>span{font-size:26px}.final-line15{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#132c41;color:white;padding:20px;border-radius:12px;margin-top:20px}.final-line15>b{font-size:25px}.champion15{display:inline-block;font-size:20px;vertical-align:middle}.eliminated15{display:block;color:#b52637;background:#ffedf0;border-radius:5px;padding:3px 7px;width:fit-content;margin-top:5px;font-weight:700;font-size:11px}@media(max-width:650px){.quarter-summary15>div{grid-template-columns:1fr 60px 1fr;gap:7px;padding:12px 5px;font-size:12px}.quarter-summary15>div>strong{grid-column:1/-1}.game-selector14 .match-option14{gap:5px}.review-close15 .scoreboard{grid-template-columns:1fr 90px 1fr}.period-ended15{padding:14px;font-size:13px}}
/* v0.16 visual details */
.icon16{width:24px;height:24px;display:inline-block;vertical-align:middle;flex-shrink:0;margin-right:7px}.info-panel14>.icon16,.large-info16{width:30px;height:30px;font-size:30px;vertical-align:middle;margin-right:8px}.court-badge16{display:inline-flex;align-items:center;margin-bottom:18px}.court-badge16 .icon16{width:29px;height:29px}.close-metrics16,.rule-cards16{display:grid;gap:12px;margin:20px 0}.close-metrics16>div,.rule-cards16>div{display:flex;align-items:center;gap:12px;background:#f1f6fa;border:1px solid #e0e8ef;border-radius:12px;padding:16px}.close-metrics16 strong{display:block;font-size:23px;margin-top:5px}.close-metrics16 .icon16,.rule-cards16 .icon16{width:32px;height:32px;color:#ce6630}.rule-cards16{grid-template-columns:repeat(3,minmax(0,1fr))}.rule-cards16 small{display:block;color:#637487;margin-top:7px;line-height:1.5}.payment-summary16{display:grid;gap:9px}.payment-summary16>div{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap;border-bottom:1px solid #e4ebf0;padding:10px 0}.payment-summary16 small{width:100%;color:#a2303d}.debt-alert16{background:#fff0ed;color:#a02b26;border:1px solid #f1b7af;border-left:4px solid #c6443c;padding:16px;border-radius:10px;line-height:1.6}.referee-space16{padding-bottom:20px}.home-label16,.away-label16{display:inline-block;border-radius:6px;padding:5px 13px;color:#fff!important;font-weight:700!important;letter-spacing:1px}.home-label16{background:#2261ac}.away-label16{background:#218158}.action-icon14 .icon16{width:18px;height:18px;margin:0}.postgame-log article{position:relative;padding-right:60px!important}.event-icon16{position:absolute;right:14px;top:20px;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#fff0e7;color:#c76a31}.event-icon16 .icon16{width:25px;height:25px;margin:0}.event-sub{background:#e8f2fc;color:#245f95}.event-foul{background:#ffedf0;color:#ad3247}.event-undo{background:#e9edf1;color:#526270}.profile-menu16{position:relative}.profile-toggle16{display:flex;align-items:center;gap:12px;border:0;background:transparent;text-align:left;padding:7px}.profile-toggle16 .username{font-weight:400}.profile-menu16 #profile-options16{position:absolute;right:0;top:calc(100% + 8px);min-width:220px;background:white;border:1px solid #dbe4ec;box-shadow:0 12px 35px #16334a26;border-radius:12px;padding:8px;z-index:80}.profile-menu16 #profile-options16>button{display:flex;align-items:center;width:100%;border:0;text-align:left;padding:12px;gap:6px}.profile-menu16 #profile-options16>button:hover{background:#edf4fa}.profile-menu16 #profile-options16>button:last-child{color:#ad3247}@media(max-width:800px){.rule-cards16{grid-template-columns:1fr}}@media print{.profile-menu16{display:none}}
/* v0.17 finance and brackets */
.referee-grid17{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))!important;gap:18px}.diary-meta17{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#607589}.diary-teams17{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.diary-teams17>b{font-size:10px;color:#8a98a6}.profile-arrow17{display:inline-grid;place-items:center;width:27px;height:27px;border:1px solid #cbd7e0;border-radius:6px;background:#f5f8fb}.money-cards17{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0}.money-cards17>div{padding:14px 10px;border:1px solid #dce7ee;background:#f3f7fa;border-radius:10px;min-width:0}.money-cards17 strong{display:block;margin-top:7px;font-size:18px;overflow-wrap:anywhere}.money-cards17 small{color:#536b7d}.amount-balance17{color:#22764e;font-size:13px}.over17{color:#ab2939!important;background:#fff0f2!important;border-color:#e7a4ae!important}.payment-movement17{padding:14px;background:#f4f7fa;margin:10px 0;border-radius:9px}.payment-movement17>span{display:block;color:#62788b;font-size:12px;margin-top:6px}.bracket-scroll17{overflow:auto;padding:20px 8px}.bracket-grid17{display:flex;gap:40px;min-width:max-content}.bracket-column17{width:270px}.bracket-column17>h3{height:32px;color:#ab5729}.bracket-slots17{height:var(--bracket-height);display:flex;flex-direction:column;justify-content:space-around;gap:18px}.bracket-game17{position:relative;background:white;border:1px solid #d6e1e9;border-left:4px solid #ee7d44;border-radius:10px;padding:12px;box-shadow:0 4px 12px #233d4b0c;font-size:12px}.bracket-game17>small{display:block;color:#63798a;margin:8px 0}.bracket-game17>button{font-size:11px;padding:5px 8px}.bracket-team17{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0}.bracket-team17+.bracket-team17{border-top:1px solid #e5ebef}.bracket-team17>b{font-size:18px}.winner17{color:#247246;font-weight:700}.bracket-connect17:after{content:'';position:absolute;width:40px;height:2px;background:#dda06b;right:-41px;top:50%}.bracket-card17{background:linear-gradient(135deg,#fff9ec,#fff0e6)}.bracket-game17>div:not(.bracket-team17){padding:10px 0;color:#647789}.bracket-column17:not(:first-child) .bracket-game17:before{content:'';position:absolute;left:-21px;top:-30%;height:160%;width:20px;border-left:2px solid #dda06b;border-top:2px solid #dda06b;border-bottom:2px solid #dda06b;pointer-events:none}
.bracket-slots17{position:relative;display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:center;gap:0}.bracket-game17{width:100%;box-sizing:border-box}.bracket-connect17:after,.bracket-column17:not(:first-child) .bracket-game17:before{display:none}.bracket-lines17{position:absolute;right:-40px;top:0;width:40px;height:100%;overflow:visible;fill:none;stroke:#d49a64;stroke-width:2;pointer-events:none}
/* v0.18: acciones compactas y registro de faltas */
[data-pay-summary17],[data-pay-club]{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;font-size:12px;white-space:nowrap;margin:4px 8px 4px 0}[data-pay-summary17] svg{width:17px;height:17px;flex:none}.postgame-log .event-icon16.inline-icon18{position:static;display:inline-flex;width:25px;height:25px;vertical-align:middle;margin-left:7px}.quick-fouls18{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 16px}.quick-fouls18 button{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;font-size:11px}.quick-fouls18 svg{width:16px;height:16px}
/* v0.19 */
.payment-actions19{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.payment-actions19 button{height:34px;margin:0;line-height:1;vertical-align:middle;justify-content:center}.payment-actions19 button svg{width:17px;height:17px;flex:none}.live-event19{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:6px;vertical-align:middle;border-radius:7px}.live-event19 svg{width:21px;height:21px}.app-loading19{position:fixed;inset:0;z-index:9999;display:grid;place-content:center;justify-items:center;background:#f4f6f9;color:#143c61;font-weight:650;gap:16px}.app-loading19 svg{width:180px;height:180px}.loading-ball19{animation:shoot19 1.6s ease-in-out infinite;transform-origin:90px 40px}@keyframes shoot19{0%{transform:translate(-35px,-15px) rotate(-60deg);opacity:0}20%{opacity:1}60%{transform:translate(0,35px) rotate(50deg);opacity:1}100%{transform:translate(0,110px) rotate(100deg);opacity:0}}@media(prefers-reduced-motion:reduce){.loading-ball19{animation:none}}
#match-report20{display:none}.official-page20 svg{display:block;width:100%;height:100%}.official-page20{background:#fff;color:#111}.report-appendix20{break-before:page}
@media print{@page{size:A4 portrait;margin:10mm}body.printing-report20>#app,body.printing-report20>#dialog,body.printing-report20>#notice{display:none!important}body.printing-report20>#match-report20{display:block!important}.official-page20{width:190mm;height:276mm;break-after:page;break-inside:avoid}.report-appendix20{break-before:page;font-size:10pt}.report-appendix20 button{display:none!important}.report-appendix20 .card{padding:8px;border:0}.report-appendix20 .postgame-log{break-inside:auto}.report-appendix20 .postgame-log article{break-inside:avoid}.report-appendix20 .scroll{overflow:visible}.report-appendix20 .roster-stats{break-inside:auto!important}.report-appendix20 table{font-size:9pt}.report-appendix20 tr{break-inside:avoid}}
@media print{body.printing-report20{background:white}.report-appendix20{background:white}.report-appendix20 h1,.report-appendix20 h2,.report-appendix20 h3{break-after:avoid}.report-appendix20 .roster-stats{break-before:page}.report-appendix20 .roster-stats>p{break-after:avoid}}
#floating-score21{position:fixed;top:10px;z-index:90;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 28px;gap:12px;align-items:center;padding:10px 16px;border-radius:12px;background:#102333;color:white;border:1px solid #426176;box-shadow:0 8px 26px #10233340}#floating-score21[hidden]{display:none}.mini-team21{min-width:0;display:grid;gap:4px}.mini-team21>small{font-size:9px;letter-spacing:1px;color:#9cc9ed}.mini-team21.away21>small{color:#91ddbd}.mini-team21 .club-label{display:flex;min-width:0;gap:7px;font-size:12px}.mini-team21 .club-label>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-team21 .club-mark{width:25px;height:25px;flex:none}.mini-center21{text-align:center;white-space:nowrap;font-size:11px}.mini-center21>strong{display:block;font-size:26px;line-height:1.1;font-variant-numeric:tabular-nums}.mini-center21>strong>span{color:#8da6ba}.mini-center21>div{margin-top:3px}.mini-center21>small{display:block;color:#ffd68b;font-size:9px;margin-top:3px}.mini-center21>small.running21{color:#9ae5b8}#floating-score21>button{padding:4px;width:28px;height:28px;background:#ffffff15;color:white;border-color:#ffffff40}@media(max-width:600px){#floating-score21{top:6px;gap:6px;padding:8px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 24px}.mini-team21 .club-label{font-size:10px;gap:4px}.mini-team21 .club-mark{width:19px;height:19px}.mini-center21>strong{font-size:22px}.mini-center21{font-size:10px}#floating-score21>button{width:24px;height:24px}}@media print{#floating-score21{display:none!important}}
:root .login .brand small{font-size:13px;letter-spacing:1.5px;line-height:1.5}
.club-toolbar22{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0}.club-toolbar22 label{flex:1;min-width:210px;max-width:480px;font-weight:600}.club-toolbar22 input{margin-top:7px}.club-toolbar22>span{color:#63728a;padding-bottom:10px}
.club-roster22{margin-top:16px;min-width:0}.club-roster22 summary{cursor:pointer;color:#143c61;font-weight:700;padding:10px 0}.teamcards.club-list22{grid-template-columns:1fr}.club-list22>article{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(200px,1.2fr);align-items:center;gap:12px 24px}.club-list22>article h2,.club-list22>article p{margin:0}.club-list22>article .buttons{margin:0!important}.club-list22 .club-roster22,.club-list22 .staff-summary{grid-column:1/-1}.club-list22 .swatches{grid-column:1}.teamcards>[hidden]{display:none!important}
.league-page22{max-width:1100px;margin:auto}.league-page-heading22{display:flex;align-items:start;justify-content:space-between;gap:20px;border-bottom:1px solid #e3e8ef;padding-bottom:18px}.league-page22 .section-title{margin-top:28px}.league-page22 label{display:block;margin:12px 0;font-weight:600}.league-page22 label input,.league-page22 label select{margin-top:7px}.league-page22 .check{display:flex;align-items:center;gap:10px}.league-page22 .check input{width:auto;margin:0}.format-row22{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.format-illustration22{background:#fff6eb;border:1px solid #f4dcc4;border-radius:14px;padding:20px;color:#143c61}.format-illustration22 svg{width:100%;max-height:220px}.format-illustration22 strong{display:block}.format-illustration22 p{margin:8px 0}.format-illustration22 small{color:#63728a}.league-save22{margin-top:24px;padding-top:20px;border-top:1px solid #e3e8ef;display:flex;justify-content:flex-end}
.rule-notice22{padding:16px 20px;background:#fff5e6;border:1px solid #f4c980;border-left:5px solid #eb6835;border-radius:10px;margin:0 0 20px}.rule-notice22 p{margin:6px 0 0;color:#67441d}.rule-danger22{background:#fff0ee;border-color:#e99588}.quarter-count22{display:block;font-size:10px;line-height:1.4;background:#e5edf5;color:#143c61;padding:2px 5px;border-radius:4px;white-space:nowrap;margin-top:3px}.quarter-blocked22{background:#fee2e2;color:#a12424;font-weight:800}
@media(max-width:700px){.club-list22>article,.format-row22{grid-template-columns:1fr}.club-list22 .swatches,.club-list22 .club-roster22,.club-list22 .staff-summary{grid-column:auto}.league-page-heading22{flex-direction:column}.league-page22{padding:18px}.club-toolbar22 label{max-width:none}.quarter-count22{font-size:8px}}

@media(min-width:701px){.club-list22>article>.club-heading,.club-list22>article>h2{grid-column:1;grid-row:1}.club-list22>article>p:first-of-type{grid-column:2;grid-row:1}.club-list22>article>.buttons,.club-list22>article>[data-edit-enrollment]{grid-column:3;grid-row:1 / span 2}.club-list22>article>.swatches{grid-column:1;grid-row:2}}
.organization-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px;margin-top:20px}.organization-card{border:1px solid #dce5ee;border-radius:12px;padding:20px;background:#f8fafc}.organization-card h3{overflow-wrap:anywhere}.organization-seasons{margin-top:16px}.organization-season{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid #dce5ee}.organization-season small,.organization-id{display:block;color:#62758b;margin-top:5px}.organization-new{padding:20px;margin-bottom:24px;background:#eff5fb;border:1px solid #dce5ee;border-radius:12px}.organization-new h3{margin-top:0}.organization-context{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.organization-context button{flex-shrink:0}

.clients-toolbar21{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0}.clients-toolbar21 label{flex:1;min-width:190px;margin:0}.clients-toolbar21 label:first-child{flex:2}.clients-toolbar21>span{padding-bottom:12px;color:#62758b}.client-status21{display:inline-block;border-radius:6px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap}.client-status21-active{background:#dcfce7;color:#166534}.client-status21-suspended{background:#fff0d1;color:#925000}.client-status21-inactive{background:#e8edf3;color:#526174}.client-organization21{padding:12px;background:#edf3fa;border-radius:8px;overflow-wrap:anywhere}.client-organizations21{padding:0;list-style:none}.client-organizations21 li{padding:14px 0;border-bottom:1px solid #dce5ee;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.client-organizations21 span{color:#62758b}

/* Etapa 2.2: cupos de campeonatos, independientes de finanzas. */
.quota-summary22{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.quota-summary22 span{flex:1;padding:12px;background:#eef4f9;border-radius:10px;font-size:12px}.quota-summary22 strong{display:block;font-size:24px;color:#143c61}.quota-badge22{display:inline-block;margin:6px;padding:5px 9px;border-radius:7px;background:#fff2d1;color:#735000;font-size:12px;font-weight:700}.quota-badge22.used{background:#dbf3e7;color:#13613c}.quota-badge22.exempt{background:#e6ecf8;color:#354d79}.quota-confirm22{max-width:560px}
