/* VirtualBet24 theme overrides — fonts, ad-free layout fixes, sidebar, polish.
   Loaded after stylesheet_c.css. IDs are used where needed to beat the
   original `div.col_left` specificity. The original CSS is left untouched. */

/* ---- Fonts (originally injected inline in <head>) -------------------------- */
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/roboto_condensed_regular.woff") format("woff"),
      url("../fonts/roboto_condensed_regular.ttf") format("truetype");}
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:300;font-display:swap;
  src:url("../fonts/roboto_condensed_light.woff") format("woff"),
      url("../fonts/roboto_condensed_light.ttf") format("truetype");}

/* No ad background on body. */
body{background-image:none!important;}

/* ---- Desktop grid: content column + sidebar, centered as one block --------- */
@media (min-width:1028px){
  .main .row{justify-content:center;align-items:flex-start;gap:18px;max-width:1010px;margin-left:auto;margin-right:auto;}
  #col_left{width:670px;left:auto;margin:4px 0 0;position:relative;}
  #col_right{width:300px;left:auto;margin:4px 0 0;position:relative;display:block;}
  label.menu_icon{display:none;}            /* stray hamburger hidden on desktop */
}
@media (max-width:1027px){ #col_right{display:none;} }   /* sidebar desktop-only */

/* ---- Header logo bar: tighten + centered tagline fills the old ad void ----- */
.top_tagline{margin:0;}
@media (min-width:1028px){
  .top_tagline{position:absolute;left:50%;transform:translateX(-50%);top:40px;
    color:#9a9a9a;font-weight:300;font-size:1.18em;letter-spacing:.3px;white-space:nowrap;}
}
@media (max-width:1027px){ .top_tagline{display:none;} }

/* ---- Sidebar widgets (reuse .back_white card look) ------------------------- */
#col_right .vb-widget{margin-bottom:14px;padding:0 0 6px;}
#col_right .vb-widget-title{margin:0 0 2px;padding:9px 12px;font-size:1.05em;font-weight:400;
  color:#222;background:#f5f5f5;border-left:3px solid #fe6e00;}
.vb-widget-list{list-style:none;margin:0;padding:0;}
.vb-widget-list li{border-top:1px solid #eee;}
.vb-widget-list li:first-child{border-top:0;}
.vb-widget-list li a{display:block;padding:8px 12px;color:#333;font-size:.95em;text-decoration:none;line-height:1.25;}
.vb-widget-list li a:hover{background:#fafafa;color:#fe6e00;}

/* ---- Sticky nav: ensure it sits cleanly on top, no logo overlap ----------- */
#menu_top.sticky{box-shadow:0 1px 6px rgba(0,0,0,.12);}

/* ---- Mobile: remove the empty 80px fixed grey bar (leftover ad container) -- */
@media (max-width:599px){ .top_contain{display:none!important;} }

/* ---- Mobile: stop the content column overflowing tiny phones --------------- */
@media (max-width:1027px){ #col_left{width:auto;box-sizing:border-box;} }

/* ---- Responsive tables: scroll instead of being clipped ------------------- */
.vb-table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:6px 0;}

/* ---- Safety net: hide any ad / tracking remnants from imported content ----- */
.ad,.ad_inf,.ad_close,.top_b,.box_rgrey,.native,.native_descr,.back_img,
#push_container,#right_b1,#right_b2,.rectangle,.in_pred_ad{display:none!important;}

/* ---- Content readability & mild polish (prose only; cards/odds untouched) -- */
#col_left img{max-width:100%;height:auto;}
#col_left .entry-content{padding:8px 12px;}
#col_left table{max-width:100%;}
#col_left .entry-title{font-size:1.55em;line-height:1.2;margin:6px 12px 12px;}
#col_left .entry-content p,#col_left .entry-content li{line-height:1.5;}
#col_left .entry-content p a{text-decoration:underline;text-decoration-color:#ddd;text-underline-offset:2px;}
#col_left .entry-content p a:hover{text-decoration-color:#fe6e00;color:#fe6e00;}
#col_left .back_white + .back_white{margin-top:14px;}

/* ---- Footer: balance the three columns + responsible-gambling line --------- */
.footer_content{justify-content:space-between;max-width:1018px;margin:0 auto;}
.copy{margin-left:0;}
.disclaimer{max-width:1010px;margin:0 auto 4px;padding:8px;color:#cfcfcf;font-size:.8em;
  text-align:center;line-height:1.45;}
.div_ok .ok{border:0;background:none;font:inherit;cursor:pointer;}

/* ---- Dynamic homepage ----------------------------------------------------- */
.vb-home-sec{margin:0 0 18px;}
.vb-home-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 2px 8px;}
.vb-home-h{margin:0;font-size:1.25em;font-weight:400;border-left:4px solid #fe6e00;padding-left:10px;line-height:1.1;}
.vb-home-all{font-size:.85em;color:#fe6e00;white-space:nowrap;}
.vb-home-all:hover{text-decoration:underline;}

/* Hero */
.vb-hero{display:flex;gap:0;overflow:hidden;margin-bottom:18px;padding:0;}
.vb-hero-img{flex:0 0 42%;display:block;}
.vb-hero-img img{width:100%;height:100%;object-fit:cover;display:block;}
.vb-hero-body{padding:16px 18px;flex:1;}
.vb-hero-tag{display:inline-block;background:#fe6e00;color:#fff;font-size:.7em;text-transform:uppercase;letter-spacing:.6px;padding:2px 8px;border-radius:2px;}
.vb-hero-title{margin:8px 0 6px;font-size:1.5em;line-height:1.18;}
.vb-hero-excerpt{margin:0 0 10px;color:#555;line-height:1.5;}
.vb-hero-more{color:#fe6e00;font-weight:400;}

/* Prediction grid */
.vb-pred-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.vb-pred-card{background:#fff;border:1px solid #ececec;border-radius:3px;overflow:hidden;display:flex;flex-direction:column;}
.vb-pred-card:hover{border-color:#fe6e00;}
.vb-pred-thumb img{width:100%;height:120px;object-fit:cover;display:block;}
.vb-pred-body{padding:10px 12px;display:flex;flex-direction:column;gap:5px;}
.vb-pred-ko{font-size:.72em;text-transform:uppercase;letter-spacing:.4px;color:#999;}
.vb-pred-match{margin:0;font-size:1.02em;line-height:1.2;}
.vb-pred-tipline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px;}
.vb-pred-tip{background:#f1f7ee;color:#2f7d1f;font-weight:700;font-size:.85em;padding:2px 8px;border-radius:2px;}
.vb-pred-odds{font-weight:700;color:#222;font-size:.9em;}
.vb-pred-excerpt{margin:0;color:#666;font-size:.88em;line-height:1.4;}
.vb-pred-conf{margin-top:2px;}
.vb-stars{color:#fe6e00;letter-spacing:1px;}
.vb-stars-off{color:#ddd;}

/* News list */
.vb-news-list{padding:4px 0;}
.vb-news-item{padding:10px 14px;border-top:1px solid #f0f0f0;}
.vb-news-item:first-child{border-top:0;}
.vb-news-date{font-size:.72em;text-transform:uppercase;letter-spacing:.4px;color:#aaa;}
.vb-news-title{margin:3px 0;font-size:1.05em;line-height:1.2;}
.vb-news-excerpt{margin:0;color:#666;font-size:.9em;line-height:1.45;}
.vb-home-live .vb-home-h{font-size:1.05em;}

/* Compact league table inside the narrow sidebar: drop W/D/L/GD, keep # Team P Pts */
#col_right .vb-sm-table th:nth-child(n+4):nth-child(-n+7),
#col_right .vb-sm-table td:nth-child(n+4):nth-child(-n+7){display:none;}
#col_right .vb-sm-table th,#col_right .vb-sm-table td{padding:5px 4px;}
#col_right .vb-widget .vb-table-wrap{margin:0;}

@media (max-width:560px){
  .vb-hero{flex-direction:column;}
  .vb-hero-img{flex-basis:auto;max-height:180px;}
  .vb-pred-grid{grid-template-columns:1fr;}
}

/* Keep the cookie bar + footer copyright from overflowing narrow screens. */
#cookies.cookies{box-sizing:border-box;max-width:100vw;}
.cookies .text_cookie{max-width:100%;}
.footer_b{overflow:hidden;}
.copy{box-sizing:border-box;max-width:100%;}
