/* KISURE FE892 — member experience, prediction balance and media polish. */

/* Prediction model sidebar: perfectly balanced icon/text rows. */
html[data-kisure-design="865"] body .football-prediction-model-panel {
    box-sizing: border-box !important;
}
html[data-kisure-design="865"] body .football-prediction-model-panel > :is(.site-kicker, h3, .football-link-list) {
    width: 100% !important;
    max-width: 100% !important;
}
html[data-kisure-design="865"] body .football-prediction-model-panel .football-link-list {
    display: grid !important;
    gap: .55rem !important;
    margin: .8rem 0 0 !important;
    padding: 0 !important;
}
html[data-kisure-design="865"] body .football-prediction-model-panel .football-link-list > span {
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: .8rem !important;
    min-height: 58px !important;
    padding: .68rem .9rem !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    line-height: 1.35 !important;
    text-align: left !important;
    width: 100% !important;
}
html[data-kisure-design="865"] body .football-prediction-model-panel .football-link-list > span > i {
    display: inline-grid !important;
    place-items: center !important;
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    border-radius: 50% !important;
    background: var(--ks-very-light, #E8F7F7) !important;
    color: #087C78 !important;
    font-size: .96rem !important;
}
html[data-theme="dark"][data-kisure-design="865"] body .football-prediction-model-panel .football-link-list > span > i {
    background: rgba(11, 156, 160, .17) !important;
    color: #77dddb !important;
}
@media (max-width: 640px) {
    html[data-kisure-design="865"] body .football-prediction-model-panel .football-link-list > span {
        grid-template-columns: 34px minmax(0, 1fr) !important;
        gap: .68rem !important;
        min-height: 52px !important;
        padding: .6rem .72rem !important;
    }
    html[data-kisure-design="865"] body .football-prediction-model-panel .football-link-list > span > i {
        width: 34px !important;
        height: 34px !important;
    }
}

/* Follow controls */
.ks-member-follow-form { display:inline-flex; margin:0; }
.ks-member-follow-button { gap:.48rem !important; white-space:nowrap; }
.ks-member-follow-button.is-following {
    background: color-mix(in srgb, #0B9CA0 12%, transparent) !important;
    border-color: color-mix(in srgb, #0B9CA0 40%, transparent) !important;
    color: #087C78 !important;
}
html[data-theme="dark"] .ks-member-follow-button.is-following { color:#8df3ef !important; }
.football-player-hero__actions,
.football-league-hero__actions { margin-top:.85rem; display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; }

/* Player white-background cleanup target after canvas processing. */
.ks-player-face-img--hero.is-kisure-white-trimmed {
    background: transparent !important;
    filter: none !important;
}

/* League-logo extracted accent. Keep Kisure surfaces brand-led while allowing
   competition identity to tint the local hero/header edge. */
html[data-kisure-design="865"] body [data-kisure-competition-themed="1"] {
    --ks-competition-accent: #0B9CA0;
}
html[data-kisure-design="865"] body .football-league-hero[data-kisure-competition-themed="1"] {
    border-color: color-mix(in srgb, var(--ks-competition-accent) 36%, rgba(15,23,42,.12)) !important;
    box-shadow: inset 4px 0 0 var(--ks-competition-accent) !important;
}
html[data-kisure-design="865"] body .football-schedule-competition[data-kisure-competition-themed="1"] > .football-schedule-competition__head {
    box-shadow: inset 4px 0 0 color-mix(in srgb, var(--ks-competition-accent) 70%, #ffffff) !important;
}
html[data-kisure-design="865"] body .football-prediction-league-group[data-kisure-competition-themed="1"],
html[data-kisure-design="865"] body .football-header-league[data-kisure-competition-themed="1"] {
    --ks-league-accent: var(--ks-competition-accent);
}

/* Player sidebar ad requested at 350px. */
html[data-kisure-design="865"] body .football-player-sidebar-ad .football-sidebar-ad-slot {
    min-height: 350px !important;
    display: grid !important;
    align-items: start !important;
}

/* My Kisure dashboard */
.ks-member-dashboard {
    display:grid;
    gap:1rem;
    padding-top:1.2rem;
    padding-bottom:2.5rem;
}
.ks-member-dashboard__notice {
    display:flex; align-items:center; gap:.55rem;
    padding:.8rem 1rem; border-radius:14px;
    background:#E8F7F7; color:#087C78; font-weight:800;
}
.ks-member-dashboard__hero {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,520px);
    align-items:center;
    gap:1.2rem;
    padding:clamp(1.2rem,2.2vw,2rem);
    border:1px solid rgba(11,156,160,.18);
    border-radius:24px;
    background:linear-gradient(135deg,#ffffff 0%,#f7fbfb 58%,#E8F7F7 100%);
}
.ks-member-dashboard__hero h1 { margin:.2rem 0 .45rem; font-size:clamp(2rem,4vw,3.5rem); line-height:1; }
.ks-member-dashboard__hero p { max-width:66ch; margin:0; color:var(--text-soft,#627078); }
.ks-member-dashboard__hero-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.ks-member-dashboard__hero-stats span {
    display:grid; gap:.15rem; min-width:0; padding:.8rem;
    border:1px solid rgba(11,156,160,.14); border-radius:16px; background:#fff; text-align:center;
}
.ks-member-dashboard__hero-stats strong { font-size:1.35rem; color:#087C78; }
.ks-member-dashboard__hero-stats small { color:#66767c; font-weight:800; }
.ks-member-dashboard__tabs { display:flex; gap:.45rem; flex-wrap:wrap; }
.ks-member-dashboard__tabs a {
    padding:.62rem .9rem; border-radius:999px; border:1px solid rgba(11,156,160,.18);
    background:#fff; color:#173038; font-weight:800;
}
.ks-member-dashboard__layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,360px); gap:1rem; align-items:start; }
.ks-member-dashboard__main,.ks-member-dashboard__side { display:grid; gap:1rem; min-width:0; }
.ks-member-dashboard__side { position:sticky; top:110px; }
.ks-member-follow-groups { display:grid; gap:1rem; }
.ks-member-follow-group { display:grid; gap:.6rem; }
.ks-member-follow-group > header { display:flex; align-items:center; gap:.55rem; padding:0 .1rem; }
.ks-member-follow-group > header > i { color:#0B9CA0; }
.ks-member-follow-group > header > span { margin-left:auto; color:#6c7c82; font-weight:800; }
.ks-member-follow-list { display:grid; gap:.5rem; }
.ks-member-follow-row {
    display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:.8rem;
    padding:.62rem .72rem; border:1px solid rgba(15,23,42,.08); border-radius:14px; background:#fff;
}
.ks-member-follow-row__identity { display:flex; align-items:center; gap:.72rem; min-width:0; color:inherit; }
.ks-member-follow-row__identity strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ks-member-follow-row__logo { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; }
.ks-member-follow-row__logo img { max-width:100%; max-height:100%; object-fit:contain; }
.ks-member-follow-row__logo i { color:#0B9CA0; }
.ks-member-unfollow {
    display:inline-flex; align-items:center; gap:.38rem; min-height:36px; padding:.45rem .65rem;
    border:1px solid rgba(11,156,160,.22); border-radius:999px; background:#E8F7F7; color:#087C78; font-weight:800; cursor:pointer;
}
.ks-member-upcoming-list { display:grid; gap:.5rem; }
.ks-member-upcoming-row {
    display:grid; grid-template-columns:minmax(0,1fr) auto 20px; align-items:center; gap:.8rem;
    padding:.82rem .9rem; border:1px solid rgba(15,23,42,.08); border-radius:14px; background:#fff; color:inherit;
}
.ks-member-upcoming-row > div { min-width:0; display:grid; gap:.18rem; }
.ks-member-upcoming-row small { color:#087C78; font-weight:850; }
.ks-member-upcoming-row strong { font-size:.96rem; line-height:1.25; }
.ks-member-upcoming-row strong em { font-style:normal; color:#7a898f; font-weight:700; }
.ks-member-upcoming-row time { white-space:nowrap; font-weight:850; color:#263a41; }
.ks-member-reminder-state { display:flex; align-items:center; gap:.75rem; margin-bottom:.9rem; padding:.78rem .9rem; border-radius:14px; }
.ks-member-reminder-state > span { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; flex:0 0 40px; }
.ks-member-reminder-state > div { min-width:0; }
.ks-member-reminder-state strong { display:block; }
.ks-member-reminder-state p { margin:.12rem 0 0; color:#65757b; font-size:.84rem; line-height:1.35; }
.ks-member-reminder-state.is-ready { background:#E8F7F7; }
.ks-member-reminder-state.is-ready > span { background:#0B9CA0; color:#fff; }
.ks-member-reminder-state.is-pending { background:#f4f5f5; }
.ks-member-reminder-state.is-pending > span { background:#26373d; color:#fff; }
.ks-member-empty { display:flex; align-items:center; gap:.8rem; padding:1rem; border:1px dashed rgba(11,156,160,.28); border-radius:16px; }
.ks-member-empty > i { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#E8F7F7; color:#087C78; }
.ks-member-empty p { margin:.18rem 0 0; color:#66777d; }
.ks-member-preferences form { display:grid; gap:.72rem; margin-top:.85rem; }
.ks-member-preferences label { display:grid; gap:.32rem; }
.ks-member-preferences label > span { font-size:.78rem; font-weight:850; color:#4c5d63; }
.ks-member-preferences select {
    width:100%; min-height:42px; padding:.55rem .7rem; border:1px solid rgba(15,23,42,.13); border-radius:11px; background:#fff; color:#17282f;
}
.ks-member-preferences__toggle { grid-template-columns:minmax(0,1fr) auto !important; align-items:center; gap:.7rem !important; }
.ks-member-preferences__toggle span { display:grid; gap:.15rem; }
.ks-member-preferences__toggle span b { color:#17282f; }
.ks-member-preferences__toggle span small { color:#708087; font-weight:600; }
.ks-member-preferences__toggle input[type="checkbox"] { width:38px; height:20px; accent-color:#0B9CA0; }
.ks-member-preferences__save { width:100%; margin-top:.2rem; }
.ks-member-dashboard__account-card h3 { overflow-wrap:anywhere; }

html[data-theme="dark"] .ks-member-dashboard__hero {
    background:linear-gradient(135deg,#171717 0%,#1b1f1f 62%,#142929 100%);
    border-color:rgba(11,156,160,.28);
}
html[data-theme="dark"] .ks-member-dashboard__hero p,
html[data-theme="dark"] .ks-member-follow-group > header > span,
html[data-theme="dark"] .ks-member-reminder-state p,
html[data-theme="dark"] .ks-member-empty p { color:#aab9bc; }
html[data-theme="dark"] .ks-member-dashboard__hero-stats span,
html[data-theme="dark"] .ks-member-dashboard__tabs a,
html[data-theme="dark"] .ks-member-follow-row,
html[data-theme="dark"] .ks-member-upcoming-row,
html[data-theme="dark"] .ks-member-preferences select {
    background:#1c1c1c; border-color:#333; color:#f7fbfb;
}
html[data-theme="dark"] .ks-member-dashboard__hero-stats strong { color:#72dfdc; }
html[data-theme="dark"] .ks-member-dashboard__hero-stats small,
html[data-theme="dark"] .ks-member-upcoming-row time,
html[data-theme="dark"] .ks-member-preferences label > span,
html[data-theme="dark"] .ks-member-preferences__toggle span b { color:#e3eded; }
html[data-theme="dark"] .ks-member-reminder-state.is-ready { background:#153332; }
html[data-theme="dark"] .ks-member-reminder-state.is-pending { background:#202020; }
html[data-theme="dark"] .ks-member-empty > i { background:#153332; color:#84e7e4; }
html[data-theme="dark"] .ks-member-dashboard__notice { background:#153332; color:#9bf2ee; }

@media (max-width: 1024px) {
    .ks-member-dashboard__hero { grid-template-columns:1fr; }
    .ks-member-dashboard__layout { grid-template-columns:1fr; }
    .ks-member-dashboard__side { position:static; }
}
@media (max-width: 640px) {
    .ks-member-dashboard { padding-top:.75rem; gap:.75rem; }
    .ks-member-dashboard__hero { border-radius:18px; padding:1rem; }
    .ks-member-dashboard__hero-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ks-member-dashboard__tabs { overflow-x:auto; flex-wrap:nowrap; scrollbar-width:none; }
    .ks-member-dashboard__tabs a { white-space:nowrap; }
    .ks-member-follow-row { grid-template-columns:minmax(0,1fr) auto; }
    .ks-member-unfollow span { display:none; }
    .ks-member-upcoming-row { grid-template-columns:minmax(0,1fr) 18px; }
    .ks-member-upcoming-row time { grid-column:1; font-size:.78rem; }
    .ks-member-upcoming-row > i { grid-column:2; grid-row:1 / span 2; }
}
.ks-member-alert-enable { margin-left:auto; flex:0 0 auto; }
@media (max-width:640px){ .ks-member-reminder-state { align-items:flex-start; flex-wrap:wrap; } .ks-member-alert-enable { margin-left:52px; } }
