:root{--ffx-accent:#06ADEF;--ffx-strong:#1479B8}
.ffx-fc{--ffx-text:#20252a;--ffx-muted:#717980;--ffx-line:#e5eaee;--ffx-soft:#f5f8fa;color:var(--ffx-text);font-family:inherit}
.ffx-fc__heading{margin:0 0 12px}.ffx-fc__heading h2{margin:0;font-size:15px;line-height:1.25;font-weight:700;text-transform:uppercase;color:#222}.ffx-fc__heading>span{display:block;height:3px;margin-top:9px;background:var(--ffx-accent)}
.ffx-fc__tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0 0 10px}
.ffx-fc__tab{min-height:36px;padding:7px 8px;border:1px solid color-mix(in srgb,var(--ffx-accent) 35%,white);border-radius:18px;background:#fff;color:var(--ffx-accent);font:inherit;font-size:10px;line-height:1.1;font-weight:800;text-transform:uppercase;cursor:pointer}
.ffx-fc__tab.is-active{background:var(--ffx-strong);border-color:var(--ffx-strong);color:#fff}.ffx-fc__tab:focus-visible{outline:2px solid #222;outline-offset:2px}.ffx-fc__panel[hidden]{display:none!important}
.ffx-fc__fixture-list,.ffx-fc__table{border:1px solid var(--ffx-line);border-top:4px solid var(--ffx-accent);border-radius:6px;background:#fff;overflow:hidden}
.ffx-fc__fixture-row{padding:8px 10px;border-top:1px solid var(--ffx-line)}.ffx-fc__fixture-row:first-child{border-top:0}.ffx-fc__fixture-row time{display:block;margin-bottom:5px;color:var(--ffx-muted);font-size:10px;font-weight:700}
.ffx-fc__fixture-teams{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);gap:5px;align-items:center}.ffx-fc__fixture-teams>span{display:flex;align-items:center;gap:5px;min-width:0;font-size:12px}.ffx-fc__fixture-teams>span:last-child{flex-direction:row-reverse;text-align:right}.ffx-fc__fixture-teams b{min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ffx-fc__fixture-teams em{font-style:normal;color:var(--ffx-accent);font-weight:900;text-align:center}
.ffx-fc__mini-crest{width:22px;height:22px;object-fit:contain;flex:0 0 auto}.ffx-fc__mini-crest-fallback,.ffx-fc__table-crest-fallback,.ffx-fc__full-crest-fallback{display:inline-grid;place-items:center;border-radius:50%;background:var(--ffx-soft);color:var(--ffx-accent);font-weight:900;flex:0 0 auto}.ffx-fc__mini-crest-fallback{width:22px;height:22px;font-size:8px}
.ffx-fc__more{margin:8px 0 0;text-align:right;font-size:11px;font-weight:800}.ffx-fc__more a{color:var(--ffx-accent);text-decoration:none}.ffx-fc__more a:hover,.ffx-fc__more a:focus{text-decoration:underline}
.ffx-fc__attribution{margin:7px 0 0;text-align:right;font-size:9px;line-height:1.2}.ffx-fc__attribution a{color:#9aa2a8;text-decoration:none}.ffx-fc__attribution a:hover,.ffx-fc__attribution a:focus{text-decoration:underline}
.ffx-fc__empty,.ffx-fc__admin-note{padding:15px 12px;border:1px solid var(--ffx-line);border-top:4px solid var(--ffx-accent);border-radius:6px;background:#fff;color:var(--ffx-muted);font-size:11px;line-height:1.4;text-align:center}
.ffx-fc__table-row{display:grid;grid-template-columns:34px minmax(0,1fr) 38px 38px;align-items:center;min-height:42px;border-top:1px solid var(--ffx-line);font-size:12px}.ffx-fc__table-row:first-child{border-top:0}.ffx-fc__table-row>span,.ffx-fc__table-row>strong{padding:0 4px;text-align:center}.ffx-fc__table-head{min-height:28px;background:var(--ffx-strong);color:#fff;font-size:9px;font-weight:800;text-transform:uppercase}.ffx-fc__club{display:flex!important;align-items:center;gap:6px;min-width:0;text-align:left!important}.ffx-fc__club>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ffx-fc__table-crest{width:22px;height:22px;object-fit:contain;flex:0 0 auto}.ffx-fc__table-crest-fallback{width:22px;height:22px;font-size:8px}.ffx-fc__table-row>strong{color:var(--ffx-accent);font-weight:900}
.ffx-fc__cutline{position:relative;height:16px;border-top:2px solid var(--ffx-accent);background:#fff}.ffx-fc__cutline span{position:absolute;right:6px;top:-7px;padding:0 4px;background:#fff;color:var(--ffx-accent);font-size:8px;font-weight:800}
.ffx-fc--page{margin:10px 0 30px}.ffx-fc--page .ffx-fc__tabs{max-width:520px}.ffx-fc__intro{margin:0 0 16px;color:#555;font-size:15px;line-height:1.55}
.ffx-fc__date-group{margin:0 0 18px}.ffx-fc__date-group h3{margin:0;padding:9px 12px;background:var(--ffx-strong);color:#fff;font-size:14px;line-height:1.2}
.ffx-fc__full-fixture{display:grid;grid-template-columns:58px minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:8px;min-height:58px;padding:6px 10px;border:1px solid var(--ffx-line);border-top:0;background:#fff}.ffx-fc__full-fixture time{font-weight:800;color:var(--ffx-accent)}.ffx-fc__full-fixture>strong{text-align:center;color:var(--ffx-muted)}
.ffx-fc__full-team{display:flex;align-items:center;gap:8px;min-width:0}.ffx-fc__full-team--home{justify-content:flex-end;text-align:right}.ffx-fc__full-team--away{justify-content:flex-start}.ffx-fc__full-team span{font-weight:700}.ffx-fc__full-crest{width:34px;height:34px;object-fit:contain;flex:0 0 auto}.ffx-fc__full-crest-fallback{width:34px;height:34px;font-size:10px}
.ffx-fc__full-table-wrap{overflow-x:auto;border:1px solid var(--ffx-line);border-top:4px solid var(--ffx-accent);border-radius:6px;background:#fff}.ffx-fc__full-table{width:100%;border-collapse:collapse;min-width:650px}.ffx-fc__full-table th{padding:9px 8px;background:var(--ffx-strong);color:#fff;font-size:11px;text-transform:uppercase}.ffx-fc__full-table td{padding:9px 8px;border-top:1px solid var(--ffx-line);text-align:center;font-size:13px}.ffx-fc__full-table th:nth-child(2),.ffx-fc__full-table td:nth-child(2){text-align:left}.ffx-fc__full-club{display:flex;align-items:center;gap:8px;white-space:nowrap}.ffx-fc__qualification-note td{padding:5px 8px!important;background:var(--ffx-soft);color:var(--ffx-accent);font-size:10px!important;font-weight:800;text-align:center!important}
@media(max-width:420px){.ffx-fc__full-fixture{grid-template-columns:48px minmax(0,1fr) 20px minmax(0,1fr);gap:5px;padding-left:6px;padding-right:6px}.ffx-fc__full-team{font-size:12px}.ffx-fc__full-crest{width:28px;height:28px}.ffx-fc__tab{font-size:9px}.ffx-fc__table-row{grid-template-columns:30px minmax(0,1fr) 34px 34px;font-size:11px}}


/* v1.1.0: multi-competition full pages and results */
.ffx-fc--page .ffx-fc__tabs--full{max-width:none;display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.ffx-fc--page .ffx-fc__tabs--full .ffx-fc__tab{flex:1 1 135px;max-width:190px;padding-left:12px;padding-right:12px}
.ffx-fc__full-result{display:grid;grid-template-columns:58px minmax(0,1fr) 72px minmax(0,1fr);align-items:center;gap:8px;min-height:58px;padding:6px 10px;border:1px solid var(--ffx-line);border-top:0;background:#fff}
.ffx-fc__full-result time{font-weight:800;color:var(--ffx-accent)}
.ffx-fc__result-score{text-align:center;white-space:nowrap}.ffx-fc__result-score strong{display:block;color:var(--ffx-text);font-size:18px;line-height:1.1;font-weight:900}.ffx-fc__result-score small{display:block;margin-top:4px;color:var(--ffx-muted);font-size:9px;font-weight:700}
@media(max-width:620px){.ffx-fc--page .ffx-fc__tabs--full .ffx-fc__tab{flex:1 1 calc(50% - 7px);max-width:none}.ffx-fc__full-result{grid-template-columns:44px minmax(0,1fr) 56px minmax(0,1fr);gap:5px;padding-left:6px;padding-right:6px}.ffx-fc__full-result .ffx-fc__full-team{font-size:12px}.ffx-fc__result-score strong{font-size:16px}}

/* VERSION 1.2.2: compact mobile full league tables.
   Match the proven King of the Kop phone layout: keep Pos, Club, Pld, GD and Pts
   visible without horizontal scrolling. Desktop tables are unchanged. */
@media (max-width: 767px) {
    /* Hide W, D and L only on phones. */
    .ffx-fc--page .ffx-fc__full-table th:nth-child(4),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(4),
    .ffx-fc--page .ffx-fc__full-table th:nth-child(5),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(5),
    .ffx-fc--page .ffx-fc__full-table th:nth-child(6),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(6) {
        display: none !important;
    }

    /* Remove the inherited desktop minimum width which caused the right-hand
       columns to sit off-screen in mobile Safari. */
    .ffx-fc--page .ffx-fc__full-table {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        table-layout: fixed !important;
        box-sizing: border-box !important;
    }

    .ffx-fc--page .ffx-fc__full-table-wrap {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .ffx-fc--page .ffx-fc__full-table th,
    .ffx-fc--page .ffx-fc__full-table td {
        box-sizing: border-box !important;
        padding: 8px 2px !important;
        vertical-align: middle !important;
        white-space: nowrap;
    }

    /* Final mobile width balance: 11 + 59 + 10 + 10 + 10 = 100. */
    .ffx-fc--page .ffx-fc__full-table th:nth-child(1),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(1) {
        width: 11% !important;
        min-width: 0 !important;
        text-align: center !important;
    }

    .ffx-fc--page .ffx-fc__full-table th:nth-child(2),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(2) {
        width: 59% !important;
        min-width: 0 !important;
    }

    .ffx-fc--page .ffx-fc__full-table th:nth-child(3),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(3),
    .ffx-fc--page .ffx-fc__full-table th:nth-child(7),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(7),
    .ffx-fc--page .ffx-fc__full-table th:nth-child(8),
    .ffx-fc--page .ffx-fc__full-table td:nth-child(8) {
        width: 10% !important;
        min-width: 0 !important;
        text-align: center !important;
    }

    .ffx-fc--page .ffx-fc__full-table th:nth-child(2) {
        padding-left: 7px !important;
        text-align: left !important;
    }

    .ffx-fc--page .ffx-fc__full-club {
        align-items: center !important;
        gap: 4px !important;
        min-width: 0 !important;
        width: auto !important;
        overflow: visible !important;
        white-space: normal !important;
        font-size: 11.5px !important;
        text-align: left !important;
    }

    .ffx-fc--page .ffx-fc__full-club .ffx-fc__table-crest,
    .ffx-fc--page .ffx-fc__full-club .ffx-fc__table-crest-fallback {
        width: 20px !important;
        height: 20px !important;
        flex: 0 0 20px !important;
    }

    .ffx-fc--page .ffx-fc__full-club > span:last-child {
        display: -webkit-box !important;
        min-width: 0 !important;
        overflow: hidden !important;
        white-space: normal !important;
        line-height: 1.08 !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        text-overflow: clip !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }

    .ffx-fc--page .ffx-fc__full-table td:nth-child(2) {
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
    }

    .ffx-fc--page .ffx-fc__full-table th {
        font-size: 10.5px !important;
        line-height: 1.1 !important;
        letter-spacing: 0 !important;
    }

    .ffx-fc--page .ffx-fc__full-table td {
        font-size: 12.5px !important;
        line-height: 1.15 !important;
    }

    .ffx-fc--page .ffx-fc__full-table tbody tr {
        height: auto !important;
    }

    .ffx-fc--page .ffx-fc__full-table tbody td {
        min-height: 48px;
    }

    /* Qualification rows span the full table despite mobile column rules. */
    .ffx-fc--page .ffx-fc__qualification-note td {
        display: table-cell !important;
        width: auto !important;
        min-width: 0 !important;
        white-space: normal !important;
        text-align: center !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
    }

    .ffx-fc--page .ffx-fc__tabs--full {
        gap: 8px;
    }

    .ffx-fc--page .ffx-fc__tabs--full .ffx-fc__tab {
        font-size: 10px !important;
        padding: 9px 8px !important;
    }
}

@media (max-width: 390px) {
    .ffx-fc--page .ffx-fc__full-club {
        font-size: 11px !important;
    }

    .ffx-fc--page .ffx-fc__full-club .ffx-fc__table-crest,
    .ffx-fc--page .ffx-fc__full-club .ffx-fc__table-crest-fallback {
        width: 19px !important;
        height: 19px !important;
        flex-basis: 19px !important;
    }

    .ffx-fc--page .ffx-fc__full-table th {
        font-size: 10px !important;
    }

    .ffx-fc--page .ffx-fc__full-table td {
        font-size: 12px !important;
    }
}
