/*
 * Teal colour refresh for WP Coupon Mate.
 * The original theme structure is intentionally preserved.
 * Accent supplied by the site owner: #46CBC6.
 */
:root{
  --wpcm-accent:#46cbc6;
  --wpcm-accent-dark:#157c78;
  --wpcm-accent-deep:#0f6662;
  --wpcm-accent-soft:#eefbfa;
  --wpcm-border:#e5e5e5;
}

/* Keep the existing layout. Only change the visual colour system. */
a,.ui.breadcrumb a,.site-breadcrumb .ui.breadcrumb a.section{color:var(--wpcm-accent-dark)}
a:hover,.ui.breadcrumb a:hover{color:var(--wpcm-accent-deep)}
.heading-line{background:var(--wpcm-accent)}
.primary-header{border-bottom-color:var(--wpcm-accent)!important}
.nav-toggle,.st-menu.st-menu-mobile>li>a:hover{color:var(--wpcm-accent-dark)!important}

/* Store page, same structure as the reference site. */
.single-store-header .header-thumb .header-store-thumb a:hover,
.c-type-code:hover{border-color:var(--wpcm-accent)!important}
.single-store-header .add-favorite:hover{color:var(--wpcm-accent-dark)}

.wpcm-store-update{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  margin:24px 0 20px;
  padding:9px 14px;
  border:1px solid #ddd;
  border-radius:5px;
  background:#fff;
  color:#555;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.35!important;
}
.wpcm-store-update .icon{color:#888;margin:0!important}

/* Original filter structure, recoloured to teal. */
.coupon-filter .filter-coupons-buttons .store-filter-button[data-filter="all"]{background:#111;color:#fff}
.coupon-filter .filter-coupons-buttons .store-filter-button[data-filter="code"]{background:var(--wpcm-accent-dark);color:#fff}
.coupon-filter .filter-coupons-buttons .store-filter-button[data-filter="sale"]{background:var(--wpcm-accent-deep);color:#fff}
.coupon-filter .filter-coupons-buttons .store-filter-button .offer-count,
.coupon-filter .filter-coupons-buttons .store-filter-button .code-count,
.coupon-filter .ui.menu .item .offer-count{background:var(--wpcm-accent)}
.coupon-filter .filter-coupons-buttons .store-filter-button .sale-count{background:var(--wpcm-accent-dark)}

/* Coupon buttons preserve the original reveal/fold structure. */
.coupon-button-type .coupon-code{border-color:var(--wpcm-accent-dark)!important}
.coupon-button-type .coupon-code .get-code,
.coupon-button-type .coupon-code .get-code:hover,
.coupon-button-type .coupon-code:hover .get-code{background:var(--wpcm-accent-dark)!important}
.coupon-button-type .coupon-code .get-code:after{border-left-color:var(--wpcm-accent-dark)!important}
.coupon-button-type .coupon-deal,
.coupon-button-type .coupon-print,
.ui.button.btn_primary,
.ui.btn.btn_primary,
.ui.btn.btn_secondary{background:var(--wpcm-accent-dark)!important;color:#fff!important}

/* Coupon tags */
.coupon-listing-item .c-type .c-code,
.coupon-listing-item .c-type .c-sale,
.coupon-listing-item .c-type .c-print{background:var(--wpcm-accent-dark)!important;color:#fff!important}

/* Store/shop page accents without changing its grid structure. */
.store-letter-heading .section-heading:before{background:var(--wpcm-accent)}
.store-letter-content ul li:before{background:var(--wpcm-accent)}
.store-letter-content ul li a:hover{color:var(--wpcm-accent-deep)}
.info-Table th{background:var(--wpcm-accent-dark)!important;border-color:var(--wpcm-accent-dark)!important}

/* Coupon table remains directly below coupon cards. */
.wpcm-coupon-table{margin:26px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.wpcm-coupon-table h3{margin:0 0 14px;font-size:24px;line-height:1.3}
.wpcm-coupon-table table{width:100%;min-width:560px;border-collapse:collapse;background:#fff}
.wpcm-coupon-table th{background:var(--wpcm-accent-soft)!important;color:#222}
.wpcm-coupon-table td,.wpcm-coupon-table th{border-color:#ddd!important}

/* Blog archive: 3 cards desktop, 2 tablet, 1 mobile. */
.blog .container-index.no-sidebar #primary,.home.blog .container-index.no-sidebar #primary{width:100%;float:none}
.wpcm-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.wpcm-blog-grid .post-entry{margin:0!important;padding:0 0 20px;display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid #e5e5e5;border-radius:5px;background:#fff}
.wpcm-blog-grid .post-entry .post-thumbnail{margin:0 0 18px;overflow:hidden;aspect-ratio:16/9}
.wpcm-blog-grid .post-entry .post-thumbnail img{width:100%;height:100%;object-fit:cover}
.wpcm-blog-grid .post-entry .post-meta,.wpcm-blog-grid .post-entry .post-content{padding-left:18px;padding-right:18px}
.wpcm-blog-grid .post-entry .post-title{font-size:20px;line-height:1.35}
.wpcm-blog-grid .post-entry .post-content{display:flex;flex:1;flex-direction:column}
.wpcm-blog-grid .post-entry .read-more{align-self:flex-start;margin-top:auto}

/* Match the reference mobile behaviour. The original theme controls card stacking,
   thumbnail placement, sidebar movement and compact coupon filters. */
@media screen and (max-width:980px){.wpcm-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media screen and (max-width:790px){
  .wpcm-store-breadcrumb{margin-bottom:8px}
  .wpcm-store-update{margin-top:18px;margin-bottom:16px}
  /* Do not force a custom coupon-card/grid layout here. Original theme CSS handles mobile. */
}
@media screen and (max-width:640px){
  .wpcm-blog-grid{grid-template-columns:1fr;gap:16px}
  .wpcm-coupon-table h3{font-size:20px}
}

/* Accessibility without animation overhead. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(70,203,198,.42);outline-offset:2px}

/* Store sidebar social sharing: Facebook, X, WhatsApp, LinkedIn, Instagram */
.wpcm-store-social-box .inner-content{padding:22px 20px;}
.wpcm-social-title{margin:0 0 16px;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:14px;font-weight:700;color:#27313a;}
.wpcm-social-share{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;}
.wpcm-social-btn{width:48px;height:48px;min-width:48px;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none!important;cursor:pointer;font-size:20px;line-height:1;padding:0;box-shadow:none;transition:transform .15s ease,opacity .15s ease;}
.wpcm-social-btn:hover,.wpcm-social-btn:focus{transform:translateY(-1px);opacity:.9;color:#fff!important;outline-offset:2px;}
.wpcm-social-btn i.icon{margin:0!important;width:auto!important;height:auto!important;font-size:20px;line-height:1;}
.wpcm-facebook{background:#1877f2;}
.wpcm-x{background:#000;font-family:Arial,sans-serif;font-weight:600;font-size:18px;}
.wpcm-whatsapp{background:#25d366;}
.wpcm-linkedin{background:#0a66c2;}
.wpcm-instagram{background:linear-gradient(135deg,#f58529,#dd2a7b 48%,#8134af);}
.wpcm-instagram-note{margin:11px 0 0;text-align:center;font-size:12px;line-height:1.45;color:#7b838b;}
@media (max-width:767px){.wpcm-store-social-box .inner-content{padding:18px 14px}.wpcm-social-share{gap:10px}.wpcm-social-btn{width:44px;height:44px;min-width:44px}.wpcm-instagram-note{font-size:11px}}

/* V6: Full coupon CTA button. Keep the existing click/modal behavior, but remove the
   clipped reveal layer so "CODE ANZEIGEN" is always fully readable on desktop/mobile. */
.coupon-button-type .coupon-code{
  display:block!important;
  width:100%!important;
  min-width:210px!important;
  max-width:none!important;
  height:auto!important;
  min-height:54px!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:10px!important;
  background:var(--wpcm-accent-dark)!important;
  color:#fff!important;
  text-align:center!important;
  float:none!important;
  position:relative!important;
}
.coupon-button-type .coupon-code .code-text{
  display:none!important;
}
.coupon-button-type .coupon-code .get-code{
  position:static!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:54px!important;
  padding:14px 18px!important;
  margin:0!important;
  border:0!important;
  border-radius:10px!important;
  background:var(--wpcm-accent-dark)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.15!important;
  letter-spacing:.05em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  transform:none!important;
  clip-path:none!important;
  box-shadow:none!important;
}
.coupon-button-type .coupon-code .get-code:before,
.coupon-button-type .coupon-code .get-code:after{
  display:none!important;
  content:none!important;
  border:0!important;
}
.coupon-button-type .coupon-code:hover,
.coupon-button-type .coupon-code:hover .get-code,
.coupon-button-type .coupon-code .get-code:hover{
  background:var(--wpcm-accent-deep)!important;
  color:#fff!important;
}
@media screen and (max-width:790px){
  .coupon-button-type .coupon-code{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:50px!important;
  }
  .coupon-button-type .coupon-code .get-code{
    min-height:50px!important;
    padding:13px 12px!important;
    font-size:14px!important;
  }
}

/* V6: social share box contains only Facebook, X, WhatsApp and LinkedIn. */
.wpcm-instagram,.wpcm-instagram-note{display:none!important;}


/* V7: conflict-proof coupon code CTA.
   Uses a dedicated class instead of the theme's legacy .coupon-code reveal component. */
.coupon-button-type .wpcm-code-cta{
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:210px!important;
  max-width:100%!important;
  min-height:54px!important;
  margin:0 0 8px!important;
  padding:14px 18px!important;
  float:none!important;
  position:relative!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--wpcm-accent-dark)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.04em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:none!important;
  clip-path:none!important;
  transform:none!important;
}
.coupon-button-type .wpcm-code-cta:hover,
.coupon-button-type .wpcm-code-cta:focus{
  background:var(--wpcm-accent-deep)!important;
  color:#fff!important;
  opacity:1!important;
  text-decoration:none!important;
}
.coupon-button-type .wpcm-code-cta .wpcm-code-label{
  display:block!important;
  width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.coupon-button-type .wpcm-code-cta:before,
.coupon-button-type .wpcm-code-cta:after,
.coupon-button-type .wpcm-code-cta .wpcm-code-label:before,
.coupon-button-type .wpcm-code-cta .wpcm-code-label:after{
  display:none!important;
  content:none!important;
}
@media screen and (max-width:790px){
  .coupon-button-type .wpcm-code-cta{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:48px!important;
    padding:12px 10px!important;
    font-size:14px!important;
  }
}


/* V9: one stable coupon-code CTA on every listing template.
   Neutralize legacy reveal children if cached/third-party markup still adds them. */
.coupon-button-type a.wpcm-code-cta > .code-text,
.coupon-button-type a.wpcm-code-cta > .get-code{
  display:none!important;
}
.coupon-button-type a.wpcm-code-cta > .wpcm-code-label{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:static!important;
  inset:auto!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  color:#fff!important;
  font:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  white-space:normal!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  transform:none!important;
  opacity:1!important;
}
.coupon-button-type a.wpcm-code-cta > .wpcm-code-label:before,
.coupon-button-type a.wpcm-code-cta > .wpcm-code-label:after{
  display:none!important;
  content:none!important;
}


/* V10: Code CTA intentionally uses the exact visual box model as "Zum Angebot".
   This removes the old reveal/fold appearance completely while keeping code click behaviour. */
.coupon-button-type a.wpcm-code-cta,
.coupon-button-type a.coupon-deal.wpcm-code-cta{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:195px!important;
  max-width:100%!important;
  min-height:54px!important;
  padding:14px 18px!important;
  margin-bottom:2px!important;
  float:none!important;
  position:relative!important;
  overflow:visible!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--wpcm-accent-dark)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.04em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:0 -1px 0 0 rgba(0,0,0,.1) inset!important;
  opacity:1!important;
}
.coupon-button-type a.wpcm-code-cta:hover,
.coupon-button-type a.wpcm-code-cta:focus{
  background:var(--wpcm-accent-deep)!important;
  color:#fff!important;
  opacity:.95!important;
}
.coupon-button-type a.wpcm-code-cta .wpcm-code-label{
  display:inline!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  color:inherit!important;
  font:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  white-space:nowrap!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  transform:none!important;
  opacity:1!important;
}
.coupon-button-type a.wpcm-code-cta:before,
.coupon-button-type a.wpcm-code-cta:after,
.coupon-button-type a.wpcm-code-cta .wpcm-code-label:before,
.coupon-button-type a.wpcm-code-cta .wpcm-code-label:after,
.coupon-button-type a.wpcm-code-cta > .code-text,
.coupon-button-type a.wpcm-code-cta > .get-code{
  display:none!important;
  content:none!important;
}

/* V10: H2 stays semantic, but visually compact under the store title. */
h2.wpcm-store-update{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:0!important;
  margin:18px 0 14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#222!important;
  font-size:16px!important;
  font-weight:600!important;
  line-height:1.35!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
h2.wpcm-store-update span{
  font-size:16px!important;
  font-weight:600!important;
  line-height:1.35!important;
}
h2.wpcm-store-update i.icon{
  width:auto!important;
  height:auto!important;
  margin:0!important;
  color:#333!important;
  font-size:17px!important;
  line-height:1!important;
}
@media screen and (max-width:790px){
  .coupon-button-type a.wpcm-code-cta,
  .coupon-button-type a.coupon-deal.wpcm-code-cta{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:48px!important;
    padding:12px 10px!important;
    font-size:14px!important;
  }
  .coupon-button-type a.wpcm-code-cta .wpcm-code-label{white-space:normal!important;}
  h2.wpcm-store-update{margin:15px 0 12px!important;font-size:14px!important;}
  h2.wpcm-store-update span{font-size:14px!important;}
  h2.wpcm-store-update i.icon{font-size:15px!important;}
}


/* V13: Compact /stores directory on phones.
   Keeps the desktop structure intact while preventing oversized store blocks. */
@media screen and (max-width: 767px){
  .wpcm-stores-directory{
    padding:14px 12px!important;
    border-radius:14px!important;
  }
  .wpcm-stores-directory .browse-store.ui.grid{
    margin:0!important;
  }
  .wpcm-stores-directory .store-listing-left,
  .wpcm-stores-directory .twelve.wide.column{
    width:100%!important;
    padding:0!important;
  }

  /* A-Z navigation becomes a compact horizontal strip instead of large stacked rows. */
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
    width:100%!important;
    margin:0 0 16px!important;
    padding:4px 1px 8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu .item{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    min-width:42px!important;
    width:auto!important;
    min-height:38px!important;
    margin:0!important;
    padding:8px 10px!important;
    border:1px solid #dce8e7!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#243332!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:700!important;
  }
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu .item:before,
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu .item:after{
    display:none!important;
  }
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu .item:hover,
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu .item:focus{
    border-color:var(--wpcm-accent)!important;
    color:var(--wpcm-accent-deep)!important;
  }
  .wpcm-stores-directory .store-listing-left .ui.vertical.menu .ui.mini.label{
    position:static!important;
    margin:0!important;
    min-width:18px!important;
    padding:3px 5px!important;
    border-radius:999px!important;
    background:var(--wpcm-accent-soft)!important;
    color:var(--wpcm-accent-deep)!important;
    font-size:10px!important;
    line-height:1!important;
  }

  .wpcm-stores-directory .store-listing-box{
    padding-top:22px!important;
  }
  .wpcm-stores-directory .store-listing-box:first-child{
    padding-top:4px!important;
  }
  .wpcm-stores-directory .store-letter-heading{
    margin-bottom:10px!important;
  }
  .wpcm-stores-directory .store-letter-heading .section-heading{
    margin:0!important;
    font-size:18px!important;
    line-height:1.3!important;
  }

  /* Featured shop logos: two compact cards per row on phones. */
  .wpcm-stores-directory .store-popular-listing .ui.four.column.grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    margin:0!important;
  }
  .wpcm-stores-directory .store-popular-listing .ui.four.column.grid>.column{
    width:auto!important;
    padding:0!important;
    margin:0!important;
  }
  .wpcm-stores-directory .store-popular-listing .store-thumb{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:86px!important;
    height:86px!important;
    padding:10px!important;
    border:1px solid #dce8e7!important;
    border-radius:12px!important;
    background:#fff!important;
    overflow:hidden!important;
  }
  .wpcm-stores-directory .store-popular-listing .store-thumb a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    line-height:normal!important;
  }
  .wpcm-stores-directory .store-popular-listing .store-thumb img{
    float:none!important;
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    max-height:58px!important;
    object-fit:contain!important;
  }

  /* Normal store names remain compact and scannable. */
  .wpcm-stores-directory .store-letter-content ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    margin:0!important;
    padding:0!important;
  }
  .wpcm-stores-directory .store-letter-content ul li,
  .wpcm-stores-directory .store-listing-box ul li{
    float:none!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  .wpcm-stores-directory .store-letter-content ul li:nth-child(odd){
    padding-right:0!important;
  }
  .wpcm-stores-directory .store-letter-content ul li:before{
    display:none!important;
  }
  .wpcm-stores-directory .store-letter-content ul li a{
    display:flex!important;
    align-items:center!important;
    min-height:42px!important;
    padding:9px 10px!important;
    border:1px solid #e4eceb!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#263332!important;
    font-size:13px!important;
    line-height:1.25!important;
    overflow-wrap:anywhere;
  }
  .wpcm-stores-directory .store-letter-content ul li a:hover,
  .wpcm-stores-directory .store-letter-content ul li a:focus{
    border-color:var(--wpcm-accent)!important;
    color:var(--wpcm-accent-deep)!important;
  }
}

@media screen and (max-width: 360px){
  .wpcm-stores-directory .store-letter-content ul{
    grid-template-columns:1fr!important;
  }
  .wpcm-stores-directory .store-popular-listing .store-thumb{
    height:78px!important;
    min-height:78px!important;
  }
  .wpcm-stores-directory .store-popular-listing .store-thumb img{
    max-height:52px!important;
  }
}

/* V14: accessibility contrast pass.
   Keep the teal visual system, but use darker copy on light/white surfaces so
   normal-size text clears WCAG AA contrast more reliably. */
body,
body p,
.site-content,
.content-box,
.shadow-box{
  color:#3f4646;
}

/* Muted text that was previously #888/#999 on white was too light. */
.coupon-listing-item .c-type .exp,
.coupon-listing-item .coupon-listing-footer ul li a,
.coupon-listing-item .coupon-listing-footer ul li span,
.store-listing-item .coupon-detail .exp-text,
.coupon-modal .coupon-footer ul li a,
.coupon-modal .coupon-footer ul li span,
.site-breadcrumb,
.wpcm-store-update .icon,
.ui.form .field > .selection.dropdown > .dropdown.icon{
  color:#5f6666!important;
}

/* Icons can stay visually secondary, but should not disappear into white. */
.coupon-listing-item .coupon-detail .user-ratting i,
.coupon-modal .coupon-content .user-ratting .ui.button i,
.coupon-listing-item .coupon-listing-footer i,
.coupon-modal .coupon-footer i{
  color:#666d6d!important;
}

/* Store directory: strong readable type on white cards and navigation. */
.wpcm-stores-directory,
.wpcm-stores-directory p,
.wpcm-stores-directory .section-heading{
  color:#26302f!important;
}
.wpcm-stores-directory .store-listing-left .ui.vertical.menu .item{
  color:#2f3a39!important;
}
.wpcm-stores-directory .store-listing-left .ui.vertical.menu .item:hover,
.wpcm-stores-directory .store-listing-left .ui.vertical.menu .item:focus{
  color:var(--wpcm-accent-deep)!important;
}
.wpcm-stores-directory .store-letter-content ul li a{
  color:#2f3a39!important;
}
.wpcm-stores-directory .store-letter-content ul li a:hover,
.wpcm-stores-directory .store-letter-content ul li a:focus{
  color:var(--wpcm-accent-deep)!important;
}

/* Badge background must also keep enough contrast with its text. */
.coupon-filter .filter-coupons-buttons .store-filter-button .offer-count,
.coupon-filter .filter-coupons-buttons .store-filter-button .code-count,
.coupon-filter .ui.menu .item .offer-count,
.wpcm-stores-directory .store-listing-left .ui.vertical.menu .ui.mini.label{
  background:#0f6662!important;
  color:#fff!important;
}
.coupon-filter .filter-coupons-buttons .store-filter-button .sale-count{
  background:#0a5552!important;
  color:#fff!important;
}

/* Form placeholders and secondary controls on light backgrounds. */
input::placeholder,
textarea::placeholder{
  color:#66706f;
  opacity:1;
}

/* Keep teal links accessible on light surfaces. */
.site-content a:not(.ui.button):not(.wpcm-social-btn):not(.wpcm-code-cta),
.wpcm-stores-directory a{
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}


/* V15: verification badge only on real coupon-code cards. */
.wpcm-verified-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 7px;
    padding: 4px 8px;
    border-radius: 5px;
    background: #159947;
    color: #fff !important;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.15;
    vertical-align: middle;
    white-space: nowrap;
}
.wpcm-verified-badge .icon {
    margin: 0 !important;
    font-size: 11px !important;
    color: #fff !important;
}
.wpcm-code-meta-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 7px;
}
@media (max-width: 767px) {
    .wpcm-verified-badge {
        margin-left: 5px;
        padding: 3px 7px;
        font-size: 11px;
    }
}

/* V16: keep expiry text on its own line under coupon badges */
.coupon-item .latest-coupon .c-type .exp,
.coupon-item .c-type .exp {
    display: block !important;
    width: 100% !important;
    margin: 6px 0 0 !important;
    white-space: nowrap !important;
    line-height: 1.35 !important;
}

.coupon-item .latest-coupon .c-type,
.coupon-item .c-type {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}


/* V17: clearer coupon/deal badges and a dedicated expiry row. */
.coupon-listing-item .c-type.wpcm-badge-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin: 5px 0 0 !important;
}
.coupon-listing-item .c-type .c-code,
.coupon-listing-item .c-type .c-sale,
.coupon-listing-item .c-type .c-print {
    color: #fff !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-shadow: none !important;
}
.coupon-listing-item .c-type .c-code {
    background: #0f8f79 !important;
}
.coupon-listing-item .c-type .c-sale {
    background: #4564c6 !important;
}
.coupon-listing-item .c-type .c-print {
    background: #374151 !important;
}
.coupon-listing-item .wpcm-expiry-line {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    margin: 6px 0 0 !important;
    line-height: 1.35 !important;
}
.coupon-listing-item .wpcm-expiry-line .exp {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    color: #5f6666 !important;
    font-size: 12px !important;
    white-space: nowrap !important;
}
@media (max-width: 767px) {
    .coupon-listing-item .c-type.wpcm-badge-row { gap: 5px !important; }
    .coupon-listing-item .wpcm-expiry-line { margin-top: 5px !important; }
}
