/*
	plugin_sidebar.css
*/

.single-picks-sidebar {
    margin: 0;
    width: 100%;
    max-width: none;
}

.sidebar-section {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    margin-bottom: 20px;
    overflow: hidden;
}

.popular-bets {
    border: 1px solid #cecece;
    background-color: #fff;
    margin-bottom: 23px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    /*padding: 15px 6px 20px 6px;*/
}

.section-header {
    background: white;
    color: #1e3a8a;
    font-weight: bold;
    font-size: 14px;
    padding: 12px 16px;
    border-left: 4px solid #052545;
    border-bottom: 1px solid #e5e7eb;
    text-transform: uppercase;
    letter-spacing: 0.5px;

    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    color: #052545;
    font-size: 20px;
}

.section-subheader {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    color: #151515;
    font-weight: bold;

    background: #f3f4f6;
    padding: 8px 16px;
    font-weight: bold;
    color: #374151;
    text-align: center;
    border-bottom: 1px solid #e5e7eb;
}

.section-content {
    padding: 16px;
}

/* Featured Bonus Section */
.featured-bonus .section-content {
    padding: 20px 16px;
}

.bonus-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    justify-content: center;
}

.bonus-logo {
    flex-shrink: 0;
}

.bonus-text {
    flex: 1;
}

.bonus-brand {
    font-size: 18px;
    margin-bottom: 4px;
}

.rating-stars {
    margin-bottom: 4px;
}

.star {
    color: #fbbf24;
    font-size: 22px;
}

.star.empty {
    color: #e5e7eb;
}

.rating-text {
    font-size: 14px;
    margin-bottom: 0px;
}

.bonus-percentage {
    font-size: 24px;
    color: #1e3a8a;
    margin-bottom: 2px;
}

.bonus-type {
    font-size: 14px;
}

.bonus-action {
    text-align: center;
}

.claim-btn {
    background: #f97316;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 6px;
    font-weight: bold;
    text-decoration: none;
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: 14px;
}

/* Popular Bets Section */
.bet-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    border-bottom: 1px solid #f3f4f6;
}

.bet-item:last-child {
    border-bottom: none;
}

.bet-team-left, .bet-team-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.team-info {
    text-align: center;
}

.team-logo {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #1e3a8a;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 10px;
    font-weight: bold;
}

.spread {
    font-weight: bold;
    color: #1e3a8a;
    margin-bottom: 2px;
}

.team-name {
    font-size: 11px;
    color: #6b7280;
    text-transform: uppercase;
    line-height: 1.2;
}

.bet-center {
    text-align: center;
}

.bet-date {
    font-size: 11px;
    color: #9ca3af;
}

/* Related Content Section */
.content-item {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #f3f4f6;
}

.content-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.content-image {
    width: 100%;
    height: 120px;
    background: #1f2937;
    border-radius: 6px;
    margin-bottom: 8px;
    background-size: cover;
    background-position: center;
}

.content-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e5e7eb;
}

.content-tag {
    background: #f97316;
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
}

.content-time {
    font-size: 11px;
    color: #9ca3af;
}

.content-title {
    font-size: 13px;
    font-weight: bold;
    color: #1e3a8a;
    line-height: 1.4;
    margin-bottom: 8px;
}

.content-excerpt {
    font-size: 12px;
    color: #6b7280;
    line-height: 1.4;
    margin-bottom: 8px;
}

.read-more {
    color: #2563eb;
    font-size: 12px;
    text-decoration: none;
}

/* Sports Bonus Section */
.sports-bonus-content {
    display: flex;
    gap: 12px;
}

.bonus-main {
    flex: 1;
}

.bovada-section {
    /*background: #000;*/
    color: white;
    padding: 16px;
    border-radius: 6px;
    text-align: center;
    margin-bottom: 12px;
}

.bovada-logo {
    color: #dc2626;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 0px;
}

.bonus-amount {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 12px;
}

.sports-bonus .bonus-amount .bonus-amount-hidden{
    display: none !important;
}

.claim-button {
    background: #f97316;
    color: white;
    border: none;
    padding: 8px 16px;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    font-size: 12px;
}

.bonus-features {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bonus-features li {
    font-size: 12px;
    margin-bottom: 4px;
    color: #22c55e;
}

.sportsbook-logos {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 80px;
    flex-shrink: 0;
}

.sportsbook-logo {
    background: #f3f4f6;
    padding: 6px 4px;
    border-radius: 4px;
    text-align: center;
    font-size: 9px;
    font-weight: bold;
    border: 1px solid #e5e7eb;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Authors Section */
.authors-section .section-content {
    /*padding: 0;*/
}

.authors-section .about-author-sidebar-wrap {
    /*margin-bottom: 0;*/
}

.authors-section .about-author {
    padding: 16px;
}

/* new css  */

/* Bet Item wrapper */
.sidebar-section.popular-bets {
    border-radius: 10px;
    display: block;
}

.bet-item-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 6px 6px 6px 16px;
    /*border-bottom: 1px solid #052545;*/
}

.bet-item-container .bet-item-title {
    font-weight: bold;
    text-transform: uppercase;
    /*border-bottom: 1px solid #f3f4f6;*/
}

.bet-item-container .bet-item-date {
    font-weight: bold;
}

.sidebar-section.popular-bets .bet-item {
    padding: 20px 6px 20px 16px;
    border-bottom: 1px solid #f3f4f6;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    gap: 0px;
    border-bottom: none;
}

/* Spread label */
.sidebar-section.popular-bets .bet-label {
  font-size: 11px;
  font-weight: bold;
  text-transform: uppercase;
  color: #999;
}

/* Rows */
.sidebar-section.popular-bets .bet-team-left,
.sidebar-section.popular-bets .bet-team-right {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-top: 1px solid #f3f4f6;
    padding-top: 0px;

    /* test */
    display: flex; 
    flex-wrap: wrap;
}

/* Home row */
.sidebar-section.popular-bets .bet-team-left {
  /*justify-content: flex-start;*/
  /*border-top: 1px solid #f3f4f6;*/
  /*padding-top: 0px;*/
  border-top: none;
  gap: 10px;
}

/* Away row */
.sidebar-section.popular-bets .bet-team-right {
  /*justify-content: flex-start;*/
  /*border-top: 1px solid #f3f4f6;*/
  /*padding-top: 0px;*/
  border-top: none;
}

/* Logo */
.sidebar-section.popular-bets .team-logo {
  width: 40px;
  height: 40px;
  background: #052545;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

/* Spread + team */
.sidebar-section.popular-bets .team-info {
    margin-top: 6px;
    display: flex;
    flex-direction: row;
    gap: 6px;
    align-items: center;
    justify-content: center;
}

.sidebar-section.popular-bets .team-info .spread {
    font-size: 14px;
    font-weight: bold;
    color: #222;
}

.sidebar-section.popular-bets .team-info .spread .spreads {
    font-size: 24px;
    font-weight: bold;
}

.sidebar-section.popular-bets .team-name {
    font-size: 12px;
    text-transform: uppercase;
    color: #444;
    line-height: 1.2;
    text-align: center;
    flex: 1 0 100%; 
}

/* Date */
.sidebar-section.popular-bets .game-date {
    margin-left: auto;
    font-size: 10px;
    color: #999;
}

/* Fixes */

.featured-bonus .bonus-content {
    display: block !important;
}

.featured-bonus {
    padding: 20px 20px;
    border: 1px solid #a0a2a8;
    background-color: #eef1f4;
    padding: 0;
    background-size: cover;
    background: url('/wp-content/uploads/sinle-picks-bonus-bg.png');
    background-size: contain;
    background-position: center;
}

.featured-bonus .bonus-content {
    padding: 10px 6px;
    margin-bottom: 23px;
    border-radius: 10px;
    /*border: 1px solid #a0a2a8;*/
    /*background-color: #eef1f4;*/
    /*box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);*/
    margin-bottom: 0;
}

.featured-bonus .bonus-content .bonus-row.rating-row{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:6px;
}

.featured-bonus .bonus-content .bonus-row.logo-row{
    text-align:center; 
    margin:12px 0;
}

.featured-bonus .bonus-content .bonus-row {
    margin: 0;
    padding: 0;
    background: #f3f4f6;
    color: #000;
    border: none;
    background: none;
}

.featured-bonus .bonus-content .bonus-row:first-child {
    background: none;
}

.featured-bonus .bonus-content .bonus-row:nth-child(3) {
    flex-direction: column;
    gap: 0px;

    /*border: 1px solid red;*/
}

.featured-bonus .bonus-content .claim-btn {
    border-radius: 5px;
    font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    color: #fff;
    background: #00a915;
    width: 100%;
    max-width: 188px;
}

.featured-bonus .bonus-content .bonus-logo {
    background-color: #fff;
    border-radius: 10px;
    /*border: 1px solid #8c8f95;*/
    margin-bottom: 15px;
    margin-right: 10px;
    /*border: 1px solid #a0a2a8;*/
    border-radius: 10px;
    margin-bottom: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    border-bottom: 4px solid #052545;
}

.featured-bonus .bonus-content .bonus-brand {
    font-family: 'Montserrat', sans-serif;
    color: #000;
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #000;
}

.featured-bonus .bonus-content .bonus-percentage {
    font-family: 'Montserrat', sans-serif;
    color: #000;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 5px;
    color: #000;
    color: #003366;
    font-size: 4rem;
    font-weight:700;
}

.featured-bonus .bonus-content .bonus-type {
    font-family: 'Montserrat', sans-serif;
    color: #000;
    font-size: 15px;
    font-weight: bold;
    color: #000;
    color: #003366;
    color: #0197D5;
    font-size: 24px;
}

.featured-bonus .bonus-content .bonus-action {
    text-align:center; 
    margin-top:15px;
}

.featured-bonus .bonus-content .bonus-text {
    text-align:center; 
    margin:12px 0;
}

.featured-bonus .bonus-content .bonus-text .rating-text {
    color: #000;
}

/* SPORTS BONUS OFFER */

.sports-bonus {
    margin-bottom: 23px;
    border-radius: 10px;
    border: 1px solid #cecece;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.sports-bonus .section-header {
    background-color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    color: #052545;
    padding: 10px 14px;
    text-align: center;
    font-size: 20px;
    /*border-top-left-radius: 10px;*/
    /*border-top-right-radius: 10px;*/
    /*border-bottom: 1px solid #cecece;*/
}
.sports-bonus .bonus-amount {
    font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    font-weight: bold;
    margin-bottom: 7px;
    color: #cc0000;
    color: #808080;
}

.sports-bonus .bonus-amount.gray {
    color: #808080;
}

.sports-bonus .bonus-amount {
    color: #424755;
    font-size: 20.5px;
    font-weight: 700;
    line-height: 20px;
    margin-top: 5px;
    letter-spacing: -1px;
    margin-bottom: 9px;
    text-align: center;
    text-transform: uppercase;
}

.sports-bonus .bonus-amount i {
    font-size: 14px;
    color: #878c98;
    font-style: normal;
    padding: 0 3px;
    font-weight: 400;
    position: relative;
    top: -2px;
}

.sports-bonus .bonus-features-wrap { 
    margin-top:10px;
}

.sports-bonus .bonus-features { 
    list-style:none;
    margin:0;
    padding:0;
    column-count:1 !important;
    text-align: center;
    gap: 0;
}

.sports-bonus .bonus-features li {
    font-family: 'Montserrat', sans-serif;
    color: #707070;
    background:#ffffff;
    font-size:14px;
    /* border-top: 1px solid #c5c5c5; */
    margin: 0px 10px;
    padding: 10px 10px;
    margin-bottom: 0px;
}

.sports-bonus .bonus-features li:last-child { 
    margin-bottom:0;
 }

.sports-bonus .bonus-features li .tick {
    color: #00a915;
    margin-right: 10px;
}

.sports-bonus .bonus-features li .text {
    color: #707070;   
}

.sports-bonus .sports-bonus-cta {
    margin-top: 0px;
}

.sports-bonus .sports-bonus-cta .claim-button {
    border-radius: 5px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    color: #fff;
    background: #00a915 !important;
    width: 100%;
    max-width: 150px;
    margin-bottom: 10px;
}

/* ------- FIXED 3:1 LAYOUT (no shrink/grow) ------- */
.sports-bonus .sports-bonus-content{
    display:flex;
    align-items:flex-start;
    gap: 8px;
    padding: 14px;
    background:#fff;
}
.sports-bonus .bonus-main{
    flex:0 0 73%;
    max-width:73%;
    /* fixed fraction */
    box-sizing:border-box;
}
.sports-bonus .sportsbook-logos{
    flex:0 0 25%;
    max-width:25%;
    box-sizing:border-box;
    position:relative;
    display:flex;
    flex-direction:column;
    gap: 8px;
}

/* Card */
.sports-bonus .bovada-section{
    border-radius:8px;
    padding: 0 16px;
    text-align:center;
    color:#fff;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    /*background:linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)), #222;*/
    min-height:140px;
    margin-bottom: 0px;
}
.sports-bonus .brand-betonline{
    /*background:linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)), #D22B2B;*/
}

.sports-bonus .brand-betus{
    /*background:linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)), #0A3D62;*/
}

.sports-bonus .brand-mybookie{
    /*background:#F58220;*/
 /*background:linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)), #F58220;*/
}

.sports-bonus .brand-bookmaker{
    /*background:linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)), #111111;*/
}

.sports-bonus .brand-bet105{
    /*background:linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)), #1E90FF;*/
}

.sports-bonus .bovada-logo img {
     /*max-height: 80px;*/
     /*margin-bottom:8px;*/
     object-fit:contain;
     display:block;
}

.sports-bonus .bonus-amount{ 
    font-weight:800;
    font-size:20px;
    /*color: #00a915 !important;*/
 }
/* Right column logos + shimmer only here */
.sports-bonus .sportsbook-logo{
    position:relative;
    background:#ffffff;
    border:1px solid #e6e6e6;
    border-radius:6px;
    padding:8px;
    cursor:pointer;
    transition:transform .12s ease, background .15s ease, border-color .15s ease;
    
}
.sports-bonus .sportsbook-logo:hover{
    transform:translateY(-1px);
}

.sports-bonus .sportsbook-logo.active {
    background: #ffffff;
    border: 1px solid #e6e6e6;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.sports-bonus .sportsbook-logo img{ 
    /*max-height:28px; */
    object-fit:contain; 
    display:block; 
    margin:0 auto; 
}
.sports-bonus .sportsbook-logo.active img{ 
    /*filter:invert(1) brightness(2); */
}
.sports-bonus .sportsbook-logo .loader-overlay{
    position:absolute; 
    inset:0; 
    pointer-events:none; 
    opacity:0;
    /*background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.35) 40%, rgba(255,255,255,.35) 60%, rgba(255,255,255,0) 100%);*/
    transform:translateX(0%);
    background: rgba(255, 255, 255, 0.5);
}
.sports-bonus .sportsbook-logo.active .loader-overlay{ 
    animation: load 5s linear forwards; opacity:1; 
}
@keyframes sb-sweep { 
    from{
        transform:translateX(-100%);
    } 
    to{
        transform:translateX(100%);
    } 
}

@keyframes load {
    from {
        width: 0;
    }

    to {
        width: 100%;
    }
}

.sports-bonus .sportsbook-logo {
    overflow: hidden;
}
.sports-bonus .sportsbook-logos .arrow-point {
    /*display: none;*/
}
/* Arrow pointer */
.sports-bonus .arrow-point{
    position: absolute;
    left: -12px;
    top: 0;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #ffffff;
    transform: translateY(-50%);
}

/* CTA bottom */
.sports-bonus .sports-bonus-cta{ 
    margin-top: 0px;
    text-align:center;
 }

.sports-bonus .sports-bonus-cta .claim-button{ 
    padding:10px 18px;
    border:none;
    border-radius:6px;
    background:#111;
    color:#fff;
    font-weight:700;
    cursor:pointer;
 }

/* Responsive: stack at small widths */

@media (max-width: 991px) {
    .sports-bonus-content {
        flex-direction: column;
    }
    
    .sportsbook-logos {
        flex-direction: row;
        width: 100%;
        flex-wrap: wrap;
    }
    
    .sportsbook-logo {
        flex: 1;
        min-width: 60px;
    }
}

@media (max-width: 768px) {
    .bet-item {
        text-align: center;
        flex-direction: column;
        gap: 8px;
    }
    
    .bet-team-left, .bet-team-right {
        justify-content: center;
    }

    .sports-bonus .sports-bonus-content{ 
        /*flex-direction:column;*/
        flex-direction:row;
     }
    .sports-bonus .bonus-main, .sports-bonus .sportsbook-logos{ 
        /*flex:0 0 100%;*/
        /*max-width:100%;*/
		/*width: 100%;*/
     }
}

@media (max-width: 576px) {
    
}

@media (max-width: 480px) {
    .sidebar-section.popular-bets .team-info .team-name {
        display: none;
    }

    .bet-item {
        justify-content: space-evenly;
    }
}

.loader-overlay {
    /*border: 1px solid red;*/
}

.sports-bonus .sportsbook-logo {
    padding: 0;
    min-height: 35px;
}

.sports-bonus .sportsbook-logo.active img {
    width: 100%;
}

.bonus-main {
    background: #ffffff;
    border: 1px solid #e6e6e6;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
}

.sidebar-section.sports-bonus.sidebar-sports-bonus.moved {
    max-width: 306px;
    /*border: 1px solid red;*/
}

@media (max-width: 480px) {
	.sports-bonus .bovada-section {
		/*flex-direction: row;*/
		/* flex-flow: wrap; */
		/*gap: 0px;*/
	}
	.sports-bonus .bonus-amount {
		display: flex;
		flex-direction: initial;
		flex-flow: column;
	}
	.sports-bonus .bonus-amount i {
		top: 0px;
		margin-top: 5px;
		margin-bottom: 5px;
	}
	.sports-bonus .bovada-logo img {
		max-width: 160px;
	}
	.sports-bonus .sportsbook-logo.active img {
		max-height: 42px;
	}
	.sports-bonus .sports-bonus-cta .claim-button {
		max-width: 178px;
        margin: 10px auto;
        display: block;
	}
}

@media (min-width: 768px) {
    .sports-bonus-content {
        flex-direction: row;
    }
    .sports-bonus .sports-bonus-content {
        align-items: center;
    }
}

/* IMG FIX */
.sidebar-section.popular-bets .team-logo {
    width: 60px;
    height: 60px;
    background: transparent;
}
.team-logo {
    background: transparent;
           
}
.team-logo .bg-img {
    background: transparent;
    width: 60px;
    height: 60px;
    background-size: cover;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 10px;
    border: 1px solid #d5d8e0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    margin-bottom: 10px;
    border-bottom: 4px solid #052545;
}

/*.sidebar-section.popular-bets .bet-team-left .team-name {
    text-align: center;
    text-align: left;
    padding-left: 10px;
}

.sidebar-section.popular-bets .bet-team-right .team-name {
    text-align: center;
    text-align: right;
    padding-right: 10px;
}*/

.sidebar-section.popular-bets .bet-item-container {
    border-bottom: 1px solid #e5e7eb;
}

.sidebar-section.popular-bets .bet-item {
    padding: 10px 0px 10px 0px;
}

.sidebar-section.popular-bets .team-info .spread .odds {
    font-size: 18px;
}

.sidebar-section.popular-bets .bet-team-left .team-name {
    text-align: left;
    padding-left: 26px;
}

.sidebar-section.popular-bets .bet-team-right .team-name {
    text-align: right;
    padding-right: 26px;
}

.sidebar-section.popular-bets .team-name {
    /*padding-left: 26px;*/
    /*padding-right: 26px;*/
    font-size: 14px;
}

.team-name {
    font-weight: bold;
    color: #2c3e50;
    font-size: 16px;
    margin-top: 8px;
}

.sidebar-section {
    /*border: 1px solid red;*/
}

.single-picks-sidebar .sidebar-section .featured-bonus {
    /*background: url('/wp-content/uploads/sinle-picks-bonus-bg.png');
    background-size: unset;*/
}

@media (max-width: 600px) {
    .white-content.picks-single {
        padding: 90px 0px 0px 0px;
    }
}