:root {
    --header-height: 60px;
    --sidebar-width: 290px;
    --iso-cube-size: clamp(220px, 32vmin, 420px);
    --iso-cube-half: calc(var(--iso-cube-size) / 2);
}

body {
    margin: 0;
    font-family: 'Inter', 'Poppins', sans-serif;
    color: white;
    position: relative;
    overflow-x: hidden;
}



.tournament-app-layout {
    position: relative;
    z-index: 1;
}

@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}

.background {
    position: fixed;
    inset: -12vmax;
    width: auto;
    height: auto;
    min-width: 124vw;
    min-height: 124dvh;
    background: #3E1E68;
    z-index: -7;
    pointer-events: none;
    overflow: hidden;
}

.background span {
    width: 1vmin;
    height: 1vmin;
    border-radius: 1vmin;
    backface-visibility: hidden;
    position: absolute;
    animation: move linear infinite;
    animation-duration: 45s;
}

.background span:nth-child(1) { color: #b12cff; top: 96%; left: 60%; animation-duration: 50s; animation-delay: -36s; transform-origin: 22vw 0vh; box-shadow: -2vmin 0 0.25471538988342224vmin currentColor; }
.background span:nth-child(2) { color: #583C87; top: 98%; left: 71%; animation-duration: 50s; animation-delay: -43s; transform-origin: 0vw -5vh; box-shadow: -2vmin 0 1.0110569440572994vmin currentColor; }
.background span:nth-child(3) { color: #d103b8; top: 15%; left: 36%; animation-duration: 17s; animation-delay: -50s; transform-origin: -23vw 11vh; box-shadow: 2vmin 0 0.6229897520786483vmin currentColor; }
.background span:nth-child(4) { color: #ff4fd8; top: 76%; left: 93%; animation-duration: 20s; animation-delay: -39s; transform-origin: -2vw 5vh; box-shadow: -2vmin 0 0.3526830649629068vmin currentColor; }
.background span:nth-child(5) { color: #b12cff; top: 64%; left: 45%; animation-duration: 8s; animation-delay: -15s; transform-origin: 21vw 19vh; box-shadow: 2vmin 0 1.0439545716651923vmin currentColor; }
.background span:nth-child(6) { color: #583C87; top: 51%; left: 82%; animation-duration: 17s; animation-delay: -8s; transform-origin: -21vw 22vh; box-shadow: 2vmin 0 0.9553368203223581vmin currentColor; }
.background span:nth-child(7) { color: #583C87; top: 43%; left: 49%; animation-duration: 26s; animation-delay: -13s; transform-origin: -17vw 23vh; box-shadow: 2vmin 0 0.4687635566257611vmin currentColor; }
.background span:nth-child(8) { color: #ff4fd8; top: 18%; left: 33%; animation-duration: 26s; animation-delay: -27s; transform-origin: 19vw 12vh; box-shadow: -2vmin 0 0.2772617514001443vmin currentColor; }
.background span:nth-child(9) { color: #ff4fd8; top: 23%; left: 40%; animation-duration: 53s; animation-delay: -21s; transform-origin: -23vw -12vh; box-shadow: 2vmin 0 1.1927590057330049vmin currentColor; }
.background span:nth-child(10) { color: #d103b8; top: 28%; left: 95%; animation-duration: 37s; animation-delay: -49s; transform-origin: 8vw -3vh; box-shadow: 2vmin 0 0.6553831867369427vmin currentColor; }
.background span:nth-child(11) { color: #583C87; top: 16%; left: 55%; animation-duration: 25s; animation-delay: -31s; transform-origin: -24vw 18vh; box-shadow: -2vmin 0 0.5083604407786294vmin currentColor; }
.background span:nth-child(12) { color: #b12cff; top: 89%; left: 81%; animation-duration: 18s; animation-delay: -39s; transform-origin: -1vw -21vh; box-shadow: 2vmin 0 0.6346736826450295vmin currentColor; }
.background span:nth-child(13) { color: #583C87; top: 7%; left: 5%; animation-duration: 11s; animation-delay: -31s; transform-origin: 7vw 11vh; box-shadow: 2vmin 0 0.8353158850716108vmin currentColor; }
.background span:nth-child(14) { color: #d103b8; top: 10%; left: 36%; animation-duration: 10s; animation-delay: -30s; transform-origin: -9vw 14vh; box-shadow: 2vmin 0 0.7833591614081394vmin currentColor; }
.background span:nth-child(15) { color: #ff4fd8; top: 48%; left: 20%; animation-duration: 54s; animation-delay: -37s; transform-origin: -16vw 23vh; box-shadow: 2vmin 0 1.2192609117250857vmin currentColor; }
.background span:nth-child(16) { color: #583C87; top: 9%; left: 46%; animation-duration: 51s; animation-delay: -26s; transform-origin: 4vw -6vh; box-shadow: 2vmin 0 1.1880917703099232vmin currentColor; }
.background span:nth-child(17) { color: #b12cff; top: 6%; left: 14%; animation-duration: 14s; animation-delay: -40s; transform-origin: 23vw -13vh; box-shadow: 2vmin 0 0.3016650354803916vmin currentColor; }
.background span:nth-child(18) { color: #ff4fd8; top: 24%; left: 40%; animation-duration: 34s; animation-delay: -29s; transform-origin: -21vw 0vh; box-shadow: -2vmin 0 0.7782393565222245vmin currentColor; }
.background span:nth-child(19) { color: #583C87; top: 59%; left: 77%; animation-duration: 24s; animation-delay: -20s; transform-origin: 19vw 3vh; box-shadow: 2vmin 0 0.26245712638949503vmin currentColor; }
.background span:nth-child(20) { color: #583C87; top: 38%; left: 59%; animation-duration: 29s; animation-delay: -5s; transform-origin: 25vw 11vh; box-shadow: -2vmin 0 0.8193050430969148vmin currentColor; }
.background span:nth-child(21) { color: #ff4fd8; top: 98%; left: 18%; animation-duration: 37s; animation-delay: -24s; transform-origin: 2vw 3vh; box-shadow: -2vmin 0 0.26856493895746947vmin currentColor; }
.background span:nth-child(22) { color: #d103b8; top: 98%; left: 22%; animation-duration: 20s; animation-delay: -20s; transform-origin: -23vw 0vh; box-shadow: 2vmin 0 1.0231393973873253vmin currentColor; }
.background span:nth-child(23) { color: #d103b8; top: 77%; left: 81%; animation-duration: 35s; animation-delay: -3s; transform-origin: -24vw 8vh; box-shadow: -2vmin 0 1.0401128439392888vmin currentColor; }
.background span:nth-child(24) { color: #ff4fd8; top: 53%; left: 84%; animation-duration: 37s; animation-delay: -15s; transform-origin: 0vw 6vh; box-shadow: -2vmin 0 0.6590603327479992vmin currentColor; }
.background span:nth-child(25) { color: #583C87; top: 80%; left: 99%; animation-duration: 11s; animation-delay: -24s; transform-origin: 23vw -18vh; box-shadow: -2vmin 0 0.591888018622273vmin currentColor; }
.background span:nth-child(26) { color: #b12cff; top: 53%; left: 23%; animation-duration: 50s; animation-delay: -21s; transform-origin: 9vw 13vh; box-shadow: -2vmin 0 1.1185003683459789vmin currentColor; }
.background span:nth-child(27) { color: #583C87; top: 17%; left: 60%; animation-duration: 44s; animation-delay: -17s; transform-origin: -24vw -3vh; box-shadow: 2vmin 0 1.0087301040187047vmin currentColor; }
.background span:nth-child(28) { color: #b12cff; top: 28%; left: 78%; animation-duration: 12s; animation-delay: -31s; transform-origin: -24vw 24vh; box-shadow: -2vmin 0 1.192943574343495vmin currentColor; }
.background span:nth-child(29) { color: #d103b8; top: 37%; left: 40%; animation-duration: 15s; animation-delay: -42s; transform-origin: -22vw -21vh; box-shadow: -2vmin 0 0.46114793006148613vmin currentColor; }
.background span:nth-child(30) { color: #d103b8; top: 17%; left: 83%; animation-duration: 29s; animation-delay: -30s; transform-origin: 16vw 14vh; box-shadow: -2vmin 0 0.7479717622241625vmin currentColor; }
.background span:nth-child(31) { color: #583C87; top: 5%; left: 46%; animation-duration: 55s; animation-delay: -41s; transform-origin: -14vw -12vh; box-shadow: 2vmin 0 0.2785209430607828vmin currentColor; }
.background span:nth-child(32) { color: #583C87; top: 64%; left: 71%; animation-duration: 20s; animation-delay: -7s; transform-origin: -17vw -12vh; box-shadow: 2vmin 0 0.9283392941084612vmin currentColor; }
.background span:nth-child(33) { color: #ff4fd8; top: 78%; left: 63%; animation-duration: 23s; animation-delay: -29s; transform-origin: 5vw 16vh; box-shadow: 2vmin 0 0.9629263303461053vmin currentColor; }
.background span:nth-child(34) { color: #d103b8; top: 3%; left: 94%; animation-duration: 6s; animation-delay: -36s; transform-origin: 5vw 17vh; box-shadow: 2vmin 0 1.117352798419335vmin currentColor; }
.background span:nth-child(35) { color: #b12cff; top: 62%; left: 69%; animation-duration: 30s; animation-delay: -24s; transform-origin: -10vw 7vh; box-shadow: 2vmin 0 0.3928400526637421vmin currentColor; }
.background span:nth-child(36) { color: #b12cff; top: 56%; left: 24%; animation-duration: 31s; animation-delay: -47s; transform-origin: 14vw -11vh; box-shadow: 2vmin 0 0.344635617844287vmin currentColor; }
.background span:nth-child(37) { color: #b12cff; top: 36%; left: 55%; animation-duration: 8s; animation-delay: -34s; transform-origin: -21vw 21vh; box-shadow: -2vmin 0 0.26098552522612606vmin currentColor; }
.background span:nth-child(38) { color: #ff4fd8; top: 82%; left: 15%; animation-duration: 21s; animation-delay: -44s; transform-origin: 20vw -19vh; box-shadow: -2vmin 0 1.20478919359615vmin currentColor; }
.background span:nth-child(39) { color: #b12cff; top: 79%; left: 85%; animation-duration: 11s; animation-delay: -12s; transform-origin: 24vw -12vh; box-shadow: -2vmin 0 0.4451152206633796vmin currentColor; }
.background span:nth-child(40) { color: #ff4fd8; top: 30%; left: 67%; animation-duration: 23s; animation-delay: -11s; transform-origin: 3vw 0vh; box-shadow: -2vmin 0 0.758017016183644vmin currentColor; }

.tournament-app-layout::before,
.tournament-app-layout::after {
    content: none;
}

.tournament-bg-scene {
    position: fixed;
    width: var(--iso-cube-size);
    height: var(--iso-cube-size);
    left: 50%;
    top: 52%;
    z-index: -1;
    pointer-events: none;
    perspective: 1400px;
    transform: translate3d(-50%, -50%, 0);
    transform-origin: center center;
    animation: tournamentIsoCubeDrift 24s ease-in-out infinite alternate;
    will-change: transform;
}

.tournament-bg-cube {
    width: 100%;
    height: 100%;
    position: relative;
    transform-style: preserve-3d;
    transform: rotateX(54.736deg) rotateZ(-45deg);
    animation: tournamentIsoCubeSpin 9s linear infinite;
}

html.gc-tournament-reduce-motion .background span,
html.gc-tournament-reduce-motion .tournament-bg-scene,
html.gc-tournament-reduce-motion .tournament-bg-cube {
    animation: none !important;
}

.cube-face {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(236, 146, 255, 0.46);
    border-radius: 0;
    box-shadow:
        0 0 30px rgba(222, 66, 208, 0.24),
        inset 0 0 22px rgba(255, 132, 232, 0.12);
    background-size: 30px 30px, 30px 30px, auto;
    background-image:
        linear-gradient(rgba(255, 132, 232, 1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(192, 98, 255, 1) 1px, transparent 1px),
        linear-gradient(160deg, rgb(197, 78, 250), rgb(96, 36, 160));
    background-color: rgb(134, 52, 190);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 10px 12px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-shadow: 0 0 8px rgba(0, 0, 0, 0.7);
}

.face-front {
    transform: rotateY(0deg) translateZ(var(--iso-cube-half));
    border-color: rgba(255, 116, 214, 0.95);
}

.face-back {
    transform: rotateY(180deg) translateZ(var(--iso-cube-half));
    background-image:
        linear-gradient(rgba(235, 132, 232, 1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(184, 104, 244, 1) 1px, transparent 1px),
        linear-gradient(160deg, rgb(168, 70, 226), rgb(82, 30, 136));
    background-color: rgb(126, 48, 176);
    border-color: rgba(255, 198, 117, 0.95);
}

.face-right {
    transform: rotateY(90deg) translateZ(var(--iso-cube-half));
    background-image:
        linear-gradient(rgba(255, 132, 232, 1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(171, 84, 240, 1) 1px, transparent 1px),
        linear-gradient(160deg, rgb(154, 63, 229), rgb(74, 26, 128));
    background-color: rgb(118, 46, 170);
    border-color: rgba(128, 255, 178, 0.95);
}

.face-right::before,
.face-right::after {
    content: none;
}

.face-left {
    transform: rotateY(-90deg) translateZ(var(--iso-cube-half));
    background-image:
        linear-gradient(rgba(255, 132, 232, 1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(171, 84, 240, 1) 1px, transparent 1px),
        linear-gradient(160deg, rgb(154, 63, 229), rgb(74, 26, 128));
    background-color: rgb(118, 46, 170);
    border-color: rgba(128, 255, 178, 0.95);
}

.face-top {
    transform: rotateX(90deg) translateZ(var(--iso-cube-half));
    background-image:
        linear-gradient(rgba(255, 152, 239, 1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 129, 231, 1) 1px, transparent 1px),
        linear-gradient(160deg, rgb(249, 95, 225), rgb(141, 56, 211));
    background-color: rgb(168, 72, 218);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    border-color: rgba(255, 255, 255, 0.96);
}

.face-bottom {
    transform: rotateX(-90deg) translateZ(var(--iso-cube-half));
    background-image:
        linear-gradient(rgba(229, 120, 225, 1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(176, 102, 236, 1) 1px, transparent 1px),
        linear-gradient(160deg, rgb(126, 46, 184), rgb(66, 24, 112));
    background-color: rgb(112, 44, 160);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    border-color: rgba(255, 149, 149, 0.95);
}

@keyframes tournamentIsoCubeFloat {
    from { transform: rotateX(54.736deg) rotateZ(-45deg); }
    to { transform: rotateX(54.736deg) rotateZ(-45deg); }
}

@keyframes tournamentIsoCubeSpin {
    0% {
        transform: rotateX(54.736deg) rotateZ(-45deg) rotateY(0deg);
    }
    100% {
        transform: rotateX(54.736deg) rotateZ(-45deg) rotateY(360deg);
    }
}

@keyframes tournamentIsoCubeDrift {
    0% {
        transform: translate3d(calc(-50% - 22vw), calc(-50% - 16vh), 0);
    }
    35% {
        transform: translate3d(calc(-50% + 20vw), calc(-50% - 22vh), 0);
    }
    70% {
        transform: translate3d(calc(-50% + 26vw), calc(-50% + 16vh), 0);
    }
    100% {
        transform: translate3d(calc(-50% - 14vw), calc(-50% + 24vh), 0);
    }
}

@keyframes tournamentGlobalSweepA {
    0% {
        background-position: -160% 24vh, -140% 53vh, -150% 79vh, 0 0;
    }
    100% {
        background-position: 150% 24vh, -140% 53vh, -150% 79vh, 0 0;
    }
}

@keyframes tournamentGlobalSweepB {
    0% {
        background-position: 150% 24vh, -140% 53vh, -150% 79vh, 0 0;
    }
    100% {
        background-position: 150% 24vh, 155% 53vh, -150% 79vh, 0 0;
    }
}

@keyframes tournamentGlobalSweepC {
    0% {
        background-position: 150% 24vh, 155% 53vh, -150% 79vh, 0 0;
    }
    100% {
        background-position: 150% 24vh, 155% 53vh, 150% 79vh, 0 0;
    }
}

@media (max-width: 900px) {
    .tournament-bg-scene {
        --iso-cube-size: clamp(180px, 58vmin, 340px);
        top: 56%;
        opacity: 0.28;
    }

    @keyframes tournamentIsoCubeDrift {
        0% {
            transform: translate3d(calc(-50% - 8vw), calc(-50% - 10vh), 0);
        }
        35% {
            transform: translate3d(calc(-50% + 10vw), calc(-50% - 12vh), 0);
        }
        70% {
            transform: translate3d(calc(-50% + 6vw), calc(-50% + 8vh), 0);
        }
        100% {
            transform: translate3d(calc(-50% - 10vw), calc(-50% + 10vh), 0);
        }
    }
}

@media (min-aspect-ratio: 21/9) {
    .tournament-bg-scene {
        --iso-cube-size: clamp(260px, 24vmin, 420px);
    }

    @keyframes tournamentIsoCubeDrift {
        0% {
            transform: translate3d(calc(-50% - 34vw), calc(-50% - 14vh), 0);
        }
        35% {
            transform: translate3d(calc(-50% + 34vw), calc(-50% - 18vh), 0);
        }
        70% {
            transform: translate3d(calc(-50% + 30vw), calc(-50% + 14vh), 0);
        }
        100% {
            transform: translate3d(calc(-50% - 28vw), calc(-50% + 18vh), 0);
        }
    }
}

.tournament-app-layout {
    display: block;
}

.tournament-sidebar {
    position: fixed;
    top: var(--header-height);
    left: 0;
    width: var(--sidebar-width);
    height: calc(95vh - var(--header-height));
    background: linear-gradient(180deg, rgba(9, 12, 19, 0.96), rgba(14, 18, 29, 0.98));
    backdrop-filter: blur(16px);
    border-right: 1px solid rgba(255, 255, 255, 0.06);
    padding: 20px 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    z-index: 1000;
    box-shadow: 18px 0 36px rgba(0, 0, 0, 0.24);
    transition: transform 0.22s ease, opacity 0.22s ease;
}

.tournament-main {
    position: relative;
    z-index: 2;
}

.tournament-sidebar-edge-toggle,
.tournament-sidebar-peek-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 58px;
    padding: 0;
    border: 0;
    border-radius: 0 12px 12px 0;
    background: linear-gradient(180deg, rgba(209, 3, 184, 0.92), rgba(93, 124, 255, 0.94));
    color: #eef3ff;
    cursor: pointer;
    box-shadow: 0 14px 28px rgba(93, 124, 255, 0.18);
}

.tournament-sidebar-edge-toggle {
    position: absolute;
    top: 22px;
    right: -22px;
}

.tournament-sidebar-peek-btn {
    position: fixed;
    top: calc(var(--header-height) + 22px);
    left: 0;
    z-index: 1002;
}

.sidebar-edge-arrow {
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1;
}

.tournament-sidebar-edge-toggle[hidden],
.tournament-sidebar-peek-btn[hidden] {
    display: none !important;
}

.tournament-sidebar-top {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.tournament-sidebar-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border-radius: 16px;
    text-decoration: none;
    background:
        linear-gradient(135deg, rgba(209, 3, 184, 0.16), rgba(93, 124, 255, 0.16)),
        rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.brand-avatar-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 14px;
    border: 2px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    overflow: hidden;
    flex: 0 0 auto;
}

.brand-avatar {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.brand-copy {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}

.brand-copy strong {
    color: #f7faff;
    font-size: 1rem;
    line-height: 1;
}

.brand-copy small {
    color: #97a4ba;
    font-size: 0.77rem;
    line-height: 1.3;
}

.tournament-sidebar-intro {
    padding: 0 4px;
    color: #8794aa;
    font-size: 0.84rem;
    line-height: 1.55;
}

.tournament-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sidebar-section-label {
    padding: 0 4px;
    color: #6f7c92;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.sidebar-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 13px;
    border-radius: 14px;
    color: #a4afc3;
    text-decoration: none;
    border: 1px solid rgba(255, 255, 255, 0.04);
    background: rgba(255, 255, 255, 0.02);
    transition: all 0.2s ease;
}

.sidebar-item i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    text-align: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: #d6dded;
    flex: 0 0 auto;
}

.sidebar-text {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}

.sidebar-text strong {
    color: #eef2fb;
    font-size: 0.92rem;
    line-height: 1.2;
}

.sidebar-text small {
    color: #7f8ca3;
    font-size: 0.77rem;
    line-height: 1.4;
}

.sidebar-item:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.08);
    transform: translateY(-1px);
}

.sidebar-item.active {
    background:
        linear-gradient(135deg, rgba(209, 3, 184, 0.18), rgba(93, 124, 255, 0.2)),
        rgba(255, 255, 255, 0.04);
    border-color: rgba(142, 121, 255, 0.34);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
}

.sidebar-item.active i {
    background: linear-gradient(135deg, #d103b8, #5d7cff);
    color: #ffffff;
}

.tournament-sidebar-footer {
    margin-top: auto;
}

.sidebar-footer-card {
    padding: 14px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.footer-label {
    display: inline-flex;
    margin-bottom: 0.55rem;
    color: #d7def0;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.sidebar-footer-card p {
    margin: 0;
    color: #8896ac;
    font-size: 0.8rem;
    line-height: 1.55;
}

.tournament-main {
    margin-left: var(--sidebar-width);
    padding-top: var(--header-height);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    transition: margin-left 0.22s ease;
}

.tournament-content {
    padding: 28px 28px 40px;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
}

.tournament-mobile-toggle {
    display: none;
    align-items: center;
    gap: 10px;
    width: fit-content;
    margin: 0 0 16px;
    padding: 10px 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #eef3ff;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
}

.mobile-toggle-icon {
    font-size: 1rem;
}

.mobile-toggle-label {
    line-height: 1;
}

.tournament-mobile-sidebar {
    display: none;
    flex-direction: column;
    position: absolute;
    top: var(--header-height);
    left: 16px;
    right: 16px;
    z-index: 1001;
    gap: 8px;
    background: rgba(9, 12, 19, 0.96);
    padding: 12px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 36px rgba(0, 0, 0, 0.28);
}

.tournament-mobile-sidebar.active {
    display: flex;
}

.tournament-mobile-sidebar a {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 10px;
    color: #eef3ff;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.04);
}

.tournament-app-layout.sidebar-collapsed .tournament-sidebar {
    transform: translateX(calc(-1 * var(--sidebar-width)));
    opacity: 0;
    pointer-events: none;
}

.gc-tournament-sidebar-collapsed-init .tournament-sidebar {
    transform: translateX(calc(-1 * var(--sidebar-width)));
    opacity: 0;
    pointer-events: none;
}

.tournament-app-layout.sidebar-collapsed .tournament-main {
    margin-left: 0;
}

.gc-tournament-sidebar-collapsed-init .tournament-main {
    margin-left: 0;
}

@media (max-width: 768px) {
    .tournament-sidebar {
        display: none;
    }

    .tournament-main {
        margin-left: 0;
        padding-top: var(--header-height);
    }

    .tournament-mobile-toggle {
        display: inline-flex;
    }

    .tournament-content {
        padding: 16px 16px 32px;
    }

    .tournament-sidebar-peek-btn {
        display: none;
    }
}
