*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #141414;--accent-primary: #ffffff;--accent-secondary: #ff0844;--text-primary: #ffffff;--text-secondary: #cccccc;--text-muted: #666666;--border: #222222}body{font-family:system-ui,-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;position:relative}.app{min-height:100vh;display:flex;flex-direction:column;padding-top:5rem;position:relative;z-index:1}.nav{background:var(--bg-primary);border-bottom:1px solid var(--border);padding:1rem 1.5rem;position:fixed;top:0;left:0;right:0;z-index:1000}.nav-content{display:flex;justify-content:space-between;align-items:center;gap:1rem}.nav-logo{display:block;height:40px;flex-shrink:0}.nav-logo img{height:100%;width:auto}.nav-links{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-links a{color:var(--text-primary);text-decoration:none;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;white-space:nowrap}.nav-links a:hover{color:var(--accent-secondary)}.nav-links span{background:none;border:none;color:var(--text-primary);padding:0;cursor:pointer;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;white-space:nowrap}.main{flex:1;display:flex;flex-direction:column;width:100%;min-height:0;position:relative;overflow:hidden}.main.has-container{max-width:1400px;margin-left:auto;margin-right:auto;padding:3rem}.page{background:var(--bg-primary);padding:3rem}.page h2{color:var(--text-primary);margin-bottom:2rem;font-size:2rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.page h3{color:var(--text-primary);margin:2rem 0 1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin:1.5rem 0}.content-sidebar{display:grid;grid-template-columns:1fr 350px;gap:2rem}.sidebar{background:var(--bg-tertiary);padding:1.5rem;border-radius:8px;height:fit-content;position:sticky;top:2rem}.card{background:var(--bg-tertiary);padding:1.5rem;border-radius:8px;border:1px solid var(--border);transition:all .3s ease}.card:hover{border-color:var(--accent-primary);box-shadow:0 4px 12px #7aa2f71a;transform:translateY(-2px)}.card h3{margin-top:0;color:var(--accent-primary);font-size:1.2rem}section{margin-bottom:2rem}article{background:var(--bg-tertiary);padding:1.5rem;border-radius:8px;margin-bottom:1rem}.list{list-style:none}.list-item{background:var(--bg-tertiary);padding:1rem;margin-bottom:.5rem;border-left:3px solid var(--accent-primary);transition:background .2s}.list-item:hover{background:var(--bg-secondary)}table{width:100%;border-collapse:collapse;margin:1rem 0}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border)}th{background:var(--bg-tertiary);color:var(--accent-primary);font-weight:600}tr:hover{background:var(--bg-tertiary)}@media(max-width:768px){table{font-size:.85rem}th,td{padding:.5rem .3rem}}button,.button{background:var(--accent-secondary);color:var(--text-primary);border:none;padding:.8rem 1.5rem;cursor:pointer;font-size:.9rem;text-decoration:none;display:inline-block;text-transform:uppercase;letter-spacing:.05em;font-weight:600}button:hover,.button:hover{background:var(--text-primary);color:var(--bg-primary)}button:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed}a{color:var(--text-primary)}.status{padding:.2rem .6rem;border-radius:3px;font-size:.9rem;font-weight:600}.status.completed{background:#2d5f2d;color:#90ee90}.status.in_progress{background:#5f5f2d;color:#ffff90}.status.scheduled{background:#2d4f5f;color:#90daff}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0}.stat-box{background:var(--bg-tertiary);padding:1.5rem;border-left:4px solid var(--accent-primary)}.stat-box h4{color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.stat-box .value{font-size:2rem;color:var(--accent-primary);font-weight:700}.loading{text-align:center;padding:3rem;font-size:1.2rem;color:var(--text-secondary)}.error{background:#ed879633;color:#ed8796;padding:1rem;border-radius:4px;margin:1rem 0;border-left:3px solid #ed8796}.footer{background:var(--bg-primary);border-top:1px solid var(--border);padding:2rem 3rem;color:var(--text-muted);flex-shrink:0}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.discord-link{display:flex;align-items:center;gap:.5rem;color:var(--text-primary);text-decoration:none;padding:0;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.discord-link:hover{color:var(--accent-secondary)}.discord-link svg{flex-shrink:0}.bracket-grid{display:grid;gap:1rem;margin:2rem 0}.bracket-card{background:var(--bg-tertiary);padding:1.5rem;border-left:4px solid var(--accent-primary)}.bracket-card h3{margin:0 0 1rem}.progress-bar{background:var(--bg-primary);height:8px;border-radius:4px;overflow:hidden;margin:.5rem 0}.progress-bar-fill{background:var(--accent-primary);height:100%;transition:width .3s}@media(max-width:1024px){.content-sidebar{grid-template-columns:1fr}.sidebar{position:static}.main{padding:1rem}}@media(max-width:768px){.app{padding-top:4rem}.nav{padding:.75rem 1rem}.nav-content{flex-direction:column;align-items:center;gap:.75rem}.nav-logo{height:35px}.nav-links{gap:1rem;font-size:.75rem;justify-content:center;width:100%}.nav-links a,.nav-links button,.nav-links span{font-size:.7rem}.stats,.content-grid{grid-template-columns:1fr}.footer{padding:1.5rem 1rem}.footer-content{flex-direction:column;text-align:center;gap:1rem}.discord-link{width:100%;justify-content:center}.page{padding:1rem}.main.has-container{padding:1.5rem}}.home-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,minmax(15vh,1fr));gap:1px;background:var(--border);border:1px solid var(--border);flex:1;margin:0;min-height:0}.bento-timeline{grid-column:1 / 3;grid-row:1 / 4;background:#00000080;padding:3rem;overflow-y:auto;display:flex;flex-direction:column;justify-content:center}.bento-timeline h2{font-size:2rem;color:var(--text-primary);margin-bottom:2rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.timeline-item{display:grid;grid-template-columns:150px 1fr;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--border)}.timeline-item:last-child{border-bottom:none}.timeline-date{font-weight:600;color:var(--text-secondary);font-size:.85rem}.timeline-content h3{color:var(--text-primary);margin:0;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.bento-stats{grid-column:3 / 5;grid-row:1 / 2;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border)}.stat-item{background:#00000080;padding:2rem;text-align:center}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.stat-value{font-size:2.5rem;font-weight:900;color:var(--text-primary)}.bento-mappool{grid-column:3 / 4;grid-row:2 / 3;background:#00000080;padding:2rem;display:flex;flex-direction:column;justify-content:space-between}.bento-card-title{font-size:1.3rem;color:var(--accent-secondary);margin-bottom:1rem;text-transform:lowercase;font-weight:900}.bento-card-description{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem}.bento-registration{grid-column:4 / 5;grid-row:2 / 3;background:#00000080;padding:2rem;display:flex;flex-direction:column;justify-content:space-between}.bento-action{grid-column:3 / 5;grid-row:3 / 4;background:#00000080;padding:2rem;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.bento-action h3{color:var(--text-primary);font-size:1.3rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.bento-action p{color:var(--text-secondary);margin-bottom:2rem}.bento-action.registered{border:2px solid var(--accent-secondary)}.bento-action.registered h3{color:var(--accent-secondary)}.bento-button{background:var(--accent-secondary);color:var(--text-primary);border:none;padding:.8rem 1.5rem;cursor:pointer;font-size:.85rem;text-decoration:none;display:inline-block;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.bento-button:hover{background:var(--text-primary);color:var(--bg-primary)}.unavailable-text{color:var(--accent-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:.85rem}@media(max-width:1200px){.home-bento{grid-template-columns:1fr;grid-template-rows:auto;height:auto}.bento-timeline,.bento-stats,.bento-mappool,.bento-registration,.bento-action{grid-column:1 / -1;grid-row:auto}.bento-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.home-bento{gap:0;border:none}.timeline-item{grid-template-columns:1fr;gap:.5rem;padding:1rem 0}.bento-timeline{padding:1.5rem;min-height:400px}.bento-timeline h2{font-size:1.5rem;margin-bottom:1.5rem}.timeline-date{font-size:.75rem}.timeline-content h3{font-size:.9rem}.bento-stats{grid-template-columns:1fr;gap:0}.stat-item{padding:1.5rem;border-bottom:1px solid var(--border)}.stat-item:last-child{border-bottom:none}.stat-label{font-size:.7rem}.stat-value{font-size:2rem}.bento-mappool,.bento-registration,.bento-action{padding:1.5rem;min-height:150px}.bento-card-title{font-size:1.1rem}.bento-card-description{font-size:.85rem}.bento-action h3{font-size:1.1rem}.bento-action p{font-size:.9rem;margin-bottom:1rem}.bento-button{padding:.7rem 1.2rem;font-size:.8rem}}@media(max-width:768px){.stat-box{padding:1rem}.stat-box h4,.stat-box p{font-size:.85rem}button{width:100%;margin-top:.5rem}}.bracket-tree{width:100%;height:100%;flex:1;display:flex;flex-direction:column;background:transparent;overflow-y:auto;overflow-x:auto;position:relative}.bracket-section{width:100%;height:100%;flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;background:#111;overflow-y:auto;overflow-x:auto;padding-top:2rem;padding-left:2rem}.bracket-section-title{color:#000;background:#fff;font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;text-align:left;width:100%;padding:1rem 2rem;margin-left:-2rem;margin-top:-2rem;margin-bottom:1.5rem}.bracket-section-title.loser{background:#666;color:#fff}.bracket-section-title.grandfinals{background:#ff0844;color:#fff}.bracket-title{color:var(--accent-secondary);font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:1rem 2rem;text-align:center;border-bottom:2px solid var(--border)}.loading{text-align:center;padding:2rem;color:var(--text-secondary);font-size:1.2rem;text-transform:uppercase;letter-spacing:.1em}.no-data{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic}:where(.bracket-tree) svg{background:transparent!important}:where(.bracket-tree) g[transform]{transform-origin:center!important}:where(.bracket-tree) svg line,:where(.bracket-tree) svg path{stroke:var(--border)!important;stroke-width:2px!important}.bracket-section>div{width:100%!important;background:transparent!important;display:flex!important;justify-content:center!important;align-items:center!important;flex:1!important}.bracket-section>div>div{background:transparent!important}.styled-match{background:var(--bg-secondary);border:2px solid var(--border);border-radius:6px;overflow:hidden;transition:all .3s ease;height:auto!important}.styled-match:hover{border-color:var(--accent-secondary);box-shadow:0 0 15px #ff08444d}.match-round-text{background:var(--bg-tertiary);color:var(--accent-secondary);font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.15rem .3rem;border-bottom:1px solid var(--border);text-align:center}.match-team{display:flex;justify-content:space-between;align-items:center;padding:.25rem .4rem;border-bottom:1px solid var(--border);transition:all .2s ease;cursor:pointer;min-height:22px}.match-team:last-child{border-bottom:none}.match-team:hover{background:var(--bg-tertiary)}.match-team.winner{background:#ff08441a}.team-name{color:var(--text-primary);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.4rem}.match-team.winner .team-name{color:var(--accent-secondary);font-weight:900}.team-score{color:var(--text-secondary);font-size:.7rem;font-weight:700;min-width:25px;text-align:right}.match-team.winner .team-score{color:var(--accent-secondary);font-weight:900}@media(max-width:768px){.bracket-tree{border-radius:0;min-height:500px}.loading,.no-data{padding:1.5rem;font-size:1rem}}.brackets-page{background:#111;flex:1;margin:0;min-height:0;width:100%;display:flex;flex-direction:column;overflow:hidden}.bracket-container{flex:1;min-height:33.33%;display:flex;overflow:hidden}.bracket-container.grandfinals{min-height:33.33%;background:#0a0a0a}.page{background:var(--border);flex:1;margin:0;min-height:0}@media(max-width:768px){.page select{width:100%;max-width:100%;font-size:.9rem}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}th,td{white-space:nowrap;font-size:.75rem;padding:.5rem .4rem}}@media(max-width:768px){table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}th,td{white-space:nowrap;font-size:.75rem;padding:.5rem .4rem}}.admin-panel-toggle{position:fixed;bottom:0;right:0;width:8px;height:8px;background:transparent;border:none;cursor:pointer;z-index:9998;opacity:0}.admin-panel-toggle:hover{opacity:.1;background:#222}.admin-panel-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.admin-panel{background:#1a1a1a;border:2px solid #333;border-radius:8px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #00000080}.admin-panel-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #333}.admin-panel-header h2{margin:0;color:#fff;font-size:1.5rem}.close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-btn:hover{background:#333}.admin-login{padding:2rem}.admin-input{width:100%;padding:.75rem;background:#222;border:2px solid #444;border-radius:4px;color:#fff;font-size:1rem;margin-bottom:1rem}.admin-input:focus{outline:none;border-color:#ff0844}.admin-content{padding:1.5rem}.admin-actions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.admin-actions h3{color:#fff;margin-bottom:.5rem}.admin-btn{padding:.75rem 1.5rem;background:#ff0844;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-align:left}.admin-btn:hover:not(:disabled){background:#ff2a5e;transform:translateY(-1px)}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn.danger{background:#dc3545}.admin-btn.danger:hover:not(:disabled){background:#c82333}.admin-error{background:#dc354533;border:1px solid #dc3545;color:#ff6b7a;padding:.75rem;border-radius:4px;margin-top:1rem}.admin-loading{color:#ccc;text-align:center;padding:1rem;font-style:italic}.admin-response{margin-top:1.5rem}.admin-response h4{color:#fff;margin-bottom:.5rem}.admin-response pre{background:#0a0a0a;border:1px solid #333;border-radius:4px;padding:1rem;color:#0f0;font-family:Courier New,monospace;font-size:.85rem;overflow-x:auto;max-height:300px;overflow-y:auto}@media(max-width:768px){.admin-panel{max-width:100%;max-height:90vh}}
