/*
Theme Name: FPLBET Theme
Theme URI: https://fplbet.com
Author: FPLBET
Description: Custom theme for FPLBET - UK Betting Reviews & FPL Tips
Version: 2.0.0
License: GNU General Public License v2
Text Domain: fplbet-theme
*/

/* === RESET & BASE === */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #374151;
    background: #f5f6f8;
    -webkit-font-smoothing: antialiased;
}
a { color: #1B6B3A; text-decoration: none; transition: color 0.2s; }
a:hover { color: #28a745; }
img { max-width: 100%; height: auto; }
h1, h2, h3, h4, h5 { color: #1a1a2e; font-weight: 700; line-height: 1.3; }
.container { max-width: 1100px; margin: 0 auto; padding: 0 1rem; }

/* === HEADER === */
.site-header { background: #1a1a2e; position: sticky; top: 0; z-index: 1000; box-shadow: 0 2px 8px rgba(0,0,0,0.15); }
.header-inner { max-width: 1100px; margin: 0 auto; padding: 0 1rem; display: flex; align-items: center; justify-content: space-between; height: 60px; }
.site-logo img { height: 45px; width: auto; }
.main-nav { display: flex; align-items: center; gap: 0; }
.main-nav a { color: rgba(255,255,255,0.85); font-size: 0.82rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px; padding: 8px 14px; border-radius: 5px; transition: all 0.2s; }
.main-nav a:hover, .main-nav a.active { color: #fff; background: rgba(255,255,255,0.1); }
.mobile-toggle { display: none; background: none; border: none; color: #fff; font-size: 1.5rem; cursor: pointer; }

/* === FOOTER === */
.site-footer { background: #1a1a2e; color: rgba(255,255,255,0.6); padding: 2rem 0; }
.footer-rg { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 1.5rem; margin-bottom: 1.25rem; }
.footer-rg img { height: 22px; width: auto; opacity: 0.7; }
.footer-rg img:hover { opacity: 1; }
.footer-links { display: flex; justify-content: center; gap: 1.25rem; flex-wrap: wrap; margin-bottom: 0.75rem; }
.footer-links a { color: rgba(255,255,255,0.45); font-size: 0.75rem; }
.footer-links a:hover { color: rgba(255,255,255,0.8); }
.footer-copy { font-size: 0.68rem; color: rgba(255,255,255,0.3); text-align: center; line-height: 1.5; max-width: 700px; margin: 0 auto; }

/* === RESPONSIVE MOBILE HEADER === */
@media (max-width: 768px) {
    .header-inner { height: 52px; }
    .site-logo img { height: 38px; }
    .main-nav { display: none; }
    .main-nav.open { display: flex; flex-direction: column; position: absolute; top: 52px; left: 0; right: 0; background: #1a1a2e; padding: 0.5rem; z-index: 999; }
    .mobile-toggle { display: block; }
}


/* =============================================================
   BBS-STYLE REDESIGN LAYOUT
   Faithful recreation of bestbettingsites.co.uk structure
   ============================================================= */

/* === BASE RESETS FOR REDESIGN SECTION === */
html body article table::before,
html body article table::after,
html body article tbody::before,
html body article tbody::after,
html body article thead::before,
html body article thead::after,
html body article tr::before,
html body article tr::after { display: none; }

/* === INTRO HERO SECTION === */
.intro-new {
    z-index: 1;
    position: relative;
    flex: 0 0 100%;
    max-width: 1050px;
    margin: 0 auto 10px;
    border: none;
    padding: 50px 25px 10px;
    box-shadow: none;
    color: rgb(237, 247, 253);
}
.intro-new::after {
    z-index: 0;
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    width: 100vw;
    height: 500px;
    max-height: 90%;
    margin-left: -50vw;
    background: linear-gradient(rgb(5, 17, 26) 0%, rgb(9, 23, 35) 19%, rgb(23, 52, 77) 73%, rgb(28, 62, 91) 100%);
}
.intro-new > * { position: relative; z-index: 2; }
.intro-new h1 { font-weight: 900; font-size: 26px; line-height: 1.2; color: rgb(237, 247, 253); font-style: normal; }
.intro-new h1 strong { color: rgb(50, 143, 223); }
.intro-new .redesign-table-v3 { margin-right: 0; margin-left: 0; }
.intro-inner p { color: rgb(200, 220, 240); line-height: 1.6; margin-top: 8px; }
html body .intro-inner p strong { color: rgb(50, 143, 223); }

@media (max-width: 822px) {
    html body article { border-top-width: 30px; }
}
@media (min-width: 823px) {
    .intro-new .redesign-table-v3 { margin-right: 0; margin-left: 0; }
}
@media (min-width: 1024px) {
    .intro-new { padding: 0 10px 10px; }
    .intro-new .intro-inner { padding: 40px 0 0; max-width: 65%; }
    .intro-new h1 { font-size: 39px; }
    .intro-new h1 strong { display: block; }
    .intro-new .intro-inner p { max-width: 95%; }
    .intro-new .redesign-table-v3 { margin-right: 0; margin-left: 0; }
    .intro-new.home::before {
        z-index: 1;
        position: absolute;
        content: "";
        top: 0;
        right: -230px;
        width: 782px;
        height: 470px;
        background: url('/wp-content/uploads/bookmakers/bbs/best-betting-sites-uk-homepage.png') center 0 / contain no-repeat;
        opacity: 0.8;
    }
    .intro-new::after { top: 0; }
}

/* === REDESIGN BUTTON === */
.redesign-button {
    display: inline-block;
    padding: 11px 15px;
    border: 0;
    border-radius: 6px;
    vertical-align: middle;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: rgb(255, 255, 255);
    text-decoration: none;
    text-align: center;
    background: rgb(24, 168, 107);
    transition: background 0.15s;
    appearance: none;
}
.redesign-button:hover { background: rgb(15, 125, 78); color: #fff; }

/* === REDESIGN TABLE CORE === */
.redesign-table {
    padding: 15px 10px;
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.2;
    color: rgb(61, 61, 61);
    text-align: left;
    background: rgb(242, 245, 247);
}
.redesign-table thead { display: none; }
.redesign-table caption {
    padding: 14px 45px;
    margin-bottom: 10px;
    border-radius: 6px;
    font-size: 18px;
    color: rgb(255, 255, 255);
    text-align: center;
    background: url('/wp-content/uploads/bookmakers/bbs/redesign-table-caption-cup.png') 12px center / 22px 22px no-repeat #2c3e50;
}
.redesign-table tr {
    position: relative;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(4, auto);
    padding: 10px 7px;
    box-shadow: rgba(0,0,0,0.08) 0 1px 16px 0;
    border-radius: 6px;
    background: rgb(255, 255, 255);
    grid-template-areas:
        "logo logo logo bonus bonus bonus"
        "info info info info info info"
        "actions actions actions actions actions actions"
        "terms terms terms terms terms terms";
}
.redesign-table tr + tr { margin-top: 10px; }
.redesign-table tr::before {
    grid-area: logo / logo / logo / bonus;
    content: "";
    display: block;
    border-radius: 6px;
    background: rgb(242, 245, 247);
}
.redesign-table p { line-height: inherit; text-align: left; }
.redesign-table .redesign-table-info {
    grid-area: info;
    margin-bottom: 10px;
    text-align: center;
}
.redesign-table .redesign-table-position {
    position: absolute;
    width: 16px;
    height: 20px;
    top: 8px;
    left: 3px;
    grid-column: unset;
    border-radius: 6px;
    font-size: 10px;
    line-height: 20px;
    font-weight: 700;
    color: rgb(255, 255, 255);
    text-align: center;
    background: #1a1a2e;
}
.redesign-table .redesign-table-rating {
    grid-area: logo;
    position: relative;
    height: 20px;
    top: -10px;
    align-self: flex-end;
    padding: 0 35px 0 10px;
    margin: 0 auto;
    border-radius: 6px;
    box-shadow: rgba(0,0,0,0.08) 0 1px 16px 0;
    font-size: 12px;
    line-height: 20px;
    font-weight: 700;
    color: rgb(155, 155, 155);
    background: rgb(255, 255, 255);
}
.redesign-table .redesign-table-rating strong {
    font-family: system-ui, sans-serif;
    font-weight: 900;
    color: rgb(100, 100, 100);
}
.redesign-table .redesign-table-terms {
    grid-area: terms;
    font-size: 12px;
    line-height: 1.2;
    color: rgb(180, 180, 180);
    text-align: center;
}
.redesign-table .redesign-table-terms a { color: inherit; text-decoration: underline; }
.redesign-table .redesign-table-btn {
    grid-area: actions;
    margin-bottom: 10px;
    text-align: center;
}
.redesign-table .redesign-table-btn .redesign-button {
    position: relative;
    min-width: 248px;
    text-transform: uppercase;
}
.redesign-table .redesign-table-btn .redesign-button::before {
    content: "";
    position: absolute;
    width: 6px;
    height: 11px;
    top: 50%;
    right: 21px;
    margin-top: -6px;
    background: url('/wp-content/uploads/bookmakers/bbs/redesign-table-button-chevron.png') center center / contain no-repeat;
}
.redesign-table .redesign-table-bonus {
    grid-area: bonus;
    align-self: center;
    padding: 10px;
    font-size: 16px;
    font-weight: 700;
    color: rgb(23, 23, 23);
    text-align: center;
}
.redesign-table .redesign-table-bonus strong {
    display: block;
    font-size: 25px;
    font-family: system-ui, sans-serif;
    font-weight: 900;
    color: rgb(47, 179, 131);
}
.redesign-table .redesign-table-logo {
    grid-area: logo;
    min-height: 84px;
    align-self: center;
    line-height: 72px;
}
.redesign-table .redesign-table-logo > * {
    display: inline-block;
    width: 100%;
    vertical-align: middle;
}
.redesign-table .redesign-table-meta {
    padding: 0 20px;
    margin-bottom: 10px;
    line-height: 1.2;
}
.redesign-table .redesign-table-meta::after { content: ""; display: table; line-height: 0; clear: both; }
.redesign-table .redesign-table-author img {
    float: left;
    display: block;
    flex: 0 0 48px;
    margin-right: 15px;
    border-radius: 50%;
}
.redesign-table .redesign-table-author p { margin: 0; font-weight: 700; }
.redesign-table .redesign-table-author span { display: block; }
.redesign-table .redesign-table-author a { font-weight: 700; color: rgb(0, 0, 0); }
/* checkmark removed */
.redesign-table .redesign-table-author,
.redesign-table .redesign-table-last-updated {
    font-size: 12px;
    color: rgb(255, 255, 255);
}
.redesign-table tr::before,
.redesign-table .redesign-table-logo,
.redesign-table .redesign-table-bonus { margin-bottom: 20px; }
.redesign-table th, .redesign-table td { grid-column: 1 / 7; }
.redesign-table table,
.redesign-table caption,
.redesign-table tbody,
.redesign-table td,
.redesign-table th { display: block; }
.redesign-table,
.redesign-table::before,
.redesign-table::after,
.redesign-table *,
.redesign-table ::before,
.redesign-table ::after { box-sizing: border-box; }

/* === REDESIGN TABLE V3 === */
.redesign-table-v3 { margin-top: 30px; padding: 0; background: transparent; font-size: 15px; }
.redesign-table-v3 .redesign-table-author img { max-width: 40px; }
.redesign-table-v3 .redesign-table-author a { color: rgb(255, 255, 255); }
.redesign-table-v3 .redesign-table-author a:hover { text-decoration: underline; }
.redesign-table-v3 caption { background-color: rgb(16, 37, 55); }
.redesign-table-v3 table { border-radius: 10px; padding: 10px; background: rgb(231, 240, 253); }
.redesign-table-v3 tr { border-radius: 10px; padding: 10px; box-shadow: none; }
.redesign-table-v3 tr:hover { box-shadow: rgba(0,0,0,0.2) 0 0 7px 0; }
.redesign-table-v3 tr + tr { margin-top: 15px; }
.redesign-table-v3 tr::before { border-radius: 10px; background: rgb(218, 228, 241); }
.redesign-table-v3 .redesign-table-position {
    top: 10px;
    left: 10px;
    width: 31px;
    height: 31px;
    font-size: 16px;
    line-height: 31px;
    border-radius: 10px 0;
    background: #1a1a2e;
}
.redesign-table-v3 .redesign-table-logo {
    min-height: 110px;
    display: flex;
    flex-flow: wrap;
    align-items: center;
}
.redesign-table-v3 .redesign-table-btn { margin-top: 10px; margin-bottom: 20px; }
.redesign-table-v3 .redesign-button {
    display: block;
    max-width: 290px;
    width: 90%;
    margin: 0 auto;
    border: 3px solid rgb(255, 255, 255);
    padding: 12px 5px;
    box-shadow: rgba(0,0,0,0.35) 0 4px 10px 0;
    background: linear-gradient(to right, rgb(47, 179, 131) 0%, rgb(24, 168, 107) 100%);
    text-transform: uppercase;
    transition: 0.2s;
}
.redesign-table-v3 .redesign-button::before { content: none !important; }
.redesign-table-v3 .redesign-button:hover {
    background: linear-gradient(to right, rgb(24, 168, 107) 0%, rgb(24, 168, 107) 100%);
}
.redesign-table-v3 .redesign-table-terms {
    margin: 0 -10px -10px;
    border-radius: 0 0 10px 10px;
    padding: 10px;
    background: rgb(220, 229, 241);
    color: rgb(146, 146, 146);
}
.redesign-table-v3.with-tabularnote table {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

@media (max-width: 1023px) {
    .redesign-table-v3 tr::before { background: rgb(239, 244, 249); }
}

/* === DESKTOP TABLE LAYOUT === */
@media only screen and (min-width: 1024px) {
    .redesign-table { padding: 15px; }
    .redesign-table caption { padding: 13px 45px; font-size: 21px; }
    .redesign-table tr {
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(3, auto);
        align-items: center;
        align-content: center;
        padding: 15px;
        grid-template-areas:
            "logo bonus bonus actions"
            "logo info info actions"
            "terms terms terms terms";
    }
    .redesign-table tr + tr { margin-top: 15px; }
    .redesign-table tr::before { grid-area: logo; height: 100%; margin: 0; }
    .redesign-table .redesign-table-info {
        padding: 0 25px;
        margin: 5px 0 0;
        font-size: 15px;
        text-align: left;
    }
    .redesign-table .redesign-table-terms { padding-top: 20px; }
    .redesign-table .redesign-table-position { width: 24px; height: 28px; top: 5px; left: 5px; font-size: 15px; line-height: 28px; }
    .redesign-table .redesign-table-last-updated time { display: block; }
    .redesign-table .redesign-table-btn .redesign-button { min-width: 160px; padding-right: 20px; padding-left: 20px; }
    .redesign-table .redesign-table-rating {
        position: relative;
        min-width: 140px;
        height: 24px;
        top: 12px;
        padding: 0 0 0 10px;
        border: 1px solid rgb(242, 245, 247);
        border-radius: 24px;
        box-shadow: none;
        font-size: 14px;
        line-height: 24px;
        text-align: center;
        background: rgb(255, 255, 255);
    }
    .redesign-table .redesign-table-bonus {
        padding: 0 25px;
        font-family: system-ui, sans-serif;
        font-size: 21px;
        font-weight: 900;
        text-align: left;
    }
    .redesign-table .redesign-table-bonus strong { display: inline; font-size: inherit; }
    .redesign-table .redesign-table-author { flex: 0 0 50%; }
    .redesign-table .redesign-table-author span { display: block; padding-top: 8px; }
    .redesign-table .redesign-table-meta {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0;
    }
    .redesign-table .redesign-table-meta::after { display: none; }
    .redesign-table tr::before,
    .redesign-table .redesign-table-btn,
    .redesign-table .redesign-table-logo,
    .redesign-table .redesign-table-bonus { margin: 0; }

    /* V3 desktop overrides */
    .redesign-table-v3 { padding: 0; }
    .redesign-table-v3 table { padding: 15px; }
    .redesign-table-v3 .redesign-table-position { top: 15px; left: 15px; }
    .redesign-table-v3 .redesign-table-bonus { text-align: center; }
    .redesign-table-v3 .redesign-table-bonus strong { display: block; }
    .redesign-table-v3 .redesign-table-info { text-align: center; }
    .redesign-table-v3 .redesign-table-terms { margin: 20px -15px -15px; padding: 15px; }
    .redesign-table .redesign-table-last-updated {
        background: rgb(11, 23, 35);
        padding: 5px 15px;
        border-radius: 10px;
        position: relative;
        margin-bottom: -3px;
    }
}

/* === BOOKY LOGO CLASSES === */
._booky {
    display: block;
    width: 100%;
    height: 70px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    text-indent: -9999px;
    text-align: left;
    overflow: hidden;
}

/* Our bookmaker logos - pointing to /wp-content/uploads/bookmakers/bbs/ */
._booky.boylesports    { background-image: url('/wp-content/uploads/bookmakers/bbs/boylesports.png'); }
._booky.betfair        { background-image: url('/wp-content/uploads/bookmakers/bbs/betfair.png'); }
._booky.bet365         { background-image: url('/wp-content/uploads/bookmakers/bbs/bet365.png'); }
._booky.paddy-power    { background-image: url('/wp-content/uploads/bookmakers/bbs/paddy-power.png'); }
._booky.coral          { background-image: url('/wp-content/uploads/bookmakers/bbs/coral.png'); }
._booky.wh, ._booky.william-hill, ._booky.williamhill { background-image: url('/wp-content/uploads/bookmakers/bbs/williamhill.png'); }
._booky.betway         { background-image: url('/wp-content/uploads/bookmakers/bbs/betway.png'); }
._booky.ladbrokes      { background-image: url('/wp-content/uploads/bookmakers/bbs/ladbrokes.png'); }
._booky.betfred        { background-image: url('/wp-content/uploads/bookmakers/bbs/betfred.png'); }
._booky.betvictor      { background-image: url('/wp-content/uploads/bookmakers/bbs/betvictor.png'); }
._booky.betmgm         { background-image: url('/wp-content/uploads/bookmakers/bbs/betmgm.png'); background-size: contain; }
._booky.unibet         { background-image: url('/wp-content/uploads/bookmakers/bbs/unibet.png'); }
._booky.skybet         { background-image: url('/wp-content/uploads/bookmakers/bbs/skybet.png'); }
._booky.leovegas       { background-image: url('/wp-content/uploads/bookmakers/bbs/leo-vegas.png'); }
._booky.betuk          { background-image: url('/wp-content/uploads/bookmakers/bbs/betuk.png'); }
._booky.bet-uk         { background-image: url('/wp-content/uploads/bookmakers/bbs/bet-uk.png'); }
._booky.sport888       { background-image: url('/wp-content/uploads/bookmakers/bbs/888sport.png'); }
._booky.quinnbet       { background-image: url('/wp-content/uploads/bookmakers/bbs/quinnbet.png'); }
._booky.betwright      { background-image: url('/wp-content/uploads/bookmakers/bbs/betwright.png'); }
._booky.spreadex       { background-image: url('/wp-content/uploads/bookmakers/bbs/spreadex.png'); }
._booky.midnite        { background-image: url('/wp-content/uploads/bookmakers/bbs/midnite.png'); }
._booky.casumo         { background-image: url('/wp-content/uploads/bookmakers/bbs/casumo.png'); }
._booky.netbet         { background-image: url('/wp-content/uploads/bookmakers/bbs/netbet.png'); }
._booky.thepools       { background-image: url('/wp-content/uploads/bookmakers/bbs/thepools.png'); }
._booky.copybet        { background-image: url('/wp-content/uploads/bookmakers/bbs/copybet.png'); }
._booky.grosvenor      { background-image: url('/wp-content/uploads/bookmakers/bbs/grosvenor-sport.png'); }
._booky.mrgreen        { background-image: url('/wp-content/uploads/bookmakers/bbs/mrgreen.png'); }
._booky.dazn-bet, ._booky.dazn { background-image: url('/wp-content/uploads/bookmakers/bbs/dazn.png'); }
._booky.virgin-bet     { background-image: url('/wp-content/uploads/bookmakers/bbs/virgin-bet.png'); }
._booky.tote           { background-image: url('/wp-content/uploads/bookmakers/bbs/tote.png'); }
._booky.pricedup       { background-image: url('/wp-content/uploads/bookmakers/bbs/pricedup.png'); }
._booky.lottoland      { background-image: url('/wp-content/uploads/bookmakers/bbs/lottoland.png'); }
._booky.heyspin        { background-image: url('/wp-content/uploads/bookmakers/bbs/heyspin.png'); }
._booky.star-sports    { background-image: url('/wp-content/uploads/bookmakers/bbs/star-sports.png'); }
._booky.hot-streak     { background-image: url('/wp-content/uploads/bookmakers/bbs/hot-streak.png'); }
._booky.bwin           { background-image: url('/wp-content/uploads/bookmakers/bbs/bwin.png'); }
._booky.quickbet       { background-image: url('/wp-content/uploads/bookmakers/bbs/quickbet.png'); }
._booky.fun-casino     { background-image: url('/wp-content/uploads/bookmakers/bbs/fun-sports.png'); }
._booky.luckymate      { background-image: url('/wp-content/uploads/bookmakers/bbs/luckymate.png'); background-size: contain; }
._booky.matchbook      { background-image: url('/wp-content/uploads/bookmakers/bbs/matchbook.png'); }
._booky.playzee        { background-image: url('/wp-content/uploads/bookmakers/bbs/playzee-sports.png'); }
._booky.parimatch      { background-image: url('/wp-content/uploads/bookmakers/bbs/parimatch.png'); }
._booky.allbritish, ._booky.all-british { background-image: url('/wp-content/uploads/bookmakers/bbs/allbritish.png'); }
._booky.nrg            { background-image: url('/wp-content/uploads/bookmakers/bbs/nrgbet.png'); }
._booky.bet10          { background-image: url('/wp-content/uploads/bookmakers/bbs/10bet.png'); }
._booky.betmgm-nl      { background-image: url('/wp-content/uploads/bookmakers/bbs/betmgm-nl.png'); }
._booky.grandivy, ._booky.grand-ivy { background-image: url('/wp-content/uploads/bookmakers/bbs/grandivy.png'); }
._booky.yetibet        { background-image: url('/wp-content/uploads/bookmakers/bbs/yetibet.png'); }
._booky.fitzdares      { background-image: url('/wp-content/uploads/bookmakers/bbs/fitzdares.png'); }
._booky.betreels       { background-image: url('/wp-content/uploads/bookmakers/bbs/betreels.png'); }
._booky.betstorm       { background-image: url('/wp-content/uploads/bookmakers/bbs/betstorm.png'); }
._booky.betwright      { background-image: url('/wp-content/uploads/bookmakers/bbs/betwright.png'); }
._booky.red32          { background-image: url('/wp-content/uploads/bookmakers/bbs/32red-sport.png'); }
._booky.pub-sports     { background-image: url('/wp-content/uploads/bookmakers/bbs/pub-sports.png'); }

/* === FAST NAVIGATION / JUMP LINKS === */
.fast-navigation {
    background: rgb(250, 250, 250);
    min-height: 35px;
    position: relative;
    width: 100%;
    max-width: 1084px;
    padding: 0 20px;
    margin: 10px auto 0;
}
.fast-navigation::before {
    content: "Jump to:";
    display: inline-block;
    vertical-align: middle;
    float: left;
    margin-top: 12px;
    color: rgb(70, 82, 90);
    font-size: 12px;
}
.fast-navigation::after { content: " "; display: table; clear: both; }
.fast-navigation ul {
    display: flex;
    flex-flow: wrap;
    justify-content: space-around;
    align-items: center;
    overflow: hidden;
    text-align: center;
}
.fast-navigation ul li { padding: 10px; list-style: none; }
.fast-navigation ul li a { color: rgb(127, 145, 158); font-size: 12px; padding-bottom: 5px; text-decoration: none; }
.fast-navigation ul li a:hover { color: rgb(49, 143, 222); }
.fast-navigation ul li a.active { color: rgb(49, 143, 222); box-shadow: rgb(49, 143, 222) 0 4px 0 -1px; }

@media (max-width: 702px) {
    .fast-navigation { display: none; }
}
@media (max-width: 822px) {
    .fast-navigation { padding: 0 5px; }
    .fast-navigation::before { font-size: 11px; }
    .fast-navigation ul li a { font-size: 11px; }
}

/* === CONTENT SECTION BELOW TABLE === */
.bbs-content-section {
    max-width: 1100px;
    margin: 0 auto;
    padding: 30px 20px 40px;
}
.bbs-content-section h2 {
    font-size: 22px;
    font-weight: 800;
    color: rgb(16, 37, 55);
    margin: 30px 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #e7f0fd;
}
.bbs-content-section h2:first-child { margin-top: 0; }
.bbs-content-section p {
    color: rgb(61, 61, 61);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 14px;
}
.bbs-content-section ul {
    margin: 0 0 14px 20px;
    color: rgb(61, 61, 61);
    font-size: 15px;
    line-height: 1.7;
}
.bbs-content-section ul li { margin-bottom: 6px; }
.bbs-content-section strong { color: rgb(23, 23, 23); }

/* === RG / GAMBLE AWARE BOX === */
.tabularnote {
    padding: 12px 20px;
    background: rgb(231, 240, 253);
    border-radius: 0 0 10px 10px;
    font-size: 12px;
    color: rgb(100, 100, 100);
    line-height: 1.5;
    text-align: center;
}
.tabularnote a { color: rgb(50, 100, 180); }

/* === STICKY TOC (HEADER FAST NAV) === */
.sticky-toc { background: #0d1b2a; box-shadow: 0 1px 4px rgba(0,0,0,0.1); }
.sticky-toc-inner { max-width: 1100px; margin: 0 auto; display: flex; align-items: center; justify-content: center; overflow-x: auto; scrollbar-width: none; }
.sticky-toc-inner::-webkit-scrollbar { display: none; }
.sticky-toc a { color: rgba(255,255,255,0.7); font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px; padding: 10px 14px; white-space: nowrap; transition: all 0.2s; border-bottom: 2px solid transparent; }
.sticky-toc a:hover, .sticky-toc a.active { color: #fff; border-bottom-color: #D4A843; }

/* === RATING STARS (CSS-only fallback) === */
.star-rating { color: #f59e0b; font-size: 12px; letter-spacing: -1px; }

/* === GAMBLE AWARE FOOTER BOX === */
.ga-box {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 1.25rem;
    text-align: center;
    font-size: 0.82rem;
    color: #6c757d;
    margin: 1.5rem auto;
    max-width: 1100px;
    padding: 20px;
}
.ga-box strong { color: #212529; }
.ga-box a { color: #1B6B3A; }

/* === MOBILE RESPONSIVE === */
@media (max-width: 768px) {
    .bbs-content-section { padding: 20px 15px 30px; }
    .bbs-content-section h2 { font-size: 18px; }
}

@media only screen and (min-width: 768px) and (max-width: 822px) {
    .redesign-table tbody { display: flex; flex-flow: wrap; justify-content: space-between; }
    .redesign-table tr { flex: 0 0 49%; }
    .redesign-table tr + tr { margin: 0; }
    .redesign-table tr:nth-child(n+3) { margin-top: 2%; }
}

/* Universal font override */
body, article, .page, .content-section, h1, h2, h3, h4, h5, h6, p, td, th, a, span, div, li {
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* === TABLE ROUNDED CORNERS === */
.redesign-table-v3 { border-radius: 10px; overflow: hidden; border: 1px solid #e0e0e0; }
.redesign-table-v3 caption { border-radius: 10px 10px 0 0; }
.redesign-table-v3 table { border-radius: 0 0 10px 10px; overflow: hidden; }

/* === TOP 10 REVIEW SECTION === */
.review-section {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 25px 20px;
    margin-top: 15px;
}
.review-section h2 {
    font-size: 28px;
    font-weight: 700;
    color: #242424;
    margin-bottom: 10px;
}
.review-section > p {
    font-size: 15px;
    line-height: 1.7;
    color: #242424;
    margin-bottom: 20px;
}
.review-card {
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 15px;
}
.review-card h3 {
    font-size: 22px;
    font-weight: 700;
    color: #242424;
    margin-bottom: 15px;
}
.bm-screenshot {
    margin-bottom: 15px;
    text-align: center;
}
.bm-screenshot img {
    max-width: 100%;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
}
.review-card p {
    font-size: 15px;
    line-height: 1.7;
    color: #242424;
    margin-top: 14px;
}
.review-card .visit-review-btn {
    display: inline-block;
    padding: 11px 20px;
    border: 0;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    background: #18a86b;
    text-decoration: none;
    margin-top: 10px;
}
.review-card .visit-review-btn:hover {
    background: #0f7d4e;
}

/* === CONTENT SECTION CARDS (FAQ, How We Rate, etc.) === */
.content-section {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 25px 20px;
    margin-top: 15px;
}
.content-section h2 {
    font-size: 28px;
    font-weight: 700;
    color: #242424;
    margin-bottom: 10px;
}
.content-section p {
    font-size: 15px;
    line-height: 1.7;
    color: #242424;
}


.redesign-table-meta-standalone {
    padding: 0 0 12px;
    margin: 0;
    border: 0;
    background: transparent;
}
.redesign-table-meta-standalone .redesign-table-author,
.redesign-table-meta-standalone .redesign-table-last-updated {
    color: #e7f0fd;
}
.redesign-table-meta-standalone .redesign-table-author a {
    color: #fff;
}
.redesign-table-v3 {
    border: 0;
    box-shadow: none;
}


.bbs-meta-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 18px;
    padding: 0;
    line-height: 1.25;
}
.bbs-meta-inline .redesign-table-author,
.bbs-meta-inline .redesign-table-last-updated {
    color: #ffffff;
    font-size: 12px;
}
.bbs-meta-inline .redesign-table-author {
    display: flex;
    align-items: center;
    gap: 12px;
}
.bbs-meta-inline .redesign-table-author img {
    float: none;
    margin: 0;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
}
.bbs-meta-inline .redesign-table-author span {
    display: block;
    padding: 0;
}
.bbs-meta-inline .redesign-table-author small {
    display: block;
    color: rgba(255,255,255,0.75);
    font-size: 11px;
    font-weight: 400;
    margin-top: 2px;
}
.bbs-meta-inline .redesign-table-author a,
.bbs-meta-inline .redesign-table-last-updated time {
    color: #fff;
    font-weight: 700;
}
.bbs-meta-inline .redesign-table-last-updated {
    text-align: right;
    white-space: nowrap;
}
.redesign-table-v3 {
    margin-top: 18px;
    border-radius: 10px;
    overflow: hidden;
}
@media (max-width: 767px) {
    .bbs-meta-inline {
        display: block;
        margin-top: 14px;
    }
    .bbs-meta-inline .redesign-table-author {
        margin-bottom: 10px;
    }
    .bbs-meta-inline .redesign-table-last-updated {
        text-align: left;
    }
}


.intro-new {
    background-image: linear-gradient(rgba(15,23,42,0.72), rgba(15,23,42,0.72)), url(/wp-content/themes/fplbet-theme/img/fplbet-homepage-background.webp);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.bbs-meta-inline .redesign-table-author img {
    border-radius: 50%;
    object-fit: cover;
}
.bbs-meta-inline .redesign-table-last-updated {
    margin-left: auto;
    text-align: right;
}
@media (max-width: 767px) {
    .bbs-meta-inline .redesign-table-last-updated {
        margin-left: 0;
        text-align: left;
    }
}


.intro-new::after {
    background: linear-gradient(rgba(5,17,26,0.58), rgba(9,23,35,0.58), rgba(23,52,77,0.58), rgba(28,62,91,0.58)) !important;
}
.intro-new.home::before {
    opacity: 0 !important;
}
.intro-new {
    background-image: linear-gradient(rgba(15,23,42,0.45), rgba(15,23,42,0.55)), url(/wp-content/themes/fplbet-theme/img/fplbet-homepage-background.webp) !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
.bbs-meta-inline {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
}
.bbs-meta-inline .redesign-table-last-updated {
    margin-left: auto !important;
    text-align: right !important;
    display: block !important;
    flex: 0 0 auto !important;
}
.bbs-meta-inline .redesign-table-author img {
    border-radius: 999px !important;
}
