:root {
    --tt-bg: #060806;
    --tt-panel: rgba(17, 23, 19, 0.9);
    --tt-panel-strong: rgba(24, 32, 26, 0.96);
    --tt-border: rgba(134, 163, 111, 0.28);
    --tt-text: #f5f1df;
    --tt-muted: #afb5a5;
    --tt-accent: #f2c20f;
    --tt-green: #2d6b43;
    --tt-green-light: #86a36f;
}

* {
    box-sizing: border-box;
}

[hidden] {
    display: none !important;
}

body {
    margin: 0;
    min-height: 100vh;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background:
        linear-gradient(135deg, rgba(4, 6, 5, 0.72), rgba(4, 5, 4, 0.9)),
        url("/images/tournaments/kita-pickle/jungle-background.png"),
        linear-gradient(135deg, #050706 0%, #0b100d 46%, #040504 100%);
    background-attachment: fixed;
    background-position: center top;
    background-repeat: repeat-y;
    background-size: 100% auto;
    color: var(--tt-text);
}

a {
    color: inherit;
}

.tt-header {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    background: rgba(5, 7, 6, 0.92);
    border-bottom: 1px solid var(--tt-border);
    backdrop-filter: blur(12px);
}

.tt-language {
    display: inline-flex;
    flex: 0 0 auto;
    padding: 3px;
    border: 1px solid var(--tt-border);
    border-radius: 999px;
    background: rgba(255, 255, 255, .035);
}

.tt-language a {
    min-width: 36px;
    padding: 7px 9px;
    border-radius: 999px;
    color: var(--tt-muted);
    font-size: 11px;
    font-weight: 950;
    text-align: center;
    text-decoration: none;
}

.tt-language a.active {
    color: #10120f;
    background: var(--tt-accent);
}

.tt-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}

.tt-brand img {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    object-fit: cover;
    box-shadow: 0 0 0 2px rgba(245, 241, 223, 0.16);
}

.tt-brand strong,
.tt-brand small {
    display: block;
}

.tt-brand strong {
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tt-brand small {
    color: var(--tt-accent);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.tt-page {
    width: min(760px, calc(100vw - 28px));
    margin: 0 auto;
    padding: 22px 0 54px;
}

.tt-hero {
    margin: 8px 0 20px;
}

.tt-eyebrow {
    margin: 0 0 8px;
    color: var(--tt-accent);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

h1 {
    margin: 0;
    font-size: clamp(34px, 10vw, 64px);
    line-height: 0.95;
    letter-spacing: 0;
    text-transform: uppercase;
}

h2 {
    margin: 0 0 12px;
    font-size: 18px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tt-muted {
    margin: 10px 0 0;
    color: var(--tt-muted);
}

.tt-refresh {
    margin-top: 4px;
    font-size: 13px;
}

.tt-hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.tt-source,
.tt-secondary-link {
    color: var(--tt-accent);
    font-weight: 800;
    text-decoration: none;
}

.tt-secondary-link {
    color: var(--tt-text);
}

.tt-share-button {
    min-height: 38px;
    padding: 0 16px;
    border: 1px solid rgba(242, 194, 15, 0.62);
    border-radius: 999px;
    color: #10120f;
    background: var(--tt-accent);
    cursor: pointer;
    font: inherit;
    font-size: 14px;
    font-weight: 950;
    box-shadow: 0 12px 30px rgba(242, 194, 15, 0.22);
}

.tt-list,
.tt-day,
.tt-period,
.tt-registered-block,
.tt-search,
.tt-scope,
.tt-view-toggle,
.tt-followed,
.tt-empty,
.tt-section-title {
    margin-top: 18px;
}

.tt-tournament-link,
.tt-search,
.tt-empty,
.tt-day,
.tt-period,
.tt-registered-block,
.tt-registration-group,
.tt-match {
    border: 1px solid var(--tt-border);
    border-radius: 8px;
    background: var(--tt-panel);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

.tt-tournament-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px;
    text-decoration: none;
}

.tt-tournament-link + .tt-tournament-link {
    margin-top: 10px;
}

.tt-tournament-link strong {
    color: var(--tt-accent);
}

.tt-scope {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.tt-view-toggle {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.tt-scope a,
.tt-view-toggle a,
.tt-followed a,
.tt-followed span {
    border: 1px solid var(--tt-border);
    border-radius: 999px;
    text-align: center;
}

.tt-scope a,
.tt-view-toggle a {
    padding: 10px 12px;
    color: var(--tt-muted);
    background: rgba(0, 0, 0, 0.24);
    font-weight: 900;
    text-decoration: none;
}

.tt-view-toggle a {
    padding: 8px 12px;
    font-size: 13px;
}

.tt-scope a.active,
.tt-view-toggle a.active {
    color: #071009;
    background: var(--tt-accent);
    border-color: rgba(242, 194, 15, 0.8);
}

.tt-followed {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tt-followed a,
.tt-followed span {
    display: inline-block;
    padding: 7px 10px;
    color: var(--tt-text);
    background: rgba(45, 107, 67, 0.42);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.tt-search {
    padding: 14px;
}

.tt-search label {
    display: block;
    margin-bottom: 8px;
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.tt-search div {
    display: flex;
    gap: 8px;
}

.tt-search input,
.tt-search button {
    min-height: 42px;
    border-radius: 7px;
    border: 1px solid var(--tt-border);
    font: inherit;
}

.tt-search input {
    width: 100%;
    min-width: 0;
    padding: 0 12px;
    color: var(--tt-text);
    background: rgba(0, 0, 0, 0.28);
}

.tt-search button {
    padding: 0 16px;
    color: #071009;
    background: var(--tt-accent);
    font-weight: 900;
}

.tt-clear-search {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid var(--tt-border);
    border-radius: 7px;
    color: var(--tt-muted);
    background: rgba(0, 0, 0, 0.2);
    font-weight: 850;
    text-decoration: none;
}

.tt-empty {
    padding: 18px;
    color: var(--tt-muted);
}

.tt-empty a {
    display: block;
    margin-top: 10px;
    color: var(--tt-accent);
    font-weight: 900;
    text-decoration: none;
}

.tt-player-profile-hero {
    padding: 22px;
    border: 1px solid var(--tt-border);
    border-radius: 14px;
    background:
        radial-gradient(circle at top right, rgba(242, 194, 15, 0.12), transparent 19rem),
        var(--tt-panel-strong);
    box-shadow: 0 24px 55px rgba(0, 0, 0, 0.34);
}

.tt-player-profile-meta,
.tt-player-profile-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tt-player-profile-meta {
    margin-top: 18px;
}

.tt-player-profile-meta span,
.tt-player-profile-categories span {
    padding: 7px 10px;
    border: 1px solid var(--tt-border);
    border-radius: 999px;
    color: var(--tt-text);
    background: rgba(134, 163, 111, 0.12);
    font-size: 13px;
    font-weight: 800;
}

.tt-player-profile-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 18px 0 26px;
}

.tt-player-profile-stats div {
    padding: 16px 10px;
    border: 1px solid var(--tt-border);
    border-radius: 10px;
    background: var(--tt-panel);
    text-align: center;
}

.tt-player-profile-stats strong,
.tt-player-profile-stats span {
    display: block;
}

.tt-player-profile-stats strong {
    color: var(--tt-accent);
    font-size: 28px;
}

.tt-player-profile-stats span {
    margin-top: 3px;
    color: var(--tt-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.tt-player-profile-event {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 16px;
    padding: 18px;
    border: 1px solid var(--tt-border);
    border-radius: 10px;
    background: var(--tt-panel);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

.tt-player-profile-event + .tt-player-profile-event {
    margin-top: 12px;
}

.tt-player-profile-event-date {
    padding-right: 14px;
    border-right: 1px solid var(--tt-border);
    text-align: center;
}

.tt-player-profile-event-date strong,
.tt-player-profile-event-date span {
    display: block;
}

.tt-player-profile-event-date strong {
    color: var(--tt-accent);
    font-size: 30px;
    line-height: 1;
}

.tt-player-profile-event-date span {
    margin-top: 4px;
    color: var(--tt-muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.tt-player-profile-event-content h3 {
    margin: 0;
    font-size: 17px;
    line-height: 1.25;
}

.tt-player-profile-event-content h3 a {
    color: var(--tt-text);
    text-decoration: none;
}

.tt-player-profile-event-content h3 a:hover {
    color: var(--tt-accent);
}

.tt-player-profile-categories {
    margin-top: 12px;
}

@media (max-width: 520px) {
    .tt-player-profile-stats {
        gap: 6px;
    }

    .tt-player-profile-stats div {
        padding: 13px 5px;
    }

    .tt-player-profile-event {
        grid-template-columns: 58px minmax(0, 1fr);
        gap: 12px;
        padding: 14px;
    }
}

.tt-section-title {
    padding-top: 10px;
    margin-bottom: 12px;
}

.tournament-live {
    margin: 18px 0 22px;
}

.tournament-live h2 {
    margin-bottom: 10px;
}

.tournament-live p {
    margin: 10px 0 0;
    color: var(--tt-muted);
    font-size: 13px;
}

.tournament-live__player,
.tournament-live__empty {
    width: 100%;
    border: 1px solid var(--tt-border);
    border-radius: 12px;
    overflow: hidden;
    background: #000;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

.tournament-live__player {
    aspect-ratio: 16 / 9;
}

.tournament-live__player iframe {
    display: block;
    width: 100%;
    height: 100%;
}

.tournament-live__empty {
    padding: 22px;
    color: var(--tt-muted);
    font-weight: 850;
}

.tt-live-now {
    margin: 18px 0 22px;
    padding: 12px;
    border: 1px solid rgba(242, 194, 15, 0.5);
    border-radius: 8px;
    background: rgba(28, 20, 4, 0.72);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

.tt-live-now-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.tt-live-now-header h2 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.tt-live-now-header span {
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.tt-live-dot {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: #ff3b30;
    box-shadow: 0 0 0 rgba(255, 59, 48, 0.56);
    animation: tt-live-pulse 1.4s infinite;
}

.tt-live-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-right: 6px;
    color: #ffcfca;
    font-style: normal;
    font-weight: 950;
    text-transform: uppercase;
}

.tt-match.is-live {
    border-color: rgba(255, 59, 48, 0.54);
    background: rgba(35, 18, 15, 0.9);
}

.tt-match.is-live header {
    gap: 8px;
}

.tt-match.is-live .tt-match-meta {
    margin-top: 4px;
}

@keyframes tt-live-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 59, 48, 0.56);
    }
    70% {
        box-shadow: 0 0 0 8px rgba(255, 59, 48, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 59, 48, 0);
    }
}

.tt-section-title h2 {
    margin-bottom: 0;
    font-size: 22px;
}

.tt-section-title + .tt-focus-groups,
.tt-section-title + .tt-day {
    margin-top: 0;
}

.tt-period {
    overflow: hidden;
}

.tt-period > summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 20px;
    align-items: center;
    column-gap: 12px;
    min-height: 64px;
    padding: 16px;
    cursor: pointer;
    list-style: none;
}

.tt-period > summary::-webkit-details-marker {
    display: none;
}

.tt-period > summary::after {
    content: "+";
    grid-column: 3;
    justify-self: end;
    color: var(--tt-accent);
    font-size: 20px;
    font-weight: 950;
}

.tt-period[open] > summary::after {
    content: "-";
}

.tt-period > summary span {
    min-width: 0;
    color: var(--tt-text);
    font-size: 22px;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tt-period > summary small {
    justify-self: end;
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    white-space: nowrap;
}

.tt-period > .tt-period-content {
    display: grid;
    gap: 10px;
    padding: 0 10px 10px;
}

.tt-period > .tt-period-content > .tt-day,
.tt-period > .tt-period-content .tt-registration-groups {
    margin-top: 0;
}

.tt-registered-block {
    overflow: hidden;
}

.tt-registered-block > summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 20px;
    align-items: center;
    column-gap: 12px;
    min-height: 56px;
    padding: 14px 16px;
    cursor: pointer;
    list-style: none;
}

.tt-registered-block > summary::-webkit-details-marker {
    display: none;
}

.tt-registered-block > summary::after {
    content: "+";
    grid-column: 3;
    justify-self: end;
    color: var(--tt-accent);
    font-size: 20px;
    font-weight: 950;
}

.tt-registered-block[open] > summary::after {
    content: "-";
}

.tt-registered-block > summary span {
    min-width: 0;
    color: var(--tt-text);
    font-size: 18px;
    font-weight: 950;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.tt-registered-block > summary small {
    justify-self: start;
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    white-space: nowrap;
}

.tt-registered-block > .tt-day {
    margin: 0 10px 10px;
    box-shadow: none;
}

.tt-registration-groups,
.tt-matches,
.tt-focus-groups,
.tt-phase-groups {
    display: grid;
    gap: 10px;
}

.tt-focus-group {
    overflow: hidden;
    border: 1px solid var(--tt-border);
    border-radius: 8px;
    background: var(--tt-panel);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

.tt-focus-group > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border-bottom: 1px solid var(--tt-border);
    background: rgba(45, 107, 67, 0.22);
}

.tt-focus-group > header strong {
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.tt-focus-group > header span {
    flex: 0 0 auto;
    color: var(--tt-accent);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.tt-focus-group .tt-matches {
    padding: 10px;
}

.tt-day {
    overflow: hidden;
}

.tt-day > summary,
.tt-registration-group > summary,
.tt-match-phase > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    list-style: none;
}

.tt-day > summary::-webkit-details-marker,
.tt-registration-group > summary::-webkit-details-marker,
.tt-match-phase > summary::-webkit-details-marker {
    display: none;
}

.tt-day > summary {
    padding: 15px;
    background: rgba(0, 0, 0, 0.22);
}

.tt-day > summary::after,
.tt-registration-group > summary::after,
.tt-match-phase > summary::after {
    content: "+";
    flex: 0 0 auto;
    color: var(--tt-accent);
    font-size: 20px;
    font-weight: 950;
}

.tt-day[open] > summary::after,
.tt-registration-group[open] > summary::after,
.tt-match-phase[open] > summary::after {
    content: "-";
}

.tt-day > summary span {
    font-size: 18px;
    font-weight: 950;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.tt-day > summary small {
    margin-left: auto;
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.tt-day > .tt-registration-groups {
    padding: 10px;
}

.tt-registration-group > .tt-matches {
    padding: 10px;
}

.tt-registration-group {
    overflow: hidden;
    box-shadow: none;
}

.tt-registration-group > summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 20px;
    column-gap: 12px;
    padding: 14px;
    background: rgba(45, 107, 67, 0.22);
}

.tt-registration-group > summary::after {
    grid-column: 3;
    justify-self: end;
}

.tt-registration-group-empty > summary {
    grid-template-columns: minmax(0, 1fr);
    cursor: default;
    pointer-events: none;
}

.tt-registration-group-empty > summary::after,
.tt-registration-group-empty[open] > summary::after {
    content: none;
    display: none;
}

.tt-registration-group[open] > summary {
    border-bottom: 1px solid var(--tt-border);
}

.tt-registration-group > summary strong {
    min-width: 0;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.tt-registration-group > summary span {
    justify-self: start;
    color: var(--tt-accent);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    white-space: nowrap;
}

.tt-registration-group > summary .tt-phase-progress,
.tt-match-phase > summary .tt-phase-progress {
    flex: 0 0 auto;
    margin-left: auto;
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.tt-match-phase > summary .tt-phase-progress.is-started {
    color: var(--tt-accent);
}

.tt-match-phase > summary .tt-phase-progress.is-finished {
    color: #88d498;
}

.tt-phase-groups {
    padding: 10px;
}

.tt-match-phase {
    overflow: hidden;
    border: 1px solid rgba(134, 163, 111, 0.16);
    border-radius: 7px;
    background: rgba(0, 0, 0, 0.18);
}

.tt-match-phase > summary {
    padding: 11px 12px;
}

.tt-match-phase[open] > summary {
    border-bottom: 1px solid rgba(134, 163, 111, 0.16);
}

.tt-match-phase > summary strong {
    font-size: 13px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.tt-match-phase > summary span {
    flex: 0 0 auto;
    margin-left: auto;
    color: var(--tt-muted);
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.tt-match-phase > .tt-matches {
    padding: 10px;
}

.tt-registrations {
    display: grid;
}

.tt-registration {
    padding: 12px 14px;
}

.tt-registration + .tt-registration {
    border-top: 1px solid rgba(134, 163, 111, 0.16);
}

.tt-registration p {
    margin: 0;
    color: var(--tt-text);
    font-weight: 850;
    line-height: 1.35;
}

.tt-team-line {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
}

.tt-player {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 5px;
}

.tt-team-separator {
    color: rgba(245, 241, 223, 0.5);
    font-weight: 900;
}

.tt-flag {
    display: inline-flex;
    width: 1.25em;
    justify-content: center;
    font-size: 14px;
    line-height: 1;
}

.tt-player-name {
    min-width: 0;
}

.tt-registration .tt-team-line {
    flex-wrap: nowrap;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
}

.tt-registration .tt-player {
    flex: 0 1 auto;
}

.tt-registration .tt-player-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tt-registration .tt-team-roster {
    margin-top: 4px;
    color: var(--tt-muted);
    font-size: 13px;
    font-weight: 650;
    line-height: 1.4;
    white-space: normal;
}

.tt-match {
    padding: 12px;
}

.tt-match.is-finished {
    background: var(--tt-panel-strong);
}

.tt-match.is-next {
    border-color: rgba(118, 150, 100, 0.48);
}

.tt-match header,
.tt-match-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.tt-court-stream-player {
    aspect-ratio: 16 / 9;
    margin-bottom: 14px;
    overflow: hidden;
    border: 1px solid rgba(255, 54, 94, .48);
    border-radius: 12px;
    background: #000;
}

.tt-court-stream-player iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.tt-featured-court-matches {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

@media (max-width: 700px) {
    .tt-featured-court-matches { grid-template-columns: 1fr; }
}

.tt-match-header-start {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.tt-match header span {
    color: var(--tt-accent);
    flex: 0 0 auto;
    font-size: 20px;
    font-weight: 950;
}

.tt-match header strong {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 7px;
    min-width: 0;
    text-align: right;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.tt-match header strong em {
    padding: 3px 7px;
    border-radius: 999px;
    color: #10120f;
    background: var(--tt-accent);
    font-size: 10px;
    font-style: normal;
    font-weight: 950;
    letter-spacing: 0.08em;
}

.tt-match header strong em.tt-next-badge {
    padding: 0;
    color: rgba(242, 194, 15, 0.95);
    background: transparent;
    font-size: 10px;
}

.tt-match header strong em.tt-next-badge::after {
    content: "·";
    margin-left: 7px;
    color: rgba(245, 241, 223, 0.42);
}

.tt-match-meta {
    margin-top: 4px;
    color: var(--tt-muted);
    font-size: 12px;
}

.tt-teams {
    margin-top: 10px;
    display: grid;
    gap: 4px;
}

.tt-team-result {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(36px, auto);
    align-items: center;
    gap: 10px;
    margin: 0;
    min-height: 42px;
    padding: 8px 10px;
    border-radius: 7px;
    background: rgba(0, 0, 0, 0.22);
    line-height: 1.25;
}

.tt-team-side {
    min-width: 0;
}

.tt-versus {
    justify-self: center;
    padding: 0;
    color: var(--tt-accent);
    font-size: 10px;
    font-weight: 950;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.tt-team-result.is-winner {
    background: rgba(242, 194, 15, 0.11);
    box-shadow: inset 3px 0 0 var(--tt-accent);
}

.tt-team-result p {
    margin: 0;
}

.tt-team-result .tt-team-line {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 8px;
    max-width: 100%;
    overflow: hidden;
}

.tt-team-result .tt-player {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    max-width: 100%;
}

.tt-team-result .tt-player + .tt-player::before {
    content: "/";
    color: rgba(245, 241, 223, 0.54);
    font-weight: 900;
    margin-right: 4px;
}

.tt-team-result .tt-team-line.is-stacked {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    line-height: 1.15;
}

.tt-team-result .tt-team-line.is-stacked .tt-player {
    display: grid;
    grid-template-columns: 1.25em minmax(0, 1fr);
    align-items: start;
    column-gap: 4px;
    width: 100%;
    max-width: none;
}

.tt-team-result .tt-team-line.is-stacked .tt-player + .tt-player::before {
    content: none;
}

.tt-team-result .tt-team-line.is-stacked .tt-flag {
    grid-column: 1;
}

.tt-team-result .tt-team-line.is-stacked .tt-player-name {
    grid-column: 2;
}

.tt-team-result .tt-player-name {
    overflow-wrap: anywhere;
}

.tt-team-result:not(.is-winner) .tt-team-line {
    color: rgba(245, 241, 223, 0.74);
}

.tt-team-score {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(24px, auto);
    justify-content: end;
    column-gap: 6px;
    color: rgba(245, 241, 223, 0.58);
    font-size: 22px;
    font-weight: 950;
    line-height: 1;
    text-align: right;
    white-space: nowrap;
}

.tt-team-score span {
    display: block;
    min-width: 24px;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.tt-team-score-set.is-set-winner {
    color: var(--tt-accent);
}

.tt-team-event-details {
    margin-top: 8px;
    border-top: 1px solid rgba(242, 194, 15, 0.18);
}

.tt-team-event-details > summary {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 8px 2px;
    cursor: pointer;
    list-style: none;
    color: rgba(245, 241, 223, 0.76);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.tt-team-event-details > summary::-webkit-details-marker { display: none; }
.tt-team-event-details > summary:hover { color: var(--tt-text); }

.tt-team-event-details-toggle {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--tt-accent);
}

.tt-team-event-details-close { display: none; }
.tt-team-event-details-chevron { font-size: 16px; transition: transform 0.18s ease; }
.tt-team-event-details[open] .tt-team-event-details-open { display: none; }
.tt-team-event-details[open] .tt-team-event-details-close { display: inline; }
.tt-team-event-details[open] .tt-team-event-details-chevron { transform: rotate(180deg); }

.tt-team-event-submatches {
    display: grid;
    gap: 0;
    padding: 0;
    border-top: 1px solid rgba(242, 194, 15, 0.14);
}

.tt-team-event-submatch {
    padding: 8px 2px;
    border-bottom: 1px solid rgba(245, 241, 223, 0.07);
}

.tt-team-event-submatch:last-child { border-bottom: 0; }

.tt-team-event-submatch-title,
.tt-team-event-submatch-team {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.tt-team-event-submatch-title {
    margin-bottom: 3px;
    color: rgba(245, 241, 223, 0.58);
    font-size: 10px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.tt-team-event-submatch-team {
    min-height: 22px;
    padding: 2px 0;
    color: rgba(245, 241, 223, 0.72);
    font-size: 12px;
}

.tt-team-event-submatch-team > span { overflow-wrap: anywhere; }
.tt-team-event-submatch-team > strong { color: rgba(245, 241, 223, 0.62); font-size: 14px; white-space: nowrap; }
.tt-team-event-submatch-team.is-winner { color: #fff; font-weight: 750; }
.tt-team-event-submatch-team.is-winner > strong { color: var(--tt-accent); }

@media (max-width: 560px) {
    .tt-search div,
    .tt-match-meta,
    .tt-focus-group > header {
        align-items: stretch;
        flex-direction: column;
    }

    .tt-day > summary,
    .tt-registration-group > summary {
        align-items: flex-start;
    }

    .tt-day > summary small,
    .tt-registration-group > summary span {
        margin-left: 0;
    }

    .tt-match header strong {
        justify-content: flex-end;
        text-align: right;
    }

    .tt-match {
        padding: 10px;
    }

    .tt-match-phase > .tt-matches {
        padding: 8px;
    }

    .tt-team-result {
        gap: 8px;
        min-height: 40px;
        padding: 8px 9px;
    }

    .tt-team-event-details > summary { padding: 7px 1px; }
    .tt-team-event-submatch { padding: 7px 1px; }
    .tt-team-event-submatch-team { align-items: flex-start; font-size: 12px; }

    .tt-team-result .tt-team-line {
        font-size: 14px;
        line-height: 1.22;
    }

    .tt-team-result .tt-player {
        gap: 4px;
    }

    .tt-team-result .tt-flag {
        font-size: 13px;
    }

    .tt-registration {
        padding: 11px 12px;
    }

    .tt-registration p {
        font-size: 15px;
    }

    .tt-registration .tt-team-line {
        gap: 4px;
        align-items: flex-start;
        flex-direction: column;
        flex-wrap: nowrap;
        overflow: visible;
        white-space: normal;
    }

    .tt-registration .tt-player {
        gap: 4px;
        width: 100%;
        max-width: 100%;
    }

    .tt-registration .tt-team-separator {
        display: none;
    }

    .tt-registration .tt-player-name {
        overflow: visible;
        overflow-wrap: anywhere;
        text-overflow: clip;
        white-space: normal;
    }

    .tt-registration .tt-team-roster {
        font-size: 12px;
    }

    .tt-registration .tt-flag {
        font-size: 13px;
    }

    .tt-share-button {
        display: block;
        margin-left: 0;
    }

}
.tt-featured-match { margin: 20px 0; }
.tt-featured-match .tt-match {
    border-width: 2px;
    box-shadow: 0 22px 60px rgba(0, 0, 0, .42);
}
.tt-featured-match .tt-match header strong {
    overflow-wrap: anywhere;
    line-height: 1.2;
}
.tt-featured-match .tt-next-badge {
    display: none !important;
}
.tt-featured-live .tt-match { border-color: #ff365e; box-shadow: 0 0 32px rgba(255, 54, 94, .18); }
.tt-featured-pending .tt-match { border-color: #ffca3a; }
.tt-featured-replay .tt-match { border-color: rgba(185, 242, 39, .42); }
.tt-featured-result .tt-match { border-color: rgba(185, 242, 39, .42); }
.tt-match-featured-status {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 11px !important;
    font-weight: 950 !important;
    letter-spacing: .06em;
    line-height: 1;
    text-transform: uppercase;
}
.tt-match-featured-status.is-live { color: #fff !important; background: #ff365e; }
.tt-match-featured-status.is-pending { color: #171204 !important; background: #ffca3a; }
.tt-match-featured-status.is-replay { color: #071008 !important; background: #b9f227; }
.tt-featured-match .tt-match-media-inline[open] { padding: 0; border: 0; background: transparent; }
.tt-featured-match .tt-match-media-inline[open] > summary { display: none; }
.tt-featured-match .tt-match-media-frame { margin-top: 0; border-radius: 12px; }

@media (max-width: 700px) {
    .tt-featured-match .tt-match header {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
        gap: 6px;
    }

    .tt-featured-match .tt-match header strong {
        justify-content: flex-start;
        text-align: left;
    }
}
.tt-match-media-inline > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    width: 100%;
    padding: 12px 14px;
    border-radius: 12px;
    color: #dfff8d;
    background: rgba(185, 242, 39, .09);
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
}
.tt-match-media-inline > summary::-webkit-details-marker { display: none; }
.tt-match-media-inline > summary:hover { background: rgba(185, 242, 39, .15); }
.tt-match-media-label,
.tt-match-media-toggle { display: inline-flex; align-items: center; gap: 8px; }
.tt-match-media-toggle { color: rgba(239, 255, 208, .72); font-size: 12px; text-transform: uppercase; letter-spacing: .05em; }
.tt-match-media-close-label { display: none; }
.tt-match-media-chevron { font-size: 18px; line-height: 1; transition: transform .18s ease; }
.tt-match-media-inline[open] .tt-match-media-open-label { display: none; }
.tt-match-media-inline[open] .tt-match-media-close-label { display: inline; }
.tt-match-media-inline[open] .tt-match-media-chevron { transform: rotate(180deg); }
.tt-match-media { display: grid; gap: 8px; }
.tt-match-media:has(> *) { margin-top: 14px; }
.tt-match-media-inline { min-width: 0; border: 1px solid rgba(185, 242, 39, .2); border-radius: 13px; overflow: hidden; }
.tt-match-media-inline[open] {
    width: 100%;
    background: rgba(0, 0, 0, .22);
}
.tt-match-media-inline[open] > summary { border-radius: 12px 12px 0 0; }
.tt-match-media-frame { aspect-ratio: 16 / 9; margin-top: 0; border-top: 1px solid rgba(185, 242, 39, .16); background: #000; overflow: hidden; }
.tt-match-media-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.tt-match-media-external {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid rgba(185, 242, 39, .32);
    border-radius: 13px;
    color: #dfff8d;
    background: rgba(185, 242, 39, .09);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
}
.tt-match-media-external:hover { background: rgba(185, 242, 39, .15); }
.tt-match-media-external.is-live { border-color: rgba(255, 54, 94, .58); background: rgba(255, 54, 94, .1); }
.tt-match-media-external-icon { color: rgba(239, 255, 208, .72); font-size: 18px; line-height: 1; }
.tt-match-admin-live {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 28px;
    appearance: none;
    border: 1px solid rgba(185, 242, 39, .48);
    border-radius: 999px;
    padding: 4px 6px;
    color: #dfff8d;
    background: rgba(185, 242, 39, .1);
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
}
.tt-match-admin-live::before { content: attr(data-icon); }
.tt-match-admin-live:disabled { cursor: wait; opacity: .72; }
.tt-go-live-toast {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 1000;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    width: min(430px, calc(100vw - 36px));
    padding: 14px 44px 14px 16px;
    border: 1px solid rgba(185, 242, 39, .35);
    border-radius: 14px;
    color: #efffd0;
    background: rgba(12, 22, 15, .97);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .48);
    font-size: 13px;
}
.tt-go-live-toast[hidden] { display: none; }
.tt-go-live-toast.is-error { border-color: rgba(255, 78, 111, .55); color: #ffd7df; }
.tt-go-live-toast code { flex: 1 1 100%; overflow-wrap: anywhere; }
.tt-go-live-toast-youtube { color: #dfff8d; font-weight: 900; }
.tt-go-live-toast-close {
    position: absolute;
    top: 7px;
    right: 8px;
    appearance: none;
    border: 0;
    padding: 4px 7px;
    color: inherit;
    background: transparent;
    font-size: 20px;
    cursor: pointer;
}
@media (max-width: 700px) {
    .tt-match-media-open-label,
    .tt-match-media-close-label { display: none !important; }
}
