/* ET Vendor Services — рамка та бейдж виділених товарів */
:root {
	--etvs-color: #ff6b00;
	--etvs-badge-text: #ffffff;
}

/*
 * Рамка — через outline (не впливає на розкладку).
 * Wolmart ставить класи post_class() на div.product; стандартний Woo — на li.product.
 */
.product.etvs-promoted,
li.product.etvs-promoted {
	outline: 2px solid var(--etvs-color);
	outline-offset: -2px;
	border-color: transparent !important;
	border-radius: 4px;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--etvs-color) 14%, transparent);
}

/* Бейдж «ТОП» — не на фото (там і так знижка/новинка), а маленький ярлик перед назвою/категорією */
.etvs-badge {
	display: inline-block;
	vertical-align: middle;
	padding: 1px 6px;
	margin: 0 6px 0 0;
	font-size: 10px;
	font-weight: 700;
	line-height: 16px;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--etvs-badge-text);
	background: var(--etvs-color);
	border-radius: 3px;
	pointer-events: none;
	position: static;
}
/* поки скрипт не переніс бейдж у .product-details — не показуємо його там, де він опинився за замовчуванням */
.product-media .etvs-badge { display: none; }

/* Бейдж «Гарячий» (featured) прибрано скрізь: каталог, слайдери, галерея сторінки товару */
.product-label.label-featured,
.product-label-group .label-featured { display: none !important; }

/* Кабінет продавця Dokan */
.etvs-dashboard .etvs-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	padding: 18px 20px;
	margin-bottom: 20px;
}
.etvs-dashboard h2 { margin-top: 0; }
.etvs-dashboard .etvs-service-desc { color: #555; margin: 4px 0 12px; }
/* Рядок полів форми: однакові підписи, однакова висота полів, кнопка на рівні полів */
.etvs-dashboard .etvs-row {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 18px;
	align-items: flex-start;
}
.etvs-dashboard .etvs-field { display: flex; flex-direction: column; flex: 1 1 220px; min-width: 0; }
.etvs-dashboard .etvs-row > .etvs-field--full { flex: 0 0 100%; }
.etvs-dashboard .etvs-actions { flex: 0 0 auto; }
.etvs-dashboard .etvs-field > label,
.etvs-dashboard .etvs-row label:not(.etvs-cat) {
	display: block;
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 600;
	line-height: 20px;
	min-height: 20px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.etvs-dashboard .etvs-field--full > label { white-space: normal; }
.etvs-dashboard .etvs-field select,
.etvs-dashboard .etvs-field input[type=text],
.etvs-dashboard .etvs-field input[type=url],
.etvs-dashboard .etvs-field input[type=file] {
	width: 100%;
	max-width: 100%;
	height: 42px;
	box-sizing: border-box;
	margin: 0;
	border: 1px solid #d7dce3;
	border-radius: 6px;
	background: #fff;
	font-size: 13px;
}
.etvs-dashboard .etvs-field input[type=url],
.etvs-dashboard .etvs-field input[type=text] { padding: 0 12px; }
.etvs-dashboard .etvs-field select { padding: 0 32px 0 12px; }
/* Поле вибору файлу — виглядає як інші поля */
.etvs-dashboard .etvs-field input[type=file] {
	padding: 5px 8px 5px 5px;
	line-height: 30px;
	color: #6b7280;
	cursor: pointer;
}
.etvs-dashboard .etvs-field input[type=file]::file-selector-button {
	height: 30px;
	margin-right: 10px;
	padding: 0 14px;
	border: 0;
	border-radius: 4px;
	background: #eef2f7;
	color: #083d77;
	font-weight: 600;
	font-size: 12px;
	cursor: pointer;
}
.etvs-dashboard .etvs-field input[type=file]:hover::file-selector-button { background: #e1e8f2; }
.etvs-dashboard .etvs-field select:focus,
.etvs-dashboard .etvs-field input:focus { border-color: #083d77; outline: 2px solid rgba(8,61,119,.12); outline-offset: 0; }
.etvs-dashboard .etvs-hint { display: block; margin-top: 6px; color: #6b7280; font-size: 12px; line-height: 1.4; }
/* Кнопка: відступ зверху = висота підпису + відступ, щоб стояла на одному рівні з полями */
.etvs-dashboard .etvs-actions { padding-top: 26px; }
.etvs-dashboard .etvs-actions .dokan-btn { height: 42px; margin: 0; padding: 0 22px; white-space: nowrap; display: inline-flex; align-items: center; }
@media (max-width: 767px) {
	.etvs-dashboard .etvs-field, .etvs-dashboard .etvs-actions { flex-basis: 100%; }
	.etvs-dashboard .etvs-actions { padding-top: 0; }
	.etvs-dashboard .etvs-actions .dokan-btn { width: 100%; justify-content: center; }
}
.etvs-dashboard .etvs-status-active { color: #0a7f2e; font-weight: 600; }
.etvs-dashboard .etvs-status-off { color: #999; }
.etvs-dashboard table.etvs-table { width: 100%; border-collapse: collapse; }
.etvs-dashboard table.etvs-table th, .etvs-dashboard table.etvs-table td { padding: 8px 10px; border-bottom: 1px solid #eee; text-align: left; vertical-align: middle; }
.etvs-dashboard .etvs-notice { padding: 10px 14px; border-radius: 6px; margin-bottom: 16px; }
.etvs-dashboard .etvs-notice-ok { background: #e8f7ec; color: #0a5c23; }
.etvs-dashboard .etvs-notice-err { background: #fdecec; color: #8a1f1f; }
.etvs-dashboard .etvs-preview { display: inline-block; border: 2px solid var(--etvs-color); border-radius: 6px; padding: 10px 14px; position: relative; margin-top: 8px; }
.etvs-dashboard .etvs-preview .etvs-badge { position: static; margin-right: 8px; }

/* Вимоги до банера в кабінеті */
.etvs-dashboard .etvs-spec { margin: 4px 0 14px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.etvs-dashboard .etvs-spec summary { cursor: pointer; padding: 10px 14px; font-weight: 600; color: #083d77; }
.etvs-dashboard .etvs-spec__body { display: flex; gap: 18px; align-items: flex-start; padding: 0 14px 6px; flex-wrap: wrap; }
.etvs-dashboard .etvs-spec__frame { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; border: 2px dashed #9aa3b2; border-radius: 6px; background: repeating-linear-gradient(45deg,#eef2f7,#eef2f7 6px,#f8fafc 6px,#f8fafc 12px); color: #4b5563; font-size: 11px; font-weight: 600; }
.etvs-dashboard .etvs-spec__list { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 4px 12px; font-size: 13px; flex: 1 1 320px; }
.etvs-dashboard .etvs-spec__list dt { color: #6b7280; font-weight: 500; }
.etvs-dashboard .etvs-spec__list dd { margin: 0; color: #111827; }
.etvs-dashboard .etvs-spec__tips { margin: 6px 14px 12px 32px; padding: 0; font-size: 13px; color: #374151; }
.etvs-dashboard .etvs-spec__tips li { margin: 2px 0; }
.etvs-dashboard .etvs-file-check { margin-top: 6px; font-size: 12px; }
.etvs-dashboard .etvs-file-check__preview { max-width: 260px; max-height: 160px; overflow: hidden; border-radius: 6px; border: 1px solid #e5e7eb; margin-bottom: 4px; }
.etvs-dashboard .etvs-file-check__preview img { width: 100%; height: 100%; object-fit: cover; display: block; }
.etvs-dashboard .etvs-ok { color: #0a7f2e; }
.etvs-dashboard .etvs-warn { color: #9a5b00; }
.etvs-dashboard .etvs-bad { color: #b42318; }

/* Конструктор банера з шаблонів */
.etvs-dashboard .etvs-card.is-template .etvs-own-only { display: none !important; }
.etvs-dashboard .etvs-card:not(.is-template) .etvs-tpl-only { display: none; }
.etvs-dashboard .etvs-builder { margin: 0 0 18px; }
.etvs-dashboard .etvs-bmode { display: flex; flex-wrap: wrap; gap: 12px; margin: 0 0 16px; }
.etvs-dashboard .etvs-bmode__opt { flex: 1 1 260px; display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 1px solid #d7dce3; border-radius: 8px; background: #fff; cursor: pointer; font-weight: 400; }
.etvs-dashboard .etvs-bmode__opt input { margin-top: 3px; }
.etvs-dashboard .etvs-bmode__opt:has(input:checked) { border-color: #083d77; background: #f3f7fc; box-shadow: 0 0 0 1px #083d77; }
.etvs-dashboard .etvs-bmode__opt strong { display: block; font-size: 14px; color: #0B2545; }
.etvs-dashboard .etvs-bmode__opt small { display: block; margin-top: 2px; font-size: 12px; line-height: 1.4; color: #6b7280; }
.etvs-dashboard .etvs-tplpick { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; margin: 0 0 16px; }
.etvs-dashboard .etvs-tplpick__opt { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 10px; border: 1px solid #d7dce3; border-radius: 10px; background: #fff; cursor: pointer; font-weight: 400; }
.etvs-dashboard .etvs-tplpick__opt input { position: absolute; opacity: 0; pointer-events: none; }
.etvs-dashboard .etvs-tplpick__opt:has(input:checked) { border-color: #083d77; box-shadow: 0 0 0 2px #083d77; }
.etvs-dashboard .etvs-tplpick__opt:has(input:focus-visible) { outline: 2px solid #083d77; outline-offset: 2px; }
.etvs-dashboard .etvs-tplpick__name { font-size: 13px; font-weight: 700; color: #0B2545; }
.etvs-dashboard .etvs-tplpick__hint { font-size: 12px; line-height: 1.35; color: #6b7280; }
.etvs-dashboard .etvs-scale { display: block; position: relative; width: 100%; overflow: hidden; border-radius: 6px; pointer-events: none; }
.etvs-dashboard .etvs-scale__in { display: block; width: 1400px; transform-origin: 0 0; }
.etvs-dashboard .etvs-tplprev .etvs-tpl { pointer-events: none; }
.etvs-dashboard .etvs-tplset { min-width: 0; margin: 0; padding: 0; border: 0; }
.etvs-dashboard .etvs-tplprev { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 16px; margin: 0 0 16px; padding: 14px; border-radius: 10px; background: #eef1f5; }
.etvs-dashboard .etvs-tplprev__desk { flex: 1 1 520px; min-width: 0; }
.etvs-dashboard .etvs-tplprev__phone { flex: 0 0 300px; width: 300px; max-width: 100%; }
.etvs-dashboard .etvs-tplprev__cap { display: block; margin: 0 0 6px; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #6b7280; }
.etvs-dashboard .etvs-tplfields { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px 16px; }
.etvs-dashboard .etvs-swatches { display: flex; align-items: center; gap: 10px; height: 42px; }
.etvs-dashboard .etvs-swatch { position: relative; display: inline-block; cursor: pointer; }
.etvs-dashboard .etvs-swatch input { position: absolute; opacity: 0; }
.etvs-dashboard .etvs-swatch input + span { display: block; width: 30px; height: 30px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(0,0,0,.15); }
.etvs-dashboard .etvs-swatch input:checked + span { box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0B2545; }
.etvs-dashboard .etvs-swatch input:focus-visible + span { outline: 2px solid #083d77; outline-offset: 4px; }
.etvs-dashboard .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }

/* Календар бронювання */
.etvs-dashboard .etvs-book { gap: 10px; }
.etvs-dashboard .etvs-book__top { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 14px 24px; }
.etvs-dashboard .etvs-book__term { display: flex; flex-direction: column; flex: 0 1 300px; min-width: 220px; }
.etvs-dashboard .etvs-book__term label { margin: 0 0 6px; font-size: 13px; font-weight: 600; line-height: 20px; }
.etvs-dashboard .etvs-book__term select { width: 100%; height: 42px; box-sizing: border-box; border: 1px solid #d7dce3; border-radius: 6px; padding: 0 32px 0 12px; font-size: 13px; background: #fff; }
.etvs-dashboard .etvs-book__sum { display: flex; flex-direction: column; gap: 2px; padding-bottom: 2px; }
.etvs-dashboard .etvs-book__label { font-size: 12px; color: #6b7280; }
.etvs-dashboard .etvs-book__sum strong { font-size: 16px; color: #0B2545; }
.etvs-dashboard .etvs-book__sum small { font-size: 12px; color: #6b7280; }
.etvs-dashboard .etvs-book__cal { position: relative; padding: 12px; border: 1px solid #e5e7eb; border-radius: 10px; background: #fff; }
.etvs-dashboard .etvs-cal__nav { position: absolute; top: 8px; right: 10px; display: flex; gap: 6px; }
.etvs-dashboard .etvs-cal__btn { width: 32px; height: 32px; border: 1px solid #d7dce3; border-radius: 6px; background: #fff; color: #0B2545; font-size: 18px; line-height: 1; cursor: pointer; }
.etvs-dashboard .etvs-cal__btn:disabled { opacity: .35; cursor: default; }
.etvs-dashboard .etvs-cal__months { display: flex; flex-wrap: wrap; gap: 24px; }
.etvs-dashboard .etvs-cal__month { flex: 0 1 300px; min-width: 260px; }
.etvs-dashboard .etvs-cal__title { margin: 4px 0 8px; font-size: 14px; font-weight: 700; color: #0B2545; }
.etvs-dashboard .etvs-cal__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; }
.etvs-dashboard .etvs-cal__dow { font-size: 11px; font-weight: 600; text-align: center; color: #9aa3b2; padding-bottom: 2px; }
.etvs-dashboard .etvs-cal__d { display: flex; align-items: center; justify-content: center; height: 34px; padding: 0; border: 1px solid transparent; border-radius: 6px; background: #f3f5f8; color: #111827; font-size: 13px; font-weight: 600; }
.etvs-dashboard button.etvs-cal__d { cursor: pointer; }
.etvs-dashboard button.etvs-cal__d:hover { border-color: #083d77; }
.etvs-dashboard button.etvs-cal__d:focus-visible { outline: 2px solid #083d77; outline-offset: 1px; }
.etvs-dashboard .etvs-cal__d.lv-ok { background: #e7f6ec; color: #0a5c23; }
.etvs-dashboard .etvs-cal__d.lv-1 { background: #fff3dc; color: #8a4b00; }
.etvs-dashboard .etvs-cal__d.lv-full { background: #fde8e8; color: #9b1c1c; text-decoration: line-through; }
.etvs-dashboard .etvs-cal__d.is-past { background: transparent; color: #c4cad3; }
.etvs-dashboard .etvs-cal__d.is-sel { background: #083d77; color: #fff; border-color: #083d77; text-decoration: none; }
.etvs-dashboard span.etvs-cal__d.lv-ok:not(.is-sel), .etvs-dashboard span.etvs-cal__d.lv-1:not(.is-sel) { opacity: .5; }
.etvs-dashboard button.etvs-cal__d:not(.is-sel) { text-decoration: underline; text-underline-offset: 3px; box-shadow: inset 0 0 0 1.5px currentColor; }
.etvs-dashboard .etvs-cal__d.is-sel.is-start { box-shadow: 0 0 0 2px #fff inset; }
.etvs-dashboard .etvs-cal__d.is-start, .etvs-dashboard .etvs-cal__d.is-end { background: #ff8a00; border-color: #ff8a00; color: #0B2545; }
.etvs-dashboard .etvs-book__legend { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 12px; color: #4b5563; }
.etvs-dashboard .etvs-book__legend i { display: inline-block; width: 12px; height: 12px; margin-right: 6px; border-radius: 3px; vertical-align: -1px; }
.etvs-dashboard .etvs-book__legend .lv-ok { background: #e7f6ec; box-shadow: inset 0 0 0 1px #9fd8b0; }
.etvs-dashboard .etvs-book__legend .lv-1 { background: #fff3dc; box-shadow: inset 0 0 0 1px #f3c77a; }
.etvs-dashboard .etvs-book__legend .lv-full { background: #fde8e8; box-shadow: inset 0 0 0 1px #f1a9a9; }
.etvs-dashboard .etvs-book__legend .lv-sel { background: #083d77; }

/* Особовий рахунок */
.etvs-dashboard .etvs-wallet__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; }
.etvs-dashboard .etvs-wallet__label { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #6b7280; }
.etvs-dashboard .etvs-wallet__sum { margin: 2px 0 4px; font-size: 30px; font-weight: 800; line-height: 1.1; color: #0B2545; }
.etvs-dashboard .etvs-wallet__open { height: 42px; padding: 0 24px; }
.etvs-dashboard .etvs-topup { margin-top: 16px; padding-top: 16px; border-top: 1px solid #e5e7eb; }
.etvs-dashboard .etvs-topup fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.etvs-dashboard .etvs-topup legend { margin: 0 0 8px; padding: 0; font-size: 13px; font-weight: 600; }
.etvs-dashboard .etvs-topup__row { display: flex; flex-wrap: wrap; gap: 18px 32px; }
.etvs-dashboard .etvs-topup__amounts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; flex: 1 1 380px; }
.etvs-dashboard .etvs-topup__amounts legend { flex-basis: 100%; }
.etvs-dashboard .etvs-topup__custom { display: inline-flex; align-items: center; gap: 6px; font-weight: 400; }
.etvs-dashboard .etvs-topup__custom input { width: 120px; height: 40px; padding: 0 10px; border: 1px solid #d7dce3; border-radius: 6px; }
.etvs-dashboard .etvs-topup__method { display: flex; flex-direction: column; gap: 8px; flex: 1 1 300px; }
.etvs-dashboard .etvs-topup__payer { display: flex; flex-wrap: wrap; gap: 14px 18px; margin-top: 14px; }
.etvs-dashboard .etvs-topup__payer .etvs-field input { height: 42px; padding: 0 12px; border: 1px solid #d7dce3; border-radius: 6px; }
.etvs-dashboard .etvs-topup__actions { display: flex; align-items: center; gap: 14px; margin-top: 16px; }
.etvs-dashboard .etvs-chip { position: relative; display: inline-flex; cursor: pointer; font-weight: 400; }
.etvs-dashboard .etvs-chip input { position: absolute; opacity: 0; }
.etvs-dashboard .etvs-chip span { display: inline-flex; align-items: center; height: 40px; padding: 0 14px; border: 1px solid #d7dce3; border-radius: 999px; background: #fff; font-size: 13px; font-weight: 600; color: #0B2545; }
.etvs-dashboard .etvs-chip input:checked + span { border-color: #083d77; background: #083d77; color: #fff; }
.etvs-dashboard .etvs-chip input:focus-visible + span { outline: 2px solid #083d77; outline-offset: 2px; }
.etvs-dashboard .etvs-chip input:disabled + span { opacity: .45; cursor: not-allowed; }
.etvs-dashboard .etvs-opt { display: flex; align-items: flex-start; gap: 8px; padding: 10px 12px; border: 1px solid #d7dce3; border-radius: 8px; cursor: pointer; font-weight: 400; }
.etvs-dashboard .etvs-opt:has(input:checked) { border-color: #083d77; background: #f3f7fc; }
.etvs-dashboard .etvs-opt input { margin-top: 3px; }
.etvs-dashboard .etvs-opt strong { display: block; font-size: 14px; color: #0B2545; }
.etvs-dashboard .etvs-opt small { display: block; font-size: 12px; color: #6b7280; }
.etvs-dashboard .etvs-wallet__pending { display: flex; flex-direction: column; gap: 6px; margin-top: 14px; }
.etvs-dashboard .etvs-wallet__pitem { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; padding: 8px 12px; border-radius: 6px; background: #fff8e6; font-size: 13px; }
.etvs-dashboard .etvs-wallet__cancel { color: #9b1c1c; }
.etvs-dashboard .etvs-wallet__hist { margin-top: 14px; }
.etvs-dashboard .etvs-wallet__hist summary { cursor: pointer; font-weight: 600; color: #083d77; }
.etvs-dashboard .etvs-paywith__opts { display: flex; flex-wrap: wrap; gap: 8px; }

/* ---------- Термін по днях (2.3) ---------- */
.etvs-dashboard .etvs-days__top { display: flex; flex-wrap: wrap; gap: 16px 28px; align-items: flex-start; margin-bottom: 12px; }
.etvs-dashboard .etvs-days__count { display: flex; flex-direction: column; gap: 8px; min-width: 260px; }
.etvs-dashboard .etvs-days__count > label { margin: 0; font-weight: 600; }
.etvs-dashboard .etvs-days__input { display: inline-flex; align-items: stretch; width: max-content; border: 1px solid #d7dce3; border-radius: 8px; overflow: hidden; background: #fff; }
.etvs-dashboard .etvs-days__input input { width: 84px; height: 40px; margin: 0; border: 0; border-radius: 0; text-align: center; font-size: 16px; font-weight: 700; box-shadow: none; -moz-appearance: textfield; }
.etvs-dashboard .etvs-days__input input::-webkit-inner-spin-button, .etvs-dashboard .etvs-days__input input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.etvs-dashboard .etvs-days__step { width: 40px; height: 40px; padding: 0; border: 0; background: #f3f5f8; color: #0B2545; font-size: 18px; font-weight: 700; line-height: 1; cursor: pointer; }
.etvs-dashboard .etvs-days__step:hover { background: #e6ebf2; }
.etvs-dashboard .etvs-days__presets { display: flex; flex-wrap: wrap; gap: 6px; }
.etvs-dashboard button.etvs-days__preset { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border: 1px solid #d7dce3; border-radius: 999px; background: #fff; color: #0B2545; font-size: 13px; font-weight: 600; line-height: 1; cursor: pointer; }
.etvs-dashboard button.etvs-days__preset b { color: #0a7a33; font-weight: 800; }
.etvs-dashboard button.etvs-days__preset:hover { border-color: #083d77; }
.etvs-dashboard button.etvs-days__preset.is-on { border-color: #083d77; background: #083d77; color: #fff; }
.etvs-dashboard button.etvs-days__preset.is-on b { color: #9ff0b8; }
.etvs-dashboard .etvs-days__sum { display: flex; flex-direction: column; gap: 3px; flex: 1 1 280px; padding: 10px 14px; border-radius: 8px; background: #f6f8fb; }
.etvs-dashboard .etvs-days__sum strong[data-days-range] { font-size: 15px; color: #0B2545; }
.etvs-dashboard .etvs-days__sum small { font-size: 12px; color: #6b7280; }
.etvs-dashboard .etvs-days__price { margin-top: 4px; font-size: 13px; color: #374151; line-height: 1.5; }
.etvs-dashboard .etvs-days__price strong { font-size: 15px; color: #0B2545; }
.etvs-dashboard .etvs-days__price s { color: #9aa3b2; }
.etvs-dashboard .etvs-days__off { color: #0a7a33; }
.etvs-dashboard .etvs-days .etvs-cal__d.is-sel { background: #083d77; color: #fff; border-color: #083d77; text-decoration: none; opacity: 1; }
.etvs-dashboard .etvs-days .etvs-cal__d.is-hov { background: #cfe0f5; border-color: #083d77; color: #083d77; opacity: 1; }
.etvs-dashboard .etvs-days .etvs-cal__d.is-unhov { background: #8aa6c8; border-color: #8aa6c8; }
.etvs-dashboard .etvs-days button.etvs-cal__d { text-decoration: none; box-shadow: none; }
.etvs-dashboard .etvs-days span.etvs-cal__d.lv-ok, .etvs-dashboard .etvs-days span.etvs-cal__d.lv-1 { opacity: 1; }

/* ---------- Чітке розділення блоків «Послуги сайту» (2.3.1) ---------- */
.etvs-dashboard .etvs-card {
	--etvs-accent: #083d77;
	position: relative;
	margin-bottom: 28px;
	padding: 0 22px 22px;
	border: 1px solid #d5dce6;
	border-radius: 12px;
	box-shadow: 0 1px 2px rgba(11,37,69,.06), 0 6px 18px rgba(11,37,69,.06);
	overflow: hidden;
}
.etvs-dashboard .etvs-card--intro,
.etvs-dashboard .etvs-wallet,
.etvs-dashboard .etvs-notice { padding-top: 18px; }
.etvs-dashboard .etvs-svc--top { --etvs-accent: #ff6b00; }
.etvs-dashboard .etvs-svc--highlight { --etvs-accent: #e0a100; }
.etvs-dashboard .etvs-svc--ad { --etvs-accent: #083d77; }
.etvs-dashboard .etvs-svc--custom { --etvs-accent: #4b5563; }
.etvs-dashboard .etvs-card--orders { --etvs-accent: #0a7a33; }
.etvs-dashboard .etvs-card__head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin: 0 -22px 20px;
	padding: 16px 22px;
	border-bottom: 1px solid #d5dce6;
	border-left: 6px solid var(--etvs-accent);
	background: linear-gradient(90deg, color-mix(in srgb, var(--etvs-accent) 10%, #fff), #f7f9fc 70%);
}
.etvs-dashboard .etvs-card__num {
	flex: 0 0 36px;
	display: inline-flex; align-items: center; justify-content: center;
	width: 36px; height: 36px; margin-top: 2px;
	border-radius: 50%;
	background: var(--etvs-accent);
	color: #fff;
	font-size: 17px; font-weight: 800; line-height: 1;
}
.etvs-dashboard .etvs-card__titles { flex: 1 1 auto; min-width: 0; }
.etvs-dashboard .etvs-card__tag {
	display: inline-block; margin-bottom: 4px; padding: 2px 8px;
	border-radius: 4px; background: var(--etvs-accent); color: #fff;
	font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; line-height: 16px;
}
.etvs-dashboard .etvs-card__head h2 {
	margin: 0; padding: 0;
	font-size: 20px; font-weight: 800; line-height: 1.25; color: #0B2545;
	border: 0; text-transform: none;
}
.etvs-dashboard .etvs-card__head .etvs-service-desc { margin: 6px 0 0; font-size: 13.5px; line-height: 1.5; color: #4b5563; max-width: 900px; }
.etvs-dashboard .etvs-card__price {
	flex: 0 0 auto; display: flex; flex-direction: column; align-items: flex-end;
	padding: 6px 12px; border-radius: 8px; background: #fff; border: 1px solid #d5dce6;
	font-size: 16px; font-weight: 800; color: #0B2545; white-space: nowrap; line-height: 1.2;
}
.etvs-dashboard .etvs-card__price small { font-size: 11px; font-weight: 600; color: #6b7280; }

/* Підблоки форми: підписи темніші, повноширинні секції відокремлені лінією */
.etvs-dashboard .etvs-field > label,
.etvs-dashboard .etvs-row label:not(.etvs-cat):not(.etvs-chip) { color: #0B2545; font-weight: 700; }
.etvs-dashboard .etvs-svc .etvs-row > .etvs-field--full,
.etvs-dashboard .etvs-svc .etvs-builder,
.etvs-dashboard .etvs-svc .etvs-spec { border-top: 1px dashed #d5dce6; padding-top: 16px; }
.etvs-dashboard .etvs-svc .etvs-actions .dokan-btn { min-height: 44px; padding: 0 26px; font-weight: 700; }

@media (max-width: 600px) {
	.etvs-dashboard .etvs-card { padding: 0 14px 16px; }
	.etvs-dashboard .etvs-card__head { margin: 0 -14px 16px; padding: 14px; flex-wrap: wrap; }
	.etvs-dashboard .etvs-card__head h2 { font-size: 17px; }
	.etvs-dashboard .etvs-card__price { flex-direction: row; gap: 6px; align-items: baseline; margin-left: 50px; }
	.etvs-dashboard .etvs-card__num { flex-basis: 32px; width: 32px; height: 32px; font-size: 15px; }
}
.etvs-dashboard .etvs-svc .etvs-card__head + form .etvs-row > .etvs-field--full:first-child,
.etvs-dashboard .etvs-svc .etvs-card__head + .etvs-spec { border-top: 0; padding-top: 0; }

/* ---------- Повідомлення «заповніть поля банера» (2.3.2) ---------- */
.etvs-dashboard .etvs-formerr { box-sizing: border-box; flex: 0 0 100%; max-width: 100%; margin-top: 4px; padding: 12px 16px; border: 1px solid #f3b4b4; border-left: 5px solid #c81e1e; border-radius: 8px; background: #fdf0f0; color: #7f1d1d; font-size: 14px; }
.etvs-dashboard .etvs-formerr ul { margin: 6px 0 0 18px; padding: 0; list-style: disc; }
.etvs-dashboard .etvs-formerr li { margin: 2px 0; }
.etvs-dashboard .etvs-invalid > label { color: #c81e1e !important; }
.etvs-dashboard .etvs-invalid input, .etvs-dashboard .etvs-invalid select, .etvs-dashboard .etvs-invalid textarea,
.etvs-dashboard .etvs-cat-list.etvs-invalid { border-color: #c81e1e !important; box-shadow: 0 0 0 3px rgba(200,30,30,.15) !important; }

/* ---------- Вертикальні шаблони банера (бічна панель, меню) — 2.5 ---------- */
.etvs-dashboard .etvs-builder--tall .etvs-tplpick { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.etvs-dashboard .etvs-tallbox { display: block; width: 100%; max-width: 170px; margin: 0 auto; pointer-events: none; }
.etvs-dashboard .etvs-tplprev__side { flex: 0 0 280px; width: 280px; max-width: 100%; }
.etvs-dashboard .etvs-tplprev__side .etvs-tpl { pointer-events: none; }
.etvs-dashboard .etvs-builder--tall .etvs-tplprev__phone { flex: 1 1 360px; width: auto; max-width: 440px; }
