/**
 * Câmara Agenda — Frontend
 *
 * Padrão visual institucional, alinhado ao plugin Câmara Atas:
 *   - Data lateral em bloco sólido (cor principal)
 *   - Tipografia limpa, em maiúsculas para tipos
 *   - Sem gradientes coloridos diferentes; uma única cor dominante
 *   - SVGs discretos, sem emojis decorativos
 */

:root {
	--cag-cor-principal: #0a4595;
	--cag-cor-fundo-suave: #f9fafb;
	--cag-cor-borda: #e5e7eb;
	--cag-cor-texto: #1f2937;
	--cag-cor-texto-suave: #6b7280;
	--cag-radius: 8px;
	--cag-trans: 200ms ease;
}

/* =============================================================================
   PAINEL PRINCIPAL
   ============================================================================= */
.cag-painel {
	max-width: 1200px;
	margin: 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--cag-cor-texto);
}

.cag-painel-header {
	margin-bottom: 32px;
}
.cag-painel-header h1 {
	font-size: 32px !important;
	margin: 0 0 8px !important;
	color: var(--cag-cor-texto) !important;
	font-weight: 700;
}
.cag-painel-header p {
	font-size: 15px !important;
	color: var(--cag-cor-texto-suave) !important;
	margin: 0 0 16px !important;
}
.cag-painel-header::after {
	content: "";
	display: block;
	width: 56px;
	height: 4px;
	background: var(--cag-cor-principal);
	margin-top: 12px;
	border-radius: 2px;
}

/* =============================================================================
   DESTAQUE NA HOME — Apple Design System
   ============================================================================= */
.cag-destaque-home {
	--cag-sf: -apple-system,"SF Pro Display","SF Pro Text",BlinkMacSystemFont,"Segoe UI",sans-serif;
	--cag-card-bg: rgba(255,255,255,0.86);
	--cag-card-border: rgba(0,0,0,0.07);
	--cag-shadow: 0 2px 14px rgba(0,0,0,0.06),0 0 0 1px rgba(0,0,0,0.05);
	--cag-shadow-hover: 0 10px 32px rgba(0,0,0,0.10),0 0 0 1px rgba(0,0,0,0.07);
	--cag-spring: 340ms cubic-bezier(.34,1.56,.64,1);
	--cag-ease: 220ms cubic-bezier(.25,.46,.45,.94);

	margin: 36px 0;
	font-family: var(--cag-sf);
}

.cag-destaque-header {
	text-align: center;
	margin-bottom: 28px;
}
.cag-destaque-header h2 {
	margin: 0 0 6px !important;
	font-size: clamp(22px,3.5vw,28px) !important;
	color: var(--cag-cor-texto) !important;
	font-weight: 700 !important;
	letter-spacing: -.4px !important;
	font-family: var(--cag-sf) !important;
}
.cag-destaque-header p {
	margin: 0 !important;
	color: var(--cag-cor-texto-suave) !important;
	font-size: 14px !important;
	font-family: var(--cag-sf) !important;
}
.cag-destaque-divisor {
	display: inline-block;
	width: 40px;
	height: 3px;
	background: var(--cag-cor-principal);
	border-radius: 2px;
	margin: 10px 0 0;
}

/* =============================================================================
   GRID DUPLO — Próxima + Última
   ============================================================================= */
.cag-cards-destaque {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-bottom: 28px;
}
@media (max-width: 768px) {
	.cag-cards-destaque { grid-template-columns: 1fr; gap: 12px; }
}

/* Card container */
.cag-card {
	background: var(--cag-card-bg);
	border: 1px solid var(--cag-card-border);
	border-radius: 18px;
	overflow: hidden;
	transition: transform var(--cag-spring), box-shadow var(--cag-ease);
	display: flex;
	flex-direction: column;
	box-shadow: var(--cag-shadow);
	backdrop-filter: blur(20px) saturate(1.4);
	-webkit-backdrop-filter: blur(20px) saturate(1.4);
	font-family: var(--cag-sf);
}
.cag-card:hover {
	transform: translateY(-5px) scale(1.012);
	box-shadow: var(--cag-shadow-hover);
	background: rgba(255,255,255,.97);
}

/* ── Rótulo "PRÓXIMA REUNIÃO" / "ÚLTIMA REUNIÃO" ── */
.cag-card-rotulo {
	padding: 11px 20px;
	font-family: var(--cag-sf);
	font-weight: 700;
	font-size: 11px;
	letter-spacing: 1px;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	gap: 7px;
}
/* Próxima: faixa verde suave */
.cag-card:first-child .cag-card-rotulo {
	background: #f0fdf4;
	color: #15803d;
	border-bottom: 1px solid rgba(21,128,61,.12);
}
/* Última: faixa vermelha/roxa suave */
.cag-card:last-child .cag-card-rotulo {
	background: #fef2f2;
	color: #b91c1c;
	border-bottom: 1px solid rgba(185,28,28,.12);
}
/* Ícone de calendário no rótulo */
.cag-card-rotulo::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	flex-shrink: 0;
}
.cag-card:first-child .cag-card-rotulo::before { background: #15803d; }
.cag-card:last-child  .cag-card-rotulo::before { background: #b91c1c; }

/* ── Conteúdo: data lateral + corpo ── */
.cag-card-conteudo {
	display: flex;
	gap: 0;
	flex: 1;
}

/* Data lateral — bloco de cor suave, não sólido */
.cag-card-data {
	flex-shrink: 0;
	width: 90px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px 6px;
	text-align: center;
	background: #f5f5f7;
	border-right: 1px solid rgba(0,0,0,.06);
}
/* Proxima: fundo verde muito suave */
.cag-card:first-child .cag-card-data {
	background: #f0fdf4;
	border-right-color: rgba(21,128,61,.08);
}
/* Última: fundo vermelho muito suave */
.cag-card:last-child .cag-card-data {
	background: #fef2f2;
	border-right-color: rgba(185,28,28,.08);
}

.cag-data-dia {
	font-size: 38px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -2px;
	font-family: var(--cag-sf);
}
.cag-card:first-child .cag-data-dia { color: #15803d; }
.cag-card:last-child  .cag-data-dia { color: #b91c1c; }

.cag-data-mes {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	margin-top: 6px;
	color: #6b7280;
	font-family: var(--cag-sf);
}
.cag-data-ano {
	font-size: 11px;
	margin-top: 4px;
	color: #9ca3af;
	font-weight: 500;
	font-family: var(--cag-sf);
}

/* ── Corpo do card ── */
.cag-card-corpo {
	flex: 1;
	min-width: 0;
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
}

.cag-card-tipo {
	display: inline-block;
	font-size: 10px;
	font-weight: 700;
	color: var(--cag-cor-principal);
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 6px;
	font-family: var(--cag-sf);
}

.cag-card-titulo {
	margin: 0 0 10px !important;
	font-size: 16px !important;
	color: #1d1d1f !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
	letter-spacing: -.2px !important;
	font-family: var(--cag-sf) !important;
}

.cag-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	font-size: 12px;
	color: #6e6e73;
	margin-bottom: 12px;
	font-family: var(--cag-sf);
}
.cag-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.cag-meta-item svg {
	color: var(--cag-cor-principal);
	opacity: 0.6;
	flex-shrink: 0;
}

/* Contador "EM 6 DIAS" / "REALIZADA HÁ X DIAS" */
.cag-contador {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 100px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .5px;
	margin-bottom: 12px;
	font-family: var(--cag-sf);
}
/* Verde para próxima */
.cag-card:first-child .cag-contador {
	background: #f0fdf4;
	color: #15803d;
	border: 1px solid rgba(21,128,61,.2);
}
/* Vermelho para última */
.cag-card:last-child .cag-contador {
	background: #fef2f2;
	color: #b91c1c;
	border: 1px solid rgba(185,28,28,.2);
}

.cag-card-status-extra { margin-bottom: 10px; }

.cag-card-acoes {
	display: flex;
	gap: 8px;
	margin-top: auto;
	flex-wrap: wrap;
	padding-top: 10px;
}

/* Tag info "Pauta em breve" / "Ata em elaboração" */
.cag-tag-info {
	display: inline-flex;
	align-items: center;
	padding: 7px 12px;
	background: #f5f5f7;
	color: #6e6e73;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 500;
	font-family: var(--cag-sf);
	border: 1px solid rgba(0,0,0,.07);
}

/* Estado vazio */
.cag-card-vazio {
	padding: 48px 20px;
	text-align: center;
	color: #9ca3af;
	background: #f9fafb;
	flex: 1;
}
.cag-card-vazio svg { color: #d1d5db; margin-bottom: 10px; }
.cag-card-vazio p { margin: 0 !important; font-size: 13px !important; font-family: var(--cag-sf) !important; }

/* =============================================================================
   BOTÕES — Apple design
   ============================================================================= */
.cag-btn {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	padding: 9px 16px !important;
	border: 1px solid transparent;
	border-radius: 9px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: all 220ms cubic-bezier(.25,.46,.45,.94) !important;
	font-family: -apple-system,"SF Pro Text",BlinkMacSystemFont,"Segoe UI",sans-serif !important;
	white-space: nowrap;
	line-height: 1.2;
	letter-spacing: -.1px;
}

.cag-btn-primary {
	background: var(--cag-cor-principal) !important;
	color: #fff !important;
	border-color: var(--cag-cor-principal) !important;
}
.cag-btn-primary:hover {
	filter: brightness(.9) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 12px rgba(0,0,0,.14) !important;
}
.cag-btn-primary:active { transform: scale(.98) translateY(0) !important; }

.cag-btn-secondary {
	background: rgba(0,0,0,.05) !important;
	color: var(--cag-cor-texto) !important;
	border-color: rgba(0,0,0,.09) !important;
}
.cag-btn-secondary:hover {
	background: rgba(0,0,0,.09) !important;
	transform: translateY(-1px) !important;
}

/* Botão PDF */
.cag-btn-pdf {
	background: #fee2e2 !important;
	color: #b91c1c !important;
	border-color: transparent !important;
}
.cag-btn-pdf:hover { background: #fecaca !important; color: #991b1b !important; }

.cag-btn-pequeno {
	padding: 5px 10px !important;
	font-size: 11px !important;
	background: rgba(0,0,0,.04) !important;
	color: var(--cag-cor-texto-suave) !important;
	border-color: rgba(0,0,0,.08) !important;
}
.cag-btn-pequeno:hover {
	background: var(--cag-cor-principal) !important;
	color: #fff !important;
	border-color: var(--cag-cor-principal) !important;
}
.cag-btn-pequeno svg { width: 12px; height: 12px; }

.cag-btn-limpar {
	color: #b91c1c !important;
	border-color: #fecaca !important;
}
.cag-btn-limpar:hover { background: #fee2e2 !important; }

/* =============================================================================
   "VER TODAS AS REUNIÕES"
   ============================================================================= */
.cag-ver-todas {
	text-align: center;
	margin-top: 28px;
}
.cag-btn-ver-todas {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 12px 28px !important;
	background: var(--cag-cor-principal) !important;
	color: #fff !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	letter-spacing: -.1px;
	border-radius: 10px !important;
	transition: all 220ms cubic-bezier(.25,.46,.45,.94) !important;
	font-family: -apple-system,"SF Pro Text",BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
.cag-btn-ver-todas svg { transition: transform 220ms ease; }
.cag-btn-ver-todas:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 18px rgba(0,0,0,.14) !important;
	filter: brightness(.92) !important;
}
.cag-btn-ver-todas:hover svg { transform: translateX(3px); }

/* =============================================================================
   LISTA DE REUNIÕES
   ============================================================================= */
.cag-secao-lista {
	margin-top: 36px;
}
.cag-secao-lista h2 {
	font-size: 22px !important;
	color: var(--cag-cor-texto) !important;
	margin: 0 0 8px !important;
	font-weight: 700;
}
.cag-secao-lista h2::after {
	content: "";
	display: block;
	width: 40px;
	height: 3px;
	background: var(--cag-cor-principal);
	margin-top: 8px;
	border-radius: 2px;
}

.cag-filtros {
	display: flex;
	gap: 8px;
	margin: 20px 0;
	flex-wrap: wrap;
}
.cag-filtros select {
	padding: 8px 12px !important;
	border: 1px solid var(--cag-cor-borda) !important;
	border-radius: 6px !important;
	font-family: inherit !important;
	font-size: 13px !important;
	background: #fff !important;
	cursor: pointer;
	color: var(--cag-cor-texto);
}
.cag-filtros select:focus {
	outline: none !important;
	border-color: var(--cag-cor-principal) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--cag-cor-principal) 15%, transparent) !important;
}

.cag-lista {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Item da lista — também segue padrão Atas em escala menor */
.cag-item {
	background: #fff;
	border: 1px solid var(--cag-cor-borda);
	border-radius: var(--cag-radius);
	overflow: hidden;
	display: flex;
	gap: 0;
	transition: all var(--cag-trans);
	min-height: 96px;
}
.cag-item:hover {
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
	transform: translateX(2px);
}

.cag-item-data {
	flex-shrink: 0;
	width: 76px;
	background: var(--cag-cor-principal);
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 12px 6px;
}
.cag-item-data strong {
	font-size: 24px;
	font-weight: 800;
	line-height: 1;
	color: #fff;
}
.cag-item-data small {
	font-size: 10px;
	letter-spacing: 1px;
	margin-top: 4px;
	display: block;
	color: rgba(255,255,255,0.9);
	font-weight: 600;
}
.cag-item-ano {
	color: rgba(255,255,255,0.65) !important;
	font-size: 9px !important;
	margin-top: 2px !important;
}

.cag-item-conteudo {
	flex: 1;
	min-width: 0;
	padding: 14px 20px;
}
.cag-item-conteudo header {
	display: flex;
	gap: 8px;
	margin-bottom: 4px;
	flex-wrap: wrap;
	align-items: center;
}
.cag-item-tipo {
	font-size: 10px;
	font-weight: 700;
	color: var(--cag-cor-principal);
	letter-spacing: 1.2px;
}
.cag-item-conteudo h3 {
	margin: 4px 0 6px !important;
	font-size: 15px !important;
	font-weight: 700;
}
.cag-item-conteudo h3 a {
	color: var(--cag-cor-texto) !important;
	text-decoration: none;
}
.cag-item-conteudo h3 a:hover {
	color: var(--cag-cor-principal) !important;
}
.cag-item-meta {
	display: flex;
	gap: 12px;
	font-size: 12px;
	color: var(--cag-cor-texto-suave);
	flex-wrap: wrap;
}

.cag-item-acoes {
	display: flex;
	gap: 6px;
	flex-shrink: 0;
	flex-wrap: wrap;
	max-width: 220px;
	align-items: center;
	padding: 14px 16px 14px 0;
}
@media (max-width: 600px) {
	.cag-item {
		flex-wrap: wrap;
	}
	.cag-item-acoes {
		width: 100%;
		max-width: none;
		padding: 0 16px 14px;
	}
}

.cag-vazio {
	background: var(--cag-cor-fundo-suave);
	border-radius: var(--cag-radius);
	padding: 40px 20px;
	text-align: center;
	color: var(--cag-cor-texto-suave);
	font-size: 14px;
}

/* =============================================================================
   PAGINAÇÃO
   ============================================================================= */
.cag-pag {
	display: flex;
	justify-content: center;
	gap: 4px;
	margin-top: 24px;
	flex-wrap: wrap;
	align-items: center;
}
.cag-pag-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 8px 12px;
	min-width: 38px;
	height: 38px;
	background: #fff;
	color: var(--cag-cor-texto-suave);
	border: 1px solid var(--cag-cor-borda);
	border-radius: 6px;
	font-size: 13px;
	text-decoration: none !important;
	cursor: pointer;
	transition: all var(--cag-trans);
	justify-content: center;
}
.cag-pag-btn:hover {
	background: var(--cag-cor-principal);
	color: #fff !important;
	border-color: var(--cag-cor-principal);
}
.cag-pag-atual {
	background: var(--cag-cor-principal) !important;
	color: #fff !important;
	border-color: var(--cag-cor-principal) !important;
	font-weight: 700;
}
.cag-pag-disabled {
	opacity: 0.5;
	pointer-events: none;
}
.cag-pag-elipse {
	color: #9ca3af;
	padding: 0 6px;
}
.cag-pag-seta {
	padding: 0 14px;
}
@media (max-width: 480px) {
	.cag-pag-seta span { display: none; }
	.cag-pag-seta { padding: 0; min-width: 38px; }
}

/* =============================================================================
   PÁGINA INDIVIDUAL
   ============================================================================= */
.cag-single {
	max-width: 900px;
	margin: 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

.cag-single-header {
	background: var(--cag-cor-fundo-suave);
	padding: 28px 32px;
	border-radius: var(--cag-radius);
	margin-bottom: 24px;
}
.cag-single-meta {
	display: flex;
	gap: 8px;
	margin-bottom: 18px;
	flex-wrap: wrap;
	align-items: center;
}

.cag-single-grid {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 24px;
	align-items: start;
}
@media (max-width: 600px) {
	.cag-single-grid { grid-template-columns: 1fr; }
}

.cag-single-data {
	width: 130px;
	background: var(--cag-cor-principal);
	color: #fff;
	border-radius: var(--cag-radius);
	padding: 24px 16px;
	text-align: center;
}
.cag-single-data .cag-data-dia {
	font-size: 56px;
	color: #fff;
}
.cag-single-data .cag-data-mes {
	font-size: 14px;
	color: rgba(255,255,255,0.95);
}
.cag-single-data .cag-data-ano {
	font-size: 13px;
	color: rgba(255,255,255,0.75);
}

.cag-single-info dl {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 10px 16px;
	margin: 0 0 18px;
}
.cag-single-info dt {
	font-weight: 600;
	color: var(--cag-cor-texto-suave);
	font-size: 13px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.cag-single-info dt svg {
	color: var(--cag-cor-principal);
	opacity: 0.7;
}
.cag-single-info dd {
	margin: 0;
	color: var(--cag-cor-texto);
	font-size: 14px;
}
.cag-btn-video {
	margin-top: 8px;
}

/* Seções da reunião */
.cag-single-secao {
	background: #fff;
	border: 1px solid var(--cag-cor-borda);
	border-radius: var(--cag-radius);
	padding: 24px 28px;
	margin-bottom: 20px;
}
.cag-single-secao h2 {
	margin: 0 0 16px !important;
	font-size: 18px !important;
	color: var(--cag-cor-principal) !important;
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: 8px;
}
.cag-single-secao h2 svg {
	color: var(--cag-cor-principal);
}

.cag-single-pauta {
	border-top: 3px solid var(--cag-cor-principal);
}
.cag-single-ata {
	border-top: 3px solid var(--cag-cor-principal);
}
.cag-single-ata-pendente {
	background: var(--cag-cor-fundo-suave);
	border: 1px dashed var(--cag-cor-borda);
}
.cag-single-ata-pendente p {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--cag-cor-texto-suave) !important;
	font-style: italic;
}
.cag-single-ata-pendente svg {
	color: var(--cag-cor-texto-suave);
}

.cag-pauta-texto {
	background: var(--cag-cor-fundo-suave);
	padding: 18px 22px;
	border-left: 3px solid var(--cag-cor-principal);
	border-radius: 4px;
	margin-bottom: 16px;
	font-size: 14px;
	line-height: 1.7;
	color: var(--cag-cor-texto);
}
.cag-pauta-texto p:last-child,
.cag-pauta-texto ul:last-child,
.cag-pauta-texto ol:last-child { margin-bottom: 0; }

.cag-ata-titulo {
	font-size: 15px;
	font-weight: 600;
	color: var(--cag-cor-texto);
	margin: 0 0 14px !important;
}
.cag-ata-acoes {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.cag-single-conteudo-extra {
	background: #fff;
	border: 1px solid var(--cag-cor-borda);
	border-radius: var(--cag-radius);
	padding: 24px 28px;
	margin-bottom: 20px;
}

.cag-single-footer {
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid var(--cag-cor-borda);
}
