/* Shared merchant preview and approved public coupon. Scoped to managed markup. */
.jcm-coupon-card{box-sizing:border-box;display:grid;grid-template-columns:35% minmax(0,1fr);gap:20px;width:100%;max-width:640px;margin:16px auto;padding:24px;color:#203f59;background-color:#eee;background-image:repeating-linear-gradient(135deg,transparent,transparent 9px,rgba(255,255,255,.45) 9px,rgba(255,255,255,.45) 11px);border:1px solid #ccc;font-family:Arial,Helvetica,sans-serif;text-align:center;line-height:1.4;overflow-wrap:anywhere}
.jcm-coupon-card *{box-sizing:border-box}
.jcm-coupon-card [hidden],.jcm-business-profile [hidden]{display:none!important}
.jcm-coupon-card .jcm-coupon-business{align-self:center;min-width:0}
.jcm-coupon-card .jcm-coupon-logo{display:block;max-width:100%;width:auto;height:auto;max-height:130px;object-fit:contain;margin:0 auto 12px}
.jcm-coupon-card .jcm-coupon-name{font-size:22px;font-weight:800;line-height:1.15;margin-bottom:12px;color:#173e61}
.jcm-coupon-card .jcm-coupon-detail{font-size:13px;margin-top:5px;white-space:pre-line}
.jcm-coupon-card .jcm-coupon-offer{display:flex;flex-direction:column;min-width:0}
.jcm-coupon-card .jcm-coupon-offer-box{display:flex;flex:1;flex-direction:column;justify-content:center;min-height:190px;padding:18px 14px;border:3px dashed #203f59;border-radius:22px;background:#fff}
.jcm-coupon-card .jcm-coupon-headline{font-size:30px;font-weight:800;line-height:1.12;color:#173e61;white-space:pre-line}
.jcm-coupon-card .jcm-coupon-terms{font-size:12px;line-height:1.45;margin-top:16px;white-space:pre-line;color:#303a43}
.jcm-coupon-card .jcm-coupon-expiry{font-size:12px;margin-top:12px;color:#303a43}
.jcm-coupon-card .jcm-coupon-brand{font-size:17px;font-weight:700;letter-spacing:.02em;margin-top:12px;color:#173e61}
.jcm-business-profile{max-width:960px;margin:0 auto}
.jcm-profile-copy{white-space:pre-line;overflow-wrap:anywhere;margin-bottom:8px}
.jcm-profile-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin:24px 0}
.jcm-profile-about,.jcm-profile-details>section{border-bottom:1px solid #d9e1e6;padding-bottom:16px}
.jcm-profile-coupon{margin-top:28px}
.jcm-profile-directory{margin-top:24px}
@media(max-width:480px){.jcm-coupon-card{gap:12px;padding:14px;grid-template-columns:32% minmax(0,1fr)}.jcm-coupon-card .jcm-coupon-name{font-size:17px}.jcm-coupon-card .jcm-coupon-detail{font-size:11px}.jcm-coupon-card .jcm-coupon-headline{font-size:23px}.jcm-coupon-card .jcm-coupon-offer-box{padding:14px 10px;border-width:2px;min-height:170px}.jcm-coupon-card .jcm-coupon-brand{font-size:14px}.jcm-coupon-terms,.jcm-coupon-card .jcm-coupon-expiry{font-size:11px}}
@media print{.jcm-coupon-card{break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
/* Preserve the native coupon containers used by existing coupon loops. */
.jcm-managed-coupon.cctor_coupon_container{width:317px!important;max-width:100%!important;container-type:inline-size;height:auto!important;border:0!important;padding:0!important;background:none!important;box-sizing:border-box}.jcm-managed-coupon .jcm-print-link{display:block;color:inherit;text-decoration:none}.jcm-managed-coupon .jcm-print-link:hover{text-decoration:none}.jcm-managed-coupon .jcm-print-link:focus-visible{outline:3px solid #176ca4;outline-offset:4px}.jcm-print-actions{text-align:center;margin:16px 0}.jcm-print-actions button{font:600 16px Arial,sans-serif;padding:10px 20px;background:#0873b4;color:white;border:0;border-radius:4px;cursor:pointer}.print_coupon .jcm-managed-coupon{margin:12px auto!important}@media print{.jcm-print-actions{display:none!important}.jcm-managed-coupon{break-inside:avoid}}
.jcm-profile-intro{display:grid;grid-template-columns:minmax(140px,30%) minmax(0,1fr);align-items:center;gap:32px;margin-bottom:24px}
.jcm-profile-logo{display:block;width:auto;max-width:100%;height:auto;max-height:240px;object-fit:contain;margin:0 auto}
.jcm-profile-intro:has(.jcm-profile-logo-wrap[hidden]){grid-template-columns:minmax(0,1fr)}
@media(max-width:600px){.jcm-profile-intro{grid-template-columns:minmax(0,1fr);gap:20px}.jcm-profile-logo{max-height:180px}.jcm-profile-details{grid-template-columns:minmax(0,1fr)}}

.jcm-coupon-card .jcm-coupon-business{font-size:inherit;font-weight:400;margin-bottom:0}.jcm-coupon-card .jcm-coupon-terms{margin-bottom:0}
.jcm-managed-coupon.cctor_coupon_container{margin-left:0!important;margin-right:0!important;overflow:visible!important}

.jcm-business-profile .jcm-managed-coupon.cctor_coupon_container,.print_coupon .jcm-managed-coupon.cctor_coupon_container{width:640px!important;max-width:100%!important}
@container(max-width:450px){.jcm-coupon-card{gap:12px;padding:14px;grid-template-columns:32% minmax(0,1fr)}.jcm-coupon-card .jcm-coupon-name{font-size:17px}.jcm-coupon-card .jcm-coupon-detail{font-size:11px}.jcm-coupon-card .jcm-coupon-headline{font-size:23px}.jcm-coupon-card .jcm-coupon-offer-box{padding:14px 10px;border-width:2px;min-height:170px}.jcm-coupon-card .jcm-coupon-brand{font-size:14px}.jcm-coupon-card .jcm-coupon-terms,.jcm-coupon-card .jcm-coupon-expiry{font-size:11px}}
/* Multiple offers share one business identity without truncating terms. */
.jcm-offers-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;flex:1}
.jcm-offers-grid.jcm-offers-multiple{grid-template-columns:repeat(2,minmax(0,1fr))}
.jcm-offers-grid .jcm-coupon-offer-box{min-width:0;overflow-wrap:anywhere}
.jcm-offers-multiple .jcm-coupon-headline{font-size:23px}
.jcm-offers-multiple .jcm-coupon-offer-box{padding:16px 10px}
@media(max-width:600px){.jcm-offers-grid.jcm-offers-multiple{grid-template-columns:minmax(0,1fr)}}
/* At most four offers per sheet; repeat business identity on subsequent sheets. */
@media print{[data-jcm-coupon-sheets]>.jcm-coupon-card{break-after:page;page-break-after:always}[data-jcm-coupon-sheets]>.jcm-coupon-card:last-child{break-after:auto;page-break-after:auto}}
.jcm-individual-print-links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 22px}.jcm-individual-print-links a{font:600 12px Arial,sans-serif;border:1px solid #b4c8d6;border-radius:4px;padding:8px;color:#075e95;text-decoration:none}.jcm-offer-unavailable{padding:18px;border:1px solid #d9e3eb;color:#526575}@media print{.jcm-individual-print-links{display:none!important}}
/* A narrow preview or directory card needs one readable offer column. */
.jcm-preview-panel{container-type:inline-size}
@container(max-width:600px){.jcm-offers-grid.jcm-offers-multiple{grid-template-columns:minmax(0,1fr)}}
