/* Roshn FDR public insights hub and FDR-home preview cards. */
.insights-page {
    --insights-ink: #281631;
    --insights-muted: #7c697f;
    --insights-brand: #5b2364;
    --insights-brand-dark: #43184b;
    --insights-soft: #f5eef6;
    --insights-line: #e7dfe9;
    --insights-panel: rgba(255, 255, 255, 0.95);
    --insights-up: #087d58;
    --insights-up-soft: #e9f8f2;
    --insights-down: #b23b4e;
    --insights-down-soft: #fff0f2;

    width: min(100% - 32px, 1320px);
    margin: 0 auto;
    padding: 16px 0 40px;
    color: var(--insights-ink);
}

.insights-hero,
.insights-section,
.insights-editorial,
.ranking-panel,
.schedule-panel,
.method-section,
.faq-section,
.insights-footer {
    border: 1px solid var(--insights-line);
    background: var(--insights-panel);
    box-shadow: 0 14px 38px rgba(58, 28, 65, 0.055);
}

.insights-hero {
    margin-bottom: 14px;
    padding: clamp(20px, 2.8vw, 32px);
    border-radius: 26px;
    background:
        radial-gradient(circle at 88% 12%, rgba(116, 51, 126, 0.13), transparent 28rem),
        linear-gradient(145deg, #ffffff, #fbf7fc);
}

.insights-hero__tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.insights-language,
.insights-range {
    display: inline-flex;
    gap: 3px;
    padding: 3px;
    border: 1px solid #ded3e1;
    border-radius: 999px;
    background: #ffffff;
}

.insights-language a,
.insights-range a {
    min-height: 34px;
    display: grid;
    place-items: center;
    padding: 0 13px;
    border-radius: 999px;
    color: #745f78;
    font-size: 11px;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.insights-language a.is-active,
.insights-range a.is-active {
    color: #ffffff;
    background: var(--insights-brand);
    box-shadow: 0 5px 13px rgba(91, 35, 100, 0.2);
}

.insights-kicker {
    margin: 0 0 7px;
    color: #7d4684;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

html[dir='rtl'] .insights-kicker {
    letter-spacing: 0;
    text-transform: none;
}

.insights-hero h1 {
    max-width: 820px;
    margin: 0;
    font-size: clamp(36px, 4.2vw, 56px);
    line-height: 1.04;
    letter-spacing: -0.045em;
}

.insights-hero__summary {
    max-width: 920px;
    margin: 13px 0 0;
    color: var(--insights-muted);
    font-size: clamp(14px, 1.35vw, 16px);
    line-height: 1.8;
}

.insights-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 18px;
}

.insights-meta span {
    padding: 7px 10px;
    border: 1px solid #e7dde9;
    border-radius: 999px;
    color: #7a667e;
    background: rgba(255, 255, 255, 0.84);
    font-size: 10px;
}

.insights-meta strong {
    color: #4e2556;
}

.insights-section {
    margin-bottom: 14px;
    padding: clamp(18px, 3vw, 30px);
    border-radius: 24px;
}

.insights-section__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 20px;
}

.insights-section__header h2,
.insights-editorial h2,
.ranking-panel h2,
.schedule-panel h2,
.method-section h2,
.faq-section h2 {
    margin: 0;
    font-size: clamp(23px, 3vw, 36px);
    line-height: 1.1;
    letter-spacing: -0.025em;
}

.insights-section__header p,
.ranking-panel header p,
.schedule-panel header p {
    max-width: 820px;
    margin: 8px 0 0;
    color: var(--insights-muted);
    font-size: 13px;
    line-height: 1.75;
}

.insights-link {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #d9cddd;
    border-radius: 999px;
    color: var(--insights-brand);
    background: #ffffff;
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
}

.insights-link:hover {
    border-color: #8d5495;
    background: #faf5fb;
}

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

.snapshot-card {
    display: grid;
    gap: 5px;
    min-height: 116px;
    align-content: center;
    padding: 16px;
    border: 1px solid #eadfec;
    border-radius: 17px;
    background: linear-gradient(145deg, #ffffff, #f8f2f9);
}

.snapshot-card > span {
    color: #89758d;
    font-size: 10px;
    font-weight: 800;
}

.snapshot-card > strong {
    overflow: hidden;
    color: #3b1c43;
    font-size: clamp(18px, 2vw, 25px);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.snapshot-card > small {
    color: #785f7c;
    font-size: 10px;
    font-weight: 750;
}

.snapshot-card.is-market {
    border-color: rgba(91, 35, 100, 0.22);
    background: linear-gradient(145deg, #fbf6fc, #f1e5f3);
}

.is-positive {
    color: var(--insights-up) !important;
}

.is-negative {
    color: var(--insights-down) !important;
}

.insights-editorial {
    display: grid;
    grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.5fr);
    gap: 30px;
    margin-bottom: 14px;
    padding: clamp(22px, 3vw, 34px);
    border-radius: 24px;
}

.insights-editorial__copy {
    display: grid;
    gap: 12px;
}

.insights-editorial__copy p {
    margin: 0;
    color: #655369;
    font-size: 14px;
    line-height: 1.9;
}

.club-outlook-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
}

.club-outlook-card {
    overflow: hidden;
    border: 1px solid #e8dfea;
    border-radius: 19px;
    background: #ffffff;
}

.club-outlook-card.is-featured {
    border-color: rgba(91, 35, 100, 0.42);
    box-shadow: 0 12px 30px rgba(91, 35, 100, 0.1);
}

.club-outlook-card__head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px;
    border-bottom: 1px solid #eee7ef;
    background: #fcfafd;
}

.club-rank,
.table-rank {
    display: grid;
    place-items: center;
    width: 29px;
    height: 29px;
    border-radius: 9px;
    color: #ffffff;
    background: var(--insights-brand);
    font-size: 11px;
    font-weight: 950;
}

.club-outlook-card__head h3 {
    margin: 0;
    overflow: hidden;
    font-size: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.club-outlook-card__head > div > span {
    display: block;
    margin-top: 2px;
    color: #947f98;
    font-size: 9.5px;
    font-weight: 800;
}

.outlook-score {
    display: grid;
    justify-items: center;
    min-width: 58px;
    padding: 7px;
    border-radius: 11px;
    color: #ffffff;
    background: linear-gradient(135deg, #6b2a74, #4d1c55);
}

.outlook-score strong {
    font-size: 20px;
    line-height: 1;
}

.outlook-score span {
    margin-top: 3px;
    font-size: 7.5px;
    font-weight: 800;
    opacity: 0.82;
}

.club-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5px;
    padding: 10px;
}

.club-metrics > div {
    display: grid;
    justify-items: center;
    gap: 3px;
    padding: 8px 4px;
    border-radius: 9px;
    background: #f7f2f8;
}

.club-metrics span,
.club-goals span {
    color: #8c788f;
    font-size: 8.5px;
    font-weight: 800;
}

.club-metrics strong {
    color: #4d2455;
    font-size: 13.5px;
}

.club-goals {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    padding: 0 12px 10px;
}

.club-goals strong {
    padding: 4px 7px;
    border-radius: 999px;
    color: #5f4264;
    background: #f4edf5;
    font-size: 9px;
}

.fixture-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 10px 12px 13px;
    border-top: 1px solid #f0eaf1;
}

.fixture-pill {
    padding: 5px 7px;
    border-radius: 7px;
    font-size: 8.5px;
    font-weight: 900;
    white-space: nowrap;
}

.fixture-pill.difficulty-1 { color: #ffffff; background: #198754; }
.fixture-pill.difficulty-2 { color: #173b28; background: #96d39f; }
.fixture-pill.difficulty-3 { color: #4c4350; background: #ddd9df; }
.fixture-pill.difficulty-4 { color: #ffffff; background: #df7a54; }
.fixture-pill.difficulty-5 { color: #ffffff; background: #b8324a; }
.fixture-pill.difficulty-unrated { color: #746877; background: #ece8ed; }

.insights-dual-grid,
.price-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 14px;
}

.ranking-panel,
.schedule-panel {
    overflow: hidden;
    border-radius: 22px;
}

.ranking-panel > header,
.schedule-panel > header {
    padding: 20px;
    border-bottom: 1px solid #eee7ef;
    background: #fcfafd;
}

.compact-ranking {
    display: grid;
    margin: 0;
    padding: 0;
    list-style: none;
}

.compact-ranking li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 13px 16px;
    border-bottom: 1px solid #f0eaf1;
}

.compact-ranking li:last-child {
    border-bottom: 0;
}

.compact-ranking li > span {
    display: grid;
    width: 25px;
    height: 25px;
    place-items: center;
    border-radius: 8px;
    color: var(--insights-brand);
    background: #f2eaf4;
    font-size: 10.5px;
    font-weight: 900;
}

.compact-ranking li > div:last-child {
    text-align: end;
}

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

.compact-ranking strong {
    font-size: 13px;
}

.compact-ranking small {
    margin-top: 2px;
    color: #907d93;
    font-size: 9px;
}

.compact-ranking .is-empty {
    display: block;
    color: var(--insights-muted);
    font-size: 11px;
}

.schedule-panel.is-easy > header {
    border-inline-start: 4px solid #198754;
    background: linear-gradient(135deg, #fbfffc, #f1faf5);
}

.schedule-panel.is-hard > header {
    border-inline-start: 4px solid #b8324a;
    background: linear-gradient(135deg, #fffdfd, #fff3f5);
}

.schedule-table-wrap {
    overflow-x: auto;
}

.schedule-table {
    width: 100%;
    min-width: 530px;
    border-collapse: collapse;
}

.schedule-table th,
.schedule-table td {
    padding: 11px 12px;
    border-bottom: 1px solid #f0eaf1;
    text-align: start;
    font-size: 11px;
}

.schedule-table th {
    color: #8c798f;
    background: #fbf9fc;
    font-size: 9px;
    font-weight: 850;
}

.schedule-table td strong,
.schedule-table td small {
    display: block;
}

.schedule-table td small {
    margin-top: 2px;
    color: #99859c;
    font-size: 8px;
}

.price-panel {
    overflow: hidden;
    border: 1px solid var(--insights-line);
    border-radius: 20px;
    background: #ffffff;
}

.price-panel > header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px;
    border-bottom: 1px solid #eee7ef;
}

.price-panel > header > span {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    font-weight: 950;
}

.price-panel.is-rise > header {
    background: var(--insights-up-soft);
}

.price-panel.is-rise > header > span {
    background: var(--insights-up);
}

.price-panel.is-fall > header {
    background: var(--insights-down-soft);
}

.price-panel.is-fall > header > span {
    background: var(--insights-down);
}

.price-panel h3 {
    margin: 0;
    font-size: 19px;
}

.price-list {
    display: grid;
}

.price-player {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) auto minmax(190px, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 13px 14px;
    border-bottom: 1px solid #f0eaf1;
}

.price-player:last-child {
    border-bottom: 0;
}

.price-player__identity {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 8px;
}

.price-player__identity > span {
    flex: 0 0 auto;
    display: grid;
    min-width: 34px;
    min-height: 25px;
    place-items: center;
    padding: 0 5px;
    border-radius: 7px;
    color: #5b2364;
    background: #f2eaf4;
    font-size: 8px;
    font-weight: 900;
}

.price-player__identity h4 {
    margin: 0;
    overflow: hidden;
    font-size: 12.5px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.price-player__identity small,
.price-player__price small {
    display: block;
    margin-top: 2px;
    color: #958298;
    font-size: 8px;
}

.price-player__price {
    text-align: center;
}

.price-player__price strong {
    color: #47204f;
    font-size: 16px;
}

.price-player__metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(55px, 1fr));
    gap: 4px;
    margin: 0;
}

.price-player__metrics > div {
    padding: 5px;
    border-radius: 7px;
    background: #f8f5f9;
    text-align: center;
}

.price-player__metrics dt {
    color: #927f95;
    font-size: 7px;
    font-weight: 800;
}

.price-player__metrics dd {
    margin: 2px 0 0;
    font-size: 10.5px;
    font-weight: 900;
}

.signal-row {
    display: grid;
    justify-items: end;
    gap: 4px;
}

.signal-row > span {
    color: #958298;
    font-size: 7px;
}

.signal {
    padding: 5px 8px;
    border-radius: 999px;
    font-size: 8.5px;
    white-space: nowrap;
}

.signal.is-high {
    color: #ffffff;
    background: var(--insights-brand);
}

.signal.is-medium {
    color: #5d365f;
    background: #e9dbea;
}

.signal.is-watch {
    color: #6d6470;
    background: #eeeaf0;
}

.method-section,
.faq-section {
    margin-bottom: 14px;
    padding: clamp(20px, 3vw, 30px);
    border-radius: 24px;
}

.method-section > header {
    margin-bottom: 18px;
}

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

.method-grid article {
    padding: 17px;
    border: 1px solid #eadfec;
    border-radius: 16px;
    background: #fbf8fc;
}

.method-grid article > span {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 9px;
    color: #ffffff;
    background: var(--insights-brand);
    font-size: 10px;
    font-weight: 900;
}

.method-grid h3 {
    margin: 11px 0 6px;
    font-size: 15px;
}

.method-grid p,
.faq-section p {
    margin: 0;
    color: #6f5c73;
    font-size: 12px;
    line-height: 1.8;
}

.faq-section h2 {
    margin-bottom: 15px;
}

.faq-section details {
    border-top: 1px solid #eee7ef;
}

.faq-section summary {
    padding: 17px 4px;
    color: #43204b;
    font-size: 13.5px;
    font-weight: 850;
    cursor: pointer;
}

.faq-section details p {
    padding: 0 4px 18px;
}

.insights-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border-radius: 18px;
}

.insights-footer p {
    max-width: 900px;
    margin: 0;
    color: #7d6a81;
    font-size: 10px;
    line-height: 1.65;
}

.insights-footer > div {
    display: flex;
    gap: 6px;
}

.insights-footer a {
    padding: 7px 10px;
    border-radius: 999px;
    color: var(--insights-brand);
    background: #f3ecf5;
    font-size: 9px;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.insights-empty {
    margin: 0;
    padding: 18px;
    color: var(--insights-muted);
    font-size: 11px;
    text-align: center;
}

/* Preview section embedded on the main FDR page. */
.home-insights-preview {
    margin: 16px 0;
    padding: 18px;
    border: 1px solid #e4d9e7;
    border-radius: 20px;
    background:
        radial-gradient(circle at 92% 0, rgba(91, 35, 100, 0.09), transparent 24rem),
        #ffffff;
    box-shadow: 0 13px 35px rgba(58, 28, 65, 0.05);
}

.home-insights-preview__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 13px;
}

.home-insights-preview__header span {
    color: #7d4684;
    font-size: 9px;
    font-weight: 900;
}

.home-insights-preview__header h2 {
    margin: 3px 0 4px;
    color: #301737;
    font-size: clamp(20px, 2.5vw, 28px);
}

.home-insights-preview__header p {
    margin: 0;
    color: #806d84;
    font-size: 11px;
}

.home-insights-preview__header a {
    flex: 0 0 auto;
    padding: 9px 13px;
    border-radius: 999px;
    color: #ffffff;
    background: #5b2364;
    font-size: 10px;
    font-weight: 900;
    text-decoration: none;
}

.home-insights-preview__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.home-insight-card {
    display: grid;
    min-height: 96px;
    align-content: center;
    gap: 4px;
    padding: 13px;
    border: 1px solid #eadfec;
    border-radius: 14px;
    background: #fbf8fc;
    text-decoration: none;
}

.home-insight-card > span {
    color: #8c798f;
    font-size: 8px;
    font-weight: 850;
}

.home-insight-card > strong {
    overflow: hidden;
    color: #3c1c44;
    font-size: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-insight-card > small {
    color: #775f7b;
    font-size: 8px;
}

.home-insight-card.is-rise small { color: var(--insights-up); }
.home-insight-card.is-fall small { color: var(--insights-down); }

@media (max-width: 1050px) {
    .club-outlook-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .snapshot-grid,
    .home-insights-preview__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .price-player {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .price-player__metrics {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .insights-page {
        width: min(100% - 16px, 1320px);
        padding-top: 8px;
        padding-bottom: 28px;
    }

    .insights-hero,
    .insights-section,
    .insights-editorial,
    .method-section,
    .faq-section {
        border-radius: 17px;
    }

    .insights-hero {
        padding: 17px;
    }

    .insights-hero__tools,
    .insights-section__header,
    .home-insights-preview__header,
    .insights-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .insights-language,
    .insights-range {
        width: 100%;
    }

    .insights-language a,
    .insights-range a {
        min-width: 0;
        flex: 1 1 0;
        padding-inline: 6px;
        font-size: 9px;
    }

    .insights-hero h1 {
        font-size: clamp(31px, 10vw, 44px);
    }

    .snapshot-grid,
    .club-outlook-grid,
    .insights-dual-grid,
    .price-grid,
    .method-grid,
    .home-insights-preview__grid,
    .insights-editorial {
        grid-template-columns: 1fr;
    }

    .insights-editorial {
        gap: 15px;
    }

    .club-outlook-card__head {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .price-player {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .signal-row {
        grid-column: 1 / -1;
        grid-auto-flow: column;
        align-items: center;
        justify-content: space-between;
        justify-items: stretch;
    }

    .home-insights-preview {
        padding: 13px;
        border-radius: 16px;
    }

    .home-insights-preview__header a {
        text-align: center;
    }

    .insights-footer > div {
        flex-wrap: wrap;
    }
}

/* Visual refinement: denser hero, clearer hierarchy, and more readable analytical data. */
.insights-hero__title {
    width: fit-content;
    max-width: 100%;
}

.insights-hero__title > span {
    display: block;
}

html[dir='rtl'] .insights-hero h1 {
    max-width: 760px;
    line-height: 1.08;
    letter-spacing: -0.025em;
}

.club-outlook-card__head > div > span {
    font-size: 9.5px;
}

.price-player__price {
    min-width: 52px;
    padding: 6px 8px;
    border-radius: 10px;
    background: #f7f2f8;
}

.price-panel.is-rise .signal-row {
    padding: 6px 8px;
    border-radius: 9px;
    background: var(--insights-up-soft);
}

.price-panel.is-fall .signal-row {
    padding: 6px 8px;
    border-radius: 9px;
    background: var(--insights-down-soft);
}

.price-panel.is-rise .signal.is-high {
    background: var(--insights-up);
}

.price-panel.is-fall .signal.is-high {
    background: var(--insights-down);
}

.faq-section details[open] {
    padding-inline: 10px;
    border-radius: 12px;
    background: #fbf8fc;
}

@media (max-width: 760px) {
    html[dir='rtl'] .insights-hero h1,
    .insights-hero h1 {
        max-width: 100%;
        font-size: clamp(32px, 9.2vw, 42px);
        line-height: 1.08;
    }

    .insights-section__header p,
    .ranking-panel header p,
    .schedule-panel header p {
        font-size: 12px;
    }

    .price-player__identity h4 {
        font-size: 12px;
    }
}


/* SEO topic hub and standalone insight pages. */
.insights-topic-hub {
    display: grid;
    gap: 14px;
    margin-bottom: 12px;
    padding: 18px;
    border: 1px solid var(--insights-border, #e6dde8);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--insights-shadow, 0 14px 38px rgba(58, 28, 65, 0.055));
}

.insights-topic-hub > header > span {
    color: var(--insights-brand, #5b2364);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.insights-topic-hub h2 {
    margin: 3px 0 4px;
    color: #2d1734;
    font-size: 19px;
    line-height: 1.25;
}

.insights-topic-hub header p {
    margin: 0;
    color: #78657c;
    font-size: 11px;
    line-height: 1.65;
}

.insights-topic-hub > div {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.insights-topic-hub a {
    position: relative;
    display: grid;
    min-width: 0;
    min-height: 104px;
    align-content: center;
    gap: 6px;
    padding: 14px 39px 14px 14px;
    border: 1px solid #ebe3ed;
    border-radius: 14px;
    color: #2d1734;
    background: #fbf8fc;
    text-decoration: none;
    transition: transform 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

html[dir='rtl'] .insights-topic-hub a {
    padding-right: 14px;
    padding-left: 39px;
}

.insights-topic-hub a:hover {
    border-color: #b790bc;
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(58, 28, 65, 0.08);
}

.insights-topic-hub a strong {
    font-size: 13px;
    line-height: 1.35;
}

.insights-topic-hub a span {
    color: #78657c;
    font-size: 10px;
    line-height: 1.55;
}

.insights-topic-hub a b {
    position: absolute;
    top: 50%;
    right: 14px;
    color: #5b2364;
    font-size: 18px;
    transform: translateY(-50%);
}

html[dir='rtl'] .insights-topic-hub a b {
    right: auto;
    left: 14px;
}

.player-prediction-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

.player-prediction-card {
    display: grid;
    min-width: 0;
    gap: 10px;
    padding: 13px;
    border: 1px solid #e9e1eb;
    border-radius: 15px;
    background: #ffffff;
}

.player-prediction-card > header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
}

.player-prediction-card h2,
.player-prediction-card h3 {
    margin: 0;
    overflow: hidden;
    color: #2f1837;
    font-size: 12px;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-prediction-card header small {
    display: block;
    margin-top: 2px;
    color: #8b788f;
    font-size: 8px;
}

.player-prediction-card header > strong {
    display: grid;
    min-width: 42px;
    min-height: 38px;
    place-items: center;
    border-radius: 10px;
    color: #ffffff;
    background: #5b2364;
    font-size: 14px;
}

.insight-rank {
    display: grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border-radius: 8px;
    color: #5b2364;
    background: #f0e7f2;
    font-size: 9px;
    font-weight: 900;
}

.player-prediction-card dl {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    margin: 0;
}

.player-prediction-card dl > div {
    display: grid;
    gap: 2px;
    padding: 7px;
    border-radius: 9px;
    background: #f8f4f9;
    text-align: center;
}

.player-prediction-card dt {
    color: #8b788f;
    font-size: 7px;
}

.player-prediction-card dd {
    margin: 0;
    color: #39213f;
    font-size: 10px;
    font-weight: 900;
}

.insights-detail-page {
    width: min(100% - 32px, 1320px);
}

.insights-detail-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 20px;
    margin-bottom: 12px;
    padding: clamp(19px, 3vw, 30px);
    border: 1px solid #e6dde8;
    border-radius: 22px;
    background:
        radial-gradient(circle at top right, rgba(111, 41, 120, 0.11), transparent 28rem),
        rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 38px rgba(58, 28, 65, 0.055);
}

.insights-detail-hero__copy {
    min-width: 0;
}

.insights-detail-hero h1 {
    max-width: 850px;
    margin: 4px 0 8px;
    color: #2d1734;
    font-size: clamp(24px, 3.4vw, 40px);
    line-height: 1.1;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

html[dir='rtl'] .insights-detail-hero h1 {
    letter-spacing: 0;
}

.insights-detail-hero__copy > p:not(.insights-kicker) {
    max-width: 850px;
    margin: 0;
    color: #705c75;
    font-size: 13px;
    line-height: 1.75;
}

.insights-author-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 12px;
}

.insights-author-row span,
.insights-author-row time {
    padding: 6px 9px;
    border: 1px solid #e8dfea;
    border-radius: 999px;
    color: #6f5a73;
    background: #faf7fb;
    font-size: 8px;
    font-weight: 800;
}

.insights-detail-hero__controls {
    display: grid;
    justify-items: end;
    gap: 9px;
}

.insights-detail-editorial,
.insights-detail-source {
    margin-bottom: 12px;
    padding: 18px;
    border: 1px solid #e6dde8;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 30px rgba(58, 28, 65, 0.045);
}

.insights-detail-editorial h2,
.insights-detail-source h2 {
    margin: 0 0 8px;
    color: #2d1734;
    font-size: 18px;
}

.insights-detail-editorial p,
.insights-detail-source p {
    margin: 0;
    color: #6f5a73;
    font-size: 12px;
    line-height: 1.8;
}

.insights-detail-editorial p + p,
.insights-detail-source p + p {
    margin-top: 8px;
}

.insight-club-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.insight-club-detail-card {
    min-width: 0;
    padding: 15px;
    border: 1px solid #e7dfe9;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(58, 28, 65, 0.045);
}

.insight-club-detail-card > header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
}

.insight-club-detail-card h2 {
    margin: 0;
    color: #2d1734;
    font-size: 14px;
}

.insight-club-detail-card header small {
    color: #8c798f;
    font-size: 8px;
}

.insight-club-detail-card header > strong {
    font-size: 18px;
    color: #5b2364;
}

.insight-club-detail-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    margin: 12px 0 0;
}

.insight-club-detail-metrics > div {
    display: grid;
    gap: 2px;
    padding: 8px;
    border-radius: 10px;
    background: #f8f4f9;
    text-align: center;
}

.insight-club-detail-metrics dt {
    color: #8b788f;
    font-size: 7px;
}

.insight-club-detail-metrics dd {
    margin: 0;
    color: #39213f;
    font-size: 10px;
    font-weight: 900;
}

.insight-fixtures-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

.insight-fixtures-strip > span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 26px;
    padding: 4px 7px;
    border-radius: 8px;
    font-size: 8px;
    font-weight: 850;
}

.insight-fixtures-strip small {
    font-size: 7px;
    opacity: 0.8;
}

.insights-detail-price-panel {
    margin-bottom: 12px;
}

@media (max-width: 900px) {
    .insights-topic-hub > div,
    .player-prediction-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

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

    .insights-detail-hero__controls {
        justify-items: start;
    }
}

@media (max-width: 680px) {
    .insights-topic-hub {
        padding: 14px;
        border-radius: 16px;
    }

    .insights-topic-hub > div,
    .player-prediction-grid,
    .insight-club-detail-grid {
        grid-template-columns: 1fr;
    }

    .insights-topic-hub a {
        min-height: 92px;
    }

    .insights-detail-page {
        width: min(100% - 16px, 1320px);
    }

    .insights-detail-hero {
        gap: 13px;
        padding: 16px;
        border-radius: 17px;
    }

    .insights-detail-hero h1 {
        font-size: 24px;
        line-height: 1.18;
    }

    .insights-detail-hero__copy > p:not(.insights-kicker) {
        font-size: 11.5px;
    }

    .insights-detail-editorial,
    .insights-detail-source {
        padding: 15px;
        border-radius: 16px;
    }

    .insight-club-detail-metrics,
    .player-prediction-card dl {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* --------------------------------------------------------------------------
   Weekly editorial content
   -------------------------------------------------------------------------- */
.editorial-hub,
.editorial-related {
    margin-top: 22px;
    padding: 24px;
    border: 1px solid var(--insights-border, #e7dfe9);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 38px rgba(58, 28, 65, 0.055);
}

.editorial-hub__header,
.editorial-related > header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.editorial-hub__header > div,
.editorial-related > header > div {
    min-width: 0;
}

.editorial-hub__header h2,
.editorial-related h2,
.editorial-takeaways h2 {
    margin: 4px 0 7px;
    color: var(--insights-ink, #281631);
    font-size: clamp(23px, 2.6vw, 32px);
    line-height: 1.18;
}

.editorial-hub__header p {
    max-width: 820px;
    margin: 0;
    color: var(--insights-muted, #78657c);
    font-size: 13px;
    line-height: 1.75;
}

.editorial-hub__count {
    flex: 0 0 auto;
    padding: 8px 12px;
    border: 1px solid #e5d9e8;
    border-radius: 999px;
    color: #5b2364;
    background: #fbf7fc;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

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

.editorial-card {
    display: flex;
    min-width: 0;
    min-height: 220px;
    flex-direction: column;
    padding: 17px;
    border: 1px solid #e9e0eb;
    border-radius: 19px;
    color: inherit;
    background: linear-gradient(180deg, #fff 0%, #fdfafd 100%);
    text-decoration: none;
    transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.editorial-card:hover {
    transform: translateY(-2px);
    border-color: rgba(91, 35, 100, 0.34);
    box-shadow: 0 12px 28px rgba(74, 33, 81, 0.08);
}

.editorial-card > span {
    color: #8b6d90;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.02em;
}

.editorial-card > strong {
    margin-top: 8px;
    color: #2e1834;
    font-size: 17px;
    line-height: 1.4;
}

.editorial-card > p {
    display: -webkit-box;
    overflow: hidden;
    margin: 9px 0 14px;
    color: #756379;
    font-size: 11.5px;
    line-height: 1.7;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.editorial-card > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid #eee7ef;
}

.editorial-card small {
    color: #8d7b91;
    font-size: 9.5px;
    font-weight: 800;
}

.editorial-card b {
    color: #5b2364;
    font-size: 16px;
}

.insights-editorial-page {
    width: min(100% - 32px, 1120px);
}

.editorial-article-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: start;
    margin-top: 10px;
    padding: 28px 30px;
    border: 1px solid #e7dfe9;
    border-radius: 24px;
    background: radial-gradient(circle at top right, rgba(91, 35, 100, 0.07), transparent 42%), #fff;
    box-shadow: 0 15px 40px rgba(58, 28, 65, 0.055);
}

.editorial-article-hero__copy h1 {
    max-width: 860px;
    margin: 7px 0 12px;
    color: #281631;
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.1;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

html[dir='rtl'] .editorial-article-hero__copy h1 {
    letter-spacing: -0.015em;
}

.editorial-article-hero__copy > p {
    max-width: 860px;
    margin: 0;
    color: #6f5d74;
    font-size: 14px;
    line-height: 1.85;
}

.editorial-takeaways {
    display: grid;
    grid-template-columns: minmax(230px, 0.7fr) minmax(0, 1.3fr);
    gap: 24px;
    margin-top: 18px;
    padding: 22px 24px;
    border: 1px solid #e7dfe9;
    border-radius: 22px;
    background: #fbf8fc;
}

.editorial-takeaways ol {
    display: grid;
    gap: 10px;
    margin: 0;
    padding-inline-start: 22px;
}

.editorial-takeaways li {
    padding-inline-start: 4px;
    color: #4a3650;
    font-size: 12.5px;
    line-height: 1.75;
}

.editorial-article-body {
    margin-top: 18px;
    padding: 28px 34px;
    border: 1px solid #e7dfe9;
    border-radius: 24px;
    background: #fff;
}

.editorial-article-body section + section {
    margin-top: 31px;
    padding-top: 27px;
    border-top: 1px solid #eee7ef;
}

.editorial-article-body h2 {
    max-width: 840px;
    margin: 0 0 13px;
    color: #2d1733;
    font-size: clamp(22px, 2.7vw, 30px);
    line-height: 1.25;
    text-wrap: balance;
}

.editorial-article-body p {
    max-width: 860px;
    margin: 0 0 13px;
    color: #49394d;
    font-size: 15px;
    line-height: 1.95;
}

.editorial-article-body p:last-child {
    margin-bottom: 0;
}

.editorial-source-note {
    margin-top: 18px;
    padding: 20px 24px;
    border-inline-start: 4px solid #5b2364;
    border-radius: 16px;
    background: #f8f4f9;
}

.editorial-source-note h2 {
    margin: 0 0 8px;
    color: #321b39;
    font-size: 18px;
}

.editorial-source-note p {
    margin: 5px 0 0;
    color: #705f74;
    font-size: 11.5px;
    line-height: 1.75;
}

.editorial-related .editorial-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 900px) {
    .editorial-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .editorial-article-hero,
    .editorial-takeaways {
        grid-template-columns: 1fr;
    }

    .editorial-article-hero .insights-language {
        justify-self: start;
    }
}

@media (max-width: 620px) {
    .editorial-hub,
    .editorial-related,
    .editorial-article-body,
    .editorial-article-hero,
    .editorial-takeaways {
        padding: 18px;
        border-radius: 18px;
    }

    .editorial-hub__header,
    .editorial-related > header {
        align-items: start;
        flex-direction: column;
    }

    .editorial-card-grid,
    .editorial-related .editorial-card-grid {
        grid-template-columns: 1fr;
    }

    .editorial-card {
        min-height: 0;
    }

    .editorial-article-body p {
        font-size: 14px;
        line-height: 1.9;
    }
}

.editorial-hub__actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 10px;
}

.insights-editorial-index-page {
    width: min(100% - 32px, 1320px);
}

.editorial-index-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(220px, 0.5fr);
    gap: 24px;
    align-items: center;
    margin-top: 10px;
    padding: 28px 30px;
    border: 1px solid #e7dfe9;
    border-radius: 24px;
    background: radial-gradient(circle at top right, rgba(91, 35, 100, 0.08), transparent 45%), #fff;
    box-shadow: 0 15px 40px rgba(58, 28, 65, 0.055);
}

.editorial-index-hero h1 {
    max-width: 830px;
    margin: 7px 0 11px;
    color: #281631;
    font-size: clamp(34px, 4vw, 50px);
    line-height: 1.08;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

html[dir='rtl'] .editorial-index-hero h1 {
    letter-spacing: -0.015em;
}

.editorial-index-hero p {
    max-width: 820px;
    margin: 0;
    color: #6f5d74;
    font-size: 13.5px;
    line-height: 1.8;
}

.editorial-index-hero__side {
    display: grid;
    justify-items: end;
    gap: 12px;
}

.editorial-index-hero__side > span {
    color: #806985;
    font-size: 10.5px;
    font-weight: 850;
}

.editorial-principles {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.editorial-principles article {
    padding: 16px 17px;
    border: 1px solid #e8e0ea;
    border-radius: 18px;
    background: #fff;
}

.editorial-principles strong {
    color: #321b39;
    font-size: 13px;
}

.editorial-principles p {
    margin: 7px 0 0;
    color: #76647a;
    font-size: 10.5px;
    line-height: 1.7;
}

.editorial-archive-group {
    margin-top: 22px;
    padding: 22px 24px 24px;
    border: 1px solid #e7dfe9;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.96);
}

.editorial-archive-group > header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.editorial-archive-group > header h2 {
    margin: 4px 0 0;
    color: #2d1733;
    font-size: clamp(22px, 2.5vw, 30px);
}

.editorial-archive-group > header > span {
    color: #8b758f;
    font-size: 10px;
    font-weight: 850;
}

.editorial-empty {
    margin-top: 20px;
}

@media (max-width: 900px) {
    .editorial-index-hero,
    .editorial-principles {
        grid-template-columns: 1fr;
    }

    .editorial-index-hero__side {
        justify-items: start;
    }
}

@media (max-width: 620px) {
    .editorial-hub__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .editorial-index-hero,
    .editorial-archive-group {
        padding: 18px;
        border-radius: 18px;
    }
}

.editorial-coverage {
    margin-top: 18px;
    padding: 22px 24px;
    border: 1px solid #e7dfe9;
    border-radius: 22px;
    background: #fbf8fc;
}

.editorial-coverage > header h2 {
    margin: 4px 0 7px;
    color: #2d1733;
    font-size: clamp(21px, 2.5vw, 29px);
}

.editorial-coverage > header p {
    max-width: 820px;
    margin: 0;
    color: #76647a;
    font-size: 11.5px;
    line-height: 1.75;
}

.editorial-coverage > div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 15px;
}

.editorial-coverage > div > span {
    padding: 8px 10px;
    border: 1px solid #e4d8e7;
    border-radius: 999px;
    color: #5b2364;
    background: #fff;
    font-size: 10.5px;
    font-weight: 800;
}

.editorial-preview-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 18px 0;
    padding: 14px 18px;
    border: 1px solid rgba(91, 35, 100, 0.24);
    border-radius: 16px;
    background: rgba(255, 249, 229, 0.96);
    box-shadow: 0 10px 26px rgba(32, 16, 37, 0.06);
}

.editorial-preview-banner strong {
    color: #5b2364;
    font-size: 0.95rem;
    white-space: nowrap;
}

.editorial-preview-banner span {
    color: #5d5360;
    line-height: 1.65;
}

@media (max-width: 720px) {
    .editorial-preview-banner {
        align-items: flex-start;
        flex-direction: column;
    }

    .editorial-preview-banner strong {
        white-space: normal;
    }
}
