/* ARTZONE ceiling visualizer 1.5 – dark teal theme
   Every rule is prefixed with .artz-cv and key properties use !important so
   Elementor's global styles (buttons, typography, form fields) can't override them.
   States: .artz-cv[data-state="form|processing|result|limit"] */

.artz-cv {
	--az-card: #0E2A31;
	--az-field: #0A191D;
	--az-line: #2C6B79;
	--az-card-line: rgba(216, 238, 243, .16);
	--az-dash: #3A7F8E;
	--az-white: #FFFFFF;
	--az-light: #D8EEF3;
	--az-muted: #8BB2BA;
	--az-accent: #7FD3DF;
	--az-ink: #0A191D;
	--az-error: #FFB4A8;
	--az-head: 'Heebo', 'Rubik', sans-serif;
	--az-body: 'Rubik', 'Heebo', sans-serif;
	position: relative;
	width: 100%;
	max-width: 1200px;
	min-width: 0;
	margin: 0 auto;
	overflow: hidden;
	color: var(--az-light);
	font-family: var(--az-body) !important;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	direction: rtl;
	text-align: right;
}
.artz-cv * { box-sizing: border-box; min-width: 0; }
/* the template's Lato & co. never reach the widget */
.artz-cv, .artz-cv p, .artz-cv span, .artz-cv label, .artz-cv legend, .artz-cv li,
.artz-cv input, .artz-cv button, .artz-cv a { font-family: var(--az-body) !important; }
.artz-cv img { max-width: 100%; height: auto; }
.artz-cv [hidden] { display: none !important; }
.artz-cv p { margin: 0; }
.artz-cv .artz-cv__icon { flex: 0 0 auto; display: block; }

/* ---------- Card ---------- */
.artz-cv .artz-cv__form,
.artz-cv .artz-cv__loading,
.artz-cv .artz-cv__result {
	background: var(--az-card);
	border: 1px solid var(--az-card-line);
	border-radius: 20px;
	padding: 24px;
}
.artz-cv .artz-cv__form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }

.artz-cv .artz-cv__title,
.artz-cv .artz-cv__result-title {
	margin: 0 !important; padding: 0 !important;
	font-family: var(--az-head) !important; font-size: 30px !important; font-weight: 300 !important;
	line-height: 1.25 !important; color: var(--az-white) !important;
	letter-spacing: 0 !important; text-transform: none !important;
}
.artz-cv .artz-cv__sub { color: var(--az-muted); margin-top: -8px; }
.artz-cv .artz-cv__intro-main { font-family: var(--az-head) !important; font-size: 22px; font-weight: 400; color: var(--az-white); line-height: 1.3; }
.artz-cv .artz-cv__intro-sub { color: var(--az-muted); font-size: 15px; margin-top: 2px; }

/* ---------- Steps ---------- */
.artz-cv fieldset.artz-cv__step { margin: 0 !important; padding: 0 !important; border: 0 !important; min-width: 0; display: grid; gap: 10px; }
.artz-cv legend.artz-cv__step-title {
	display: flex; align-items: center; gap: 10px;
	float: none; width: 100%; margin: 0 0 10px !important; padding: 0 !important;
	font-family: var(--az-head) !important; font-size: 18px !important; font-weight: 400 !important; color: var(--az-white) !important;
	border: 0 !important;
}
.artz-cv .artz-cv__step-num {
	display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
	width: 28px; height: 28px; border-radius: 50%;
	background: transparent; border: 1px solid var(--az-accent); color: var(--az-accent);
	font-size: 14px; font-weight: 500; line-height: 1;
}

/* ---------- Upload ---------- */
.artz-cv .artz-cv__drop {
	position: relative; width: 100%; min-height: 150px;
	padding: 18px 16px;
	border: 1.5px dashed var(--az-dash); border-radius: 16px;
	background: rgba(10, 25, 29, .5);
	display: flex; align-items: center; justify-content: center; text-align: center;
	transition: border-color .2s;
}
.artz-cv.is-desktop .artz-cv__drop-empty { cursor: pointer; }
.artz-cv.is-desktop .artz-cv__drop:hover { border-color: var(--az-accent); }
.artz-cv .artz-cv__drop-empty { display: flex; flex-direction: column; align-items: center; gap: 10px; width: 100%; }
.artz-cv .artz-cv__drop-icon { color: var(--az-accent); }
.artz-cv .artz-cv__drop-icon .artz-cv__icon { width: 30px; height: 30px; }
.artz-cv .artz-cv__drop-main { color: var(--az-white); font-weight: 500; font-size: 16px; line-height: 1.4; }
.artz-cv .artz-cv__pick { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.artz-cv .artz-cv__drop-full { display: flex; flex-direction: column; align-items: center; gap: 10px; width: 100%; }
.artz-cv .artz-cv__thumb { display: block; width: 100%; height: 180px !important; object-fit: contain; border-radius: 10px; }

/* desktop never offers the camera; phones get both buttons */
.artz-cv.is-desktop .artz-cv__pick-btn--camera,
.artz-cv.is-desktop .artz-cv__only-touch,
.artz-cv.is-touch .artz-cv__only-desktop { display: none !important; }
.artz-cv:not(.is-touch):not(.is-desktop) .artz-cv__only-touch,
.artz-cv:not(.is-touch):not(.is-desktop) .artz-cv__pick-btn--camera { display: none !important; }

.artz-cv ul.artz-cv__tips { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; gap: 4px; }
.artz-cv ul.artz-cv__tips li {
	display: flex; align-items: flex-start; gap: 8px; margin: 0 !important; padding: 0 !important;
	color: var(--az-muted); font-size: 13px; line-height: 1.45;
}
.artz-cv ul.artz-cv__tips li::before { content: none !important; }
.artz-cv ul.artz-cv__tips .artz-cv__icon { width: 16px; height: 16px; color: var(--az-accent); margin-top: 2px; }

/* ---------- Buttons ---------- */
.artz-cv button.artz-cv__btn,
.artz-cv button.artz-cv__pick-btn,
.artz-cv button.artz-cv__replace {
	display: inline-flex !important; align-items: center; justify-content: center; gap: 8px;
	margin: 0 !important; min-height: 44px;
	font-family: var(--az-body) !important; text-transform: none !important; letter-spacing: 0 !important; line-height: 1.2 !important;
	border-radius: 999px !important; box-shadow: none !important; cursor: pointer;
	transition: background-color .15s, border-color .15s, color .15s;
}
/* primary: light fill, dark text */
.artz-cv button.artz-cv__btn {
	width: 100%; height: 52px; padding: 0 28px !important;
	font-size: 17px !important; font-weight: 500 !important;
	color: var(--az-ink) !important; background: var(--az-light) !important; border: 0 !important;
}
.artz-cv button.artz-cv__btn:hover { background: var(--az-white) !important; color: var(--az-ink) !important; }
.artz-cv button.artz-cv__btn:disabled { opacity: .6; cursor: wait; }
/* secondary: outline only */
.artz-cv button.artz-cv__btn--ghost {
	width: auto; height: 48px; padding: 0 24px !important;
	color: var(--az-light) !important; background: transparent !important; border: 1px solid var(--az-line) !important;
}
.artz-cv button.artz-cv__btn--ghost:hover { border-color: var(--az-light) !important; background: transparent !important; color: var(--az-white) !important; }
.artz-cv button.artz-cv__pick-btn {
	padding: 0 20px !important; font-size: 15px !important; font-weight: 400 !important;
	color: var(--az-ink) !important; background: var(--az-light) !important; border: 0 !important;
}
.artz-cv button.artz-cv__pick-btn:hover { background: var(--az-white) !important; }
.artz-cv button.artz-cv__pick-btn--camera {
	color: var(--az-light) !important; background: transparent !important; border: 1px solid var(--az-line) !important;
}
.artz-cv button.artz-cv__replace {
	padding: 0 18px !important; font-size: 14px !important; font-weight: 400 !important;
	color: var(--az-light) !important; background: transparent !important; border: 1px solid var(--az-line) !important;
}
.artz-cv button.artz-cv__replace:hover,
.artz-cv button.artz-cv__pick-btn--camera:hover { border-color: var(--az-light) !important; background: transparent !important; }
.artz-cv button:focus-visible,
.artz-cv a:focus-visible { outline: 2px solid var(--az-accent) !important; outline-offset: 3px; }

/* ---------- Chips (real radios) ---------- */
.artz-cv .artz-cv__row { display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: start; gap: 10px; }
.artz-cv .artz-cv__label { line-height: 44px; color: var(--az-light); font-weight: 500; white-space: nowrap; }
.artz-cv .artz-cv__chips { display: flex; gap: 8px; flex-wrap: wrap; }
.artz-cv .artz-cv__chips label { position: relative; margin: 0 !important; }
.artz-cv .artz-cv__chips input { position: absolute; inset: 0; width: 1px; height: 1px; opacity: 0; pointer-events: none; margin: 0; }
.artz-cv .artz-cv__chips span {
	display: inline-flex; align-items: center; gap: 8px;
	min-height: 44px; padding: 0 18px;
	border: 1px solid var(--az-line); border-radius: 999px;
	background: transparent; color: var(--az-light);
	font-size: 15px; font-weight: 400; cursor: pointer; transition: all .15s;
}
.artz-cv .artz-cv__chips label:hover span { border-color: var(--az-muted); }
/* colors: one row of four when the column has room, otherwise a tidy 2×2 */
.artz-cv fieldset.artz-cv__step { container-type: inline-size; }
.artz-cv .artz-cv__chips--color { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.artz-cv .artz-cv__chips--color label, .artz-cv .artz-cv__chips--color span { width: 100%; }
.artz-cv .artz-cv__chips--color span { justify-content: flex-start; }
@container (min-width: 400px) {
	.artz-cv .artz-cv__chips--color { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
	.artz-cv .artz-cv__chips--color span { justify-content: center; padding: 0 8px; gap: 6px; }
}
.artz-cv .artz-cv__chips--color span::before {
	content: ""; flex: 0 0 auto; width: 16px; height: 16px; border-radius: 50%;
	background: var(--c); border: 1px solid rgba(216, 238, 243, .55);
}
.artz-cv .artz-cv__chips input:checked + span { background: var(--az-light); border-color: var(--az-light); color: var(--az-ink); font-weight: 500; }
.artz-cv .artz-cv__chips--color input:checked + span::before { border-color: rgba(10, 25, 29, .45); }
.artz-cv .artz-cv__chips input:focus-visible + span { outline: 2px solid var(--az-accent); outline-offset: 2px; }
.artz-cv .artz-cv__black-note { color: var(--az-accent); font-size: 14px; margin-top: -2px; padding-right: 62px; }

/* ---------- Fields ---------- */
.artz-cv .artz-cv__fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px 12px; }
.artz-cv .artz-cv__field { display: grid; gap: 4px; }
.artz-cv .artz-cv__field--wide { grid-column: 1 / -1; }
.artz-cv label.artz-cv__field-label { margin: 0 !important; color: var(--az-light); font-size: 14px; font-weight: 500; }
.artz-cv input.artz-cv__input {
	width: 100% !important; height: 46px !important; margin: 0 !important; padding: 0 14px !important;
	font-size: 16px !important; font-weight: 400 !important; /* 16px stops iOS zoom */
	color: var(--az-white) !important; background: var(--az-field) !important;
	border: 1px solid var(--az-line) !important; border-radius: 12px !important; box-shadow: none !important;
	direction: rtl; text-align: right;
}
.artz-cv input.artz-cv__input--ltr { direction: ltr !important; text-align: right !important; }
.artz-cv input.artz-cv__input:focus { border-color: var(--az-accent) !important; outline: none !important; }
.artz-cv .artz-cv__help { color: var(--az-muted); font-size: 13px; }
.artz-cv .artz-cv__hp {
	position: absolute !important; top: 0 !important; right: 0 !important; left: auto !important;
	width: 1px !important; height: 1px !important; padding: 0 !important; margin: 0 !important; border: 0 !important;
	overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); opacity: 0; pointer-events: none;
}

/* ---------- Checkbox, messages ---------- */
.artz-cv label.artz-cv__check { display: flex; gap: 10px; align-items: center; min-height: 40px; font-size: 14px; color: var(--az-light); cursor: pointer; margin: 0 !important; }
.artz-cv .artz-cv__check input { flex: 0 0 auto; width: 20px; height: 20px; margin: 0; accent-color: var(--az-accent); }
.artz-cv .artz-cv__check a { color: var(--az-white) !important; text-decoration: underline !important; }
.artz-cv .artz-cv__msg { color: var(--az-error); font-weight: 500; }
.artz-cv .artz-cv__ai-note { color: var(--az-muted); font-size: 13px; line-height: 1.5; }

/* ---------- Processing ---------- */
.artz-cv .artz-cv__loading { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 10px; min-height: 280px !important; }
.artz-cv .artz-cv__loading p { margin: 0 !important; }
.artz-cv .artz-cv__spinner {
	width: 46px; height: 46px; margin-bottom: 10px;
	border: 3px solid var(--az-line); border-top-color: var(--az-accent);
	border-radius: 50%; animation: artz-spin 1s linear infinite;
}
.artz-cv .artz-cv__loading-title { color: var(--az-white); font-size: 19px; line-height: 1.35; text-wrap: balance; max-width: 30ch; }
.artz-cv .artz-cv__loading-step { color: var(--az-accent); font-size: 15px; min-height: 1.5em; }
.artz-cv .artz-cv__loading-step::after { content: "…"; }
.artz-cv .artz-cv__loading-sub { color: var(--az-muted); font-size: 13px; }
@keyframes artz-spin { to { transform: rotate(360deg); } }

/* the visitor's photo with a light line scanning the ceiling */
.artz-cv .artz-cv__scan { display: none; position: relative; width: 100%; max-width: 420px; aspect-ratio: 4 / 3; margin: 0 0 8px; border-radius: 14px; overflow: hidden; background: var(--az-field); border: 1px solid var(--az-line); }
.artz-cv .artz-cv__loading.has-photo .artz-cv__scan { display: block; }
.artz-cv .artz-cv__loading.has-photo .artz-cv__spinner { display: none; }
.artz-cv img.artz-cv__scan-img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; filter: saturate(.55) brightness(.72); border-radius: 0 !important; }
.artz-cv .artz-cv__scan::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(127,211,223,.16), rgba(10,25,29,0) 55%); }
.artz-cv .artz-cv__scan-line { position: absolute; left: 0; right: 0; top: 0; z-index: 2; height: 2px; background: #D8EEF3; box-shadow: 0 0 14px 3px rgba(127,211,223,.75); opacity: 0; }
.artz-cv .artz-cv__loading.is-running .artz-cv__scan-line { animation: artz-scan 2.8s ease-in-out infinite; }
@keyframes artz-scan { 0% { top: 4%; opacity: 0; } 12% { opacity: 1; } 50% { top: 58%; opacity: 1; } 62% { opacity: 0; } 100% { top: 4%; opacity: 0; } }

/* slow bar that fills over ~40 seconds and waits near the end */
.artz-cv .artz-cv__progress { width: 100%; max-width: 260px; height: 3px; border-radius: 999px; background: var(--az-line); overflow: hidden; }
.artz-cv .artz-cv__progress span { display: block; height: 100%; width: 0; background: var(--az-accent); border-radius: inherit; }
.artz-cv .artz-cv__loading.is-running .artz-cv__progress span { animation: artz-progress 40s cubic-bezier(.15,.6,.3,1) forwards; }
@keyframes artz-progress { from { width: 3%; } to { width: 92%; } }
@media (prefers-reduced-motion: reduce) {
	.artz-cv .artz-cv__loading.is-running .artz-cv__scan-line { animation: none; opacity: .8; top: 30%; }
}

/* ---------- Result ---------- */
.artz-cv .artz-cv__result { display: grid; gap: 18px; }
.artz-cv .artz-cv__result-sub { color: var(--az-muted); margin-top: 4px; }
.artz-cv .artz-cv__compare { position: relative; direction: ltr; border-radius: 14px; overflow: hidden; --pos: 50%; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; touch-action: pan-y; cursor: ew-resize; background: var(--az-field); line-height: 0; }
.artz-cv .artz-cv__compare img { pointer-events: none; -webkit-user-drag: none; }
.artz-cv .artz-cv__after { display: block; width: 100%; height: auto; max-height: 80vh; object-fit: contain; }
.artz-cv .artz-cv__before-wrap { position: absolute; inset: 0; clip-path: inset(0 50% 0 0); }
.artz-cv .artz-cv__before { width: 100% !important; height: 100% !important; max-width: none; object-fit: contain; display: block; }
.artz-cv .artz-cv__compare::after { content: ""; position: absolute; top: 0; bottom: 0; left: var(--pos); width: 3px; margin-left: -1.5px; background: #fff; box-shadow: 0 0 6px rgba(0,0,0,.45); pointer-events: none; }
/* the range input stays for keyboard users only; touch and mouse go through the script */
.artz-cv .artz-cv__slider { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; margin: 0; pointer-events: none; }
.artz-cv .artz-cv__tag { position: absolute; top: 12px; padding: 4px 12px; border-radius: 999px; background: rgba(10,25,29,.72); color: #fff; font-size: 13px; line-height: 1.4; pointer-events: none; }
.artz-cv .artz-cv__tag--before { left: 12px; }
.artz-cv .artz-cv__tag--after { right: 12px; }
.artz-cv button.artz-cv__zoom {
	position: absolute !important; left: 12px; bottom: 12px; z-index: 2;
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 44px !important; height: 44px !important; padding: 0 !important; margin: 0 !important;
	border-radius: 50% !important; border: 1px solid rgba(216,238,243,.6) !important;
	background: rgba(10,25,29,.72) !important; color: #fff !important; box-shadow: none !important; cursor: zoom-in;
}
.artz-cv button.artz-cv__zoom:hover { background: var(--az-card) !important; }
.artz-cv .artz-cv__result-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.artz-cv .artz-cv__sent { color: var(--az-white); flex: 1 1 260px; }

/* ---------- Popups (moved to <body> by the script) ---------- */
.artz-cv-modal[hidden], .artz-cv-limit[hidden], .artz-cv-lightbox[hidden] { display: none !important; }
.artz-cv-modal, .artz-cv-limit {
	position: fixed; inset: 0; z-index: 999999;
	display: flex; align-items: center; justify-content: center;
	padding: 16px; background: rgba(4, 12, 14, .74);
}
.artz-cv-modal__box, .artz-cv-limit__box {
	position: relative; width: 100%; max-width: 420px;
	padding: 28px 24px;
	background: #0E2A31; border: 1px solid rgba(216, 238, 243, .16); border-radius: 20px;
	color: #D8EEF3; font-family: 'Rubik', 'Heebo', sans-serif; text-align: right;
	box-shadow: 0 20px 60px rgba(0,0,0,.5);
}
.artz-cv-limit__box { padding-top: 40px; }
.artz-cv-modal__title { margin: 0 0 10px !important; color: #fff; font-family: 'Heebo', 'Rubik', sans-serif; font-size: 21px; font-weight: 400; }
.artz-cv-modal__text { margin: 0 0 20px !important; font-size: 15px; line-height: 1.6; }
.artz-cv-limit__text { margin: 0 !important; font-size: 17px; line-height: 1.6; color: #fff; }
.artz-cv-modal__actions { display: flex; flex-direction: column; gap: 10px; }
.artz-cv-modal button.artz-cv-modal__ok,
.artz-cv-modal button.artz-cv-modal__cancel {
	width: 100%; min-height: 48px; margin: 0 !important; padding: 0 20px !important;
	font-family: 'Rubik', 'Heebo', sans-serif !important; font-size: 16px !important; font-weight: 500 !important;
	text-transform: none !important; letter-spacing: 0 !important; line-height: 1.2 !important;
	border-radius: 999px !important; box-shadow: none !important; cursor: pointer;
}
.artz-cv-modal button.artz-cv-modal__ok { background: #D8EEF3 !important; color: #0A191D !important; border: 0 !important; }
.artz-cv-modal button.artz-cv-modal__ok:hover { background: #fff !important; }
.artz-cv-modal button.artz-cv-modal__cancel { background: transparent !important; color: #D8EEF3 !important; border: 1px solid #2C6B79 !important; font-weight: 400 !important; }
.artz-cv-limit button.artz-cv-limit__close,
.artz-cv-lightbox button.artz-cv-lightbox__close {
	position: absolute !important; top: 8px; left: 8px; right: auto;
	width: 44px !important; height: 44px !important; padding: 0 !important; margin: 0 !important;
	display: inline-flex !important; align-items: center; justify-content: center;
	font: 400 28px/1 Arial, sans-serif !important; color: #D8EEF3 !important;
	background: transparent !important; border: 0 !important; border-radius: 50% !important; box-shadow: none !important; cursor: pointer;
}
.artz-cv-limit button.artz-cv-limit__close:hover,
.artz-cv-lightbox button.artz-cv-lightbox__close:hover { background: rgba(216,238,243,.12) !important; color: #fff !important; }

.artz-cv-lightbox {
	position: fixed; inset: 0; z-index: 999999;
	display: flex; align-items: center; justify-content: center;
	padding: 60px 12px 12px; background: rgba(4, 12, 14, .94);
}
.artz-cv-lightbox button.artz-cv-lightbox__close { top: 10px; left: 10px; font-size: 34px !important; }
.artz-cv-lightbox__compare { position: relative; direction: ltr; --pos: 50%; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; touch-action: none; cursor: ew-resize; line-height: 0; }
.artz-cv-lightbox__compare img { pointer-events: none; -webkit-user-drag: none; }
.artz-cv-lightbox__after { display: block; max-width: calc(100vw - 24px); max-height: calc(100vh - 80px); width: auto; height: auto; border-radius: 8px; }
.artz-cv-lightbox__before-wrap { position: absolute; inset: 0; clip-path: inset(0 50% 0 0); }
.artz-cv-lightbox__before { display: block; width: 100% !important; height: 100% !important; max-width: none !important; border-radius: 8px; }
.artz-cv-lightbox__compare::after { content: ""; position: absolute; top: 0; bottom: 0; left: var(--pos); width: 3px; margin-left: -1.5px; background: #fff; box-shadow: 0 0 6px rgba(0,0,0,.45); pointer-events: none; }
.artz-cv-lightbox__slider { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; margin: 0; pointer-events: none; }
/* round grip on the line (main view + lightbox) */
.artz-cv-handle {
	position: absolute; top: 50%; left: var(--pos); z-index: 1;
	box-sizing: border-box; width: 44px; height: 44px; margin: -22px 0 0 -22px;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50%; border: 2px solid #fff; background: rgba(10,25,29,.72); color: #fff;
	box-shadow: 0 2px 10px rgba(0,0,0,.45); pointer-events: none; line-height: 0;
	transform: scale(calc(var(--hs, 1) / var(--z, 1)));
	transition: transform .12s;
}
.artz-cv-handle svg { display: block; }
.is-dragging .artz-cv-handle { --hs: 1.1; }
.artz-cv__compare:has(.artz-cv__slider:focus-visible) .artz-cv-handle,
.artz-cv-lightbox__compare:has(.artz-cv-lightbox__slider:focus-visible) .artz-cv-handle { outline: 2px solid #7FD3DF; outline-offset: 3px; }
.artz-cv-lightbox__tag { position: absolute; top: 12px; padding: 4px 12px; border-radius: 999px; background: rgba(10,25,29,.7); color: #fff; font: 13px/1.4 'Rubik', sans-serif; pointer-events: none; }
.artz-cv-lightbox__tag--before { left: 12px; }
.artz-cv-lightbox__tag--after { right: 12px; }
/* pinch zoom (lightbox only) */
.artz-cv-lightbox { overflow: hidden; touch-action: none; overscroll-behavior: contain; }
.artz-cv-lightbox__compare { transform-origin: 0 0; will-change: transform; }
.artz-cv-lightbox.is-zoomed .artz-cv-lightbox__compare { cursor: grab; }
.artz-cv-lightbox.is-zoomed .artz-cv-lightbox__tag { opacity: 0; }
.artz-cv-lightbox__compare::after { width: calc(3px / var(--z, 1)); margin-left: calc(-1.5px / var(--z, 1)); }
.artz-cv-lightbox.is-zoomed .artz-cv-lightbox__compare .artz-cv-handle { transition: none; }
.artz-cv-lightbox button.artz-cv-lightbox__close { z-index: 3; background: rgba(10,25,29,.72) !important; }
.artz-cv-lightbox__hint {
	position: absolute; left: 50%; bottom: 18px; z-index: 3; transform: translateX(-50%);
	margin: 0 !important; padding: 8px 16px; border-radius: 999px;
	background: rgba(10,25,29,.82); border: 1px solid rgba(216,238,243,.2);
	color: #D8EEF3; font: 14px/1.4 'Rubik', sans-serif; white-space: nowrap; direction: rtl;
	pointer-events: none; opacity: 0;
}
.artz-cv-lightbox.show-hint .artz-cv-lightbox__hint { animation: artz-hint 3.2s ease forwards; }
@keyframes artz-hint { 0% { opacity: 0; } 12% { opacity: 1; } 75% { opacity: 1; } 100% { opacity: 0; } }

/* ---------- Small screens ---------- */
@media (max-width: 520px) {
	.artz-cv .artz-cv__form,
	.artz-cv .artz-cv__loading,
	.artz-cv .artz-cv__result { padding: 18px 14px; border-radius: 18px; }
	.artz-cv .artz-cv__form { gap: 16px; }
	.artz-cv .artz-cv__loading { min-height: 240px !important; padding: 16px 14px 20px; gap: 8px; }
	.artz-cv .artz-cv__scan { aspect-ratio: auto; height: 200px; margin-bottom: 6px; border-radius: 12px; }
	.artz-cv .artz-cv__loading-title { font-size: 17px; }
	.artz-cv .artz-cv__loading-step { font-size: 14px; }
	.artz-cv .artz-cv__row { grid-template-columns: 50px minmax(0, 1fr); gap: 8px; }
	.artz-cv .artz-cv__black-note { padding-right: 58px; }
	.artz-cv .artz-cv__chips { gap: 6px; }
	.artz-cv .artz-cv__chips span { padding: 0 14px; gap: 6px; font-size: 14px; }
	.artz-cv .artz-cv__drop { min-height: 136px; }
	.artz-cv .artz-cv__title, .artz-cv .artz-cv__result-title { font-size: 25px !important; }
	.artz-cv .artz-cv__fields { grid-template-columns: minmax(0, 1fr); }
	.artz-cv .artz-cv__result-foot { flex-direction: column; align-items: stretch; }
	.artz-cv .artz-cv__sent { flex: 0 0 auto; }
	.artz-cv button.artz-cv__btn--ghost { width: 100%; }
}

/* link under the permanent-limit message (1.7) */
.artz-cv-limit a.artz-cv-limit__link { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; margin-top: 18px; padding: 0 24px; border-radius: 999px; background: #D8EEF3; color: #0A191D !important; font: 500 15px/1.2 'Rubik', 'Heebo', sans-serif; text-decoration: none !important; }
.artz-cv-limit a.artz-cv-limit__link[hidden] { display: none; }
.artz-cv-limit a.artz-cv-limit__link:hover { background: #fff; }
