*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#0b0d10;color:#f7f7f7;font-family:Inter,Arial,sans-serif}a{color:inherit}.site-header{position:sticky;z-index:20;top:0;padding:.8rem clamp(1rem,4vw,4rem);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:rgba(11,13,16,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.site-brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}.site-brand>span{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#e3001b,#8c0011);font-weight:950}.site-brand strong,.site-brand small{display:block}.site-brand small{color:#d4af37;font-size:.66rem}.site-header nav{display:flex;gap:1.2rem}.site-header nav a{text-decoration:none;color:#b8bdc6;font-size:.78rem;font-weight:800}.ghost-button,.primary-button,.secondary-button{border-radius:999px;padding:.75rem 1rem;text-decoration:none;font-weight:900;font-size:.78rem}.ghost-button,.secondary-button{border:1px solid rgba(255,255,255,.16)}.primary-button{background:linear-gradient(135deg,#e3001b,#a50014);box-shadow:0 12px 30px rgba(227,0,27,.22)}.hero{position:relative;min-height:760px;padding:clamp(5rem,10vw,8rem) clamp(1rem,7vw,7rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);align-items:center;gap:3rem;overflow:hidden;background:radial-gradient(circle at 80% 18%,rgba(212,175,55,.18),transparent 22rem),linear-gradient(120deg,rgba(227,0,27,.18),transparent 38%),#0b0d10}.hero:before{position:absolute;inset:auto -13rem -18rem auto;width:45rem;height:45rem;border:1px solid rgba(212,175,55,.13);border-radius:50%;content:""}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent)}.hero-content,.hero-year{position:relative;z-index:2}.hero-kicker,.section-heading>span,.final-cta span{color:#d4af37;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:950}.hero h1{max-width:900px;margin:.8rem 0 0;font-size:clamp(3rem,7vw,7rem);line-height:.92;letter-spacing:-.065em}.hero p{max-width:650px;margin:1.3rem 0 0;color:#c0c4cc;font-size:clamp(1rem,2vw,1.25rem);line-height:1.65}.hero-actions{margin-top:1.7rem;display:flex;flex-wrap:wrap;gap:.7rem}.hero-stats{margin-top:3rem;display:flex;gap:2rem}.hero-stats strong,.hero-stats span{display:block}.hero-stats strong{font-size:2rem;color:#d4af37}.hero-stats span{color:#a6abb4;font-size:.7rem}.hero-year{justify-self:end;width:min(360px,100%);aspect-ratio:1;border:1px solid rgba(212,175,55,.35);border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,rgba(212,175,55,.13),transparent 65%);box-shadow:inset 0 0 0 12px rgba(212,175,55,.025)}.hero-year span,.hero-year strong{display:block;font-size:clamp(3rem,7vw,6rem);line-height:.78;font-weight:950}.hero-year span{color:#d4af37}.hero-year small{margin-top:1.4rem;color:#c2c6ce}.section{padding:clamp(4rem,8vw,8rem) clamp(1rem,7vw,7rem)}.section-heading{max-width:760px}.section-heading h2{margin:.6rem 0 0;font-size:clamp(2rem,5vw,4.5rem);line-height:1}.section-heading p{color:#aeb3bc;line-height:1.7}.timeline{margin-top:3rem;display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem}.timeline article{border-top:3px solid #3b4049;padding:1rem 0}.timeline article.active{border-color:#e3001b}.timeline article>strong{color:#d4af37;font-size:1.4rem}.timeline h3{margin:.7rem 0 .35rem}.timeline p{margin:0;color:#9fa5ae;font-size:.8rem;line-height:1.55}.dark-section{background:#101318}.partner-grid{margin-top:2.5rem;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem}.partner-grid a{min-height:150px;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:1rem;display:grid;place-items:center;background:#fff;color:#111;text-decoration:none}.partner-grid img{max-width:100%;max-height:80px;object-fit:contain}.partner-grid span{font-size:.7rem;font-weight:900}.document-list{margin-top:2.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.document-list a{border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:1.1rem;background:#12151a;text-decoration:none}.document-list span,.document-list strong,.document-list small{display:block}.document-list span{color:#d4af37;font-size:.64rem;font-weight:900}.document-list strong{margin:.65rem 0}.document-list small{color:#9da3ad}.gallery-section{background:#0e1014}.gallery-grid{margin-top:2.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.gallery-grid figure{margin:0;position:relative;min-height:280px;border-radius:18px;overflow:hidden;background:#181b20}.gallery-grid img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.gallery-grid figcaption{position:absolute;inset:auto 0 0;padding:2.5rem 1rem 1rem;background:linear-gradient(transparent,rgba(0,0,0,.85))}.gallery-grid figcaption strong,.gallery-grid figcaption span{display:block}.gallery-grid figcaption span{color:#d4af37;font-size:.7rem}.gallery-placeholder{grid-column:1/-1;min-height:320px;border:1px dashed rgba(212,175,55,.35);border-radius:18px;display:grid;place-content:center;text-align:center}.gallery-placeholder span{font-size:4rem;color:#d4af37;font-weight:950}.empty-public{color:#9ea4ad}.final-cta{margin:0 clamp(1rem,7vw,7rem) clamp(4rem,8vw,8rem);border-radius:28px;padding:clamp(2rem,5vw,4rem);display:flex;justify-content:space-between;align-items:center;gap:2rem;background:linear-gradient(120deg,#1c1f25,#111318);border:1px solid rgba(212,175,55,.25)}.final-cta h2{margin:.6rem 0 0;font-size:clamp(2rem,4vw,4rem)}.final-cta>div:last-child{display:flex;flex-wrap:wrap;gap:.7rem}footer{padding:2rem clamp(1rem,7vw,7rem);display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.08);color:#9ca2ab;font-size:.75rem}@media(max-width:900px){.site-header nav{display:none}.hero{min-height:auto;grid-template-columns:1fr}.hero-year{justify-self:start;width:240px}.timeline{grid-template-columns:1fr 1fr}.partner-grid{grid-template-columns:repeat(3,1fr)}.document-list,.gallery-grid{grid-template-columns:repeat(2,1fr)}.final-cta{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.site-header{padding:.7rem 1rem}.ghost-button{display:none}.hero{padding-top:5rem}.hero h1{font-size:3rem}.hero-year{width:190px}.hero-stats{gap:1rem}.timeline,.partner-grid,.document-list,.gallery-grid{grid-template-columns:1fr}.final-cta{margin-left:1rem;margin-right:1rem}footer{align-items:flex-start;flex-direction:column;gap:1rem}}

.site-brand__logo{width:48px;height:48px;border-radius:14px;object-fit:contain;background:#fff;padding:4px}.volunteer-public-page{background:radial-gradient(circle at 80% 10%,rgba(212,175,55,.12),transparent 25rem),#0b0d10}.volunteer-form-shell{width:min(1100px,calc(100% - 2rem));margin:0 auto;padding:5rem 0}.volunteer-intro{max-width:760px;margin-bottom:2rem}.volunteer-intro>span{color:#d4af37;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:950}.volunteer-intro h1{margin:.6rem 0 0;font-size:clamp(2.8rem,7vw,6rem);line-height:.95}.volunteer-intro p{color:#b8bdc6;line-height:1.7}.volunteer-public-form{display:grid;gap:1rem}.volunteer-public-form fieldset{margin:0;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1.2rem;background:#12151a}.volunteer-public-form legend{padding:0 .5rem;color:#d4af37;font-weight:950}.public-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.volunteer-public-form label>span{display:block;margin-bottom:.4rem;color:#d9dce1;font-size:.76rem;font-weight:800}.volunteer-public-form input,.volunteer-public-form textarea{width:100%;border:1px solid #343943;border-radius:10px;padding:.78rem;background:#0d0f13;color:#fff}.public-full{display:block;margin-top:.9rem}.field-help{color:#9fa5ae;font-size:.8rem}.volunteer-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.volunteer-choice-grid label,.match-choice-list label{border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:.75rem;display:flex;align-items:flex-start;gap:.65rem;background:#0e1115;cursor:pointer}.volunteer-choice-grid input,.match-choice-list input,.consent-line input,.public-check input{width:auto;margin-top:.15rem;accent-color:#e3001b}.volunteer-choice-grid strong,.volunteer-choice-grid small,.match-choice-list strong,.match-choice-list small{display:block}.volunteer-choice-grid small,.match-choice-list small{margin-top:.2rem;color:#969ca6;font-size:.68rem}.match-choice-list{max-height:430px;overflow:auto;display:grid;gap:.55rem}.availability-time{margin-top:.9rem}.public-check{grid-column:1/-1;display:flex;align-items:center;gap:.6rem}.public-check span{margin:0!important}.consent-line{display:flex;align-items:flex-start;gap:.65rem;margin-top:.8rem}.consent-line span{margin:0!important;line-height:1.5}.volunteer-submit{border:0;cursor:pointer;font-size:.9rem;justify-self:start}.public-alert{margin-bottom:1rem;border-radius:12px;padding:1rem}.public-alert--error{border:1px solid rgba(227,0,27,.4);background:rgba(227,0,27,.1);color:#fecdd3}.volunteer-confirmation{border:1px solid rgba(212,175,55,.35);border-radius:24px;padding:clamp(1.5rem,5vw,3rem);background:#12151a;text-align:center}.volunteer-confirmation>strong{color:#86efac}.volunteer-confirmation h2{font-size:clamp(2rem,5vw,4rem)}.volunteer-confirmation code{display:inline-block;margin:.4rem 0 1rem;border-radius:10px;padding:.8rem 1rem;background:#090b0e;color:#d4af37;font-size:1.3rem}.public-honeypot{position:absolute!important;left:-9999px!important}@media(max-width:780px){.public-form-grid,.volunteer-choice-grid{grid-template-columns:1fr}.volunteer-form-shell{padding-top:3rem}}


.tournament-live {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 14%, rgba(227, 0, 27, .12), transparent 22rem),
        radial-gradient(circle at 88% 82%, rgba(212, 175, 55, .12), transparent 24rem),
        #0e1115;
}

.tournament-live::before {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, .018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .018) 1px, transparent 1px);
    background-size: 48px 48px;
    content: "";
    pointer-events: none;
}

.tournament-live > * {
    position: relative;
    z-index: 1;
}

.tournament-live__heading {
    max-width: none;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
}

.tournament-live__heading > div {
    max-width: 760px;
}

.tournament-calendar-link {
    flex: 0 0 auto;
    border: 1px solid rgba(212, 175, 55, .32);
    border-radius: 999px;
    padding: .78rem 1rem;
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    background: rgba(212, 175, 55, .07);
    color: #f5d979;
    text-decoration: none;
    font-size: .76rem;
    font-weight: 900;
}

.tournament-live__grid {
    margin-top: 2.5rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.tournament-panel {
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 24px;
    padding: 1rem;
    background: rgba(14, 17, 21, .88);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .2);
}

.tournament-panel__header {
    padding: .35rem .3rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.tournament-panel__eyebrow {
    color: #d4af37;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-size: .62rem;
    font-weight: 950;
}

.tournament-panel__header h3 {
    margin: .35rem 0 0;
    font-size: clamp(1.25rem, 3vw, 1.9rem);
}

.tournament-panel__count {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: rgba(227, 0, 27, .13);
    color: #fda4af;
    font-size: 1rem;
    font-weight: 950;
}

.tournament-panel__count--green {
    background: rgba(0, 122, 51, .16);
    color: #86efac;
}

.public-match-list {
    display: grid;
    gap: .75rem;
}

.public-match-card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    background:
        linear-gradient(150deg, rgba(255, 255, 255, .025), transparent 48%),
        #111419;
}

.public-match-card--upcoming {
    border-left: 3px solid #d4af37;
}

.public-match-card--result {
    border-left: 3px solid #007a33;
}

.public-match-card__top {
    padding: .7rem .85rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    background: rgba(0, 0, 0, .14);
}

.public-match-card__top span {
    color: #d4af37;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: .58rem;
    font-weight: 950;
}

.public-match-card--result .public-match-card__top span {
    color: #86efac;
}

.public-match-card__top small {
    color: #949ba6;
    font-size: .64rem;
    font-weight: 800;
}

.public-match-card__teams {
    min-height: 112px;
    padding: .85rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr);
    align-items: center;
    gap: .5rem;
}

.public-match-team {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.public-match-team--away {
    flex-direction: row-reverse;
    text-align: right;
}

.public-match-team > span {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(212, 175, 55, .28);
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: rgba(212, 175, 55, .08);
    color: #d4af37;
    font-size: .82rem;
    font-weight: 950;
}

.public-match-team strong {
    font-size: .78rem;
    line-height: 1.35;
}

.public-match-versus,
.public-match-score {
    text-align: center;
}

.public-match-versus > strong {
    color: #d4af37;
    letter-spacing: .13em;
}

.public-match-versus small,
.public-match-score small {
    display: block;
    margin-top: .3rem;
    color: #9198a2;
    font-size: .58rem;
    font-weight: 800;
}

.public-match-score > div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.public-match-score strong {
    font-size: 1.75rem;
    line-height: 1;
}

.public-match-score span {
    color: #606772;
}

.public-penalty-score {
    margin: -.2rem .85rem .7rem;
    border-radius: 9px;
    padding: .5rem .65rem;
    background: rgba(212, 175, 55, .07);
    color: #aaaeb6;
    text-align: center;
    font-size: .65rem;
}

.public-penalty-score strong {
    color: #f5d979;
}

.public-match-card__meta {
    border-top: 1px solid rgba(255, 255, 255, .055);
    padding: .65rem .85rem;
    display: flex;
    justify-content: space-between;
    gap: .8rem;
    color: #9097a1;
    font-size: .62rem;
    font-weight: 750;
}

.public-match-empty {
    min-height: 174px;
    border: 1px dashed rgba(212, 175, 55, .25);
    border-radius: 18px;
    padding: 1.2rem;
    display: grid;
    place-content: center;
    text-align: center;
}

.public-match-empty p {
    max-width: 330px;
    margin: .45rem auto 0;
    color: #939aa4;
    font-size: .75rem;
    line-height: 1.55;
}

.tournament-links {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.tournament-link-card {
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 18px;
    padding: 1rem;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
    gap: .8rem;
    background: #12151a;
    text-decoration: none;
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.tournament-link-card:hover {
    border-color: rgba(212, 175, 55, .42);
    transform: translateY(-3px);
    box-shadow: 0 18px 42px rgba(0, 0, 0, .23);
}

.tournament-link-card__icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: rgba(212, 175, 55, .11);
    color: #d4af37;
    font-size: 1rem;
    font-weight: 950;
}

.tournament-link-card--scorers .tournament-link-card__icon {
    background: rgba(227, 0, 27, .11);
}

.tournament-link-card--calendar .tournament-link-card__icon {
    background: rgba(0, 122, 51, .14);
    color: #86efac;
}

.tournament-link-card small,
.tournament-link-card strong,
.tournament-link-card p {
    display: block;
}

.tournament-link-card small {
    color: #d4af37;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: .55rem;
    font-weight: 900;
}

.tournament-link-card strong {
    margin-top: .25rem;
    font-size: .88rem;
}

.tournament-link-card p {
    margin: .25rem 0 0;
    color: #939aa4;
    font-size: .65rem;
    line-height: 1.45;
}

.tournament-link-card > i {
    color: #d4af37;
    font-style: normal;
    font-size: 1.1rem;
}

.tournament-public-page {
    background:
        radial-gradient(circle at 85% 5%, rgba(212, 175, 55, .13), transparent 25rem),
        #0b0d10;
}

.tournament-page-shell {
    width: min(1280px, calc(100% - 2rem));
    margin: 0 auto;
    padding: 5rem 0;
}

.tournament-page-hero {
    max-width: 850px;
    margin-bottom: 2rem;
}

.tournament-page-hero > span {
    color: #d4af37;
    text-transform: uppercase;
    letter-spacing: .18em;
    font-size: .7rem;
    font-weight: 950;
}

.tournament-page-hero h1 {
    margin: .65rem 0 0;
    font-size: clamp(3rem, 8vw, 6.5rem);
    line-height: .92;
    letter-spacing: -.055em;
}

.tournament-page-hero p {
    max-width: 720px;
    color: #aeb4bd;
    font-size: 1rem;
    line-height: 1.7;
}

.group-jump-nav {
    margin-bottom: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.group-jump-nav a {
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 999px;
    padding: .65rem .85rem;
    background: #12151a;
    color: #d9dde2;
    text-decoration: none;
    font-size: .7rem;
    font-weight: 900;
}

.group-jump-nav a:hover {
    border-color: rgba(212, 175, 55, .45);
    color: #d4af37;
}

.public-ranking-grid {
    display: grid;
    gap: 1rem;
}

.public-ranking-card,
.public-scorer-card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 22px;
    background: #111419;
    box-shadow: 0 22px 55px rgba(0, 0, 0, .16);
}

.public-ranking-card__header,
.public-scorer-card > header {
    padding: 1.1rem 1.2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background:
        linear-gradient(115deg, rgba(212, 175, 55, .09), transparent 45%),
        #15181e;
}

.public-ranking-card__header span,
.public-scorer-card > header span {
    color: #d4af37;
    text-transform: uppercase;
    letter-spacing: .14em;
    font-size: .58rem;
    font-weight: 950;
}

.public-ranking-card__header h2,
.public-scorer-card > header h2 {
    margin: .3rem 0 0;
    font-size: 1.55rem;
}

.public-ranking-card__header > div:last-child {
    text-align: right;
}

.public-ranking-card__header > div:last-child strong,
.public-ranking-card__header > div:last-child small {
    display: block;
}

.public-ranking-card__header > div:last-child strong {
    color: #f5d979;
    font-size: 1.2rem;
}

.public-ranking-card__header > div:last-child small {
    margin-top: .2rem;
    color: #8f96a0;
    font-size: .6rem;
}

.public-table-scroll {
    overflow-x: auto;
}

.public-ranking-table,
.public-scorer-table {
    width: 100%;
    border-collapse: collapse;
}

.public-ranking-table th,
.public-ranking-table td,
.public-scorer-table th,
.public-scorer-table td {
    padding: .8rem .75rem;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
    text-align: center;
    white-space: nowrap;
}

.public-ranking-table th,
.public-scorer-table th {
    background: rgba(0, 0, 0, .15);
    color: #8f96a0;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .56rem;
}

.public-ranking-table td,
.public-scorer-table td {
    color: #c7cbd2;
    font-size: .72rem;
}

.public-ranking-table th:nth-child(2),
.public-ranking-table td:nth-child(2),
.public-scorer-table th:nth-child(2),
.public-scorer-table td:nth-child(2) {
    text-align: left;
}

.public-ranking-table tr.is-qualified {
    background: linear-gradient(90deg, rgba(0, 122, 51, .09), transparent 34%);
}

.public-ranking-table tr.is-pending {
    background: linear-gradient(90deg, rgba(212, 175, 55, .07), transparent 34%);
}

.ranking-position {
    width: 28px;
    height: 28px;
    margin: 0 auto;
    border-radius: 9px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .055);
    color: #fff;
    font-weight: 950;
}

.is-qualified .ranking-position {
    background: rgba(0, 122, 51, .18);
    color: #86efac;
}

.ranking-team {
    display: flex;
    align-items: center;
    gap: .65rem;
}

.ranking-team > span {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(212, 175, 55, .24);
    border-radius: 11px;
    display: grid;
    place-items: center;
    background: rgba(212, 175, 55, .07);
    color: #d4af37;
    font-weight: 950;
}

.ranking-team strong,
.ranking-team small {
    display: block;
}

.ranking-team small {
    margin-top: .15rem;
    color: #78cf99;
    font-size: .57rem;
}

.ranking-note {
    margin: 0;
    padding: .75rem 1.1rem;
    background: rgba(212, 175, 55, .055);
    color: #c8b875;
    font-size: .65rem;
}

.tournament-page-empty {
    border: 1px dashed rgba(212, 175, 55, .3);
    border-radius: 22px;
    padding: 3rem 1rem;
    text-align: center;
}

.tournament-page-empty p {
    color: #9da3ad;
}

.tournament-page-actions {
    margin-top: 1.4rem;
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
}

.scorer-leader {
    margin-bottom: 1rem;
    border: 1px solid rgba(212, 175, 55, .28);
    border-radius: 24px;
    padding: clamp(1.2rem, 4vw, 2rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    background:
        radial-gradient(circle at 15% 15%, rgba(227, 0, 27, .12), transparent 18rem),
        linear-gradient(130deg, rgba(212, 175, 55, .08), transparent 60%),
        #12151a;
}

.scorer-leader__identity {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.scorer-leader__eyebrow {
    color: #d4af37;
    text-transform: uppercase;
    letter-spacing: .13em;
    font-size: .6rem;
    font-weight: 950;
}

.scorer-leader h2 {
    margin: .35rem 0 0;
    font-size: clamp(1.7rem, 4vw, 3rem);
}

.scorer-leader p {
    margin: .35rem 0 0;
    color: #aeb4bd;
}

.scorer-leader__numbers {
    display: flex;
    gap: .7rem;
}

.scorer-leader__numbers > div {
    min-width: 105px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 17px;
    padding: 1rem;
    background: rgba(0, 0, 0, .13);
    text-align: center;
}

.scorer-leader__numbers strong,
.scorer-leader__numbers span {
    display: block;
}

.scorer-leader__numbers strong {
    color: #d4af37;
    font-size: 2rem;
}

.scorer-leader__numbers span {
    margin-top: .25rem;
    color: #949ba5;
    font-size: .64rem;
    font-weight: 800;
}

.scorer-photo {
    position: relative;
    overflow: hidden;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border: 2px solid rgba(212, 175, 55, .38);
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(212, 175, 55, .08);
    color: #d4af37;
    font-size: .65rem;
    font-weight: 950;
}

.scorer-photo--large {
    flex-basis: 84px;
    width: 84px;
    height: 84px;
    font-size: 1rem;
}

.scorer-photo img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.scorer-photo > span {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
}

.scorer-photo.has-image > span {
    opacity: 0;
}

.public-scorer-card > header > strong {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: rgba(227, 0, 27, .12);
    color: #fda4af;
}

.scorer-player {
    display: flex;
    align-items: center;
    gap: .65rem;
}

.scorer-player strong,
.scorer-player small {
    display: block;
}

.scorer-player small {
    margin-top: .15rem;
    color: #d4af37;
    font-size: .56rem;
}

.scorer-rank {
    width: 30px;
    height: 30px;
    margin: 0 auto;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .055);
    font-weight: 950;
}

.scorer-rank--1 {
    background: rgba(212, 175, 55, .18);
    color: #f5d979;
}

.scorer-rank--2 {
    background: rgba(190, 198, 210, .14);
    color: #d8dde5;
}

.scorer-rank--3 {
    background: rgba(177, 105, 45, .16);
    color: #e5a66f;
}

.scorer-goals {
    color: #f5d979;
    font-size: 1rem;
}

.discipline-summary {
    color: #9ca3ad;
    font-size: .65rem;
}

@media (max-width: 980px) {
    .tournament-live__grid {
        grid-template-columns: 1fr;
    }

    .tournament-links {
        grid-template-columns: 1fr;
    }

    .tournament-live__heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 720px) {
    .public-match-card__teams {
        grid-template-columns: minmax(0, 1fr) 62px minmax(0, 1fr);
    }

    .public-match-team {
        align-items: center;
        flex-direction: column;
        text-align: center;
    }

    .public-match-team--away {
        flex-direction: column;
        text-align: center;
    }

    .public-match-card__meta {
        flex-direction: column;
        gap: .3rem;
    }

    .scorer-leader {
        align-items: flex-start;
        flex-direction: column;
    }

    .scorer-leader__numbers {
        width: 100%;
    }

    .scorer-leader__numbers > div {
        flex: 1;
    }

    .tournament-page-shell {
        padding-top: 3rem;
    }
}

@media (max-width: 520px) {
    .tournament-live {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .public-match-card__teams {
        min-height: 122px;
        padding-left: .55rem;
        padding-right: .55rem;
    }

    .public-match-team strong {
        font-size: .68rem;
    }

    .tournament-link-card {
        grid-template-columns: 40px minmax(0, 1fr) auto;
    }

    .tournament-link-card__icon {
        width: 40px;
        height: 40px;
    }

    .scorer-leader__identity {
        align-items: flex-start;
    }

    .scorer-photo--large {
        flex-basis: 64px;
        width: 64px;
        height: 64px;
    }
}


.public-team-flag {
    flex: 0 0 42px;
    width: 42px;
    height: 29px;
    border: 1px solid rgba(212, 175, 55, .3);
    border-radius: 8px;
    background: #fff;
    object-fit: cover;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .18);
}

.ranking-team .public-team-flag {
    flex-basis: 38px;
    width: 38px;
    height: 26px;
    border-radius: 7px;
}
/* LOT 4P-C.3 — disponibilités bénévoles */
.availability-time [data-volunteer-time-wrapper] {
    transition: opacity .18s ease;
}

.availability-time [data-volunteer-time-wrapper].is-disabled {
    opacity: .52;
}

.availability-time input[type="time"]:disabled {
    border-color: #272c34;
    background: #171a20;
    color: #8f96a1;
    cursor: not-allowed;
}

.availability-time__help {
    grid-column: 1 / -1;
    margin: -.1rem 0 0;
    color: #aeb4bd;
    font-size: .76rem;
    line-height: 1.5;
}
