/**

 * TorrentMac: FAQ-блок на single post (аккордеон).

 * Orange gradient секция (как .tm-version-banner), белые карточки, ссылки #c22.

 */



.tm-app-faq {

	margin-inline: 0;

	padding: 20px;

	clear: both;

	box-sizing: border-box;

	position: relative;

	overflow: visible;

	background: linear-gradient(135deg, #fffbf3 0%, #fff4dc 48%, #ffefd0 100%);

	border: 1px solid #e8c96a;

	border-radius: 6px;

	box-shadow: 0 4px 18px rgba(180, 120, 20, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.85);

	font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

}



/* style.css: .single .hentry section { border-bottom: none } — иначе пропадает нижняя граница */

.single article.post .tm-app-faq {

	border: 1px solid #e8c96a !important;

	border-bottom: 1px solid #e8c96a !important;

}



.tm-app-faq__header {

	margin: 0 0 16px;

	padding-top: 0;

}



.tm-app-faq__title-row {

	display: flex;

	flex-wrap: wrap;

	align-items: baseline;

	gap: 8px 12px;

	margin: 0 0 12px;

}



/* Как .tm-alternatives__title / .tm-older-versions__title */

.tm-app-faq__title {

	font-size: 1.35em;

	margin: 0;

	padding: 0;

	color: #1a1a1a;

	font-weight: 600;

	border: none;

}



.tm-app-faq__count {

	font-size: 13px;

	font-weight: 500;

	line-height: 1.4;

	color: #6b7280;

	white-space: nowrap;

}



.tm-app-faq__accent {

	display: block;

	width: 40px;

	height: 3px;

	margin: 0 0 12px;

	background: linear-gradient(90deg, #f5a623 0%, #e67e22 100%);

	border: none;

	border-radius: 0;

}



/* Как .tm-alternatives__desc */

.tm-app-faq__subtitle {

	margin: 0;

	font-size: 12px;

	line-height: 1.45;

	color: #3d2f14;

}



.tm-app-faq__list {

	display: flex;

	flex-direction: column;

	gap: 8px;

	margin: 0;

	padding: 0;

	border: none;

	background: transparent;

	box-shadow: none;

	overflow: visible;

}



.tm-app-faq__item {

	overflow: hidden;

	background: #fff;

	border: 1px solid #e2e8f0;

	border-radius: 8px;

	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);

	transition: border-color 0.15s ease, box-shadow 0.15s ease;

}



.tm-app-faq__item:hover {

	border-color: #cbd5e1;

	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);

}



.tm-app-faq__item.is-open {

	background: #fff;

	border-color: #e2e8f0;

	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);

	overflow: hidden;

}



.tm-app-faq__trigger {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

	width: 100%;

	margin: 0;

	padding: 14px 16px;

	border: 0;

	background: #fff;

	color: #1a1a1a;

	font: inherit;

	font-size: 15px;

	font-weight: 600;

	line-height: 1.45;

	text-align: left;

	cursor: pointer;

	transition: color 0.15s ease, background-color 0.15s ease;

}



.tm-app-faq__trigger:hover,

.tm-app-faq__trigger:focus {

	background: #fffcf8;

	color: #1a1a1a;

	outline: none;

}



.tm-app-faq__item.is-open .tm-app-faq__trigger {

	background: #fff;

	color: #1a1a1a;

}



.tm-app-faq__item.is-open .tm-app-faq__trigger:hover,

.tm-app-faq__item.is-open .tm-app-faq__trigger:focus {

	background: #fff;

}



.tm-app-faq__trigger:focus-visible {

	outline: 2px solid #c22;

	outline-offset: 2px;

	box-shadow: none;

}



.tm-app-faq__question {

	flex: 1 1 auto;

	min-width: 0;

}



.tm-app-faq__icon {

	flex: 0 0 auto;

	display: inline-block;

	width: 0.5rem;

	height: 0.5rem;

	margin-top: 0;

	border-right: 2px solid #64748b;

	border-bottom: 2px solid #64748b;

	transform: rotate(45deg);

	transition: transform 0.25s ease, border-color 0.15s ease;

}



.tm-app-faq__item.is-open .tm-app-faq__icon {

	transform: rotate(225deg);

	border-color: #e67e22;

}



.tm-app-faq__panel {

	display: grid;

	grid-template-rows: 0fr;

	width: 100%;

	margin: 0;

	box-sizing: border-box;

	overflow: hidden;

	border-top: 1px solid transparent;

	background: transparent;

	transition: grid-template-rows 0.25s ease, border-color 0.25s ease;

}



.tm-app-faq__panel[hidden] {

	display: none;

}



.tm-app-faq__item.is-open .tm-app-faq__panel {

	grid-template-rows: 1fr;

	border-top-color: #e2e8f0;

	background: #fffcf8;

}



.tm-app-faq__answer {

	min-height: 0;

	width: 100%;

	box-sizing: border-box;

	overflow: hidden;

	padding: 0;

	color: #374151;

	font-size: 14px;

	line-height: 1.6;

	font-weight: 400;

}



/* Постоянный padding — без скачка при открытии аккордеона */

.tm-app-faq__answer-inner {

	padding: 12px 16px 14px;

	box-sizing: border-box;

	background: #fffcf8;

}



.tm-app-faq__answer p {

	margin: 0 0 0.75rem;

}



.tm-app-faq__answer p:last-child {

	margin-bottom: 0;

}



.tm-app-faq__summary {

	color: #374151;

}



.tm-app-faq__answer a,

.tm-app-faq__guide a {

	color: #c22;

	font-weight: 500;

	text-decoration: none;

	text-underline-offset: 0.12em;

	transition: color 0.15s ease, text-decoration-color 0.15s ease;

}



.tm-app-faq__answer a:hover,

.tm-app-faq__answer a:focus,

.tm-app-faq__guide a:hover,

.tm-app-faq__guide a:focus {

	color: #a11;

	text-decoration: underline;

}



.single article.post .tm-app-faq + footer #article-footer-meta {

	border-top: none !important;

	margin-top: 0;

	padding-top: 8px;

}



@media (max-width: 640px) {

	.tm-app-faq {

		padding: 16px;

		border-radius: 6px;

	}




	.tm-app-faq__header {

		margin-bottom: 14px;

	}



	.tm-app-faq__accent {

		margin-bottom: 10px;

	}



	.tm-app-faq__trigger {

		padding: 12px 14px;

		font-size: 14px;

	}



	.tm-app-faq__answer-inner {

		padding: 12px 14px 14px;

	}



	.tm-app-faq__answer {

		font-size: 13px;

	}

}


