/* Home-only coupon polish; keep the existing filters and horizontal track. */
html.stc-theme-frontend .stc-coupon-box {
    border-color: #d7e6df;
    background: #f7faf8;
    box-shadow: 0 8px 24px rgba(23, 60, 51, .06);
}
.stc-coupon-box .stc-coupon-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 16px;
    gap: 14px;
}
.stc-coupon-box .stc-coupon-title-text p { font-weight: 500; }
.stc-coupon-box .stc-coupon-stage { padding: 14px 16px 16px; }
.stc-coupon-box .stc-coupon-track {
    grid-template-rows: repeat(2, 132px);
    grid-auto-columns: minmax(280px, 300px);
    gap: 12px;
}
.stc-coupon-box .stc-coupon-card {
    width: 100%;
    max-width: none;
    height: 132px;
    grid-template-columns: 60px minmax(0, 1fr);
    border-color: #dce8e2;
    border-radius: 14px;
    box-shadow: 0 3px 10px rgba(23, 60, 51, .04);
    transition: border-color .2s, box-shadow .2s;
}
.stc-coupon-box .stc-coupon-card:hover {
    border-color: #75a68d;
    box-shadow: 0 5px 16px rgba(23, 60, 51, .12);
}
.stc-coupon-box .stc-coupon-body { padding: 12px 12px 16px 14px; }
.stc-coupon-box .stc-coupon-top { padding-right: 0; flex-wrap: wrap; gap: 4px 8px; }
.stc-coupon-box .stc-coupon-card.is-hot:before { display: none; }
.stc-coupon-box .stc-coupon-label { max-width: 100%; font-size: 10px; }
.stc-coupon-box .stc-coupon-date { color: #63776e; font-size: 10px; font-weight: 500; }
.stc-coupon-box .stc-coupon-discount { font-size: 21px; line-height: 1.3; }
.stc-coupon-box .stc-coupon-discount span { font-size: 11px; font-weight: 500; }
.stc-coupon-box .stc-coupon-desc { font-size: 11px; font-weight: 500; line-height: 1.45; height: 32px; }
.stc-coupon-box .stc-coupon-progress { left: 74px; bottom: 8px; }
html.stc-theme-frontend .stc-coupon-box .stc-coupon-title-icon,
html.stc-theme-frontend .stc-coupon-box .stc-coupon-left,
html.stc-theme-frontend .stc-coupon-box .stc-coupon-tab.active,
html.stc-theme-frontend #stcCouponDetailModal .stc-voucher-modal-top,
html.stc-theme-frontend #stcCouponDetailModal .stc-voucher-ticket-left,
html.stc-theme-frontend #stcCouponDetailModal .stc-voucher-ok {
    background: var(--stc-nav-gradient, linear-gradient(135deg, #173c33, #1f6d53)) !important;
}
#stcCouponDetailModal {
    padding: 16px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
}
#stcCouponDetailModal.show { display: flex; }
#stcCouponDetailModal .stc-modal-wrap {
    width: min(520px, 100%);
    max-height: calc(100vh - 32px);
    max-height: calc(100dvh - 32px);
    margin: 0;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    box-shadow: 0 24px 80px rgba(0, 0, 0, .25);
}
#stcCouponDetailModal .stc-voucher-modal-top { height: 100px; }
#stcCouponModalTitle { margin: 0; padding: 20px 60px 0 20px; color: #fff; font-size: 17px; font-weight: 700; }
#stcCouponDetailModal .stc-voucher-save,
#stcCouponDetailModal .stc-voucher-list b { color: #1f6d53; }
#stcCouponDetailModal .stc-voucher-heading { color: #63776e; }
#stcCouponDetailModal .stc-voucher-code { height: auto; min-height: 36px; white-space: normal; overflow-wrap: anywhere; }
.stc-coupon-box [tabindex]:focus-visible,
.stc-coupon-box button:focus-visible,
#stcCouponDetailModal button:focus-visible { outline: 3px solid #75a68d; outline-offset: 2px; }
@media (max-width: 768px) {
    .stc-coupon-box .stc-coupon-track { grid-auto-columns: min(290px, 100%); }
    .stc-coupon-box .stc-coupon-toolbar { padding: 13px; }
    .stc-coupon-box .stc-coupon-stage { padding: 12px; }
    #stcCouponDetailModal { padding: 12px; }
    #stcCouponDetailModal .stc-modal-wrap {
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
    }
}