/*
 * DDT Namedays
 *
 * Кольори — з кастомних властивостей теми, тих самих, що читають Celebration
 * Planner і DT Пульс, тож зміна в Customizer доходить і сюди. Наші — лише
 * суміші. Чипи — справжні radio з label, перемикання режимів і стилів —
 * через :has(), без скрипта. Скрипт лише питає сервер і вставляє відповідь.
 */

.ndy {
	--ndy-accent: var(--accent-color, #ff7618);
	--ndy-ink: var(--headings-color, #23262c);
	--ndy-text: var(--body-color, #4b505a);
	--ndy-surface: var(--card-bg, #fff);

	--ndy-muted: color-mix(in srgb, var(--ndy-text) 74%, transparent);
	--ndy-faint: color-mix(in srgb, var(--ndy-text) 55%, transparent);
	--ndy-line: color-mix(in srgb, var(--ndy-ink) 13%, transparent);
	--ndy-hair: color-mix(in srgb, var(--ndy-ink) 8%, transparent);
	--ndy-wash: color-mix(in srgb, var(--ndy-ink) 4%, transparent);
	--ndy-tint: color-mix(in srgb, var(--ndy-accent) 9%, transparent);
	--ndy-tint-strong: color-mix(in srgb, var(--ndy-accent) 16%, transparent);

	--ndy-radius: 18px;
	--ndy-radius-sm: 12px;
}

.ndy *,
.ndy *::before,
.ndy *::after {
	box-sizing: border-box;
}

/* ------------------------------------------------------------ імена-чипи */

.ndy-names {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0 0 14px;
	padding: 0;
	list-style: none;
}

.ndy-names > li {
	margin: 0;
	padding: 0;
}

.ndy-names > li::before,
.ndy-names > li::marker {
	content: none;
}

.ndy-name {
	display: inline-flex;
	align-items: center;
	padding: 6px 13px;
	border: 1px solid color-mix(in srgb, var(--ndy-accent) 35%, var(--ndy-line));
	border-radius: 999px;
	background: var(--ndy-tint);
	color: var(--ndy-ink);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	transition: background-color .15s ease, border-color .15s ease;
}

a.ndy-name:hover,
a.ndy-name:focus-visible {
	border-color: var(--ndy-accent);
	background: var(--ndy-tint-strong);
	color: var(--ndy-ink);
}

a.ndy-name:focus-visible {
	outline: 2px solid var(--ndy-accent);
	outline-offset: 2px;
}

.ndy-name--plain {
	border-color: var(--ndy-line);
	background: transparent;
	color: var(--ndy-muted);
	font-weight: 500;
}

.ndy-names--quiet .ndy-name {
	border-color: var(--ndy-line);
	background: var(--ndy-surface);
	font-weight: 500;
}

.ndy-empty {
	margin: 0 0 14px;
	color: var(--ndy-muted);
	font-size: 15px;
}

/* -------------------------------------------------------------- розкривні */

.ndy-more {
	margin: 0 0 10px;
	border: 1px solid var(--ndy-hair);
	border-radius: var(--ndy-radius-sm);
	background: var(--ndy-wash);
}

.ndy-more > summary {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 2px 8px;
	padding: 10px 14px;
	color: var(--ndy-ink);
	font-size: 14.5px;
	font-weight: 600;
	cursor: pointer;
	list-style: none;
}

.ndy-more > summary::-webkit-details-marker,
.ndy-about__summary::-webkit-details-marker {
	display: none;
}

.ndy-more > summary::before,
.ndy-about__summary::before {
	content: "";
	flex: none;
	align-self: center;
	width: 7px;
	height: 7px;
	margin-right: 2px;
	border: solid var(--ndy-accent);
	border-width: 0 2px 2px 0;
	transform: rotate(-45deg);
	transition: transform .15s ease;
}

.ndy-more[open] > summary::before,
.ndy-about[open] > .ndy-about__summary::before {
	transform: rotate(45deg);
}

.ndy-more > :not(summary) {
	margin-left: 14px;
	margin-right: 14px;
}

.ndy-more > :last-child {
	margin-bottom: 12px;
}

.ndy-count {
	padding: 1px 8px;
	border-radius: 999px;
	background: var(--ndy-tint-strong);
	color: var(--ndy-ink);
	font-size: 12px;
	font-weight: 700;
}

.ndy-more__hint {
	color: var(--ndy-faint);
	font-size: 12.5px;
	font-weight: 400;
}

.ndy-saints {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14.5px;
	line-height: 1.5;
}

.ndy-saints > li {
	margin: 0;
	padding: 7px 0;
	border-top: 1px solid var(--ndy-hair);
}

.ndy-saints > li:first-child {
	border-top: 0;
}

.ndy-saints > li::before {
	content: none;
}

.ndy-saint {
	color: var(--ndy-ink);
}

.ndy-saint__names {
	color: var(--ndy-faint);
	font-size: 13px;
	white-space: nowrap;
}

.ndy-saint__names::before {
	content: "· ";
}

.ndy-tag {
	display: inline-block;
	padding: 1px 7px;
	border: 1px solid var(--ndy-line);
	border-radius: 999px;
	color: var(--ndy-faint);
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .02em;
	vertical-align: 1px;
	white-space: nowrap;
}

.ndy-note {
	margin: 0 0 10px;
	color: var(--ndy-muted);
	font-size: 13.5px;
	line-height: 1.5;
}

.ndy-foot {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 6px 14px;
	margin: 12px 0 0;
	color: var(--ndy-faint);
	font-size: 12.5px;
}

.ndy-foot__link {
	color: var(--ndy-accent);
	font-weight: 700;
	text-decoration: none;
}

.ndy-foot__link::after {
	content: " →";
}

/* Підкреслення посилань малює тема (лінія, що від'їжджає вліво на
   наведенні); своє text-decoration поверх неї не додаємо ніде в модулі. */
.ndy a,
.ndy a:hover,
.ndy a:focus {
	text-decoration: none;
}

/* ----------------------------------------------------------- «сьогодні» */

.ndy--today {
	margin: 18px 0 30px;
}

.ndy--today .ndy-name {
	padding: 8px 16px;
	font-size: 16.5px;
}

.ndy-today__head {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-bottom: 20px;
}

/* Листок відривного календаря: місяць на смузі акценту, велике число, день тижня. */
.ndy-today__tile {
	flex: none;
	width: 88px;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--ndy-line);
	border-radius: 14px;
	background: var(--ndy-surface);
	box-shadow: 0 8px 20px -12px color-mix(in srgb, var(--ndy-ink) 45%, transparent);
	text-align: center;
}

.ndy-today__month {
	display: block;
	padding: 5px 4px 4px;
	background: var(--ndy-accent);
	color: #fff;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ndy-today__num {
	display: block;
	padding-top: 8px;
	color: var(--ndy-ink);
	font-size: 38px;
	font-weight: 800;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.ndy-today__wd {
	display: block;
	padding: 4px 4px 9px;
	color: var(--ndy-faint);
	font-size: 11.5px;
}

.ndy-today__titles {
	min-width: 0;
}

.ndy-today__titles .ndy__title {
	margin-bottom: 6px;
}

.ndy-today__date {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2px 6px;
	margin: 0;
	color: var(--ndy-muted);
	font-size: 14.5px;
}

.ndy.is-loading {
	opacity: .55;
	transition: opacity .2s ease;
}

/* ------------------------------------------------------- сторінка імені */

.ndy--name {
	margin: 0 0 30px;
}

.ndy-name__title {
	margin: 0 0 10px;
}

.ndy-lede {
	margin: 0 0 8px;
	font-size: 16px;
	line-height: 1.6;
}

.ndy-church {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	margin: 0 0 18px;
	color: var(--ndy-muted);
	font-size: 14px;
}

.ndy-months {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
	gap: 14px;
	margin: 0 0 18px;
}

.ndy-month,
.ndy-movable {
	padding: 14px 16px 10px;
	border: 1px solid var(--ndy-hair);
	border-radius: var(--ndy-radius-sm);
	background: var(--ndy-surface);
}

.ndy-movable {
	margin: 0 0 18px;
}

.ndy-month__name {
	margin: 0 0 8px;
	color: var(--ndy-accent);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ndy-month__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndy-row {
	display: grid;
	grid-template-columns: 30px 1fr;
	gap: 10px;
	margin: 0;
	padding: 6px 0;
	border-top: 1px solid var(--ndy-hair);
	font-size: 14px;
	line-height: 1.45;
}

.ndy-row:first-child {
	border-top: 0;
}

.ndy-row::before {
	content: none;
}

.ndy-row--movable {
	grid-template-columns: minmax(0, 190px) 1fr;
}

.ndy-row__day {
	color: var(--ndy-ink);
	font-size: 17px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	line-height: 1.2;
	text-align: right;
}

.ndy-row__rule {
	color: var(--ndy-ink);
	font-weight: 600;
}

.ndy-row__rule em {
	display: block;
	color: var(--ndy-faint);
	font-size: 12.5px;
	font-style: normal;
	font-weight: 400;
}

.ndy-row__who {
	color: var(--ndy-text);
}

.ndy-row__old {
	display: block;
	color: var(--ndy-faint);
	font-size: 12px;
}

.ndy-row.is-next {
	margin: 2px -8px;
	padding: 6px 8px;
	border-top-color: transparent;
	border-radius: 10px;
	background: var(--ndy-tint);
}

.ndy-row.is-next + .ndy-row {
	border-top-color: transparent;
}

.ndy-row.is-next .ndy-row__day {
	color: var(--ndy-accent);
}

.ndy-note--rule {
	margin-top: 4px;
	color: var(--ndy-text);
	font-size: 15px;
}

/* ------------------------------------------------------------ калькулятор */

.ndy--finder {
	margin: 30px 0;
	clear: both;
}

.ndy__inner {
	position: relative;
	padding: 28px 28px 26px;
	border: 1px solid var(--ndy-line);
	border-radius: var(--ndy-radius);
	background:
		linear-gradient(180deg, var(--ndy-tint) 0, transparent 190px),
		var(--ndy-surface);
	overflow: hidden;
}

/* Волосина акценту вздовж верхнього краю — замість важкого заголовка. */
.ndy__inner::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 3px;
	background: linear-gradient(90deg, var(--ndy-accent), color-mix(in srgb, var(--ndy-accent) 35%, transparent));
}

.ndy__head {
	margin-bottom: 20px;
}

.ndy__eyebrow {
	margin: 0 0 6px;
	color: var(--ndy-accent);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.ndy__title {
	margin: 0 0 8px;
	color: var(--ndy-ink);
	font-size: clamp(20px, 2.4vw, 25px);
	line-height: 1.25;
}

.ndy__lede {
	max-width: 68ch;
	margin: 0;
	color: var(--ndy-muted);
	font-size: 15px;
	line-height: 1.55;
}

.ndy-group {
	margin: 0 0 18px;
	padding: 0;
	border: 0;
	min-width: 0;
}

.ndy-group__legend {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 10px;
	margin-bottom: 10px;
	padding: 0;
}

.ndy-group__label {
	color: var(--ndy-ink);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ndy-group__hint {
	color: var(--ndy-faint);
	font-size: 12.5px;
}

.ndy-chips,
.ndy-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

.ndy-tabs {
	margin: 0 0 14px;
}

.ndy-chip {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 11px 17px 11px 13px;
	border: 1px solid var(--ndy-line);
	border-radius: var(--ndy-radius-sm);
	background: var(--ndy-surface);
	color: var(--ndy-text);
	font-size: 15px;
	line-height: 1.3;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.ndy-chip--small {
	padding: 8px 15px 8px 11px;
	border-radius: 999px;
	font-size: 14px;
}

.ndy-chip:hover {
	border-color: color-mix(in srgb, var(--ndy-accent) 45%, var(--ndy-line));
	background: var(--ndy-wash);
}

.ndy-chip:has(.ndy-chip__input:checked) {
	border-color: color-mix(in srgb, var(--ndy-accent) 60%, transparent);
	background: var(--ndy-tint);
	color: var(--ndy-ink);
	font-weight: 600;
}

.ndy-chip:has(.ndy-chip__input:focus-visible) {
	outline: 2px solid var(--ndy-accent);
	outline-offset: 2px;
}

/* У розмітці й досяжний з клавіатури, просто не намальований: малюємо крапку. */
.ndy-chip__input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	opacity: 0;
	pointer-events: none;
}

.ndy-chip__dot {
	flex: none;
	position: relative;
	width: 18px;
	height: 18px;
	border: 1.5px solid color-mix(in srgb, var(--ndy-ink) 28%, transparent);
	border-radius: 50%;
	transition: border-color .15s ease;
}

.ndy-chip__dot::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 50%;
	background: var(--ndy-accent);
	transform: scale(0);
	transition: transform .12s ease;
}

.ndy-chip__input:checked + .ndy-chip__dot {
	border-color: var(--ndy-accent);
}

.ndy-chip__input:checked + .ndy-chip__dot::after {
	transform: scale(1);
}

.ndy-chip__text {
	display: block;
}

.ndy-chip__sub {
	display: block;
	margin-top: 2px;
	color: var(--ndy-faint);
	font-size: 12.5px;
	font-weight: 400;
}

.ndy-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
	gap: 12px 14px;
	margin: 0 0 18px;
}

.ndy-field {
	display: block;
	margin: 0;
}

.ndy-field__label {
	display: block;
	margin-bottom: 6px;
	color: var(--ndy-ink);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ndy-field input {
	width: 100%;
	min-width: 0;
	min-height: 46px;
	padding: 11px 14px;
	border: 1px solid var(--ndy-line);
	border-radius: 10px;
	background: var(--ndy-surface);
	color: var(--ndy-ink);
	font: inherit;
	font-size: 16px;
	line-height: 1.3;
}

.ndy-field input:focus-visible {
	outline: 2px solid var(--ndy-accent);
	outline-offset: 1px;
	border-color: transparent;
}

/* Поле дати: три сегменти «дд · мм · рррр» в одній рамці + кнопка
   календаря. Ширина — як у блоці «Ім’я для дитини»: дата не потребує
   всього рядка. Стилі теми для input скинуто через all: unset. */
.ndy-field--date {
	max-width: 340px;
}

.ndy-dp {
	position: relative;
}

.ndy-dp__box {
	display: flex;
	align-items: center;
	min-height: 54px;
	padding: 0 7px 0 12px;
	border: 1px solid var(--ndy-line);
	border-radius: 10px;
	background: var(--ndy-surface);
	cursor: text;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.ndy-dp__box:hover {
	border-color: color-mix(in srgb, var(--ndy-accent) 35%, var(--ndy-line));
}

.ndy-dp__box:focus-within {
	border-color: var(--ndy-accent);
	box-shadow: 0 0 0 3px var(--ndy-tint-strong);
}

.ndy-dp.is-invalid .ndy-dp__box {
	border-color: #c2410c;
	box-shadow: 0 0 0 3px color-mix(in srgb, #c2410c 15%, transparent);
}

.ndy .ndy-dp .ndy-dp__seg {
	all: unset;
	box-sizing: content-box;
	padding: 7px 3px;
	border-radius: 7px;
	color: var(--ndy-ink);
	font-family: inherit;
	font-size: 19px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	line-height: 1.3;
	text-align: center;
	caret-color: var(--ndy-accent);
	cursor: text;
}

.ndy .ndy-dp .ndy-dp__seg--d,
.ndy .ndy-dp .ndy-dp__seg--m {
	width: 2.4ch;
}

.ndy .ndy-dp .ndy-dp__seg--y {
	width: 4.3ch;
}

.ndy .ndy-dp .ndy-dp__seg::placeholder {
	color: var(--ndy-faint);
	font-weight: 500;
	opacity: 1;
}

.ndy .ndy-dp .ndy-dp__seg:focus {
	background: var(--ndy-tint);
}

.ndy .ndy-dp .ndy-dp__seg::selection {
	background: var(--ndy-tint-strong);
}

.ndy-dp__dot {
	padding: 0 1px;
	color: var(--ndy-faint);
	font-size: 19px;
	font-weight: 600;
	user-select: none;
}

.ndy .ndy-dp__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	min-width: 0;
	min-height: 0;
	margin: 0 0 0 auto;
	padding: 0;
	border: 0;
	border-radius: 9px;
	background: var(--ndy-tint);
	box-shadow: none;
	color: var(--ndy-ink);
	cursor: pointer;
	transition: background-color .15s ease, color .15s ease;
}

.ndy .ndy-dp__btn:hover,
.ndy .ndy-dp__btn[aria-expanded="true"] {
	background: var(--ndy-tint-strong);
	color: var(--ndy-accent);
}

.ndy .ndy-dp__btn:focus-visible {
	outline: 2px solid var(--ndy-accent);
	outline-offset: 1px;
}

/* ------------------------------------------------------------ календар */

/* Живе в <body> (картки обрізають усе, що виходить за край), тож кольори
   бере просто з властивостей теми. */
.ndy-dpop {
	--dp-accent: var(--accent-color, #ff7618);
	--dp-ink: var(--headings-color, #23262c);
	--dp-text: var(--body-color, #4b505a);
	--dp-surface: var(--card-bg, #fff);
	--dp-line: color-mix(in srgb, var(--dp-ink) 13%, transparent);
	--dp-faint: color-mix(in srgb, var(--dp-text) 55%, transparent);
	--dp-tint: color-mix(in srgb, var(--dp-accent) 12%, transparent);

	position: absolute;
	z-index: 100001;
	box-sizing: border-box;
	width: 324px;
	padding: 14px;
	border: 1px solid var(--dp-line);
	border-radius: 16px;
	background: var(--dp-surface);
	box-shadow: 0 18px 50px -16px rgba(0, 0, 0, .4);
	color: var(--dp-text);
	font-size: 14px;
	line-height: 1.3;
}

.ndy-dpop[hidden],
.ndy-dpop-backdrop[hidden] {
	display: none;
}

.ndy-dpop *,
.ndy-dpop *::before,
.ndy-dpop *::after {
	box-sizing: border-box;
}

.ndy-dpop__head {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr) 84px 34px;
	gap: 6px;
	align-items: center;
	margin-bottom: 10px;
}

.ndy-dpop select {
	all: unset;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	height: 36px;
	padding: 0 24px 0 10px;
	border: 1px solid var(--dp-line);
	border-radius: 9px;
	background:
		linear-gradient(45deg, transparent 50%, var(--dp-faint) 50%) right 14px center / 5px 5px no-repeat,
		linear-gradient(135deg, var(--dp-faint) 50%, transparent 50%) right 9px center / 5px 5px no-repeat,
		var(--dp-surface);
	color: var(--dp-ink);
	font-family: inherit;
	font-size: 14.5px;
	font-weight: 600;
	line-height: 34px;
	cursor: pointer;
}

.ndy-dpop select:focus-visible,
.ndy-dpop button:focus-visible {
	outline: 2px solid var(--dp-accent);
	outline-offset: 1px;
}

.ndy-dpop button {
	all: unset;
	box-sizing: border-box;
	cursor: pointer;
	font-family: inherit;
}

.ndy-dpop .ndy-dpop__nav {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 36px;
	border-radius: 9px;
	color: var(--dp-ink);
	font-size: 22px;
	line-height: 1;
}

.ndy-dpop .ndy-dpop__nav:hover {
	background: var(--dp-tint);
	color: var(--dp-accent);
}

.ndy-dpop__week,
.ndy-dpop__grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
}

.ndy-dpop__week {
	margin-bottom: 4px;
	color: var(--dp-faint);
	font-size: 11.5px;
	font-weight: 700;
	text-align: center;
	text-transform: uppercase;
}

.ndy-dpop .ndy-dpop__day {
	display: flex !important;
	align-items: center;
	justify-content: center;
	height: 38px;
	border-radius: 10px;
	color: var(--dp-ink);
	font-size: 14.5px;
	font-variant-numeric: tabular-nums;
	font-weight: 500;
}

.ndy-dpop .ndy-dpop__day.is-weekend {
	color: color-mix(in srgb, var(--dp-accent) 75%, var(--dp-ink));
}

.ndy-dpop .ndy-dpop__day:hover {
	background: var(--dp-tint);
}

.ndy-dpop .ndy-dpop__day.is-today {
	box-shadow: inset 0 0 0 1.5px var(--dp-accent);
	font-weight: 700;
}

.ndy-dpop .ndy-dpop__day.is-sel,
.ndy-dpop .ndy-dpop__day.is-sel:hover {
	background: var(--dp-accent);
	color: #fff;
	font-weight: 700;
}

.ndy-dpop__foot {
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--dp-line);
}

.ndy-dpop .ndy-dpop__link {
	padding: 8px 12px;
	border-radius: 9px;
	color: var(--dp-accent);
	font-size: 14px;
	font-weight: 700;
}

.ndy-dpop .ndy-dpop__link:hover {
	background: var(--dp-tint);
}

/* Телефон: шторка знизу, великі кнопки, шрифт ≥16px (iOS не масштабує). */
.ndy-dpop-backdrop {
	position: fixed;
	inset: 0;
	z-index: 100000;
	background: rgba(0, 0, 0, .38);
	animation: ndy-fade .15s ease;
}

.ndy-dpop.is-sheet {
	position: fixed;
	top: auto;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	padding: 18px 16px calc(14px + env(safe-area-inset-bottom));
	border-width: 1px 0 0;
	border-radius: 20px 20px 0 0;
	animation: ndy-sheet .2s ease;
}

.ndy-dpop.is-sheet::before {
	content: "";
	display: block;
	width: 40px;
	height: 4px;
	margin: -6px auto 12px;
	border-radius: 2px;
	background: var(--dp-line);
}

.ndy-dpop.is-sheet .ndy-dpop__head {
	grid-template-columns: 44px minmax(0, 1fr) 104px 44px;
}

.ndy-dpop.is-sheet select {
	height: 44px;
	font-size: 16px;
	line-height: 42px;
}

.ndy-dpop.is-sheet .ndy-dpop__nav {
	width: 44px;
	height: 44px;
}

.ndy-dpop.is-sheet .ndy-dpop__day {
	height: 46px;
	font-size: 16.5px;
}

.ndy-dpop.is-sheet .ndy-dpop__link {
	padding: 12px 14px;
	font-size: 16px;
}

@keyframes ndy-sheet {
	from { transform: translateY(100%); }
	to { transform: none; }
}

@keyframes ndy-fade {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* Ім’я поруч із датою — тієї самої висоти. */
.ndy-field--name input {
	min-height: 54px;
	font-size: 17px;
}

/* Режим «Чиї іменини в дату»: ім'я не потрібне, підпис дати інший. */
.ndy-when-date {
	display: none;
}

.ndy-form:has(input[name="mode"][value="date"]:checked) .ndy-field--name {
	display: none;
}

.ndy-form:has(input[name="mode"][value="date"]:checked) .ndy-when-name {
	display: none;
}

.ndy-form:has(input[name="mode"][value="date"]:checked) .ndy-when-date {
	display: inline;
}

.ndy__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 16px;
	padding-top: 18px;
	border-top: 1px solid var(--ndy-hair);
}

.ndy__go {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 14px 26px;
	border: 0;
	border-radius: 999px;
	background: var(--ndy-accent);
	color: #fff;
	font-size: 15.5px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: filter .15s ease, opacity .15s ease;
}

.ndy__go:hover:not([disabled]) {
	filter: brightness(1.07);
}

.ndy__go[disabled] {
	opacity: .55;
	cursor: default;
}

.ndy__go:focus-visible {
	outline: 2px solid var(--ndy-ink);
	outline-offset: 3px;
}

.ndy__goicon {
	font-size: 14px;
}

.ndy--finder.is-busy .ndy__goicon {
	animation: ndy-spin 1.1s linear infinite;
}

@keyframes ndy-spin {
	to { transform: rotate(360deg); }
}

.ndy__error {
	margin: 0;
	color: #c2410c;
	font-size: 14px;
}

.ndy--compact .ndy__inner {
	padding: 22px 22px 20px;
}

.ndy--compact .ndy__head {
	margin-bottom: 14px;
}

/* --------------------------------------------------------------- відповідь */

.ndy-result:empty {
	display: none;
}

.ndy-result {
	margin-top: 22px;
	animation: ndy-in .25s ease;
}

@keyframes ndy-in {
	from { opacity: 0; transform: translateY(6px); }
	to { opacity: 1; transform: none; }
}

.ndy-answer {
	padding: 20px 22px;
	border: 1px solid color-mix(in srgb, var(--ndy-accent) 35%, var(--ndy-line));
	border-radius: var(--ndy-radius-sm);
	background: var(--ndy-surface);
}

.ndy-answer > p {
	margin: 0 0 10px;
}

.ndy-answer__eyebrow {
	color: var(--ndy-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ndy-answer__top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 14px;
	margin-bottom: 12px;
}

.ndy-answer__top .ndy-answer__eyebrow {
	margin: 0;
}

/* Перемикач календаря — сегменти, як вкладки. */
.ndy-tabs--seg {
	display: inline-flex;
	gap: 0;
	margin: 0;
	padding: 3px;
	border: 1px solid var(--ndy-line);
	border-radius: 999px;
	background: var(--ndy-wash);
}

.ndy-seg {
	position: relative;
	margin: 0;
	cursor: pointer;
}

.ndy-seg > span {
	display: block;
	padding: 7px 14px;
	border-radius: 999px;
	color: var(--ndy-muted);
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
	transition: background-color .15s ease, color .15s ease;
}

.ndy-seg:hover > span {
	color: var(--ndy-ink);
}

.ndy-seg:has(input:checked) > span {
	background: var(--ndy-surface);
	color: var(--ndy-ink);
	box-shadow: 0 1px 4px color-mix(in srgb, var(--ndy-ink) 18%, transparent);
}

.ndy-seg:has(input:focus-visible) > span {
	outline: 2px solid var(--ndy-accent);
	outline-offset: 1px;
}

.ndy-answer--personal:has(.ndy-tabs input[value="new"]:checked) .ndy-cal--julian,
.ndy-answer--personal:has(.ndy-tabs input[value="old"]:checked) .ndy-cal--modern {
	display: none;
}

.ndy-cal {
	margin: 0 0 12px;
	padding: 18px 20px 16px;
	border: 1px solid color-mix(in srgb, var(--ndy-accent) 40%, var(--ndy-line));
	border-radius: var(--ndy-radius-sm);
	background: linear-gradient(180deg, var(--ndy-tint) 0, transparent 170px), var(--ndy-surface);
}

.ndy-cal > p {
	margin: 0;
}

.ndy-cal__name {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 4px;
	margin-bottom: 8px !important;
	color: var(--ndy-ink);
	font-size: 13px;
	font-weight: 700;
}

.ndy-calname__sub {
	color: var(--ndy-faint);
	font-weight: 400;
}

.ndy-cal__name .ndy-calname__sub {
	flex-basis: 100%;
	font-size: 12.5px;
}

.ndy-cal__date {
	margin-bottom: 8px !important;
	color: var(--ndy-ink);
	font-size: clamp(26px, 3.6vw, 34px);
	font-weight: 800;
	line-height: 1.1;
}

.ndy-cal__saint {
	margin-bottom: 10px !important;
	color: var(--ndy-ink);
	font-size: 15px;
	line-height: 1.45;
}

.ndy-cal__k {
	display: block;
	margin-bottom: 2px;
	color: var(--ndy-faint);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ndy-cal__next {
	display: inline-block;
	padding: 5px 11px;
	border-radius: 10px;
	background: var(--ndy-tint);
	color: var(--ndy-ink);
	font-size: 13.5px;
	font-weight: 600;
}

.ndy-cal__all {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 16px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--ndy-hair);
}

.ndy-cal__hint {
	flex: 1 1 260px;
	margin: 0;
	color: var(--ndy-muted);
	font-size: 13.5px;
	line-height: 1.5;
}

.ndy .ndy-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 16px;
	border: 1px solid color-mix(in srgb, var(--ndy-accent) 55%, transparent);
	border-radius: 999px;
	background: var(--ndy-surface);
	color: var(--ndy-ink);
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color .15s ease, border-color .15s ease;
}

.ndy .ndy-btn:hover,
.ndy .ndy-btn:focus-visible {
	border-color: var(--ndy-accent);
	background: var(--ndy-tint);
	color: var(--ndy-ink);
}

.ndy-btn__n {
	padding: 1px 7px;
	border-radius: 999px;
	background: var(--ndy-tint-strong);
	font-size: 12px;
}

.ndy-answer__alt {
	color: var(--ndy-muted);
	font-size: 14px;
	line-height: 1.5;
}

.ndy-answer__why {
	margin-top: 6px;
}

.ndy-answer__why p {
	font-size: 14px;
	line-height: 1.55;
}

.ndy-answer--none p {
	color: var(--ndy-text);
	font-size: 15px;
}

.ndy-days {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndy-days__item {
	margin: 0;
	padding: 12px 0 2px;
	border-top: 1px solid var(--ndy-hair);
}

.ndy-days__item:first-child {
	border-top: 0;
	padding-top: 0;
}

.ndy-days__item::before {
	content: none;
}

.ndy-days__date {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 10px;
	margin: 0 0 8px;
	color: var(--ndy-ink);
	font-size: 15px;
}

.ndy-days__church {
	color: var(--ndy-faint);
	font-size: 12.5px;
}

.ndy-days__item .ndy-names {
	margin-bottom: 8px;
}

.ndy-days__item .ndy-name {
	padding: 4px 11px;
	font-size: 14px;
}

/* Вкладки «старий/новий стиль» у відповіді — на :has(), без скрипта. */
.ndy-answer--date:has(input[value="old"]:checked) .ndy-days[data-ndy-style="new"],
.ndy-answer--date:has(input[value="new"]:checked) .ndy-days[data-ndy-style="old"] {
	display: none;
}

/* -------------------------------------------------------------- підказки ⓘ */

.ndy .ndy-i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.5em;
	height: 1.5em;
	min-width: 0;
	min-height: 0;
	margin: -.25em 0 -.25em .05em;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: none;
	box-shadow: none;
	color: var(--ndy-faint);
	font-size: inherit;
	line-height: 1;
	vertical-align: middle;
	position: relative;
	top: -.1em;
	cursor: help;
	transition: color .15s ease;
}

/* Кружечок з «i» малює маска з CSS: розмітка — порожній span, а розмір
   іде від шрифту рядка, тож іконка стоїть рівно і в 12, і в 16 px. */
.ndy .ndy-i > span {
	display: block;
	width: 1.05em;
	height: 1.05em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3Ccircle cx='8' cy='4.7' r='1.05'/%3E%3Cpath d='M8 7.3v4.7' stroke='%23000' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3Ccircle cx='8' cy='4.7' r='1.05'/%3E%3Cpath d='M8 7.3v4.7' stroke='%23000' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.ndy .ndy-i:hover,
.ndy .ndy-i[aria-expanded="true"] {
	background: none;
	color: var(--ndy-accent);
}

.ndy .ndy-i:focus-visible {
	outline: 2px solid var(--ndy-accent);
	outline-offset: 1px;
}

/* Одна спливна підказка на сторінку; скрипт ставить її біля іконки. */
.ndy-tipbox {
	position: fixed;
	z-index: 100000;
	max-width: min(340px, calc(100vw - 24px));
	padding: 12px 14px;
	border-radius: 12px;
	background: var(--headings-color, #23262c);
	color: var(--card-bg, #fff);
	font-size: 13.5px;
	line-height: 1.5;
	text-align: left;
	box-shadow: 0 12px 32px -12px rgba(0, 0, 0, .5);
}

.ndy-tipbox[hidden] {
	display: none;
}

.ndy-tipbox strong {
	color: inherit;
}

.ndy-legend {
	margin: 0 0 14px;
	color: var(--ndy-faint);
	font-size: 13px;
	line-height: 1.5;
}

.ndy-tag--accent {
	border-color: color-mix(in srgb, var(--ndy-accent) 55%, transparent);
	background: var(--ndy-tint);
	color: var(--ndy-ink);
}

.ndy-days__item.is-eighth {
	margin: 4px -10px 0;
	padding: 12px 10px 4px;
	border-top-color: transparent;
	border-radius: 10px;
	background: var(--ndy-tint);
}

.ndy-foot__link--plain::after {
	content: none;
}

/* ------------------------------------------- іменини в «Мій календар» */

/* Той самий значок закладки, що в ddt-accounts, але власним класом: їхні
   стилі на проді проходять через «Remove Unused CSS», і на сторінці без їхньої
   кнопки зникли б. Малюнок — маскою, контур або заливка. */
.ndy-save {
	--ndy-bm: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 4.5h11a1 1 0 0 1 1 1v14.2a.6.6 0 0 1-.93.5L12 16.4l-5.57 3.8a.6.6 0 0 1-.93-.5V5.5a1 1 0 0 1 1-1Z' fill='none' stroke='%23000' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E");
	--ndy-bm-fill: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 4.5h11a1 1 0 0 1 1 1v14.2a.6.6 0 0 1-.93.5L12 16.4l-5.57 3.8a.6.6 0 0 1-.93-.5V5.5a1 1 0 0 1 1-1Z' fill='%23000' stroke='%23000' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.ndy-save.ndy-save,
.hh-agenda .ndy-save.ndy-save {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 30px;
	height: 30px;
	min-width: 0;
	min-height: 0;
	margin: -6px 0 -6px 4px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: none;
	box-shadow: none;
	color: var(--ndy-faint, rgba(20, 22, 28, .5));
	vertical-align: middle;
	cursor: pointer;
	transition: color .2s ease, background-color .2s ease, transform .15s ease;
}

.ndy-save > span {
	display: block;
	width: 18px;
	height: 18px;
	background-color: currentColor;
	-webkit-mask: var(--ndy-bm) center / contain no-repeat;
	mask: var(--ndy-bm) center / contain no-repeat;
}

.ndy-save.ndy-save:hover {
	background: color-mix(in srgb, var(--ndy-accent, #ff7618) 12%, transparent);
	color: var(--ndy-accent, #ff7618);
}

.ndy-save.ndy-save.is-active {
	color: var(--ndy-accent, #ff7618);
}

.ndy-save.is-active > span {
	-webkit-mask-image: var(--ndy-bm-fill);
	mask-image: var(--ndy-bm-fill);
}

.ndy-save:focus-visible {
	outline: 2px solid var(--ndy-accent, #ff7618);
	outline-offset: 1px;
}

.ndy-save:active {
	transform: scale(.9);
}

.ndy-save.is-busy {
	opacity: .6;
	pointer-events: none;
}

/* Біля великої дати в картці результату. vertical-align: middle ставить
   середину кнопки на середину малих літер («травня»), а не всього рядка з
   високими цифрами. */
.ndy-cal__date .ndy-save.ndy-save {
	width: 38px;
	height: 38px;
	margin: -10px 0 -10px 6px;
	vertical-align: middle;
}

.ndy-cal__date .ndy-save > span {
	width: 24px;
	height: 24px;
}

/* На сторінці імені — кожен святий окремим рядком зі своєю кнопкою;
   значок менший і стоїть по середині рядка тексту, не роздуваючи його. */
.ndy-row__saint {
	display: block;
}

.ndy-row__saint .ndy-save.ndy-save {
	width: 24px;
	height: 24px;
	margin: -5px 0 -5px 3px;
}

.ndy-row__saint .ndy-save > span {
	width: 15px;
	height: 15px;
}

.ndy-row__saint + .ndy-row__saint {
	margin-top: 3px;
}

/* Рядок іменин у «Моєму календарі» хабу: замість мініатюри — знак */
.hh-agenda .ndy-agenda-thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	background: color-mix(in srgb, var(--accent-color, #ff7618) 12%, transparent);
	color: var(--accent-color, #ff7618);
	font-size: 22px;
}

.hh-agenda .ndy-agenda-saint {
	white-space: normal;
}

/* ------------------------------------------------------- ім'я для дитини */

.ndy--baby {
	margin: 24px 0 30px;
}

.ndy-bdays {
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndy-bitem {
	margin: 0;
	padding: 0;
}

.ndy-bitem::before {
	content: none;
}

.ndy-bday {
	border: 1px solid var(--ndy-hair);
	border-radius: var(--ndy-radius-sm);
	background: var(--ndy-surface);
}

.ndy-bday[open] {
	border-color: var(--ndy-line);
}

.ndy-bday--eighth {
	border-color: color-mix(in srgb, var(--ndy-accent) 55%, transparent);
	background: linear-gradient(180deg, var(--ndy-tint) 0, transparent 160px), var(--ndy-surface);
}

.ndy-bday__sum {
	display: block;
	position: relative;
	padding: 13px 44px 13px 16px;
	cursor: pointer;
	list-style: none;
}

.ndy-bday__sum::-webkit-details-marker {
	display: none;
}

/* Шеврон праворуч: вниз — згорнуто, вгору — розгорнуто. */
.ndy-bday__sum::after {
	content: "";
	position: absolute;
	top: 20px;
	right: 18px;
	width: 8px;
	height: 8px;
	border: solid var(--ndy-accent);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
	transition: transform .15s ease;
}

.ndy-bday[open] > .ndy-bday__sum::after {
	top: 24px;
	transform: rotate(-135deg);
}

.ndy-bday__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
}

.ndy-bday__num {
	padding: 3px 10px;
	border: 1px solid color-mix(in srgb, var(--ndy-accent) 55%, transparent);
	border-radius: 999px;
	background: var(--ndy-tint);
	color: var(--ndy-ink);
	font-size: 12.5px;
	font-weight: 700;
	white-space: nowrap;
}

.ndy-bday--birth .ndy-bday__num {
	border-color: var(--ndy-ink);
	background: var(--ndy-ink);
	color: var(--ndy-surface);
}

.ndy-bday--eighth .ndy-bday__num {
	border-color: var(--ndy-accent);
	background: var(--ndy-accent);
	color: #fff;
}

.ndy-bday__date {
	color: var(--ndy-ink);
	font-size: 16px;
	font-weight: 700;
}

.ndy-bday__count {
	color: var(--ndy-faint);
	font-size: 13px;
}

.ndy-bday__note {
	display: block;
	margin: 10px 0 0;
	padding: 9px 12px;
	border-left: 3px solid var(--ndy-accent);
	border-radius: 0 8px 8px 0;
	background: var(--ndy-surface);
	color: var(--ndy-text);
	font-size: 13.5px;
	line-height: 1.5;
}

/* Перші імена дня — видно й у згорнутому дні. */
.ndy-bday__prev {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 6px;
	margin-top: 9px;
}

.ndy-bday__prev > span {
	padding: 2px 9px;
	border-radius: 999px;
	background: var(--ndy-wash);
	color: var(--ndy-text);
	font-size: 13px;
}

.ndy-bday[open] .ndy-bday__prev {
	display: none;
}

.ndy-bday__body {
	padding: 0 16px 12px;
}

.ndy-bnames {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
	gap: 0 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndy-bnames > li {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 6px 0;
	border-top: 1px solid var(--ndy-hair);
}

.ndy-bnames > li::before {
	content: none;
}

.ndy-bname {
	color: var(--ndy-ink);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}

a.ndy-bname:hover,
a.ndy-bname:focus-visible {
	color: var(--ndy-accent);
}

.ndy-bname__saint {
	color: var(--ndy-faint);
	font-size: 12.5px;
	line-height: 1.4;
}

.ndy-bday__extra {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 6px;
	margin: 10px 0 0;
	color: var(--ndy-muted);
	font-size: 13px;
}

.ndy-bday__extrak {
	color: var(--ndy-faint);
	font-weight: 600;
}

.ndy-bday__extra [data-g] {
	padding: 1px 8px;
	border: 1px solid var(--ndy-line);
	border-radius: 999px;
	cursor: help;
}

.ndy-bday__extrak .ndy-i {
	margin-right: -.22em;
}

.ndy--baby:has(input[name="g"][value="m"]:checked) .ndy-bday__extra:not([data-has-m]),
.ndy--baby:has(input[name="g"][value="f"]:checked) .ndy-bday__extra:not([data-has-f]) {
	display: none;
}

/* Фільтр «для хлопчика / для дівчинки» — на :has(), без скрипта. */
.ndy--baby:has(input[name="g"][value="m"]:checked) [data-g="f"],
.ndy--baby:has(input[name="g"][value="f"]:checked) [data-g="m"] {
	display: none;
}

.ndy-baby__more {
	margin: 16px 0 0;
	text-align: center;
}

.ndy .ndy-morebtn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 22px;
	border: 1px solid color-mix(in srgb, var(--ndy-accent) 50%, transparent);
	border-radius: 999px;
	background: var(--ndy-surface);
	color: var(--ndy-ink);
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}

.ndy .ndy-morebtn::after {
	content: "↓";
	color: var(--ndy-accent);
}

.ndy .ndy-morebtn:hover:not([disabled]) {
	background: var(--ndy-tint);
}

.ndy .ndy-morebtn[disabled] {
	opacity: .55;
	cursor: default;
}

.ndy--baby .ndy-group--gender {
	margin-top: 4px;
}

/* ------------------------------------------------------------ довідка */

.ndy-about {
	margin: 20px 0 0;
	border: 1px solid var(--ndy-hair);
	border-radius: var(--ndy-radius-sm);
	background: var(--ndy-wash);
}

.ndy-about__summary {
	display: flex;
	align-items: baseline;
	gap: 8px;
	list-style: none;
	padding: 12px 16px;
	color: var(--ndy-ink);
	font-size: 14.5px;
	font-weight: 600;
	cursor: pointer;
}

.ndy-about__body {
	padding: 0 16px 6px;
	font-size: 14px;
	line-height: 1.6;
}

.ndy-about__body p {
	margin: 0 0 10px;
}

.ndy-about__k {
	color: var(--ndy-ink);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ndy-about__sources {
	margin: 0 0 12px;
	padding-left: 18px;
	font-size: 13px;
}

/* ------------------------------------------------------------- темна тема */

html[scheme="dark"] .ndy {
	--ndy-line: color-mix(in srgb, var(--ndy-ink) 20%, transparent);
	--ndy-hair: color-mix(in srgb, var(--ndy-ink) 13%, transparent);
	--ndy-wash: color-mix(in srgb, var(--ndy-ink) 7%, transparent);
	--ndy-tint: color-mix(in srgb, var(--ndy-accent) 15%, transparent);
	--ndy-tint-strong: color-mix(in srgb, var(--ndy-accent) 25%, transparent);
}

html[scheme="dark"] .ndy-chip__dot {
	border-color: color-mix(in srgb, var(--ndy-ink) 40%, transparent);
}

html[scheme="dark"] .ndy-field input,
html[scheme="dark"] .ndy-answer,
html[scheme="dark"] .ndy-cal,
html[scheme="dark"] .ndy-bday,
html[scheme="dark"] .ndy-month,
html[scheme="dark"] .ndy-movable {
	background: color-mix(in srgb, var(--ndy-ink) 5%, var(--ndy-surface));
}

html[scheme="dark"] .ndy-field input {
	color-scheme: dark;
}

/* ------------------------------------------------------------- телефон */

@media (max-width: 600px) {
	.ndy__inner {
		padding: 22px 16px 20px;
		border-radius: 14px;
	}

	.ndy-chip {
		width: 100%;
	}

	.ndy-chips--small .ndy-chip,
	.ndy-tabs .ndy-chip {
		width: auto;
	}

	.ndy__go {
		width: 100%;
		justify-content: center;
	}

	.ndy-row--movable {
		grid-template-columns: 1fr;
		gap: 2px;
	}

	.ndy-answer {
		padding: 16px;
	}

	.ndy-today__head {
		gap: 14px;
	}

	.ndy-today__tile {
		width: 72px;
	}

	.ndy-today__num {
		font-size: 32px;
	}

	.ndy-field--date {
		max-width: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ndy-dpop.is-sheet,
	.ndy-dpop-backdrop,
	.ndy-result,
	.ndy--finder.is-busy .ndy__goicon {
		animation: none;
	}
}
