:root {
    --wf-brand: #090909;
    --wf-brand-soft: #1d1f21;

    --wf-background: #f3f4f5;
    --wf-surface: #ffffff;
    --wf-surface-muted: #f8f9fa;

    --wf-text: #181a1c;
    --wf-text-muted: #686d72;

    --wf-border: #d9dde1;
    --wf-border-strong: #c5c9cd;

    --wf-purple: #57325a;
    --wf-green: #28953b;
    --wf-blue: #214478;
    --wf-red: #ce1126;

    /*
     * Diese Variablen können später durch ein lokales
     * Verbands-Theme überschrieben werden.
     */
    --theme-primary: var(--wf-brand);
    --theme-primary-contrast: #ffffff;
    --theme-accent: var(--wf-blue);

    --wf-radius: 8px;
    --wf-content-width: 1280px;

    --wf-font-ui:
        Inter,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Arial,
        Helvetica,
        sans-serif;

    --wf-font-brand:
        "Nova Round",
        var(--wf-font-ui);
}


* {
    box-sizing: border-box;
}


html {
    min-height: 100%;
}


body {
    margin: 0;

    min-height: 100vh;

    background: var(--wf-background);
    color: var(--wf-text);

    font-family: var(--wf-font-ui);
    font-size: 15px;
    line-height: 1.5;
}


a {
    color: inherit;
}


img {
    max-width: 100%;
}


/* ============================================================
   GLOBALER HEADER
   ============================================================ */

.wf-header {
    background: #ffffff;
    color: var(--wf-text);

    border-bottom: 1px solid var(--wf-border);
}


.wf-header-inner {
    max-width: var(--wf-content-width);

    margin: 0 auto;
    padding: 0 24px;

    min-height: 72px;

    display: flex;
    align-items: center;
    gap: 28px;
}


.wf-brand {
    display: flex;
    align-items: center;

    flex: 0 0 auto;

    text-decoration: none;
}


.wf-brand-logo {
    display: block;

    width: auto;
    height: 48px;

    object-fit: contain;
}


.wf-nav {
    display: flex;
    align-items: stretch;

    min-width: 0;

    flex: 1;

    overflow-x: auto;
}


.wf-nav-list {
    display: flex;
    align-items: stretch;
    gap: 2px;

    margin: 0;
    padding: 0;

    list-style: none;
}


.wf-nav-link {
    position: relative;

    display: flex;
    align-items: center;

    min-height: 72px;

    padding: 0 12px;

    color: var(--wf-text);
    text-decoration: none;

    font-size: 14px;
    font-weight: 600;

    transition:
        background-color 0.15s ease,
        color 0.15s ease;
}


.wf-nav-link:hover {
    background: var(--wf-surface-muted);
}


.wf-nav-link.is-active {
    font-weight: 750;
}


/*
 * Originaler WF-Trenner – ausschließlich unter
 * dem angewählten Menüpunkt und exakt in dessen Breite.
 */
.wf-nav-link.is-active::after {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 3px;

    content: "";

    background: linear-gradient(
        to right,
        var(--wf-purple) 0 25%,
        var(--wf-green) 25% 50%,
        var(--wf-blue) 50% 75%,
        var(--wf-red) 75% 100%
    );
}

.wf-acting-role,
.wf-acting-role-label {
    display: flex;
    align-items: center;
    margin: 0;
}

.wf-page-header .wf-acting-role,
.wf-page-header .wf-acting-role-label {
    align-self: center;
    flex: 0 0 auto;
    width: auto;
}

.wf-acting-role label {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    font-size: 12px;
    font-weight: 650;
}

.wf-acting-role select {
    max-width: min(28rem, 70vw);
    min-height: 34px;
    padding: 4px 8px;
    border: 1px solid var(--wf-border, #c5ced3);
    border-radius: 5px;
    background: var(--wf-surface, #fff);
    color: var(--wf-text, #1c2428);
    font: inherit;
    font-size: 13px;
}

.wf-acting-role-label {
    font-size: 12px;
    font-weight: 650;
}

.wf-header-actions {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 8px;

    margin-left: auto;
}


.wf-header-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 40px;

    padding: 0 13px;

    border: 1px solid var(--wf-border-strong);
    border-radius: 6px;

    background: #ffffff;

    color: var(--wf-text);
    text-decoration: none;

    font-size: 14px;
    font-weight: 600;
}


.wf-header-action:hover {
    background: var(--wf-surface-muted);
}


/* ============================================================
   SEITENLAYOUT
   ============================================================ */

.wf-main {
    max-width: var(--wf-content-width);

    margin: 0 auto;
    padding: 32px 24px 64px;
}


.wf-page-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;

    margin-bottom: 24px;
}


.wf-page-title {
    margin: 0;

    font-size: 30px;
    font-weight: 750;
    line-height: 1.2;
}


.wf-page-subtitle {
    margin: 6px 0 0;

    color: var(--wf-text-muted);
}


.wf-card {
    background: var(--wf-surface);

    border: 1px solid var(--wf-border);
    border-radius: var(--wf-radius);

    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}


.wf-card-header {
    padding: 16px 18px;

    border-bottom: 1px solid var(--wf-border);
}


.wf-card-title {
    margin: 0;

    font-size: 16px;
    font-weight: 700;
}


.wf-card-body {
    padding: 18px;
}


/* ============================================================
   WETTBEWERB
   ============================================================ */

.wf-competition-header {
    display: flex;
    align-items: center;
    gap: 22px;

    margin-bottom: 22px;
}

.wf-competition-logo {
    width: 76px;
    height: 76px;

    object-fit: contain;
}

.wf-competition-heading {
    display: flex;
    align-items: flex-start;
    gap: 24px;

    min-width: 0;
    flex: 1;
}

.wf-competition-picker {
    display: grid;
    gap: 4px;

    color: var(--wf-text-muted);
    font-size: 12px;
    font-weight: 650;
}

.wf-competition-picker select {
    min-width: 190px;
    min-height: 38px;
    padding: 0 34px 0 10px;

    border: 1px solid var(--wf-border-strong);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);

    font: inherit;
    font-size: 14px;
}

.wf-class-picker {
    margin-left: 4px;
}

.wf-edition-picker {
    margin-left: auto;
}

.wf-competition-directory-layout {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
    grid-template-areas: "main finder";
    align-items: start;
    gap: 28px;
}

.wf-competition-directory-main {
    grid-area: main;
    min-width: 0;
}

.wf-competition-finder {
    grid-area: finder;
    overflow: hidden;
}

.wf-competition-cascade {
    display: grid;
    gap: 11px;
    padding: 16px;
}

.wf-competition-step {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.wf-competition-step > strong {
    font-size: 13px;
    line-height: 1.3;
}

.wf-competition-step select {
    width: 100%;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-competition-step select:disabled {
    background: var(--wf-surface-muted);
    color: var(--wf-text-muted);
}

.wf-competition-selection-action {
    display: grid;
    gap: 12px;
    margin: 3px -16px -16px;
    padding: 16px;
    border-top: 1px solid var(--wf-border);
    background: #f4faf5;
}

.wf-competition-selection-action > span {
    display: grid;
    gap: 3px;
}

.wf-competition-selection-action small {
    color: var(--wf-text-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.wf-competition-selection-action > span > strong {
    font-size: 15px;
}

.wf-competition-selection-action .wf-primary-action {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}

.wf-competition-search {
    display: grid;
    grid-template-columns: minmax(130px, 0.3fr) minmax(300px, 1fr);
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
    padding: 10px 14px;
    border: 1px solid var(--wf-border);
    border-radius: var(--wf-radius);
    background: var(--wf-surface);
}

.wf-competition-search h2,
.wf-section-heading h2 {
    margin: 0 0 4px;
    font-size: 19px;
}

.wf-competition-search .wf-global-search-form {
    margin-bottom: 0;
}

.wf-competition-results {
    margin-bottom: 24px;
}

.wf-competition-directory-list {
    display: grid;
    padding: 3px 16px;
}

.wf-competition-directory-list a {
    display: grid;
    gap: 3px;
    padding: 11px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-competition-directory-list a:last-child {
    border-bottom: 0;
}

.wf-competition-directory-list small,
.wf-competition-running-copy small,
.wf-competition-running-meta small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-section-heading {
    margin-bottom: 12px;
}

.wf-competition-running-grid {
    display: grid;
    gap: 12px;
}

.wf-competition-running-card {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr) minmax(150px, auto);
    align-items: center;
    gap: 18px;
    padding: 17px 18px;
    color: inherit;
    text-decoration: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.wf-competition-running-card:hover {
    border-color: var(--wf-border-strong);
    box-shadow: 0 4px 14px rgb(0 0 0 / 6%);
    transform: translateY(-1px);
}

.wf-competition-running-logo {
    display: flex;
    width: 62px;
    height: 62px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--wf-surface-muted);
}

.wf-competition-running-logo img {
    width: 52px;
    height: 52px;
    object-fit: contain;
}

.wf-competition-logo-placeholder {
    width: 34px;
    height: 39px;
    border: 1px solid var(--wf-border-strong);
    border-radius: 3px 3px 17px 17px;
}

.wf-competition-running-copy,
.wf-competition-running-meta {
    display: grid;
    gap: 4px;
}

.wf-competition-running-copy > strong {
    font-size: 16px;
}

.wf-competition-running-meta {
    justify-items: end;
    padding-left: 18px;
    border-left: 1px solid var(--wf-border);
    text-align: right;
}

.wf-competition-running-meta > strong {
    font-size: 14px;
}

.wf-club-directory-layout {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
    grid-template-areas: "main finder";
    align-items: start;
    gap: 28px;
}

.wf-club-directory-main {
    grid-area: main;
    min-width: 0;
}

.wf-club-finder {
    grid-area: finder;
    overflow: hidden;
}

.wf-club-finder details,
.wf-club-finder summary {
    margin: 0;
}

.wf-club-finder-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    list-style: none;
}

.wf-club-finder-toggle::-webkit-details-marker {
    display: none;
}

.wf-club-finder-toggle::after {
    content: "−";
    color: var(--wf-text-muted);
    font-size: 18px;
    line-height: 1;
}

.wf-club-finder details:not([open]) .wf-club-finder-toggle::after {
    content: "+";
}

.wf-club-finder details:not([open]) .wf-club-finder-toggle {
    border-bottom: 0;
}

@media (min-width: 761px) {
    .wf-club-directory-layout {
        transition: grid-template-columns 0.2s ease;
    }

    .wf-club-directory-layout:has(.wf-club-finder > details:not([open])) {
        grid-template-columns: minmax(0, 1fr) 48px;
    }

    .wf-club-directory-layout .wf-club-finder-toggle::after {
        content: "›";
        font-size: 24px;
    }

    .wf-club-directory-layout .wf-club-finder > details:not([open]) .wf-club-finder-toggle {
        min-height: 52px;
        justify-content: center;
        padding: 0;
    }

    .wf-club-directory-layout .wf-club-finder > details:not([open]) .wf-card-title {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
    }

    .wf-club-directory-layout .wf-club-finder > details:not([open]) .wf-club-finder-toggle::after {
        content: "‹";
        font-size: 24px;
    }
}

.wf-club-finder-form {
    display: grid;
    gap: 12px;
    padding: 16px;
}

.wf-club-finder-form label {
    display: grid;
    gap: 4px;
}

.wf-club-finder-form label > strong {
    font-size: 13px;
}

.wf-club-finder-form select {
    width: 100%;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-club-finder-form .wf-primary-action {
    display: flex;
    width: 100%;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    margin-top: 4px;
}

.wf-club-search {
    display: grid;
    grid-template-columns: minmax(130px, 0.3fr) minmax(300px, 1fr);
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
    padding: 10px 14px;
    border: 1px solid var(--wf-border);
    border-radius: var(--wf-radius);
    background: var(--wf-surface);
}

.wf-club-search h2 {
    margin: 0;
    font-size: 19px;
}

.wf-club-search .wf-global-search-form {
    margin-bottom: 0;
}

.wf-club-directory-grid {
    display: grid;
    gap: 12px;
}

.wf-club-directory-card {
    display: block;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.wf-club-directory-summary {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr) minmax(110px, auto) 18px;
    align-items: center;
    gap: 18px;
    padding: 17px 18px;
    cursor: pointer;
    list-style: none;
}

.wf-club-directory-summary::-webkit-details-marker {
    display: none;
}

.wf-club-directory-summary::after {
    content: "+";
    color: var(--wf-text-muted);
    font-size: 19px;
    line-height: 1;
    text-align: center;
}

.wf-club-directory-card[open] .wf-club-directory-summary::after {
    content: "−";
}

.wf-club-directory-card:hover {
    border-color: var(--wf-border-strong);
    box-shadow: 0 4px 14px rgb(0 0 0 / 6%);
    transform: translateY(-1px);
}

.wf-club-directory-logo {
    display: flex;
    width: 62px;
    height: 62px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--wf-surface-muted);
}

.wf-club-directory-logo img {
    width: 52px;
    height: 52px;
    object-fit: contain;
}

.wf-club-directory-copy,
.wf-club-directory-meta {
    display: grid;
    gap: 4px;
}

.wf-club-directory-copy > strong {
    font-size: 16px;
}

.wf-club-directory-copy small,
.wf-club-directory-meta small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-club-directory-meta {
    justify-items: end;
    padding-left: 18px;
    border-left: 1px solid var(--wf-border);
    text-align: right;
}

.wf-club-directory-meta > strong {
    font-size: 18px;
}

.wf-club-directory-expanded {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(140px, auto);
    align-items: stretch;
    gap: 18px;
    padding: 14px 18px 16px 98px;
    border-top: 1px solid var(--wf-border);
    background: var(--wf-surface-muted);
}

.wf-club-directory-team-links {
    display: grid;
    gap: 7px;
    align-content: start;
}

.wf-club-directory-profile-column {
    display: flex;
    min-height: 100%;
    align-items: center;
    justify-content: flex-end;
    padding-left: 18px;
    border-left: 1px solid var(--wf-border);
}

.wf-club-directory-team-links a,
.wf-club-directory-profile-link {
    color: var(--wf-text);
    font-weight: 700;
    text-decoration: none;
}

.wf-club-directory-team-links a {
    display: grid;
    gap: 2px;
}

.wf-club-directory-team-links a small {
    color: var(--wf-text-muted);
    font-size: 12px;
    font-weight: 400;
}

.wf-club-directory-team-links a:hover,
.wf-club-directory-profile-link:hover {
    text-decoration: underline;
}

.wf-club-directory-profile-link {
    flex: 0 0 auto;
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-club-directory-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 18px;
    color: var(--wf-text-muted);
    font-size: 13px;
}

.wf-club-directory-pagination a {
    padding: 8px 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font-weight: 700;
    text-decoration: none;
}

.wf-team-directory-grid {
    display: grid;
    gap: 12px;
}

.wf-team-directory-card {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    padding: 17px 18px;
    color: inherit;
    text-decoration: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.wf-team-directory-card:hover {
    border-color: var(--wf-border-strong);
    box-shadow: 0 4px 14px rgb(0 0 0 / 6%);
    transform: translateY(-1px);
}

.wf-team-directory-copy {
    display: grid;
    min-width: 0;
    gap: 4px;
}

.wf-team-directory-copy > strong {
    font-size: 16px;
}

.wf-team-directory-copy small {
    color: var(--wf-text-muted);
    font-size: 12px;
    line-height: 1.45;
}

.wf-section-tabs {
    display: flex;
    gap: 24px;

    margin-bottom: 20px;
    border-bottom: 1px solid var(--wf-border);
}

.wf-section-tabs a,
.wf-section-tabs span {
    position: relative;
    display: block;
    flex: 0 0 auto;
    padding: 0 0 7px;

    color: var(--wf-text-muted);
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}

.wf-section-tabs .is-active {
    color: var(--wf-text);
}

.wf-section-tabs .is-active::after {
    position: absolute;
    bottom: -1px;
    left: 0;

    width: 100%;
    height: 3px;
    content: "";
    background: var(--wf-tab-accent, var(--theme-accent));
}

.wf-section-tabs > :nth-child(4n + 1) {
    --wf-tab-accent: var(--wf-purple);
}

.wf-section-tabs > :nth-child(4n + 2) {
    --wf-tab-accent: var(--wf-green);
}

.wf-section-tabs > :nth-child(4n + 3) {
    --wf-tab-accent: var(--wf-blue);
}

.wf-section-tabs > :nth-child(4n + 4) {
    --wf-tab-accent: var(--wf-red);
}

.wf-section-tabs span {
    opacity: 0.65;
}

.wf-competition-overview {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
}

.wf-compact-matches {
    padding: 2px 16px;
}

.wf-compact-match {
    display: block;
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);

    text-decoration: none;
}

.wf-compact-match:last-child {
    border-bottom: 0;
}

.wf-compact-match:hover .wf-compact-match-teams {
    color: var(--theme-accent);
}

.wf-compact-match-meta {
    display: block;
    margin-bottom: 3px;

    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-compact-match-teams {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 70px minmax(0, 1fr);
    align-items: center;
    gap: 8px;

    font-size: 13px;
}

.wf-compact-match-teams span:first-child {
    text-align: right;
}

.wf-compact-match-teams strong {
    text-align: center;
    font-size: 16px;
}

.wf-compact-result-secondary {
    display: block;
    margin-top: 2px;

    color: var(--wf-text-muted);
    font-weight: 600;
}

.wf-compact-match-teams small {
    font-size: 10px;
}

.wf-compact-empty {
    padding: 16px 2px;
}

.wf-competition-standings {
    grid-column: 1 / -1;
}

.wf-standing-class {
    margin: 0;
    padding: 14px 14px 6px;
    font-size: 13px;
}

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

.wf-compact-table th,
.wf-compact-table td {
    padding: 8px 12px;
    font-size: 13px;
}

.wf-compact-table th:not(:nth-child(2)),
.wf-compact-table td:not(:nth-child(2)) {
    width: 1%;
    text-align: right;
    white-space: nowrap;
}

.wf-game-context-link {
    text-decoration: none;
}

.wf-game-context-link:hover {
    text-decoration: underline;
}

.wf-schedule {
    display: grid;
    gap: 18px;
}

.wf-schedule-matchday-picker {
    display: block;
    justify-self: center;
}

.wf-schedule-matchday-picker select {
    min-width: 180px;
    min-height: 36px;
    padding: 0 32px 0 10px;
    border: 1px solid var(--wf-border-strong);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.wf-selected-matchday {
    display: grid;
    gap: 14px;
}

.wf-selected-matchday-navigation {
    width: 100%;
    padding: 2px 12px;
    grid-template-columns: minmax(36px, 1fr) auto minmax(36px, 1fr);
}

.wf-selected-matchday-navigation .wf-matchday-arrow:first-child {
    justify-self: end;
}

.wf-selected-matchday-navigation .wf-matchday-arrow:last-child {
    justify-self: start;
}

.wf-selected-matchday .wf-schedule-group {
    overflow: hidden;
}

.wf-schedule-standing summary {
    cursor: pointer;
    list-style-position: inside;
}

.wf-schedule-standing[open] summary {
    border-bottom: 1px solid var(--wf-border);
}

.wf-matchday-navigation {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 36px;
    align-items: center;
    gap: 12px;
}

.wf-matchday-navigation .wf-card-title {
    text-align: center;
}

.wf-matchday-page-header {
    margin-bottom: 24px;
}

.wf-matchday-page-header .wf-page-title a {
    color: inherit;
    text-decoration: none;
}

.wf-matchday-page-header .wf-page-title a:hover {
    text-decoration: underline;
}

.wf-competition-picker-value {
    display: flex;
    align-items: center;
    min-height: 38px;
    font-size: 14px;
    color: var(--wf-text);
}

.wf-matchday-toolbar {
    display: flex;
    justify-content: flex-end;
    margin: -8px 0 14px;
}

.wf-matchday-toolbar a {
    color: var(--wf-text-muted);
    font-size: 13px;
    font-weight: 650;
    text-decoration: none;
}

.wf-matchday-toolbar a:hover {
    color: var(--wf-text);
    text-decoration: underline;
}

.wf-matchday-page + .wf-matchday-table {
    margin-top: 24px;
}

.wf-matchday-heading {
    color: inherit;
    text-decoration: none;
}

a.wf-matchday-heading:hover {
    text-decoration: underline;
}

.wf-matchday-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 32px;
    border-radius: 5px;

    color: var(--wf-text-muted);
    text-decoration: none;
    font-size: 26px;
    line-height: 1;
}

.wf-matchday-arrow:hover {
    background: var(--wf-surface-muted);
    color: var(--wf-text);
}

.wf-matchday-arrow:last-child {
    justify-self: end;
}

.wf-matchday-arrow.is-disabled {
    visibility: hidden;
}

.wf-standings-table th:not(:nth-child(3)),
.wf-standings-table td:not(:nth-child(3)) {
    width: 1%;
    text-align: right;
    white-space: nowrap;
}

.wf-club-identity {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    min-width: 0;
    max-width: 100%;
    color: inherit;
    text-decoration: none;
}

.wf-club-identity-logo-link {
    display: flex;
    flex: 0 0 24px;
}

.wf-club-identity-copy {
    display: grid;
    min-width: 0;
}

.wf-club-identity-name,
.wf-club-identity-team {
    color: inherit;
    text-decoration: none;
}

.wf-club-identity-name:hover,
.wf-club-identity-team:hover {
    text-decoration: underline;
}

.wf-club-identity-team {
    color: var(--wf-text-muted);
    font-size: 10px;
    font-weight: 500;
}

.wf-club-identity.is-end {
    justify-content: flex-end;
}

.wf-club-identity.is-end .wf-club-identity-copy {
    text-align: right;
}

.wf-club-identity-logo {
    width: 24px;
    height: 24px;

    flex: 0 0 24px;
    object-fit: contain;
}

.wf-club-identity-name {
    min-width: 0;
    font-weight: 650;
}

.wf-standings-table sup {
    margin-left: 1px;
    font-size: 9px;
}

.wf-standing-notes {
    padding: 12px 14px 14px;
    border-top: 1px solid var(--wf-border);

    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-standing-notes p {
    margin: 0 0 4px;
    font-weight: 700;
}

.wf-standing-notes ul {
    margin: 0;
    padding-left: 18px;
}

.wf-standing-trend-column,
.wf-standing-trend {
    width: 24px !important;
    padding-right: 2px !important;
    padding-left: 8px !important;
    text-align: center !important;
}

.wf-standing-trend span {
    font-size: 10px;
    font-weight: 800;
}

.wf-standing-trend .is-up {
    color: var(--wf-green);
}

.wf-standing-trend .is-down {
    color: var(--wf-red);
}

.wf-standing-trend .is-same {
    color: var(--wf-text-muted);
}

.wf-form-sequence {
    display: inline-flex;
    gap: 4px;
}

.wf-game-team-form {
    display: flex;
    margin-top: 9px;
}

.wf-game-team.is-home .wf-game-team-form {
    justify-content: flex-end;
}

.wf-game-team.is-away .wf-game-team-form {
    justify-content: flex-start;
}

.wf-standing-form-column {
    width: 137px !important;
    min-width: 137px;
    padding-right: 8px !important;
    padding-left: 8px !important;
    text-align: left !important;
    white-space: nowrap;
}

.wf-form-result {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 21px;
    height: 21px;
    border-radius: 50%;

    background: var(--wf-surface-muted);
    color: var(--wf-text-muted);
    font-size: 10px;
    font-weight: 800;
}

.wf-form-result.is-s {
    background: #e6f4e8;
    color: var(--wf-green);
}

.wf-form-result.is-n {
    background: #fbe8ea;
    color: var(--wf-red);
}

.wf-schedule-matches {
    padding: 2px 16px;
}

.wf-schedule-match {
    display: grid;
    grid-template-columns:
        92px
        minmax(0, 1fr)
        100px
        minmax(0, 1fr)
        92px;
    align-items: center;
    gap: 14px;

    min-height: 58px;
    padding: 9px 2px;
    border-bottom: 1px solid var(--wf-border);

    text-decoration: none;
}

.wf-schedule-match::after {
    grid-column: 5;
    content: "";
}

.wf-schedule-match:last-child {
    border-bottom: 0;
}

.wf-schedule-match:hover {
    color: var(--theme-accent);
}

.wf-schedule-date {
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-schedule-date small {
    display: block;
    font-size: 11px;
}

.wf-schedule-team {
    font-size: 14px;
    font-weight: 650;
}

.wf-schedule-team.is-home {
    text-align: right;
}

.wf-schedule-result {
    color: inherit;
    text-decoration: none;
    text-align: center;
    font-size: 18px;
    line-height: 1.15;
    white-space: nowrap;
}

.wf-schedule-date {
    text-decoration: none;
}

.wf-compact-match-teams a {
    color: inherit;
    text-decoration: none;
}

.wf-compact-match-teams a:hover {
    text-decoration: underline;
}

.wf-compact-match-side {
    display: grid;
    gap: 1px;
}

.wf-compact-match-side.is-home {
    text-align: right;
}

.wf-compact-match-side a:last-child {
    color: var(--wf-text-muted);
    font-size: 10px;
}

.wf-compact-match-result {
    text-align: center;
    font-size: 16px;
    font-weight: 700;
}

.wf-game-team-name a {
    color: inherit;
    text-decoration: none;
}

.wf-game-team-detail a,
.wf-match-team-detail a {
    color: inherit;
    text-decoration: none;
}

.wf-game-team-detail a:hover,
.wf-match-team-detail a:hover {
    text-decoration: underline;
}

.wf-game-team-name a:hover {
    text-decoration: underline;
}

.wf-games-overview-card .wf-match-team-name a,
.wf-games-overview-card .wf-match-team-name a:hover {
    text-decoration: none;
}

.wf-club-header {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 18px;
}

.wf-club-header-content {
    display: flex;
    align-items: flex-end;
    gap: 32px;
    min-width: 0;
    flex: 1;
}

.wf-club-heading {
    min-width: 0;
}

.wf-club-logo {
    width: 88px;
    height: 88px;
    object-fit: contain;
}

.wf-club-logo-placeholder {
    width: 76px;
    height: 86px;
    border: 1px solid var(--wf-border-strong);
    border-radius: 4px 4px 38px 38px;
    background: var(--wf-surface-muted);
}

.wf-club-header p {
    margin: 6px 0 0;
    color: var(--wf-text-muted);
}

.wf-club-facts {
    display: flex;
    gap: 32px;
    margin-left: auto;
}

.wf-club-facts > span {
    display: grid;
    gap: 3px;
}

.wf-club-facts small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-club-facts strong {
    font-size: 14px;
}

.wf-club-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
}

.wf-club-team-list,
.wf-club-competition-list,
.wf-club-matches {
    padding: 2px 16px;
}

.wf-club-team,
.wf-club-competition {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-club-team:last-child,
.wf-club-competition:last-child,
.wf-club-match:last-child {
    border-bottom: 0;
}

.wf-club-team {
    display: grid;
    grid-template-columns: minmax(160px, 0.4fr) minmax(0, 1fr);
    align-items: center;
    justify-content: stretch;
    gap: 8px;
}

.wf-club-team-name {
    display: grid;
    gap: 3px;
    color: inherit;
    text-decoration: none;
}

.wf-club-team-name:hover strong {
    text-decoration: underline;
}

.wf-club-team-competitions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
}

.wf-club-team-competitions a {
    color: var(--wf-text-muted);
    font-size: 12px;
    text-decoration: none;
}

.wf-club-team-competitions a:hover {
    color: var(--wf-text);
    text-decoration: underline;
}

.wf-club-team-competitions small {
    margin-left: 3px;
}

.wf-club-team-no-competition {
    font-size: 12px;
}

.wf-club-teams-card {
    grid-column: 1 / -1;
}

.wf-club-team span,
.wf-club-competition small {
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-club-competition img {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    object-fit: contain;
}

.wf-club-competition span {
    display: grid;
    gap: 2px;
}

.wf-club-match {
    display: block;
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-club-match-meta {
    display: block;
    margin-bottom: 5px;
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-club-match-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
}

.wf-club-match-team {
    display: grid;
    gap: 2px;
}

.wf-club-match-team.is-home {
    text-align: right;
}

.wf-club-match-team small {
    color: var(--wf-text-muted);
    font-size: 10px;
}

.wf-club-match-team:not(.is-current) strong {
    font-weight: 550;
    color: var(--wf-text-muted);
}

.wf-club-match-result {
    text-align: center;
    font-size: 16px;
}

.wf-club-empty {
    padding: 16px 2px;
}

.wf-team-header {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 22px;
}

.wf-team-header-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    text-decoration: none;
}

.wf-team-header .wf-page-title a {
    color: inherit;
    text-decoration: none;
}

.wf-team-header .wf-page-title a:hover,
.wf-team-club-link:hover {
    text-decoration: underline;
}

.wf-team-club-link {
    display: inline-block;
    margin-top: 7px;
    color: var(--wf-text-muted);
    font-size: 13px;
    text-decoration: none;
}

.wf-team-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
}

.wf-team-competitions-card {
    grid-column: 1 / -1;
}

.wf-team-competition-list,
.wf-team-squad,
.wf-team-matches {
    padding: 2px 16px;
}

.wf-card > .wf-team-empty {
    box-sizing: border-box;
    margin: 0;
    padding: 18px 16px;
}

.wf-team-competition-list > a {
    display: grid;
    grid-template-columns: auto auto auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 13px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-team-competition-list > a:last-child,
.wf-team-squad > a:last-child,
.wf-team-match:last-child {
    border-bottom: 0;
}

.wf-team-competition-list img {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.wf-team-competition-copy {
    display: grid;
    gap: 2px;
}

.wf-team-competition-form {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.wf-team-competition-form .wf-form-sequence {
    display: flex;
}

.wf-team-competition-list small,
.wf-team-competition-list b {
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-team-standing-summary {
    display: grid !important;
    justify-items: end;
    width: 100%;
    box-sizing: border-box;
    padding-left: 28px;
    gap: 7px !important;
    white-space: nowrap;
}

.wf-team-squad > a {
    display: grid;
    grid-template-columns: 32px 40px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    min-height: 58px;
    padding: 8px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-team-squad img {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    object-fit: cover;
}

.wf-team-player-photo {
    display: flex;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--wf-surface-muted);
    overflow: hidden;
}

.wf-team-squad span {
    display: grid;
    gap: 2px;
}

.wf-team-squad small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-team-player-copy em {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    border-radius: 50%;
    background: var(--wf-text);
    color: var(--wf-surface);
    font-size: 10px;
    font-style: normal;
    vertical-align: 1px;
}

.wf-team-match {
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);
}

.wf-team-match-meta {
    display: block;
    margin-bottom: 5px;
    color: var(--wf-text-muted);
    font-size: 11px;
    text-decoration: none;
}

.wf-team-match-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
}

.wf-team-match-team {
    display: grid;
    gap: 2px;
    color: inherit;
    text-decoration: none;
}

.wf-team-match-team.is-home {
    text-align: right;
}

.wf-team-match-team small {
    color: var(--wf-text-muted);
    font-size: 10px;
}

.wf-team-match-team:not(.is-current) strong {
    color: var(--wf-text-muted);
    font-weight: 550;
}

.wf-team-match-result {
    color: inherit;
    text-align: center;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
}

.wf-team-empty {
    padding: 16px 2px;
}

.wf-person-header {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 22px;
}

.wf-person-portrait {
    width: 92px;
    height: 92px;
    flex: 0 0 92px;
    border-radius: 50%;
    background: var(--wf-surface-muted);
    overflow: hidden;
}

.wf-person-portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wf-person-roles {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

.wf-person-roles span,
.wf-person-roles a {
    padding: 4px 8px;
    border-radius: 999px;
    background: var(--wf-surface-muted);
    color: var(--wf-text-muted);
    font-size: 11px;
    font-weight: 650;
    text-decoration: none;
}

.wf-person-roles a.is-active {
    background: var(--wf-text);
    color: var(--wf-surface);
}

.wf-person-birth {
    display: grid;
    gap: 2px;
    margin-left: auto;
    text-align: right;
}

.wf-person-birth small,
.wf-person-birth span {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-person-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
}

.wf-person-appearances-card {
    grid-column: 1 / -1;
}

.wf-person-role-games {
    grid-column: 1 / -1;
}

.wf-person-position {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 12px 16px 4px;
}

.wf-person-position small {
    color: var(--wf-text-muted);
}

.wf-person-team-list,
.wf-person-competition-list,
.wf-person-appearance-list {
    padding: 2px 16px;
}

.wf-person-team {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);
}

.wf-person-team:last-child,
.wf-person-competition-list > a:last-child,
.wf-person-appearance-list > a:last-child {
    border-bottom: 0;
}

.wf-person-team > strong {
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-person-competition-list > a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-person-competition-list img {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.wf-person-competition-list span {
    display: grid;
    gap: 2px;
}

.wf-person-competition-list small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-person-appearance-list > a {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr) minmax(180px, auto);
    align-items: center;
    gap: 14px;
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-person-appearance-list span,
.wf-person-appearance-list small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-person-empty {
    padding: 16px;
}

.wf-person-detail-list {
    display: grid;
    padding: 2px 16px;
}

.wf-person-detail-list > div,
.wf-person-detail-list > a {
    display: grid;
    gap: 3px;
    padding: 12px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-person-detail-list > :last-child {
    border-bottom: 0;
}

.wf-person-detail-list span {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-person-directory-filter,
.wf-association-directory-filter {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 220px auto;
    align-items: end;
    gap: 12px;
    margin-bottom: 18px;
    padding: 16px;
    border: 1px solid var(--wf-border);
    border-radius: 8px;
    background: var(--wf-surface);
}

.wf-person-directory-filter label,
.wf-association-directory-filter label {
    display: grid;
    gap: 6px;
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-person-directory-filter input,
.wf-person-directory-filter select,
.wf-person-directory-filter button,
.wf-association-directory-filter select,
.wf-association-directory-filter button {
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-person-directory-filter button,
.wf-association-directory-filter button {
    cursor: pointer;
    font-weight: 650;
}

.wf-games-filter {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: end;
    gap: 12px;
    margin-bottom: 18px;
    padding: 16px;
    border: 1px solid var(--wf-border);
    border-radius: 8px;
    background: var(--wf-surface);
}

.wf-games-filter label {
    display: grid;
    gap: 6px;
    min-width: 0;
    color: var(--wf-text-muted);
    font-size: 12px;
}

.wf-games-filter input,
.wf-games-filter select,
.wf-games-filter button {
    width: 100%;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-games-filter button {
    width: auto;
    cursor: pointer;
    font-weight: 650;
}

.wf-games-filter-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.wf-games-pager {
    display: flex;
    gap: 16px;
    margin: 16px 0 0;
}

@media (max-width: 1100px) {
    .wf-games-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.wf-person-directory {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.wf-person-directory-entry {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    color: inherit;
    text-decoration: none;
}

.wf-person-directory-portrait {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    overflow: hidden;
    border-radius: 50%;
    background: var(--wf-surface-muted);
}

.wf-person-directory-portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wf-person-directory-copy {
    display: grid;
    min-width: 0;
    gap: 2px;
}

.wf-association-directory,
.wf-association-competition-list,
.wf-association-club-list,
.wf-association-referee-list,
.wf-association-child-list {
    display: grid;
    gap: 12px;
}

.wf-association-directory-entry {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: var(--wf-association-indent);
    padding: 14px 16px;
    color: inherit;
    text-decoration: none;
}

.wf-association-list-logo {
    display: flex;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--wf-surface-muted);
}

.wf-association-list-logo img,
.wf-association-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.wf-association-directory-entry > span:last-child,
.wf-association-child-list a > span:last-child {
    display: grid;
    gap: 3px;
}

.wf-association-directory-entry small,
.wf-association-child-list small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-association-header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 22px;
}

.wf-association-logo {
    display: flex;
    width: 88px;
    height: 88px;
    flex: 0 0 88px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: var(--wf-surface-muted);
}

.wf-association-context {
    display: flex;
    gap: 28px;
    margin-left: auto;
    text-align: right;
}

.wf-association-context span {
    display: grid;
    gap: 3px;
}

.wf-association-context small,
.wf-association-context a {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-association-context a {
    color: inherit;
    font-size: inherit;
    font-weight: 700;
    text-decoration: none;
}

.wf-association-overview {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.wf-association-children {
    grid-column: 1 / -1;
}

.wf-association-competition-list,
.wf-association-club-list,
.wf-association-referee-list,
.wf-association-child-list {
    padding: 4px 16px;
}

.wf-association-competition-list > a,
.wf-association-referee-list > a,
.wf-association-child-list > a {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 10px 2px;
    border-bottom: 1px solid var(--wf-border);
    color: inherit;
    text-decoration: none;
}

.wf-association-competition-list > a:last-child,
.wf-association-referee-list > a:last-child,
.wf-association-child-list > a:last-child {
    border-bottom: 0;
}

.wf-association-competition-list > a > span:nth-child(2),
.wf-association-referee-list > a > span:nth-child(2) {
    display: grid;
    gap: 3px;
}

.wf-association-competition-list small,
.wf-association-referee-list small,
.wf-association-competition-list em,
.wf-association-club-list small {
    color: var(--wf-text-muted);
    font-size: 11px;
    font-style: normal;
}

.wf-association-club-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 2px;
    border-bottom: 1px solid var(--wf-border);
}

.wf-association-club-row:last-child {
    border-bottom: 0;
}

.wf-association-referee-portrait {
    width: 42px;
    height: 42px;
    overflow: hidden;
    border-radius: 50%;
    background: var(--wf-surface-muted);
}

.wf-association-referee-portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wf-association-empty {
    padding: 16px;
}

.wf-card-title-count {
    margin-left: 3px;
    color: var(--wf-text-muted);
    font-size: 10px;
    font-weight: 600;
    vertical-align: 1px;
}

.wf-association-club-logos {
    display: flex;
    align-items: center;
    min-height: 92px;
    padding: 18px 24px;
}

.wf-association-club-logos > a {
    position: relative;
    display: flex;
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin-left: -26px;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--wf-text-muted);
    text-decoration: none;
}

.wf-association-club-logos > a:first-child {
    margin-left: 0;
}

.wf-association-club-logos > a:hover {
    z-index: 2;
    transform: translateY(-2px);
}

.wf-association-club-logos img {
    width: 52px;
    height: 58px;
    object-fit: contain;
    filter: drop-shadow(0 2px 2px rgb(24 26 28 / 24%));
}

.wf-association-club-logo-placeholder {
    width: 42px;
    height: 48px;
    border: 1px solid var(--wf-border-strong);
    border-radius: 3px 3px 21px 21px;
    background: var(--wf-surface);
    box-shadow: 0 2px 5px rgb(24 26 28 / 20%);
}

.wf-association-club-more {
    flex-direction: column;
    border: 3px solid var(--wf-surface) !important;
    border-radius: 50% !important;
    background: var(--wf-surface-muted) !important;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.05;
    text-align: center;
}

.wf-association-club-more small {
    margin-top: 2px;
    font-size: 8px;
    font-weight: 600;
}

.wf-association-more-link > span:first-child {
    width: 42px;
}

.wf-global-search-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    margin-bottom: 18px;
}

.wf-global-search-form input,
.wf-global-search-form button {
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid var(--wf-border);
    border-radius: 7px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-global-search-form button {
    cursor: pointer;
    font-weight: 700;
}

.wf-search-results {
    display: grid;
    gap: 18px;
}

.wf-search-result-list {
    padding: 2px 16px;
}

.wf-search-result {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 2px;
    border-bottom: 1px solid var(--wf-border);
}

.wf-search-result:last-child {
    border-bottom: 0;
}

.wf-search-result-main {
    display: flex;
    min-width: 0;
    flex: 1;
    align-items: center;
    gap: 12px;
    color: inherit;
    text-decoration: none;
}

.wf-search-result-media {
    display: flex;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--wf-surface-muted);
}

.wf-search-result-media.is-person {
    overflow: hidden;
    border-radius: 50%;
}

.wf-search-result-media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.wf-search-result-media.is-person img {
    object-fit: cover;
}

.wf-search-club-placeholder {
    width: 34px;
    height: 39px;
    border: 1px solid var(--wf-border-strong);
    border-radius: 3px 3px 17px 17px;
    background: var(--wf-surface-muted);
}

.wf-search-result-copy {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.wf-search-result-copy small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-search-person-roles {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 5px;
}

.wf-search-person-roles a,
.wf-search-person-roles span {
    padding: 4px 7px;
    border-radius: 999px;
    background: var(--wf-surface-muted);
    color: var(--wf-text-muted);
    font-size: 10px;
    font-weight: 650;
    text-decoration: none;
}

.wf-my-login-required {
    overflow: hidden;
}

.wf-my-login-required-body {
    padding: 22px 20px;
}

.wf-my-login-required-body h2 {
    margin: 0 0 8px;
    font-size: 17px;
}

.wf-my-login-required-body .wf-primary-action {
    display: inline-flex;
    margin-top: 16px;
}

.wf-header-logout {
    margin: 0;
}

.wf-header-logout button {
    font: inherit;
    cursor: pointer;
}

.wf-auth-page {
    width: min(100%, 560px);
    margin: 0 auto;
}

.wf-auth-card {
    overflow: hidden;
}

.wf-auth-form {
    display: grid;
    gap: 18px;
    padding: 24px;
}

.wf-auth-form label {
    display: grid;
    gap: 7px;
    color: var(--wf-text-muted);
    font-size: 12px;
    font-weight: 650;
}

.wf-auth-form input {
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-auth-form select {
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: var(--wf-surface);
    color: var(--wf-text);
    font: inherit;
}

.wf-auth-form input:focus {
    border-color: var(--wf-text-muted);
    outline: 2px solid rgb(35 64 117 / 14%);
}

.wf-auth-form button,
.wf-primary-action {
    width: fit-content;
    min-height: 40px;
    align-items: center;
    padding: 0 16px;
    border: 1px solid var(--wf-text);
    border-radius: 6px;
    background: var(--wf-text);
    color: var(--wf-surface);
    font: inherit;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.wf-auth-error {
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #d9a7ad;
    border-radius: 6px;
    background: #fff2f3;
    color: #982533;
    font-size: 12px;
}

.wf-auth-success,
.wf-auth-information {
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #a8cdb4;
    border-radius: 6px;
    background: #f0faf3;
    color: #255e35;
    font-size: 12px;
}

.wf-auth-information {
    border-color: var(--wf-border);
    background: var(--wf-surface-muted);
    color: var(--wf-text-muted);
}

.wf-auth-checkbox {
    display: flex !important;
    align-items: center;
    gap: 9px !important;
}

.wf-auth-checkbox input {
    width: 16px;
    min-height: 16px;
    margin: 0;
}

.wf-auth-setup-note {
    margin: -6px 0 0;
    font-size: 12px;
}

.wf-auth-form .wf-muted {
    margin: 0;
}

.wf-my-toolbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px 24px;
    margin-bottom: 18px;
}

.wf-my-contexts,
.wf-my-quick-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.wf-my-quick-actions {
    justify-content: flex-end;
    margin-left: auto;
}

.wf-my-contexts a,
.wf-my-quick-actions a {
    padding: 7px 11px;
    border: 1px solid var(--wf-border);
    border-radius: 999px;
    background: var(--wf-surface);
    color: var(--wf-text-muted);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}

.wf-my-quick-actions a {
    background: var(--wf-surface-muted);
    color: var(--wf-text);
}

.wf-my-contexts a.is-active {
    border-color: var(--wf-text);
    background: var(--wf-text);
    color: var(--wf-surface);
}

.wf-my-dashboard {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.wf-my-dashboard > .wf-card > .wf-card-header {
    padding-bottom: 0;
}

.wf-my-dashboard .wf-muted {
    margin: 0;
    padding: 14px 16px 16px;
}

.wf-competition-finder-help,
.wf-team-finder .wf-field-help {
    margin: 12px 0 0;
    padding: 0 2px;
    line-height: 1.4;
}

.wf-my-responsibilities {
    grid-column: 1 / -1;
}

.wf-my-list {
    padding: 3px 16px;
}

.wf-my-list > div {
    display: grid;
    gap: 3px;
    padding: 11px 2px;
    border-bottom: 1px solid var(--wf-border);
}

.wf-my-list > div:last-of-type {
    border-bottom: 0;
}

.wf-my-list > p {
    padding: 16px 2px;
}

.wf-my-list > .wf-my-list-more {
    padding: 11px 2px;
    border-top: 1px solid var(--wf-border);
    font-size: 12px;
    font-weight: 700;
}

.wf-my-list > .wf-my-list-more a {
    color: var(--wf-text);
}

.wf-my-list small,
.wf-my-status small {
    color: var(--wf-text-muted);
    font-size: 11px;
}

.wf-my-list a {
    color: inherit;
    text-decoration: none;
}

.wf-my-list .is-unread strong::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-right: 7px;
    border-radius: 50%;
    background: var(--wf-blue);
    vertical-align: 2px;
}

.wf-my-quick-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 16px;
}

.wf-my-quick-links a {
    padding: 8px 11px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    color: inherit;
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}

.wf-my-status {
    display: flex;
    gap: 32px;
    padding: 16px;
}

.wf-my-status span {
    display: grid;
    gap: 3px;
}

.wf-info-list dd a {
    color: inherit;
    text-decoration: none;
}

.wf-info-list dd a:hover {
    text-decoration: underline;
}

.wf-schedule-result small {
    font-size: 10px;
}

.wf-schedule-result span {
    display: block;
    margin-top: 2px;

    color: var(--wf-text-muted);
    font-size: 10px;
    font-weight: 600;
}


/* ============================================================
   STARTSEITE
   ============================================================ */

.wf-hero {
    display: grid;

    grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.6fr);

    gap: 24px;
}


.wf-hero-main {
    padding: 32px;
}


.wf-hero-kicker {
    margin-bottom: 8px;

    color: var(--wf-text-muted);

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}


.wf-hero-title {
    margin: 0 0 12px;

    font-size: clamp(32px, 5vw, 52px);
    line-height: 1.05;
}


.wf-hero-text {
    max-width: 720px;

    margin: 0;

    color: var(--wf-text-muted);

    font-size: 17px;
}


.wf-quick-links {
    display: grid;
    gap: 12px;

    padding: 18px;
}


.wf-quick-link {
    display: block;

    padding: 14px 16px;

    border: 1px solid var(--wf-border);
    border-radius: 6px;

    background: var(--wf-surface-muted);

    text-decoration: none;
}


.wf-quick-link:hover {
    border-color: var(--wf-border-strong);
    background: #ffffff;
}


/* ============================================================
   SPIELE
   ============================================================ */

.wf-match-list {
    display: grid;
    gap: 14px;
}


.wf-match-legend {
    margin-top: 16px;
}


.wf-match-card {
    overflow: hidden;
    cursor: pointer;

    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        transform 0.15s ease;
}

.wf-match-card:hover {
    border-color: var(--wf-border-strong);

    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);

    transform: translateY(-1px);
}


.wf-match-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 6px;

    padding: 12px 18px;

    border-bottom: 1px solid var(--wf-border);

    background: var(--wf-surface-muted);

    color: var(--wf-text-muted);

    font-size: 13px;
    text-align: center;
}

.wf-match-competition-logo {
    width: 18px;
    height: 18px;

    flex: 0 0 18px;

    object-fit: contain;
}

.wf-match-meta-separator {
    color: var(--wf-text-muted);
}

.wf-match-location {
    margin-top: 8px;

    color: var(--wf-text-muted);

    font-size: 12px;
    line-height: 1.4;
    text-align: center;
}

.wf-match-main {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        150px
        minmax(0, 1fr);

    align-items: center;
    gap: 20px;

    padding: 24px 18px;
}


.wf-match-team {
    min-width: 0;

    display: flex;
    align-items: center;

    gap: 16px;
}

.wf-match-team.is-home {
    justify-content: flex-end;
    text-align: right;
}

.wf-match-team.is-away {
    justify-content: flex-start;
    text-align: left;
}

.wf-match-team-copy {
    min-width: 0;
}


.wf-match-team-detail {
    color: var(--wf-text-muted);
    font-size: 13px;
}

.wf-match-crest-wrap {
    flex: 0 0 58px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.wf-match-crest {
    display: block;

    width: 54px;
    height: 62px;

    object-fit: contain;
}

.wf-match-crest-placeholder {
    width: 50px;
    height: 58px;

    border: 1px solid var(--wf-border-strong);

    background: var(--wf-surface-muted);

    border-radius:
        3px
        3px
        25px
        25px;
}

.wf-match-team-name {
    margin-top: 2px;

    font-size: 19px;
    font-weight: 750;
}


.wf-match-centre {
    text-align: center;
}


.wf-match-date {
    color: var(--wf-text-muted);
    font-size: 13px;
}


.wf-match-time {
    margin-top: 2px;

    font-size: 26px;
    font-weight: 800;
    line-height: 1.1;
}

.wf-match-result-marker {
    font-size: 13px;
    font-weight: 700;

    white-space: nowrap;
}

.wf-match-result-marker.is-prefix {
    margin-right: 3px;
}

.wf-match-result-marker.is-suffix {
    margin-left: 3px;
}

.wf-match-result-secondary {
    margin-top: 4px;

    color: var(--wf-text-muted);

    font-size: 12px;
    font-weight: 600;
}

.wf-empty {
    padding: 30px;

    color: var(--wf-text-muted);

    text-align: center;
}

/* ============================================================
   SPIELDETAIL
   ============================================================ */

.wf-game-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;

    margin-bottom: 5px;

    color: var(--wf-text-muted);

    font-size: 13px;
    font-weight: 600;
}

.wf-game-context-logo {
    width: 18px;
    height: 18px;

    flex: 0 0 18px;

    object-fit: contain;
}


.wf-game-hero {
    display: grid;
    gap: 22px;
    padding: 28px 28px 22px;
    margin-bottom: 22px;
}

.wf-back {
    margin: 0 0 14px;
}

.wf-back[hidden] {
    display: none !important;
}

.wf-back a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: #fff;
    color: var(--wf-text);
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
}

.wf-back a:hover,
.wf-back a:focus-visible {
    border-color: #29363d;
    background: #f4f7f8;
}

.wf-back a:focus-visible {
    outline: 2px solid #29363d;
    outline-offset: 2px;
}

.wf-game-hero-meta {
    display: grid;
    gap: 8px;
    text-align: center;
}

.wf-game-hero-context {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--wf-text-muted);
    font-size: 13px;
    font-weight: 600;
}

.wf-game-hero-when {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .01em;
}

.wf-game-hero-venue {
    display: grid;
    gap: 2px;
    color: var(--wf-text-muted);
    font-size: 13px;
    font-weight: 600;
}
.wf-game-hero-venue a{color:inherit}

.wf-game-hero-scoreboard {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(140px, 180px) minmax(0, 1fr);
    align-items: center;
    gap: 24px;
}

.wf-game-hero-foot {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px 24px;
    padding-top: 4px;
    border-top: 1px solid var(--wf-border);
    color: var(--wf-text-muted);
    font-size: 13px;
}

.wf-game-hero-officials {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
}

.wf-game-hero-officials span {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px;
}

.wf-game-hero-officials small {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
    font-size: 11px;
}

.wf-game-hero-officials a,
.wf-game-hero-attendance {
    color: inherit;
    font-weight: 650;
}

.wf-game-hero-officials a:hover {
    color: var(--wf-text);
}

.wf-game-team {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 22px;
}

.wf-game-team.is-home {
    justify-content: flex-end;
    text-align: right;
}

.wf-game-team.is-away {
    justify-content: flex-start;
    text-align: left;
}

.wf-game-team-copy {
    min-width: 0;
}

.wf-game-crest-wrap {
    flex: 0 0 82px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wf-game-crest {
    display: block;
    width: 76px;
    height: 86px;
    object-fit: contain;
}

.wf-game-crest-placeholder {
    width: 70px;
    height: 82px;
    border: 1px solid var(--wf-border-strong);
    background: var(--wf-surface-muted);
    border-radius: 4px 4px 35px 35px;
}

.wf-game-team-detail {
    color: var(--wf-text-muted);
    font-size: 13px;
}

.wf-game-team-name {
    margin-top: 3px;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.15;
}

.wf-game-centre {
    text-align: center;
}

.wf-game-date {
    color: var(--wf-text-muted);
    font-size: 13px;
}

.wf-game-score {
    margin-top: 3px;
    font-size: 42px;
    font-weight: 850;
    line-height: 1.05;
}

.wf-game-score-label {
    margin-top: 6px;
    color: var(--wf-text-muted);
    font-size: 13px;
    font-weight: 700;
}

.wf-game-scorers {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px 24px;
    margin-bottom: 18px;
}

.wf-game-scorers-side {
    min-width: 0;
}

.wf-game-scorers-side.is-away {
    text-align: right;
}

.wf-game-scorers-side strong {
    display: block;
    margin-bottom: 6px;
    font-size: 13px;
}

.wf-game-scorers-side p {
    margin: 0;
    color: var(--wf-text-muted);
    font-size: 13px;
    line-height: 1.45;
}

.wf-game-scorers-side a {
    color: inherit;
    font-weight: 650;
}

.wf-game-timeline {
    display: grid;
    gap: 8px;
    margin: 6px 0 22px;
    padding: 8px 10px 12px;
    overflow-x: auto;
}

.wf-game-timeline-lane {
    position: relative;
    height: 28px;
}

.wf-game-timeline-track {
    position: relative;
    height: 14px;
    margin: 0 8px;
    border-radius: 7px;
    background: #29363d;
}

.wf-game-timeline-tick {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 2px 6px;
    border-radius: 4px;
    background: #29363d;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.wf-game-timeline-tick:first-child {
    transform: translate(0, -50%);
}

.wf-game-timeline-tick:last-child {
    transform: translate(-100%, -50%);
}

.wf-game-timeline-marker {
    position: absolute;
    top: 50%;
    width: 16px;
    height: 16px;
    margin-left: -8px;
    transform: translateY(-50%);
    border-radius: 50%;
    background: #29363d;
    box-shadow: 0 0 0 2px #fff;
}

.wf-game-timeline-marker.is-goal {
    background:
        radial-gradient(circle at 35% 35%, #fff 0 18%, transparent 19%),
        repeating-linear-gradient(45deg, #1f6338 0 3px, #163f24 3px 6px);
}

.wf-game-timeline-marker.is-yellow {
    width: 12px;
    height: 16px;
    margin-left: -6px;
    border-radius: 2px;
    background: #e2b400;
}

.wf-game-timeline-marker.is-yellow_red {
    width: 12px;
    height: 16px;
    margin-left: -6px;
    border-radius: 2px;
    background: linear-gradient(135deg, #e2b400 50%, #9f3333 50%);
}

.wf-game-timeline-marker.is-red {
    width: 12px;
    height: 16px;
    margin-left: -6px;
    border-radius: 2px;
    background: #9f3333;
}

.wf-game-timeline-marker.is-sub {
    border-radius: 50%;
    background:
        conic-gradient(from 210deg, #4a6675 0 40%, transparent 40% 60%, #4a6675 60% 100%);
    box-shadow: inset 0 0 0 3px #fff, 0 0 0 2px #4a6675;
}

.wf-admin-flow-track {
    display: block;
    width: calc(100% - 16px);
    height: 22px;
    padding: 0;
    border: 0;
    cursor: pointer;
    appearance: none;
}

.wf-admin-flow-cursor {
    position: absolute;
    top: -8px;
    bottom: -8px;
    width: 2px;
    margin-left: -1px;
    background: #fff;
    pointer-events: none;
}

.wf-admin-flow-track [hidden] {
    display: none !important;
}

.wf-game-flow .wf-game-event-list {
    margin-top: 4px;
    border-top: 1px solid var(--wf-border);
    padding-top: 8px;
}

.wf-game-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, 0.8fr);
    gap: 22px;
}

.wf-game-detail {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(260px, 0.75fr);
    gap: 22px;
    align-items: start;
    margin-top: 22px;
}

.wf-game-detail-main,
.wf-game-detail-aside {
    display: grid;
    gap: 22px;
    align-content: start;
}

.wf-game-chronology .wf-game-event-list li,
.wf-game-flow .wf-game-event-list li {
    padding: 10px 0;
    border-bottom: 1px solid var(--wf-border);
}

.wf-game-chronology .wf-game-event-list li:last-child,
.wf-game-flow .wf-game-event-list li:last-child {
    border-bottom: 0;
}

.wf-game-chronology .wf-game-event-type,
.wf-game-flow .wf-game-event-type {
    font-weight: 700;
    font-size: 13px;
}

.wf-game-chronology li.is-goal .wf-game-event-type,
.wf-game-chronology li.is-own_goal .wf-game-event-type,
.wf-game-flow li.is-goal .wf-game-event-type,
.wf-game-flow li.is-own_goal .wf-game-event-type {
    color: #1f6338;
}

.wf-game-chronology li.is-yellow .wf-game-event-type,
.wf-game-flow li.is-yellow .wf-game-event-type {
    color: #8a6a00;
}

.wf-game-chronology li.is-red .wf-game-event-type,
.wf-game-chronology li.is-yellow_red .wf-game-event-type,
.wf-game-flow li.is-red .wf-game-event-type,
.wf-game-flow li.is-yellow_red .wf-game-event-type {
    color: #9f3333;
}

.wf-game-chronology li.is-sub .wf-game-event-type,
.wf-game-flow li.is-sub .wf-game-event-type {
    color: #4a6675;
}

@media (max-width: 760px) {
    .wf-game-hero-scoreboard {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .wf-game-team.is-home,
    .wf-game-team.is-away {
        justify-content: flex-start;
        text-align: left;
    }

    .wf-game-team.is-home {
        flex-direction: row-reverse;
        justify-content: flex-end;
        text-align: right;
    }

    .wf-game-scorers {
        grid-template-columns: 1fr;
    }

    .wf-game-scorers-side.is-away {
        text-align: left;
    }

    .wf-game-hero-foot {
        flex-direction: column;
    }

    .wf-game-detail {
        grid-template-columns: 1fr;
    }
}


.wf-game-report-meta {
    margin-bottom: 16px;
}

.wf-admin-match-tabs {
    display: flex;
    gap: 0;
    overflow-x: auto;
    margin: 18px 0 10px;
    border-bottom: 1px solid var(--wf-border);
    position: sticky;
    top: 0;
    z-index: 5;
    background: var(--wf-bg, #f4f7f8);
}

.wf-admin-match-tabs button {
    flex: none;
    padding: 11px 14px;
    border: 0;
    border-bottom: 3px solid transparent;
    background: transparent;
    color: var(--wf-text-muted);
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.wf-admin-match-tabs button:hover {
    color: var(--wf-text);
}

.wf-admin-match-tabs button.is-active {
    border-bottom-color: var(--wf-green);
    color: var(--wf-text);
}

.wf-admin-match-tabs button small {
    font-weight: 600;
    color: var(--wf-text-muted);
}

.wf-admin-match-tabs button[hidden] {
    display: none !important;
}

.wf-admin-match-panels fieldset {
  border: 0;
  margin: 0;
  padding: 0;
  min-inline-size: 0;
}

.wf-admin-match-panels > [data-match-panel][hidden] {
    display: none;
}

.wf-admin-score-lead {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 18px 28px;
    margin-bottom: 16px;
}

.wf-admin-score-lead > label:first-child {
    display: grid;
    gap: 5px;
    flex: 1 1 280px;
    max-width: 420px;
    font-size: 13px;
    font-weight: 700;
}

.wf-admin-score-lead select {
    min-height: 42px;
    padding: 0 10px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: #fff;
    font: inherit;
}

.wf-admin-score-abandon {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    margin: 0;
    font-size: 13px;
    font-weight: 700;
}

.wf-admin-incident {
    display: grid;
    gap: 6px;
    margin: 16px 0 0;
    font-size: 13px;
    font-weight: 700;
}

.wf-admin-incident textarea {
    min-height: 120px;
    padding: 10px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: #fff;
    font: inherit;
    font-weight: 400;
    resize: vertical;
}

.wf-admin-match-panels > .wf-card {
    margin-top: 0;
}

.wf-admin-form form > .wf-field-help {
    margin: 0 0 12px;
    padding: 0 18px;
}

.wf-admin-release-confirm {
    display: grid;
    gap: 12px;
    margin-top: 14px;
}

.wf-admin-release-confirm > label {
    display: grid;
    gap: 5px;
    font-size: 13px;
    font-weight: 700;
}

.wf-admin-release-confirm textarea {
    min-height: 96px;
    padding: 10px;
    border: 1px solid var(--wf-border);
    border-radius: 6px;
    background: #fff;
    font: inherit;
    resize: vertical;
}

.wf-admin-release-confirm .wf-auth-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-weight: 600;
}


.wf-info-list {
    margin: 0;
}


.wf-info-list > div {
    display: grid;

    grid-template-columns: 140px 1fr;

    gap: 16px;

    padding: 10px 0;

    border-bottom: 1px solid var(--wf-border);
}


.wf-info-list > div:last-child {
    border-bottom: 0;
}


.wf-info-list dt {
    color: var(--wf-text-muted);

    font-size: 13px;
}


.wf-info-list dd {
    margin: 0;

    font-weight: 600;
}


.wf-muted {
    margin: 0;

    color: var(--wf-text-muted);
}

/* ============================================================
   DIAGNOSE
   ============================================================ */

.wf-table {
    width: 100%;

    border-collapse: collapse;

    background: var(--wf-surface);
}


.wf-table th,
.wf-table td {
    padding: 11px 14px;

    border-bottom: 1px solid var(--wf-border);

    text-align: left;
}


.wf-table th {
    background: var(--wf-surface-muted);
    font-weight: 700;
}

.wf-table tbody tr:last-child > th,
.wf-table tbody tr:last-child > td {
    border-bottom: 0;
}


/* ============================================================
   FOOTER
   ============================================================ */

.wf-footer {
    border-top: 1px solid var(--wf-border);

    background: #ffffff;
}


.wf-footer-inner {
    max-width: var(--wf-content-width);

    margin: 0 auto;
    padding: 24px;

    display: flex;
    justify-content: space-between;
    gap: 24px;

    color: var(--wf-text-muted);

    font-size: 13px;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1100px) {
    .wf-header-inner {
        flex-wrap: wrap;

        gap: 0;

        padding-top: 10px;
    }

    .wf-nav {
        order: 3;

        width: 100%;

        overflow-x: auto;
    }

    .wf-nav-link {
        min-height: 48px;
    }

    .wf-header-actions {
        margin-left: auto;
    }
}


@media (max-width: 760px) {
    .wf-club-directory-layout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "finder"
            "main";
        gap: 20px;
    }

    .wf-competition-directory-layout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "finder"
            "main";
        gap: 20px;
    }

    .wf-main {
        padding: 22px 14px 48px;
    }

    .wf-header-inner {
        padding-right: 14px;
        padding-left: 14px;
    }

    .wf-brand-logo {
        width: 44px;
        height: 44px;
    }

    .wf-brand-name {
        font-size: 18px;
    }

    .wf-hero {
        grid-template-columns: 1fr;
    }

    .wf-competition-header,
    .wf-competition-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .wf-competition-picker,
    .wf-competition-picker select {
        width: 100%;
    }

    .wf-class-picker,
    .wf-edition-picker {
        margin-left: 0;
    }

    .wf-competition-search,
    .wf-club-search,
    .wf-competition-running-grid {
        grid-template-columns: 1fr;
    }

    .wf-competition-cascade {
        padding: 14px;
    }

    .wf-competition-selection-action {
        margin: 3px -14px -14px;
    }

    .wf-competition-running-card {
        grid-template-columns: 62px minmax(0, 1fr);
    }

    .wf-club-directory-summary {
        grid-template-columns: 62px minmax(0, 1fr) 18px;
    }

    .wf-club-directory-meta {
        grid-column: 2;
        justify-items: start;
        padding-left: 0;
        border-left: 0;
        text-align: left;
    }

    .wf-club-directory-summary::after {
        grid-column: 3;
        grid-row: 1 / span 2;
    }

    .wf-club-directory-expanded {
        align-items: flex-start;
        grid-template-columns: 1fr;
        padding-left: 18px;
    }

    .wf-club-directory-profile-column {
        width: 100%;
        min-height: 0;
        justify-content: flex-start;
        padding-top: 10px;
        padding-left: 0;
        border-top: 1px solid var(--wf-border);
        border-left: 0;
    }

    .wf-competition-running-meta {
        grid-column: 2;
        justify-items: start;
        padding-left: 0;
        border-left: 0;
        text-align: left;
    }

    .wf-section-tabs {
        gap: 18px;
        overflow-x: auto;
    }

    .wf-competition-overview {
        grid-template-columns: 1fr;
    }

    .wf-club-overview-grid {
        grid-template-columns: 1fr;
    }

    .wf-team-grid {
        grid-template-columns: 1fr;
    }

    .wf-person-grid {
        grid-template-columns: 1fr;
    }

    .wf-person-appearances-card {
        grid-column: auto;
    }

    .wf-person-appearance-list > a {
        grid-template-columns: 1fr;
        gap: 3px;
    }

    .wf-person-directory-filter,
    .wf-association-directory-filter,
    .wf-games-filter,
    .wf-person-directory {
        grid-template-columns: 1fr;
    }

    .wf-association-overview {
        grid-template-columns: 1fr;
    }

    .wf-association-children {
        grid-column: auto;
    }

    .wf-association-header,
    .wf-association-context {
        align-items: flex-start;
        flex-direction: column;
    }

    .wf-association-context {
        margin-left: 0;
        text-align: left;
    }

    .wf-association-directory-entry {
        margin-left: min(var(--wf-association-indent), 36px);
    }

    .wf-global-search-form {
        grid-template-columns: 1fr;
    }

    .wf-search-result {
        align-items: flex-start;
        flex-direction: column;
    }

    .wf-search-person-roles {
        justify-content: flex-start;
    }

    .wf-my-dashboard {
        grid-template-columns: 1fr;
    }

    .wf-my-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .wf-my-quick-actions {
        justify-content: flex-start;
        margin-left: 0;
    }

    .wf-my-responsibilities {
        grid-column: auto;
    }

    .wf-team-competitions-card {
        grid-column: auto;
    }

    .wf-club-header {
        align-items: flex-start;
    }

    .wf-club-logo {
        width: 68px;
        height: 68px;
    }

    .wf-club-facts {
        margin-left: 0;
    }

    .wf-club-team {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .wf-competition-standings {
        grid-column: auto;
    }

    .wf-schedule-match {
        grid-template-columns: 1fr 72px 1fr;
        gap: 8px;
        padding: 12px 2px;
    }

    .wf-schedule-match::after {
        display: none;
    }

    .wf-schedule-date {
        grid-column: 1 / -1;
        text-align: center;
    }

    .wf-schedule-date small {
        display: inline;
        margin-left: 4px;
    }

    .wf-match-main {
        grid-template-columns: 1fr;
    }

    .wf-match-team,
    .wf-match-team.is-home,
    .wf-match-team.is-away {
        text-align: center;
    }

    .wf-match-centre {
        order: -1;
    }

    .wf-page-header,
    .wf-footer-inner {
        align-items: flex-start;
        flex-direction: column;
    }
	
	.wf-game-hero-scoreboard,
	.wf-game-grid,
	.wf-game-detail {
		grid-template-columns: 1fr;
	}

	.wf-game-hero-scoreboard .wf-game-centre {
		order: -1;
	}

	.wf-game-team.is-home {
		flex-direction: row-reverse;
		justify-content: flex-end;
		text-align: right;
	}

	.wf-game-team.is-away {
		justify-content: flex-start;
		text-align: left;
	}

    .wf-game-team-form,
    .wf-game-team.is-home .wf-game-team-form {
        justify-content: flex-end;
    }

    .wf-game-team.is-away .wf-game-team-form {
        justify-content: flex-start;
    }

	.wf-info-list > div {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}
/* Statistikzentrale */
.wf-statistics-filter { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:1rem; align-items:end; padding:1rem; margin-bottom:1rem; }
.wf-statistics-filter label { display:grid; gap:.3rem; font-size:.86rem; }
.wf-statistics-filter select { width:100%; min-height:2.75rem; padding:.55rem .75rem; border:1px solid var(--border-color,#d5dce1); border-radius:.4rem; background:#fff; }
.wf-statistics-filter > a { min-height:2.75rem; display:flex; align-items:center; }
.wf-statistics-sections { margin-bottom:1.5rem; }
.wf-statistics-section { scroll-margin-top:1rem; margin-bottom:2rem; }
.wf-statistics-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.wf-statistics-grid-many { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wf-statistics-grid .wf-card { padding:1rem; }
.wf-statistics-grid h3 { display:flex; align-items:center; gap:6px; margin:0 0 .65rem; font-size:1rem; }
.wf-statistics-grid button.wf-field-tip,.wf-team-statistics button.wf-field-tip { display:inline-flex; align-items:center; justify-content:center; width:18px; min-width:18px; height:18px; min-height:18px; margin:0; padding:0; border:1px solid var(--wf-border); border-radius:50%; background:#fff; color:var(--wf-text-muted); font-size:12px; font-weight:700; line-height:1; cursor:pointer; }
.wf-statistics-grid button.wf-field-tip:hover,.wf-statistics-grid button.wf-field-tip[aria-expanded="true"],.wf-team-statistics button.wf-field-tip:hover,.wf-team-statistics button.wf-field-tip[aria-expanded="true"] { border-color:#29363d; background:#f4f7f8; color:#29363d; }
.wf-statistics-grid button.wf-field-tip:focus-visible,.wf-team-statistics button.wf-field-tip:focus-visible { outline:2px solid #29363d; outline-offset:2px; }
.wf-statistics-grid .wf-field-help { margin:0 0 .75rem; line-height:1.45; }
.wf-team-statistics .wf-field-help { margin:0 16px .75rem; line-height:1.45; }
.wf-statistics-grid .wf-field-help[hidden],.wf-team-statistics .wf-field-help[hidden] { display:none; }
.wf-team-statistics { display:grid; gap:16px; }
.wf-team-stat-note { margin:0 16px 12px; }
.wf-team-statistics .wf-person-stats small { display:flex; align-items:center; gap:6px; }
.wf-stat-row { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.65rem 0; border-top:1px solid var(--border-color,#e2e6e9); color:inherit; text-decoration:none; }
.wf-stat-row:first-of-type { border-top:0; }
.wf-stat-row span { min-width:0; display:grid; gap:.12rem; }
.wf-stat-row small { color:var(--muted-color,#647078); }
.wf-stat-row b { flex:none; text-align:right; font-size:.88rem; }
.wf-statistics-notice { padding:1rem; color:var(--muted-color,#647078); }

.wf-admin-body { background:#eef1f3; }
.wf-admin-header { border-bottom:1px solid #526068; background:#29363d; color:#fff; }
.wf-admin-header-inner { max-width:1280px; min-height:68px; margin:auto; padding:0 22px; display:flex; align-items:center; gap:0; }
.wf-admin-brand { --wf-admin-brand-size:21px;align-self:stretch;display:flex;align-items:center;gap:11px;padding-right:28px;margin-right:12px;color:#fff;text-decoration:none;flex:0 0 auto; }
.wf-admin-logo-field { display:flex;align-items:center;flex:0 0 auto;background:transparent; }
.wf-admin-logo-field img { display:block;width:auto;height:var(--wf-admin-brand-size);object-fit:contain; }
.wf-admin-brand-label { color:#f1f4f5;font-family:var(--wf-font-brand);font-size:var(--wf-admin-brand-size);font-weight:400;letter-spacing:.025em;line-height:1;white-space:nowrap; }
.wf-admin-header nav { display:flex; align-self:stretch; align-items:center; gap:2px; min-width:0; padding:0 7px; background:rgb(15 24 29 / 18%); }
.wf-admin-header nav > a,
.wf-admin-nav-group > a.wf-admin-nav-group-label{height:100%;padding:0 16px;display:flex;align-items:center;color:#e5ebee;text-decoration:none;font-size:14px;font-weight:700}
.wf-admin-header nav > a.is-active,
.wf-admin-nav-group.is-active > a.wf-admin-nav-group-label{background:#3c4b53;color:#fff;box-shadow:inset 0 -3px 0 var(--wf-green)}
.wf-admin-nav-group{position:relative;display:flex;align-self:stretch;align-items:center}
.wf-admin-nav-dropdown{display:none;position:absolute;top:100%;left:0;z-index:40;min-width:230px;padding:8px 0;border:1px solid #526068;border-radius:0 0 6px 6px;background:#29363d;box-shadow:0 10px 24px rgb(0 0 0 / 28%)}
.wf-admin-nav-group:hover > .wf-admin-nav-dropdown,
.wf-admin-nav-group:focus-within > .wf-admin-nav-dropdown{display:grid}
.wf-admin-nav-dropdown a{display:block;padding:10px 16px;color:#e5ebee;text-decoration:none;font-size:13px;font-weight:650;white-space:nowrap}
.wf-admin-nav-dropdown a:hover{background:#3c4b53;color:#fff}
.wf-acting-role-menu{position:relative;flex:0 0 auto}.wf-admin-header-actions button.wf-acting-role-toggle{width:34px;min-width:34px;padding:0}.wf-acting-role-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.wf-admin-header-actions button.wf-acting-role-toggle[aria-expanded="true"]{border-color:#fff;background:rgb(255 255 255 / 10%)}.wf-acting-role-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:50;display:grid;gap:2px;min-width:15rem;max-width:22rem;margin:0;padding:8px;border:1px solid #526068;border-radius:6px;background:#29363d;box-shadow:0 10px 24px rgb(0 0 0 / 28%)}.wf-acting-role-panel[hidden]{display:none}.wf-acting-role-panel p{margin:0 6px 4px;color:#b7c2c7;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.wf-admin-header-actions .wf-acting-role-panel button{width:100%;min-height:34px;justify-content:flex-start;padding:6px 10px;border-color:transparent;border-radius:4px;background:transparent;color:#e5ebee;font-size:13px;font-weight:650;line-height:1.3;text-align:left;white-space:normal}.wf-admin-header-actions .wf-acting-role-panel button:hover,.wf-admin-header-actions .wf-acting-role-panel button.is-current{border-color:transparent;background:#3c4b53;color:#fff}.wf-admin-header-actions{margin-left:auto;display:flex;align-items:center;gap:9px;flex:0 0 auto}.wf-admin-header-actions form{margin:0}.wf-admin-header-actions a,.wf-admin-header-actions button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:5px 12px;border:1px solid #718089;border-radius:5px;background:transparent;color:#fff;font:inherit;font-size:13px;font-weight:600;line-height:1.15;text-align:center;text-decoration:none;cursor:pointer}.wf-admin-header-actions a{max-width:6.8rem;white-space:normal}.wf-admin-header-actions a:hover,.wf-admin-header-actions button:hover{border-color:#9ba8ae;background:rgb(255 255 255 / 7%)}
.wf-admin-tasks-panel{margin-top:28px}.wf-admin-tasks-panel .wf-card-body{display:grid;gap:8px}.wf-admin-club-directory{margin-top:28px}.wf-admin-club-overview{margin-top:28px}.wf-admin-club-overview .wf-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px}.wf-admin-club-overview .wf-section-heading .wf-muted{margin:0;font-size:13px}.wf-card-header.wf-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.wf-card-header.wf-section-heading .wf-card-title{margin:0}.wf-admin-managed-list{display:grid;gap:10px}.wf-admin-org-list-row{padding:12px 16px}.wf-admin-org-list-row.wf-admin-list-row>.wf-admin-list-row-main{display:grid;gap:2px;min-width:0}.wf-admin-org-list-row .wf-admin-list-row-title{display:inline-flex;align-items:center;gap:10px;min-width:0}.wf-admin-flag-slot{flex:0 0 24px;width:24px;height:16px;display:inline-flex;align-items:center;justify-content:center}.wf-admin-flag-slot .wf-admin-flag-preview{display:block}.wf-admin-list-row-link{font-size:13px;font-weight:700;color:var(--wf-text-muted);text-decoration:none;white-space:nowrap}.wf-admin-list-row-link:hover{color:var(--wf-text);text-decoration:underline}.wf-admin-page-heading .wf-admin-actions{margin:0;align-items:center}.wf-admin-dimension-panels{display:grid;gap:16px;margin-top:16px}.wf-admin-dimension-list{display:grid;gap:8px;margin:12px 0 18px}.wf-admin-dimension-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--wf-border);border-radius:6px}.wf-admin-dimension-row.is-inactive{opacity:.75;background:#f7f9fa}.wf-admin-dimension-row small{display:block;color:var(--wf-text-muted)}.wf-admin-dimension-form{margin-top:18px;padding-top:18px;border-top:1px solid var(--wf-border)}.wf-admin-dimension-form h3{margin:0 0 12px;font-size:15px}.wf-admin-list-row-actions form{margin:0}.wf-admin-list-row-actions button.wf-admin-list-row-link{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}.wf-admin-managed-card > summary{list-style:none;cursor:pointer}.wf-admin-managed-card > summary::-webkit-details-marker{display:none}.wf-admin-managed-teams{display:grid;gap:8px;padding:0 16px 14px}.wf-admin-managed-teams a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--wf-border);border-radius:6px;color:inherit;text-decoration:none}.wf-admin-managed-teams a:hover{background:#f5f7f8}
.wf-admin-main { max-width:1280px; margin:0 auto; padding:30px 22px 60px; }
.wf-admin-main .wf-primary-action,
.wf-admin-main button[type="submit"] { min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border:1px solid #29363d;border-radius:6px;background:#29363d;color:#fff;font:inherit;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer; }
.wf-icon-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex:none;margin-left:auto}.wf-icon-actions form{margin:0;display:flex}.wf-icon-action{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-height:34px;padding:0;border:1px solid var(--wf-border);border-radius:6px;background:#fff;color:#29363d;cursor:pointer;text-decoration:none}.wf-icon-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.wf-admin-main button.wf-icon-action{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border:1px solid var(--wf-border);background:#fff;color:#29363d}.wf-icon-action:hover,.wf-icon-action:focus-visible,.wf-admin-main button.wf-icon-action:hover{border-color:#29363d;background:#f4f7f8;color:#29363d}.wf-icon-action.is-danger,.wf-admin-main button.wf-icon-action.is-danger{color:#9f3333;border-color:#e4c4c4}.wf-icon-action.is-danger:hover,.wf-icon-action.is-danger:focus-visible,.wf-admin-main button.wf-icon-action.is-danger:hover{border-color:#9f3333;background:#fff7f7;color:#9f3333}.wf-icon-action[data-tooltip]::after{content:attr(data-tooltip);position:absolute;z-index:3;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);padding:4px 8px;border-radius:4px;background:#243038;color:#fff;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;opacity:0;pointer-events:none}.wf-icon-action:hover::after,.wf-icon-action:focus-visible::after{opacity:1}
.wf-match-tasks{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.wf-match-task{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:6px 14px 6px 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;color:#29363d;text-decoration:none;font-weight:700;line-height:1.25}.wf-match-task small{display:block;font-size:11px;font-weight:600;color:var(--wf-text-muted)}.wf-match-task svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.wf-match-task:hover,.wf-match-task:focus-visible{border-color:#29363d;background:#f4f7f8;color:#29363d}
.wf-admin-main .wf-primary-action:hover,
.wf-admin-main button[type="submit"]:hover { border-color:#36464e;background:#36464e; }
.wf-admin-dashboard-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1100px }.wf-admin-dashboard-grid a{display:grid;gap:6px;color:inherit;text-decoration:none}.wf-admin-dashboard-grid span{color:var(--wf-text-muted)}
@media (max-width:1100px) and (min-width:761px) {
    .wf-admin-dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.wf-admin-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.wf-admin-page-heading h1,.wf-admin-page-heading p{margin-top:0}.wf-admin-page-heading .wf-primary-action,.wf-admin-page-heading .wf-secondary-action{flex:none}.wf-admin-team-list-row{display:grid;gap:10px}.wf-admin-team-list-row>a:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:inherit;text-decoration:none;min-width:0}.wf-admin-team-list-row>a:first-child:hover{color:inherit}.wf-admin-team-club-jump{justify-self:start;font-size:13px}.wf-admin-list-row-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;flex-shrink:0;justify-content:flex-end}.wf-admin-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.wf-admin-form-grid .wf-admin-checkbox-option{display:flex;align-items:center;gap:8px;font-weight:500}.wf-admin-checkbox-option{display:flex;align-items:center;gap:8px;font-weight:500}.wf-admin-checkbox-option input{margin:0}.wf-admin-checkbox-option span{display:inline-flex;align-items:center;gap:8px}.wf-admin-flag-preview{width:24px;height:16px;object-fit:cover;border:1px solid var(--wf-border);border-radius:2px}.wf-admin-flag-preview.is-large{width:48px;height:32px}.wf-admin-flag-current{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.wf-admin-list { display:grid;gap:10px;margin-top:18px }.wf-admin-list-row{padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:inherit;text-decoration:none}.wf-admin-list-row>span:first-child{display:grid;gap:4px}.wf-admin-list-row small{color:var(--wf-text-muted)}
.wf-admin-actions { display:flex;gap:10px;margin:18px 0 }.wf-admin-form{margin:18px 0}.wf-admin-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.wf-admin-form-grid label{display:grid;gap:5px;font-size:13px;font-weight:700;align-items:start}.wf-admin-form-grid [hidden]{display:none !important}.wf-admin-form-grid input,.wf-admin-form-grid select,.wf-admin-entry-row select{min-height:42px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}.wf-admin-form-grid textarea{min-height:140px;padding:10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit;resize:vertical}.wf-admin-form-span-two{grid-column:1/-1}.wf-game-report-headline{margin:0 0 10px;font-size:18px}.wf-game-report-text{line-height:1.55;white-space:normal}.wf-game-event-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.wf-game-event-list li{display:grid;grid-template-columns:4.5rem minmax(7rem,auto) minmax(0,1fr) auto;gap:10px;align-items:baseline}.wf-game-event-minute{font-weight:700}.wf-game-event-team{color:var(--wf-text-muted);font-size:13px}.wf-admin-lineup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 16px 16px}.wf-admin-lineup-team{margin:0;border:1px solid var(--wf-border);border-radius:7px;background:#fff}.wf-admin-lineup-team h3{margin:0 0 12px;font-size:16px}.wf-admin-lineup-players{display:grid;gap:6px;margin:0 0 14px;max-height:260px;overflow:auto}.wf-game-lineup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.wf-game-lineup-heading{margin:14px 0 6px;font-size:13px;font-weight:700;color:var(--wf-text-muted)}.wf-game-lineup-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.wf-game-lineup-list li{display:flex;gap:8px;align-items:baseline}.wf-game-lineup-number{min-width:1.6rem;font-weight:700}.wf-admin-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px;padding:0 16px 16px}.wf-admin-reset-link{color:var(--wf-text-muted);font-size:13px;font-weight:700;text-decoration:none}.wf-admin-reset-link:hover{color:var(--wf-text);text-decoration:underline}
.wf-admin-setup-form{display:grid;gap:2px}.wf-admin-setup-form>.wf-admin-form{margin:9px 0}.wf-admin-setup-form h3{margin:0 0 10px;font-size:15px}.wf-admin-matrix{display:grid;border:1px solid var(--wf-border);border-radius:7px;overflow:hidden;background:#fff}.wf-admin-matrix-row{display:grid;grid-template-columns:minmax(170px,1.35fr) repeat(5,minmax(105px,1fr));gap:12px;align-items:center;padding:11px 13px;border-bottom:1px solid var(--wf-border)}.wf-admin-matrix-row:last-child{border-bottom:0}.wf-admin-matrix-row label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600}.wf-admin-matrix-row input[type="number"],.wf-admin-matrix-row select{width:100%;min-height:36px;padding:0 8px;border:1px solid var(--wf-border);border-radius:5px;background:#fff;font:inherit}.wf-admin-matrix-row input[type="checkbox"],.wf-admin-form-grid input[type="checkbox"]{min-height:auto}.wf-admin-setup-form .wf-auth-checkbox{display:flex;grid-template-columns:none;flex-direction:row;align-items:center;align-self:end;min-height:42px}.wf-admin-setup-form .wf-card-body+.wf-card-body{border-top:1px solid var(--wf-border)}
.wf-admin-setup-tabs{display:flex;gap:0;overflow-x:auto;margin:18px 0 10px;border-bottom:1px solid var(--wf-border)}.wf-admin-setup-tabs button,.wf-admin-setup-tabs a{flex:none;padding:11px 13px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--wf-text-muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none}.wf-admin-setup-tabs button:hover,.wf-admin-setup-tabs a:hover{color:var(--wf-text)}.wf-admin-setup-tabs button.is-active,.wf-admin-setup-tabs a.is-active{border-bottom-color:var(--wf-green);color:var(--wf-text)}.wf-admin-setup-panel[hidden]{display:none}.wf-admin-dependent{margin:0;padding:16px;border:0;border-top:1px solid var(--wf-border)}.wf-admin-dependent legend{padding:0;font-size:15px;font-weight:700}.wf-field-help{color:var(--wf-text-muted);font-size:13px}.wf-admin-ranking-list{display:grid;border:1px solid var(--wf-border);border-radius:7px;overflow:hidden}.wf-admin-ranking-row{display:grid;grid-template-columns:24px minmax(180px,1fr) minmax(180px,.7fr) auto;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--wf-border);background:#fff}.wf-admin-ranking-row:last-child{border-bottom:0}.wf-admin-ranking-row.is-disabled{background:#f5f7f8;color:var(--wf-text-muted)}.wf-ranking-handle{cursor:grab;color:var(--wf-text-muted);font-weight:700}.wf-admin-ranking-row label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700}.wf-admin-ranking-row select{min-height:36px;padding:0 8px;border:1px solid var(--wf-border);border-radius:5px;background:#fff;font:inherit}.wf-ranking-actions{display:flex;gap:5px}.wf-ranking-actions button{width:34px;min-height:34px!important;padding:0!important}.wf-admin-final-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.wf-admin-main .wf-secondary-action{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border:1px solid #617079;border-radius:6px;background:#fff;color:#29363d;font:inherit;font-weight:700;cursor:pointer}.wf-admin-review-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}.wf-admin-review-summary dl div{padding:12px;border:1px solid var(--wf-border);border-radius:6px;background:#f7f9fa}.wf-admin-review-summary dt{font-size:11px;text-transform:uppercase;color:var(--wf-text-muted)}.wf-admin-review-summary dd{margin:4px 0 0;font-weight:700}.wf-admin-findings li{margin:6px 0}.wf-admin-findings .is-error{color:#982533}
.wf-admin-entry-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:14px 0 0;padding:12px 16px}.wf-admin-entry-bulk label{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:700}.wf-admin-entry-bulk select{min-height:40px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}.wf-admin-entry-check input{width:16px;height:16px;min-height:0;margin:0;accent-color:#29363d}.wf-admin-entry-check{display:flex;align-items:flex-start;padding-top:3px}.wf-admin-entry-row{padding:12px 16px;display:grid;grid-template-columns:auto minmax(12rem,1fr) max-content minmax(16rem,auto);align-items:start;gap:16px}.wf-admin-entry-row>span:first-of-type{display:grid;gap:3px;min-width:0}.wf-admin-entry-row small{color:var(--wf-text-muted)}.wf-admin-entry-hint{display:block;color:#982533}.wf-admin-entry-state{display:inline-flex;width:max-content;margin-top:4px;padding:2px 8px;border-radius:999px;background:#e8edf0;font-weight:700}.wf-admin-entry-row.is-registered .wf-admin-entry-state{background:#dff1e5;color:#1f6338}.wf-admin-entry-row form{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.wf-admin-entry-row button{padding:0 12px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font-weight:700;cursor:pointer}.is-eligible{color:#25623a;white-space:nowrap}.is-ineligible{color:#982533;white-space:nowrap}
.wf-schedule-generation { max-width:1100px; }
.wf-schedule-generation-form { margin:20px 0 14px; }
.wf-schedule-generation-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.wf-schedule-generation-fields label { display:grid; gap:5px; font-size:13px; font-weight:700; }
.wf-schedule-generation-fields input { min-height:42px; padding:0 11px; border:1px solid var(--wf-border); border-radius:6px; font:inherit; }
.wf-schedule-generation-actions { display:flex; justify-content:flex-end; padding:0 16px 16px; }
.wf-schedule-participants { margin-bottom:20px; }
.wf-schedule-participants h2 { margin-top:0; }
.wf-schedule-preview-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:24px 0 14px; }
.wf-schedule-preview-heading h2,.wf-schedule-preview-heading p { margin:0; }
.wf-schedule-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.wf-schedule-preview-fixture { display:grid; grid-template-columns:3.4rem minmax(0,1fr) auto minmax(0,1fr); gap:9px; align-items:center; padding:8px 0; border-bottom:1px solid var(--wf-border); font-size:13px; }
.wf-schedule-preview-fixture span:last-of-type { text-align:right; }
.wf-schedule-preview-fixture time { color:var(--wf-text); font-weight:700; font-variant-numeric:tabular-nums; }
.wf-schedule-preview-fixture.is-bye span:last-of-type { color:var(--wf-text-muted); font-weight:700; }
@media (max-width:760px) {
    .wf-schedule-generation-fields,.wf-schedule-preview-grid,.wf-admin-form-grid,.wf-admin-dashboard-grid,.wf-admin-matrix-row,.wf-admin-ranking-row,.wf-admin-review-summary dl,.wf-admin-lineup-grid,.wf-game-lineup-grid,.wf-game-event-list li,.wf-admin-scope-dates { grid-template-columns:1fr; }
    .wf-schedule-preview-heading { align-items:stretch; flex-direction:column; }
    .wf-admin-header-inner{align-items:flex-start;flex-direction:column;padding-top:15px;padding-bottom:15px}.wf-admin-brand{width:100%;padding:0 0 12px;margin:0 0 4px;border-bottom:1px solid #627078}.wf-admin-header nav{width:100%;min-height:44px;padding:0;background:transparent}.wf-admin-header nav a{padding:0 12px}.wf-admin-header-actions{margin:10px 0 0}.wf-admin-page-heading{flex-direction:column}.wf-admin-entry-row{grid-template-columns:1fr}.wf-admin-list-row{align-items:flex-start;flex-direction:column}
}
@media (max-width:800px) {
    .wf-statistics-filter,.wf-statistics-grid,.wf-statistics-grid-many { grid-template-columns:1fr; }
    .wf-statistics-sections { flex-wrap:nowrap; }
    .wf-statistics-sections a { white-space:nowrap; }
}
.wf-admin-danger-zone{margin-top:2rem;border-color:#c98b8b}.wf-admin-danger-zone .wf-card-header{background:#fff7f7}.wf-admin-danger-actions,.wf-admin-inline-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.wf-admin-inline-actions form,.wf-admin-danger-actions form{margin:0}.wf-danger-action,.wf-danger-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid #9f3333;border-radius:5px;background:#9f3333;color:#fff;font:inherit;font-weight:700;padding:.65rem 1rem;cursor:pointer}.wf-danger-link{padding:.25rem .5rem;font-size:.85rem}.wf-admin-inline-actions{margin-top:.4rem;justify-content:flex-end}.wf-admin-inline-actions button{cursor:pointer}
.wf-admin-danger-zone{border-radius:8px;overflow:hidden}.wf-admin-danger-zone .wf-card-header{border-radius:7px 7px 0 0}.wf-admin-danger-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;cursor:pointer;list-style:none;font:inherit;color:inherit}.wf-admin-danger-toggle::-webkit-details-marker{display:none}.wf-admin-danger-toggle::after{content:"+";color:var(--wf-text-muted);font-size:18px;line-height:1}.wf-admin-danger-zone[open] .wf-admin-danger-toggle::after{content:"−"}.wf-admin-danger-zone:not([open]) .wf-admin-danger-toggle{border-bottom:0;border-radius:7px}
.wf-admin-setup-tabs button,.wf-admin-setup-tabs a{--wf-tab-accent:#447a62}.wf-admin-setup-tabs button:nth-child(2),.wf-admin-setup-tabs a:nth-child(2){--wf-tab-accent:#657f99}.wf-admin-setup-tabs button:nth-child(3),.wf-admin-setup-tabs a:nth-child(3){--wf-tab-accent:#786681}.wf-admin-setup-tabs button:nth-child(4),.wf-admin-setup-tabs a:nth-child(4){--wf-tab-accent:#9a7753}.wf-admin-setup-tabs button:nth-child(5),.wf-admin-setup-tabs a:nth-child(5){--wf-tab-accent:#4f7f86}.wf-admin-setup-tabs button:nth-child(6),.wf-admin-setup-tabs a:nth-child(6){--wf-tab-accent:#6f7397}.wf-admin-setup-tabs button:nth-child(7),.wf-admin-setup-tabs a:nth-child(7){--wf-tab-accent:#985f64}.wf-admin-setup-tabs button:nth-child(8),.wf-admin-setup-tabs a:nth-child(8){--wf-tab-accent:#587a58}.wf-admin-setup-tabs button.is-active,.wf-admin-setup-tabs a.is-active{border-bottom-color:var(--wf-tab-accent)}
.wf-discipline-section-title,.wf-admin-span-all{grid-column:1/-1}.wf-discipline-section-title{margin:10px 0 0;padding-top:12px;border-top:1px solid var(--wf-border)}
.wf-admin-referee-list{display:grid;gap:12px;margin:14px 0 26px}.wf-admin-referee-assignment{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.42fr);gap:20px;padding:18px}.wf-admin-referee-assignment h3{margin:7px 0 4px;font-size:16px}.wf-admin-referee-assignment p{margin:0;color:var(--wf-text-muted)}.wf-admin-referee-assignment dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:14px 0 0}.wf-admin-referee-assignment dl div{display:grid;gap:2px}.wf-admin-referee-assignment dt{font-size:11px;text-transform:uppercase;color:var(--wf-text-muted)}.wf-admin-referee-assignment dd{margin:0;font-size:13px;font-weight:700}.wf-admin-status{display:inline-flex;padding:3px 8px;border-radius:999px;background:#e8edf0;font-size:11px;font-weight:800}.wf-admin-status.is-provisional{background:#fff2cf;color:#705300}.wf-admin-status.is-final{background:#dff1e5;color:#1f6338}.wf-admin-status.is-cancelled{background:#eee;color:#687177}.wf-admin-status.is-blocked{background:#fff2cf;color:#705300}.wf-admin-referee-actions{display:grid;align-content:start;gap:8px}.wf-admin-referee-actions form,.wf-admin-list-row form{display:flex;flex-wrap:wrap;gap:7px}.wf-admin-referee-actions details{border-top:1px solid var(--wf-border);padding-top:7px}.wf-admin-referee-actions summary{cursor:pointer;font-size:13px;font-weight:700}.wf-admin-referee-actions input,.wf-admin-referee-actions select,.wf-admin-list-row input{min-height:36px;padding:0 8px;border:1px solid var(--wf-border);border-radius:5px;background:#fff;font:inherit}.wf-admin-referee-actions label{display:grid;gap:4px;font-size:12px}.wf-admin-referee-actions button,.wf-admin-list-row form button{min-height:36px!important;padding:0 11px!important}.wf-admin-referee-list .wf-admin-list-row>span:last-child{display:grid;justify-items:end;gap:7px}
.wf-admin-referee-grid-card .wf-card-body{padding:0}.wf-admin-referee-grid-empty{margin:0;padding:18px}
.wf-admin-scope-form label{min-width:0}.wf-admin-scope-form input[type="search"],.wf-admin-scope-form input[type="text"],.wf-admin-scope-form input[type="datetime-local"],.wf-admin-scope-form select{width:100%;max-width:100%;min-width:0}.wf-admin-scope-form select{text-overflow:ellipsis}.wf-admin-scope-form label:has([data-scope-id]){overflow:hidden}.wf-admin-scope-hint{font-weight:500;color:var(--wf-text-muted)}
@media(min-width:761px){.wf-admin-scope-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.wf-admin-scope-dates{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}}
.wf-admin-findings{margin:0 0 16px;padding:12px 14px;border:1px solid #e7c4c4;border-radius:8px;background:#fff6f6}.wf-admin-findings h3{margin:0 0 8px;font-size:15px}.wf-admin-findings ul{margin:0;padding-left:18px}.wf-admin-findings li{margin:4px 0}.wf-admin-findings.is-warning{border-color:#e4d2a8;background:#fff8ec}.wf-pitch-public{display:grid;gap:8px}.wf-pitch-public img{width:min(100%,28rem);height:auto;border-radius:8px}.wf-pitch-matches{list-style:none;margin:0;padding:0;display:grid}.wf-pitch-matches a{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--wf-border);color:inherit;text-decoration:none}.wf-pitch-matches li:last-child a{border-bottom:0}.wf-pitch-matches small{color:var(--wf-text-muted)}
.wf-admin-referee-grid-wrap{overflow:auto}
.wf-admin-referee-grid{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:13px}
.wf-admin-referee-grid th,.wf-admin-referee-grid td{padding:10px 12px;border-bottom:1px solid var(--wf-border);vertical-align:top;text-align:left}
.wf-admin-referee-grid thead th{position:sticky;top:0;z-index:1;background:#f3f6f7;font-size:12px;font-weight:800}
.wf-admin-referee-grid thead th:first-child{position:sticky;top:0;left:0;z-index:3;min-width:220px;background:#f3f6f7}
.wf-admin-referee-grid tbody th{position:sticky;left:0;z-index:2;min-width:220px;background:#fff;font-weight:600}
.wf-admin-referee-grid-match{display:grid;gap:3px}
.wf-admin-referee-grid-match small{color:var(--wf-text-muted)}
.wf-admin-referee-grid-cell{display:grid;gap:6px;min-width:140px;color:inherit;text-decoration:none}
.wf-admin-referee-grid-cell.is-filled{padding:8px 10px;border:1px solid var(--wf-border);border-radius:6px;background:#f7f9fa}
.wf-admin-referee-grid-cell.is-filled.is-provisional{background:#fff8e8;border-color:#e6d39a}
.wf-admin-referee-grid-cell.is-filled.is-final{background:#eef6f0;border-color:#b7d4c0}
.wf-admin-referee-grid-cell.is-filled small{color:var(--wf-text-muted);font-size:11px;font-weight:700}
.wf-admin-referee-grid-cell.is-empty select{width:100%;min-height:34px;padding:0 8px;border:1px solid var(--wf-border);border-radius:5px;background:#fff;font:inherit}
.wf-admin-referee-grid-cell.is-empty button{min-height:32px!important;padding:0 10px!important}.wf-admin-referee-grid-cell.is-empty button[hidden]{display:none !important}
.wf-admin-form-grid label.wf-admin-referee-quiet,.wf-admin-referee-quiet{display:flex !important;align-items:flex-start;gap:6px;margin:0;color:var(--wf-text-muted);font-size:12px;font-weight:600;line-height:1.35}
.wf-admin-referee-quiet input{margin-top:2px}
.wf-admin-form-grid label.wf-admin-referee-quiet[hidden],.wf-admin-referee-quiet[hidden]{display:none !important}
.wf-admin-referee-grid-cell.is-na{color:var(--wf-text-muted);text-align:center}
.wf-admin-referee-grid-detail{font-weight:700;white-space:nowrap}
.wf-admin-referee-grid-roles{display:flex;flex-wrap:nowrap;gap:12px;align-items:flex-start}
.wf-admin-referee-grid-role{display:grid;gap:6px;min-width:148px;flex:0 0 auto}
.wf-admin-referee-grid-role[hidden],.wf-admin-referee-grid-add[hidden],.wf-admin-referee-grid-add select[hidden]{display:none !important}
.wf-admin-referee-grid-role-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px;font-size:12px;font-weight:800}
.wf-admin-referee-grid-role-head form{margin:0}
.wf-admin-referee-grid-add{display:flex;align-items:flex-start;flex:0 0 auto}
.wf-admin-referee-grid-add select{min-height:34px;min-width:11rem;padding:0 8px;border:1px solid var(--wf-border);border-radius:5px;background:#fff;font:inherit}
.wf-admin-referee-grid button.wf-admin-referee-grid-icon{width:28px;min-width:28px;height:28px;min-height:28px!important;padding:0!important;border:1px solid var(--wf-border);border-radius:5px;background:#fff;color:var(--wf-text);font-size:18px;font-weight:700;line-height:1;cursor:pointer}
@media(max-width:760px){.wf-admin-page-heading{flex-direction:column}.wf-admin-referee-grid{min-width:100%}}

@media(max-width:760px){.wf-admin-referee-assignment{grid-template-columns:1fr}.wf-admin-referee-assignment dl{grid-template-columns:1fr}.wf-admin-referee-list .wf-admin-list-row>span:last-child{justify-items:start}}
.wf-admin-role-label-grid{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(150px,.7fr) minmax(190px,1fr) minmax(180px,1fr);align-items:stretch;border:1px solid var(--wf-border);border-radius:7px;overflow:hidden}.wf-admin-role-label-grid>*{min-width:0;padding:10px 12px;box-shadow:inset 0 -1px 0 var(--wf-border)}.wf-admin-role-label-grid>strong{display:flex;align-items:center;background:#f3f6f7;font-size:12px}.wf-admin-role-label-grid>span{display:grid;align-content:center;gap:2px}.wf-admin-role-label-grid>label{display:flex;align-items:center}.wf-admin-role-label-grid small{color:var(--wf-text-muted)}.wf-admin-role-label-grid input{width:100%;min-height:38px;padding:0 9px;border:1px solid var(--wf-border);border-radius:5px;font:inherit}.wf-admin-role-label-grid>*:nth-last-child(-n+4){box-shadow:none}@media(max-width:760px){.wf-admin-role-label-grid{grid-template-columns:1fr}.wf-admin-role-label-grid>strong{display:none}.wf-admin-role-label-grid>*:nth-last-child(-n+4){box-shadow:inset 0 -1px 0 var(--wf-border)}.wf-admin-role-label-grid>*:last-child{box-shadow:none}}
.wf-bracket{margin-top:8px}.wf-bracket-board{display:grid;grid-template-columns:repeat(var(--wf-bracket-rounds,1),minmax(220px,1fr));gap:18px;overflow-x:auto;padding-bottom:8px}.wf-bracket-round{min-width:220px}.wf-bracket-round-header{display:grid;gap:3px;margin:0 0 12px}.wf-bracket-round-header h2{margin:0;font-size:1.05rem}.wf-bracket-round-header small{color:var(--wf-text-muted)}.wf-bracket-ties{display:grid;gap:12px;align-content:start}.wf-bracket-tie{display:grid;gap:0;border:1px solid var(--wf-border);border-radius:8px;background:#fff;overflow:hidden}.wf-bracket-side{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border-bottom:1px solid var(--wf-border);font-weight:700}.wf-bracket-side:nth-child(2){border-bottom:0}.wf-bracket-side.is-winner{background:#eef6f0}.wf-bracket-matches{display:grid;gap:6px;padding:10px 13px 12px;border-top:1px solid var(--wf-border);background:#f7f9fa}.wf-bracket-match{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;color:inherit;text-decoration:none;font-size:13px}.wf-bracket-match:hover strong{text-decoration:underline}.wf-bracket-match time,.wf-bracket-bye{color:var(--wf-text-muted)}.wf-bracket-bye{margin:0;padding:10px 13px 12px;border-top:1px solid var(--wf-border);font-size:13px}@media(max-width:760px){.wf-bracket-board{grid-template-columns:1fr}}
.wf-admin-structure-list{display:grid}.wf-admin-structure-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px 13px calc(16px + var(--wf-structure-depth,0)*24px);border-bottom:1px solid var(--wf-border)}.wf-admin-structure-row:last-child{border-bottom:0}.wf-admin-structure-row>span:first-child{display:grid;gap:3px}.wf-admin-structure-row small{color:var(--wf-text-muted)}.wf-admin-structure-row>span:last-child,.wf-admin-structure-row form{display:flex;align-items:center;gap:8px;margin:0}.wf-admin-structure-columns{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px;align-items:start}.wf-admin-form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.wf-admin-form-grid--two .wf-admin-form-half{grid-column:1/-1;justify-self:start;width:calc((100% - 14px) / 2)}.wf-admin-form-grid--two .wf-admin-venue{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.wf-admin-form-grid--two .wf-admin-venue-neutral{margin-top:calc(1lh + 5px);min-height:42px}.wf-schedule-confirm{margin:0 18px 8px;padding:12px 14px;border:1px solid var(--wf-border);border-radius:8px;background:#f7f9fa}.wf-schedule-confirm p{margin:0 0 10px}.wf-schedule-confirm [hidden]{display:none !important}@media(max-width:900px){.wf-admin-form-grid--two .wf-admin-form-half{width:100%}.wf-admin-form-grid--two .wf-admin-venue{grid-template-columns:1fr}.wf-admin-form-grid--two .wf-admin-venue-neutral{margin-top:0}}.wf-admin-slot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 16px 16px;padding:14px;border:1px solid var(--wf-border);border-radius:7px}.wf-admin-slot legend{padding:0 6px;font-weight:800}.wf-admin-slot label{display:grid;gap:5px;font-size:12px;font-weight:700}.wf-admin-slot input,.wf-admin-slot select,.wf-admin-tie-matches input,.wf-admin-tie-matches select{min-height:38px;padding:0 9px;border:1px solid var(--wf-border);border-radius:5px;background:#fff;font:inherit}.wf-admin-resolved{grid-column:1/-1;margin:0;padding:10px;background:#eef6f0;border-radius:6px}.wf-admin-tie-list{display:grid}.wf-admin-tie{padding:16px;border-bottom:1px solid var(--wf-border)}.wf-admin-tie:last-child{border-bottom:0}.wf-admin-tie header,.wf-admin-tie header>span:last-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.wf-admin-tie header>span:first-child{display:grid;gap:3px}.wf-admin-tie header small{color:var(--wf-text-muted)}.wf-admin-tie header form{margin:0}.wf-admin-tie-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.wf-admin-tie-slots>div{display:grid;gap:3px;padding:11px;background:#f3f6f7;border-radius:6px}.wf-admin-tie-matches{display:grid;gap:8px}.wf-admin-tie-matches>span,.wf-admin-tie-matches form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}.wf-admin-tie-matches details{border-top:1px solid var(--wf-border);padding-top:8px}.wf-admin-tie-matches summary{cursor:pointer;font-weight:700}@media(max-width:900px){.wf-admin-structure-columns,.wf-admin-slot,.wf-admin-tie-slots,.wf-admin-form-grid--two{grid-template-columns:1fr}.wf-admin-structure-row,.wf-admin-tie header{align-items:flex-start;flex-direction:column}}
.wf-admin-dimension-list{--wf-dimension-columns:minmax(10rem,1.7fr) minmax(7rem,.8fr) minmax(6rem,.45fr) auto;display:grid;grid-template-columns:var(--wf-dimension-columns);column-gap:18px;row-gap:0;border:1px solid var(--wf-border);border-radius:6px;overflow:hidden}.wf-admin-dimension-list.has-age{--wf-dimension-columns:minmax(10rem,1.5fr) minmax(6rem,.6fr) minmax(7rem,.7fr) minmax(6rem,.4fr) auto}.wf-admin-dimension-head,.wf-admin-dimension-row{display:grid;grid-column:1/-1;grid-template-columns:subgrid;align-items:center;gap:0;padding:0}.wf-admin-dimension-head>*,.wf-admin-dimension-row>*{padding:10px 0}.wf-admin-dimension-head>:first-child,.wf-admin-dimension-row>:first-child{padding-left:14px}.wf-admin-dimension-head>:last-child,.wf-admin-dimension-row>:last-child{padding-right:14px}.wf-admin-dimension-head{background:#f7f9fa;color:var(--wf-text-muted);font-size:12px;font-weight:700}.wf-admin-dimension-row{border:0;border-radius:0;border-top:1px solid var(--wf-border)}.wf-admin-dimension-row small{display:inline;margin-left:8px}.wf-admin-dimension-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.wf-admin-dimension-actions form{margin:0}.wf-admin-main .wf-admin-dimension-actions button[type="submit"]{min-height:0;padding:0;border:0;background:transparent;color:var(--wf-text-muted);font-size:13px;font-weight:700}.wf-admin-main .wf-admin-dimension-actions button[type="submit"]:hover{border:0;background:transparent;color:var(--wf-text);text-decoration:underline}.wf-admin-dimension-form h3{grid-column:1/-1}.wf-admin-dimension-form.has-age{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:900px){.wf-admin-dimension-form.has-age{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.wf-admin-dimension-head{display:none}.wf-admin-dimension-list,.wf-admin-dimension-list.has-age{--wf-dimension-columns:1fr}.wf-admin-dimension-actions{justify-content:flex-start}.wf-admin-dimension-form.has-age{grid-template-columns:1fr}}
.wf-card-header .wf-admin-actions{margin:0}.wf-admin-occupancy-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:0 0 16px}.wf-admin-occupancy-nav a{width:auto;justify-self:start}.wf-admin-occupancy-nav a:last-child{justify-self:end}.wf-admin-occupancy-pitch{margin-top:16px;min-width:0;overflow:hidden}.wf-occupancy-legend{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 4px;padding:0;list-style:none}.wf-occupancy-legend li{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.wf-occupancy-legend li::before{content:"";width:12px;height:12px;border-radius:3px;border-left:3px solid currentColor}.wf-occupancy-legend .is-match{color:#1f7a32}.wf-occupancy-legend .is-match::before{background:#e7f6ea}.wf-occupancy-legend .is-training{color:#1d5f9e}.wf-occupancy-legend .is-training::before{background:#e8f1fb}.wf-occupancy-legend .is-block{color:#8a5a10}.wf-occupancy-legend .is-block::before{background:#fff4df}.wf-occupancy-scroll{overflow-x:auto;max-width:100%}.wf-occupancy-board{min-width:720px;padding:0 0 12px}.wf-occupancy-head,.wf-occupancy-body{display:grid;grid-template-columns:3.4rem repeat(7,minmax(0,1fr))}.wf-occupancy-head span{display:grid;justify-items:center;padding:8px 4px 6px;font-size:13px;font-weight:800}.wf-occupancy-head small{font-weight:600;color:var(--wf-text-muted)}.wf-occupancy-head .is-today,.wf-occupancy-day.is-today{background:#f3faf4}.wf-occupancy-scale{position:relative;height:calc(var(--occ-hours) * var(--occ-hour))}.wf-occupancy-scale span{position:absolute;right:6px;transform:translateY(-50%);font-size:11px;line-height:1;color:var(--wf-text-muted)}.wf-occupancy-scale span:first-child{transform:translateY(0)}.wf-occupancy-scale span:last-child{transform:translateY(-100%)}.wf-occupancy-day{position:relative;height:calc(var(--occ-hours) * var(--occ-hour));border-left:1px solid var(--wf-border);background-image:repeating-linear-gradient(to bottom,transparent,transparent calc(var(--occ-hour) - 1px),var(--wf-border) calc(var(--occ-hour) - 1px),var(--wf-border) var(--occ-hour))}.wf-occupancy-now{position:absolute;left:0;right:0;z-index:3;border-top:2px solid #c44747;pointer-events:none}.wf-occupancy-event{position:absolute;z-index:1;box-sizing:border-box;display:block;min-height:34px;overflow:hidden;padding:3px 5px;border:1px solid transparent;border-left-width:3px;border-radius:5px;color:inherit;font-size:11px;line-height:1.2;text-decoration:none}.wf-occupancy-event small,.wf-occupancy-event strong,.wf-occupancy-event span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wf-occupancy-event strong{font-size:12px}.wf-occupancy-event.is-match{background:#e7f6ea;border-color:#b7dfc0;border-left-color:#1f7a32}.wf-occupancy-event.is-training{background:#e8f1fb;border-color:#c5d9f0;border-left-color:#1d5f9e}.wf-occupancy-event.is-block{background:#fff4df;border-color:#f0ddb4;border-left-color:#8a5a10}.wf-occupancy-event.is-other{background:#f4f6f7;border-color:var(--wf-border);border-left-color:#5d676e}.wf-occupancy-event.is-overlap{box-shadow:inset 0 0 0 1px #c44747}.wf-occupancy-event summary{display:block;cursor:pointer;list-style:none}.wf-occupancy-event summary::-webkit-details-marker{display:none}.wf-occupancy-event[open]{z-index:5;height:auto !important;width:max-content !important;min-width:16rem;overflow:visible;background:#fff}.wf-occupancy-edit{display:grid;gap:6px;width:15rem;margin-top:8px}.wf-occupancy-edit label{display:grid;gap:2px;font-size:11px;font-weight:700}.wf-occupancy-edit input,.wf-occupancy-edit select{box-sizing:border-box;width:100%;min-height:28px;padding:0 6px;border:1px solid var(--wf-border);border-radius:4px;background:#fff;font:inherit;font-size:12px}.wf-occupancy-event .wf-pitch-overlap{padding:4px 0 0}.wf-occupancy-edit .wf-field-help{margin:0}.wf-occupancy-event form{margin:6px 0 0}.wf-admin-main .wf-occupancy-event button[type="submit"]{min-height:28px;padding:0 8px;font-size:12px}@media(max-width:760px){.wf-admin-occupancy-nav{grid-template-columns:1fr;justify-items:start}.wf-admin-occupancy-nav a:last-child{justify-self:start}}
.wf-admin-pitch-row{display:grid;grid-template-columns:minmax(0,1.6fr) 8.5rem 8.5rem auto;gap:12px;align-items:end;margin:0 0 12px}.wf-admin-pitch-row input[type="number"]{min-height:42px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}.wf-pitch-team-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px;min-height:48px}.wf-pitch-team-list li{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;cursor:grab}.wf-pitch-team-list li > span:not(.wf-icon-actions){flex:1;min-width:0;font-weight:700}.wf-pitch-team-list li.is-dragging{opacity:.45}.wf-pitch-team-list .wf-icon-actions{flex:none}.wf-admin-pitch-row label{display:grid;gap:5px;font-size:13px;font-weight:700}.wf-admin-pitch-row input[type="text"],.wf-admin-pitch-row input:not([type]){min-height:42px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}.wf-admin-pitch-row .wf-admin-checkbox-option{display:flex;align-items:center;gap:8px;min-height:42px}.wf-admin-facility-assign{display:grid;gap:12px;padding:0 16px 4px}.wf-admin-facility-assign label{display:grid;gap:5px;font-size:13px;font-weight:700}.wf-admin-facility-assign select{min-height:42px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}@media(max-width:760px){.wf-admin-pitch-row{grid-template-columns:1fr}}
.wf-pitch-overlap ul{margin:0 0 12px;padding-left:1.1rem}.wf-pitch-overlap li{margin:4px 0}.wf-admin-list-row form .wf-pitch-overlap{flex:1 1 100%}
.wf-field-label{display:inline}
.wf-admin-main button.wf-field-tip{display:inline-flex;align-items:center;justify-content:center;width:18px;min-width:18px;height:18px;min-height:18px;margin:0 0 1px 6px;padding:0;border:1px solid var(--wf-border);border-radius:50%;background:#fff;color:var(--wf-text-muted);font-size:12px;font-weight:700;line-height:1;vertical-align:middle;cursor:pointer}
.wf-admin-main button.wf-field-tip:hover,.wf-admin-main button.wf-field-tip[aria-expanded="true"]{border-color:#29363d;background:#f4f7f8;color:#29363d}
.wf-admin-main button.wf-field-tip:focus-visible{outline:2px solid #29363d;outline-offset:2px}
label .wf-field-help{margin-top:4px;font-weight:500;line-height:1.45}
#ansetzung,#schiedsrichter,#loeschen{margin-bottom:20px}
#loeschen.wf-admin-danger-zone{margin-top:0}
#ansetzung .wf-admin-form-actions{justify-content:flex-start;padding:2px 18px 18px}
#schiedsrichter .wf-card-body,#loeschen .wf-card-body{display:grid;gap:16px;align-content:start}
#schiedsrichter .wf-card-body > *,#loeschen .wf-card-body > *{margin:0}
.wf-admin-referee-assignment[hidden],.wf-admin-referee-role-add[hidden],.wf-admin-referee-role-add select[hidden],.wf-admin-main button.wf-admin-referee-grid-icon[hidden]{display:none !important}
.wf-admin-referee-role-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wf-admin-referee-role-head h3{margin:0}
.wf-admin-referee-role-add{display:flex;align-items:center;gap:10px;justify-self:start}
.wf-admin-referee-list button.wf-admin-referee-grid-icon{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border:1px solid var(--wf-border);border-radius:6px;background:#fff;color:#29363d;font-size:18px;font-weight:700;line-height:1;cursor:pointer}
.wf-admin-referee-list button.wf-admin-referee-grid-icon:hover{border-color:#29363d;background:#f4f7f8}
.wf-admin-referee-role-add select{min-height:42px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}
.wf-admin-pitch-details{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:12px;align-items:end;margin-top:4px}
.wf-admin-pitch-details select,.wf-admin-pitch-details input[type="file"]{width:100%;min-height:42px;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit;box-sizing:border-box}
.wf-admin-pitch-details input[type="file"]{padding:8px 10px}
.wf-admin-pitch-row [hidden]{display:none !important}
.wf-pitch-line{display:flex;align-items:center;gap:8px;margin-top:4px;font-weight:500}
.wf-pitch-line img,.wf-pitch-photo{width:72px;height:48px;object-fit:cover;border-radius:6px}
.wf-pitch-facts{padding-bottom:0}
.wf-admin-lineup-grid{grid-template-columns:1fr}
.wf-lineup-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.wf-lineup-nominated{display:grid;gap:16px}
.wf-lineup-zone{min-width:0}
.wf-lineup-zone-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px}
.wf-lineup-zone-head h3{margin:0;font-size:15px}
.wf-lineup-zone-head h3 span,.wf-lineup-standard{color:var(--wf-text-muted);font-size:12px;font-weight:600}
.wf-lineup-zone-head input[type="search"]{min-height:34px;width:11rem;padding:0 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit}
.wf-lineup-zone ul{list-style:none;margin:0;padding:8px;display:grid;gap:8px;min-height:4.5rem;border:1px dashed var(--wf-border);border-radius:8px;background:#f7f9fa}
.wf-lineup-zone ul.is-drop-target{border-color:var(--wf-green);background:#f3f8f4}
.wf-lineup-player{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;cursor:grab}
.wf-lineup-player.is-dragging{opacity:.45}
.wf-lineup-grip{color:var(--wf-text-muted);font-weight:700;letter-spacing:-1px;user-select:none}
.wf-lineup-name{flex:1;min-width:8rem;font-weight:700}
.wf-lineup-pos{flex:none;min-width:2.1rem;height:24px;padding:0 6px;display:grid;place-items:center;border-radius:999px;background:#e7eef2;color:#29363d;font-size:11px;font-weight:700}
.wf-lineup-formation{margin:0;font-size:13px;font-weight:700;color:var(--wf-text)}
.wf-lineup-number{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;font-weight:700;color:var(--wf-text-muted)}
.wf-lineup-number input{width:4.2rem;min-height:34px;padding:0 8px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit;font-weight:700;color:var(--wf-text)}
.wf-lineup-captain{position:relative;margin:0}
.wf-lineup-captain input{position:absolute;opacity:0;width:1px;height:1px}
.wf-lineup-captain span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font-weight:700;cursor:pointer}
.wf-lineup-captain input:checked+span{background:var(--wf-green);border-color:var(--wf-green);color:#fff}
.wf-lineup-captain input:focus-visible+span{outline:2px solid var(--wf-green);outline-offset:2px}
.wf-lineup-moves{display:flex;flex-wrap:wrap;gap:4px}
.wf-lineup-moves button{min-height:34px;padding:0 8px;border:1px solid var(--wf-border);border-radius:6px;background:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.wf-lineup-moves button:hover{border-color:#29363d}
.wf-lineup-moves button:disabled{opacity:.35;cursor:default}
.wf-lineup-empty{padding:10px;color:var(--wf-text-muted);font-size:13px}
.wf-lineup-note{grid-column:1/-1;margin:0;color:#8a4b12;font-size:13px;font-weight:700}
.wf-lineup-note:empty{display:none}
.wf-lineup-player[hidden],.wf-lineup-empty[hidden]{display:none !important}
[data-lineup-list="pool"] .wf-lineup-number,[data-lineup-list="pool"] .wf-lineup-captain,[data-lineup-list="pool"] .wf-lineup-standard,[data-lineup-list="pool"] [data-move="pool"],[data-lineup-list="pool"] [data-move="up"],[data-lineup-list="pool"] [data-move="down"]{display:none !important}
[data-lineup-list="starters"] .wf-lineup-pool-number,[data-lineup-list="substitutes"] .wf-lineup-pool-number,[data-lineup-list="starters"] [data-move="starters"],[data-lineup-list="substitutes"] [data-move="substitutes"],[data-lineup-list="substitutes"] .wf-lineup-captain{display:none !important}
@media (max-width:800px){.wf-lineup-board{grid-template-columns:1fr}}
.wf-person-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px 16px 4px}
.wf-person-stats div{display:grid;gap:2px}
.wf-person-stats strong{font-size:1.5rem;line-height:1.1}
.wf-person-stats small{color:var(--wf-text-muted)}
.wf-person-stats+p{margin:8px 16px 16px}
@media (max-width:700px){.wf-person-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.wf-referee-breakdown{display:grid;gap:8px;padding:4px 16px 16px}
.wf-referee-breakdown div{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.wf-referee-breakdown span{min-width:0}
.wf-referee-breakdown strong{font-variant-numeric:tabular-nums}
