.tournament-admin,.live-page{--t-surface:#101b2c;--t-line:#29384b;--t-muted:#a8b7c9;--t-accent:#a5f3fc;color-scheme:dark}.tournament-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.tournament-metric{border:1px solid var(--t-line);background:#0a1423;border-radius:14px;min-width:0;padding:18px}.tournament-metric>span{letter-spacing:.1em;text-transform:uppercase;color:var(--t-muted);font-size:11px;font-weight:800;display:block}.tournament-metric strong{color:#f1f5f9;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:9px 0 6px;font-size:clamp(20px,2.1vw,30px);font-weight:900;line-height:1.2;display:block}.tournament-metric small{color:var(--t-muted);font-size:11px;line-height:1.5;display:block}.tournament-match{border:1px solid var(--t-line);background:var(--t-surface);border-radius:16px;align-self:start;min-width:0;overflow:hidden;box-shadow:0 6px 20px #0002}.tournament-match[hidden]{display:none}.tournament-match>header{border-bottom:1px solid var(--t-line);background:#152439;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.tournament-table{color:var(--t-accent);letter-spacing:.12em;align-items:center;gap:10px;font-size:11px;font-weight:900;display:inline-flex}.tournament-table b{letter-spacing:0;font-variant-numeric:tabular-nums;font-size:26px;line-height:1}.tournament-match-status{color:#fde68a;background:#fbbf2414;border-radius:6px;padding:5px 9px;font-size:11px;font-weight:800}[data-match-state=reported] .tournament-match-status,[data-match-state=bye] .tournament-match-status{color:#a7f3d0;background:#34d39914}.tournament-players{padding:6px 16px}.tournament-player{color:#f1f5f9;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:12px;min-height:54px;padding:10px 0;display:grid}.tournament-player+.tournament-player{border-top:1px solid var(--t-line)}.tournament-player>span{overflow-wrap:anywhere;font-size:16px;font-weight:800;line-height:1.4}.tournament-player a:hover{color:var(--t-accent);text-decoration:underline}.tournament-player b{text-align:center;font-variant-numeric:tabular-nums;color:#b5c4d6;font-size:24px}.tournament-player.is-winner b{color:#a7f3d0}.tournament-player small{text-transform:uppercase;letter-spacing:.1em;color:#a7f3d0;margin-top:2px;font-size:10px;display:block}.tournament-match-controls{border-top:1px solid var(--t-line);background:#091320;padding:12px 14px}.tournament-match-controls button{min-height:48px}.tournament-match-controls strong{white-space:normal;overflow-wrap:anywhere}.tournament-match.search-match{border-color:#67e8f9;box-shadow:0 0 0 2px #67e8f922}.tournament-round-filter{flex-wrap:wrap;align-items:end;gap:16px;padding:16px 0 0;display:flex}.tournament-round-filter>label:first-child{flex:1;min-width:180px}.tournament-round-filter label>span{color:var(--t-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.tournament-round-filter input[type=search]{border:1px solid var(--t-line);color:#fff;background:#091320;border-radius:10px;width:100%;padding:12px}.tournament-pending-toggle{color:#fde68a;align-items:center;gap:9px;min-height:46px;font-size:13px;font-weight:700;display:flex}.tournament-pending-toggle input{accent-color:#67e8f9;width:18px;height:18px}.tournament-empty{text-align:center;color:var(--t-muted);border:1px dashed var(--t-line);border-radius:12px;margin-top:12px;padding:28px;font-size:14px}.tournament-project-link{color:#cffafe;background:#67e8f910;border:1px solid #67e8f955;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;font-size:12px;font-weight:800;display:inline-flex}.tournament-view-switcher{--view-accent:#67e8f9;--view-accent-rgb:103 232 249;border:1px solid rgb(var(--view-accent-rgb)/.3);background:linear-gradient(120deg,rgb(var(--view-accent-rgb)/.12),#0d1726 56%);border-radius:18px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding:16px 18px;display:flex;box-shadow:0 14px 34px #0002}.tournament-view-switcher--admin{--view-accent:#fbbf24;--view-accent-rgb:251 191 36}.tournament-view-switcher--public{--view-accent:#67e8f9;--view-accent-rgb:103 232 249}.tournament-view-switcher--projector{--view-accent:#c084fc;--view-accent-rgb:192 132 252}.tournament-view-context{min-width:0}.tournament-view-kicker{color:var(--view-accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:2px;font-size:9px;font-weight:900;display:block}.tournament-view-context strong{color:#fff;font-size:18px;line-height:1.25;display:block}.tournament-view-context p{color:#a8b7c9;margin-top:3px;font-size:11px;line-height:1.5}.tournament-view-options{background:#02061766;border:1px solid #ffffff12;border-radius:13px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;padding:5px;display:flex}.tournament-view-option{color:#b5c4d6;white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:9px 12px;font-size:11px;font-weight:900;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.tournament-view-option:is(a,button):hover{border-color:rgb(var(--view-accent-rgb)/.28);color:#fff;transform:translateY(-1px)}.tournament-view-option[aria-current=page]{border-color:rgb(var(--view-accent-rgb)/.4);background:rgb(var(--view-accent-rgb)/.16);color:var(--view-accent);box-shadow:inset 0 0 0 1px rgb(var(--view-accent-rgb)/.08)}.tournament-view-option.hidden{display:none}:is(.tournament-admin,.live-page) :is(button,a,input,select,summary):focus-visible{outline-offset:3px;outline:2px solid #67e8f9}:is(.tournament-admin,.live-page) :is(button,select){cursor:pointer}:is(.tournament-admin,.live-page) :is(button,input,select){min-height:44px}.tournament-admin #tournament-workspace{grid-template-columns:250px minmax(0,1fr);gap:22px}.tournament-admin #tournament-workspace>section,.tournament-admin #tournament-detail{min-width:0}.tournament-admin #tournament-detail-header{border-color:var(--t-line);background:linear-gradient(120deg,#12243a,#101725)}.tournament-admin #tournament-detail-header>div:first-child{display:block}.tournament-admin #tournament-detail-header>div:first-child>div:last-child{margin-top:18px;display:block}.tournament-admin #detail-participant-count,.tournament-admin #tournament-detail-header div:has(>#detail-participant-count){display:none}.tournament-admin #detail-name{overflow-wrap:anywhere;font-size:clamp(26px,3vw,38px)}.tournament-admin #detail-meta{color:var(--t-muted);line-height:1.7}.tournament-admin #detail-primary-actions{width:100%}.tournament-admin #round-match-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr))}.tournament-admin #managed-tournament-list{max-height:65vh;overflow-y:auto}.live-page #live-pairings{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.live-page #live-now{border-color:var(--t-line);background:#111e2e}.live-page #live-now>div:last-child{display:none}.live-page #live-now-timer{color:#fef3c7;font-size:48px}.live-page #live-tournament-name{overflow-wrap:anywhere}@media (width<=1100px){.tournament-admin #tournament-workspace{grid-template-columns:minmax(0,1fr)}.tournament-admin #managed-tournament-list{max-height:220px}.tournament-admin #tournament-list-sidebar{position:static}}@media (width<=639px){.tournament-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tournament-metric{padding:12px}.tournament-metric strong{font-size:23px}.tournament-metric>span{font-size:10px}.live-shell{flex-direction:column;display:flex}.live-shell>*{order:2}.live-shell>.live-hero,.live-shell>#live-view-switcher{order:0}.live-shell>div:first-child{order:-1}.live-shell>#live-player-finder{order:1}.tournament-view-switcher{flex-direction:column;align-items:stretch;margin-bottom:12px;padding:14px}.tournament-view-options{grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;display:grid}.tournament-view-option{white-space:normal;text-align:center;min-width:0;padding:8px 5px;font-size:10px}.live-hero-actions{width:100%}.live-hero-actions>button{flex:1}.live-page #live-now-timer{font-size:38px}.live-page #live-now-timer-caption{max-width:170px}.tournament-admin{padding:16px 12px 80px}.tournament-admin #round-section{padding:16px 12px}.tournament-admin #tournament-detail-header{padding:18px 14px}.tournament-admin #detail-primary-actions>div{gap:8px}.tournament-admin #standings-section table{min-width:0}.tournament-admin #standings-section thead{display:none}.tournament-admin #standings-body{gap:12px;padding:12px;display:grid}.tournament-admin #standings-body tr{border:1px solid var(--t-line);background:#101b2c;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;display:grid}.tournament-admin #standings-body td{padding:7px;font-size:13px}.tournament-admin #standings-body td:nth-child(2){overflow-wrap:anywhere;font-size:15px}.tournament-admin #standings-body td:nth-child(n+3):before{color:var(--t-muted);margin-bottom:3px;font-size:10px;display:block}.tournament-admin #standings-body td:nth-child(3):before{content:"Récord"}.tournament-admin #standings-body td:nth-child(4):before{content:"Puntos"}.tournament-admin #standings-body td:nth-child(5):before{content:"Rivales"}.tournament-admin #standings-body td:nth-child(6):before{content:"Segundo nivel"}.tournament-admin #standings-body td:nth-child(7):before{content:"Rondas perdidas"}.tournament-admin #standings-body td:nth-child(8):before{content:"+/- juegos"}.tournament-admin #standings-body td:nth-child(9):before{content:"Tier fijado"}.tournament-admin #standings-body td:nth-child(10):before{content:"Descansos"}.tournament-admin #standings-body td:last-child{grid-column:1/-1}}body.tournament-projector{background:#090512}body.tournament-projector>header,body.tournament-projector>footer,body.tournament-projector #live-mobile-actions{display:none!important}.tournament-projector .live-page{background:radial-gradient(circle at 50% 0,#7e22ce24,#0000 34%),#090512;min-height:100vh;padding:18px}.tournament-projector .live-shell{max-width:none}.tournament-projector :is(#live-player-finder,#live-recap,#live-champion,#live-round-progress,#live-print,#live-share){display:none!important}.tournament-projector .live-boards{display:block}.tournament-projector [data-live-panel=standings],.tournament-projector [data-live-panel=bracket]{display:none!important}.tournament-projector [data-live-panel=pairings]{display:block!important}.tournament-projector #live-pairings{grid-template-columns:repeat(auto-fit,minmax(min(100%,370px),1fr))}.tournament-projector .tournament-player>span{font-size:clamp(20px,1.5vw,30px)}.tournament-projector .tournament-table b{font-size:36px}.tournament-projector .tournament-player{min-height:66px}.tournament-projector #live-now{align-items:center;gap:28px;padding:14px 20px;display:flex}.tournament-projector #live-now.hidden{display:none}.tournament-projector .live-now-timer{background:0 0;border:0;flex:1;margin:0;padding:0}.tournament-projector #live-now-match-count{display:none}.tournament-projector #live-tournament-content>div:first-child{position:static}@media (prefers-reduced-motion:reduce){.live-dot{animation:none!important}}.projection-controls{display:none}.tournament-projector .projection-controls{color:#cffafe;align-items:center;gap:10px;margin-top:12px;font-size:12px;display:flex}.projection-controls button{background:#101b2c;border:1px solid #67e8f955;border-radius:8px;padding:8px 14px;font-weight:800}.projection-controls button:disabled{opacity:.35;cursor:default}.projection-controls button[aria-pressed=true]{background:#164e63}body.tournament-projector>nav,.tournament-projector .live-shell>div:first-child,.tournament-projector .live-shell>footer{display:none!important}.tournament-projector .live-hero>div{padding:18px 22px}.tournament-projector #live-tournament-name{margin-top:8px;font-size:32px}.tournament-projector #live-tournament-meta{margin-top:6px}.tournament-projector .tournament-metrics{margin-top:12px}.tournament-projector .tournament-metric{padding:10px 16px}.tournament-projector .tournament-metric strong{margin:4px 0;font-size:26px}.tournament-projector #live-tournament-content>div:first-child,.tournament-projector [data-live-panel=pairings]>div:first-child{display:none}.tournament-projector .live-boards,.tournament-projector #live-tournament-content{margin-top:12px}.tournament-admin .tournament-match-controls>div>div{grid-template-columns:1fr}.tournament-admin .tournament-match-controls button{justify-content:space-between;align-items:center;gap:10px;display:flex}.tournament-admin .tournament-match-controls button>span{white-space:nowrap}@media print{.live-page .tournament-match,.live-page .tournament-metric{break-inside:avoid;box-shadow:none;border-color:#aaa;color:#111!important;background:#fff!important}.live-page .tournament-match *,.live-page .tournament-metric *{color:#111!important;background:#fff!important}.live-page .tournament-match[hidden]{display:block}#live-view-switcher,#projection-controls,#live-player-finder,#live-now{display:none!important}}.tournament-directory{--t-line:#29384b;--t-muted:#a8b7c9}.tournament-directory .tournament-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 12px}.tournament-directory .tournament-metric{padding:12px}.tournament-directory .tournament-metric strong{font-size:22px}.tournament-directory .tournament-metrics+.grid{display:none}.tournament-directory h2{overflow-wrap:anywhere}.live-page .live-hero>div{padding:18px 20px}.live-hero-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.live-page #live-tournament-name{margin-top:8px;font-size:clamp(24px,3vw,34px);line-height:1.15}.live-page #live-tournament-meta{margin-top:6px;font-size:12px}.live-page #live-summary{margin-top:14px}.live-page .tournament-metrics{border:1px solid var(--t-line);background:#0a1423;border-radius:12px;gap:0;margin-top:0;overflow:hidden}.live-page .tournament-metric{border:0;border-right:1px solid var(--t-line);background:0 0;border-radius:0;padding:12px 16px}.live-page .tournament-metric:last-child{border-right:0}.live-page .tournament-metric strong{overflow-wrap:normal;margin:5px 0;font-size:22px}.live-page .tournament-metric small{font-size:10px}#live-champion-names{flex-wrap:wrap;justify-content:center;gap:10px 24px;display:flex}.champion-name{display:inline-block}@media (width<=900px){.live-hero-heading{grid-template-columns:minmax(0,1fr)}.live-hero-actions{justify-content:flex-start;width:auto}.live-hero-actions>button{flex:none;padding:8px 12px}.live-page .tournament-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.live-page .tournament-metric:nth-child(2){border-right:0}.live-page .tournament-metric:nth-child(-n+2){border-bottom:1px solid var(--t-line)}.live-page .tournament-metric{padding:9px 12px}.live-page .tournament-metric strong{font-size:20px}.live-page .tournament-metric small{line-height:1.3}.live-page .live-hero>div{padding:14px}}#live-bracket-board,#bracket-board{max-width:100%;padding-bottom:14px;display:block;overflow-x:auto}.tournament-bracket{gap:36px;width:max-content;padding:4px 2px 12px;display:flex}.bracket-column{flex-shrink:0;width:260px}.bracket-column h3{color:#c4b5fd;text-transform:uppercase;letter-spacing:.1em;height:36px;font-size:12px;font-weight:900}.bracket-column h3>span{color:#64748b;margin-right:7px}.bracket-round{position:relative}.bracket-match,.bracket-trophy{background:#101b2c;border:1px solid #34445b;border-radius:12px;width:100%;position:absolute;overflow:hidden;transform:translateY(-50%)}.bracket-match header{color:#a5f3fc;background:#19263a;justify-content:space-between;padding:8px 12px;font-size:10px;font-weight:800;display:flex}.bracket-match header span{color:#cbd5e1;font-weight:500}.bracket-player{grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:8px;min-height:42px;padding:10px 12px;font-size:14px;font-weight:700;display:grid}.bracket-player+div{border-top:1px solid #ffffff0c}.bracket-player span{overflow-wrap:anywhere;line-height:1.35}.bracket-player b{text-align:center;font-variant-numeric:tabular-nums;color:#94a3b8}.bracket-winner{color:#a7f3d0;background:#34d3990b}.bracket-winner b{color:#6ee7b7}.bracket-connectors{pointer-events:none;width:36px;height:100%;position:absolute;top:0;left:100%;overflow:visible}.bracket-connectors path{fill:none;stroke:#64748b;stroke-width:1.5px}.bracket-champion-column{width:200px}.bracket-champion-column h3{color:#fde68a}.bracket-trophy{text-align:center;background:radial-gradient(at top,#d8a73a20,#0000),#131b28;border-color:#d8a73a66;padding:24px 16px}.bracket-trophy>span{margin-bottom:12px;font-size:40px;display:block}.bracket-trophy strong{color:#fde68a;overflow-wrap:anywhere;font-size:20px;display:block}.bracket-trophy small{color:#a8b7c9;margin-top:8px;font-size:11px;display:block}body.tournament-bracket-expanded{overflow:hidden}body.tournament-bracket-expanded #bracket-section{z-index:100;background:radial-gradient(circle at 50% 0,#5b21703d,#0000 34%),#080d19;border-color:#e879f966;border-radius:20px;flex-direction:column;padding:24px 30px;position:fixed;inset:12px;overflow:auto;box-shadow:0 30px 100px #000;display:flex!important}body.tournament-bracket-expanded #bracket-board{flex:1;justify-content:center;align-items:center;margin-top:10px;padding:0;display:flex;overflow:visible}body.tournament-bracket-expanded .tournament-bracket{justify-content:center;width:100%}body.tournament-bracket-expanded .bracket-column{width:min(260px,33.3333vw - 100px)}body.tournament-bracket-expanded .bracket-champion-column{width:min(200px,17vw)}@media (width<=899px){.bracket-expand-button{display:none}}@media (width<=639px){.tournament-bracket{scroll-snap-type:x mandatory;gap:16px}.bracket-column{scroll-snap-align:start;width:76vw;max-width:290px}.bracket-round{gap:12px;display:grid;height:auto!important}.bracket-match,.bracket-trophy{position:static;transform:none}.bracket-connectors{display:none}.bracket-champion-column{width:65vw}.bracket-expand-button{display:none}}#draft-player-list,#new-tournament-player-list{scrollbar-color:#d4a84755 transparent;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:10px;padding:3px 6px 3px 3px}.roster-player{cursor:pointer;background:#ffffff03;border:1px solid #ffffff14;border-radius:16px;align-items:center;gap:12px;min-width:0;padding:14px;transition:border-color .15s,background .15s;display:flex;position:relative}.roster-player:hover{background:#ffffff07;border-color:#d4a84766}.roster-player:has(input:checked){background:linear-gradient(110deg,#d4a84716,#d4a84705);border-color:#d4a84780}.roster-player:has(input:focus-visible){outline-offset:2px;outline:2px solid #f1d27a}.roster-player>input{opacity:0;width:1px;height:1px;position:absolute}.roster-player-photo{object-fit:cover;background:#151a28;border:1px solid #ffffff20;border-radius:12px;flex-shrink:0;width:44px;height:44px}.roster-player-info{flex:1;min-width:0}.roster-player-name{color:#edf0f6;overflow-wrap:anywhere;font-size:14px;font-weight:700;line-height:1.4;display:block}.roster-player-meta{color:#a8b2c6;flex-wrap:wrap;gap:7px;margin-top:6px;font-size:10px;display:flex}.roster-player-check{color:#8994ab;border:1px solid #ffffff30;border-radius:7px;flex-shrink:0;place-items:center;width:22px;height:22px;display:grid}.roster-player-check:after{content:"+"}.roster-player:has(input:checked) .roster-player-check{color:#17120a;background:#f1d27a;border-color:#f1d27a}.roster-player:has(input:checked) .roster-player-check:after{content:"✓";font-weight:900}.roster-empty{color:#a8b2c6;grid-column:1/-1;padding:24px}#tournament-create-form .grid>*{min-width:0}.live-completed .live-shell{flex-direction:column;display:flex}.live-completed .live-shell>*{order:3}.live-completed .live-shell>div:first-child{order:-1}.live-completed .live-shell>.live-hero{order:0}.live-completed .live-shell>.live-quick-nav{order:1}.live-completed .live-shell>#live-champion,.live-completed .live-shell>#live-recap{order:2}.live-completed .live-shell>#transmision{order:4}.live-completed .live-shell>footer{order:5}#live-recap{scroll-margin-top:100px}
