/* Shop Kit front-end: consent dialog, support chat, payment marks */
.sk-cc { position: fixed; inset: auto 16px 16px 16px; z-index: 100; display: flex; justify-content: center; pointer-events: none; }
.sk-cc[hidden] { display: none; }
.sk-cc__box { pointer-events: auto; width: min(640px, 100%); max-height: calc(100vh - 32px); overflow: auto; padding: 20px; border-radius: 18px; background: #fff; color: #14151a; box-shadow: 0 24px 60px rgb(0 0 0 / .3); font-size: 14px; line-height: 1.5; }
.sk-cc__box h2 { margin: 0 0 6px; font-size: 18px; }
.sk-cc__box p { margin: 0 0 14px; color: #3a3d48; }
.sk-cc__cats { display: grid; gap: 8px; margin-bottom: 14px; }
.sk-cc__cats[hidden] { display: none; }
.sk-cc__cat { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid #e3dfd4; border-radius: 12px; cursor: pointer; }
.sk-cc__cat input { width: 18px; height: 18px; margin-top: 2px; accent-color: #5b3df5; flex: none; }
.sk-cc__cat small { display: block; color: #5f6271; }
.sk-cc__actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.sk-cc__btn { min-height: 42px; padding: 8px 16px; border: 0; border-radius: 999px; background: #14151a; color: #fff; font: inherit; font-weight: 650; cursor: pointer; }
.sk-cc__btn--ghost { background: #efece4; color: #14151a; }
.sk-cc__btn[hidden] { display: none; }

.sk-chat-btn { position: fixed; right: 16px; bottom: 16px; z-index: 90; display: inline-flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 18px; border: 0; border-radius: 999px; background: #5b3df5; color: #fff; font: 600 15px/1 system-ui, sans-serif; box-shadow: 0 10px 30px rgb(91 61 245 / .4); cursor: pointer; }
.sk-chat-btn:hover { background: #4a2ee0; }
.sk-chat { position: fixed; right: 16px; bottom: 80px; z-index: 95; display: flex; flex-direction: column; width: min(380px, calc(100vw - 32px)); height: min(560px, calc(100vh - 110px)); border-radius: 18px; background: #fff; color: #14151a; box-shadow: 0 24px 60px rgb(0 0 0 / .28); overflow: hidden; font-size: 14px; }
.sk-chat[hidden] { display: none; }
.sk-chat__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 16px; background: #14151a; color: #fff; }
.sk-chat__head span { display: block; font-size: 12px; color: #a6a8b8; }
.sk-chat__close { width: 36px; height: 36px; border: 0; border-radius: 50%; background: rgb(255 255 255 / .1); color: #fff; cursor: pointer; }
.sk-chat__log { flex: 1; overflow: auto; padding: 14px; display: flex; flex-direction: column; gap: 8px; background: #f6f4ef; }
.sk-chat__msg { max-width: 85%; padding: 9px 12px; border-radius: 14px; white-space: pre-wrap; }
.sk-chat__msg--them { align-self: flex-start; background: #fff; border-bottom-left-radius: 4px; }
.sk-chat__msg--me { align-self: flex-end; background: #5b3df5; color: #fff; border-bottom-right-radius: 4px; }
.sk-chat__quick { display: flex; flex-wrap: wrap; gap: 6px; }
.sk-chat__quick button { padding: 7px 11px; border: 1px solid #d4cfc2; border-radius: 999px; background: #fff; font: inherit; font-size: 13px; cursor: pointer; }
.sk-chat__quick button:hover { border-color: #14151a; }
.sk-chat__form { display: grid; gap: 6px; padding: 10px; border-top: 1px solid #e3dfd4; }
.sk-chat__row { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.sk-chat__form input, .sk-chat__form textarea { width: 100%; padding: 8px 10px; border: 1px solid #d4cfc2; border-radius: 10px; font: inherit; font-size: 16px; resize: none; }
.sk-chat__form button { min-height: 40px; border: 0; border-radius: 999px; background: #14151a; color: #fff; font: inherit; font-weight: 650; cursor: pointer; }
.sk-chat__form button:disabled { opacity: .5; }
.sk-hp { position: absolute !important; left: -9999px; }

.sk-marks { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; padding: 0; }
.sk-mark { display: inline-flex; align-items: center; justify-content: center; gap: 5px; height: 34px; min-width: 56px; padding: 0 10px; border-radius: 6px; background: #fff; color: #14151a; font: 700 12px/1 system-ui, sans-serif; border: 1px solid #e3dfd4; }
.sk-mark img { height: 20px; width: auto; display: block; }
.sk-mor { display: grid; gap: 2px; margin: 4px 0 14px; padding: 12px 14px; border-radius: 12px; background: #f6f4ef; font-size: 14px; }
.sk-mor__label { font-size: 12px; color: #5f6271; font-weight: 650; }
.sk-secure-note, .sk-price-note { margin: 12px 0 8px; font-size: 13px; color: #5f6271; }
.sk-price-note-row td { padding-top: 0 !important; border: 0 !important; }
#order_review .sk-marks { margin-top: 6px; }
.sk-contact-list { list-style: none; padding: 0; display: grid; gap: 6px; }
@media (max-width: 640px) {
	.sk-chat-btn span { display: none; }
	.sk-chat-btn { width: 52px; padding: 0; justify-content: center; }
	.sk-chat { right: 8px; left: 8px; width: auto; bottom: 76px; }
	.sk-cc { inset: auto 8px 8px 8px; }
}
.sk-mark--badge { padding: 2px 4px; min-width: 0; }
.sk-mark--badge img { height: 30px; }
.sk-mark--badge img[alt="Mastercard ID Check"] { height: 26px; }
.sk-reveal { margin-left: auto; padding: 6px 12px; border: 1px solid #14151a; border-radius: 999px; background: #fff; color: #14151a; font-size: 13px; cursor: pointer; }
.sk-code--hidden code { letter-spacing: .15em; color: #5f6271; }
.sk-code-note { margin: 6px 0 0; font-size: 13px; color: #5f6271; }
.sk-code-note--ok { color: #127a43; }
.sk-delivery-box { margin: 0 0 24px; padding: 18px 20px; border-radius: 16px; background: #e3f6ea; color: #14151a; }
.sk-delivery-box > strong { display: block; font-size: 18px; margin-bottom: 4px; }
.sk-delivery-box p { margin: 0; }
