/*
 * Agentes Academy — chrome do LearnDash.
 *
 * Só FORMA: tipografia, superfície, raio, espaçamento. As cores da marca vêm
 * do filtro `learndash_30_custom_colors` (ver aa-learndash-skin.php), que faz o
 * próprio LearnDash gerar as regras de cor — não duplicamos isso aqui.
 *
 * Todo valor lê a custom property do theme.json, com o hex da marca só como
 * fallback: a paleta continua tendo um ponto de controle
 * (themes/astra-child/theme.json). Navy #1f477b, azul #4480d8, laranja #f0902f.
 *
 * Escopo em .learndash-wrapper — fora dele o Astra e os blocos v7 mandam.
 * O conteúdo da lição (caixas de atenção, tabelas, código) é do
 * agentes-academy-treinamento/assets/material.css, que espelha o PDF do aluno.
 */

.learndash-wrapper {
	--aa-primary:        var(--wp--preset--color--primary, #1f477b);
	--aa-primary-light:  var(--wp--preset--color--primary-light, #4480d8);
	--aa-primary-soft:   var(--wp--preset--color--primary-soft, #e9f0fb);
	--aa-orange:         var(--wp--preset--color--secondary-bright, #f0902f);
	--aa-orange-soft:    var(--wp--preset--color--secondary-soft, #fdf2e2);
	--aa-bg-card:        var(--wp--preset--color--bg-card, #ffffff);
	--aa-bg-secondary:   var(--wp--preset--color--bg-secondary, #f1f5fa);
	--aa-bg-elevated:    var(--wp--preset--color--bg-elevated, #ecf2f9);
	--aa-border:         var(--wp--preset--color--border, #e3eaf4);
	--aa-border-strong:  var(--wp--preset--color--border-strong, #d0dcec);
	--aa-text:           var(--wp--preset--color--text-primary, #16283f);
	--aa-text-secondary: var(--wp--preset--color--text-secondary, #44566e);
	--aa-text-muted:     var(--wp--preset--color--text-muted, #64748b);
	--aa-radius-sm:      8px;
	--aa-radius-md:      12px;
	--aa-radius-lg:      20px;
	--aa-shadow-sm:      0 1px 2px rgba(22, 40, 63, .04);
	--aa-shadow-md:      0 4px 12px rgba(22, 40, 63, .06);
	--aa-font-sans:      'Inter', system-ui, -apple-system, sans-serif;
	--aa-font-mono:      'JetBrains Mono', ui-monospace, 'SF Mono', monospace;
}

/* ------------------------------------------------------------------ *
 * Tipografia — o LD30 traz a própria escala e ela destoa do site.
 * ------------------------------------------------------------------ */

.learndash-wrapper,
.learndash-wrapper button,
.learndash-wrapper input,
.learndash-wrapper select,
.learndash-wrapper textarea {
	font-family: var(--aa-font-sans);
	color: var(--aa-text);
}

.learndash-wrapper h1,
.learndash-wrapper h2,
.learndash-wrapper h3,
.learndash-wrapper .ld-focus-header .ld-course-navigation-heading,
.learndash-wrapper .ld-item-title {
	font-weight: 800;
	letter-spacing: -.022em;
	line-height: 1.2;
	color: var(--aa-text);
}

.learndash-wrapper .ld-section-heading h2,
.learndash-wrapper .ld-section-heading h3 {
	font-size: 1.35rem;
}

/* ------------------------------------------------------------------ *
 * Superfícies — o LD lista lições em blocos retos e sem elevação;
 * o site inteiro é cartão com raio e sombra baixa.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-item-list .ld-item-list-item,
.learndash-wrapper .ld-course-status,
.learndash-wrapper .ld-table-list-header,
.learndash-wrapper .ld-alert {
	border-radius: var(--aa-radius-md);
	border: 1px solid var(--aa-border);
	background: var(--aa-bg-card);
	box-shadow: var(--aa-shadow-sm);
}

.learndash-wrapper .ld-item-list .ld-item-list-item {
	margin-bottom: 10px;
	transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease;
}

.learndash-wrapper .ld-item-list .ld-item-list-item:hover {
	border-color: var(--aa-border-strong);
	box-shadow: var(--aa-shadow-md);
	transform: translateY(-1px);
}

/* A lição em curso é o único item que o aluno procura ao voltar. */
.learndash-wrapper .ld-item-list .ld-item-list-item.ld-is-next {
	border-left: 3px solid var(--aa-orange);
	background: var(--aa-bg-card);
}

.learndash-wrapper .ld-course-status {
	padding: 20px;
}

.learndash-wrapper .ld-course-status .ld-course-status-label {
	color: var(--aa-text-muted);
	font-size: .78rem;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
}

/* ------------------------------------------------------------------ *
 * Progresso — laranja da marca.
 *
 * O verde do LD (secondary) marca o que JÁ está concluído; a barra mostra o
 * caminho ainda em curso. Laranja aqui é o estado entre "não comecei" e
 * "concluí", e é onde a marca aparece com mais frequência para o aluno.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-progress .ld-progress-bar {
	background: var(--aa-bg-elevated);
	border-radius: 999px;
	overflow: hidden;
	height: 8px;
	border: none;
}

.learndash-wrapper .ld-progress .ld-progress-bar .ld-progress-bar-percentage {
	background: var(--aa-orange);
	border-radius: 999px;
	transition: width .4s ease;
}

.learndash-wrapper .ld-progress .ld-progress-heading {
	font-size: .82rem;
	font-weight: 600;
	color: var(--aa-text-secondary);
}

.learndash-wrapper .ld-progress .ld-progress-stats {
	color: var(--aa-text-muted);
	font-size: .8rem;
}

/* ------------------------------------------------------------------ *
 * Botões — mesmo peso e raio dos botões do site.
 * A COR vem do filtro do LD; aqui só a forma.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-button,
.learndash-wrapper .learndash_mark_complete_button,
.learndash-wrapper #learndash_mark_complete_button {
	border-radius: var(--aa-radius-sm);
	font-family: var(--aa-font-sans);
	font-weight: 600;
	font-size: .95rem;
	letter-spacing: -.01em;
	padding: 12px 24px;
	box-shadow: var(--aa-shadow-sm);
	transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.learndash-wrapper .ld-button:hover:not([disabled]),
.learndash-wrapper .learndash_mark_complete_button:hover:not([disabled]) {
	transform: translateY(-1px);
	box-shadow: var(--aa-shadow-md);
}

.learndash-wrapper .ld-button:focus-visible,
.learndash-wrapper .learndash_mark_complete_button:focus-visible,
.learndash-wrapper a:focus-visible {
	outline: 2px solid var(--aa-primary-light);
	outline-offset: 2px;
}

/* ------------------------------------------------------------------ *
 * Focus mode — é onde o aluno passa a maior parte das horas.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-focus-header {
	background: var(--aa-bg-card);
	border-bottom: 1px solid var(--aa-border);
	box-shadow: var(--aa-shadow-sm);
}

.learndash-wrapper .ld-focus-header #ld-focus-mode-course-heading {
	font-weight: 700;
	letter-spacing: -.015em;
}

.learndash-wrapper .ld-focus-sidebar,
.learndash-wrapper .ld-focus-sidebar .ld-course-navigation-heading {
	background: var(--aa-bg-secondary);
}

.learndash-wrapper .ld-focus-sidebar .ld-course-navigation-heading {
	border-bottom: 1px solid var(--aa-border);
}

.learndash-wrapper .ld-focus-sidebar .ld-lesson-item {
	border-bottom: 1px solid var(--aa-border);
}

.learndash-wrapper .ld-focus-sidebar .ld-lesson-item.ld-is-current-lesson {
	background: var(--aa-primary-soft);
	border-left: 3px solid var(--aa-primary);
}

.learndash-wrapper .ld-focus-sidebar .ld-lesson-item .ld-lesson-title {
	font-weight: 600;
	font-size: .92rem;
}

.learndash-wrapper .ld-focus-main {
	background: var(--wp--preset--color--bg-primary, #fafcfe);
}

/* ------------------------------------------------------------------ *
 * Abas e navegação de conteúdo.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab {
	font-weight: 600;
	font-size: .92rem;
	border-radius: var(--aa-radius-sm) var(--aa-radius-sm) 0 0;
}

.learndash-wrapper .ld-tabs .ld-tabs-content {
	border-radius: 0 0 var(--aa-radius-md) var(--aa-radius-md);
	border: 1px solid var(--aa-border);
	border-top: none;
	background: var(--aa-bg-card);
}

.learndash-wrapper .ld-content-actions {
	border-top: 1px solid var(--aa-border);
	padding-top: 20px;
}

/* ------------------------------------------------------------------ *
 * Quiz (wpProQuiz) — o componente mais datado do LearnDash.
 * ------------------------------------------------------------------ */

.learndash-wrapper .wpProQuiz_content {
	font-family: var(--aa-font-sans);
}

.learndash-wrapper .wpProQuiz_listItem,
.learndash-wrapper .wpProQuiz_question {
	border-radius: var(--aa-radius-md);
}

.learndash-wrapper .wpProQuiz_questionList {
	border: none;
}

.learndash-wrapper .wpProQuiz_questionListItem {
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius-sm);
	margin-bottom: 8px;
	padding: 12px 14px;
	background: var(--aa-bg-card);
	transition: border-color .15s ease, background-color .15s ease;
}

.learndash-wrapper .wpProQuiz_questionListItem:hover {
	border-color: var(--aa-primary-light);
	background: var(--aa-primary-soft);
}

.learndash-wrapper .wpProQuiz_questionListItem label {
	font-size: .95rem;
	line-height: 1.55;
	cursor: pointer;
}

.learndash-wrapper .wpProQuiz_header,
.learndash-wrapper .wpProQuiz_text {
	font-size: .95rem;
	color: var(--aa-text-secondary);
}

/* O enunciado costuma trazer trecho de código — o material usa JetBrains Mono. */
.learndash-wrapper .wpProQuiz_question_text code,
.learndash-wrapper .wpProQuiz_questionListItem code {
	font-family: var(--aa-font-mono);
	font-size: .88em;
	background: var(--aa-bg-elevated);
	border-radius: 4px;
	padding: 2px 6px;
}

/* ------------------------------------------------------------------ *
 * Alertas e estados.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-alert {
	padding: 16px 20px;
	font-size: .93rem;
}

.learndash-wrapper .ld-alert .ld-alert-content {
	line-height: 1.55;
}

.learndash-wrapper .ld-status {
	border-radius: 999px;
	font-size: .74rem;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	padding: 5px 12px;
}

/* ------------------------------------------------------------------ *
 * Perfil do aluno ([ld_profile] — /meus-cursos).
 *
 * O LD entrega nome em escala de manchete, estatísticas em preto pesado e
 * divisórias duras. Aqui vira o cartão + stat tiles da linguagem da home:
 * número navy, rótulo mono uppercase, tudo respirando.
 * ------------------------------------------------------------------ */

.learndash-wrapper .ld-profile-summary {
	max-width: 720px;
	margin: 0 auto 40px;
}

.learndash-wrapper .ld-profile-card {
	background: var(--aa-bg-card);
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius-lg);
	box-shadow: var(--aa-shadow-md);
	padding: 34px 28px 28px;
	text-align: center;
}

.learndash-wrapper .ld-profile-avatar img.avatar {
	width: 88px;
	height: 88px;
	border-radius: 999px;
	box-shadow: 0 0 0 4px var(--aa-primary-soft);
}

.learndash-wrapper h2.ld-profile-heading {
	font-size: 1.45rem;
	letter-spacing: -.02em;
	margin: 16px 0 6px;
}

.learndash-wrapper .ld-profile-edit-link {
	display: inline-block;
	font-size: .84rem;
	font-weight: 600;
	color: var(--aa-primary);
	text-decoration: none;
	padding: 5px 14px;
	border: 1px solid var(--aa-border-strong);
	border-radius: 999px;
	transition: background-color .15s ease, border-color .15s ease;
}

.learndash-wrapper .ld-profile-edit-link:hover {
	background: var(--aa-primary-soft);
	border-color: var(--aa-primary-light);
}

.learndash-wrapper .ld-profile-stats {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(20px, 5vw, 56px);
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid var(--aa-border);
}

.learndash-wrapper .ld-profile-stat {
	text-align: center;
	border: none;
	padding: 0;
}

.learndash-wrapper .ld-profile-stat strong {
	display: block;
	font-size: 1.9rem;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.15;
	color: var(--aa-primary);
}

.learndash-wrapper .ld-profile-stat span {
	font-family: var(--aa-font-mono);
	font-size: .7rem;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--aa-text-muted);
}

/* ------------------------------------------------------------------ *
 * Páginas do aluno — título e medida (FORA do .learndash-wrapper).
 *
 * O h1 é o wp-block-post-title do tema e a coluna é o contentSize de 645px
 * do Twenty Twenty-Five — manchete crua e conteúdo espremido. O escopo por
 * body class cobre /meus-cursos (aa-pagina-aluno, classe do aa-area-aluno)
 * e os singles do LearnDash. Focus mode está desligado: lição e tópico
 * renderizam no template normal do tema, com o header do site.
 * ------------------------------------------------------------------ */

body.aa-pagina-aluno main,
body.single-sfwd-courses main {
	--wp--style--global--content-size: 1040px;
	--wp--style--global--wide-size: 1100px;
}

/* Lição, tópico e prova são leitura longa — medida de texto técnico. */
body.single-sfwd-lessons main,
body.single-sfwd-topic main,
body.single-sfwd-quiz main {
	--wp--style--global--content-size: 880px;
	--wp--style--global--wide-size: 960px;
}

body.aa-pagina-aluno .wp-block-post-title,
body.single-sfwd-courses .wp-block-post-title,
body.single-sfwd-lessons .wp-block-post-title,
body.single-sfwd-topic .wp-block-post-title,
body.single-sfwd-quiz .wp-block-post-title {
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.12;
	font-size: clamp(1.9rem, 3.4vw, 2.6rem);
	color: var(--wp--preset--color--text-primary, #16283f);
}

/* O byline do template ("Escrito por treino-bot em …") não é informação para
 * o aluno — é o robô de carga aparecendo como autor. Some nos singles do LD. */
body.single-sfwd-courses .wp-block-group:has(> .wp-block-post-author-name),
body.single-sfwd-lessons .wp-block-group:has(> .wp-block-post-author-name),
body.single-sfwd-topic .wp-block-group:has(> .wp-block-post-author-name),
body.single-sfwd-quiz .wp-block-group:has(> .wp-block-post-author-name) {
	display: none;
}

/* O parágrafo de abertura acompanha em tom de apoio, não de manchete. */
body.aa-pagina-aluno .wp-block-post-content > p:first-of-type {
	color: var(--wp--preset--color--text-secondary, #44566e);
	font-size: 1.05rem;
	line-height: 1.65;
}

body.single-sfwd-courses .wp-block-post-content > p {
	color: var(--wp--preset--color--text-secondary, #44566e);
	line-height: 1.7;
}

/* ------------------------------------------------------------------ *
 * Responsivo — a turma corporativa estuda muito no celular.
 * ------------------------------------------------------------------ */

@media (max-width: 640px) {
	.learndash-wrapper .ld-item-list .ld-item-list-item {
		margin-bottom: 8px;
	}

	.learndash-wrapper .ld-button,
	.learndash-wrapper .learndash_mark_complete_button {
		width: 100%;
		text-align: center;
		padding: 14px 20px;
	}

	.learndash-wrapper .ld-course-status {
		padding: 16px;
	}
}

/* Respeita quem pediu menos movimento no sistema. */
@media (prefers-reduced-motion: reduce) {
	.learndash-wrapper .ld-item-list .ld-item-list-item,
	.learndash-wrapper .ld-button,
	.learndash-wrapper .learndash_mark_complete_button,
	.learndash-wrapper .ld-progress .ld-progress-bar .ld-progress-bar-percentage {
		transition: none;
	}

	.learndash-wrapper .ld-item-list .ld-item-list-item:hover,
	.learndash-wrapper .ld-button:hover:not([disabled]) {
		transform: none;
	}
}
