/* Aliven 2026 — Radar: Calendário de obrigações e Agenda regulatória.
 * Complementa o radar.css (abertura, .al26-rlinks, atalhos). Prefixos: .al26-cal, .al26-ag, .al26-rc. */

.al26-radar-pg { overflow-x: clip; }

/* ---------- Aviso e notas ---------- */
.al26-cal-aviso { padding-bottom: 0; }
.al26-cal-aviso p, .al26-cal-nota p {
	margin: 0;
	max-width: 820px;
	padding: 22px 26px;
	border-radius: 16px;
	background: var(--al-marfim);
	font-size: 17px;
	line-height: 1.55;
}
.al26-cal-aviso a, .al26-cal-nota a, .al26-cal-notas a { color: var(--al-ciano-texto); text-decoration: underline; text-underline-offset: 3px; }
.al26-cal-nota { padding-top: 0; padding-bottom: 0; }

/* ---------- Calendário: lista de obrigações ---------- */
.al26-cal { padding-top: clamp(32px, 4vw, 56px); }
.al26-cal .al26-rlinks__intro p { max-width: 300px; }
.al26-cal__lista { margin: 0; padding: 0; list-style: none; }
.al26-cal__item:first-child { padding-top: 4px; }
.al26-cal__item {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 5fr) minmax(0, 3fr);
	gap: 16px clamp(16px, 2.5vw, 32px);
	margin: 0;
	padding: 28px 0;
	border-bottom: 1px solid var(--al-linha);
}
.al26-cal__sigla { margin: 0; font-size: clamp(24px, 2.4vw, 32px); font-weight: 600; letter-spacing: -0.03em; line-height: 1.05; overflow-wrap: anywhere; }
.al26-cal__trad { margin: 8px 0 0; font-size: 15px; line-height: 1.4; color: var(--al-cinza); }
.al26-cal__corpo p { margin: 0; font-size: 17px; line-height: 1.55; }
.al26-cal__corpo .al26-cal__fonte { margin-top: 12px; font-size: 14px; line-height: 1.45; color: var(--al-cinza); }
.al26-cal__fonte a { color: var(--al-ciano-texto); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.al26-cal__fonte sup { font-size: .75em; line-height: 0; margin-left: .2em; }
.al26-cal__fonte sup a { text-decoration: none; font-weight: 600; padding: 0 .1em; }
.al26-cal__prazo {
	align-self: start;
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 16px 20px;
	border-radius: 16px;
	background: var(--al-marfim);
	box-sizing: border-box;
}
.al26-cal__prazo--conferir { background: transparent; border: 1.5px dashed var(--al-cinza); padding: 14.5px 18.5px; }
.al26-cal__prazo--fim { background: var(--al-tinta); color: var(--al-branco); }
.al26-cal__prazo--fim .al26-cal__rotulo { color: var(--al-limao); }
.al26-cal__rotulo { font-size: 13px; font-weight: 600; color: var(--al-ciano-texto); }
.al26-cal__detalhe { font-size: 14px; line-height: 1.45; color: var(--al-cinza); }
.al26-cal__prazo--fim .al26-cal__detalhe { color: rgba(255, 255, 255, .8); }
.al26-cal__valor { font-size: 18px; font-weight: 600; line-height: 1.35; letter-spacing: -0.01em; }

.al26-cal-notas { padding-top: clamp(32px, 4vw, 56px); }
.al26-cal-notas__titulo, .al26-ag-h2 {
	margin: 0 0 20px;
	font-size: clamp(28px, 3.2vw, 44px);
	font-weight: 600;
	letter-spacing: -0.035em;
	line-height: 1.08;
}
.al26-cal-notas__titulo { font-size: clamp(22px, 2.2vw, 28px); }
.al26-cal-notas__lista { max-width: 820px; margin: 0; padding-left: 1.4em; font-size: 15px; line-height: 1.55; color: var(--al-cinza); }
.al26-cal-notas__lista li { margin: 0 0 .5em; padding-left: .2em; }
.al26-cal-notas__fontes { max-width: 820px; margin: 24px 0 0; font-size: 15px; line-height: 1.6; color: var(--al-cinza); }

/* ---------- Fecho: convite ao contato ---------- */
.al26-rc-fecho {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px 40px;
	padding: clamp(28px, 3.3vw, 44px);
	border-radius: var(--al-raio-caixa);
	background: var(--al-tinta);
	color: var(--al-branco);
	box-sizing: border-box;
}
.al26-rc-fecho__titulo { margin: 12px 0 0; font-size: clamp(24px, 2.6vw, 34px); line-height: 1.12; font-weight: 600; letter-spacing: -0.03em; color: var(--al-branco); }
.al26-rc-fecho__texto { margin: 12px 0 0; max-width: 520px; font-size: 17px; color: rgba(255, 255, 255, .82); }
.al26-rc-fecho .al26-botao { flex: none; }

/* ---------- Agenda: abertura e intro ---------- */
.al26-ag-intro__grade { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(24px, 5vw, 80px); align-items: start; }
.al26-ag-intro__grade .al26-rotulo { display: block; margin-bottom: 16px; }
.al26-ag-intro__texto p { margin: 0 0 1.1em; max-width: 68ch; font-size: 19px; line-height: 1.65; }
.al26-ag-intro__texto strong { font-weight: 600; }
.al26-ag-sub { margin: 0 0 32px; max-width: 620px; font-size: 17px; line-height: 1.5; color: var(--al-cinza); }
.al26-ag-h3 { margin: 0 0 8px; font-size: 24px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; }

/* ---------- Agenda: eixos e temas ---------- */
.al26-ag .al26-rlinks__intro .al26-rotulo { display: block; margin-bottom: 12px; color: var(--al-ciano-texto); }
.al26-ag .al26-ag-eixo { font-size: clamp(24px, 2.4vw, 32px); letter-spacing: -0.03em; }
.al26-ag__lista { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--al-linha); }
.al26-ag__tema {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 190px;
	gap: 12px 32px;
	margin: 0;
	padding: 24px 0;
	border-bottom: 1px solid var(--al-linha);
}
.al26-ag__nome { margin: 0; color: var(--al-tinta); text-transform: none; font-size: 20px; font-weight: 600; letter-spacing: -0.01em; line-height: 1.25; }
.al26-ag__corpo p { margin: 8px 0 0; font-size: 17px; line-height: 1.55; color: #1d2222; }
.al26-ag__quando { display: flex; flex-direction: column; gap: 4px; align-self: start; padding: 12px 16px; border-radius: 12px; background: var(--al-marfim); }
.al26-ag__rotulo { font-size: 13px; font-weight: 600; color: var(--al-ciano-texto); }
.al26-ag__valor { font-size: 17px; font-weight: 600; line-height: 1.3; }

/* ---------- Agenda: o que muda ---------- */
.al26-ag-muda .al26-rotulo { display: block; margin-bottom: 16px; }
.al26-ag-muda__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 32px; }
.al26-ag-card { padding: 28px 32px; border-radius: 20px; background: var(--al-marfim); }
.al26-ag-card:nth-child(1) { background: var(--al-limao); }
.al26-ag-card h3 { margin: 0 0 10px; font-size: 22px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; }
.al26-ag-card p { margin: 0; font-size: 17px; line-height: 1.55; }
.al26-ag-fecho { max-width: 820px; margin: 32px 0 0; font-size: 19px; line-height: 1.6; }
.al26-ag-fecho .al26-link { white-space: nowrap; }

.al26-ag-mais__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 5vw, 80px); }
.al26-ag-mais .al26-ag-sub { margin-bottom: 16px; }
.al26-ag-lista { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--al-linha); }
.al26-ag-lista li { margin: 0; padding: 14px 0; border-bottom: 1px solid var(--al-linha); font-size: 17px; line-height: 1.45; }

/* ---------- Celular e tablet ---------- */
@media (max-width: 900px) {
	.al26-cal__item { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 24px 0; }
	.al26-cal__prazo { align-self: stretch; }
	.al26-ag-intro__grade, .al26-ag-mais__grade, .al26-ag-muda__grade { grid-template-columns: minmax(0, 1fr); }
	.al26-ag__tema { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.al26-ag__quando { align-self: stretch; }
	.al26-rc-fecho { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 600px) {
	.al26-rc-fecho .al26-botao { width: 100%; }
	.al26-ag-card { padding: 24px; }
	.al26-ag-fecho .al26-link { white-space: normal; }
}
