/* Scoped styles keep the campaign independent of theme layout. */
.kcs-promo-box[hidden],.kcs-promo-modal[hidden],.kcs-promo-bubble[hidden],.kcs-promo-modal [hidden],.kcs-promo-box [hidden]{display:none!important}
.kcs-promo-bubble{position:fixed!important;right:22px;bottom:24px;z-index:99990;display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:#14675e;color:#fff;padding:12px 19px;box-shadow:0 8px 30px #17483a40;cursor:pointer;font-family:inherit;line-height:1.25}
.kcs-promo-bubble strong{font-size:24px;font-weight:700;white-space:nowrap}.kcs-promo-bubble span{font-size:13px;max-width:100px;text-align:left}
.kcs-promo-box{box-sizing:border-box;max-width:1180px;margin:18px auto;padding:20px;border:1px solid #c9e2d9;border-radius:18px;background:#f2f8f4;color:#173b33;font-size:15px;line-height:1.5}.kcs-promo-box p{margin:8px 0 12px}.kcs-promo-edit{border:0;border-radius:24px;padding:10px 18px;background:#14675e;color:#fff;cursor:pointer;font:inherit}
.kcs-promo-modal{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:20px;background:#102c27a6;box-sizing:border-box}.kcs-promo-dialog{position:relative;box-sizing:border-box;width:100%;max-width:600px;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;background:#fffdf8;color:#173b33;border:1px solid #e5e9df;border-radius:26px;padding:30px;box-shadow:0 24px 90px #001a2350;font-family:inherit;line-height:1.6}.kcs-promo-dialog h2{margin:10px 30px 12px 0;font-size:26px;line-height:1.2;color:#173b33}.kcs-promo-eyebrow{font-size:12px;font-weight:700;letter-spacing:.05em;color:#14675e}.kcs-promo-x{position:absolute;right:14px;top:12px;background:transparent;color:#173b33;border:0;font-size:30px;line-height:1;padding:6px 10px;cursor:pointer}.kcs-promo-dialog p{margin:10px 0}.kcs-promo-dialog select{box-sizing:border-box;width:100%;min-height:48px;padding:10px 12px;margin:8px 0 16px;border:1px solid #91b5a8;border-radius:10px;background:#fff;color:#173b33;font:inherit}.kcs-promo-rules{font-size:14px;background:#eef5ef;border-radius:14px;padding:10px 16px;margin:6px 0 18px}.kcs-promo-accept{display:flex!important;align-items:flex-start;gap:10px;font-size:14px;cursor:pointer}.kcs-promo-accept input{appearance:auto!important;position:static!important;opacity:1!important;width:20px!important;height:20px!important;flex:0 0 20px;margin:3px 0 0!important;accent-color:#14675e}.kcs-promo-save,.kcs-promo-catalog{display:block;box-sizing:border-box;width:100%;text-align:center;border:0;border-radius:28px;padding:13px 18px;background:#14675e;color:#fff!important;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}.kcs-promo-save:disabled{opacity:.6;cursor:wait}.kcs-promo-error{color:#a82727;font-size:14px}.kcs-promo-dialog-open{overflow:hidden!important}.kcs-promo-dialog :focus-visible,.kcs-promo-bubble:focus-visible,.kcs-promo-edit:focus-visible{outline:3px solid #c9933b;outline-offset:3px}
@media(max-width:600px){.kcs-promo-bubble{right:12px;bottom:calc(14px + env(safe-area-inset-bottom));padding:10px 14px;gap:8px}.kcs-promo-bubble strong{font-size:21px}.kcs-promo-modal{padding:12px}.kcs-promo-dialog{padding:24px 20px;max-height:calc(100dvh - 24px);border-radius:20px}.kcs-promo-dialog h2{font-size:23px}.kcs-promo-box{margin:12px 16px;padding:16px}}

/* Gift quantity and removal are controlled by the campaign selection. */
.kcs-gift-item .kset-qty-control__btn,.kcs-gift-item .kset-cart-item__quantity input{display:none!important}
.kcs-gift-item .kset-qty-control::after{content:'1';padding:8px 16px}
.kcs-gift-item{background:#f2faf7;border-radius:12px;padding:12px}
.kcs-gift-label{display:block;color:#17685f;font-size:12px;line-height:1.5}
.kcs-gift-change{border:0;background:transparent;color:#17685f;font-size:12px;cursor:pointer;padding:6px}
