.fh-standings-module {
    display: grid;
    gap: 18px;
}

.fh-topscorer-module {
    display: grid;
    gap: 18px;
}

.fh-market-module {
    display: grid;
    gap: 18px;
}

.fh-market-hero,
.fh-market-panel,
.fh-market-legacy-block,
.fh-market-collapse,
.fh-market-empty,
.fh-market-notice,
.fh-market-summary__card,
.fh-market-card {
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(120, 90, 0, 0.1);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-market-hero {
    display: grid;
    gap: 14px;
    padding: 22px;
    background: linear-gradient(145deg, rgba(255, 250, 232, 0.96), rgba(255, 236, 173, 0.84));
}

.fh-market-hero__content {
    display: grid;
    gap: 10px;
}

.fh-market-hero__eyebrow,
.fh-market-panel__eyebrow {
    font-size: 0.74rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #8f6d00;
    font-weight: 700;
}

.fh-market-hero h1,
.fh-market-panel h2,
.fh-market-card h3,
.fh-market-empty h2 {
    margin: 0;
    color: #241b0e;
}

.fh-market-hero p,
.fh-market-panel p,
.fh-market-empty p,
.fh-market-card__note {
    margin: 0;
    color: #5d523e;
    line-height: 1.58;
}

.fh-market-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.fh-market-pill,
.fh-market-inline-note {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(135, 101, 13, 0.12);
    color: #5e4600;
    font-size: 0.86rem;
    font-weight: 600;
}

.fh-market-inline-note {
    background: #fff8dc;
    color: #7a6116;
}

.fh-token-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 12px 6px 8px;
    border-radius: 999px;
    background: linear-gradient(135deg, #fff8dc, #f2cd48);
    border: 1px solid rgba(158, 119, 0, 0.2);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    white-space: nowrap;
}

.fh-token-badge__coin {
    position: relative;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: radial-gradient(circle at 32% 30%, #fff7d1, #efc437 62%, #c4930d 100%);
    box-shadow: inset 0 2px 4px rgba(255, 255, 255, 0.55), 0 4px 10px rgba(128, 90, 0, 0.16);
    flex-shrink: 0;
}

.fh-token-badge__coin::before {
    content: "";
    position: absolute;
    inset: 6px;
    border-radius: 50%;
    background: linear-gradient(145deg, #4b3600, #231600);
}

.fh-token-badge__coin::after {
    content: "F$";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffe89a;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-token-badge__meta {
    display: grid;
    gap: 1px;
}

.fh-token-badge__label {
    color: #5b4300;
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1;
}

.fh-token-badge__name {
    color: #7a6116;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
}

.fh-token-badge--compact {
    padding-right: 10px;
}

.fh-token-badge--compact .fh-token-badge__coin {
    width: 24px;
    height: 24px;
}

.fh-token-badge--compact .fh-token-badge__name {
    display: none;
}

.fh-money {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 3px 10px;
    border-radius: 5px;
    background:
        linear-gradient(180deg, rgba(247, 255, 228, 0.98), rgba(206, 229, 154, 0.98)),
        linear-gradient(90deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0.04));
    border: 1px solid rgba(59, 98, 24, 0.44);
    box-shadow: inset 0 0 0 1px rgba(242, 255, 220, 0.78), 0 2px 6px rgba(55, 98, 43, 0.09);
    white-space: nowrap;
    overflow: hidden;
    isolation: isolate;
    vertical-align: middle;
}

.fh-money::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("../img/sfl-logo-2026.png");
    background-repeat: no-repeat;
    background-position: 16% center;
    background-size: auto 112%;
    opacity: 0.048;
    pointer-events: none;
    transform: scale(0.9);
    mix-blend-mode: multiply;
}

.fh-money::after {
    content: "";
    position: absolute;
    inset: 2px;
    border: 1px solid rgba(52, 88, 23, 0.22);
    border-radius: 3px;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.42),
        inset 0 0 0 2px rgba(255, 255, 255, 0.04);
    pointer-events: none;
}

.fh-money__amount {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: #173018;
    font-size: 0.92rem;
    font-weight: 800;
    letter-spacing: 0.015em;
    text-align: center;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.fh-money--compact {
    min-height: 24px;
    padding: 2px 8px;
    border-radius: 4px;
    box-shadow: inset 0 0 0 1px rgba(242, 255, 220, 0.72), 0 1px 4px rgba(55, 98, 43, 0.08);
}

.fh-money--note {
    min-width: 108px;
    min-height: 34px;
    padding: 4px 12px;
    border-radius: 6px;
    border-width: 2px;
    box-shadow: inset 0 0 0 1px rgba(242, 255, 220, 0.84), 0 3px 8px rgba(55, 98, 43, 0.1);
}

.fh-money--note::before {
    background-size: auto 118%;
    opacity: 0.052;
}

.fh-money--note::after {
    inset: 3px;
    border-radius: 4px;
}

.fh-money--note .fh-money__amount {
    font-size: 1rem;
    font-weight: 900;
}

.fh-money--note-sm {
    min-width: 94px;
    min-height: 30px;
    padding: 4px 8px;
}

.fh-money--note-sm::before {
    background-size: auto 100%;
    opacity: 0.042;
}

.fh-money--note-sm::after {
    inset: 2px;
}

.fh-money--compact .fh-money__amount {
    font-size: 0.82rem;
    font-weight: 800;
}

.fh-money--note-sm .fh-money__amount {
    font-size: 0.88rem;
    letter-spacing: 0.02em;
}

.fh-market-notice {
    padding: 14px 16px;
}

.fh-market-notice p {
    margin: 0;
    font-weight: 600;
}

.fh-market-notice--success {
    background: #ecfff0;
    border-color: rgba(25, 113, 50, 0.16);
}

.fh-market-notice--success p {
    color: #1c6a31;
}

.fh-market-notice--error {
    background: #fff1f1;
    border-color: rgba(171, 31, 36, 0.16);
}

.fh-market-notice--error p {
    color: #a11f24;
}

.fh-market-empty,
.fh-market-panel {
    display: grid;
    gap: 14px;
    padding: 22px;
}

.fh-market-section {
    display: grid;
    gap: 14px;
    padding: 20px 22px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(120, 90, 0, 0.1);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-market-section__head {
    display: grid;
    gap: 6px;
}

.fh-market-section__head h2 {
    margin: 0;
    color: #241b0e;
}

.fh-market-section__head p {
    margin: 0;
    color: #615640;
    line-height: 1.55;
}

.fh-market-section__meta {
    font-size: 0.78rem;
    color: #8a7245;
    line-height: 1.35;
}

.fh-market-summary {
    display: grid;
    grid-template-columns: minmax(240px, 1.3fr) repeat(3, minmax(150px, 1fr));
    gap: 14px;
}

.fh-market-summary__card {
    display: grid;
    gap: 6px;
    padding: 18px;
}

.fh-market-summary__card span,
.fh-market-kpi span {
    color: #8a7245;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700;
}

.fh-market-summary__card strong,
.fh-market-kpi strong {
    color: #2e2618;
    font-size: 1.35rem;
    line-height: 1;
}

.fh-market-summary__card strong .fh-token-badge {
    vertical-align: top;
}

.fh-market-summary__card--team {
    padding-top: 14px;
    padding-bottom: 14px;
}

.fh-market-summary__team {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.fh-market-summary__team-logo-wrap {
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 46px;
    overflow: hidden;
    isolation: isolate;
}

.fh-market-summary__team-logo {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    background: transparent;
    mix-blend-mode: multiply;
    filter: contrast(1.03) saturate(1.02);
}

.fh-market-summary__team-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: linear-gradient(145deg, #fff7d8, #efc63c);
    color: #4d3600;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.fh-market-summary__team-meta {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.fh-market-summary__team-meta strong {
    font-size: 1.08rem;
    line-height: 1.08;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

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

.fh-market-grid--control {
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
}

.fh-market-form {
    display: grid;
    gap: 14px;
}

.fh-market-form label {
    display: grid;
    gap: 6px;
}

.fh-market-form label span {
    color: #574b33;
    font-size: 0.84rem;
    font-weight: 600;
}

.fh-market-form input,
.fh-market-form select,
.fh-market-form textarea {
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid #d8cfbb;
    border-radius: 12px;
    background: #fffef9;
}

.fh-market-form textarea {
    min-height: 104px;
    padding: 10px 12px;
}

.fh-market-stepper {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 42px;
    align-items: stretch;
    gap: 8px;
}

.fh-market-stepper__btn {
    min-height: 42px;
    border: 1px solid #d8cfbb;
    border-radius: 12px;
    background: linear-gradient(180deg, #fff8e8, #f3e4bd);
    color: #6c531a;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.fh-market-stepper__btn:hover {
    background: linear-gradient(180deg, #fff2cb, #edd89a);
}

.fh-market-stepper__btn:active {
    transform: translateY(1px);
}

.fh-market-stepper input {
    text-align: center;
    font-variant-numeric: tabular-nums;
}

.fh-market-stepper.is-disabled {
    opacity: 0.55;
}

.fh-market-stepper__btn:disabled {
    cursor: not-allowed;
    opacity: 0.72;
}

.fh-market-form__full {
    grid-column: 1 / -1;
}

.fh-market-form__hint {
    color: #6a604c;
    font-size: 0.85rem;
}

.fh-market-budget-preview {
    padding: 11px 12px;
    border-radius: 12px;
    background: #fff8dc;
    border: 1px solid rgba(174, 140, 43, 0.18);
    color: #6a5208;
    font-size: 0.88rem;
    font-weight: 600;
}

.fh-market-checkbox {
    display: flex !important;
    align-items: center;
    gap: 10px;
}

.fh-market-checkbox input {
    width: auto;
    min-height: 0;
    margin: 0;
}

.fh-market-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border: 0;
    border-radius: 999px;
    background: #f0c93c;
    color: #332300;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.fh-market-button[disabled] {
    opacity: 0.55;
    cursor: not-allowed;
}

.fh-market-button--primary {
    background: linear-gradient(145deg, #f5d969, #eab91f);
}

.fh-market-button--secondary {
    background: rgba(255, 255, 255, 0.9);
    color: #3b2d0c;
    border: 1px solid rgba(120, 90, 0, 0.12);
}

.fh-market-button--compact {
    min-height: 36px;
    padding: 0 12px;
    font-size: 0.86rem;
}

.fh-market-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.fh-market-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.fh-market-kpi {
    display: grid;
    gap: 6px;
    padding: 14px;
    border: 1px solid #eadfca;
    border-radius: 14px;
    background: #fffaf0;
}

.fh-market-checklist {
    margin: 0;
    padding-left: 18px;
}

.fh-market-checklist li {
    margin: 0 0 10px;
    color: #453d31;
}

.fh-market-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
}

.fh-market-card {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.fh-market-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.fh-market-card__stats {
    display: grid;
    gap: 8px;
    color: #564a37;
    font-size: 0.9rem;
}

.fh-market-card__stats strong {
    color: #1e160c;
}

.fh-market-actions-cell {
    text-align: right;
    white-space: nowrap;
}

.fh-market-player-mark,
.fh-market-team-mark {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.fh-market-player-mark {
    gap: 13px;
}

.fh-market-team-mark {
    gap: 13px;
}

.fh-market-player-mark__logo,
.fh-market-team-mark__logo {
    width: 22px;
    height: 22px;
    display: block;
    border-radius: 0;
    object-fit: contain;
    background: transparent;
    border: 0;
    mix-blend-mode: multiply;
    filter: contrast(1.03) saturate(1.02);
}

.fh-market-player-mark__badge,
.fh-market-team-mark__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #f4e1a4;
    color: #5e4600;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.02em;
}

.fh-market-player-mark__logo,
.fh-market-player-mark__badge {
    transform: scale(1.42);
    transform-origin: center center;
}

.fh-market-team-mark__logo,
.fh-market-team-mark__badge {
    transform: scale(1.42);
    transform-origin: center center;
}

.fh-market-player-mark__name,
.fh-market-team-mark__label {
    display: inline-flex;
    align-items: center;
    line-height: 1.02;
    color: #241b0e;
    font-weight: 700;
}

.fh-player-name {
    color: inherit;
}

.fh-player-name--foreign {
    color: #b42318 !important;
}

.fh-market-countdown {
    color: #2e2618;
    font-variant-numeric: tabular-nums;
}

.fh-market-countdown.is-expired {
    color: #a11f24;
}

.fh-market-history-toggle {
    min-width: 36px;
    padding: 0;
}

.fh-market-table--market-live th:nth-child(5),
.fh-market-table--market-live td:nth-child(5) {
    width: 110px;
}

.fh-market-table--market-live th:nth-child(7),
.fh-market-table--market-live td:nth-child(7) {
    width: 152px;
    white-space: nowrap;
}

.fh-market-table--market-live th:nth-child(9),
.fh-market-table--market-live td:nth-child(9) {
    width: 52px;
}

.fh-market-table--market-closed th:nth-child(7),
.fh-market-table--market-closed td:nth-child(7) {
    width: 132px;
    white-space: nowrap;
}

.fh-market-table--market-closed th:nth-child(8),
.fh-market-table--market-closed td:nth-child(8) {
    width: 118px;
}

.fh-market-table--market .fh-market-table__sub {
    white-space: nowrap;
}

.fh-market-form--inline {
    padding-top: 4px;
}

.fh-market-table-wrap {
    overflow-x: auto;
}

.fh-market-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
}

.fh-market-table th {
    padding: 12px 8px;
    background: #fffbe7;
    color: #9c7800;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: left;
    border-bottom: 2px solid rgba(233, 191, 52, 0.7);
}

.fh-market-table td {
    padding: 10px 8px;
    color: #2e2618;
    border-bottom: 1px solid rgba(112, 91, 31, 0.08);
    vertical-align: top;
    transition: background-color 140ms ease, box-shadow 140ms ease;
}

.fh-market-table--market td {
    vertical-align: middle;
}

.fh-market-table--market .fh-market-player-mark,
.fh-market-table--market .fh-market-team-mark {
    vertical-align: middle;
}

.fh-market-table--pool td {
    vertical-align: middle;
}

.fh-market-table--pool .fh-market-player-mark {
    vertical-align: middle;
}

.fh-market-table--pool .fh-market-team-mark {
    vertical-align: middle;
}

.fh-market-country-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: #fff8e8;
    border: 1px solid rgba(201, 163, 55, 0.18);
    color: #4b3a12;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.fh-market-country-badge__flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    line-height: 1;
}

.fh-market-country-badge__code {
    display: inline-flex;
    align-items: center;
    font-size: 0.78rem;
    letter-spacing: 0.05em;
}

.fh-market-outcome {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 0.77rem;
    font-weight: 700;
    white-space: nowrap;
}

.fh-market-outcome--confirmed {
    background: #e7f7eb;
    color: #1f6d34;
}

.fh-market-outcome--cancelled {
    background: #f9e3e3;
    color: #9a2d2d;
}

.fh-market-outcome--void {
    background: #ece8df;
    color: #5b5140;
}

.fh-market-outcome--incomplete {
    background: #fff2d9;
    color: #8a5b00;
}

.fh-market-outcome--open {
    background: #e7efff;
    color: #264e9b;
}

.fh-market-pool-row:hover td {
    background: rgba(255, 245, 200, 0.52);
    box-shadow: inset 0 1px 0 rgba(233, 191, 52, 0.08), inset 0 -1px 0 rgba(233, 191, 52, 0.08);
}

.fh-market-pool-row.is-owned-by-me td {
    background: linear-gradient(180deg, rgba(232, 250, 237, 0.96), rgba(219, 245, 226, 0.96));
}

.fh-market-pool-row.is-owned-by-me:hover td {
    background: linear-gradient(180deg, rgba(220, 247, 228, 1), rgba(205, 239, 216, 1));
}

.fh-market-pool-row.is-owned-by-other td {
    background: linear-gradient(180deg, rgba(253, 236, 236, 0.96), rgba(248, 222, 222, 0.96));
}

.fh-market-pool-row.is-owned-by-other:hover td {
    background: linear-gradient(180deg, rgba(250, 227, 227, 1), rgba(244, 212, 212, 1));
}

.fh-market-pool-row.is-owned-by-me .fh-market-actions-cell,
.fh-market-pool-row.is-owned-by-other .fh-market-actions-cell {
    white-space: nowrap;
}

@media (min-width: 961px) {
    .fh-market-section {
        --fh-market-sticky-filters-top: 0px;
        --fh-market-sticky-head-top: 74px;
    }

    .fh-market-section .fh-market-filters {
        position: sticky;
        top: var(--fh-market-sticky-filters-top);
        z-index: 22;
        padding: 10px;
        margin: 0 0 14px;
        border-radius: 16px;
        background: rgba(255, 253, 247, 0.96);
        border: 1px solid rgba(201, 163, 55, 0.16);
        box-shadow: 0 10px 22px rgba(72, 54, 11, 0.08);
        backdrop-filter: blur(6px);
    }

    .fh-market-table-wrap--pool {
        overflow: visible;
    }

    .fh-market-table--pool thead th {
        position: sticky;
        top: var(--fh-market-sticky-head-top);
        z-index: 20;
        box-shadow: 0 1px 0 rgba(233, 191, 52, 0.2);
        background: rgba(255, 251, 231, 0.98);
        backdrop-filter: blur(4px);
    }
}

.fh-market-table__sub {
    margin-top: 4px;
    color: #8b7552;
    font-size: 0.78rem;
}

.fh-market-empty--compact {
    padding: 16px 18px;
}

.fh-market-legacy-block,
.fh-market-collapse {
    padding: 20px 22px;
}

.fh-market-legacy-head {
    display: grid;
    gap: 6px;
    margin-bottom: 12px;
}

.fh-market-legacy-head h2,
.fh-market-collapse__summary span {
    margin: 0;
    color: #241b0e;
}

.fh-market-legacy-intro {
    margin: 0 0 14px;
    color: #615640;
    line-height: 1.55;
}

.fh-market-bid-form {
    display: grid;
    gap: 8px;
    min-width: 210px;
}

.fh-market-bid-form select,
.fh-market-bid-form input {
    width: 100%;
    min-height: 36px;
    padding: 0 10px;
    border: 1px solid #d8cfbb;
    border-radius: 10px;
    background: #fffef9;
}

.fh-market-collapse {
    overflow: hidden;
}

.fh-market-collapse__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    list-style: none;
    font-weight: 700;
    color: #7b1f1f;
}

.fh-market-collapse__summary::-webkit-details-marker {
    display: none;
}

.fh-market-collapse__summary strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border-radius: 999px;
    background: #fff2f2;
    color: #a22a2a;
    font-size: 0.85rem;
}

.fh-market-collapse__body {
    margin-top: 14px;
}

.fh-market-filters {
    display: grid;
    grid-template-columns: minmax(200px, 1.8fr) repeat(5, minmax(120px, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.fh-market-filters input,
.fh-market-filters select {
    width: 100%;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid #d8cfbb;
    border-radius: 12px;
    background: #fffef9;
}

.fh-market-status {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 0.79rem;
    font-weight: 700;
}

.fh-market-status.is-free {
    background: #eef9f0;
    color: #1f7a34;
}

.fh-market-status.is-owned {
    background: #f5efe3;
    color: #7b5a14;
}

.fh-market-modal-bg {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(31, 24, 11, 0.58);
    backdrop-filter: blur(4px);
    isolation: isolate;
}

.fh-market-modal-bg.is-active {
    display: flex;
}

.fh-market-modal {
    position: relative;
    z-index: 1;
    width: min(100%, 560px);
    max-height: calc(100vh - 36px);
    overflow: auto;
    padding: 24px;
    border-radius: 24px;
    background: #fffdf7;
    border: 1px solid rgba(120, 90, 0, 0.14);
    box-shadow: 0 24px 60px rgba(24, 18, 8, 0.24);
}

.fh-market-modal__close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: #f5efe0;
    color: #594519;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}

.fh-market-modal__title {
    margin: 0 40px 16px 0;
    color: #241b0e;
    font-size: 1.12rem;
    font-weight: 700;
}

.fh-market-modal__body {
    display: grid;
    gap: 14px;
}

.fh-market-modal__trade-hero {
    display: grid;
    gap: 12px;
}

.fh-market-modal__player {
    display: grid;
    gap: 4px;
    padding: 14px 16px;
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(255, 249, 228, 0.96), rgba(255, 236, 173, 0.78));
    border: 1px solid rgba(181, 143, 32, 0.14);
}

.fh-market-modal__player--trade {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
}

.fh-market-modal__player-main,
.fh-market-modal__player-side {
    display: grid;
    gap: 4px;
}

.fh-market-modal__player-side {
    justify-items: end;
}

.fh-market-modal__player strong {
    color: #241b0e;
    font-size: 1.05rem;
}

.fh-market-modal__player .fh-market-player-mark {
    gap: 10px;
}

.fh-market-modal__player .fh-market-player-mark__logo,
.fh-market-modal__player .fh-market-player-mark__badge {
    width: 28px;
    height: 28px;
    transform: none;
}

.fh-market-modal__player span,
.fh-market-modal__hint {
    color: #615640;
    font-size: 0.9rem;
    line-height: 1.5;
}

.fh-market-modal__owner-card {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(181, 143, 32, 0.16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.fh-market-modal__owner-team {
    display: flex;
    align-items: center;
    gap: 10px;
}

.fh-market-modal__owner-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(181, 143, 32, 0.12);
}

.fh-market-modal__owner-logo,
.fh-market-modal__owner-badge {
    width: 26px;
    height: 26px;
    display: block;
    object-fit: contain;
}

.fh-market-modal__owner-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f4e1a4;
    color: #5e4600;
    font-size: 0.78rem;
    font-weight: 800;
}

.fh-market-modal__owner-copy {
    display: grid;
    gap: 1px;
    min-width: 0;
}

.fh-market-modal__owner-copy strong {
    color: #241b0e;
    font-size: 0.92rem;
    line-height: 1.1;
}

.fh-market-modal__owner-copy small {
    color: #6d5a34;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.fh-market-modal__stats--trade-head,
.fh-market-form--modal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fh-market-form--modal {
    display: grid;
    gap: 12px;
}

.fh-market-form--modal textarea {
    min-height: 90px;
}

.fh-market-form--modal > label {
    display: grid;
    gap: 6px;
}

.fh-market-modal__budget {
    display: grid;
    gap: 10px;
    padding: 14px 16px;
    border-radius: 16px;
    background: #fff8dc;
    border: 1px solid rgba(174, 140, 43, 0.18);
}

.fh-market-modal__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.fh-market-modal__stat {
    display: grid;
    gap: 4px;
    padding: 11px 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(174, 140, 43, 0.12);
}

.fh-market-modal__stat span {
    color: #8a7245;
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.fh-market-modal__stat strong {
    color: #2e2618;
    font-size: 0.96rem;
}

.fh-market-modal__stat--success {
    background: rgba(231, 247, 235, 0.96);
    border-color: rgba(41, 123, 62, 0.22);
}

.fh-market-modal__stat--success strong,
.fh-market-modal__stat--success span {
    color: #1f6a34;
}

.fh-market-modal__stat--danger {
    background: rgba(255, 238, 238, 0.98);
    border-color: rgba(171, 31, 36, 0.24);
}

.fh-market-modal__stat--danger strong,
.fh-market-modal__stat--danger span {
    color: #a11f24;
}

.fh-market-modal__stat em {
    color: #a11f24;
    font-style: normal;
    font-size: 0.82rem;
    font-weight: 700;
}

.fh-money--plain .fh-money__coin {
    display: none;
}

.fh-market-modal__warning {
    padding: 13px 14px;
    border-radius: 14px;
    background: #fff1f1;
    border: 1px solid rgba(171, 31, 36, 0.16);
    color: #a11f24;
    font-weight: 600;
}

.fh-market-modal__message {
    min-height: 22px;
    margin-top: 12px;
    color: #615640;
    font-weight: 600;
}

.fh-market-modal__message.is-success {
    color: #1c6a31;
}

.fh-market-modal__message.is-error {
    color: #a11f24;
}

.fh-market-modal__actions {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

@media (max-width: 720px) {
    .fh-market-modal__player--trade {
        grid-template-columns: 1fr;
    }

    .fh-market-modal__player-side {
        justify-items: start;
    }

    .fh-market-modal__stats--trade-head,
    .fh-market-form--modal {
        grid-template-columns: 1fr;
    }
}

.fh-market-history-row td {
    padding: 0;
    background: rgba(255, 249, 228, 0.74);
}

.fh-market-history-wrap {
    padding: 16px 18px;
}

.fh-market-history-table {
    width: 100%;
    border-collapse: collapse;
}

.fh-market-history-table th {
    padding: 8px 6px;
    color: #8a7245;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    text-align: left;
    border-bottom: 1px solid rgba(174, 140, 43, 0.22);
}

.fh-market-history-table td {
    padding: 8px 6px;
    color: #2e2618;
    border-bottom: 1px solid rgba(112, 91, 31, 0.08);
    vertical-align: middle;
}

.fh-market-history-table .fh-market-player-mark,
.fh-market-history-table .fh-market-team-mark {
    vertical-align: middle;
}

.fh-market-history-loading,
.fh-market-history-empty,
.fh-market-history-error {
    padding: 16px 18px;
    color: #615640;
    font-weight: 600;
}

.fh-market-history-error {
    color: #a11f24;
}

.fh-market-table--market tbody tr.is-cancelled td {
    background: #fff1f1;
    color: #9c2a2a;
}

@media (max-width: 960px) {
    .fh-market-summary,
    .fh-market-grid,
    .fh-market-kpis,
    .fh-market-modal__stats {
        grid-template-columns: 1fr;
    }

    .fh-market-card__top,
    .fh-market-hero__meta {
        flex-direction: column;
        align-items: flex-start;
    }

    .fh-market-filters {
        grid-template-columns: 1fr 1fr;
    }

    .fh-market-modal {
        padding: 18px;
    }
}

@media (max-width: 640px) {
    .fh-market-filters {
        grid-template-columns: 1fr;
    }
}

.fh-standings-module__intro {
    display: grid;
    gap: 12px;
    padding: 20px 22px;
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(255, 250, 232, 0.96), rgba(255, 236, 173, 0.84));
    border: 1px solid rgba(135, 101, 13, 0.12);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-standings-module__eyebrow {
    font-size: 0.74rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #8f6d00;
    font-weight: 700;
}

.fh-standings-module__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.fh-standings-pill {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(135, 101, 13, 0.12);
    color: #5e4600;
    font-size: 0.88rem;
    font-weight: 600;
}

.fh-standings-pill--state-live {
    background: rgba(227, 255, 229, 0.9);
    color: #116d26;
}

.fh-standings-pill--state-empty {
    background: rgba(255, 248, 216, 0.92);
    color: #8a6700;
}

.fh-standings-pill--state-preview {
    background: rgba(255, 241, 202, 0.92);
    color: #8a6200;
}

.fh-standings-module__lead {
    margin: 0;
    color: #5d523e;
    line-height: 1.58;
}

.fh-standings-table-wrap {
    overflow-x: auto;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(120, 90, 0, 0.1);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-standings-table {
    width: 100%;
    min-width: 920px;
    border-collapse: collapse;
}

.fh-standings-table thead th {
    padding: 12px 8px;
    background: #fffbe7;
    color: #9c7800;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
    border-bottom: 2px solid rgba(233, 191, 52, 0.7);
}

.fh-standings-table thead th:nth-child(2) {
    text-align: left;
}

.fh-standings-table tbody tr {
    border-bottom: 1px solid rgba(112, 91, 31, 0.08);
    transition: background-color 0.18s ease;
}

.fh-standings-table tbody tr:hover {
    background: rgba(255, 247, 212, 0.5);
}

.fh-standings-table tbody tr.is-current-team td {
    background: linear-gradient(180deg, rgba(255, 252, 241, 0.98), rgba(255, 242, 199, 0.94));
}

.fh-standings-table tbody tr.is-current-team td:first-child {
    box-shadow:
        inset 1px 0 0 rgba(194, 150, 26, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        inset 0 -1px 0 rgba(194, 150, 26, 0.12);
}

.fh-standings-table tbody tr.is-current-team td:not(:first-child):not(:last-child) {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        inset 0 -1px 0 rgba(194, 150, 26, 0.12);
}

.fh-standings-table tbody tr.is-current-team td:last-child {
    box-shadow:
        inset -1px 0 0 rgba(194, 150, 26, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        inset 0 -1px 0 rgba(194, 150, 26, 0.12);
}

.fh-standings-table tbody tr:nth-child(4) {
    border-bottom: 2px solid rgba(228, 180, 27, 0.8);
}

.fh-standings-table tbody tr:nth-child(12) {
    border-bottom: 2px solid rgba(30, 24, 13, 0.85);
}

.fh-standings-table td {
    padding: 9px 8px;
    text-align: center;
    color: #2e2618;
    font-size: 0.92rem;
}

.fh-standings-table__rank {
    font-weight: 700;
    color: #ba9400;
}

.fh-standings-table__team {
    text-align: left;
}

.fh-standings-team {
    display: flex;
    align-items: center;
    gap: 10px;
}

.fh-standings-team__link,
.fh-standings-team__text-link,
.fh-topscorer-team__link {
    display: inline-flex;
    align-items: center;
    gap: inherit;
    color: inherit;
    text-decoration: none;
    min-width: 0;
    transition: opacity 0.16s ease, transform 0.16s ease;
}

.fh-standings-team__text-link {
    display: inline-grid;
    gap: 4px;
}

.fh-standings-team__link:hover,
.fh-standings-team__text-link:hover,
.fh-topscorer-team__link:hover {
    opacity: 0.84;
    transform: translateY(-1px);
}

.fh-standings-team__logo,
.fh-standings-team__badge {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    flex: 0 0 36px;
}

.fh-standings-team__logo {
    display: block;
    object-fit: contain;
    background: transparent;
    border: 0;
    border-radius: 0;
    mix-blend-mode: multiply;
    transform: scale(1.08);
    transform-origin: center center;
}

.fh-standings-team__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #fff7d8, #efc63c);
    color: #4d3600;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    box-shadow: 0 10px 18px rgba(132, 101, 24, 0.12);
}

.fh-standings-team__name {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
}

.fh-standings-team__name strong {
    color: #231a0f;
    font-size: 0.92rem;
}

.fh-standings-team__name small {
    color: #78674a;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.fh-standings-table__diff.is-positive,
.fh-standings-card__stats .is-positive {
    color: #197132;
    font-weight: 700;
}

.fh-standings-table__diff.is-negative,
.fh-standings-card__stats .is-negative {
    color: #ab1f24;
    font-weight: 700;
}

.fh-standings-table__points {
    font-weight: 800;
    color: #8f6a00;
}

.fh-standings-form {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.fh-standings-form--empty {
    color: #8b7960;
}

.fh-standings-form__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(38, 30, 13, 0.18);
}

.fh-standings-form__dot.is-win {
    background: #24c244;
    border: 1px solid #1a9a34;
}

.fh-standings-form__dot.is-draw {
    background: #ffd84c;
    border: 1px solid #d3a900;
}

.fh-standings-form__dot.is-loss {
    background: #ed5555;
    border: 1px solid #bb3434;
}

.fh-standings-cards {
    display: none;
}

.fh-topscorer-module__intro {
    display: grid;
    gap: 12px;
    padding: 20px 22px;
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(255, 250, 232, 0.96), rgba(255, 236, 173, 0.84));
    border: 1px solid rgba(135, 101, 13, 0.12);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-topscorer-module__eyebrow {
    font-size: 0.74rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #8f6d00;
    font-weight: 700;
}

.fh-topscorer-module__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.fh-topscorer-pill {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(135, 101, 13, 0.12);
    color: #5e4600;
    font-size: 0.88rem;
    font-weight: 600;
}

.fh-topscorer-pill--state-live {
    background: rgba(227, 255, 229, 0.9);
    color: #116d26;
}

.fh-topscorer-pill--state-empty,
.fh-topscorer-pill--state-no-matchdays {
    background: rgba(255, 248, 216, 0.92);
    color: #8a6700;
}

.fh-topscorer-pill--state-missing-season {
    background: rgba(255, 241, 202, 0.92);
    color: #8a6200;
}

.fh-topscorer-pill--accent {
    background: rgba(255, 245, 200, 0.96);
    color: #7a5d00;
}

.fh-topscorer-module__lead {
    margin: 0;
    color: #5d523e;
    line-height: 1.58;
}

.fh-topscorer-empty {
    padding: 20px 22px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(120, 90, 0, 0.1);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-topscorer-empty p {
    margin: 0;
    color: #5d523e;
    line-height: 1.58;
}

.fh-topscorer-table-wrap {
    --fh-topscorer-filters-height: 48px;
    max-height: 72vh;
    overflow: auto;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(120, 90, 0, 0.1);
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-topscorer-filters {
    position: sticky;
    top: 0;
    z-index: 6;
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: var(--fh-topscorer-filters-height);
    padding: 8px 10px;
    background: #fff9d9;
    border-bottom: 1px solid rgba(228, 186, 38, 0.34);
}

.fh-topscorer-filter {
    flex: 0 1 auto;
}

.fh-topscorer-filter:first-child {
    flex: 1 1 220px;
}

.fh-topscorer-filter input,
.fh-topscorer-filter select {
    width: 100%;
    min-width: 0;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid rgba(120, 90, 0, 0.12);
    background: rgba(255, 255, 255, 0.92);
    color: #2f2511;
    font-size: 0.9rem;
    font-weight: 600;
}

.fh-topscorer-table {
    width: 100%;
    min-width: 860px;
    border-collapse: collapse;
}

.fh-topscorer-table thead th {
    position: sticky;
    top: var(--fh-topscorer-filters-height);
    z-index: 5;
    padding: 12px 8px;
    background: #fffbe7;
    color: #9c7800;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
    border-bottom: 2px solid rgba(233, 191, 52, 0.7);
}

.fh-topscorer-table thead th:nth-child(2),
.fh-topscorer-table thead th:nth-child(3) {
    text-align: left;
}

.fh-topscorer-table td {
    padding: 8px 8px;
    text-align: center;
    color: #2e2618;
    font-size: 0.92rem;
    border-bottom: 1px solid rgba(112, 91, 31, 0.08);
}

.fh-topscorer-table td:nth-child(2),
.fh-topscorer-table td:nth-child(3) {
    text-align: left;
}

.fh-topscorer-table tbody tr {
    transition: background-color 0.18s ease;
}

.fh-topscorer-table tbody tr:hover {
    background: rgba(255, 247, 212, 0.5);
}

.fh-topscorer-table tbody tr.is-current-team td {
    background: linear-gradient(180deg, rgba(255, 252, 241, 0.98), rgba(255, 242, 199, 0.94));
}

.fh-topscorer-table tbody tr.is-current-team td:first-child {
    box-shadow:
        inset 1px 0 0 rgba(194, 150, 26, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        inset 0 -1px 0 rgba(194, 150, 26, 0.12);
}

.fh-topscorer-table tbody tr.is-current-team td:not(:first-child):not(:last-child) {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        inset 0 -1px 0 rgba(194, 150, 26, 0.12);
}

.fh-topscorer-table tbody tr.is-current-team td:last-child {
    box-shadow:
        inset -1px 0 0 rgba(194, 150, 26, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        inset 0 -1px 0 rgba(194, 150, 26, 0.12);
}

.fh-topscorer-table td:nth-child(2) {
    text-align: left;
    min-width: 190px;
}

.fh-topscorer-table__rank {
    color: #ba9400;
}

.fh-topscorer-table__points {
    color: #8f6a00;
}

.fh-topscorer-table__loading {
    color: #8b7960;
    text-align: center;
}

.fh-topscorer-name {
    color: #241b0e;
    font-weight: 700;
}

.fh-topscorer-player {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.fh-topscorer-player .fh-topscorer-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fh-topscorer-name--foreign {
    color: #b42318;
}

.fh-topscorer-team {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.fh-topscorer-team__text {
    color: #2f2511;
    white-space: nowrap;
}

.fh-topscorer-team__empty {
    color: #96836a;
}

.fh-topscorer-mark__logo,
.fh-topscorer-mark__badge {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
}

.fh-topscorer-mark__logo {
    display: block;
    object-fit: contain;
}

.fh-topscorer-mark__logo--fantasy {
    transform: scale(1.08);
}

.fh-topscorer-mark__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: linear-gradient(145deg, #fff7d8, #efc63c);
    color: #4d3600;
    font-size: 0.6rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.fh-topscorer-mark__badge--fantasy {
    background: linear-gradient(145deg, #fff7d8, #efc63c);
}

.fh-topscorer-cards {
    display: none;
}

.fh-topscorer-card {
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(120, 90, 0, 0.1);
    box-shadow: 0 10px 20px rgba(99, 75, 16, 0.07);
    padding: 14px;
    display: grid;
    gap: 12px;
}

.fh-topscorer-card.is-current-team,
.fh-standings-card.is-current-team {
    background: linear-gradient(180deg, rgba(255, 252, 241, 0.99), rgba(255, 241, 196, 0.95));
    border-color: rgba(194, 150, 26, 0.24);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        0 14px 26px rgba(99, 75, 16, 0.12),
        0 0 18px rgba(219, 181, 69, 0.09);
}

.fh-topscorer-card--empty {
    justify-items: center;
    color: #8b7960;
    font-weight: 700;
}

.fh-topscorer-card__head {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: start;
}

.fh-topscorer-card__rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: linear-gradient(145deg, #fff7d8, #efc63c);
    color: #4d3600;
    font-size: 0.9rem;
    font-weight: 900;
}

.fh-topscorer-card__identity {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.fh-topscorer-card__identity strong {
    line-height: 1.08;
}

.fh-topscorer-card__identity .fh-topscorer-player {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.fh-topscorer-card__identity .fh-topscorer-player strong {
    min-width: 0;
}

.fh-topscorer-card__teams {
    display: grid;
    gap: 4px;
}

.fh-topscorer-card__points {
    display: grid;
    gap: 2px;
    text-align: right;
    color: #8f6a00;
}

.fh-topscorer-card__points small {
    font-size: 0.64rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.fh-topscorer-card__points strong {
    font-size: 1rem;
}

.fh-topscorer-card__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.fh-topscorer-card__stats span {
    display: grid;
    gap: 2px;
    padding: 8px 6px;
    border-radius: 12px;
    background: rgba(255, 248, 220, 0.8);
    text-align: center;
}

.fh-topscorer-card__stats small {
    color: #8f6d00;
    font-size: 0.62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.fh-topscorer-card__stats strong {
    color: #2f2511;
    font-size: 0.9rem;
}

@media (max-width: 760px) {
    .fh-standings-module__intro {
        padding: 18px;
        gap: 10px;
    }

    .fh-standings-table-wrap {
        display: none;
    }

    .fh-standings-cards {
        display: grid;
        gap: 10px;
    }

    .fh-topscorer-module__intro,
    .fh-topscorer-empty {
        padding: 18px;
        gap: 10px;
    }

    .fh-topscorer-table-wrap {
        display: none;
    }

    .fh-topscorer-cards {
        display: grid;
        gap: 10px;
    }

    .fh-standings-card {
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.88);
        border: 1px solid rgba(120, 90, 0, 0.1);
        box-shadow: 0 10px 20px rgba(99, 75, 16, 0.07);
        overflow: hidden;
    }

    .fh-standings-card summary {
        list-style: none;
    }

    .fh-standings-card summary::-webkit-details-marker {
        display: none;
    }

    .fh-standings-card__summary {
        display: flex;
        align-items: center;
        gap: 10px;
        min-width: 0;
        padding: 14px 16px;
        cursor: pointer;
    }

    .fh-standings-card__rank {
        width: 24px;
        color: #ba9400;
        font-weight: 800;
        text-align: center;
        flex: 0 0 24px;
    }

    .fh-standings-card__name {
        min-width: 0;
        flex: 1 1 auto;
        color: #231a0f;
        font-size: 0.95rem;
        font-weight: 700;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .fh-standings-card__points-inline {
        display: grid;
        gap: 2px;
        text-align: right;
        flex: 0 0 auto;
    }

    .fh-standings-card__points-inline small {
        color: #7f6940;
        font-size: 0.66rem;
        text-transform: uppercase;
        letter-spacing: 0.08em;
    }

    .fh-standings-card__points-inline strong {
        color: #8f6a00;
        font-size: 1.15rem;
        line-height: 1;
    }

    .fh-standings-card__toggle {
        width: 22px;
        text-align: center;
        flex: 0 0 22px;
    }

    .fh-standings-card__toggle::before {
        content: "+";
        color: #8f6a00;
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1;
    }

    .fh-standings-card[open] .fh-standings-card__toggle::before {
        content: "−";
    }

    .fh-standings-card__details {
        display: grid;
        gap: 12px;
        padding: 0 16px 16px;
        border-top: 1px solid rgba(120, 90, 0, 0.08);
    }

    .fh-standings-card__identity {
        display: flex;
        align-items: baseline;
        flex-wrap: wrap;
        gap: 6px;
        min-width: 0;
        padding-top: 12px;
    }

    .fh-standings-card__identity strong {
        color: #231a0f;
        font-size: 0.9rem;
    }

    .fh-standings-card__identity small {
        color: #78674a;
        font-size: 0.74rem;
        text-transform: uppercase;
        letter-spacing: 0.08em;
    }

    .fh-standings-card__stats {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
        color: #564a37;
        font-size: 0.8rem;
    }

    .fh-standings-card__stats span {
        display: grid;
        gap: 2px;
    }

    .fh-standings-card__stats strong {
        color: #1f170d;
        font-size: 1rem;
    }

    .fh-standings-card__form {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        color: #6a5840;
        font-size: 0.82rem;
    }
}

@media (max-width: 520px) {
    .fh-topscorer-card__head {
        grid-template-columns: 34px minmax(0, 1fr);
    }

    .fh-topscorer-card__points {
        grid-column: 1 / -1;
        text-align: left;
    }

    .fh-topscorer-card__stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.fh-public-team {
    display: grid;
    gap: 18px;
}

.fh-public-team__hero,
.fh-public-team__empty,
.fh-public-team__stat,
.fh-public-team__table-wrap,
.fh-public-team__card {
    background: #fff;
    border: 1px solid rgba(120, 90, 0, 0.1);
    border-radius: 24px;
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
}

.fh-public-team__hero {
    padding: 24px;
    background: linear-gradient(145deg, rgba(255, 249, 229, 0.98), rgba(255, 236, 173, 0.88));
}

.fh-public-team__hero-copy {
    display: grid;
    gap: 12px;
}

.fh-public-team__hero-copy p {
    margin: 0;
    color: #5d523e;
    line-height: 1.6;
    max-width: 72ch;
}

.fh-public-team__eyebrow {
    font-size: 0.74rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #8f6d00;
    font-weight: 700;
}

.fh-public-team__hero h1,
.fh-public-team__section-head h2 {
    margin: 0;
    color: #241b0e;
}

.fh-public-team__identity {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.fh-public-team__crest {
    width: 84px;
    height: 84px;
    border-radius: 0;
    background: transparent;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
    isolation: isolate;
}

.fh-public-team__crest img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    mix-blend-mode: multiply;
    transform: scale(1.08);
    transform-origin: center center;
    filter: contrast(1.03) saturate(1.02);
}

.fh-public-team__crest span {
    color: #7b5f16;
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-public-team__identity-copy {
    display: grid;
    gap: 8px;
    min-width: 0;
}

.fh-public-team__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-public-team__pill {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(135, 101, 13, 0.12);
    color: #5e4600;
    font-size: 0.82rem;
    font-weight: 700;
}

.fh-public-team__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.fh-public-team__overview {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.9fr);
    gap: 14px;
    align-items: start;
}

.fh-public-team__stat {
    display: grid;
    gap: 6px;
    padding: 18px;
}

.fh-public-team__stat span {
    color: #8a7245;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700;
}

.fh-public-team__stat strong {
    color: #2e2618;
    font-size: 1.5rem;
    line-height: 1;
}

.fh-public-team__aside {
    display: grid;
    gap: 14px;
}

.fh-public-team__aside-card,
.fh-public-team__roster-section {
    background: #fff;
    border: 1px solid rgba(120, 90, 0, 0.1);
    border-radius: 24px;
    box-shadow: 0 18px 36px rgba(99, 75, 16, 0.08);
    padding: 18px;
}

.fh-public-team__mini-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 10px;
}

.fh-public-team__mini-stat {
    display: grid;
    gap: 4px;
    padding: 12px 13px;
    border-radius: 16px;
    background: rgba(255, 247, 221, 0.58);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-public-team__mini-stat span {
    color: #8a7245;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700;
}

.fh-public-team__mini-stat strong {
    color: #2e2618;
    font-size: 1.18rem;
    line-height: 1;
}

.fh-public-team__form {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.fh-public-team__form-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    min-height: 38px;
    padding: 0 10px;
    border-radius: 999px;
    font-weight: 900;
    letter-spacing: 0.06em;
    font-size: 0.8rem;
    border: 1px solid transparent;
}

.fh-public-team__form-chip.is-win {
    background: rgba(26, 127, 55, 0.12);
    color: #176d33;
    border-color: rgba(26, 127, 55, 0.18);
}

.fh-public-team__form-chip.is-draw {
    background: rgba(193, 135, 0, 0.12);
    color: #8f6400;
    border-color: rgba(193, 135, 0, 0.18);
}

.fh-public-team__form-chip.is-loss {
    background: rgba(180, 35, 24, 0.1);
    color: #9d231d;
    border-color: rgba(180, 35, 24, 0.16);
}

.fh-public-team__form-chip.is-neutral {
    background: rgba(83, 72, 51, 0.08);
    color: #534833;
    border-color: rgba(83, 72, 51, 0.12);
}

.fh-public-team__section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
}

.fh-public-team__back {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(120, 90, 0, 0.12);
    color: #5b4300;
    text-decoration: none;
    font-weight: 700;
}

.fh-public-team__back:hover {
    color: #241b0e;
}

.fh-public-team__roster-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.fh-public-team__roster-section {
    display: grid;
    gap: 14px;
}

.fh-public-team__roster-section-head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}

.fh-public-team__roster-section-head h3 {
    margin: 4px 0 0;
    color: #241b0e;
    font-size: 1.08rem;
}

.fh-public-team__roster-count {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(255, 247, 221, 0.66);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #7a6640;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
}

.fh-public-team__roster-list {
    display: grid;
    gap: 10px;
}

.fh-public-team__roster-player {
    display: grid;
    gap: 10px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(255, 250, 234, 0.84);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-public-team__roster-player-main {
    display: grid;
    gap: 4px;
}

.fh-public-team__roster-player-main strong {
    font-size: 0.98rem;
    line-height: 1.2;
}

.fh-public-team__roster-player-main span {
    color: #7a6640;
    font-size: 0.8rem;
}

.fh-public-team__roster-player-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.fh-public-team__tag {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #5e4600;
    font-size: 0.78rem;
    font-weight: 700;
}

.fh-public-team__table-wrap {
    overflow: hidden;
}

.fh-public-team__table {
    width: 100%;
    border-collapse: collapse;
}

.fh-public-team__table th,
.fh-public-team__table td {
    padding: 14px 16px;
    border-bottom: 1px solid rgba(120, 90, 0, 0.08);
    text-align: left;
    vertical-align: middle;
}

.fh-public-team__table th {
    color: #7a6640;
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.fh-public-team__table tbody tr:hover {
    background: rgba(255, 247, 221, 0.5);
}

.fh-public-team__table tbody tr:last-child td {
    border-bottom: 0;
}

.fh-public-team__player-name {
    font-weight: 700;
}

.fh-public-team__empty {
    padding: 20px 22px;
}

.fh-public-team__empty p {
    margin: 0;
    color: #5d523e;
    line-height: 1.58;
}

.fh-public-team__empty--inline {
    padding: 12px 0 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.fh-public-team__directory {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
    gap: 14px;
}

.fh-public-team__card {
    display: grid;
    justify-items: center;
    gap: 10px;
    padding: 18px 16px;
    text-decoration: none;
    color: inherit;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.fh-public-team__card:hover,
.fh-public-team__card.is-active {
    transform: translateY(-2px);
    border-color: rgba(188, 145, 31, 0.34);
    box-shadow: 0 20px 34px rgba(120, 90, 0, 0.12);
}

.fh-public-team__card-logo {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: transparent;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    isolation: isolate;
}

.fh-public-team__card-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    mix-blend-mode: multiply;
    transform: scale(1.08);
    transform-origin: center center;
    filter: contrast(1.03) saturate(1.02);
}

.fh-public-team__card-logo span {
    color: #7b5f16;
    font-size: 0.88rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-public-team__card-name {
    color: #241b0e;
    font-size: 0.92rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.35;
}

.fh-public-team__card-code {
    color: #8a6a1a;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

@media (max-width: 900px) {
    .fh-public-team__overview {
        grid-template-columns: 1fr;
    }

    .fh-public-team__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fh-public-team__roster-grid {
        grid-template-columns: 1fr;
    }

    .fh-public-team__section-head {
        align-items: start;
        flex-direction: column;
    }
}

@media (max-width: 640px) {
    .fh-public-team__hero,
    .fh-public-team__empty,
    .fh-public-team__stat,
    .fh-public-team__card {
        border-radius: 20px;
    }

    .fh-public-team__identity {
        align-items: start;
        flex-direction: column;
    }

    .fh-public-team__crest {
        width: 72px;
        height: 72px;
        border-radius: 20px;
    }

    .fh-public-team__stats {
        grid-template-columns: 1fr;
    }

    .fh-public-team__mini-grid {
        grid-template-columns: 1fr 1fr;
    }

    .fh-public-team__table-wrap {
        overflow-x: auto;
    }

    .fh-public-team__table {
        min-width: 560px;
    }

.fh-public-team__directory {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.fh-honours {
    display: grid;
    gap: 18px;
}

.fh-honours__hero,
.fh-honours__card {
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(255, 215, 110, 0.26), transparent 34%),
        radial-gradient(circle at bottom left, rgba(138, 180, 255, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(255, 251, 240, 0.98), rgba(255, 246, 223, 0.96));
    border: 1px solid rgba(120, 90, 0, 0.09);
    box-shadow: 0 22px 44px rgba(120, 90, 0, 0.1);
}

.fh-honours__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(240px, 0.8fr);
    gap: 18px;
    padding: 24px;
}

.fh-honours__hero-copy {
    display: grid;
    gap: 10px;
}

.fh-honours__hero-copy h1 {
    margin: 0;
    color: #21170b;
    font-size: clamp(1.85rem, 3vw, 2.6rem);
    line-height: 0.98;
    letter-spacing: -0.03em;
}

.fh-honours__hero-copy p {
    margin: 0;
    color: #65563b;
    font-size: 0.95rem;
    line-height: 1.6;
    max-width: 64ch;
}

.fh-honours__hero-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    align-content: center;
}

.fh-honours__hero-stat {
    display: grid;
    gap: 6px;
    min-height: 92px;
    padding: 16px 18px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-honours__hero-stat span {
    color: #8d6c18;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.fh-honours__hero-stat strong {
    color: #21170b;
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    line-height: 1;
}

.fh-honours__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.fh-honours__card {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.fh-honours__card-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
}

.fh-honours__card-icon {
    width: 70px;
    height: 70px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(120, 90, 0, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.fh-honours__card-icon img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    display: block;
}

.fh-honours__card-copy {
    display: grid;
    gap: 4px;
}

.fh-honours__card-copy h2 {
    margin: 0;
    color: #21170b;
    font-size: 1.05rem;
    line-height: 1.1;
}

.fh-honours__card-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 247, 223, 0.96), rgba(255, 237, 187, 0.94));
    border: 1px solid rgba(120, 90, 0, 0.14);
    color: #7b5f16;
    font-size: 1rem;
    font-weight: 900;
}

.fh-honours__list {
    display: grid;
    gap: 8px;
}

.fh-honours__row {
    display: grid;
    grid-template-columns: minmax(98px, auto) minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 10px 12px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-honours__season {
    color: #8d6c18;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.fh-honours__winner {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: #21170b;
    text-decoration: none;
}

.fh-honours__winner:hover {
    color: #7b5f16;
}

.fh-honours__winner img,
.fh-honours__winner-badge {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
}

.fh-honours__winner img {
    display: block;
    object-fit: contain;
}

.fh-honours__winner-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 245, 205, 0.96);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #7b5f16;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.06em;
}

.fh-honours__winner strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.88rem;
    line-height: 1.15;
}

.fh-honours__empty {
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px dashed rgba(120, 90, 0, 0.18);
    color: #6d5b37;
    font-size: 0.88rem;
    line-height: 1.5;
}

.fh-honours-admin-team {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.fh-honours-admin-team img,
.fh-honours-admin-team__badge {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
}

.fh-honours-admin-team img {
    display: block;
    object-fit: contain;
}

.fh-honours-admin-team__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 245, 205, 0.96);
    color: #7b5f16;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.06em;
}

.fh-myteam-legacy__honours-strip {
    display: grid;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.64);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__honours-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.fh-myteam-legacy__honours-link {
    color: #8d6c18;
    font-size: 0.74rem;
    font-weight: 800;
    text-decoration: none;
}

.fh-myteam-legacy__honours-link:hover {
    color: #6d5315;
}

.fh-myteam-legacy__honours-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.fh-myteam-legacy__honour-chip {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    padding: 8px 10px;
    border-radius: 14px;
    background: rgba(255, 252, 242, 0.92);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__honour-icon {
    width: 34px;
    height: 34px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(120, 90, 0, 0.06);
}

.fh-myteam-legacy__honour-icon img {
    width: 25px;
    height: 25px;
    object-fit: contain;
    display: block;
}

.fh-myteam-legacy__honour-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.fh-myteam-legacy__honour-copy small {
    display: block;
    color: #8d6c18;
    font-size: 0.63rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    line-height: 1.15;
    text-transform: uppercase;
}

.fh-myteam-legacy__honour-copy strong {
    display: block;
    color: #21170b;
    font-size: 1.05rem;
    line-height: 1;
}

.fh-myteam-legacy__honour-years {
    display: block;
    color: #7f7150;
    font-size: 0.58rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.01em;
    white-space: normal;
}

@media (max-width: 1120px) {
    .fh-honours__hero,
    .fh-honours__grid {
        grid-template-columns: 1fr;
    }

    .fh-myteam-legacy__honours-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .fh-honours__hero {
        padding: 18px;
    }

    .fh-honours__hero-stats {
        grid-template-columns: 1fr;
    }

    .fh-honours__card {
        padding: 16px;
    }

    .fh-honours__card-head {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .fh-honours__card-count {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .fh-honours__row {
        grid-template-columns: 1fr;
    }

    .fh-myteam-legacy__honours-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .fh-myteam-legacy__honours-grid {
        grid-template-columns: 1fr;
    }
}

.fh-myteam {
    display: grid;
    gap: 22px;
}

.fh-myteam,
.fh-calendar-module,
.fh-cup-spoof {
    position: relative;
    isolation: isolate;
}

.fh-myteam__hero,
.fh-myteam__empty,
.fh-myteam__board-group,
.fh-myteam__card {
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(255, 215, 110, 0.26), transparent 34%),
        radial-gradient(circle at bottom left, rgba(138, 180, 255, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(255, 251, 240, 0.98), rgba(255, 246, 223, 0.96));
    border: 1px solid rgba(120, 90, 0, 0.09);
    box-shadow: 0 22px 44px rgba(120, 90, 0, 0.1);
}

.fh-myteam__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.8fr);
    gap: 18px;
    padding: 24px;
}

.fh-myteam__hero-main {
    display: grid;
    gap: 16px;
}

.fh-myteam__eyebrow {
    color: #8d6c18;
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.fh-myteam__identity {
    display: flex;
    align-items: center;
    gap: 18px;
}

.fh-myteam__crest {
    width: 92px;
    height: 92px;
    border-radius: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam__crest img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.fh-myteam__crest span {
    color: #7b5f16;
    font-size: 1.1rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-myteam__identity-copy {
    display: grid;
    gap: 8px;
}

.fh-myteam__identity-copy h1,
.fh-myteam__section-head h2,
.fh-myteam__board-head h3 {
    margin: 0;
    color: #21170b;
    line-height: 1.04;
}

.fh-myteam__identity-copy h1 {
    font-size: clamp(2rem, 3vw, 3rem);
}

.fh-myteam__hero-main p,
.fh-myteam__empty p {
    margin: 0;
    color: #5d523e;
    line-height: 1.65;
}

.fh-myteam__hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-myteam__pill {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(120, 90, 0, 0.09);
    color: #6b530f;
    font-size: 0.8rem;
    font-weight: 800;
}

.fh-myteam__hero-side {
    display: grid;
    gap: 12px;
}

.fh-myteam__hero-card {
    display: grid;
    gap: 8px;
    padding: 16px 18px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam__hero-card span,
.fh-myteam__stat span,
.fh-myteam__board-slot-label {
    color: #7a6640;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.03em;
}

.fh-myteam__hero-card strong,
.fh-myteam__stat strong,
.fh-myteam__board-slot strong {
    color: #21170b;
    line-height: 1.15;
}

.fh-myteam__section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 14px;
}

.fh-myteam__board {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.fh-myteam__board-group {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.fh-myteam__board-head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 10px;
}

.fh-myteam__board-count {
    color: #8b6d20;
    font-size: 0.8rem;
    font-weight: 900;
}

.fh-myteam__board-slots {
    display: grid;
    gap: 10px;
}

.fh-myteam__board-slot {
    display: grid;
    gap: 6px;
    min-height: 72px;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam__board-slot.is-filled {
    background: rgba(255, 249, 232, 0.95);
    border-color: rgba(188, 145, 31, 0.2);
}

.fh-myteam__board-player {
    font-size: 0.95rem;
    font-weight: 800;
}

.fh-myteam__board-empty {
    color: #9c8960;
    font-size: 0.92rem;
}

.fh-myteam__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.fh-myteam__card {
    display: grid;
    gap: 16px;
    padding: 18px;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.fh-myteam__card:hover {
    transform: translateY(-2px);
    box-shadow: 0 24px 44px rgba(120, 90, 0, 0.12);
    border-color: rgba(188, 145, 31, 0.26);
}

.fh-myteam__card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.fh-myteam__lna-mark {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.fh-myteam__lna-logo,
.fh-myteam__lna-badge {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
}

.fh-myteam__lna-logo {
    object-fit: contain;
}

.fh-myteam__lna-badge {
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #7b5f16;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.06em;
}

.fh-myteam__lna-code,
.fh-myteam__position {
    color: #7d6218;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fh-myteam__card-main {
    display: grid;
    gap: 6px;
}

.fh-myteam__card-main h3 {
    margin: 0;
    color: #21170b;
    font-size: 1.18rem;
    line-height: 1.12;
}

.fh-myteam__card-main p {
    margin: 0;
    color: #7a6640;
    font-size: 0.88rem;
}

.fh-myteam__player-name {
    font-size: inherit;
    font-weight: 900;
}

.fh-myteam__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.fh-myteam__stat {
    display: grid;
    gap: 6px;
    min-height: 82px;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam__stat strong {
    font-size: 1rem;
    font-weight: 900;
}

.fh-myteam__stat small {
    color: #8b7552;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.35;
}

.fh-myteam__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-myteam__action {
    appearance: none;
    border: 1px solid rgba(120, 90, 0, 0.14);
    background: rgba(255, 255, 255, 0.8);
    color: #5d4710;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.02em;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    cursor: pointer;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}

.fh-myteam__action:hover {
    transform: translateY(-1px);
    border-color: rgba(188, 145, 31, 0.3);
    box-shadow: 0 12px 22px rgba(120, 90, 0, 0.08);
}

.fh-myteam__action.is-active {
    background: linear-gradient(135deg, #f7d368, #f2ba1a);
    border-color: rgba(188, 145, 31, 0.42);
    color: #2f2200;
}

.fh-myteam__empty {
    padding: 24px;
}

.fh-myteam__empty h2 {
    margin: 0 0 10px;
    color: #21170b;
}

@media (max-width: 1100px) {
    .fh-myteam__hero {
        grid-template-columns: 1fr;
    }

    .fh-myteam__board {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fh-myteam__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .fh-myteam__hero,
    .fh-myteam__empty,
    .fh-myteam__board-group,
    .fh-myteam__card {
        border-radius: 22px;
    }

    .fh-myteam__identity {
        align-items: start;
        flex-direction: column;
    }

    .fh-myteam__board {
        grid-template-columns: 1fr;
    }

    .fh-myteam__stats {
        grid-template-columns: 1fr;
    }

    .fh-myteam__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fh-myteam__action {
        justify-content: center;
        text-align: center;
    }
}

.fh-myteam {
    gap: 16px;
}

.fh-myteam__toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.9fr);
    gap: 12px;
    align-items: stretch;
}

.fh-myteam__team,
.fh-myteam__toolbar-stat,
.fh-myteam__savebar,
.fh-myteam__board-group,
.fh-myteam__card,
.fh-myteam__empty {
    border-radius: 22px;
    background:
        radial-gradient(circle at top right, rgba(255, 215, 110, 0.15), transparent 30%),
        linear-gradient(180deg, rgba(255, 251, 240, 0.98), rgba(255, 247, 227, 0.96));
    border: 1px solid rgba(120, 90, 0, 0.08);
    box-shadow: 0 16px 30px rgba(120, 90, 0, 0.08);
}

.fh-myteam__team {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
}

.fh-myteam__crest--compact {
    width: 68px;
    height: 68px;
    border-radius: 18px;
    flex: 0 0 68px;
}

.fh-myteam__team-copy {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.fh-myteam__team-copy h1 {
    margin: 0;
    font-size: clamp(1.5rem, 2.4vw, 2.2rem);
    line-height: 1;
}

.fh-myteam__toolbar-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-myteam__toolbar-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.fh-myteam__toolbar-stat {
    display: grid;
    gap: 6px;
    padding: 12px 14px;
}

.fh-myteam__toolbar-stat span,
.fh-myteam__hint,
.fh-myteam__card-sub,
.fh-myteam__next span,
.fh-myteam__next small {
    color: #7a6640;
    font-size: 0.78rem;
    line-height: 1.35;
}

.fh-myteam__toolbar-stat strong {
    color: #21170b;
    font-size: 0.98rem;
    line-height: 1.1;
}

.fh-myteam__form {
    display: grid;
    gap: 12px;
}

.fh-myteam__savebar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 16px;
}

.fh-myteam__hint {
    margin: 2px 0 0;
}

.fh-myteam__board {
    gap: 12px;
}

.fh-myteam__board--compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fh-myteam__board-group {
    gap: 10px;
    padding: 14px;
}

.fh-myteam__board-head h3 {
    font-size: 1rem;
}

.fh-myteam__board-slot {
    min-height: 58px;
    padding: 10px 12px;
    border-radius: 16px;
}

.fh-myteam__board-player,
.fh-myteam__board-empty {
    font-size: 0.88rem;
}

.fh-myteam__grid {
    gap: 12px;
}

.fh-myteam__grid--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fh-myteam__card {
    gap: 12px;
    padding: 14px;
}

.fh-myteam__card--compact {
    min-width: 0;
}

.fh-myteam__card-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
}

.fh-myteam__card-title {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.fh-myteam__card-title h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.08;
}

.fh-myteam__card-sub {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
    margin-top: 4px;
}

.fh-myteam__next {
    display: grid;
    gap: 2px;
    justify-items: end;
    text-align: right;
}

.fh-myteam__next strong {
    color: #21170b;
    font-size: 0.88rem;
    line-height: 1.15;
}

.fh-myteam__card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-myteam__meta-tag {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #5e4600;
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1;
}

.fh-myteam__picker {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.fh-myteam__picker-input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.fh-myteam__picker-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(120, 90, 0, 0.14);
    background: rgba(255, 255, 255, 0.86);
    color: #5d4710;
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: transform 0.14s ease, box-shadow 0.14s ease, border-color 0.14s ease, background 0.14s ease;
}

.fh-myteam__picker-chip:hover {
    transform: translateY(-1px);
    border-color: rgba(188, 145, 31, 0.28);
    box-shadow: 0 10px 18px rgba(120, 90, 0, 0.07);
}

.fh-myteam__picker-input:checked + .fh-myteam__picker-chip {
    background: linear-gradient(135deg, #f7d368, #f2ba1a);
    border-color: rgba(188, 145, 31, 0.42);
    color: #2f2200;
}

.fh-myteam__lna-logo,
.fh-myteam__lna-badge {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
}

.fh-myteam__lna-code,
.fh-myteam__position {
    font-size: 0.74rem;
}

@media (max-width: 1120px) {
    .fh-myteam__toolbar {
        grid-template-columns: 1fr;
    }

    .fh-myteam__board--compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .fh-myteam__toolbar-stats,
    .fh-myteam__grid--compact,
    .fh-myteam__board--compact {
        grid-template-columns: 1fr;
    }

    .fh-myteam__savebar,
    .fh-myteam__card-head {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: start;
    }

    .fh-myteam__next {
        justify-items: start;
        text-align: left;
    }

    .fh-myteam__team {
        align-items: start;
    }
}

.fh-money--micro {
    min-height: 22px;
    padding: 1px 7px;
    border-radius: 4px;
    box-shadow: inset 0 0 0 1px rgba(242, 255, 220, 0.68), 0 1px 3px rgba(55, 98, 43, 0.08);
}

.fh-money--micro::before {
    background-size: auto 96%;
    opacity: 0.036;
}

.fh-money--micro::after {
    inset: 1px;
}

.fh-money--micro .fh-money__amount {
    font-size: 0.74rem;
    font-weight: 800;
}

.fh-myteam__form--legacy {
    position: relative;
    overflow: hidden;
    gap: 14px;
}

.fh-myteam__form--legacy::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--fh-myteam-team-bg);
    background-repeat: no-repeat;
    background-position: center 46%;
    background-size: min(54vw, 620px);
    opacity: 0.06;
    pointer-events: none;
    filter: saturate(0.95) contrast(1.02);
    z-index: 0;
}

.fh-myteam-legacy__top,
.fh-myteam-legacy__teambox,
.fh-myteam-legacy__sidebox,
.fh-myteam-legacy__line,
.fh-myteam-legacy__overflow,
.fh-myteam-legacy__market-history {
    border-radius: 22px;
    background:
        radial-gradient(circle at top right, rgba(255, 215, 110, 0.24), transparent 30%),
        radial-gradient(circle at bottom left, rgba(138, 180, 255, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(255, 251, 240, 0.98), rgba(255, 247, 227, 0.96));
    border: 1px solid rgba(120, 90, 0, 0.08);
    box-shadow: 0 16px 30px rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__top {
    display: grid;
    grid-template-columns: repeat(6, minmax(126px, 1fr));
    gap: 10px;
    align-items: stretch;
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}

.fh-myteam-legacy__teambox {
    grid-column: span 4;
}

.fh-myteam-legacy__sidebox {
    grid-column: span 2;
}

.fh-myteam-legacy__teambox,
.fh-myteam-legacy__sidebox,
.fh-myteam-legacy__line,
.fh-myteam-legacy__overflow,
.fh-myteam-legacy__market-history {
    position: relative;
    z-index: 1;
    padding: 16px 18px;
}

.fh-myteam-legacy__teambox {
    display: grid;
    gap: 10px;
}

.fh-myteam-legacy__clubpanel {
    display: grid;
    gap: 10px;
    padding: 12px 14px 0;
    border-top: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__clubpanel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.fh-myteam-legacy__clubpanel-summary {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
}

.fh-myteam-legacy__clubpanel-summary span {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #7a6640;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.fh-myteam-legacy__clubpanel-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.fh-myteam-legacy__clubcard {
    display: grid;
    gap: 8px;
    padding: 10px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__clubcard--wide {
    grid-column: 1 / -1;
}

.fh-myteam-legacy__clubcard h3 {
    margin: 0;
    color: #7b5f16;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fh-myteam-legacy__trade-list {
    display: grid;
    gap: 8px;
}

.fh-myteam-legacy__live-auction-list {
    display: grid;
    gap: 8px;
}

.fh-myteam-legacy__live-auction-row {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) auto auto;
    grid-template-areas:
        "player value countdown"
        "drop leader countdown";
    align-items: center;
    gap: 8px;
    min-height: 54px;
    padding: 8px 10px;
    border-radius: 14px;
    background: rgba(255, 251, 239, 0.92);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__live-auction-player {
    grid-area: player;
}

.fh-myteam-legacy__live-auction-drop {
    grid-area: drop;
    display: grid;
    gap: 2px;
    min-width: 0;
}

.fh-myteam-legacy__live-auction-drop small,
.fh-myteam-legacy__live-auction-countdown-wrap small {
    color: #8b7350;
    font-size: 0.64rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.fh-myteam-legacy__live-auction-player,
.fh-myteam-legacy__live-auction-leader {
    min-width: 0;
}

.fh-myteam-legacy__live-auction-player .fh-market-player-mark,
.fh-myteam-legacy__live-auction-drop .fh-market-player-mark {
    display: flex;
    align-items: center;
    max-width: 100%;
    gap: 10px;
    white-space: normal;
}

.fh-myteam-legacy__live-auction-player .fh-market-player-mark__name,
.fh-myteam-legacy__live-auction-drop .fh-market-player-mark__name {
    display: block;
    min-width: 0;
    white-space: normal;
    line-height: 1.08;
}

.fh-myteam-legacy__live-auction-row .fh-market-player-mark__logo,
.fh-myteam-legacy__live-auction-row .fh-market-player-mark__badge,
.fh-myteam-legacy__live-auction-row .fh-market-team-mark__logo,
.fh-myteam-legacy__live-auction-row .fh-market-team-mark__badge {
    transform: scale(1.18);
}

.fh-myteam-legacy__live-auction-row .fh-market-team-mark {
    gap: 9px;
}

.fh-myteam-legacy__live-auction-value {
    grid-area: value;
    color: #23180b;
    font-size: 0.78rem;
    font-weight: 900;
    white-space: nowrap;
    justify-self: end;
}

.fh-myteam-legacy__live-auction-leader {
    grid-area: leader;
    justify-self: end;
}

.fh-myteam-legacy__live-auction-countdown-wrap {
    grid-area: countdown;
    display: grid;
    justify-items: end;
    align-self: stretch;
    align-content: center;
    gap: 2px;
    min-width: 0;
}

.fh-myteam-legacy__live-auction-countdown {
    font-size: 0.78rem;
    font-weight: 900;
}

.fh-myteam-legacy__trade-row {
    display: grid;
    gap: 6px;
    padding: 9px 10px;
    border-radius: 14px;
    background: rgba(255, 251, 239, 0.92);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__trade-top,
.fh-myteam-legacy__trade-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.fh-myteam-legacy__trade-counterparty {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.fh-myteam-legacy__trade-counterparty strong {
    min-width: 0;
    color: #21170b;
    font-size: 0.8rem;
    font-weight: 800;
    line-height: 1.1;
}

.fh-myteam-legacy__trade-dir {
    color: #8b7350;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fh-myteam-legacy__trade-mark,
.fh-myteam-legacy__trade-mark img,
.fh-myteam-legacy__trade-badge {
    width: 22px;
    height: 22px;
}

.fh-myteam-legacy__trade-mark {
    flex: 0 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fh-myteam-legacy__trade-mark img {
    display: block;
    object-fit: contain;
}

.fh-myteam-legacy__trade-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 245, 205, 0.96);
    color: #7b5f16;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.05em;
}

.fh-myteam-legacy__trade-status {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
}

.fh-myteam-legacy__trade-status--pending {
    background: rgba(255, 245, 205, 0.96);
    color: #7b5f16;
}

.fh-myteam-legacy__trade-status--negotiating {
    background: rgba(228, 241, 255, 0.96);
    color: #285f8f;
}

.fh-myteam-legacy__trade-status--accepted {
    background: rgba(231, 250, 225, 0.96);
    color: #276535;
}

.fh-myteam-legacy__trade-status--rejected,
.fh-myteam-legacy__trade-status--cancelled,
.fh-myteam-legacy__trade-status--expired {
    background: rgba(255, 234, 234, 0.96);
    color: #9d2d2d;
}

.fh-myteam-legacy__trade-body {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.fh-myteam-legacy__trade-body span {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.fh-myteam-legacy__trade-player,
.fh-myteam-legacy__trade-cash {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.fh-myteam-legacy__trade-body small,
.fh-myteam-legacy__trade-foot,
.fh-myteam-legacy__trade-empty {
    color: #8b7350;
    font-size: 0.68rem;
    line-height: 1.3;
}

.fh-myteam-legacy__trade-body strong {
    color: #23180b;
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1.2;
}

.fh-myteam-legacy__trade-player-name .fh-player-name {
    display: block;
}

.fh-myteam-legacy__trade-player-team {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    color: #5d5030;
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1.2;
}

.fh-myteam-legacy__trade-player-teammark,
.fh-myteam-legacy__trade-player-teammark img,
.fh-myteam-legacy__trade-player-teambadge {
    width: 16px;
    height: 16px;
}

.fh-myteam-legacy__trade-player-teammark {
    flex: 0 0 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fh-myteam-legacy__trade-player-teammark img {
    display: block;
    object-fit: contain;
}

.fh-myteam-legacy__trade-player-teambadge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 245, 205, 0.96);
    color: #7b5f16;
    font-size: 0.5rem;
    font-weight: 900;
    letter-spacing: 0.05em;
}

.fh-myteam-legacy__trade-player-teamname {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fh-myteam-legacy__trade-player-meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    color: #7a6640;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.03em;
}

.fh-myteam-legacy__trade-player-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__trade-foot {
    align-items: flex-start;
}

.fh-myteam-legacy__trade-note {
    text-align: right;
}

.fh-myteam-legacy__trade-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.fh-myteam-legacy__trade-actions form {
    margin: 0;
}

.fh-myteam-legacy__trade-actions .fh-market-button {
    min-height: 30px;
}

.fh-myteam-legacy__trade-empty {
    font-weight: 700;
}

.fh-myteam-legacy__team-main {
    display: flex;
    align-items: center;
    gap: 22px;
    min-width: 0;
}

.fh-myteam-legacy__team-logo {
    width: 148px;
    height: 148px;
    flex: 0 0 148px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fh-myteam-legacy__team-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.fh-myteam-legacy__team-logo span {
    color: #7b5f16;
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-myteam-legacy__team-copy {
    display: block;
    min-width: 0;
    flex: 1 1 auto;
    padding-top: 0;
}

.fh-myteam-legacy__team-copy h1,
.fh-myteam-legacy__goalie-head h2,
.fh-myteam-legacy__line-head h3 {
    margin: 0;
    color: #21170b;
}

.fh-myteam-legacy__team-copy h1 {
    font-size: clamp(1.68rem, 2.65vw, 2.38rem);
    line-height: 0.95;
    letter-spacing: -0.03em;
}

.fh-myteam-legacy__heading-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(168px, 212px);
    align-items: center;
    gap: 14px;
}

.fh-myteam-legacy__identity {
    display: grid;
    gap: 8px;
    align-content: center;
    min-width: 0;
    flex: 1 1 auto;
}

.fh-myteam-legacy__team-aside {
    display: grid;
    gap: 9px;
    justify-items: center;
    align-content: center;
    min-width: 0;
    width: 100%;
    text-align: center;
    padding-top: 0;
}

.fh-myteam-legacy__team-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
}

.fh-myteam-legacy__team-meta span,
.fh-myteam-legacy__info-pill span,
.fh-myteam-legacy__goalie-meta span,
.fh-myteam-legacy__empty-slot,
.fh-myteam-legacy__goalie-empty {
    color: #7a6640;
    font-size: 0.78rem;
    line-height: 1.35;
}

.fh-myteam-legacy__team-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__budget-chip {
    display: grid;
    gap: 4px;
    justify-items: center;
    width: min(100%, 208px);
    min-width: 0;
    padding: 9px 12px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__budget-chip > span {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.fh-myteam-legacy__info {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.fh-myteam-legacy__info-pill {
    display: grid;
    gap: 6px;
    min-height: 72px;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__info-pill--select {
    align-content: start;
}

.fh-myteam-legacy__info-pill strong,
.fh-myteam-legacy__goalie-mark strong {
    color: #21170b;
}

.fh-myteam-legacy__matchday-form {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: min(100%, 228px);
}

.fh-myteam-legacy__matchday-select {
    width: 100%;
    min-height: 40px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid rgba(120, 90, 0, 0.12);
    background: rgba(255, 255, 255, 0.92);
    color: #2d2310;
    font-size: 0.84rem;
    font-weight: 700;
    outline: none;
}

.fh-myteam-legacy__matchday-select:focus {
    border-color: rgba(188, 145, 31, 0.4);
    box-shadow: 0 0 0 3px rgba(247, 211, 104, 0.18);
}

.fh-myteam-legacy__autosave {
    width: min(100%, 228px);
    min-height: 18px;
    color: #7a6640;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

.fh-myteam-legacy__matchday-note {
    width: min(100%, 228px);
    color: #7a6640;
    font-size: 0.71rem;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
}

.fh-myteam-legacy__autosave[data-state="saving"] {
    color: #9b6e00;
}

.fh-myteam-legacy__autosave[data-state="saved"] {
    color: #206533;
}

.fh-myteam-legacy__autosave[data-state="readonly"] {
    color: #7d6218;
}

.fh-myteam-legacy__autosave[data-state="error"] {
    color: #b42318;
}

.fh-myteam-legacy__sidebox {
    display: grid;
    gap: 10px;
    align-content: start;
}

.fh-myteam-legacy__shootoutbox,
.fh-myteam-legacy__goaliebox {
    display: grid;
    gap: 5px;
    align-content: start;
}

.fh-myteam-legacy__shootoutbox {
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__goaliebox {
    padding-top: 2px;
}

.fh-myteam-legacy__shootout-card {
    display: grid;
    gap: 4px;
    padding: 8px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__shootout-row {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 6px;
    align-items: center;
}

.fh-myteam-legacy__shootout-rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 20px;
    padding: 0 4px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(46, 35, 16, 0.98), rgba(105, 79, 18, 0.94));
    box-shadow: 0 6px 12px rgba(46, 35, 16, 0.16);
    color: #fff7de;
    font-size: 0.62rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.02em;
}

.fh-myteam-legacy__shootout-select,
.fh-myteam-legacy__shootout-player {
    min-height: 30px;
    border-radius: 9px;
    border: 1px solid rgba(120, 90, 0, 0.12);
    background: rgba(255, 255, 255, 0.92);
}

.fh-myteam-legacy__shootout-edit {
    position: relative;
    min-width: 0;
    min-height: 30px;
}

.fh-myteam-legacy__shootout-select {
    position: absolute;
    inset: 0;
    width: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
}

.fh-myteam-legacy__shootout-edit:focus-within .fh-myteam-legacy__shootout-player {
    border-color: rgba(188, 145, 31, 0.4);
    box-shadow: 0 0 0 3px rgba(247, 211, 104, 0.18);
}

.fh-myteam-legacy__shootout-player {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 7px;
}

.fh-myteam-legacy__shootout-mark,
.fh-myteam-legacy__shootout-mark img {
    width: 17px;
    height: 17px;
}

.fh-myteam-legacy__shootout-mark {
    flex: 0 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fh-myteam-legacy__shootout-mark img {
    object-fit: contain;
    display: block;
}

.fh-myteam-legacy__shootout-name {
    flex: 1 1 auto;
    min-width: 0;
    line-height: 1;
}

.fh-myteam-legacy__shootout-name .fh-myteam-legacy__player-text {
    font-size: 0.72rem;
}

.fh-myteam-legacy__shootout-code {
    color: #7d6218;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.fh-myteam-legacy__shootout-empty {
    color: #7a6640;
    font-size: 0.68rem;
    font-weight: 700;
}

.fh-myteam-legacy__goalie-head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 14px;
}

.fh-myteam-legacy__goaliebox .fh-myteam__eyebrow,
.fh-myteam-legacy__shootoutbox .fh-myteam__eyebrow {
    margin: 0;
    font-size: 0.64rem;
}

.fh-myteam-legacy__goalie-mark img,
.fh-myteam-legacy__lna-mark img {
    width: 38px;
    height: 38px;
    object-fit: contain;
    display: block;
}

.fh-myteam-legacy__goalie-empty {
    padding: 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px dashed rgba(120, 90, 0, 0.16);
    text-align: center;
}

.fh-myteam-legacy__matrix-wrap {
    display: grid;
    gap: 12px;
}

.fh-myteam-legacy__line {
    display: grid;
    gap: 12px;
}

.fh-myteam-legacy__line-head {
    display: flex;
    align-items: center;
    gap: 10px;
}

.fh-myteam-legacy__matrix-scroll {
    overflow-x: auto;
    padding-bottom: 2px;
}

.fh-myteam-legacy__matrix {
    display: grid;
    grid-template-columns: repeat(6, minmax(126px, 1fr));
    gap: 10px;
    min-width: 826px;
}

.fh-myteam-legacy__slot {
    position: relative;
    display: flex;
    align-items: stretch;
    min-height: 186px;
    padding: 18px 0 0;
    border-radius: 16px;
    background: transparent;
    border: 0;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.fh-myteam-legacy__slot:not(.is-filled)[data-target-group="line_1"] {
    background: rgba(232, 247, 229, 0.76);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__slot:not(.is-filled)[data-target-group="line_2"] {
    background: rgba(252, 243, 206, 0.8);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__slot:not(.is-filled)[data-target-group="reserve"] {
    background: rgba(252, 228, 228, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__slot.is-drop-target {
    border-color: rgba(188, 145, 31, 0.4);
    box-shadow: inset 0 0 0 1px rgba(255, 220, 124, 0.6);
    background: rgba(255, 247, 221, 0.95);
}

.fh-myteam-legacy__slot-label {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 22px;
    padding: 0 10px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 254, 247, 0.98), rgba(247, 233, 184, 0.96));
    border: 1px solid rgba(168, 131, 24, 0.18);
    box-shadow: 0 4px 10px rgba(120, 90, 0, 0.08);
    color: #7f6114;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    z-index: 2;
}

.fh-myteam-legacy__slot-lock {
    margin-left: 6px;
    font-size: 0.72rem;
    line-height: 1;
}

.fh-myteam-legacy__card {
    --fh-card-accent: rgba(155, 122, 33, 0.18);
    --fh-card-accent-strong: rgba(155, 122, 33, 0.74);
    position: relative;
    width: 100%;
    min-height: 168px;
    display: grid;
    gap: 7px;
    align-content: start;
    justify-items: center;
    padding: 8px 7px 10px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 248, 232, 0.98));
    border: 1px solid rgba(120, 90, 0, 0.08);
    box-shadow:
        0 8px 18px rgba(120, 90, 0, 0.08),
        inset 0 0 0 1px var(--fh-card-accent);
    cursor: grab;
    user-select: none;
    overflow: hidden;
    isolation: isolate;
}

.fh-myteam-legacy__slot.is-frozen-player {
    border-color: rgba(96, 133, 201, 0.32);
    box-shadow: inset 0 0 0 1px rgba(142, 176, 234, 0.26);
}

.fh-myteam-legacy__card::before {
    content: "";
    position: absolute;
    inset: auto -12px -12px auto;
    width: 78px;
    height: 78px;
    background-image: var(--fh-lna-card-bg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0.1;
    filter: saturate(1.08) contrast(1.04);
    pointer-events: none;
    z-index: 0;
}

.fh-myteam-legacy__card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 14px;
    background: linear-gradient(180deg, var(--fh-card-accent-strong), transparent 18%);
    opacity: 0.38;
    pointer-events: none;
    z-index: 0;
}

.fh-myteam-legacy__card > * {
    position: relative;
    z-index: 1;
}

.fh-myteam-legacy__slot[data-target-group="line_1"] .fh-myteam-legacy__card {
    background: linear-gradient(180deg, rgba(248, 255, 246, 0.99), rgba(226, 244, 218, 0.98));
    border-color: rgba(66, 128, 52, 0.14);
}

.fh-myteam-legacy__slot[data-target-group="line_2"] .fh-myteam-legacy__card {
    background: linear-gradient(180deg, rgba(255, 253, 243, 0.99), rgba(248, 236, 181, 0.98));
    border-color: rgba(177, 139, 22, 0.16);
}

.fh-myteam-legacy__card[data-position-group="defense"] {
    --fh-card-accent: rgba(74, 120, 212, 0.22);
    --fh-card-accent-strong: rgba(59, 104, 194, 0.82);
}

.fh-myteam-legacy__card[data-position-group="forward"] {
    --fh-card-accent: rgba(232, 151, 39, 0.2);
    --fh-card-accent-strong: rgba(214, 130, 12, 0.8);
}

.fh-myteam-legacy__card[data-position-group="goalie"] {
    --fh-card-accent: rgba(94, 122, 184, 0.24);
    --fh-card-accent-strong: rgba(82, 111, 176, 0.82);
    background: linear-gradient(180deg, rgba(244, 249, 255, 0.99), rgba(221, 232, 250, 0.98));
    border-color: rgba(80, 108, 171, 0.18);
}

.fh-myteam-legacy__slot[data-target-group="reserve"] .fh-myteam-legacy__card {
    background: linear-gradient(180deg, rgba(255, 247, 247, 0.99), rgba(250, 221, 221, 0.98));
    border-color: rgba(188, 89, 89, 0.16);
    --fh-card-accent: rgba(188, 89, 89, 0.22);
    --fh-card-accent-strong: rgba(188, 89, 89, 0.82);
}

.fh-myteam-legacy__card.is-dragging,
.fh-myteam-legacy__card:active {
    cursor: grabbing;
}

.fh-myteam-legacy__card.is-frozen {
    cursor: default;
    box-shadow:
        0 8px 18px rgba(54, 88, 148, 0.12),
        inset 0 0 0 1px rgba(102, 143, 221, 0.34);
}

.fh-myteam-legacy__card--static,
.fh-myteam-legacy__card--static:active {
    cursor: default;
}

.fh-myteam-legacy__goaliebox .fh-myteam-legacy__card {
    width: 100%;
    justify-self: center;
    min-height: 168px;
}

.fh-myteam-legacy__goaliebox .fh-myteam-legacy__card .fh-myteam-legacy__name {
    min-height: 0;
}

.fh-myteam-legacy__card.is-dragging {
    opacity: 0.62;
}

.fh-myteam-legacy__card-top {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.fh-myteam-legacy__lna-mark,
.fh-myteam-legacy__lna-badge {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fh-myteam-legacy__lna-badge {
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #7b5f16;
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.06em;
}

.fh-myteam-legacy__lna-code,
.fh-myteam-legacy__role {
    color: #7d6218;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.fh-myteam-legacy__lna-code {
    flex: 1 1 auto;
    text-align: left;
}

.fh-myteam-legacy__name {
    width: 100%;
    display: grid;
    gap: 1px;
    text-align: center;
    justify-items: center;
}

.fh-myteam-legacy__first,
.fh-myteam-legacy__last,
.fh-myteam-legacy__single {
    display: block;
    max-width: 100%;
    line-height: 1.05;
}

.fh-myteam-legacy__player-text {
    font-size: 0.9rem;
    font-weight: 900;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.fh-myteam-legacy__player-text--compact {
    font-size: 0.82rem;
}

.fh-myteam-legacy__player-text--compact-2 {
    font-size: 0.76rem;
}

.fh-myteam-legacy__role {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 28px;
    padding: 0 8px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(46, 35, 16, 0.98), rgba(105, 79, 18, 0.94));
    color: #fff7de;
    font-size: 0.82rem;
    letter-spacing: 0.05em;
    box-shadow: 0 6px 12px rgba(46, 35, 16, 0.16);
}

.fh-myteam-legacy__value {
    display: flex;
    justify-content: center;
    width: 100%;
}

.fh-myteam-legacy__stats {
    width: 100%;
    display: grid;
    gap: 4px;
    text-align: center;
}

.fh-myteam-legacy__stats span {
    color: #6f5a33;
    font-size: 0.72rem;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fh-myteam-legacy__stats strong {
    color: #21170b;
}

.fh-myteam-legacy__freeze-note {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    padding: 0 9px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(229, 240, 255, 0.96), rgba(198, 220, 252, 0.92));
    border: 1px solid rgba(92, 132, 205, 0.28);
    color: #345a9a;
    font-size: 0.63rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.fh-myteam-legacy__empty-slot {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    border: 1px dashed rgba(120, 90, 0, 0.16);
}

.fh-myteam-legacy__overflow-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-myteam-legacy__overflow-card {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__overflow-name {
    font-size: 0.82rem;
    font-weight: 800;
}

.fh-myteam-legacy__market-history {
    display: grid;
    gap: 12px;
}

.fh-myteam-legacy__market-history-toggle {
    display: grid;
    gap: 10px;
}

.fh-myteam-legacy__market-history-toggle summary {
    list-style: none;
}

.fh-myteam-legacy__market-history-toggle summary::-webkit-details-marker {
    display: none;
}

.fh-myteam-legacy__market-history-summary {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.fh-myteam-legacy__market-history-summary h3 {
    margin: 0;
}

.fh-myteam-legacy__market-history-summary strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    min-height: 26px;
    margin-left: auto;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #21170b;
    font-size: 0.76rem;
    font-weight: 900;
}

.fh-myteam-legacy__market-history-summary::after {
    content: "+";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(120, 90, 0, 0.08);
    color: #7b5f16;
    font-size: 0.9rem;
    font-weight: 900;
    line-height: 1;
}

.fh-myteam-legacy__market-history-toggle[open] .fh-myteam-legacy__market-history-summary::after {
    content: "−";
}

.fh-myteam-legacy__market-history-list {
    display: grid;
    gap: 8px;
}

.fh-myteam-legacy__history-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1.5fr) minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 7px 10px;
    border-radius: 16px;
    background: rgba(255, 251, 239, 0.92);
    border: 1px solid rgba(120, 90, 0, 0.08);
}

.fh-myteam-legacy__history-type {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 245, 205, 0.96);
    color: #7b5f16;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.fh-myteam-legacy__history-player {
    min-width: 0;
}

.fh-myteam-legacy__history-counterparty {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    color: #7a6640;
    font-size: 0.7rem;
    font-weight: 700;
}

.fh-myteam-legacy__history-counterparty small {
    color: #8b7350;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.fh-myteam-legacy__history-value {
    color: #23180b;
    font-size: 0.76rem;
    font-weight: 900;
}

.fh-myteam-legacy__history-date {
    color: #7a6640;
    font-size: 0.7rem;
    font-weight: 700;
    white-space: nowrap;
}

@media (max-width: 1480px) {
    .fh-myteam-legacy__team-logo {
        width: 136px;
        height: 136px;
        flex-basis: 136px;
    }

    .fh-myteam-legacy__heading-row {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 12px;
    }

    .fh-myteam-legacy__team-aside {
        width: 100%;
        justify-items: start;
        text-align: left;
    }

    .fh-myteam-legacy__budget-chip {
        justify-items: start;
        width: min(100%, 192px);
    }

    .fh-myteam-legacy__matchday-form,
    .fh-myteam-legacy__autosave,
    .fh-myteam-legacy__matchday-note {
        width: 100%;
        justify-content: flex-start;
        text-align: left;
    }
}

@media (max-width: 1240px) {
    .fh-myteam-legacy__top {
        grid-template-columns: 1fr;
    }

    .fh-myteam-legacy__clubpanel-grid {
        grid-template-columns: 1fr;
    }

    .fh-myteam-legacy__team-logo {
        width: 118px;
        height: 118px;
        flex-basis: 118px;
    }

    .fh-myteam-legacy__budget-chip {
        width: 100%;
    }
}

@media (max-width: 760px) {
    .fh-myteam__form--legacy::before {
        background-size: min(88vw, 520px);
        background-position: center 34%;
        opacity: 0.055;
    }

    .fh-myteam-legacy__teambox,
    .fh-myteam-legacy__sidebox,
    .fh-myteam-legacy__line,
    .fh-myteam-legacy__overflow,
    .fh-myteam-legacy__market-history {
        padding: 14px;
        border-radius: 20px;
    }

    .fh-myteam-legacy__team-main {
        align-items: start;
    }

    .fh-myteam-legacy__team-logo {
        width: 88px;
        height: 88px;
        flex-basis: 88px;
    }

    .fh-myteam-legacy__heading-row {
        gap: 10px;
    }

    .fh-myteam-legacy__clubpanel {
        padding-top: 10px;
    }

    .fh-myteam-legacy__clubpanel-head,
    .fh-myteam-legacy__trade-top,
    .fh-myteam-legacy__trade-foot {
        align-items: flex-start;
        flex-direction: column;
    }

    .fh-myteam-legacy__trade-body {
        grid-template-columns: 1fr;
    }

    .fh-myteam-legacy__live-auction-row {
        grid-template-columns: 1fr;
        grid-template-areas:
            "player"
            "drop"
            "value"
            "leader"
            "countdown";
        align-items: start;
    }

    .fh-myteam-legacy__live-auction-countdown-wrap {
        justify-items: start;
    }

    .fh-myteam-legacy__info {
        grid-template-columns: 1fr;
    }

    .fh-myteam-legacy__goalie-head {
        flex-direction: column;
        align-items: start;
    }

    .fh-myteam-legacy__history-row {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 6px;
    }

    .fh-myteam-legacy__market-history-summary {
        flex-wrap: wrap;
    }

    .fh-myteam-legacy__market-history-summary strong {
        margin-left: 0;
    }

    .fh-myteam-legacy__matrix {
        min-width: 764px;
        grid-template-columns: repeat(6, minmax(116px, 1fr));
    }

    .fh-myteam-legacy__slot {
        min-height: 174px;
    }

    .fh-myteam-legacy__player-text {
        font-size: 0.84rem;
    }
}

.fh-calendar-module {
    display: grid;
    gap: 18px;
}

.fh-calendar-module__intro,
.fh-calendar-empty {
    padding: 22px 24px;
    border-radius: 24px;
    background:
        radial-gradient(circle at 88% 18%, rgba(240, 188, 33, 0.38), transparent 36%),
        radial-gradient(circle at bottom left, rgba(135, 194, 82, 0.2), transparent 34%),
        radial-gradient(circle at 12% 22%, rgba(138, 180, 255, 0.12), transparent 22%),
        linear-gradient(180deg, #fffef7 0%, #fff3cf 100%);
    border: 1px solid rgba(166, 124, 0, 0.16);
    box-shadow: 0 20px 44px rgba(120, 90, 0, 0.1);
}

.fh-calendar-module__intro {
    display: grid;
    grid-template-columns: minmax(180px, max-content) minmax(0, 1fr) max-content;
    align-items: center;
    gap: 16px;
}

.fh-calendar-module__eyebrow {
    flex: 0 0 auto;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 800;
    color: #8b6d00;
}

.fh-calendar-module__meta {
    display: flex;
    min-width: 0;
    flex-wrap: nowrap;
    gap: 8px;
    margin-top: 0;
    justify-content: center;
}

.fh-calendar-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(166, 124, 0, 0.18);
    color: #56441b;
    font-size: 0.87rem;
    font-weight: 700;
    box-shadow: 0 6px 14px rgba(120, 90, 0, 0.06);
}

.fh-calendar-pill--accent {
    background: linear-gradient(180deg, #ffe788 0%, #efbe2d 100%);
    color: #5d4200;
}

.fh-calendar-module__toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 0;
}

.fh-calendar-module__updated {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 0;
}

.fh-calendar-selector {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
}

.fh-calendar-selector label {
    font-size: 0.84rem;
    font-weight: 800;
    color: #6a5521;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.fh-calendar-selector select,
.fh-calendar-selector button {
    min-height: 42px;
    min-width: 180px;
    padding: 0 14px;
    border-radius: 14px;
    border: 1px solid rgba(166, 124, 0, 0.24);
    background: linear-gradient(180deg, #fffdf8 0%, #fff4d6 100%);
    color: #43361b;
    font-size: 0.95rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(120, 90, 0, 0.06);
}

.fh-calendar-module__date {
    font-size: 0.92rem;
    font-weight: 700;
    color: #6e5b2a;
}

.fh-calendar-module__lead,
.fh-calendar-empty p {
    margin: 14px 0 0;
    color: #5d523d;
    line-height: 1.65;
}

.fh-calendar-empty h2 {
    margin: 0;
    font-size: 1.4rem;
    color: #3f3219;
}

.fh-calendar-matchlist {
    display: grid;
    gap: 18px;
}

.fh-calendar-match-card {
    padding: 18px;
    border-radius: 26px;
    background:
        radial-gradient(circle at top center, rgba(240, 191, 41, 0.28), transparent 40%),
        radial-gradient(circle at bottom right, rgba(113, 183, 83, 0.18), transparent 34%),
        radial-gradient(circle at 10% 18%, rgba(138, 180, 255, 0.12), transparent 22%),
        linear-gradient(180deg, #fffef9 0%, #fff1c9 100%);
    border: 1px solid rgba(166, 124, 0, 0.16);
    box-shadow: 0 20px 40px rgba(120, 90, 0, 0.09);
}

.fh-calendar-match-card__header {
    display: grid;
    gap: 10px;
}

.fh-calendar-match-card__teams {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 110px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}

.fh-calendar-teamcard {
    display: flex;
    align-items: center;
    min-height: 78px;
    padding: 10px 14px;
    border-radius: 18px;
    border: 1px solid rgba(160, 121, 12, 0.18);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.97) 0%, rgba(255, 244, 214, 0.97) 100%);
    box-shadow: 0 10px 20px rgba(120, 90, 0, 0.08);
}

.fh-calendar-teamcard::before {
    display: none;
}

.fh-calendar-teamcard::after {
    display: none;
}

.fh-calendar-teamcard > * {
    position: static;
}

.fh-calendar-teamcard--home {
    background:
        radial-gradient(circle at 18% 22%, rgba(255, 255, 255, 0.24), transparent 22%),
        linear-gradient(180deg, rgba(244, 253, 235, 0.99) 0%, rgba(212, 238, 189, 0.98) 100%);
}

.fh-calendar-teamcard--away {
    background:
        radial-gradient(circle at 82% 22%, rgba(255, 255, 255, 0.24), transparent 22%),
        linear-gradient(180deg, rgba(255, 251, 236, 0.99) 0%, rgba(247, 224, 169, 0.98) 100%);
}

.fh-calendar-teamcard--match.fh-calendar-teamcard--home,
.fh-calendar-teamcard--match.fh-calendar-teamcard--away {
    border-color: rgba(173, 130, 10, 0.24);
    background:
        radial-gradient(circle at 20% 22%, rgba(255, 255, 255, 0.28), transparent 22%),
        linear-gradient(180deg, rgba(255, 250, 232, 0.99) 0%, rgba(245, 222, 164, 0.98) 100%);
    box-shadow: 0 10px 20px rgba(120, 90, 0, 0.1);
}

.fh-calendar-teamcard--match.fh-calendar-teamcard--away {
    background:
        radial-gradient(circle at 80% 22%, rgba(255, 255, 255, 0.28), transparent 22%),
        linear-gradient(180deg, rgba(255, 250, 232, 0.99) 0%, rgba(245, 222, 164, 0.98) 100%);
}

.fh-calendar-teamcard--match.fh-calendar-teamcard--winner {
    border-color: rgba(84, 146, 49, 0.34);
    background:
        radial-gradient(circle at 22% 20%, rgba(255, 255, 255, 0.32), transparent 20%),
        linear-gradient(180deg, rgba(238, 252, 223, 0.99) 0%, rgba(193, 231, 157, 0.98) 100%);
    box-shadow: 0 12px 22px rgba(74, 126, 42, 0.16);
}

.fh-calendar-teamcard--match.fh-calendar-teamcard--winner.fh-calendar-teamcard--away {
    background:
        radial-gradient(circle at 78% 20%, rgba(255, 255, 255, 0.32), transparent 20%),
        linear-gradient(180deg, rgba(238, 252, 223, 0.99) 0%, rgba(193, 231, 157, 0.98) 100%);
}

.fh-calendar-teamcard__link {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    grid-template-areas: "logo copy";
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: inherit;
    width: 100%;
    min-height: 0;
    flex: 1 1 auto;
}

.fh-calendar-teamcard--away .fh-calendar-teamcard__link {
    grid-template-columns: minmax(0, 1fr) 76px;
    grid-template-areas: "copy logo";
}

.fh-calendar-teamcard--home .fh-calendar-team-mark {
    grid-area: logo;
    justify-self: start;
    align-self: center;
}

.fh-calendar-teamcard--away .fh-calendar-team-mark {
    grid-area: logo;
    justify-self: end;
    align-self: center;
}

.fh-calendar-team-mark,
.fh-calendar-team-mark img {
    width: 76px;
    height: 76px;
}

.fh-calendar-team-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 0;
    overflow: hidden;
    box-shadow: none;
    transform: translateZ(0);
}

.fh-calendar-team-mark img {
    object-fit: contain;
}

.fh-calendar-team-mark--badge {
    font-size: 0.82rem;
    font-weight: 900;
    color: #725800;
    border-radius: 16px;
    background:
        radial-gradient(circle at 35% 30%, rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.16) 58%, rgba(255, 255, 255, 0) 100%);
    border: 1px solid rgba(137, 105, 13, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.fh-calendar-teamcard__copy {
    grid-area: copy;
    display: flex;
    align-items: center;
    min-width: 0;
    width: 100%;
    min-height: 0;
}

.fh-calendar-teamcard__copy::before {
    display: none;
}

.fh-calendar-teamcard__copy strong {
    display: block;
    width: 100%;
    font-size: clamp(1.02rem, 1.55vw, 1.34rem);
    line-height: 1;
    color: #241a08;
    font-weight: 900;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.95),
        0 2px 0 rgba(245, 226, 170, 0.78),
        0 3px 0 rgba(196, 158, 53, 0.34),
        0 8px 14px rgba(75, 56, 9, 0.12),
        0 0 16px rgba(255, 243, 196, 0.26);
    -webkit-text-stroke: 0.25px rgba(92, 67, 9, 0.22);
}

.fh-calendar-teamcard__copy small {
    display: none;
}

.fh-calendar-teamcard--away .fh-calendar-teamcard__copy {
    text-align: right;
    justify-self: end;
    align-self: center;
}

.fh-calendar-teamcard--away .fh-calendar-teamcard__copy::before {
    display: none;
}

.fh-calendar-teamcard--away .fh-calendar-teamcard__copy strong {
    text-align: right;
}

.fh-calendar-teamcard--away .fh-calendar-teamcard__copy small {
    display: none;
}

.fh-calendar-match-card__scorebox {
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 4px;
    width: 110px;
    min-height: 78px;
    padding: 10px 8px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 250, 225, 0.98) 0%, rgba(244, 210, 105, 0.96) 100%);
    border: 1px solid rgba(166, 124, 0, 0.2);
    box-shadow: 0 10px 20px rgba(120, 90, 0, 0.08);
    text-align: center;
}

.fh-calendar-match-card__scorebox--scheduled {
    background: linear-gradient(180deg, rgba(255, 236, 236, 0.98) 0%, rgba(220, 79, 79, 0.95) 100%);
    border-color: rgba(142, 18, 18, 0.22);
    box-shadow: 0 10px 20px rgba(160, 40, 40, 0.14);
}

.fh-calendar-match-card__scorebox--live {
    background: linear-gradient(180deg, rgba(255, 250, 225, 0.98) 0%, rgba(244, 210, 105, 0.96) 100%);
    border-color: rgba(166, 124, 0, 0.2);
    box-shadow: 0 10px 20px rgba(120, 90, 0, 0.08);
}

.fh-calendar-match-card__scorebox--completed {
    background: linear-gradient(180deg, rgba(231, 255, 235, 0.98) 0%, rgba(94, 190, 110, 0.95) 100%);
    border-color: rgba(34, 123, 52, 0.22);
    box-shadow: 0 10px 20px rgba(34, 123, 52, 0.12);
}

.fh-calendar-match-card__scorebox strong {
    font-size: 1.38rem;
    line-height: 1;
    color: #5e4300;
    width: 100%;
    text-align: center;
}

.fh-calendar-match-card__scorebox--scheduled strong,
.fh-calendar-match-card__scorebox--scheduled small,
.fh-calendar-match-card__scorebox--scheduled .fh-calendar-match-card__index {
    color: #7c1111;
}

.fh-calendar-match-card__scorebox--completed strong,
.fh-calendar-match-card__scorebox--completed small,
.fh-calendar-match-card__scorebox--completed .fh-calendar-match-card__index {
    color: #175527;
}

.fh-calendar-match-card__scorebox small,
.fh-calendar-match-card__index {
    font-size: 0.74rem;
    font-weight: 800;
    color: #745400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    width: 100%;
    text-align: center;
}

.fh-calendar-match-card__toggle {
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(113, 82, 0, 0.22);
    background: rgba(255, 255, 255, 0.92);
    color: #694b00;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 0 6px 14px rgba(120, 90, 0, 0.08);
}

.fh-calendar-match-card__toggle:hover {
    background: #fff7dc;
}

.fh-calendar-match-card__toggle.is-open {
    background: linear-gradient(180deg, #fff4c8 0%, #f2d46d 100%);
}

.fh-calendar-match-card__details[hidden] {
    display: none !important;
}

.fh-calendar-match-card__details {
    display: grid;
    gap: 14px;
    margin-top: 4px;
}

.fh-calendar-match-card__goalies {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

.fh-calendar-match-card__goalie-slot {
    display: flex;
    align-items: stretch;
}

.fh-calendar-match-card__goalie-spacer {
    display: none;
}

.fh-calendar-goalie {
    display: grid;
    grid-template-columns: 28px 24px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    min-height: 52px;
    padding: 0 14px;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(232, 241, 255, 0.98) 0%, rgba(196, 217, 248, 0.97) 100%);
    border: 1px solid rgba(88, 122, 194, 0.24);
    box-shadow: none;
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
}

.fh-calendar-goalie--empty {
    background: rgba(255, 255, 255, 0.7);
    border-style: dashed;
}

.fh-calendar-goalie__role {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    grid-column: 1;
    min-width: 34px;
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 251, 235, 0.94);
    border: 1px solid rgba(141, 109, 0, 0.16);
    color: #876913;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-calendar-goalie__mark,
.fh-calendar-goalie__mark img {
    grid-column: 2;
    width: 24px;
    height: 24px;
}

.fh-calendar-goalie__mark img {
    object-fit: contain;
}

.fh-calendar-goalie__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #715600;
    font-size: 0.66rem;
    font-weight: 900;
}

.fh-calendar-goalie__name {
    grid-column: 3;
    font-size: 0.9rem;
    font-weight: 800;
    color: #24365f;
    min-width: 0;
    line-height: 1.05;
}

.fh-calendar-goalie__score,
.fh-calendar-player__score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 32px;
    padding: 0 8px;
    border-radius: 10px;
    border: 1px solid rgba(120, 90, 0, 0.18);
    background: #fff;
    color: #7c5f0a;
    font-size: 0.84rem;
    font-weight: 900;
    cursor: pointer;
}

.fh-calendar-goalie__score {
    grid-column: 4;
    justify-self: end;
}

.fh-calendar-match-card__goalie-slot--away .fh-calendar-goalie__role {
    grid-column: 1;
}

.fh-calendar-match-card__goalie-slot--away .fh-calendar-goalie__mark,
.fh-calendar-match-card__goalie-slot--away .fh-calendar-goalie__mark img {
    grid-column: 2;
}

.fh-calendar-match-card__goalie-slot--away .fh-calendar-goalie__name {
    grid-column: 3;
    text-align: left;
}

.fh-calendar-match-card__goalie-slot--away .fh-calendar-goalie__score {
    grid-column: 4;
    justify-self: end;
}

.fh-calendar-goalie__score:hover,
.fh-calendar-player__score:hover {
    background: #fff4c2;
}

.fh-calendar-match-card__body {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px;
    margin-top: 0;
    align-items: start;
}

.fh-calendar-match-card__body::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 10px;
    bottom: 10px;
    width: 1px;
    transform: translateX(-50%);
    background: linear-gradient(180deg, rgba(141, 109, 0, 0), rgba(141, 109, 0, 0.24), rgba(141, 109, 0, 0));
}

.fh-calendar-match-card__shootout {
    margin-top: 14px;
    display: grid;
    gap: 8px;
    padding-top: 12px;
    border-top: 1px solid rgba(171, 137, 46, 0.14);
}

.fh-calendar-match-card__shootout-title {
    font-size: 0.8rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #7a5c15;
}

.fh-calendar-match-card__shootout-list {
    display: grid;
    gap: 6px;
}

.fh-calendar-match-card__shootout-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.fh-calendar-match-card__shootout-column {
    display: grid;
    gap: 6px;
}

.fh-calendar-match-card__shootout-cluster {
    display: grid;
    gap: 0;
}

.fh-calendar-match-card__shootout-cluster--first-three {
    padding: 8px;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 251, 235, 0.96) 0%, rgba(252, 244, 213, 0.92) 100%);
    border: 1px solid rgba(171, 137, 46, 0.14);
}

.fh-calendar-match-card__shootout-cluster--sudden {
    margin-top: 6px;
}

.fh-calendar-match-card__shootout-cluster--first-three .fh-calendar-match-card__shootout-list {
    gap: 4px;
}

.fh-calendar-match-card__shootout-column-title {
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7a5c15;
}

.fh-calendar-match-card__shootout-entry {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    min-height: 38px;
    padding: 0 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.68);
    border: 1px solid rgba(171, 137, 46, 0.1);
}

.fh-calendar-match-card__shootout-entry.is-active {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(250, 248, 242, 0.92) 100%);
    border-color: rgba(171, 137, 46, 0.12);
}

.fh-calendar-match-card__shootout-entry.is-pending {
    opacity: 0.42;
}

.fh-calendar-match-card__shootout-entry.fh-calendar-match-card__shootout-entry--decisive-player {
    background: linear-gradient(180deg, rgba(208, 247, 218, 1) 0%, rgba(174, 231, 189, 0.98) 100%);
    border-color: rgba(23, 118, 52, 0.42);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.6), 0 10px 22px rgba(33, 128, 61, 0.16);
}

.fh-calendar-match-card__shootout-entry.is-first-three {
    border-radius: 10px;
}

.fh-calendar-match-card__shootout-entry--subtotal {
    grid-template-columns: minmax(0, 1fr) auto;
    padding-left: 12px;
}

.fh-calendar-match-card__shootout-entry.is-subtotal {
    background: linear-gradient(180deg, rgba(255, 239, 190, 0.98) 0%, rgba(248, 225, 159, 0.94) 100%);
    border-color: rgba(171, 137, 46, 0.24);
}

.fh-calendar-match-card__shootout-entry.is-subtotal .fh-calendar-match-card__shootout-name,
.fh-calendar-match-card__shootout-entry.is-subtotal .fh-calendar-match-card__shootout-score {
    color: #6b4b05;
}

.fh-calendar-match-card__shootout-entry.is-subtotal.is-subtotal-winner {
    background: linear-gradient(180deg, rgba(208, 247, 218, 1) 0%, rgba(174, 231, 189, 0.98) 100%);
    border-color: rgba(23, 118, 52, 0.42);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.6), 0 10px 22px rgba(33, 128, 61, 0.16);
}

.fh-calendar-match-card__shootout-entry.is-subtotal.is-subtotal-winner .fh-calendar-match-card__shootout-name,
.fh-calendar-match-card__shootout-entry.is-subtotal.is-subtotal-winner .fh-calendar-match-card__shootout-score {
    color: #0f6a2f;
}

.fh-calendar-match-card__shootout-rank {
    color: #7a5c15;
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fh-calendar-match-card__shootout-player {
    min-width: 0;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
}

.fh-calendar-match-card__shootout-logo,
.fh-calendar-match-card__shootout-badge {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fh-calendar-match-card__shootout-logo {
    object-fit: contain;
}

.fh-calendar-match-card__shootout-badge {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(171, 137, 46, 0.18);
    color: #7a5c15;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.04em;
}

.fh-calendar-match-card__shootout-name {
    min-width: 0;
    font-size: 0.82rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fh-calendar-match-card__shootout-score {
    font-size: 0.82rem;
    font-weight: 900;
    color: #6f5310;
    white-space: nowrap;
}

.fh-calendar-match-card__shootout-note {
    font-size: 0.76rem;
    font-weight: 700;
    color: #7a5c15;
}

.fh-calendar-match-card__team {
    display: grid;
    gap: 12px;
    padding: 14px;
    border-radius: 22px;
    border: 1px solid rgba(166, 124, 0, 0.12);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

.fh-calendar-match-card__team--home {
    background:
        linear-gradient(180deg, rgba(239, 250, 231, 0.96) 0%, rgba(249, 253, 240, 0.9) 100%);
}

.fh-calendar-match-card__team--away {
    background:
        linear-gradient(180deg, rgba(255, 247, 222, 0.96) 0%, rgba(255, 252, 241, 0.9) 100%);
}

.fh-calendar-line {
    display: grid;
    gap: 8px;
}

.fh-calendar-line__label {
    font-size: 0.76rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: #7f6417;
}

.fh-calendar-line__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(82px, 1fr));
    gap: 8px;
}

.fh-calendar-player {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 7px;
    min-height: 88px;
    padding: 12px 10px 10px;
    border-radius: 18px;
    border: 1px solid rgba(141, 109, 0, 0.12);
    background: rgba(255, 255, 255, 0.86);
    overflow: hidden;
    --fh-calendar-card-accent: rgba(141, 109, 0, 0.18);
    --fh-calendar-card-accent-strong: rgba(141, 109, 0, 0.74);
    --fh-calendar-lna-card-bg: none;
}

.fh-calendar-player::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(180deg, var(--fh-calendar-card-accent-strong), transparent 19%);
    opacity: 0.22;
    pointer-events: none;
    z-index: 0;
}

.fh-calendar-player::after {
    content: "";
    position: absolute;
    inset: auto -10px -10px auto;
    width: 72px;
    height: 72px;
    background-image: var(--fh-calendar-lna-card-bg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0.08;
    filter: saturate(1.06) contrast(1.02);
    pointer-events: none;
    z-index: 0;
}

.fh-calendar-player > * {
    position: relative;
    z-index: 1;
}

.fh-calendar-player--line1 {
    background: linear-gradient(180deg, rgba(229, 248, 214, 0.99) 0%, rgba(245, 253, 236, 0.98) 100%);
    border-color: rgba(111, 176, 61, 0.42);
}

.fh-calendar-player--line2 {
    background: linear-gradient(180deg, rgba(255, 241, 193, 0.99) 0%, rgba(255, 250, 228, 0.98) 100%);
    border-color: rgba(205, 160, 40, 0.4);
}

.fh-calendar-player--reserve {
    background: linear-gradient(180deg, rgba(255, 228, 228, 0.98) 0%, rgba(255, 244, 244, 0.98) 100%);
    border-color: rgba(214, 88, 88, 0.34);
}

.fh-calendar-player.is-empty {
    place-items: center;
    justify-content: center;
    min-height: 72px;
    background: rgba(255, 255, 255, 0.62);
    border-style: dashed;
}

.fh-calendar-player.is-empty::before {
    display: none;
}

.fh-calendar-player.is-empty::after {
    display: none;
}

.fh-calendar-player--defense {
    --fh-calendar-card-accent: rgba(74, 120, 212, 0.2);
    --fh-calendar-card-accent-strong: rgba(59, 104, 194, 0.82);
    background: linear-gradient(180deg, rgba(244, 249, 255, 0.99), rgba(221, 232, 250, 0.98));
    border-color: rgba(80, 108, 171, 0.18);
}

.fh-calendar-player--forward {
    --fh-calendar-card-accent: rgba(232, 151, 39, 0.2);
    --fh-calendar-card-accent-strong: rgba(214, 130, 12, 0.8);
    background: linear-gradient(180deg, rgba(255, 252, 243, 0.99), rgba(248, 236, 181, 0.98));
    border-color: rgba(177, 139, 22, 0.16);
}

.fh-calendar-player__top {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.fh-calendar-player__slot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 251, 235, 0.94);
    border: 1px solid rgba(141, 109, 0, 0.16);
    color: #876913;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.fh-calendar-player__main {
    position: relative;
    display: grid;
    gap: 0;
    justify-items: center;
    text-align: center;
    align-content: center;
    min-height: 44px;
    padding-bottom: 18px;
}

.fh-calendar-player__mark,
.fh-calendar-player__mark img {
    width: 28px;
    height: 28px;
}

.fh-calendar-player__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.fh-calendar-player__mark--empty {
    opacity: 0;
}

.fh-calendar-player__mark img {
    object-fit: contain;
}

.fh-calendar-player__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #fff;
    color: #705500;
    font-size: 0.68rem;
    font-weight: 900;
}

.fh-calendar-player__name {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
}

.fh-calendar-player__name-text {
    font-size: 0.88rem;
    font-weight: 800;
    line-height: 1.08;
    color: #3a2e17;
    text-align: center;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    text-wrap: balance;
}

.fh-calendar-player__name-text--compact {
    font-size: 0.78rem;
}

.fh-calendar-player__name-text--compact-2 {
    font-size: 0.68rem;
    line-height: 1.04;
    letter-spacing: -0.01em;
}

.fh-calendar-player__shootout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    min-width: 28px;
    height: 16px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(255, 250, 235, 0.66);
    border: 1px solid rgba(125, 98, 24, 0.16);
    color: rgba(108, 84, 22, 0.78);
    font-size: 0.56rem;
    font-weight: 900;
    letter-spacing: 0.03em;
    box-shadow: none;
}

.fh-calendar-player__score {
    justify-self: center;
}

.fh-calendar-player__empty {
    font-size: 0.82rem;
    font-weight: 700;
    color: #918066;
}

.fh-calendar-detail-sheet__head {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 12px;
    align-items: center;
}

.fh-calendar-detail-sheet__mark,
.fh-calendar-detail-sheet__mark img {
    width: 38px;
    height: 38px;
}

.fh-calendar-detail-sheet__mark img {
    object-fit: contain;
}

.fh-calendar-detail-sheet__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: #fff;
    color: #715400;
    font-size: 0.8rem;
    font-weight: 900;
}

.fh-calendar-detail-sheet__identity {
    display: grid;
    gap: 3px;
}

.fh-calendar-detail-sheet__identity strong {
    font-size: 1rem;
    line-height: 1.1;
}

.fh-calendar-detail-sheet__identity span {
    font-size: 0.82rem;
    font-weight: 700;
    color: #786341;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.fh-calendar-detail-sheet__role {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 20px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 244, 214, 0.92);
    border: 1px solid rgba(141, 109, 0, 0.16);
    color: #735600;
    font-style: normal;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
}

.fh-calendar-detail-sheet__score {
    font-size: 1.45rem;
    font-weight: 900;
    color: #735600;
}

.fh-calendar-detail-sheet__stats {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.fh-calendar-detail-sheet__stat-row {
    display: grid;
    gap: 8px;
}

.fh-calendar-detail-sheet__stat-row--scoring {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.fh-calendar-detail-sheet__stat-row--info {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fh-calendar-detail-sheet__stat-chip {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 48px;
    padding: 7px 8px 8px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(141, 109, 0, 0.12);
    text-align: center;
}

.fh-calendar-detail-sheet__stat-chip small {
    font-size: 0.72rem;
    font-weight: 800;
    color: #8a6d1d;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1;
    white-space: nowrap;
}

.fh-calendar-detail-sheet__stat-chip strong {
    font-size: 0.92rem;
    color: #342812;
    line-height: 1.05;
}

.fh-calendar-detail-sheet__empty,
.fh-calendar-detail-sheet__note {
    margin-top: 14px;
    color: #64553a;
    line-height: 1.55;
}

.fh-calendar-popover[hidden] {
    display: none !important;
}

.fh-calendar-popover {
    position: fixed;
    inset: 0;
    z-index: 99999;
    pointer-events: none;
}

.fh-calendar-popover__panel {
    position: fixed;
    width: min(460px, calc(100vw - 24px));
    padding: 16px;
    border-radius: 20px;
    background:
        radial-gradient(circle at top right, rgba(230, 197, 93, 0.16), transparent 36%),
        linear-gradient(180deg, #fffef8 0%, #fff8e8 100%);
    border: 1px solid rgba(141, 109, 0, 0.14);
    box-shadow: 0 18px 42px rgba(15, 10, 0, 0.22);
    pointer-events: auto;
}

.fh-calendar-popover__body {
    padding-right: 0;
}

@media (max-width: 640px) {
    .fh-calendar-detail-sheet__stat-row--scoring {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .fh-calendar-detail-sheet__stat-row--info {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.fh-cup-spoof {
    display: grid;
    gap: 22px;
}

.fh-cup-spoof__intro,
.fh-cup-spoof__empty {
    padding: 24px 28px;
    border-radius: 28px;
    border: 1px solid rgba(170, 133, 26, 0.16);
    background:
        radial-gradient(circle at top right, rgba(226, 194, 90, 0.26), transparent 34%),
        radial-gradient(circle at bottom left, rgba(138, 180, 255, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(255, 254, 248, 0.98) 0%, rgba(255, 248, 227, 0.96) 100%);
    box-shadow: 0 20px 40px rgba(31, 22, 2, 0.08);
}

.fh-cup-spoof__eyebrow {
    color: #9d7a1f;
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

.fh-cup-spoof__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.fh-cup-spoof__pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(255, 253, 245, 0.9);
    border: 1px solid rgba(150, 117, 21, 0.14);
    color: #6c571d;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}

.fh-cup-spoof__pill--accent {
    background: linear-gradient(180deg, #f7df92 0%, #ebc75f 100%);
    border-color: rgba(124, 92, 7, 0.24);
    color: #5b4107;
}

.fh-cup-spoof__lead,
.fh-cup-spoof__empty p {
    margin: 16px 0 0;
    color: #5f5134;
    font-size: 1rem;
    line-height: 1.6;
}

.fh-cup-spoof__preview {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
}

.fh-cup-spoof__preview-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid rgba(138, 103, 8, 0.2);
    background: linear-gradient(180deg, #fff7d2 0%, #f2d681 100%);
    color: #573f06;
    font-size: 0.86rem;
    font-weight: 800;
    letter-spacing: 0.03em;
    cursor: pointer;
}

.fh-cup-spoof__preview-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(31, 22, 2, 0.1);
}

.fh-cup-spoof__preview-note {
    color: #725d31;
    font-size: 0.82rem;
    font-weight: 600;
}

.fh-cup-spoof__scroll {
    overflow-x: auto;
    padding-bottom: 8px;
}

.fh-cup-spoof__board {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(280px, 1fr);
    gap: 20px;
    align-items: start;
    min-width: max-content;
}

.fh-cup-spoof__phase {
    display: grid;
    gap: 16px;
}

.fh-cup-spoof__phase-head {
    display: grid;
    gap: 12px;
    padding: 18px 20px;
    border-radius: 24px;
    border: 1px solid rgba(163, 127, 29, 0.16);
    background:
        linear-gradient(180deg, rgba(255, 252, 240, 0.98) 0%, rgba(250, 237, 188, 0.96) 100%);
    box-shadow: 0 16px 32px rgba(36, 27, 4, 0.08);
}

.fh-cup-spoof__phase-head h2 {
    margin: 5px 0 0;
    color: #2f2511;
    font-size: 1.35rem;
    line-height: 1.1;
}

.fh-cup-spoof__phase-kicker {
    color: #9b7b24;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}

.fh-cup-spoof__phase-legs {
    display: grid;
    gap: 7px;
    color: #6e5a2d;
    font-size: 0.84rem;
    font-weight: 600;
}

.fh-cup-spoof__ties {
    display: grid;
    gap: 16px;
}

.fh-cup-spoof__tie {
    display: grid;
    gap: 12px;
    padding: 16px 16px 18px;
    border-radius: 24px;
    border: 1px solid rgba(171, 136, 38, 0.15);
    background:
        radial-gradient(circle at bottom right, rgba(221, 195, 112, 0.24), transparent 34%),
        radial-gradient(circle at top left, rgba(138, 180, 255, 0.1), transparent 22%),
        linear-gradient(180deg, rgba(255, 254, 248, 0.98) 0%, rgba(255, 247, 223, 0.96) 100%);
    box-shadow: 0 14px 28px rgba(31, 22, 2, 0.08);
}

.fh-cup-spoof__tie--interactive {
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.fh-cup-spoof__tie--interactive:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(31, 22, 2, 0.12);
    border-color: rgba(171, 136, 38, 0.22);
}

.fh-cup-spoof__tie--interactive:focus-visible {
    outline: 2px solid rgba(181, 134, 5, 0.42);
    outline-offset: 2px;
}

.fh-cup-spoof__tie.is-empty {
    opacity: 0.95;
}

.fh-cup-spoof__tie-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.fh-cup-spoof__tie-code,
.fh-cup-spoof__tie-total {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fh-cup-spoof__tie-code {
    background: #fff7dc;
    border: 1px solid rgba(159, 124, 25, 0.18);
    color: #83661d;
}

.fh-cup-spoof__tie-total {
    background: linear-gradient(180deg, #f8e4a9 0%, #ebc65f 100%);
    border: 1px solid rgba(129, 98, 19, 0.16);
    color: #5f4709;
}

.fh-cup-spoof__team-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 70px;
    align-items: center;
    gap: 10px;
}

.fh-cup-spoof__team-row {
    padding: 10px 12px;
    border-radius: 18px;
    border: 1px solid rgba(153, 120, 29, 0.1);
    background: rgba(255, 252, 242, 0.84);
}

.fh-cup-spoof__team-row.is-winner {
    border-color: rgba(97, 148, 64, 0.24);
    background: linear-gradient(180deg, rgba(242, 255, 239, 0.96) 0%, rgba(227, 246, 214, 0.92) 100%);
}

.fh-cup-spoof__team-cell {
    min-width: 0;
}

.fh-cup-spoof__team-placeholder {
    color: #85724b;
    font-weight: 700;
}

.fh-cup-spoof__team-cell,
.fh-cup-spoof__team-copy {
    display: flex;
    align-items: center;
}

.fh-cup-spoof__team-cell {
    gap: 10px;
}

.fh-cup-spoof__team-mark {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(158, 124, 28, 0.12);
    overflow: hidden;
}

.fh-cup-spoof__team-mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fh-cup-spoof__team-copy {
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
}

.fh-cup-spoof__team-copy strong {
    width: 100%;
    color: #2f2511;
    font-size: 0.96rem;
    line-height: 1.2;
    white-space: normal;
    overflow-wrap: anywhere;
}

.fh-cup-spoof__team-copy small {
    color: #9d7f39;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.fh-cup-spoof__score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border-radius: 14px;
    background: linear-gradient(180deg, #fff9dc 0%, #f2dc90 100%);
    border: 1px solid rgba(154, 121, 30, 0.14);
    color: #5c4305;
    font-size: 0.95rem;
    font-weight: 800;
    text-align: center;
}

.fh-cup-spoof__detail-template[hidden] {
    display: none !important;
}

.fh-cup-popover[hidden] {
    display: none !important;
}

.fh-cup-popover {
    position: fixed;
    inset: 0;
    z-index: 99999;
    pointer-events: none;
}

.fh-cup-popover__panel {
    position: fixed;
    display: flex;
    flex-direction: column;
    width: min(1040px, calc(100vw - 24px));
    max-height: min(88vh, 980px);
    padding: 20px;
    border-radius: 24px;
    background:
        radial-gradient(circle at top right, rgba(230, 197, 93, 0.16), transparent 36%),
        linear-gradient(180deg, #fffef8 0%, #fff8e8 100%);
    border: 1px solid rgba(141, 109, 0, 0.14);
    box-shadow: 0 18px 42px rgba(15, 10, 0, 0.22);
    pointer-events: auto;
}

.fh-cup-popover__close {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    border: 1px solid rgba(141, 109, 0, 0.14);
    background: #fff;
    color: #775b06;
    font-size: 1rem;
    font-weight: 900;
    cursor: pointer;
}

.fh-cup-popover__close:hover {
    background: #fff3bf;
}

.fh-cup-popover__body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding-top: 18px;
    padding-right: 10px;
}

.fh-cup-popover__body::-webkit-scrollbar {
    width: 10px;
}

.fh-cup-popover__body::-webkit-scrollbar-track {
    background: rgba(181, 149, 57, 0.08);
    border-radius: 999px;
}

.fh-cup-popover__body::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(212, 176, 74, 0.9) 0%, rgba(160, 122, 24, 0.86) 100%);
    border-radius: 999px;
    border: 2px solid rgba(255, 248, 225, 0.9);
}

.fh-cup-spoof-detail {
    display: grid;
    gap: 14px;
}

.fh-cup-spoof-detail__head {
    display: grid;
    gap: 6px;
}

.fh-cup-spoof-detail__eyebrow {
    color: #9b7b24;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.fh-cup-spoof-detail__head h3 {
    margin: 0;
    color: #2f2511;
    font-size: 1.08rem;
    line-height: 1.2;
}

.fh-cup-spoof-detail__lead {
    margin: 0;
    color: #755d1f;
    font-size: 0.88rem;
    font-weight: 700;
}

.fh-cup-spoof-detail__total {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff8db 0%, #f4dfa0 100%);
    border: 1px solid rgba(159, 124, 25, 0.18);
}

.fh-cup-spoof-detail__total span {
    color: #6b5422;
    font-size: 0.82rem;
    font-weight: 700;
}

.fh-cup-spoof-detail__total span:last-child {
    text-align: right;
}

.fh-cup-spoof-detail__total strong {
    color: #3b2b08;
    font-size: 1rem;
    font-weight: 900;
}

.fh-cup-spoof-detail__legs {
    display: grid;
    gap: 14px;
}

.fh-cup-spoof-detail__leg {
    display: grid;
    gap: 12px;
    padding: 14px;
    border-radius: 20px;
    background: rgba(255, 253, 246, 0.86);
    border: 1px solid rgba(159, 124, 25, 0.12);
}

.fh-cup-spoof-detail__leg-head {
    color: #8c6d21;
    font-size: 0.74rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.fh-cup-spoof-detail__teams {
    grid-template-columns: minmax(0, 1fr) 124px minmax(0, 1fr);
    gap: 12px;
}

.fh-cup-spoof-detail__teams .fh-calendar-teamcard {
    min-height: 68px;
    padding: 8px 12px;
}

.fh-cup-spoof-detail__teams .fh-calendar-teamcard__link {
    grid-template-columns: 60px minmax(0, 1fr);
}

.fh-cup-spoof-detail__teams .fh-calendar-teamcard--away .fh-calendar-teamcard__link {
    grid-template-columns: minmax(0, 1fr) 60px;
}

.fh-cup-spoof-detail__teams .fh-calendar-team-mark,
.fh-cup-spoof-detail__teams .fh-calendar-team-mark img {
    width: 60px;
    height: 60px;
}

.fh-cup-spoof-detail__teams .fh-calendar-teamcard__copy strong {
    font-size: clamp(0.92rem, 1.2vw, 1.14rem);
}

.fh-cup-spoof-detail__scorebox {
    min-height: 68px;
    width: 124px;
}

.fh-cup-spoof-detail__team {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 58px;
    align-items: center;
    gap: 10px;
}

.fh-cup-spoof-detail__team strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    border-radius: 12px;
    background: rgba(255, 248, 214, 0.95);
    border: 1px solid rgba(159, 124, 25, 0.14);
    color: #5c4305;
    font-size: 0.9rem;
    font-weight: 800;
}

.fh-cup-spoof-detail__team-copy .fh-cup-spoof__team-copy strong {
    font-size: 0.9rem;
}

.fh-cup-spoof-detail__boards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.fh-cup-spoof-detail__board {
    display: grid;
    gap: 12px;
    padding: 14px;
    border-radius: 18px;
    border: 1px solid rgba(159, 124, 25, 0.12);
    background:
        radial-gradient(circle at bottom right, rgba(229, 199, 102, 0.14), transparent 40%),
        rgba(255, 255, 255, 0.78);
}

.fh-cup-spoof-detail__board-head {
    display: grid;
    gap: 10px;
}

.fh-cup-spoof-detail__board-head:empty {
    display: none;
}

.fh-cup-spoof-detail__board-team .fh-cup-spoof__team-mark {
    width: 40px;
    height: 40px;
}

.fh-cup-spoof-detail__board-team .fh-cup-spoof__team-copy strong {
    font-size: 0.95rem;
}

.fh-cup-spoof-detail__goalie {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 52px;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 0 10px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(224, 233, 255, 0.96) 0%, rgba(206, 219, 255, 0.92) 100%);
    border: 1px solid rgba(126, 150, 217, 0.18);
}

.fh-cup-spoof-detail__goalie-role {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: linear-gradient(180deg, #f6de8c 0%, #d9b84f 100%);
    color: #4d390a;
    font-size: 0.8rem;
    font-weight: 900;
}

.fh-cup-spoof-detail__goalie-name {
    min-width: 0;
    color: #283861;
    font-size: 0.88rem;
    font-weight: 800;
}

.fh-cup-spoof-detail__goalie-text {
    display: inline-block;
}

.fh-cup-spoof-detail__goalie-text--compact {
    font-size: 0.8rem;
}

.fh-cup-spoof-detail__goalie-text--compact-2 {
    font-size: 0.72rem;
    line-height: 1.02;
    letter-spacing: -0.01em;
}

.fh-cup-spoof-detail__goalie-score {
    grid-column: 3;
    justify-self: end;
}

.fh-cup-spoof-detail__lines {
    display: grid;
    gap: 10px;
}

.fh-cup-spoof-detail__line {
    display: grid;
    gap: 8px;
}

.fh-cup-spoof-detail__line-label,
.fh-cup-spoof-detail__shootout-title {
    color: #8c6d21;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.fh-cup-spoof-detail__line-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.fh-cup-spoof-detail__chip {
    position: relative;
    display: grid;
    gap: 7px;
    min-height: 102px;
    padding: 8px;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(174, 151, 78, 0.16);
    background:
        radial-gradient(circle at bottom right, rgba(222, 196, 112, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 254, 248, 0.98) 0%, rgba(253, 245, 219, 0.94) 100%);
}

.fh-cup-spoof-detail__chip::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--fh-cup-spoof-card-bg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0.08;
    filter: saturate(1.06) contrast(1.02);
    pointer-events: none;
    z-index: 0;
}

.fh-cup-spoof-detail__chip > * {
    position: relative;
    z-index: 1;
}

.fh-cup-spoof-detail__chip.is-empty {
    place-items: center;
    background: rgba(255, 255, 255, 0.55);
    border-style: dashed;
}

.fh-cup-spoof-detail__chip.is-empty::after {
    display: none;
}

.fh-cup-spoof-detail__chip--defense {
    background: linear-gradient(180deg, rgba(244, 249, 255, 0.99), rgba(221, 232, 250, 0.98));
    border-color: rgba(80, 108, 171, 0.18);
}

.fh-cup-spoof-detail__chip--forward {
    background: linear-gradient(180deg, rgba(255, 252, 243, 0.99), rgba(248, 236, 181, 0.98));
    border-color: rgba(177, 139, 22, 0.16);
}

.fh-cup-spoof-detail__chip-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.fh-cup-spoof-detail__chip-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 10px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(158, 124, 28, 0.12);
}

.fh-cup-spoof-detail__chip-mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fh-cup-spoof-detail__chip-badge {
    color: #87661d;
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
}

.fh-cup-spoof-detail__chip-slot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 24px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 249, 226, 0.96);
    border: 1px solid rgba(159, 124, 25, 0.16);
    color: #86661c;
    font-size: 0.72rem;
    font-weight: 800;
}

.fh-cup-spoof-detail__chip-name {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 34px;
    color: #2f2511;
    text-align: center;
}

.fh-cup-spoof-detail__chip-name-text {
    display: inline-block;
    font-size: 0.88rem;
    font-weight: 800;
    line-height: 1.08;
    color: #3a2e17;
    text-align: center;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    text-wrap: balance;
}

.fh-cup-spoof-detail__chip-name-text--compact {
    font-size: 0.78rem;
}

.fh-cup-spoof-detail__chip-name-text--compact-2 {
    font-size: 0.68rem;
    line-height: 1.04;
    letter-spacing: -0.01em;
}

.fh-cup-spoof-detail__chip-score {
    align-self: end;
    justify-self: center;
}

.fh-cup-spoof-detail__shootout {
    display: grid;
    gap: 8px;
}

.fh-cup-spoof-detail__shootout-list {
    display: grid;
    gap: 6px;
}

.fh-cup-spoof-detail__shootout-row {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 28px 44px;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 0 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(159, 124, 25, 0.1);
}

.fh-cup-spoof-detail__shootout-row.is-empty {
    opacity: 0.72;
}

.fh-cup-spoof-detail__shootout-rank,
.fh-cup-spoof-detail__shootout-role,
.fh-cup-spoof-detail__shootout-score {
    color: #775d1d;
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
}

.fh-cup-spoof-detail__shootout-name {
    min-width: 0;
    color: #2f2511;
    font-size: 0.82rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fh-cup-spoof-detail__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fh-cup-spoof-detail__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(141, 109, 0, 0.12);
    color: #6d5726;
    font-size: 0.78rem;
    font-weight: 700;
}

@media (max-width: 1500px) {
    .fh-calendar-line__grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .fh-calendar-line__grid > .fh-calendar-player {
        grid-column: span 2;
    }

    .fh-calendar-line__grid > .fh-calendar-player:nth-child(1) { grid-column: 2 / span 2; }
    .fh-calendar-line__grid > .fh-calendar-player:nth-child(2) { grid-column: 4 / span 2; }
    .fh-calendar-line__grid > .fh-calendar-player:nth-child(3) { grid-column: 1 / span 2; }
    .fh-calendar-line__grid > .fh-calendar-player:nth-child(4) { grid-column: 3 / span 2; }
    .fh-calendar-line__grid > .fh-calendar-player:nth-child(5) { grid-column: 5 / span 2; }
}

@media (max-width: 1280px) {
    .fh-calendar-match-card__body {
        grid-template-columns: 1fr;
    }

    .fh-calendar-match-card__body::before {
        display: none;
    }

    .fh-calendar-match-card__shootout-columns {
        grid-template-columns: 1fr;
    }

    .fh-calendar-match-card__shootout-entry {
        grid-template-columns: 42px minmax(0, 1fr) auto;
    }

    .fh-calendar-match-card__shootout-entry--subtotal {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .fh-cup-spoof__board {
        grid-auto-columns: minmax(260px, 1fr);
    }
}

@media (max-width: 860px) {
    .fh-calendar-module__intro {
        display: grid;
        grid-template-columns: 1fr;
        align-items: start;
    }

    .fh-calendar-module__meta {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .fh-calendar-module__toolbar,
    .fh-calendar-module__updated,
    .fh-calendar-match-card__header,
    .fh-calendar-match-card__teams,
    .fh-calendar-match-card__goalies {
        grid-template-columns: 1fr;
        display: grid;
    }

    .fh-calendar-teamcard,
    .fh-calendar-teamcard--away {
        min-height: 0;
        clip-path: none;
    }

    .fh-calendar-teamcard::after,
    .fh-calendar-teamcard--away::after {
        display: none;
    }

    .fh-calendar-teamcard__link {
        grid-template-columns: 64px minmax(0, 1fr);
    }

    .fh-calendar-teamcard--away .fh-calendar-teamcard__link {
        grid-template-columns: minmax(0, 1fr) 64px;
    }

    .fh-calendar-teamcard--away .fh-calendar-teamcard__copy {
        text-align: right;
        justify-self: end;
    }

    .fh-calendar-teamcard--away .fh-calendar-teamcard__copy strong {
        text-align: right;
    }

    .fh-calendar-teamcard--away .fh-calendar-teamcard__copy small {
        justify-self: end;
    }

    .fh-calendar-match-card__scorebox {
        justify-self: center;
        width: 100%;
        max-width: 220px;
    }

    .fh-cup-spoof__intro,
    .fh-cup-spoof__empty {
        padding: 20px;
        border-radius: 24px;
    }

    .fh-cup-spoof__board {
        grid-auto-flow: row;
        grid-auto-columns: unset;
        min-width: 0;
    }

    .fh-cup-spoof__phase-head {
        padding: 16px 18px;
    }

    .fh-cup-spoof-detail__boards {
        grid-template-columns: 1fr;
    }

    .fh-cup-spoof-detail__teams {
        grid-template-columns: 1fr;
    }

    .fh-cup-spoof-detail__scorebox {
        justify-self: center;
        width: 100%;
        max-width: 220px;
    }
}

@media (max-width: 760px) {
    .fh-calendar-module__intro,
    .fh-calendar-empty,
    .fh-calendar-match-card {
        padding: 16px;
        border-radius: 20px;
    }

    .fh-calendar-line__grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .fh-calendar-player {
        min-height: 74px;
    }

    .fh-calendar-team-mark,
    .fh-calendar-team-mark img {
        width: 64px;
        height: 64px;
    }

    .fh-calendar-teamcard__copy::before {
        display: none;
    }

    .fh-calendar-player__slot {
        top: 6px;
        right: 6px;
    }

    .fh-calendar-goalie {
        width: 100%;
        justify-content: space-between;
    }

    .fh-cup-spoof__team-row {
        grid-template-columns: minmax(0, 1fr) 60px;
        gap: 8px;
    }

    .fh-cup-spoof__team-row {
        padding: 10px;
    }

    .fh-cup-spoof__team-mark {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
        border-radius: 12px;
    }

    .fh-cup-spoof__team-copy strong {
        font-size: 0.9rem;
    }

    .fh-cup-spoof__score {
        min-height: 36px;
        font-size: 0.84rem;
    }

    .fh-cup-popover__panel {
        width: min(94vw, calc(100vw - 16px));
        max-height: 90vh;
        padding: 14px;
    }

    .fh-cup-spoof-detail__total {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .fh-cup-spoof-detail__total span:last-child {
        text-align: center;
    }

    .fh-cup-spoof-detail__line-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fh-cup-spoof-detail__shootout-row {
        grid-template-columns: 40px minmax(0, 1fr) 42px;
    }

    .fh-cup-spoof-detail__shootout-role {
        display: none;
    }
}
