/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jun 04 2026 | 21:51:24 */
/* ════════════════════════════════════════════════════════════════════════
 * cp-pages-meu-trabalho-agenda.css — Fase 1.C do ERP Criminal V1
 *
 * Aba "Agenda" do /meu-trabalho/. SÓ layout/composição específica.
 * Cores, spacing, botões, cards, modais, badges vêm dos primitives cpds-*
 * (cp-design-system.css). Regra: nada de redefinir cor ou spacing aqui.
 *
 * Doc: doc/planejamento/escritorio-virtual-fase-1c-agenda.md §3.
 * ════════════════════════════════════════════════════════════════════════ */

/* ── Banner Beta ───────────────────────────────────────────────────────── */
.cp-agn-banner {
	background: var(--cp-brand-yellow-soft) !important;
	border: 1px solid var(--cp-brand-yellow) !important;
	border-radius: var(--cp-radius-lg) !important;
	padding: var(--cp-space-3) var(--cp-space-4) !important;
	margin-bottom: var(--cp-space-5) !important;
}
.cp-agn-banner-body strong {
	background: var(--cp-brand-yellow) !important;
	color: var(--cp-brand-black) !important;
	padding: 2px 8px !important;
	border-radius: var(--cp-radius-pill) !important;
	font-size: var(--cp-text-xs) !important;
	font-weight: var(--cp-weight-bold) !important;
	margin-right: var(--cp-space-2) !important;
}
.cp-agn-banner-body span {
	color: var(--cp-text-secondary) !important;
	font-size: var(--cp-text-sm) !important;
}

/* ── KPI strip ─────────────────────────────────────────────────────────── */
.cp-agn-kpis {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
	gap: var(--cp-space-3) !important;
	margin-bottom: var(--cp-space-4) !important;
}
.cp-agn-kpi {
	background: var(--cp-surface) !important;
	border: 1px solid var(--cp-border) !important;
	border-radius: var(--cp-radius-lg) !important;
	padding: var(--cp-space-4) !important;
	display: flex !important;
	flex-direction: column !important;
	gap: var(--cp-space-1) !important;
}
.cp-agn-kpi-lbl {
	font-size: var(--cp-text-xs) !important;
	color: var(--cp-text-tertiary) !important;
	font-weight: var(--cp-weight-medium) !important;
	text-transform: uppercase !important;
	letter-spacing: .04em !important;
}
.cp-agn-kpi-val {
	font-size: var(--cp-text-2xl) !important;
	font-weight: var(--cp-weight-bold) !important;
	color: var(--cp-text-primary) !important;
	font-variant-numeric: tabular-nums !important;
}
.cp-agn-kpi-danger .cp-agn-kpi-val {
	color: var(--cp-danger) !important;
}

/* ── Toolbar (filtros + ações) ─────────────────────────────────────────── */
.cp-agn-toolbar {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: var(--cp-space-3) !important;
	align-items: center !important;
	margin-bottom: var(--cp-space-4) !important;
}
.cp-agn-filters {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: var(--cp-space-2) !important;
}
.cp-agn-toolbar-actions {
	margin-left: auto !important;
	display: flex !important;
	gap: var(--cp-space-2) !important;
}

/* ── Lista (skeleton) ──────────────────────────────────────────────────── */
.cp-agn-loading {
	display: flex !important;
	flex-direction: column !important;
	gap: var(--cp-space-2) !important;
}
.cp-agn-skel-row {
	height: 56px !important;
	background: linear-gradient(90deg, var(--cp-border-soft) 0%, var(--cp-border) 50%, var(--cp-border-soft) 100%) !important;
	background-size: 200% 100% !important;
	border-radius: var(--cp-radius-md) !important;
	animation: cp-agn-skel 1.2s ease-in-out infinite !important;
}
@keyframes cp-agn-skel {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

.cp-agn-error {
	background: var(--cp-danger-soft) !important;
	color: var(--cp-danger) !important;
	border: 1px solid var(--cp-danger) !important;
	border-radius: var(--cp-radius-md) !important;
	padding: var(--cp-space-3) !important;
	margin-bottom: var(--cp-space-3) !important;
}

/* ── Item da lista (custom row, sem CpdsEntityCard pra densidade) ─────── */
.cp-agn-item {
	display: grid !important;
	grid-template-columns: 90px 1fr auto !important;
	gap: var(--cp-space-3) !important;
	align-items: center !important;
	padding: var(--cp-space-3) var(--cp-space-4) !important;
	background: var(--cp-surface) !important;
	border: 1px solid var(--cp-border) !important;
	border-radius: var(--cp-radius-md) !important;
	margin-bottom: var(--cp-space-2) !important;
}
.cp-agn-item-when {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 2px !important;
}
.cp-agn-item-when-day {
	font-size: var(--cp-text-xl) !important;
	font-weight: var(--cp-weight-bold) !important;
	line-height: 1 !important;
	color: var(--cp-text-primary) !important;
	font-variant-numeric: tabular-nums !important;
}
.cp-agn-item-when-mon {
	font-size: var(--cp-text-xs) !important;
	color: var(--cp-text-tertiary) !important;
	text-transform: uppercase !important;
	letter-spacing: .05em !important;
}
.cp-agn-item-when-time {
	font-size: var(--cp-text-xs) !important;
	color: var(--cp-text-secondary) !important;
	font-variant-numeric: tabular-nums !important;
	margin-top: 2px !important;
}
.cp-agn-item.cp-agn-item-vencido .cp-agn-item-when-day,
.cp-agn-item.cp-agn-item-vencido .cp-agn-item-when-mon {
	color: var(--cp-danger) !important;
}
.cp-agn-item.cp-agn-item-hoje {
	border-left: 3px solid var(--cp-brand-yellow) !important;
}

.cp-agn-item-main {
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}
.cp-agn-item-titulo {
	font-size: var(--cp-text-md) !important;
	font-weight: var(--cp-weight-semibold) !important;
	color: var(--cp-text-primary) !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}
.cp-agn-item-meta {
	font-size: var(--cp-text-xs) !important;
	color: var(--cp-text-tertiary) !important;
	display: flex !important;
	gap: var(--cp-space-2) !important;
	flex-wrap: wrap !important;
}
.cp-agn-item-meta-link {
	color: var(--cp-text-tertiary) !important;
	text-decoration: underline !important;
}
.cp-agn-item-meta-link:hover {
	color: var(--cp-text-primary) !important;
}

.cp-agn-item-actions {
	display: flex !important;
	gap: var(--cp-space-1) !important;
}

/* ── Kind badge ─────────────────────────────────────────────────────────── */
.cp-agn-kind {
	display: inline-block !important;
	padding: 2px 8px !important;
	border-radius: var(--cp-radius-pill) !important;
	font-size: var(--cp-text-xs) !important;
	font-weight: var(--cp-weight-semibold) !important;
	text-transform: uppercase !important;
	letter-spacing: .04em !important;
}
.cp-agn-kind-prazo     { background: #fee2e2 !important; color: #991b1b !important; }
.cp-agn-kind-audiencia { background: #ddd6fe !important; color: #5b21b6 !important; }
.cp-agn-kind-reuniao   { background: #d1fae5 !important; color: #065f46 !important; }
.cp-agn-kind-lembrete  { background: #e5e7eb !important; color: #374151 !important; }

.cp-agn-item-status-concluido { opacity: .55 !important; }
.cp-agn-item-status-concluido .cp-agn-item-titulo { text-decoration: line-through !important; }
.cp-agn-item-status-cancelado { opacity: .45 !important; }
.cp-agn-item-status-cancelado .cp-agn-item-titulo { text-decoration: line-through !important; }

/* ── Source: badge auto vs manual ──────────────────────────────────────── */
.cp-agn-src-auto {
	font-size: var(--cp-text-xs) !important;
	background: var(--cp-info-soft) !important;
	color: var(--cp-info) !important;
	padding: 1px 6px !important;
	border-radius: var(--cp-radius-pill) !important;
}

/* ── Empty state ───────────────────────────────────────────────────────── */
.cp-agn-empty {
	text-align: center !important;
	padding: var(--cp-space-6) var(--cp-space-4) !important;
	color: var(--cp-text-tertiary) !important;
}
.cp-agn-empty h3 {
	font-size: var(--cp-text-lg) !important;
	color: var(--cp-text-primary) !important;
	margin: var(--cp-space-2) 0 !important;
}
.cp-agn-empty p {
	font-size: var(--cp-text-sm) !important;
	margin: 0 !important;
}

/* ── LGPD note ─────────────────────────────────────────────────────────── */
.cp-agn-lgpd {
	margin-top: var(--cp-space-4) !important;
	padding: var(--cp-space-3) !important;
	background: var(--cp-bg-muted) !important;
	border-radius: var(--cp-radius-md) !important;
	font-size: var(--cp-text-xs) !important;
	color: var(--cp-text-tertiary) !important;
}

/* ── Form fields ───────────────────────────────────────────────────────── */
.cp-agn-field {
	display: flex !important;
	flex-direction: column !important;
	gap: var(--cp-space-1) !important;
}
.cp-agn-field > span {
	font-size: var(--cp-text-sm) !important;
	color: var(--cp-text-secondary) !important;
	font-weight: var(--cp-weight-medium) !important;
}
.cp-agn-field-optional {
	color: var(--cp-text-tertiary) !important;
	font-weight: var(--cp-weight-normal) !important;
	font-size: var(--cp-text-xs) !important;
}
.cp-agn-field-checkbox {
	flex-direction: row !important;
	align-items: center !important;
	gap: var(--cp-space-2) !important;
}
.cp-agn-field-checkbox span {
	font-weight: var(--cp-weight-normal) !important;
}
.cp-agn-grid-2 {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: var(--cp-space-3) !important;
}
@media (max-width: 600px) {
	.cp-agn-grid-2 {
		grid-template-columns: 1fr !important;
	}
}

/* ── Settings modal ────────────────────────────────────────────────────── */
.cp-agn-settings-section {
	padding-bottom: var(--cp-space-4) !important;
	border-bottom: 1px solid var(--cp-border-soft) !important;
}
.cp-agn-settings-section:last-of-type {
	border-bottom: none !important;
	padding-bottom: 0 !important;
}
.cp-agn-settings-section h4 {
	font-size: var(--cp-text-md) !important;
	font-weight: var(--cp-weight-semibold) !important;
	color: var(--cp-text-primary) !important;
	margin: 0 0 var(--cp-space-2) 0 !important;
}
.cp-agn-settings-help {
	font-size: var(--cp-text-sm) !important;
	color: var(--cp-text-secondary) !important;
	margin: 0 0 var(--cp-space-3) 0 !important;
}
.cp-agn-ics-input-row {
	display: flex !important;
	gap: var(--cp-space-2) !important;
	align-items: stretch !important;
}
.cp-agn-ics-input-row input[readonly] {
	font-family: var(--cp-font-mono, monospace) !important;
	font-size: var(--cp-text-xs) !important;
	flex: 1 !important;
	min-width: 0 !important;
}

/* ── Responsivo ────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.cp-agn-item {
		grid-template-columns: 70px 1fr !important;
	}
	.cp-agn-item-actions {
		grid-column: 1 / -1 !important;
		justify-content: flex-end !important;
	}
	.cp-agn-toolbar-actions {
		margin-left: 0 !important;
		width: 100% !important;
		justify-content: flex-end !important;
	}
}
