/**
 * Ведический календарь — оформление вывода движка.
 * plg_content_vediccalendar
 *
 * Палитра взята из самого движка:
 *   оранжевый  #e65100 / #fff9f0 — дни экадаши
 *   зелёный    #2e7d32 / #f4fbf5 — выход из поста (парана)
 *   фиолетовый #4b0082 / #f3effa — ведические праздники
 *   синий      #1565c0           — брахма-мухурта
 */

.ekadashi-calendar-container,
#vedic-calendar-container {
	--vc-ekadashi: #e65100;
	--vc-ekadashi-bg: #fff9f0;
	--vc-ekadashi-border: #ffe0b2;
	--vc-parana: #2e7d32;
	--vc-parana-bg: #f4fbf5;
	--vc-parana-border: #c8e6c9;
	--vc-holiday: #4b0082;
	--vc-holiday-bg: #f3effa;
	--vc-holiday-border: #dcd1f0;
	--vc-brahma: #1565c0;
	--vc-ink: #2b2b2b;
	--vc-muted: #6b6b6b;
	--vc-line: #e4e4e7;
	--vc-surface: #ffffff;
	--vc-radius: 10px;
}

/* ------------------------------------------------------------------ */
/* Общий контейнер                                                     */
/* ------------------------------------------------------------------ */

.ekadashi-calendar-container {
	color: var(--vc-ink);
	line-height: 1.55;
}

#vedic-calendar-container {
	display: block;
	margin-top: 28px;
}

.ekadashi-calendar-discription,
.ekadashi-calendar-intro {
	margin: 0 0 16px;
	color: var(--vc-ink);
}

.ekadashi-calendar-discription em,
.ekadashi-calendar-intro em {
	color: var(--vc-parana);
	font-style: normal;
	font-weight: 600;
}

/* Заголовки блоков */

.ekadashi-calendar-coordinates-title,
.ekadashi-calendar-day,
.nearest-ekadashi-title,
.calendar-ekadashi-title {
	margin: 26px 0 14px;
	font-size: 1.32rem;
	line-height: 1.3;
	font-weight: 700;
	color: var(--vc-ink);
}

.nearest-ekadashi-title {
	padding-bottom: 8px;
	border-bottom: 2px solid var(--vc-ekadashi-border);
}

/* ------------------------------------------------------------------ */
/* Координаты и часовой пояс                                           */
/* ------------------------------------------------------------------ */

.ekadashi-calendar-coordinates {
	display: grid;
	gap: 4px;
	padding: 12px 14px;
	background: #fafafa;
	border: 1px solid var(--vc-line);
	border-radius: var(--vc-radius);
	font-size: 0.93rem;
}

.ekadashi-calendar-meta-box {
	margin: 12px 0 4px;
	padding: 10px 14px;
	border-left: 3px solid var(--vc-brahma);
	background: #f5f9ff;
	border-radius: 0 var(--vc-radius) var(--vc-radius) 0;
	font-size: 0.9rem;
	color: var(--vc-muted);
}

/* ------------------------------------------------------------------ */
/* Сегодняшний день                                                    */
/* ------------------------------------------------------------------ */

.ekadashi-calendar-day-date {
	margin: 0 0 4px;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--vc-ekadashi);
}

.ekadashi-calendar-day-date-descr {
	margin: 0 0 14px;
	color: var(--vc-muted);
}

/* ------------------------------------------------------------------ */
/* Карточки ближайших экадаши                                          */
/* ------------------------------------------------------------------ */

.ekadashi-calendar-card {
	margin: 0 0 14px;
	padding: 16px 18px;
	background: var(--vc-ekadashi-bg);
	border: 1px solid var(--vc-ekadashi-border);
	border-left: 4px solid var(--vc-ekadashi);
	border-radius: var(--vc-radius);
}

.ekadashi-calendar-header {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 6px 12px;
	margin-bottom: 10px;
}

.ekadashi-calendar-date {
	font-weight: 700;
	color: var(--vc-ekadashi);
}

.ekadashi-calendar-name {
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--vc-ink);
}

.ekadashi-card-short-desc {
	margin: 8px 0 0;
	padding-left: 12px;
	border-left: 2px solid var(--vc-ekadashi-border);
	color: var(--vc-muted);
	font-size: 0.93rem;
	font-style: italic;
	line-height: 1.5;
}

.ekadashi-calendar-description-link {
	display: inline-block;
	margin-top: 10px;
	font-weight: 600;
	color: var(--vc-ekadashi);
	text-decoration: none;
	border-bottom: 1px dashed currentColor;
}

.ekadashi-calendar-description-link:hover,
.ekadashi-calendar-description-link:focus {
	color: #bf360c;
	border-bottom-style: solid;
}

/* Блок выхода из поста внутри карточки */

.ekadashi-calendar-break-fast-block {
	margin-top: 12px;
	padding: 12px 14px;
	background: var(--vc-parana-bg);
	border: 1px solid var(--vc-parana-border);
	border-radius: 8px;
}

.ekadashi-calendar-sub-title {
	margin-bottom: 6px;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--vc-parana);
}

.ekadashi-calendar-break-date,
.ekadashi-calendar-break-time {
	font-size: 0.95rem;
}

.ekadashi-calendar-break-date strong,
.ekadashi-calendar-break-time strong {
	color: var(--vc-muted);
	font-weight: 600;
}

.ekadashi-calendar-time-value {
	font-weight: 700;
	color: var(--vc-parana);
}

.ekadashi-calendar-time-empty {
	color: #9a9a9a;
	font-style: italic;
}

/* ------------------------------------------------------------------ */
/* Легенда                                                             */
/* ------------------------------------------------------------------ */

.ekadashi-calendar-legend {
	margin: 16px 0 22px;
	padding: 14px 16px;
	background: #fafafa;
	border: 1px solid var(--vc-line);
	border-radius: var(--vc-radius);
	font-size: 0.92rem;
}

.ekadashi-calendar-legend > strong {
	display: block;
	margin-bottom: 8px;
}

.ekadashi-calendar-legend-marker {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 8px;
	border-radius: 4px;
	vertical-align: -3px;
}

/* ------------------------------------------------------------------ */
/* Аккордеон месяцев (нативный <details>)                              */
/* ------------------------------------------------------------------ */

.vedic-accordion {
	display: grid;
	gap: 10px;
	margin-top: 6px;
}

.vedic-accordion-item {
	background: var(--vc-surface);
	border: 1px solid var(--vc-line);
	border-radius: var(--vc-radius);
	overflow: hidden;
}

.vedic-accordion-item[open] {
	border-color: var(--vc-ekadashi-border);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.vedic-accordion-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	background: #fafafa;
	cursor: pointer;
	list-style: none;
	user-select: none;
	transition: background 0.15s ease;
}

/* Прячем стандартный треугольник в Safari и Chrome */
.vedic-accordion-summary::-webkit-details-marker {
	display: none;
}

.vedic-accordion-summary::marker {
	content: '';
}

.vedic-accordion-summary:hover {
	background: #f3f3f3;
}

.vedic-accordion-summary:focus-visible {
	outline: 2px solid var(--vc-brahma);
	outline-offset: -2px;
}

.vedic-accordion-item[open] .vedic-accordion-summary {
	background: var(--vc-ekadashi-bg);
	border-bottom: 1px solid var(--vc-ekadashi-border);
}

/* Заголовок месяца — настоящий h3, но визуально спокойный */
.vedic-accordion-title {
	margin: 0;
	font-size: 1.02rem;
	font-weight: 700;
	line-height: 1.35;
	color: var(--vc-ink);
}

.vedic-accordion-item[open] .vedic-accordion-title {
	color: var(--vc-ekadashi);
}

/* Стрелка-указатель */
.vedic-accordion-marker {
	flex: 0 0 auto;
	width: 9px;
	height: 9px;
	border-right: 2px solid var(--vc-muted);
	border-bottom: 2px solid var(--vc-muted);
	transform: rotate(45deg) translate(-2px, -2px);
	transition: transform 0.18s ease;
}

.vedic-accordion-item[open] .vedic-accordion-marker {
	border-color: var(--vc-ekadashi);
	transform: rotate(-135deg) translate(-2px, -2px);
}

.ekadashi-calendar-slider-content {
	padding: 14px 16px 16px;
}

.vedic-accordion-empty {
	padding: 10px 2px;
	color: var(--vc-muted);
	font-style: italic;
}

/* ------------------------------------------------------------------ */
/* Строка дня внутри месяца                                            */
/* ------------------------------------------------------------------ */

.ekadashi-calendar-day-row {
	margin-bottom: 10px;
	padding: 12px 14px;
	background: #ffffff;
	border: 1px solid #ebdcb9;
	border-radius: 8px;
}

.ekadashi-calendar-day-row:last-child {
	margin-bottom: 0;
}

/* Тип дня */
.ekadashi-calendar-day-row.is-ekadashi {
	background: var(--vc-ekadashi-bg);
	border-color: var(--vc-ekadashi-border);
}

.ekadashi-calendar-day-row.is-parana {
	background: var(--vc-parana-bg);
	border-color: var(--vc-parana-border);
}

.ekadashi-calendar-day-row.is-holiday {
	background: var(--vc-holiday-bg);
	border-color: var(--vc-holiday-border);
}

.ekadashi-calendar-day-title {
	margin-bottom: 6px;
	font-size: 0.98rem;
	font-weight: 700;
	color: var(--vc-ekadashi);
}

.ekadashi-calendar-day-title::before {
	content: '';
	display: inline-block;
	width: 9px;
	height: 9px;
	margin-right: 8px;
	background: currentColor;
	transform: rotate(45deg);
	vertical-align: 1px;
}

.ekadashi-calendar-day-desc {
	margin-bottom: 6px;
	font-size: 0.87rem;
	font-weight: 500;
	color: #333;
}

.day-events-lines {
	display: grid;
	gap: 2px;
}

/* Восход, полдень, закат */
.ekadashi-calendar-sun-phase-line {
	font-size: 0.89rem;
	color: var(--vc-muted);
}

/* Маркер — цветная точка, а не эмодзи: символы могут уже быть в самом TXT-файле */
.ekadashi-calendar-sun-phase-line::before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 8px;
	border-radius: 50%;
	vertical-align: 1px;
	background: #cfcfcf;
}

.sun-rise-line::before {
	background: #ffb74d;
}

.sun-noon-line::before {
	background: #ffd54f;
}

.sun-set-line::before {
	background: #ef6c00;
}

/* Брахма-мухурта и прочие события дня */
.ekadashi-calendar-general-event-line {
	margin-bottom: 3px;
	font-size: 0.94rem;
}

.ekadashi-calendar-general-event-line.is-brahma {
	display: flex;
	align-items: flex-start;
	margin-top: 5px;
	font-weight: 700;
	color: var(--vc-brahma);
}

.ekadashi-calendar-general-event-line.is-holiday {
	font-weight: 600;
	color: var(--vc-holiday);
}

.ekadashi-calendar-general-event-line.is-parana {
	color: #444;
}

.ekadashi-calendar-yoga-icon {
	flex: 0 0 auto;
	width: 12px;
	height: 12px;
	margin: 5px 8px 0 0;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 35%, #90caf9, var(--vc-brahma));
}

/* ------------------------------------------------------------------ */
/* Адаптив                                                             */
/* ------------------------------------------------------------------ */

@media (max-width: 600px) {
	.ekadashi-calendar-card,
	.ekadashi-calendar-day-row {
		padding: 12px;
	}

	.ekadashi-calendar-slider-content {
		padding: 12px;
	}

	.vedic-accordion-summary {
		padding: 12px;
	}

	.ekadashi-calendar-coordinates-title,
	.ekadashi-calendar-day,
	.nearest-ekadashi-title,
	.calendar-ekadashi-title {
		font-size: 1.18rem;
	}

	.ekadashi-calendar-header {
		gap: 4px;
	}
}

/* Печать: раскрываем все месяцы */
@media print {
	.vedic-accordion-item {
		break-inside: avoid;
	}

	.vedic-accordion-item:not([open]) > *:not(summary) {
		display: block !important;
	}

	.vedic-accordion-marker {
		display: none;
	}
}
