/* CCA-DESIGN-04 coupon surfaces. Woo owns prices, restrictions and Cart totals. */
:where(.pf-coupon-dialog,.pf-coupon-centre,.pf-coupon-block-entry,.pf-checkout-coupon-intro,.pf-coupon-account-shortcut){
 --pf-c-section:var(--ui-section,#fff6dc);--pf-c-frame:var(--ui-frame,#d2b17e);--pf-c-card:var(--ui-card,#fffef9);
 --pf-c-border:var(--ui-border,#e5d1b3);--pf-c-ink:var(--ui-ink,#513b32);--pf-c-muted:var(--ui-muted,#756457);
 --pf-c-primary:var(--ui-primary,#c93657);--pf-c-hover:var(--ui-primary-hover,#b32b4b);
 --pf-c-success:var(--ui-success,#376d40);--pf-c-danger:var(--ui-danger,#b93848);--pf-c-focus:var(--pf-control-focus,#a7344b);
 color:var(--pf-c-ink)
}
.pf-commerce .pf-coupon-block-entry{display:flex;align-items:center;min-width:0;margin:0;padding:0;border:0}
.pf-coupon-block-entry button[data-pf-open-coupons],.pf-empty-cart-coupon-entry button[data-pf-open-coupons],.pf-checkout-coupon-intro[data-pf-checkout-coupon-entry] button[data-pf-open-coupons]{
 --pf-c-control-shadow:inset 0 1px #fff,0 1px #d8bb94;
 min-height:var(--pf-control-target,44px);border:4px solid transparent;border-width:calc((var(--pf-control-target,44px) - var(--pf-control-action-surface,36px)) / 2);border-radius:999px;background:linear-gradient(#fffefa,#fff4df) padding-box;
 box-shadow:var(--pf-c-control-shadow);color:var(--pf-c-ink);
 font:800 var(--pf-control-font,14px)/1.4 var(--pf-font-body);padding:4px 12px;text-align:center;white-space:normal
}
.pf-coupon-block-entry button[data-pf-open-coupons]:hover,.pf-empty-cart-coupon-entry button[data-pf-open-coupons]:hover,.pf-checkout-coupon-intro[data-pf-checkout-coupon-entry] button[data-pf-open-coupons]:hover{background-image:linear-gradient(#fff0d1,#fff0d1)}
.pf-checkout-coupon-intro{display:flex;align-items:center;gap:8px;margin:0 0 20px;border:1px solid var(--pf-c-border);border-radius:18px;background:var(--pf-c-card);box-shadow:inset 0 2px #fff,0 2px #e8d2b4;padding:8px 16px}
.pf-checkout-coupon-intro[data-pf-checkout-coupon-entry]+.pf-entry__content .wc-block-checkout{padding-top:0}
@media(min-width:601px){.pf-checkout-coupon-intro[data-pf-checkout-coupon-entry]{margin-bottom:24px}}
.pf-checkout-coupon-intro__text{flex:1;min-width:0;font-size:14px;font-weight:700;overflow-wrap:anywhere}
.pf-checkout-coupon-intro button{flex:none}
.pf-empty-cart-coupon-entry[hidden]{display:none}
.pf-commerce:has(> .pf-empty-cart-coupon-entry:not([hidden])) .pf-coupon-block-entry{display:none}
.pf-coupon-account-shortcut{--pf-c-control-shadow:inset 0 2px #fff,0 2px #e8d2b4;display:flex;align-items:center;gap:14px;margin:20px 0;padding:18px 20px;border:1px solid var(--pf-c-border);border-radius:20px;background:var(--pf-c-card);box-shadow:var(--pf-c-control-shadow);color:var(--pf-c-ink);text-decoration:none}
.pf-coupon-account-shortcut:hover{color:var(--pf-c-ink);background:#fff9ed}
.pf-coupon-account-shortcut__icon{flex:none;color:var(--pf-c-primary);font-size:28px}
.pf-coupon-account-shortcut>span:nth-child(2){flex:1;min-width:0}
.pf-coupon-account-shortcut strong,.pf-coupon-account-shortcut small{display:block}
.pf-coupon-account-shortcut strong{font-size:18px}
.pf-coupon-account-shortcut small{margin-top:3px;color:var(--pf-c-muted);font-size:14px}
.pf-coupon-account-shortcut>span:last-child{color:var(--pf-c-ink);font-size:24px}
.pf-coupon-centre{container:coupon-content / inline-size;min-width:0}
.pf-coupon-centre>h2{margin:0 0 8px;color:var(--pf-c-ink);font-size:24px}
.pf-coupon-centre>p{margin:0 0 20px;color:var(--pf-c-muted);font-size:14px;line-height:1.6}

.pf-coupon-dialog{width:620px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:2px solid var(--pf-c-frame);border-radius:26px;background:var(--pf-c-section);box-shadow:inset 0 2px #fff,0 4px #b88c643a,0 18px 60px #46321f55;overflow:hidden}
.pf-coupon-dialog[open]{display:flex;flex-direction:column}
.pf-coupon-dialog::backdrop{background:#3a281d77}
.pf-coupon-dialog__header{flex:none;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:16px;border-bottom:1px solid var(--pf-c-border);background:var(--pf-c-card);padding:22px 24px 16px}
.pf-coupon-dialog__eyebrow{color:var(--pf-c-muted);font-size:14px;font-weight:600}
.pf-coupon-dialog__header h2{margin:5px 0 0;color:var(--pf-c-ink);font-size:25px;line-height:1.35}
.pf-coupon-dialog__close{--pf-c-control-shadow:inset 0 1px #fff,0 1px #d8bb94;display:grid;place-items:center;width:44px;height:44px;border:1px solid #d4b991;border-radius:50%;background:linear-gradient(#fffefa,#fff4df);box-shadow:var(--pf-c-control-shadow);color:var(--pf-c-ink);font:600 28px/1 var(--pf-font-body)}
.pf-coupon-dialog__body{container:coupon-content / inline-size;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:16px;padding:20px 24px 24px;background:var(--pf-c-section)}
.pf-coupon-dialog :where(button,summary,a):focus:not(:focus-visible),.pf-coupon-centre :where(button,summary,a):focus:not(:focus-visible),.pf-checkout-coupon-intro button:focus:not(:focus-visible),.pf-coupon-block-entry button:focus:not(:focus-visible),.pf-empty-cart-coupon-entry button:focus:not(:focus-visible),.pf-coupon-account-shortcut:focus:not(:focus-visible){outline:none;box-shadow:var(--pf-c-control-shadow,none)}
.pf-coupon-dialog :where(button,summary,a):focus-visible,.pf-coupon-centre :where(button,summary,a):focus-visible,.pf-checkout-coupon-intro button:focus-visible,.pf-coupon-block-entry button:focus-visible,.pf-empty-cart-coupon-entry button:focus-visible,.pf-coupon-account-shortcut:focus-visible{outline:var(--pf-control-focus-ring,3px solid var(--pf-c-focus));outline-offset:2px;box-shadow:var(--pf-c-control-shadow,none)}
.pf-coupon-dialog :where(button,summary,a),.pf-coupon-centre :where(button,summary,a){scroll-margin-block:16px}
.pf-coupon-summary{display:flex;align-items:center;gap:12px;margin-bottom:16px;border:1px solid var(--pf-c-border);border-radius:16px;background:#fffaf0;padding:14px 16px}
.pf-coupon-summary>div{min-width:0}
.pf-coupon-summary strong,.pf-coupon-summary small{display:block}
.pf-coupon-summary strong{font-size:15px;color:var(--pf-c-ink)}
.pf-coupon-summary small{margin-top:3px;color:var(--pf-c-muted);font-size:14px}
.pf-coupon-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.pf-coupon-filter{--pf-c-control-shadow:inset 0 1px #fff,0 1px #e5ceb2;display:inline-flex;align-items:center;justify-content:center;min-height:var(--pf-control-target,44px);border:4px solid transparent;border-width:calc((var(--pf-control-target,44px) - var(--pf-control-filter-surface,36px)) / 2);border-radius:999px;background:linear-gradient(#fffefa,#fffefa) padding-box;box-shadow:var(--pf-c-control-shadow);color:var(--pf-c-ink);font:700 var(--pf-control-font,14px)/1.4 var(--pf-font-body);padding:4px 10px}
.pf-coupon-filter[aria-pressed=true]{--pf-c-control-shadow:inset 0 1px #fff7df,0 1px #d6bc92;background-image:linear-gradient(#ffeec5,#ffeec5);box-shadow:var(--pf-c-control-shadow);color:var(--pf-c-ink)}
.pf-coupon-list{display:grid;gap:20px;min-width:0;padding:4px;overflow:visible}
.pf-coupon-ticket{position:relative;min-width:0;border:1px solid var(--pf-c-border);border-radius:20px;background:var(--pf-c-card);box-shadow:inset 0 2px #fff,0 2px #dfc8a7,0 5px 10px #7048290a}
.pf-coupon-ticket.is-applied{outline:2px solid #598447;outline-offset:3px}
.pf-coupon-ticket__main{display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px;align-items:start;padding:20px}
.pf-coupon-ticket__art{width:80px;height:80px;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;border:1px solid #e6cd9e;border-radius:16px;background:#fff0cd;color:var(--pf-c-primary);padding:16px}
.pf-coupon-ticket__art img,.pf-coupon-ticket__fallback-icon{display:block;width:40px;height:40px;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.pf-coupon-ticket__fallback-icon{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pf-coupon-ticket__copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.pf-coupon-ticket__label{display:inline-block;width:fit-content;color:var(--pf-c-muted);font-size:12px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.pf-coupon-ticket__copy h3{margin:0;color:var(--pf-c-ink);font-size:18px;line-height:1.4;overflow-wrap:anywhere}
.pf-coupon-ticket__benefit{margin:0;color:var(--pf-c-primary);font-size:23px;font-weight:800;line-height:1.3;overflow-wrap:anywhere}
.pf-coupon-ticket__term{margin:0;color:var(--pf-c-muted);font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.pf-coupon-ticket__perforation{position:relative;margin:0 16px;border-top:1px dashed #dac6a8}
.pf-coupon-ticket__perforation::before,.pf-coupon-ticket__perforation::after{content:"";position:absolute;top:-8px;width:14px;height:14px;border:1px solid var(--pf-c-border);border-radius:50%;background:var(--pf-c-section);pointer-events:none}
.pf-coupon-ticket__perforation::before{left:-24px}.pf-coupon-ticket__perforation::after{right:-24px}
.pf-coupon-ticket__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:14px 20px 8px}
.pf-coupon-ticket__reason{flex:1;min-width:0;color:var(--pf-c-muted);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.pf-coupon-ticket__reason.is-eligible{color:var(--pf-c-success)}
.pf-coupon-ticket__action{--pf-c-control-shadow:inset 0 1px #ffffff44,0 2px #9f2941;flex:none;min-height:var(--pf-control-target,44px);border:2px solid transparent;border-width:calc((var(--pf-control-target,44px) - var(--pf-control-primary-surface,40px)) / 2);border-radius:999px;background:linear-gradient(#d23d5f,var(--pf-c-primary)) padding-box;box-shadow:var(--pf-c-control-shadow);color:#fff;font:800 var(--pf-control-font,14px)/1.4 var(--pf-font-body);padding:6px 12px;white-space:normal}
.pf-coupon-ticket__action:not(:disabled):hover{background-image:linear-gradient(var(--pf-c-hover),var(--pf-c-hover));transform:translateY(-1px)}
.pf-coupon-ticket__action:not(:disabled):active{transform:translateY(2px);box-shadow:inset 0 1px 3px #8f213433,0 1px #9f2941}
.pf-coupon-ticket__action:disabled{--pf-c-control-shadow:none;background-image:linear-gradient(#eee6db,#eee6db);box-shadow:none;color:#766659;cursor:not-allowed}
.pf-coupon-ticket__applied-state{display:inline-flex;align-items:center;flex:none;min-height:44px;border:1px solid #bbd4ad;border-radius:999px;background:#f1f7ec;color:var(--pf-c-success);font-size:14px;font-weight:700;padding:8px 14px}
.pf-coupon-ticket__details{padding:0 20px 12px}
.pf-coupon-ticket__details summary{min-height:44px;color:var(--pf-c-ink);font-size:14px;font-weight:700;cursor:pointer;padding:10px 0;text-decoration:underline;text-underline-offset:3px}
.pf-coupon-ticket__details p{margin:0;color:var(--pf-c-muted);font-size:14px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}
.pf-coupon-ticket__code{margin:0 0 8px;color:var(--pf-c-muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.pf-coupon-ticket__code b{color:var(--pf-c-ink);font-family:ui-monospace,monospace;font-weight:700;overflow-wrap:anywhere}
.pf-coupon-feedback{margin:0 0 16px;border:1px solid #c5d7b9;border-radius:12px;background:#f3f8ef;color:var(--pf-c-ink);font-size:14px;line-height:1.5;padding:10px 12px}
.pf-coupon-feedback.is-error{border-color:#dfb5b9;background:#fff3f2;color:var(--pf-c-ink)}
.pf-coupon-loading,.pf-coupon-footnote{color:var(--pf-c-muted);font-size:14px;line-height:1.6}
.pf-coupon-footnote{margin:16px 0 0}
.pf-coupon-empty{border:1px dashed #dec3a0;border-radius:18px;background:var(--pf-c-card);text-align:center;padding:28px 16px}
.pf-coupon-empty h3{margin:0 0 8px;color:var(--pf-c-ink);font-size:19px}
.pf-coupon-empty p{margin:0;color:var(--pf-c-muted);font-size:14px;line-height:1.7}
.pf-coupon-load-more{--pf-c-control-shadow:inset 0 1px #fff,0 1px #d8bb94;display:block;min-height:var(--pf-control-target,44px);margin:20px auto 0;border:4px solid transparent;border-width:calc((var(--pf-control-target,44px) - var(--pf-control-action-surface,36px)) / 2);border-radius:999px;background:linear-gradient(#fffefa,#fff4df) padding-box;box-shadow:var(--pf-c-control-shadow);color:var(--pf-c-ink);font:800 var(--pf-control-font,14px)/1.4 var(--pf-font-body);padding:4px 12px}
.pf-coupon-load-more:disabled{--pf-c-control-shadow:none;background-image:linear-gradient(#eee6db,#eee6db);box-shadow:none;color:#766659;cursor:wait}
@container coupon-content (max-width:439px){
 .pf-coupon-ticket__main{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:16px}
 .pf-coupon-ticket__art{width:64px;height:64px;border-radius:14px;padding:14px}
 .pf-coupon-ticket__art img,.pf-coupon-ticket__fallback-icon{width:32px;height:32px}
 .pf-coupon-ticket__copy h3{font-size:17px}
 .pf-coupon-ticket__benefit{font-size:22px}
 .pf-coupon-ticket__foot{flex-wrap:wrap;padding:12px 16px 4px}
 .pf-coupon-ticket__reason{flex:1 1 10rem}
 .pf-coupon-ticket__action,.pf-coupon-ticket__applied-state{margin-left:auto}
 .pf-coupon-ticket__details{padding-inline:16px}
}
@container coupon-content (max-width:300px){
 .pf-coupon-ticket__main{gap:8px;padding:12px}
 .pf-coupon-ticket__benefit{font-size:20px}
 .pf-coupon-ticket__foot{padding-inline:12px}
 .pf-coupon-ticket__details{padding-inline:12px}
 .pf-coupon-filter{padding-inline:10px}
}
@media(max-width:600px){
 .pf-coupon-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:24px}
 .pf-coupon-dialog__header{gap:12px;padding:16px}
 .pf-coupon-dialog__header h2{font-size:24px}
 .pf-coupon-dialog__body{padding:16px 12px max(20px,env(safe-area-inset-bottom))}
 .pf-coupon-account-shortcut{gap:12px;padding:16px}
 .pf-checkout-coupon-intro{flex-wrap:wrap}
 .pf-checkout-coupon-intro button{margin-left:auto}
 .pf-empty-cart-coupon-entry .pf-checkout-coupon-intro__text{flex:1 1 100%;min-width:0;line-height:1.6;white-space:normal}
}
@media(prefers-reduced-motion:reduce){.pf-coupon-ticket__action{transition:none;transform:none!important}}
