/*
 * Селекторы начинаются с .opd и длиннее темовских: тема рисует маркеры через
 * `.content ul > li:before`, а инлайновый стиль страницы делает
 * `.content ul, .content ol { display: inline-block !important }`. Поэтому
 * списков здесь нет вовсе, а у всех flex/grid-контейнеров display объявлен
 * явно с !important (ловушки сайта, см. README).
 */
.opd {
	--opd-accent: #3f6b2c;
	--opd-accent-soft: #e7efdf;
	--opd-rule: #e0e4da;
	--opd-muted: #6b7568;
	--opd-disease: #a33;
	--opd-pest: #9a5b00;
	--opd-care: #2f5f8a;
	margin: 1.5em 0;
	font-size: 16px;
	line-height: 1.5;
	max-width: 560px;
}

.opd * {
	box-sizing: border-box;
}

.opd [hidden] {
	display: none !important;
}

.opd .opd-step {
	margin-bottom: 18px;
}

.opd .opd-step__title,
.opd label.opd-step__title {
	display: block;
	margin: 0 0 8px;
	font-weight: 600;
}

.opd select.opd-select {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid var(--opd-rule);
	border-radius: 6px;
	font-size: 16px;
	background: #fff;
}

.opd .opd-choices {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
}

.opd .opd-question {
	margin-bottom: 16px;
}

.opd .opd-choices button.opd-choice {
	display: inline-block !important;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid var(--opd-rule);
	border-radius: 18px;
	background: #fff;
	color: inherit;
	font-size: 15px;
	line-height: 1.3;
	text-align: left;
	cursor: pointer;
}

.opd .opd-choices button.opd-choice:hover {
	border-color: var(--opd-accent);
}

.opd .opd-choices button.opd-choice[aria-pressed="true"] {
	background: var(--opd-accent);
	border-color: var(--opd-accent);
	color: #fff;
}

.opd .opd-result {
	margin-top: 8px;
	padding: 16px;
	background: var(--opd-accent-soft);
	border-radius: 8px;
}

.opd .opd-result p.opd-result__title {
	margin: 0 0 12px;
	font-size: 18px;
	font-weight: 700;
}

.opd .opd-result div.opd-cause {
	margin: 0 0 12px;
	padding: 12px 14px;
	background: #fff;
	border-left: 4px solid var(--opd-muted);
	border-radius: 6px;
}

.opd .opd-result div.opd-cause--disease {
	border-left-color: var(--opd-disease);
}

.opd .opd-result div.opd-cause--pest {
	border-left-color: var(--opd-pest);
}

.opd .opd-result div.opd-cause--care {
	border-left-color: var(--opd-care);
}

.opd .opd-result p.opd-cause__head {
	display: block !important;
	margin: 0 0 6px;
}

.opd .opd-result span.opd-cause__num {
	margin-right: 6px;
	font-weight: 700;
	color: var(--opd-muted);
}

.opd .opd-result span.opd-cause__title {
	margin-right: 8px;
	font-weight: 700;
}

.opd .opd-result span.opd-cause__type {
	display: inline-block;
	font-size: 13px;
	color: var(--opd-muted);
}

.opd .opd-result p.opd-cause__text {
	margin: 0 0 6px;
}

.opd .opd-result p.opd-cause__more {
	margin: 0;
}

.opd .opd-note,
.opd .opd-result p.opd-note {
	margin: 0 0 12px;
	color: var(--opd-muted);
	font-size: 14px;
}

.opd .opd-result p.opd-disclaimer {
	margin: 12px 0;
	color: var(--opd-muted);
	font-size: 13px;
}

.opd .opd-result p.opd-actions {
	margin: 0;
}

.opd .opd-result button.opd-restart {
	background: var(--opd-accent);
	color: #fff;
	border: none;
	border-radius: 6px;
	padding: 10px 18px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
}

.opd .opd-result button.opd-restart:hover {
	opacity: 0.9;
}
