/*
 * Žvelk giliau – Renginiai: datos ir laiko laukų stiliai.
 *
 * Naudojami ir viešoje pusėje, ir WordPress administravime, todėl matmenys
 * nurodyti px (administravime šaknies šriftas 16px, temoje – 62,5%).
 * Spalvos neutralios, kad derėtų prie abiejų aplinkų.
 */

.zg-dtf {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: 100%;
}

.zg-dtf__input {
	font-variant-numeric: tabular-nums;
}

/*
 * R01: tuščias laukas turi aiškiai skirtis nuo užpildyto. Tema vietaženklį
 * piešia įvesto teksto spalva (`::placeholder{color:currentColor;opacity:1}`),
 * todėl čia spalva nustatoma iš naujo. Dvi atskiros taisyklės sąmoningai:
 * nežinomas pseudoelementas selektorių sąraše panaikintų VISĄ taisyklę.
 */
.zg-dtf__input::placeholder {
	color: #6B6B6B;
	opacity: 1;
	font-variant-numeric: normal;
	letter-spacing: 0.02em;
}

.zg-dtf__input::-webkit-input-placeholder {
	color: #6B6B6B;
	opacity: 1;
	font-variant-numeric: normal;
	letter-spacing: 0.02em;
}

/*
 * R05: temos dekoratyvinis „rankytės“ kursorius. Užvedus ant bet kurio
 * `button` tema uždeda `body.mouse-over` ir paslepia sisteminį kursorių
 * (`cursor: none !important`), o vietoj jo piešia 96×69 px SVG, kurio kairysis
 * viršutinis kampas sutampa su žymekliu – t. y. vaizdas pasislenka maždaug
 * 90 px į dešinę ir 60 px žemyn nuo tikros paspaudimo vietos ir dar lieka po
 * kalendoriumi (`.cursor` z-index 99999 < skydelio 100000).
 *
 * Šiame valdiklyje grąžinamas įprastas sisteminis kursorius, o dekoratyvinis
 * paslepiamas, kol žymeklis yra virš valdiklio. Kitur svetainėje temos elgsena
 * nekeičiama.
 */
.zg-dtf,
.zg-dtf__panel {
	cursor: default;
}

/*
 * `!important` čia BŪTINAS: temos taisyklė `.mouse-over button { cursor: none
 * !important }` kitaip paslėptų ir sisteminį kursorių, ir naudotojas valdiklyje
 * nematytų jokio žymeklio. Taikoma tik šio valdiklio elementams.
 */
body.mouse-over .zg-dtf__input {
	cursor: text !important;
}

body.mouse-over .zg-dtf__toggle,
body.mouse-over .zg-dtf__nav,
body.mouse-over .zg-dtf__day,
body.mouse-over .zg-dtf__action,
body.mouse-over .zg-dtf__option {
	cursor: pointer !important;
}

body.mouse-over .zg-dtf__day[disabled],
body.mouse-over .zg-dtf__day[aria-disabled="true"] {
	cursor: not-allowed !important;
}

/*
 * `:has()` nepalaikančiose naršyklėse lieka ankstesnė elgsena – bet sisteminis
 * kursorius (taisyklės aukščiau) jau rodomas teisingoje vietoje.
 */
body:has(.zg-dtf:hover) .cursor,
body:has(.zg-dtf__panel:hover) .cursor {
	opacity: 0;
}

.zg-dtf__hint {
	display: block;
	margin-top: 4px;
}

.zg-dtf__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	min-height: 32px;
	padding: 0 6px;
	font-size: 15px;
	line-height: 1;
	cursor: pointer;
	background: #fff;
	color: #1d2327;
	border: 1px solid #50575e;
	border-radius: 3px;
}

.zg-dtf__icon {
	width: 18px;
	height: 18px;
	display: block;
}

.zg-dtf__toggle:hover {
	background: #f0f0f1;
}

.zg-dtf__toggle:focus-visible,
.zg-dtf__panel :focus-visible {
	outline: 2px solid #2271b1;
	outline-offset: 1px;
}

.zg-dtf__panel {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	z-index: 100000;
	box-sizing: border-box;
	padding: 8px;
	font-size: 13px;
	line-height: 1.4;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: #1d2327;
	background: #fff;
	border: 1px solid #50575e;
	border-radius: 3px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

.zg-dtf__panel[hidden] {
	display: none;
}

.zg-dtf__panel--date {
	width: 252px;
}

.zg-dtf__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 4px;
	margin-bottom: 6px;
}

.zg-dtf__month {
	font-weight: 700;
	text-align: center;
	flex: 1 1 auto;
}

.zg-dtf__nav {
	min-width: 28px;
	min-height: 28px;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	background: #fff;
	color: #1d2327;
	border: 1px solid #50575e;
	border-radius: 3px;
}

.zg-dtf__nav:hover {
	background: #f0f0f1;
}

.zg-dtf__grid {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.zg-dtf__grid th {
	padding: 2px 0;
	font-size: 12px;
	font-weight: 700;
	color: #50575e;
	text-align: center;
}

.zg-dtf__grid th abbr {
	text-decoration: none;
	border: 0;
	cursor: help;
}

.zg-dtf__grid td {
	padding: 1px;
	text-align: center;
	border: 0;
}

.zg-dtf__day {
	width: 100%;
	min-height: 30px;
	padding: 0;
	font-size: 13px;
	line-height: 1;
	cursor: pointer;
	background: #fff;
	color: #1d2327;
	border: 1px solid transparent;
	border-radius: 3px;
}

.zg-dtf__day:hover {
	background: #f0f0f1;
}

.zg-dtf__day.is-today {
	border-color: #2271b1;
	font-weight: 700;
}

.zg-dtf__day.is-selected {
	background: #2271b1;
	color: #fff;
	font-weight: 700;
}

.zg-dtf__foot {
	display: flex;
	justify-content: space-between;
	gap: 6px;
	margin-top: 6px;
}

.zg-dtf__action {
	padding: 4px 8px;
	font-size: 12px;
	cursor: pointer;
	background: #f6f7f7;
	color: #1d2327;
	border: 1px solid #50575e;
	border-radius: 3px;
}

.zg-dtf__action:hover {
	background: #f0f0f1;
}

.zg-dtf__times {
	max-height: 220px;
	width: 96px;
	overflow-y: auto;
	outline: none;
}

.zg-dtf__time {
	padding: 5px 8px;
	font-variant-numeric: tabular-nums;
	cursor: pointer;
	border-radius: 3px;
}

.zg-dtf__time:hover {
	background: #f0f0f1;
}

.zg-dtf__time.is-selected {
	background: #2271b1;
	color: #fff;
	font-weight: 700;
}

@media (max-width: 480px) {
	.zg-dtf__panel {
		max-width: calc(100vw - 24px);
	}

	.zg-dtf__panel--date {
		width: 240px;
	}
}

/* R08: anksčiau už leidžiamą ribą esanti diena kalendoriuje neaktyvi. */
.zg-dtf__day[disabled] {
	opacity: 0.4;
	cursor: not-allowed;
}
