/* Canonical Offers component. Page styles may select grid columns; card appearance lives here only. */
.public-offer-card{position:relative;display:flex;flex-direction:column;gap:4px;padding:6px;border:1px solid var(--border,#b7d3df);border-radius:18px;background:#fff;min-width:0;height:auto;align-self:stretch;box-sizing:border-box;overflow:hidden;box-shadow:0 3px 12px rgba(16,52,75,.04)}
.public-offer-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#ffd185,#ffad20);pointer-events:none}
.public-offer-card .public-offer-store{display:flex;align-items:flex-start;gap:8px;min-height:60px;flex:0 0 auto;width:100%;margin:0;padding:0}
.public-offer-card .store-logo{display:flex;align-items:center;justify-content:center;width:60px;height:60px;min-width:60px;flex:0 0 60px;border:1px solid var(--border,#b7d3df);border-radius:12px;background:#fff;color:var(--primary,#0b79a7);font-weight:800;overflow:hidden}
.public-offer-card .store-logo img{width:100%;height:100%;object-fit:contain}
.public-offer-store-copy{display:grid;grid-template-columns:minmax(0,1fr) 90px;grid-template-rows:18px 22px 20px;flex:1 1 0;min-width:0;height:60px;text-align:left}
.public-offer-store-copy>strong{align-self:start;grid-column:1 / span 2;grid-row:1;font-size:12px;line-height:16px!important;font-weight:900;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--text,#12271d)}
.public-offer-meta-row{display:contents}
.public-offer-meta-row>small{grid-column:1;grid-row:2;align-self:start;min-width:0;font-size:9px;line-height:19px;color:var(--muted,#6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.public-offer-status-badges{grid-column:2;grid-row:2 / span 2;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;gap:4px;width:90px;height:40px;padding-right:4px;box-sizing:border-box}
.offer-status-badge{display:grid;grid-template-columns:14px minmax(0,1fr);grid-template-rows:12px;align-items:center;column-gap:3px;width:86px;min-width:86px;max-width:86px;height:18px;min-height:18px;padding:2px 5px;border:1px solid;border-radius:999px;box-sizing:border-box;font-size:9px;line-height:12px;font-weight:900;margin:0;position:static;transform:none}
.offer-status-badge.offer-exclusive-badge{background:#fff0c2;color:#754600;border-color:#d99a20}
.offer-status-badge.offer-featured-badge{background:#e3f3fa;color:#075477;border-color:#75b7d2}
.offer-status-badge>:is(.offer-exclusive-star,.offer-featured-star){display:flex;align-items:center;justify-content:center;width:14px;height:12px;min-width:14px;margin:0;padding:0;color:#f6be22;animation:trekStatusStarGlow 2.2s ease-in-out infinite}
.offer-status-badge svg{display:block;width:12px;height:12px;flex:none}
.offer-status-badge>:is(.offer-exclusive-label,.offer-featured-label){color:inherit;text-align:left;line-height:12px;margin:0;padding:0}
@keyframes trekStatusStarGlow{0%,100%{filter:brightness(1.15) drop-shadow(0 0 3px rgba(246,190,34,.65))}50%{filter:brightness(0)}}
.public-offer-card>h3{font-size:12px;line-height:16px;font-weight:900;margin:0;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;min-width:0;min-height:0}
.public-offer-card>p{font-size:10px;line-height:15px;height:15px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.public-offer-card>.affiliate-ticket-wrap{width:100%;min-width:0;margin: auto 0 0;padding:0;flex:0 0 auto;box-sizing:border-box}
.public-offer-card .affiliate-ticket{transform:none!important;display:grid;grid-template-columns:minmax(0,1fr) 60px;width:100%;max-width:100%;min-width:0;height:38px;box-sizing:border-box}
.public-offer-card .affiliate-ticket-action{display:flex;align-items:center;justify-content:center;min-width:0;font-size:12px;padding:0 4px;font-weight:900;gap:6px}
.public-offer-card .affiliate-ticket-code{width:60px;min-width:60px;max-width:60px;height:38px;font-size:10px;padding-left:12px;box-sizing:border-box}
.public-offer-card .cart{font-size:16px}
.public-offer-card>.public-offer-meta{margin-top:0;display:flex;gap:4px;align-items:center;font-size:9px;line-height:13px;min-height:13px;color:var(--muted,#6b7280)}
#couponModal #modalBadge{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.public-offer-card.home-effect-clone{pointer-events:auto}
@media(prefers-reduced-motion:reduce){.offer-status-badge>:is(.offer-exclusive-star,.offer-featured-star){animation:none;filter:none}}

:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card>h3{margin:0!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket{min-height:42px!important;height:42px!important;grid-template-columns:minmax(0,1fr) 60px!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-action{height:100%!important;min-height:0!important;font-size:12px!important;letter-spacing:.02em!important;padding:0 4px!important;gap:4px!important;white-space:nowrap}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-code{position:relative;z-index:2;clip-path:polygon(8px 0,100% 0,100% 100%,0 100%);padding:0 2px 0 8px!important;height:100%!important;min-height:0!important;width:60px!important;min-width:60px!important;max-width:60px!important}
@media(max-width:700px){
.public-offer-card{container-type:inline-size;background:#fff;border-color:#cbdde7;border-radius:16px;box-shadow:0 5px 14px rgba(22,61,80,.07);padding:6px;gap:4px}
.public-offer-card::before{width:3px;background:linear-gradient(#ffdb86,#ffa323)}
.public-offer-card .public-offer-store{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:16px 18px;gap:2px 5px;min-height:36px}
.public-offer-card .store-logo{grid-column:1;grid-row:1 / span 2;width:36px;height:36px;min-width:36px;flex-basis:36px;align-self:center;border-color:#e1eaf0;border-radius:10px;box-shadow:0 2px 6px rgba(24,61,79,.04)}
.public-offer-store-copy,.public-offer-meta-row{display:contents}
.public-offer-store-copy>strong{grid-column:2;grid-row:1;align-self:start;font-size:12px;line-height:16px!important;letter-spacing:-.15px;color:#16342d;padding:0;margin:0}
.public-offer-meta-row>small{display:none!important}
.public-offer-status-badges{grid-column:2;grid-row:2;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:3px;width:100%;height:15px;margin:0;padding:0}
.offer-status-badge{grid-template-columns:9px max-content;grid-template-rows:11px;column-gap:2px;flex:0 0 auto;width:max-content;min-width:0;max-width:none;height:15px;min-height:15px;padding:1px 3px;font-size:8px;line-height:11px;letter-spacing:0}
.offer-status-badge>:is(.offer-exclusive-star,.offer-featured-star){width:9px;min-width:9px;height:10px}
.offer-status-badge svg{width:9px;height:9px}
.offer-status-badge>:is(.offer-exclusive-label,.offer-featured-label){line-height:11px}
.offer-exclusive-badge{box-shadow:0 2px 4px rgba(161,110,20,.08)}
.offer-featured-badge{box-shadow:0 2px 4px rgba(31,115,156,.07)}
.public-offer-card>h3{font-size:12px;line-height:17px;color:#16342d;font-weight:800}
.public-offer-card>p{font-size:11px;line-height:16px;height:16px;color:#677683}
.public-offer-card>.affiliate-ticket-wrap{margin:auto 0 0}
.public-offer-card>.public-offer-meta{font-size:9px;line-height:13px;color:#73818d;padding-top:1px}
.public-offer-card .affiliate-ticket{border-radius:9px;border-color:#f3d597;box-shadow:0 3px 7px rgba(226,146,18,.13)}
}
@media(max-width:700px){:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket,:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket.coupon-ticket{height:44px!important;min-height:44px!important;width:100%!important;min-width:0!important;max-width:100%!important;grid-template-columns:minmax(0,1fr) 40px!important}:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-action{font-size:10px!important;gap:3px!important;padding:0 2px!important;background:linear-gradient(115deg,#ffc34b,#ffa51b)!important;color:#4c2d00!important;font-weight:800!important}:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-action::after{right:-8px!important;width:16px!important;transform:skewX(20deg)!important;background:#ffa51b!important}:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-code,:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket.coupon-ticket .affiliate-ticket-code{display:flex!important;position:relative!important;z-index:2!important;visibility:visible!important;opacity:1!important;width:40px!important;min-width:40px!important;max-width:40px!important;padding:0 2px 0 8px!important;font-size:11px!important;font-weight:800!important;color:#4a6270!important;letter-spacing:.02em!important;clip-path:polygon(8px 0,100% 0,100% 100%,0 100%);background:repeating-linear-gradient(-45deg,#fff,#fff 5px,#f0f5f8 5px,#f0f5f8 10px)!important}:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-action .cart{font-size:12px!important;line-height:1!important;width:12px!important;min-width:12px!important;margin:0!important}}
@media(max-width:700px){@container(max-width:168px){
.public-offer-card .public-offer-store{grid-template-columns:28px minmax(0,1fr);grid-template-rows:28px 15px;gap:2px 4px;min-height:45px}
.public-offer-card .store-logo{grid-column:1;grid-row:1;width:28px;height:28px;min-width:28px;align-self:start}
.public-offer-status-badges{grid-column:1 / span 2;grid-row:2;height:15px;gap:2px}
.offer-status-badge{grid-template-columns:8px max-content;grid-template-rows:11px;column-gap:1px;flex:0 0 auto;width:max-content;max-width:none;height:15px;min-height:15px;padding:1px 2px;font-size:8px;line-height:11px;letter-spacing:-.1px}
.offer-status-badge>:is(.offer-exclusive-star,.offer-featured-star){width:8px;min-width:8px}
.offer-status-badge svg{width:8px;height:8px}
}}
@media(max-width:700px){@container(min-width:169px){:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket-action{font-size:11px!important}}}

/* V399: approved 06 appearance, shared desktop badges and four-character peek. */
@media(min-width:701px){
.public-offer-store-copy{grid-template-columns:minmax(0,1fr);grid-template-rows:16px 13px 18px;row-gap:3px;height:60px;align-content:start}
.public-offer-store-copy>strong{grid-column:1;grid-row:1}
.public-offer-meta-row>small{grid-column:1;grid-row:2;line-height:13px}
.public-offer-status-badges{grid-column:1;grid-row:3;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:4px;width:100%;height:18px;margin:0;padding-right:4px}
.offer-status-badge{grid-template-columns:12px max-content;column-gap:2px;flex:0 0 auto;width:max-content;min-width:0;max-width:none;padding:2px 4px;font-size:9px}
.offer-status-badge>:is(.offer-exclusive-star,.offer-featured-star){width:12px;min-width:12px}
}
@media(min-width:701px){.public-offer-card{container-type:inline-size}@container(max-width:245px){
.public-offer-card .public-offer-store{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:16px 13px 18px;gap:3px 6px;min-height:53px}
.public-offer-card .store-logo{grid-column:1;grid-row:1 / span 2;width:40px;height:40px;min-width:40px;align-self:start}
.public-offer-store-copy,.public-offer-meta-row{display:contents}
.public-offer-store-copy>strong{grid-column:2;grid-row:1}
.public-offer-meta-row>small{grid-column:2;grid-row:2}
.public-offer-status-badges{grid-column:1 / span 2;grid-row:3;justify-content:flex-end}
}}

:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket:is(.coupon-ticket,.deal-ticket){grid-template-columns:minmax(0,1fr) 40px!important;column-gap:0!important;background:#ffa51b!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket:is(.coupon-ticket,.deal-ticket) .affiliate-ticket-action{background:linear-gradient(115deg,#ffc34b,#ffa51b)!important;width:100%!important;margin:0!important;color:#4c2d00!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket:is(.coupon-ticket,.deal-ticket) .affiliate-ticket-action::after{display:block!important;right:-8px!important;width:16px!important;transform:skewX(20deg)!important;background:#ffa51b!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket:is(.coupon-ticket,.deal-ticket) .affiliate-ticket-code{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:40px!important;min-width:40px!important;max-width:40px!important;padding:0 1px 0 5px!important;margin:0!important;border-left:0!important;clip-path:polygon(8px 0,100% 0,100% 100%,0 100%);font-size:11px!important;font-weight:800!important;letter-spacing:0!important;color:#4a6270!important;background:repeating-linear-gradient(-45deg,#fff,#fff 5px,#f0f5f8 5px,#f0f5f8 10px)!important;z-index:7!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket:is(.coupon-ticket,.deal-ticket).is-copied .affiliate-ticket-action{background:var(--success)!important}
:is(#view-home,#view-offers,#view-store,#view-article,#view-category) :is(#homeOfferGrid,#offersHubGrid,#articleOfferList,#storeUnifiedOfferGrid,#categoryOfferGrid,#storeCouponList,#storeDealList) .public-offer-card .affiliate-ticket:is(.coupon-ticket,.deal-ticket).is-opening .affiliate-ticket-action{background:var(--primary)!important}

/* V408: conditions stay visible on every branch using the shared offer card. */
.public-offer-card .offer-eligibility{font-size:11px;line-height:1.4;color:#354b57;white-space:normal;overflow-wrap:anywhere;margin:0 0 3px;flex:0 0 auto}
.affiliate-disclosure{font-size:12px;line-height:1.5;color:#596a75;margin:0 0 14px}

/* Shared CTA alignment: spare row height belongs above the button, never below it. */
.public-offer-card>.affiliate-ticket-wrap{margin-top:auto!important;padding-top:0!important}
.public-offer-card>.public-offer-meta{margin-top:0!important}
