@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap";*{margin:0;padding:0}.participants-page{color:#fff;box-sizing:border-box;background-color:#000;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;justify-content:center;min-height:100vh;padding:64px 24px;font-family:JetBrains Mono,Fira Code,monospace;display:flex}.participants-shell{width:min(1100px,100%)}.participants-header{text-align:center;margin-bottom:48px}.participants-kicker{color:#8d8d8d;letter-spacing:.28em;text-transform:uppercase;margin:0 0 12px;font-size:.8rem}.participants-header h1{color:#fff;letter-spacing:-.08em;text-transform:uppercase;text-shadow:2px 0 #555,-2px 0 #222;margin:0;font-size:clamp(3rem,9vw,7rem);line-height:.9}.participants-subtitle{color:#999;max-width:620px;margin:24px auto 0;font-size:.95rem;line-height:1.7}.participants-grid{grid-template-columns:repeat(2,minmax(280px,1fr));align-items:start;gap:32px;display:grid}.participants-column{box-sizing:border-box;background:#000;border:3px solid #fff;min-height:520px;padding:32px;position:relative}.participants-column:before{content:"";pointer-events:none;border:1px solid #777;position:absolute;inset:6px}.participant-card{color:#fff;box-sizing:border-box;text-transform:lowercase;background:#000;border:2px solid #fff;grid-template-columns:auto 1fr;align-items:center;gap:18px;min-height:64px;margin-bottom:22px;padding:0 20px;transition:transform .14s,background-color .14s,color .14s;display:grid;position:relative}.participant-card:last-child{margin-bottom:0}.participant-card:after{content:"";opacity:.35;background:#fff;height:2px;position:absolute;bottom:-6px;left:10px;right:-6px}.participant-card:hover{color:#000;background:#fff;transform:translate(-4px,-4px)}.participant-seed{color:inherit;opacity:.75;font-size:.9rem}.participant-name{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.95rem,2vw,1.15rem);overflow:hidden}@media (width<=760px){.participants-page{padding:40px 16px}.participants-grid{grid-template-columns:1fr}.participants-column{min-height:auto;padding:24px}.participants-header{margin-bottom:32px}}.participants-state{text-align:center;color:#777;text-transform:uppercase;letter-spacing:.12em;background:#000;border:2px dashed #444;padding:24px}.participant-card{grid-template-columns:auto 1fr auto}.participant-main{flex-direction:column;gap:4px;min-width:0;display:flex}.participant-character{color:#777;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.participant-status{color:inherit;opacity:.7;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}@media (width<=760px){.participant-card{grid-template-columns:auto 1fr}.participant-status{grid-column:2}}.nav-button{color:#aaa;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;opacity:.6;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;font-size:.7rem;transition:all .2s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.nav-button:hover{opacity:1;color:#fff;transform:translateY(-50%)scale(1.08)}.nav-button.left{left:20px}.nav-button.right{right:20px}.nav-button .arrow{opacity:.8;font-size:1.2rem}.nav-button .label{font-size:.65rem}.bracket-page{color:#fff;box-sizing:border-box;background-color:#000;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100vh;padding:64px 24px;font-family:JetBrains Mono,Fira Code,Courier New,monospace}.bracket-shell{width:min(1500px,100%);margin:0 auto}.bracket-header{text-align:center;margin-bottom:40px}.bracket-kicker{color:#8d8d8d;letter-spacing:.28em;text-transform:uppercase;margin:0 0 12px;font-size:.8rem}.bracket-header h1{color:#fff;letter-spacing:-.08em;text-transform:uppercase;text-shadow:2px 0 #555,-2px 0 #222;margin:0;font-size:clamp(3rem,8vw,7rem);line-height:.9}.bracket-subtitle{color:#999;text-transform:uppercase;max-width:760px;margin:24px auto 0;font-size:.95rem;line-height:1.7}.bracket-info-panel{background:#000;border:3px solid #fff;grid-template-columns:repeat(3,1fr);margin-bottom:48px;display:grid;position:relative}.bracket-info-panel:before{content:"";pointer-events:none;border:1px solid #777;position:absolute;inset:6px}.bracket-info-panel>div{border-right:1px solid #444;flex-direction:column;gap:8px;padding:24px;display:flex}.bracket-info-panel>div:last-child{border-right:none}.info-label{color:#8d8d8d;text-transform:uppercase;letter-spacing:.18em;font-size:.75rem}.bracket-info-panel strong{color:#fff;text-transform:uppercase;font-size:1rem}.bracket-section{margin-bottom:56px}.section-title-row{border-bottom:2px solid #fff;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;padding-bottom:14px;display:flex}.section-title-row h2{color:#fff;text-transform:uppercase;letter-spacing:-.06em;margin:0;font-size:clamp(1.5rem,4vw,3rem)}.section-title-row span{color:#8d8d8d;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem}.bracket-track{gap:28px;padding-bottom:16px;display:grid;overflow-x:auto}.bracket-track--upper{grid-template-columns:1.35fr 1fr 1fr}.bracket-track--lower{grid-template-columns:1fr 1fr 1fr 1fr}.bracket-round{background:#000;border:2px solid #fff;min-width:260px;padding:18px;position:relative}.bracket-round:before{content:"";pointer-events:none;border:1px solid #444;position:absolute;inset:5px}.bracket-round h3{color:#fff;text-transform:uppercase;letter-spacing:.14em;margin:0 0 18px;font-size:.85rem}.bracket-round-matches{flex-direction:column;gap:18px;display:flex}.match-card{background:#000;border:2px solid #fff;min-width:220px;transition:transform .14s,background-color .14s,color .14s;position:relative}.match-card:after{content:"";opacity:.35;background:#fff;height:2px;position:absolute;bottom:-6px;left:8px;right:-6px}.match-card:hover{transform:translate(-4px,-4px)}.match-card-header{color:#aaa;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #fff;justify-content:space-between;gap:16px;padding:10px 12px;font-size:.7rem;display:flex}.match-card-body{padding:10px}.match-player{color:#999;border:1px solid #0000;grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:36px;padding:8px 10px;display:grid}.match-player+.match-player{margin-top:6px}.match-player-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.match-player-score{text-align:right;color:#fff;min-width:22px}.match-player--winner{color:#fff;border-color:#fff}.match-card--ready .match-card-header{color:#fff}.match-card--in_progress{animation:1.4s steps(2,end) infinite bracket-pulse}.match-card--finished .match-player:not(.match-player--winner){opacity:.45}.grand-final-section{margin-bottom:40px}.grand-final-card{background:#000;border:3px solid #fff;width:min(480px,100%);margin:0 auto;padding:24px;position:relative}.grand-final-card:before{content:"";pointer-events:none;border:1px solid #777;position:absolute;inset:6px}.grand-final-card .match-card{z-index:1;position:relative}@keyframes bracket-pulse{0%{outline:1px solid #fff}to{outline:1px solid #0000}}@media (width<=1050px){.bracket-track--upper,.bracket-track--lower{grid-template-columns:repeat(4,minmax(260px,1fr))}.bracket-track{overflow-x:auto}}@media (width<=760px){.bracket-page{padding:40px 16px}.bracket-info-panel{grid-template-columns:1fr}.bracket-info-panel>div{border-bottom:1px solid #444;border-right:none}.bracket-info-panel>div:last-child{border-bottom:none}.section-title-row{flex-direction:column;align-items:start}.section-title-row span{line-height:1.5}}.bracket-state{text-align:center;color:#777;text-transform:uppercase;letter-spacing:.12em;background:#000;border:2px dashed #444;padding:24px}.bracket-empty-match{color:#666;text-transform:uppercase;letter-spacing:.1em;text-align:center;border:1px dashed #444;padding:16px;font-size:.75rem}.match-card--cancelled{opacity:.45}.tournament-page{color:#fff;background-color:#000;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100vh;padding:64px 24px;font-family:JetBrains Mono,Fira Code,Courier New,monospace}.tournament-shell{width:min(1100px,100%);margin:0 auto}.tournament-header{text-align:center;margin-bottom:48px}.tournament-kicker{color:#8d8d8d;letter-spacing:.28em;text-transform:uppercase;font-size:.8rem}.tournament-header h1{text-transform:uppercase;margin:0;font-size:clamp(3rem,8vw,6rem)}.tournament-subtitle{color:#999;margin-top:16px}.section-title-row{border-bottom:2px solid #fff;justify-content:space-between;margin-bottom:20px;padding-bottom:10px;display:flex}.section-title-row h2{text-transform:uppercase;margin:0}.section-title-row span{color:#777;font-size:.8rem}.tournament-card{background:#000;border:3px solid #fff;padding:24px;position:relative}.tournament-card:before{content:"";border:1px solid #555;position:absolute;inset:6px}.tournament-card-header{justify-content:space-between;margin-bottom:20px;display:flex}.tournament-card-header h3{text-transform:uppercase;margin:0}.tournament-card-body{z-index:1;position:relative}.tournament-info{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px;display:grid}.info-label{color:#777;text-transform:uppercase;font-size:.7rem;display:block}.tournament-description{color:#aaa;margin-bottom:20px}.tournament-actions{gap:16px;display:flex}.action-button{text-transform:lowercase;color:#fff;border:2px solid #fff;padding:10px 16px;text-decoration:none;transition:all .15s}.action-button:hover{color:#000;background:#fff}.upcoming-tournaments{margin-top:56px}.empty-state{text-align:center;color:#666;border:2px dashed #444;padding:20px}.tournament-list{flex-direction:column;gap:12px;display:flex}.tournament-mini-card{border:1px solid #fff;justify-content:space-between;padding:12px;display:flex}.tournament-shell,.participants-shell,.bracket-shell{animation:.45s both content-enter}@keyframes content-enter{0%{opacity:.45;filter:blur(2px);transform:translateY(10px)}to{opacity:1;filter:blur();transform:translateY(0)}}
