/* Final public Store acceptance layer. Existing KZN Touch chrome remains the source of truth. */
.cl-privacy-dialog-fix .cl-privacy-essential-action,.cl-privacy-dialog-fix .cl-privacy-analytics-action{font-size:10px!important;line-height:1!important;letter-spacing:.055em!important;white-space:nowrap!important;padding:0 14px!important;min-height:44px!important}.cl-privacy-dialog-fix .cl-privacy-analytics-action{background:#19c8ed!important;color:#06131d!important}.cl-privacy-dialog-fix .cl-privacy-essential-action{background:#fff!important;color:#07131f!important;border-color:#07131f!important}

/* Public checkboxes are fully branded instead of browser-native controls. */
#cl-store-app .cl-auth-preferences label,#cl-store-app .cl-preference-choice{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;cursor:pointer}#cl-store-app .cl-auth-preferences input[type="checkbox"],#cl-store-app .cl-preference-choice>input[type="checkbox"]{position:absolute;inline-size:1px!important;block-size:1px!important;opacity:0!important;pointer-events:none!important}.cl-auth-preferences label::before,.cl-preference-choice__box{content:"";display:grid;place-items:center;width:16px;height:16px;border:1px solid #9fb0bb;background:#fff;box-sizing:border-box;margin-top:1px;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.cl-auth-preferences label:has(input:checked)::before,.cl-preference-choice>input:checked+.cl-preference-choice__box{border-color:#007c9f;background:#19c8ed;box-shadow:inset 0 0 0 3px #fff}.cl-auth-preferences label:focus-within::before,.cl-preference-choice:focus-within .cl-preference-choice__box{outline:2px solid #19c8ed;outline-offset:2px}.cl-auth-preferences label>span{grid-column:2}.cl-preference-choice__copy{display:grid;gap:3px}.cl-preference-choice__copy strong{font-size:12px}.cl-preference-choice__copy small{color:#6e7c86;line-height:1.45}.cl-preference-choice.is-locked{cursor:not-allowed;opacity:.68}

/* The original form controls remain as data sources only; visible controls are KZN Touch components. */
#cl-store-app .cl-native-control-source{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}.cl-public-select{position:relative;width:100%;z-index:3}.cl-public-select.is-open{z-index:30}.cl-public-select__trigger{position:relative;width:100%;height:48px;padding:0 42px 0 14px;border:1px solid #cbd5da;background:#fff;color:#07131f;text-align:left;font:inherit;cursor:pointer}.cl-public-select__trigger:hover,.cl-public-select__trigger:focus-visible,.cl-public-select.is-open .cl-public-select__trigger{border-color:#007c9f;box-shadow:inset 3px 0 0 #19c8ed;outline:none}.cl-public-select__chevron{position:absolute;right:15px;top:50%;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-68%) rotate(45deg);transition:transform .16s ease}.cl-public-select.is-open .cl-public-select__chevron{transform:translateY(-25%) rotate(225deg)}.cl-public-select__menu{display:none;position:absolute;left:0;right:0;top:calc(100% + 6px);max-height:260px;overflow:auto;border:1px solid #9fb0bb;background:#fff;padding:5px;box-shadow:0 18px 44px rgba(7,19,31,.16)}.cl-public-select.is-open .cl-public-select__menu{display:grid}.cl-public-select__menu button{appearance:none;border:0;border-left:3px solid transparent;background:#fff;color:#07131f;padding:11px 12px;text-align:left;font:inherit;cursor:pointer}.cl-public-select__menu button:hover,.cl-public-select__menu button:focus-visible{border-left-color:#19c8ed;background:#f2f6f7;outline:none}.cl-public-select__menu button.is-selected{border-left-color:#007c9f;background:#eef8fb;font-weight:800}

.cl-quantity-stepper{display:grid;grid-template-columns:44px minmax(48px,1fr) 44px;align-items:stretch;width:min(180px,100%);height:48px;border:1px solid #cbd5da;background:#fff}.cl-quantity-stepper__button{appearance:none;border:0;background:#f2f5f6;color:#07131f;font-size:22px;line-height:1;cursor:pointer}.cl-quantity-stepper__button:first-child{border-right:1px solid #cbd5da}.cl-quantity-stepper__button:last-child{border-left:1px solid #cbd5da}.cl-quantity-stepper__button:hover:not(:disabled),.cl-quantity-stepper__button:focus-visible:not(:disabled){background:#19c8ed;outline:none}.cl-quantity-stepper__button:disabled{opacity:.38;cursor:not-allowed}.cl-quantity-stepper__value{display:grid;place-items:center;font-weight:800;font-variant-numeric:tabular-nums}.cl-product-option,.cl-product-quantity{position:relative}.cl-cart-line label:has(.cl-quantity-stepper){min-width:150px}

/* Native public product card classes are copied at runtime when the approved hidden page exposes them. This fallback matches that same Home-card geometry if a template is unavailable. */
#cl-store-app .cl-shop-grid{gap:0;border-top:1px solid #d5dde1;border-left:1px solid #d5dde1}#cl-store-app .cl-shop-card{border:0!important;border-right:1px solid #d5dde1!important;border-bottom:1px solid #d5dde1!important;background:#fff!important;box-shadow:none!important;min-width:0}#cl-store-app .cl-shop-card__image{display:grid!important;place-items:center!important;aspect-ratio:1.18/1!important;background:#f0f3f4!important;padding:22px!important;overflow:hidden}#cl-store-app .cl-shop-card__image img{width:100%!important;height:100%!important;object-fit:contain!important}#cl-store-app .cl-shop-card__body{padding:14px 13px 12px!important;display:grid!important;gap:8px!important}#cl-store-app .cl-shop-card__category{font-size:9px!important;color:#007c9f!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important}#cl-store-app .cl-shop-card h2{margin:0!important;font-size:16px!important;line-height:1.02!important;text-transform:uppercase!important}#cl-store-app .cl-shop-card h2 a{color:#07131f!important;text-decoration:none!important}#cl-store-app .cl-shop-card__bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding-top:10px!important;border-top:1px solid #d5dde1!important}#cl-store-app .cl-shop-card__bottom strong{font-size:15px!important;color:#07131f!important;white-space:nowrap}#cl-store-app .cl-shop-card__bottom button,#cl-store-app .cl-shop-card__bottom a{appearance:none!important;min-height:39px!important;padding:0 13px!important;border:1px solid #cbd5da!important;background:#fff!important;color:#07131f!important;font-size:9px!important;font-weight:800!important;letter-spacing:.04em!important;text-transform:uppercase!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;cursor:pointer!important}#cl-store-app .cl-shop-card__bottom button:hover,#cl-store-app .cl-shop-card__bottom a:hover{border-color:#19c8ed!important;box-shadow:inset 0 -3px 0 #19c8ed!important}

/* Single-page account layout. */
.cl-account-unified{display:grid;gap:18px;margin-top:24px}.cl-account-unified .cl-account-panel{display:grid;grid-template-columns:50px minmax(0,1fr);gap:18px;padding:0;border:1px solid #d2dce1;background:#fff}.cl-account-section-number{display:grid;place-items:start center;padding-top:25px;border-right:1px solid #d2dce1;color:#007c9f;font-family:inherit;font-size:17px;font-weight:900}.cl-account-unified .cl-account-panel>div{padding:24px 26px 28px}.cl-account-unified .cl-account-panel h2{margin:0 0 6px}.cl-account-unified .cl-account-panel>div>p{margin:0 0 20px;color:#61737f}.cl-account-unified .cl-profile-form{max-width:620px}.cl-account-unified .cl-preferences-form{max-width:760px;display:grid;gap:12px}.cl-account-unified .cl-preference-choice{grid-template-columns:18px minmax(0,1fr);padding:15px;border:1px solid #d6dfe3;background:#fff}.cl-account-unified .cl-account-orders{display:grid;gap:0;border:1px solid #d6dfe3}.cl-account-unified .cl-account-orders article{border:0;border-bottom:1px solid #d6dfe3}.cl-account-unified .cl-account-orders article:last-child{border-bottom:0}.cl-account-loading{display:grid;gap:10px;padding:30px 0}.cl-account-loading span{height:74px;background:linear-gradient(100deg,#f2f5f6 25%,#e6ecef 40%,#f2f5f6 55%);background-size:240% 100%;animation:cl-account-shimmer 1.7s ease-in-out infinite}@keyframes cl-account-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}

/* Account-only checkout and manual bank-transfer order confirmation. */
.cl-checkout-signin-required{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.cl-secondary-action{display:inline-flex;min-height:46px;padding:0 18px;align-items:center;justify-content:center;border:1px solid #07131f;background:#fff;color:#07131f;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;cursor:pointer}.cl-secondary-action:hover,.cl-secondary-action:focus-visible{border-color:#19c8ed;box-shadow:inset 0 -3px 0 #19c8ed;outline:none}.cl-checkout-account-card{display:grid;gap:4px;padding:16px;border:1px solid #d5dde1;background:#f5f8f9}.cl-checkout-account-card strong{font-size:14px}.cl-checkout-account-card span{color:#657681;font-size:12px}.cl-order-confirm-layer{position:fixed;z-index:99999;inset:0;display:grid;place-items:center;padding:24px;background:rgba(5,11,16,.78);backdrop-filter:blur(4px);overflow:auto}.cl-order-confirm-modal{width:min(700px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;color:#07131f;border-top:5px solid #19c8ed;padding:28px;box-shadow:0 28px 90px rgba(0,0,0,.32)}.cl-order-confirm-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #d6dfe3}.cl-order-confirm-modal__head h2{margin:8px 0 0;font-size:34px;line-height:1;text-transform:uppercase}.cl-order-confirm-modal__head>button{appearance:none;width:42px;height:42px;border:1px solid #bfcbd1;background:#fff;color:#07131f;font-size:24px;cursor:pointer}.cl-order-confirm-intro{margin:20px 0;line-height:1.6}.cl-order-total-review{display:grid;border:1px solid #d6dfe3;margin:18px 0}.cl-order-total-review>div{display:flex;justify-content:space-between;gap:16px;padding:11px 14px;border-bottom:1px solid #d6dfe3}.cl-order-total-review>div:last-child{border-bottom:0}.cl-order-total-review .is-discount{color:#177351}.cl-order-total-review .is-total{background:#07131f;color:#fff;font-size:16px}.cl-bank-details{margin:18px 0;padding:18px;border-left:4px solid #19c8ed;background:#f2f6f7}.cl-bank-details h2,.cl-bank-details h3{margin:0 0 14px;text-transform:uppercase}.cl-bank-details dl{margin:0;display:grid}.cl-bank-details dl div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:1px solid #d7e0e4}.cl-bank-details dl div:last-child{border-bottom:0}.cl-bank-details dt{color:#60727d}.cl-bank-details dd{margin:0;font-weight:800;overflow-wrap:anywhere}.cl-order-pop-note{padding:15px;border:1px solid #d6dfe3}.cl-order-pop-note p{margin:6px 0 0;line-height:1.55}.cl-order-pop-note a,.cl-order-success a{color:#007c9f;font-weight:800}.cl-order-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.cl-order-confirm-actions .cl-primary-action,.cl-order-confirm-actions .cl-secondary-action{margin:0}.cl-demo-bank-warning{display:grid;gap:4px;margin:16px 0;padding:14px 16px;border-left:4px solid #19c8ed;background:#eef8fb}.cl-demo-bank-warning strong{text-transform:uppercase;font-size:11px}.cl-demo-bank-warning span{font-size:12px;color:#435762}.cl-order-success{max-width:850px;margin:0 auto;padding:30px 0}.cl-order-success h1{font-size:48px;text-transform:uppercase;margin:10px 0 16px}.cl-order-success>p{line-height:1.65}.cl-order-success__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}

@media(max-width:760px){.cl-account-unified .cl-account-panel{grid-template-columns:1fr}.cl-account-section-number{display:block;padding:14px 18px;border-right:0;border-bottom:1px solid #d2dce1}.cl-account-unified .cl-account-panel>div{padding:20px 18px}.cl-order-confirm-layer{padding:10px}.cl-order-confirm-modal{max-height:calc(100vh - 20px);padding:20px}.cl-order-confirm-modal__head h2{font-size:28px}.cl-bank-details dl div{grid-template-columns:1fr;gap:3px}.cl-order-confirm-actions{display:grid}.cl-order-success h1{font-size:36px}.cl-cart-line label:has(.cl-quantity-stepper){min-width:0}}
@media(prefers-reduced-motion:reduce){.cl-public-select__chevron,.cl-auth-preferences label::before,.cl-preference-choice__box{transition:none}.cl-account-loading span{animation:none}}
