/* ==========================================================================
   Cool Casino Contests - "Casino Pop" theme (Style C)
   Used together with Bootstrap 5.
   ========================================================================== */

:root{
  --cp-cream:#fff8ec;
  --cp-red:#e63946;
  --cp-red-dark:#c62836;
  --cp-orange:#ff9f1c;
  --cp-plum:#3a2449;
  --cp-plum-dark:#2b1a38;
  --cp-teal:#2ec4b6;
  --cp-card:#ffffff;
  --cp-text:#39304a;
  --cp-muted:#857c96;
  --cp-border:#f6ead2;
  --cp-border-2:#f1e4cb;
}

body{
  font-family:'Nunito',system-ui,-apple-system,sans-serif;
  background:var(--cp-cream);
  color:var(--cp-text);
}
h1,h2,h3,h4,h5,h6{font-weight:900;color:var(--cp-plum);}
a{color:var(--cp-red);}
a:hover{color:var(--cp-red-dark);}

/* --- Navbar ------------------------------------------------------------- */
.navbar-ccc{background:var(--cp-cream);border-bottom:3px solid var(--cp-border-2);}
.navbar-ccc .nav-link{color:var(--cp-plum);font-weight:800;font-size:.92rem;border-radius:2rem;padding:.4rem 1rem !important;}
.navbar-ccc .nav-link:hover{background:#ffeed2;color:var(--cp-plum);}
.navbar-ccc .nav-link.active{background:var(--cp-red);color:#fff;}
.navbar-ccc .dropdown-menu{border:3px solid var(--cp-border);border-radius:1.2rem;box-shadow:0 14px 34px -16px rgba(58,36,73,.35);}
.navbar-ccc .dropdown-item{font-weight:700;color:var(--cp-plum);border-radius:.8rem;}
.navbar-ccc .dropdown-item:hover{background:#ffeed2;color:var(--cp-red);}
.brand-word{font-weight:900;color:var(--cp-plum);font-size:1.3rem;letter-spacing:-.5px;text-decoration:none;}
.brand-word .dice{display:inline-block;background:linear-gradient(135deg,var(--cp-red),var(--cp-orange));color:#fff;border-radius:.55rem;width:34px;height:34px;text-align:center;line-height:34px;margin-right:.45rem;transform:rotate(-8deg);box-shadow:0 4px 0 rgba(58,36,73,.18);font-size:1.1rem;}
.brand-word .hot{color:var(--cp-red);}

/* --- Hero ---------------------------------------------------------------- */
.ccc-hero{background:linear-gradient(120deg,var(--cp-red) 0%,var(--cp-orange) 100%);color:#fff;padding:2.6rem 0 4.6rem;position:relative;overflow:hidden;border-radius:0 0 3rem 3rem;}
.ccc-hero::after{content:'\2660 \2665 \2666 \2663';position:absolute;right:-20px;bottom:-45px;font-size:9rem;opacity:.1;letter-spacing:-1.5rem;transform:rotate(-10deg);pointer-events:none;}
.ccc-hero h1{font-weight:900;letter-spacing:-1px;text-shadow:0 3px 0 rgba(0,0,0,.12);color:#fff;}
.ccc-hero .hero-lead{color:#ffe9d3;max-width:640px;font-weight:700;}
.ccc-hero-compact{padding:1.8rem 0 3.6rem;}

/* --- Search pill (Style A search, toggleable) ----------------------------- */
.search-pill{max-width:560px;}
.search-pill .form-control{border:none;padding:.85rem 1.2rem;border-radius:2rem 0 0 2rem;font-weight:700;}
.search-pill .form-control:focus{box-shadow:none;}
.search-pill .btn{border-radius:0 2rem 2rem 0;padding:.85rem 1.5rem;background:var(--cp-plum);border:none;font-weight:800;color:#fff;}
.search-pill .btn:hover{background:var(--cp-plum-dark);color:#fff;}

/* --- Filter panel --------------------------------------------------------- */
.filter-float{background:var(--cp-card);border-radius:1.6rem;box-shadow:0 18px 50px -22px rgba(58,36,73,.35);margin-top:-3.4rem;position:relative;border:3px solid var(--cp-border);}
.filter-float label,.filter-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--cp-muted);}
.filter-float .form-select,.filter-float .form-control{border:2px solid #efe3ca;border-radius:1rem;font-weight:700;font-size:.9rem;color:var(--cp-plum);}
.filter-float .form-select:focus,.filter-float .form-control:focus{border-color:var(--cp-orange);box-shadow:0 0 0 .2rem rgba(255,159,28,.2);}
.chip-row .chip{background:#fff;border:2px solid var(--cp-border-2);color:var(--cp-plum);border-radius:2rem;padding:.4rem 1.1rem;font-weight:800;font-size:.85rem;text-decoration:none;display:inline-block;margin:.2rem .15rem;}
.chip-row .chip:hover,.chip-row .chip.active{background:var(--cp-plum);color:#fff;border-color:var(--cp-plum);}

/* --- Buttons --------------------------------------------------------------- */
.btn-pop{background:var(--cp-red);border:none;color:#fff;font-weight:900;border-radius:1rem;box-shadow:0 4px 0 var(--cp-red-dark);}
.btn-pop:hover,.btn-pop:focus{background:var(--cp-red-dark);color:#fff;transform:translateY(1px);box-shadow:0 3px 0 #a81f2c;}
.btn-claim{background:var(--cp-red);color:#fff;font-weight:900;border:none;border-radius:1.1rem;padding:.7rem 1.3rem;white-space:nowrap;box-shadow:0 4px 0 var(--cp-red-dark);}
.btn-claim:hover{background:var(--cp-red-dark);color:#fff;transform:translateY(1px);box-shadow:0 3px 0 #a81f2c;}
.btn-visit{background:#fff;border:3px solid var(--cp-plum);color:var(--cp-plum);font-weight:900;border-radius:1.1rem;padding:.55rem 1.2rem;white-space:nowrap;}
.btn-visit:hover{background:var(--cp-plum);color:#fff;}
.big-cta{background:#fff;color:var(--cp-red);font-weight:900;border:none;border-radius:2rem;padding:.85rem 1.9rem;box-shadow:0 6px 0 rgba(0,0,0,.15);font-size:1.05rem;}
.big-cta:hover{transform:translateY(2px);box-shadow:0 4px 0 rgba(0,0,0,.15);color:var(--cp-red-dark);}

/* --- Listing cards ---------------------------------------------------------- */
.listing-card{background:var(--cp-card);border-radius:1.6rem;border:3px solid var(--cp-border);transition:transform .15s, box-shadow .15s;}
.listing-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px -20px rgba(58,36,73,.35);}
.ribbon{position:absolute;top:14px;left:-8px;background:var(--cp-teal);color:#fff;font-weight:900;font-size:.72rem;letter-spacing:.08em;padding:.3rem .9rem;border-radius:0 .6rem .6rem 0;box-shadow:0 3px 0 rgba(0,0,0,.12);z-index:2;}
.ribbon.gold{background:var(--cp-orange);color:#5c3a00;}
.site-logo-box{width:86px;height:86px;border-radius:1.2rem;background:linear-gradient(135deg,#ffeed2,#ffdba8);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.5rem;color:var(--cp-red);transform:rotate(-3deg);border:3px solid #fff;box-shadow:0 5px 14px -6px rgba(58,36,73,.3);overflow:hidden;}
.site-logo-box img{max-width:100%;max-height:100%;border-radius:.9rem;}
.banner-125{border-radius:1rem;}
.bonus-headline{font-weight:900;font-size:1.12rem;color:var(--cp-plum);}
.meta-chip{background:#fdf3e0;color:#7a6a4f;border-radius:2rem;padding:.2rem .65rem;font-size:.76rem;font-weight:800;display:inline-block;margin:.14rem .15rem 0 0;}
.meta-chip img{height:16px;vertical-align:-3px;}
.term-note{font-size:.75rem;color:var(--cp-muted);font-weight:600;}
.stars{color:var(--cp-orange);}
.badge-excl{background:linear-gradient(90deg,var(--cp-red),var(--cp-orange));color:#fff;font-weight:800;}
.badge-nd{background:var(--cp-teal);color:#fff;font-weight:800;}
.badge-instant{background:#d9f7f1;color:#0c6e63;font-weight:800;}

/* --- Sidebar / ads ----------------------------------------------------------- */
.side-card{background:var(--cp-card);border-radius:1.6rem;border:3px solid var(--cp-border);}
.side-card a{color:var(--cp-plum);font-weight:700;text-decoration:none;}
.side-card a:hover{color:var(--cp-red);}
.ad-zone{border-radius:1.2rem;display:flex;align-items:center;justify-content:center;min-height:0;}

/* --- SEO content block --------------------------------------------------------- */
.seo-block h2{font-size:1.3rem;font-weight:900;color:var(--cp-plum);}
.seo-block p,.seo-block li{color:var(--cp-muted);font-weight:600;font-size:.93rem;}

/* --- Tables (legacy content restyle) -------------------------------------------- */
.table-ccc{background:#fff;border-radius:1.2rem;overflow:hidden;border:3px solid var(--cp-border);}
.table-ccc th{background:var(--cp-plum);color:#fff;font-weight:800;font-size:.85rem;}
.table-ccc td{font-weight:600;font-size:.9rem;}

/* --- Footer ------------------------------------------------------------------- */
.ccc-footer{background:var(--cp-plum);color:#c9bedb;border-radius:3rem 3rem 0 0;margin-top:3rem;}
.ccc-footer a{color:#e8e0f3;text-decoration:none;font-weight:700;}
.ccc-footer a:hover{color:var(--cp-orange);}
.trust-strip{background:var(--cp-plum-dark);color:#a391b8;font-size:.8rem;}
.trust-strip a{color:#a391b8;}

/* --- Misc ------------------------------------------------------------------ */
.pagination-ccc .page-link{border-radius:1rem;margin:0 .15rem;border:2px solid var(--cp-border-2);color:var(--cp-plum);font-weight:800;}
.pagination-ccc .page-item.active .page-link{background:var(--cp-red);border-color:var(--cp-red);}
.breadcrumb-ccc{font-weight:700;font-size:.85rem;}
.breadcrumb-ccc a{text-decoration:none;}
img{max-width:100%;}

/* ==========================================================================
   Overrides for the v5 search engine components (custom.css / Bootstrap)
   so the bonus directory adopts the Casino Pop look without markup changes.
   ========================================================================== */
body{background:var(--cp-cream) !important;}
.btn-primary{background:var(--cp-red) !important;border-color:var(--cp-red-dark) !important;font-weight:800;border-radius:1rem;}
.btn-primary:hover,.btn-primary:focus{background:var(--cp-red-dark) !important;border-color:var(--cp-red-dark) !important;}
.btn-success{background:var(--cp-red) !important;border-color:var(--cp-red-dark) !important;font-weight:900;border-radius:1.1rem;box-shadow:0 4px 0 var(--cp-red-dark);}
.btn-success:hover{background:var(--cp-red-dark) !important;transform:translateY(1px);box-shadow:0 3px 0 #a81f2c;}
.btn-outline-primary{color:var(--cp-plum);border-color:var(--cp-plum);font-weight:700;border-radius:1rem;}
.btn-outline-primary:hover{background:var(--cp-plum);border-color:var(--cp-plum);}
.filter-toggle-header,.card-header.bg-primary{background:linear-gradient(120deg,var(--cp-red),var(--cp-orange)) !important;border-radius:1.3rem 1.3rem 0 0;}
#selectionArea .card{border:3px solid var(--cp-border);border-radius:1.6rem;box-shadow:0 18px 50px -22px rgba(58,36,73,.35);overflow:hidden;}
#results .card{border:3px solid var(--cp-border);border-radius:1.6rem;transition:transform .15s, box-shadow .15s;overflow:hidden;}
#results .card:hover{transform:translateY(-4px);box-shadow:0 20px 44px -20px rgba(58,36,73,.35);}
#results .card-title{font-weight:900;color:var(--cp-plum);}
#results .badge.badge-excl,#results .badge-excl{background:linear-gradient(90deg,var(--cp-red),var(--cp-orange)) !important;}
.breadcrumb{font-weight:700;font-size:.85rem;}
.directory-quick-links{background:#fff;border:2px solid var(--cp-border-2);border-radius:2rem;padding:.45rem 1rem;display:inline-block;font-weight:800;font-size:.88rem;margin:.4rem 0;}
.directory-quick-links a{text-decoration:none;color:var(--cp-plum);}
.directory-quick-links a:hover{color:var(--cp-red);}
.quick-links-separator{color:var(--cp-border-2);margin:0 .35rem;}
.ccdb-share-btn{font-weight:700;}
h1.text-center{font-weight:900;color:var(--cp-plum);letter-spacing:-.5px;}
.choices__inner{border:2px solid #efe3ca !important;border-radius:1rem !important;font-weight:700;}
.alert-info{background:#fdf3e0;border-color:var(--cp-orange);color:#7a6a4f;border-radius:1.2rem;}
