/* =============================================================================
   SIGMA · dashboard.css
   -----------------------------------------------------------------------------
   Folha principal do sigma_dashboard.html (shell + módulos da SPA).
   Conferência em andamento também usa css/app.css.

   Arquivo reorganizado por seções temáticas (sumário abaixo).
   Dentro de cada seção a ordem relativa das regras foi preservada.
   Regras mortas já foram removidas na faxina anterior.
   Backup do original: css/dashboard.css.bak
   ============================================================================= */

/* SUMÁRIO
   00-foundation ........ html / body / :root
   00-motion ............ @keyframes
   01-shell-nav ......... sidebar, bottom nav, FAB
   02-chrome-header ..... header / perfil / splash
   03-dashboard ......... KPIs e master-detail
   04-trug .............. cautelas TRUG
   05-almox ............. almoxarifado
   06-listas ............ editor de listas
   07-frota ............. viaturas / VTR
   08-usuarios .......... efetivo e perfil
   08-gestao ............ unidades / postos
   09-conferencia-prep .. preparação de missão
   10-atividades ........ histórico / extrato
   11-overlays .......... modais e drawers
   12-buttons-forms ..... botões e forms
   13-responsive ........ @media
   14-tema .............. modo noturno
   99-misc .............. restantes em uso
*/

/* =============================================================================
   00-FOUNDATION · Fundação — html/body, tipografia base, resets
   ============================================================================= */

/* --- ESTILOS GERAIS --- */

html {
	width: 100%;
	max-width: 100%;
	background: var(--sigma-page-grad, #f5f6f8);
	background-color: var(--sigma-page-bg, #f5f6f8);
}

body {
	font-family: Instrument Sans, ui-sans-serif, system-ui, sans-serif;
	font-size: 14px;
	/* 🎯 AQUI: Define o tamanho base de todo o sistema (16px é o padrão web) */
	background: var(--sigma-page-grad, #f5f6f8);
	background-color: var(--sigma-page-bg, #f5f6f8);
	color: #333;
	margin: 0;
	display: flex;
	width: 100%;
	max-width: 100%;
	min-height: 100vh;
	padding-top: 60px;
	padding-bottom: 60px;
	box-sizing: border-box;
	overflow-x: hidden;
}

:root {
	--vinho-sigma: #800020;
	--vinho-escuro: #600018;
	--cor-bg-content: #f8f9fa;
	--sigma-page-bg: #f5f6f8;
	--sigma-page-grad: linear-gradient(180deg, #f3f5f8 0%, #f6f7f9 48%, #f8f9fb 100%);
	--mobile-bottom-nav-height: 65px;
	--mobile-bottom-nav-offset: 0px;
	--sigma-safe-bottom: 0px;
	--mobile-bottom-nav-clearance: calc(
		var(--mobile-bottom-nav-height) + var(--mobile-bottom-nav-offset) + var(--sigma-safe-bottom)
	);
}

/*=== CLASSES DETALHES DE CAUTELA ATIVA (TELA 2) ===*/

/* ==========================================================================
   VARIÁVEIS - TONS LEVES E CLEAN (MÁXIMO FONT-WEIGHT 600)
   ========================================================================== */

:root {
	--bg-main: #f5f6f8;
	--bg-card-clean: #ffffff;
	--text-dark: #334155;
	--text-muted: #64748b;
	--border-soft: #e2e8f0;
	--sigma-surface: #ffffff;
	--sigma-surface-2: #f5f6f8;
	--sigma-fab-bg: #ffffff;
	--sigma-fab-border: #e2e8f0;
	--sigma-fab-fg: #475569;
	--sigma-fab-qr: #0d9488;
	--sigma-vtr-ok-bg: #f0fdf4;
	--sigma-vtr-ok-border: #bbf7d0;
	--sigma-vtr-ok-fg: #166534;
	--sigma-vtr-warn-bg: #fff9f0;
	--sigma-vtr-warn-border: #f5d0a0;
	--sigma-vtr-warn-fg: #c2780e;
	--sigma-vtr-bad-bg: #fef2f2;
	--sigma-vtr-bad-border: #fecaca;
	--sigma-vtr-bad-fg: #991b1b;

	--radius-clean: 10px;
	--shadow-clean: 0 2px 4px rgba(148, 163, 184, 0.1);

	/* Cores Leves (Pastel) */
	--soft-primary: #e0e7ff;
	--text-primary-soft: #3730a3;
	--soft-success: #dcfce7;
	--text-success-soft: #166534;
	--soft-warning: #fef3c7;
	--text-warning-soft: #92400e;
	--soft-danger: #fee2e2;
	--text-danger-soft: #991b1b;
	--soft-info: #e0f2fe;
	--text-info-soft: #075985;
	--soft-neutral: #f1f5f9;
	--text-neutral-soft: #475569;
}

html.sigma-pwa {
	--sigma-safe-bottom: env(safe-area-inset-bottom, 0px);
	--mobile-bottom-nav-offset: 15px;
}

@media (display-mode: standalone), (display-mode: fullscreen) {
	:root {
		--sigma-safe-bottom: env(safe-area-inset-bottom, 0px);
		--mobile-bottom-nav-offset: 15px;
	}
}

#sigma-chrome-layer > * {
	pointer-events: auto !important;
}

/* =============================================================================
   00-MOTION · Animações (@keyframes)
   ============================================================================= */

/* Animação suave para a tabela surgir da direita para a esquerda */

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateX(20px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes skeleton-pulse {
	0% {
		opacity: 0.6;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 0.6;
	}
}

@keyframes fadeInScale {
	from {
		opacity: 0;
		transform: scale(0.8) translateY(20px);
	}

	to {
		opacity: 1;
		transform: scale(1) translateY(0);
	}
}

@keyframes sigmaZoomIn {
	from {
		opacity: 0;
		transform: scale(0.98) translateY(10px);
	}

	to {
		opacity: 1;
		transform: scale(1) translateY(0);
	}
}

@keyframes slideInLeft {
	from {
		opacity: 0;
		transform: translateX(-15px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

/* Letras do Alfabeto */

/* Linha da Tabela Premium (Modo Lista) */

/* Container para empilhamento no modo lista */

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(5px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes sigma-ph-spin {
	to {
		transform: rotate(360deg);
	}
}

@keyframes slideDown {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* --- ANIMAÇÃO DE TRANSIÇÃO DE MENUS --- */

@keyframes menuFadeIn {
	from {
		opacity: 0;
		transform: translateY(10px);
		/* Começa um pouco abaixo */
	}

	to {
		opacity: 1;
		transform: translateY(0);
		/* Termina na posição original */
	}
}

@keyframes slideInRight {
	from {
		opacity: 0;
		transform: translateX(20px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes gCatFadeIn {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes pulse-highlight {
	0% {
		background-color: #fff;
		transform: scale(1);
	}

	50% {
		background-color: #ffecec;
		transform: scale(1.02);
		border-color: #800020;
	}

	100% {
		background-color: #fff;
		transform: scale(1);
	}
}

/* Animação de Pulso Discreta */

@keyframes pulse-soft {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.005);
		box-shadow: 0 0 15px rgba(217, 119, 6, 0.2);
	}

	100% {
		transform: scale(1);
	}
}

/* Badge de Nova Família */

/* --- 4. ANCORAGEM E SUGESTÕES (BLINDAGEM ABA 3) --- */

/* Blindagem da Caixa de Sugestões Flutuante */

/* Utilitário de Animação Entrada */

@keyframes bounceIn {
	from {
		opacity: 0;
		transform: scale(0.8);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

/* --- ANIMAÇÃO --- */

@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* 2. Animação da logo pulsando */

@keyframes pulseLogo {
	0% {
		transform: scale(1);
		opacity: 0.7;
	}

	50% {
		transform: scale(1.1);
		opacity: 1;
	}

	100% {
		transform: scale(1);
		opacity: 0.7;
	}
}

/* Animação suave para o Skeleton */

@keyframes skeleton-pulse {
	0% {
		transform: translateX(-100%);
	}

	100% {
		transform: translateX(100%);
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(5px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

@keyframes slideUpFade {
	from {
		opacity: 0;
		transform: translateY(15px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ======================================================== */

@keyframes sigmaSlideIn {
	from {
		opacity: 0;
		transform: translateY(15px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes sigmaFadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes sigmaSlideUp {
	from {
		opacity: 0;
		transform: translateY(10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes sigmaSlideFade {
	from {
		opacity: 0;
		transform: translateY(15px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* =============================================================================
   01-SHELL-NAV · Shell — sidebar, bottom nav, FAB, hubs de menu
   ============================================================================= */

/* Classe de suporte para quando o JS liberar o acesso */

#main-sidebar a.restricted-admin-only.show-admin {
	display: flex !important;
	/* Força o FLEX em vez do BLOCK */
	align-items: center !important;
	justify-content: center !important;
	flex-direction: column !important;
	/* Mantém o padrão de ícone sobre texto */
}

/* Verde Esmeralda V3 */

/* 🛑 BLOQUEIO TOTAL OPERACIONAL - SIGMA V3 🛑 */

/* Se o role for operacional, esconde QUALQUER coisa que tenha a classe restricted */

body[data-user-role="operacional"] .restricted-admin-only,
body[data-user-role="operacional"] #sidebar-rotulo-admin {
	display: none !important;
	margin: 0 !important;
}

/* Garante que Postos, Usuários, Viaturas e Listas sumam mesmo com seletores fortes */

body[data-user-role="operacional"] .sidebar #link-unidades,
body[data-user-role="operacional"] .sidebar #link-postos,
body[data-user-role="operacional"] .sidebar #link-vtr-bases,
body[data-user-role="operacional"] .sidebar #link-usuarios,
body[data-user-role="operacional"] .sidebar #link-listas,
body[data-user-role="operacional"] .sidebar #link-almoxarifado {
	display: none !important;
}

/* --- RESTRIÇÕES DE VISUALIZAÇÃO (GESTOR/OPERACIONAL) --- */

.restricted-admin-only,
#link-unidades,
#link-postos,
#link-vtr-bases,
#link-usuarios,
#link-listas,
#link-almoxarifado,
#sidebar-rotulo-admin {
	display: none !important;
}

body.prep-reporte-trug-aberta-body .mobile-bottom-nav,
body.prep-reporte-trug-aberta-body #sigma-mobile-bottom-nav,
body.trug-detalhe-aberta-body:not(.trug-detalhe-com-acao-hibrida) .mobile-bottom-nav,
body.trug-detalhe-aberta-body:not(.trug-detalhe-com-acao-hibrida) #sigma-mobile-bottom-nav {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* Detalhe TRUG com Receber/Aceitar/PDF no FAB: menu inferior permanece */
body.trug-detalhe-aberta-body.trug-detalhe-com-acao-hibrida .mobile-bottom-nav,
body.trug-detalhe-aberta-body.trug-detalhe-com-acao-hibrida #sigma-mobile-bottom-nav {
	display: flex !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

/* Mobile: oculta menu inferior enquanto prepara a conferência */

body.prep-conferencia-aberta-body .mobile-bottom-nav,
body.prep-conferencia-aberta-body #sigma-mobile-bottom-nav {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

body.prep-checklist-aberta-body .mobile-bottom-nav,
body.prep-checklist-aberta-body #sigma-mobile-bottom-nav {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* Tour driver.js — acima do FAB mobile (100001) para o Próximo receber toque */
.driver-overlay,
.driver-active .driver-overlay,
div#driver-highlighted-element-stage,
svg.driver-overlay {
	z-index: 100010 !important;
	pointer-events: auto !important;
}

.driver-popover {
	z-index: 100020 !important;
	max-width: min(320px, calc(100vw - 24px)) !important;
	pointer-events: auto !important;
}

.driver-popover * {
	pointer-events: auto !important;
}

.driver-popover-next-btn,
.driver-popover-prev-btn,
.driver-popover-close-btn {
	position: relative;
	z-index: 100021 !important;
	pointer-events: auto !important;
	touch-action: manipulation !important;
}

/* Durante o tour: FAB flutuante não pode cobrir o popover */
body.driver-active #fab-global-container,
body.driver-active #fab-global-options,
body.driver-active #fab-global-options * {
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Mobile: gaveta de pendências — trava scroll de fundo e oculta menu inferior */
html.pendencia-drawer-aberta-body,
body.pendencia-drawer-aberta-body {
	overflow: hidden !important;
	overscroll-behavior: none !important;
	touch-action: none !important;
}

body.pendencia-drawer-aberta-body {
	position: fixed !important;
	width: 100% !important;
	left: 0 !important;
	right: 0 !important;
}

body.pendencia-drawer-aberta-body #sigma-chrome-layer .mobile-bottom-nav,
body.pendencia-drawer-aberta-body #sigma-chrome-layer #sigma-mobile-bottom-nav,
body.pendencia-drawer-aberta-body .mobile-bottom-nav,
body.pendencia-drawer-aberta-body #sigma-mobile-bottom-nav {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	opacity: 0 !important;
}

body.pendencia-drawer-aberta-body #detalhes-drawer.v3-details-drawer,
body.pendencia-drawer-aberta-body #detalhes-drawer {
	z-index: 2600 !important;
	touch-action: auto !important;
}

body.pendencia-drawer-aberta-body #detalhes-drawer .v3-drawer-body,
body.pendencia-drawer-aberta-body #drawer-content-body {
	touch-action: pan-y !important;
	overscroll-behavior: contain !important;
	-webkit-overflow-scrolling: touch;
}

/* Mobile/tablet: nunca manter master encolhido pelo split-view */
@media (max-width: 1024px) {
	#dashboard-content-by-role.split-view {
		display: block !important;
		flex-direction: column !important;
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}

	#dashboard-content-by-role.split-view .dashboard-master-column {
		flex: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	#dashboard-content-by-role.split-view .dashboard-detail-column {
		display: none !important;
	}
}

/* =============================================================================
   02-CHROME-HEADER · Chrome — header, perfil, splash/curtain
   ============================================================================= */

.sigma-v3-pdf-header {
    background: #f8fafc;
    padding: 12px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #0f172a;
    flex-shrink: 0;
    border-bottom: 1px solid #e2e8f0;
}

#view-lista-form .listas-modulo-header.section-modern-header {
	padding-bottom: 14px;
	margin-bottom: 4px;
}

#view-vtr-form .frota-modulo-header,
#view-vtr-detalhe .frota-modulo-header {
	width: 100%;
}

/* Extrato / Detalhes da Lista — cabeçalho + ações clean */

#view-extrato-lista .extrato-lista-header {
	margin-bottom: 0;
	padding: 0;
}

#menu-editor-listas .listas-modulo-header.form-header-action {
	flex-wrap: nowrap;
	gap: 0;
}

.accordion-header:hover {
	background-color: #fff5f5;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.accordion-header i.fa-chevron-down {
	transition: transform 0.3s;
}

.accordion-header.active i.fa-chevron-down {
	transform: rotate(180deg);
}

.header-left {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #e65100;
	font-weight: 800;
	font-size: 0.9em;
	width: 250px;
}

#modal-crop-perfil .modal-crop-perfil-header {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 18px 14px;
	border-bottom: 1px solid #e2e8f0;
	background: #fff;
}

.sigma-senha-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

.sigma-setores-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 14px;
}

.sigma-relatorio-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

.unit-header .unit-flex-title {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
}

.unit-header .unit-flex-title span {
	flex-grow: 1;
	line-height: 1.3;
}

#view-usuarios .usuarios-modulo-header.form-header-action {
	flex-wrap: nowrap;
	gap: 0;
}

#view-unidades .unidades-modulo-header.form-header-action,
#view-unidade-form .unidades-modulo-header.form-header-action {
	flex-wrap: nowrap;
	gap: 0;
}

#view-postos .postos-modulo-header.form-header-action,
#view-posto-form .postos-modulo-header.form-header-action {
	flex-wrap: nowrap;
	gap: 0;
}

.sigma-dialog-header {
	background: #f8fafc;
	padding: 20px 25px;
	border-bottom: 1px solid #e2e8f0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.sigma-dialog-header h2 {
	margin: 0;
	color: #800020;
	font-size: 1.3em;
	font-weight: 900;
}

.sigma-dialog-header p {
	margin: 5px 0 0 0;
	color: #64748b;
	font-size: 0.85em;
	font-weight: 600;
}

/* --- CABEÇALHO: PADRÃO CLEAN & SLIM (HARMONIZADO COM O SIDEBAR) --- */

.main-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 60px !important;
    box-sizing: border-box !important;
    padding: 0 24px !important;
    
    /* 🔥 Cor idêntica à do Sidebar para formar uma moldura limpa */
    background: var(--bg-card-clean, #ffffff) !important;
    
    /* PC: fixed; mobile (<=768) sobrescreve para absolute dentro do chrome-layer */
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 1200 !important;
    
    /* 🔥 Borda real e visível que separa o topo do conteúdo */
    border-bottom: 1px solid #e2e8f0 !important;
    
    /* 🔥 Sombra ultra-suave apenas para dar profundidade sem sujeira visual */
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02), 0 1px 2px rgba(0, 0, 0, 0.04) !important;
    transition: background-color 0.2s ease, border-color 0.2s ease !important;
    filter: none !important;
}

.main-header .header-icon {
	height: 35px !important;
	width: auto !important;
	max-width: 40px;
	object-fit: contain;
	margin-right: 10px;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* --- TÍTULO DO SISTEMA (FONT HEADLINE STYLE) --- */

.header-center-unified {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	/* Espaço entre a logo e o texto */

	/* Centralização absoluta em relação ao Header */
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}

/* Controle do texto "SIGMA" no header */

.header-center-unified span {
	font-size: 1.2rem !important;
	/* 🚀 Altere este valor para controlar o tamanho */
}

.header-icon-unified {
	height: 35px;
	/* Ajuste a altura conforme a necessidade da sua logo */
	width: auto;
	object-fit: contain;
}

.header-right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	margin-left: auto;
	min-width: 0;
}

.header-tema-group.dropdown-tema-opcoes {
	display: inline-flex;
	grid-template-columns: none;
	align-items: center;
	gap: 2px;
	padding: 3px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
}

.header-tema-group .dropdown-tema-btn {
	flex-direction: row;
	gap: 5px;
	padding: 6px 9px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #64748b;
	box-shadow: none;
	min-width: 0;
}

.header-tema-group .dropdown-tema-btn:hover {
	background: #fff;
	border: none;
	color: #0f172a;
}

.header-tema-group .dropdown-tema-btn.is-active {
	background: #fff;
	border: none;
	color: #0f172a;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

.header-acao-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.header-acao-trigger {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #0f172a;
	color: #fff;
	font-size: 0.78rem;
	font-weight: 600;
	cursor: pointer;
	line-height: 1;
}

.header-acao-trigger i {
	font-size: 0.95rem;
	color: inherit;
}

.header-acao-caret {
	font-size: 0.75rem !important;
	opacity: 0.8;
}

.header-acao-wrap.is-open .header-acao-trigger {
	box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.12);
}

.header-acao-menu {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	width: max-content;
	min-width: 0;
	display: none;
	flex-direction: column;
	padding: 4px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 28px -8px rgba(15, 23, 42, 0.18);
	z-index: 1300;
}

.header-acao-wrap.is-open .header-acao-menu {
	display: flex !important;
}

.header-acao-item {
	display: flex;
	align-items: center;
	gap: 8px;
	width: auto;
	padding: 8px 10px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #334155;
	font-size: 0.8rem;
	font-weight: 500;
	cursor: pointer;
	text-align: left;
	white-space: nowrap;
}

.header-acao-item i {
	font-size: 1.05rem;
	flex-shrink: 0;
}

.header-acao-item-material,
.header-acao-item-material i {
	color: #800020;
}

.header-acao-item-vtr,
.header-acao-item-vtr i {
	color: #2c7399;
}

.header-acao-item:hover {
	background: #f8fafc;
}

.header-acao-item-material:hover {
	background: #fdf2f4;
}

.header-acao-item-vtr:hover {
	background: #f0f7fa;
}

.header-mobile-only {
	display: none;
}

.sidebar-nav-scroll {
	flex: 1 1 auto;
	min-height: 0;
	width: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.em-curso-nav-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	min-width: 40px;
	height: 40px;
	flex-shrink: 0;
}

.em-curso-nav-dot {
	position: absolute;
	top: 6px;
	right: 6px;
	width: 7px;
	height: 7px;
	background: #e11d48;
	border-radius: 50%;
	box-shadow: 0 0 0 2px #ffffff;
	z-index: 2;
	pointer-events: none;
}

.sidebar-user {
	flex-shrink: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	margin-top: 0;
	padding: 8px 0 2px;
	border-top: 1px solid #e2e8f0;
	background: inherit;
	white-space: normal;
	box-sizing: border-box;
}

.sidebar-user-main {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	width: 100%;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	color: inherit;
}

.sidebar-user-avatar {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid #e2e8f0;
	flex-shrink: 0;
	background: #f8fafc;
}

.sidebar-user-meta {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	min-width: 0;
	width: 100%;
}

.sidebar-user-meta strong {
	display: none;
	font-size: 0.7rem;
	font-weight: 700;
	color: #0f172a;
	letter-spacing: 0.01em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
	text-align: left;
}

.sidebar-user-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 14px;
	padding: 0 4px;
	border-radius: 4px;
	font-size: 0.5rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-transform: uppercase;
}

.sidebar-user-badge::after {
	content: attr(data-short);
}

.sidebar-user-badge[data-role="ADMIN"] {
	background: #fef2f2;
	border: 1px solid #fecaca;
	color: #b91c1c;
}

.sidebar-user-badge[data-role="GESTOR"] {
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	color: #1d4ed8;
}

.sidebar-user-badge[data-role="OP"] {
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	color: #15803d;
}

.sidebar-user-logout {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	padding: 5px 6px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #dc2626;
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
}

.sidebar-user-logout:hover {
	background: #fef2f2;
	color: #b91c1c;
}

.sidebar-user-logout i {
	font-size: 0.95rem;
	color: inherit;
}

@media (max-width: 1180px) {
	.header-tema-group .dropdown-tema-btn span {
		display: none;
	}
}

/* --- PERFIL DO USUÁRIO: CÁPSULA TÁTICA --- */

.user-profile-header {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	padding: 6px 12px;
	border-radius: 12px;
	transition: all 0.2s ease;
	position: relative;
	user-select: none;
	background: transparent !important;
	border: none !important;
	width: max-content !important;
	margin-left: auto !important;
}

.user-profile-header:hover {
	background: rgba(255, 255, 255, 0.1);
	transform: translateY(-1px);
}

/* --- DROPDOWN DO PERFIL --- */

.profile-dropdown {
	position: absolute;
	top: 55px;
	right: 0;
	display: none;
	flex-direction: column;
	z-index: 1001;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.12);
	padding: 8px 0;
	min-width: 240px;
}

.profile-dropdown.active {
	display: flex !important;
	animation: fadeInDown 0.2s ease-out;
}

/* =================================== */

/* --- CONTROLE DO DASHBOARD ADMIN --- */

/* =================================== */

/* 1. Header e Saudação (Compactação e Hub de Ação) */

.v3-dashboard-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	/* Mantive start para alinhar no topo */
	padding: 10px 0 !important;
	width: 100%;
	margin-bottom: 5px !important;
	/* Reduzi para encostar levemente no painel */
	height: auto !important;
}

/* ==========================================================================
   🚀 SIGMA V4 - EDITOR DE ARQUITETURA (MASTER-DETAIL)
   ========================================================================== */

/* --- CABEÇALHO GLOBAL DO EDITOR --- */

.editor-header-v4 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #ffffff;
	padding: 12px 20px;
	border-bottom: 1px solid #e2e8f0;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
	z-index: 10;
	flex-shrink: 0;
}

.md-master-header {
	padding: 16px 18px;
	border-bottom: 1px solid #f1f5f9;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: linear-gradient(180deg, #ffffff 0%, #fafbfc 100%);
	flex-shrink: 0;
}

.md-master-header h3 {
	margin: 0;
	font-size: 0.78rem;
	color: #800020;
	text-transform: uppercase;
	font-weight: 800;
	letter-spacing: 0.06em;
	display: flex;
	align-items: center;
	gap: 8px;
}

.md-master-header h3 i {
	font-size: 1.1rem;
	color: #800020;
}

.md-detail-header {
	padding: 16px 24px;
	background: #ffffff;
	border-bottom: 1px solid #e2e8f0;
	display: flex;
	align-items: center;
	gap: 15px;
	min-height: 56px;
	flex-shrink: 0;
}

.md-detail-header h3 {
	margin: 0;
	font-size: 1.05em;
	color: #1e293b;
	font-weight: 800;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	gap: 10px;
	letter-spacing: 0.02em;
}

/* Cabeçalho de cada Setor */

.v4-group-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	/* Reduzi de 20px para 10px */
	margin-bottom: 10px;
	/* Reduzi de 12px para 5px */
	padding-bottom: 5px;
}

.tl-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 10px;
}

/*=== CLASSES NOVO TRUG ===*/

/* ==========================================================================
   FORMULÁRIOS (NOVO TRUG) - CLEAN DESIGN
   ========================================================================== */

.form-header-action {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
}

.accordion-header-clean {
	background: var(--bg-card-clean);
	padding: 0.75rem 1.25rem;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	border: 1px solid var(--border-soft);
	transition: background 0.2s;
}

.accordion-header-clean:hover {
	background: var(--bg-main);
}

.accordion-header-clean.active {
	border-color: #cbd5e1;
}

.section-modern-header {
	background: transparent;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid var(--border-soft);
}

.sigma-page-hero {
	margin-bottom: 24px;
	text-align: left;
}

.sigma-page-hero-title {
	font-size: 1.5rem;
	font-weight: 700;
	color: #0f172a;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 8px;
}

.sigma-page-hero-title > i.ph {
	color: inherit;
}

.sigma-page-hero-sub {
	font-size: 0.85rem;
	color: #64748b;
	margin-top: 6px;
	font-weight: 500;
	line-height: 1.4;
}

/* Interior do Cartão */

.trug-card-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px dashed var(--border-soft);
	padding-bottom: 0.5rem;
}

.material-header-clean {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.timeline-header-clean {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0.5rem;
}

#cautela-detalhes .trug-detalhe-header,
#cautela-detalhes .cautela-title-container {
	margin-bottom: 0.25rem;
}

/* Material: botão Substituir/Reportar na linha */

#cautela-detalhes .material-header-clean {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: nowrap;
}

#cautela-detalhes .material-header-actions {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	margin-left: auto;
}

.trug-hub-mobile-header,
.trug-hub-mobile {
	display: none;
}

#painel-reporte-trug .trug-reporte-header {
	margin-bottom: 0.25rem;
}

#painel-reporte-trug .trug-reporte-header-icon {
	background: var(--trug-reporte-accent-soft);
	color: var(--trug-reporte-accent-deep);
	flex-shrink: 0;
}

#painel-reporte-trug .trug-reporte-header-icon i {
	font-size: 1.35rem;
}

/* Nova Conferência — tela única */

#painel-preparacao-conferencia .prep-conf-header {
	margin-bottom: 4px;
	padding-bottom: 14px;
}

#painel-preparacao-conferencia .prep-conf-header-icon {
	background: #fdf2f4;
	color: #800020;
	display: flex;
	align-items: center;
	justify-content: center;
}

#painel-preparacao-conferencia .prep-conf-header-icon i {
	font-size: 1.35rem;
}

#painel-preparacao-checklist .prep-check-header {
	margin-bottom: 4px;
	padding-bottom: 14px;
}

#painel-preparacao-checklist .prep-check-header-icon {
	background: var(--prep-check-accent-soft);
	color: var(--prep-check-accent);
	display: flex;
	align-items: center;
	justify-content: center;
}

#painel-preparacao-checklist .prep-check-header-icon i {
	font-size: 1.35rem;
}

/* Transições leves (NUNCA em filter — causa caixa branca e unfixed no iOS) */

.main-header,
.profile-dropdown,
.v4-op-card,
.card-lista-tela2,
.card-opcao-tela2,
div[id^="btn-visao-"] {
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease !important;
}

/* =========================================================================
   🛡️ BLINDAGEM DO CABEÇALHO E MENU CONTRA RETÂNGULO AZUL NO CELULAR
   ========================================================================= */

.user-profile-header,
#menu-perfil,
#menu-perfil *,
.profile-dropdown,
.profile-dropdown * {
    -webkit-tap-highlight-color: transparent !important;
    outline: none !important;
}

/* Evita que regras antigas de :active ou :focus pintem o fundo do cabeçalho de azul */

.user-profile-header:active,
.user-profile-header:focus,
#menu-perfil:active,
#menu-perfil:focus {
    background: transparent !important;
}

/* Cabeçalho de cada Sessão (Com número do Passo) */

.trug-step-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #ffffff;
    border-bottom: 1px solid #e2e8f0;
}

/* =============================================================================
   03-DASHBOARD · Dashboard — KPIs, cards, master-detail
   ============================================================================= */

/* ================================================================
   DASHBOARD MASTER-DETAIL (GESTORES E ADMIN - VERSÃO BLINDADA V4)
   ================================================================ */

/* 1. O CONTAINER PAI (Inicia como bloco simples para o Grid interno comandar) */

#dashboard-content-by-role.dashboard-master-detail-container {
	display: block !important;
	width: 100% !important;
	transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	box-sizing: border-box;
}

/* 2. A COLUNA DE CARDS VTR (Inicia ocupando 100%) */

.dashboard-master-column {
	width: 100% !important;
	max-height: calc(100vh - 140px);
	max-width: none !important;
	overflow-y: auto;
	transition: all 0.5s ease;
	flex: none !important;
	box-sizing: border-box;

	/* Esconde a barra de rolagem mas mantém a funcionalidade de scroll */
	scrollbar-width: none;
	/* Para Firefox */
	-ms-overflow-style: none;
	/* Para IE e Edge antigo */
}

/* Para esconder scroll Chrome, Safari e Edge Moderno (WebKit) */

.dashboard-master-column::-webkit-scrollbar {
	display: none;
}

/* 3. A COLUNA DE DETALHES DAS PENDÊNCIAS (Inicia escondida) */

.dashboard-detail-column {
	display: none;
	box-sizing: border-box;
	background: #fff;
	border-radius: 20px;
	padding: 20px;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
	/* Só fade — sem scale/slide que parece “nascer pequeno” */
	animation: sigma-detail-fade 0.22s ease-out;
}

@keyframes sigma-detail-fade {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* 4. A TRANSIÇÃO MAPA/MUTÁVEL (Ativada via JS com .split-view) */

#dashboard-content-by-role.split-view {
	display: flex !important;
	flex-direction: row !important;
	gap: 25px;
	/* Trava o container pai na altura limite da tela para ativar o scroll interno */
	height: calc(100vh - 140px) !important;
	max-height: calc(100vh - 140px) !important;
	overflow: hidden !important;
}

/* Força a coluna da esquerda (Cards) a virar uma lista vertical rolável isolada */

#dashboard-content-by-role.split-view .dashboard-master-column {
	flex: 0 0 380px !important;
	width: 380px !important;
	min-width: 380px !important;
	height: 100% !important;
	max-height: 100% !important;
	overflow-y: auto !important;
	/* Ativa rolagem independente na esquerda */
}

/* Libera a coluna da direita (Tabela de Gestão) para rolar livremente até o fim */

#dashboard-content-by-role.split-view .dashboard-detail-column {
	display: block !important;
	flex: 1 1 auto !important;
	min-width: min(520px, 100%) !important;
	width: auto !important;
	height: 100% !important;
	max-height: 100% !important;
	overflow-y: auto !important;
	/* Ativa rolagem independente na direita */
}

/* Ajuste nos cards para virarem lista única de 1 coluna no modo Split */

#dashboard-content-by-role.split-view #cards-container.cards-grid,
#dashboard-content-by-role.split-view .cards-grid {
	grid-template-columns: 1fr !important;
}

/* ================================================================
   DESTAQUE TÁTICO: CARD SELECIONADO NO DASHBOARD (SIGMA V4)
   ================================================================ */

/* Estado de repouso dos cards para garantir a transição suave */

.dashboard-master-column .v4-card-base,
.dashboard-master-column .v3-posto-card {
	border-left: 4px solid transparent !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* 🚀 O SABOTADOR VISUAL DETECTADO: Estilo do Card Selecionado/Ativo */

.dashboard-master-column .v4-card-base.selected,
.dashboard-master-column .v3-posto-card.selected {
	border-left: 6px solid #800020 !important;
	/* Barra Vinho de Prontidão */
	background-color: #fff1f2 !important;
	/* Fundo vinho translúcido (wash) */
	border-color: #fda4af !important;
	/* Borda vinho suave */
	box-shadow: 0 4px 12px rgba(128, 0, 32, 0.08) !important;
	/* Sombra de foco */
	transform: scale(0.97) translateX(4px);
	/* Recuo tático + aproximação da tabela */
}

/* Ajuste opcional para o texto interno do card ativo se destacar */

.dashboard-master-column .v4-card-base.selected .v4-text-title {
	color: #800020 !important;
	font-weight: 900 !important;
}

/* ================================================================
   EXCEÇÃO: LAYOUT FULL-WIDTH (ATIVADO PARA OPERACIONAL VIA JS)
   ================================================================ */

/* Quando a classe .dashboard-operacional-full é adicionada ao container pai */

.dashboard-master-detail-container.dashboard-operacional-full {
	display: block !important;
	/* Mata o Flexbox e as colunas */
}

.dashboard-operacional-full .dashboard-master-column {
	flex: none !important;
	width: 100% !important;
	max-width: 100% !important;
	max-height: none !important;
	overflow-y: visible !important;
	padding: 0 !important;
}

/* Esconde a coluna de detalhes (direta) que ficaria vazia para o operacional */

.dashboard-operacional-full .dashboard-detail-column {
	display: none !important;
}

.view-section>table,
.view-section>.cards-grid {
    max-width: 100%;
    overflow-x: auto;
    display: block;
}

/* Esconde todos os containers de dashboard no nascimento da página */

#admin-gestor-cards-container,
#operacional-cards-container,
#detail-placeholder,
.dashboard-detail-column,
.sigma-v3-details-wrapper {
	display: none !important;
}

/* Correção do layout do Skeleton e do Grid */

#cards-container.cards-grid-tiles {
	display: grid;
	/* Ajuste o 'minmax' de acordo com a largura real dos seus cards. 
       250px é um valor padrão para não ficar espremido. */
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 15px;
	width: 100%;
}

/* ============================================================
   🎛️ BOTÕES DE AÇÃO DO CABEÇALHO (PADRÃO C3I - LEVEZA E SOFT UI)
   ============================================================ */

/* Alinhamento perfeito do grupo de botões */

.botoes-topo-dashboard {
	gap: 15px !important;
	margin-top: 0 !important;
}

/* 2. Estrutura de Colunas (Master-Detail) */

#dashboard-content-by-role.split-view {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	width: 100% !important;
}

/* 2. CONGELA A COLUNA ESQUERDA (CARDS) */

#dashboard-content-by-role.split-view .dashboard-master-column {
	flex: 0 0 320px !important;
	min-width: 320px !important;
	max-width: 320px !important;
	display: flex !important;
	flex-direction: column !important;
}

/* 3. A GAVETA (DIREITA) TOMA O RESTO DA TELA */

#dashboard-content-by-role.split-view .dashboard-detail-column {
	flex: 1 !important;
	min-width: 0 !important;
	width: 100% !important;
	display: block !important;
}

#loading-message-dashboard {
	background: var(--bg-card-clean, #ffffff) !important;
	border: 1px solid #e2e8f0 !important;

}

/* --- COMPONENTES DE LISTAGEM (GRID DE ITENS) --- */

/* Container que dá o tom Premium */

.cards-grid-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: 20px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-top: 15px;
}

/* Container do Loading */

/* O Spinner com o escudo */

/* Tipografia elegante */

/* --- RÉGUA DE PRONTIDÃO (KPIs REPANIGADOS) --- */

#resume-container {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 15px;
	margin-bottom: 15px;
	width: 100%;
	/* Garantimos que não haja margem superior indesejada aqui */
	margin-top: 0;
}

.v4-kpi-card {
	background: #ffffff;
	border-radius: 12px;
	padding: 16px;
	display: flex;
	align-items: center;
	gap: 15px;
	/* Espaço entre ícone e texto */
	cursor: pointer;
	transition: all 0.3s ease;
	border: 1px solid #e2e8f0;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

/* Estado Ativo: Azul Elegante e Sofisticado */

.v4-kpi-card.active {
	border: 2px solid #1e40af !important;
	box-shadow: 0 0 12px rgba(30, 64, 175, 0.25) !important;
	transform: scale(1.02);
}

/* Cores de Fundo Suaves (Pastel) */

.kpi-vtr {
	background-color: #fef2f2 !important;
	border-color: #fecaca !important;
}

.kpi-ok {
	background-color: #f0fdf4 !important;
	border-color: #bbf7d0 !important;
}

/* =========================================
   ESTRUTURA INTERNA DOS TEXTOS (O SEGREDO DO EMPILHAMENTO)
========================================= */

.op-kpi-info {
	display: flex;
	flex-direction: column;
	/* Força os spans a ficarem um embaixo do outro */
	align-items: flex-start;
	z-index: 2;
	/* Mantém o texto acima da marca d'água */
	position: relative;
}

.op-kpi-valor {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 4px;
}

.op-kpi-label {
	font-size: 0.9rem;
	font-weight: 600;
	color: #334155;
}

.op-kpi-sub {
	font-size: 0.7rem;
	font-weight: 500;
	color: #64748b;
	margin-top: 5px;
	/* Reduzi de 10px para 5px para não empurrar o card para baixo */
	display: flex;
	align-items: center;
	gap: 5px;
}

/* =========================================
   ÍCONE MARCA D'ÁGUA GIGANTE
========================================= */

.op-kpi-icon {
	position: absolute;
	right: -5px;
	bottom: -10px;
	opacity: 0.15;
	font-size: 4rem !important;
	/* Reduzi de 5rem para 4rem para caber melhor */
	transition: all 0.3s ease;
	pointer-events: none;
	z-index: 1;
}

/* Animação do ícone girando/crescendo no Hover */

.v4-op-card:hover .op-kpi-icon {
	transform: scale(1.1) rotate(-5deg);
	opacity: 0.25;
}

/* --- CORREÇÃO TÁTICA: QUEBRA DE FORMAÇÃO COM O PAINEL DE DETALHES ABERTO --- */

/* Quando o painel direito abre, a classe .split-view é ativada. 
   Nesse momento, forçamos os grupos a empilharem novamente. */

.split-view #cards-container {
	flex-direction: column !important;
}

/* Garante que os cards dentro do grupo não fiquem espremidos na coluna menor */

.split-view .v4-group-grid {
	grid-template-columns: 1fr !important;
}

.split-view #operacional-cards-container .v4-group-section>div:last-child {
	display: flex !important;
	flex-direction: column !important;
}

/* Garante que a troca de cor seja suave e não um piscar brusco */

/* ---------------------------------------------------
   ESTRUTURA PRINCIPAL (O SEGREDO DA CENTRALIZAÇÃO)
--------------------------------------------------- */

#view-dashboard {
	position: relative;
}

/* =========================================================================
   🎭 EFEITO DE FOCO ABSOLUTO (RÉGUA DO GESTOR)
   ========================================================================= */

/* 1. Prepara todos os cards para transições suaves */

#resume-container .v4-op-card {
	transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease, filter 0.2s ease;
	position: relative;
}

#resume-container.em-foco .v4-op-card:not(.card-ativo) {
	opacity: 0.55;
	filter: grayscale(20%);
	transform: none;
	box-shadow: none;
}

#resume-container .v4-op-card.card-ativo {
	transform: none;
	box-shadow: 0 0 0 2px rgba(128, 0, 32, 0.28), 0 10px 24px rgba(15, 23, 42, 0.08);
	overflow: hidden !important;
	z-index: 2;
}

/* Remove a seta/triângulo legado que gerava barra glitch no KPI ativo */
#resume-container .v4-op-card::after,
#resume-container .v4-op-card.card-ativo::after,
#resume-container .op-card-green.card-ativo::after,
#resume-container .op-card-red.card-ativo::after,
#resume-container .op-card-blue.card-ativo::after,
#resume-container .op-card-amber.card-ativo::after {
	content: none !important;
	display: none !important;
	border: none !important;
	opacity: 0 !important;
}

/* 1. Ajuste no container que você está rolando para ele */

#wrapper-cards-dashboard {
	/* Define o espaço que o navegador deve deixar livre acima do elemento ao rolar */
	/* Ajuste o valor (ex: 200px) conforme a altura real da sua régua sticky + margem */
	scroll-margin-top: 220px;
}

/* =============================================================================
   04-TRUG · TRUG — listas, detalhe, reporte, badges
   ============================================================================= */

#cautela-suggestions-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

#cautela-suggestions-list li {
	padding: 10px 15px;
	cursor: pointer;
	font-size: 0.95em;
	color: #333;
	border-bottom: 1px solid #eee;
	transition: background-color 0.2s;
}

#cautela-suggestions-list li:hover {
	background-color: #ffecec;
	color: #800020;
	font-weight: 500;
}

.badge-cautela {
	background-color: #ffe0b2;
	color: #f57c00;
	border: 1px solid #f57c00;
}

#btn-receber-cautela {
	background-color: #1b8a3e;
	color: white;
}

#btn-receber-cautela:hover {
	background-color: #14682f;
}

.input-qtd-cautela {
	width: 50px;
	padding: 0.25rem;
	border: 1px solid var(--border-soft);
	border-radius: 4px;
	text-align: center;
	font-weight: 600;
}

.input-qtd-cautela:disabled {
	background: transparent;
	border-color: transparent;
}

/*=== CLASSES PARA TELA DE CAUTELAS ATIVA (TELA 1) ===*/

/* ==========================================================================
   ESTRUTURAS DE SEÇÃO E CABEÇALHO
   ========================================================================== */

/* Seção interna do TRUG totalmente ajustada para ocupar o espaço útil sem folgas */

#cautela-nova.cautela-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background-color: var(--bg-main);
    border-radius: var(--radius-clean);
    color: var(--text-dark);
	
}

#cautela-nova.cautela-section:not([hidden]) {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 1rem;
    animation: fadeIn 0.3s ease-in-out;
    box-sizing: border-box !important;
}

/* ==========================================================================
   GRID DE CARDS (SUBSTITUTO DA TABELA)
   ========================================================================== */

/* Design do Cartão Dinâmico */

.trug-card {
	background: var(--bg-card-clean);
	border: 1px solid var(--border-soft);
	border-radius: var(--radius-clean);
	padding: 1.25rem;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.02);
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	cursor: pointer;
	transition: all 0.2s ease;
	position: relative;
	overflow: hidden;
}

/* Tarja lateral de status */

.trug-card::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: var(--border-soft);
}

.trug-card.status-aberta::before {
	background: var(--text-warning-soft);
}

.trug-card.status-transferencia::before {
	background: #2563eb;
}

.trug-card.status-recebida::before {
	background: var(--text-success-soft);
}

.trug-card.status-devolucao::before {
	background: var(--text-danger-soft);
}

.trug-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 15px rgba(148, 163, 184, 0.15);
	border-color: #cbd5e1;
}

.trug-card-id {
	font-weight: 600;
	font-size: 1rem;
	color: var(--text-dark);
}

.trug-card-body {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.trug-info-line {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.85rem;
	color: var(--text-muted);
}

.trug-info-line i {
	width: 16px;
	text-align: center;
	color: var(--text-info-soft);
}

.trug-info-line span {
	font-weight: 600;
	color: var(--text-dark);
}

.trug-card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: auto;
	padding-top: 0.5rem;
}

.trug-items-count {
	font-size: 0.8rem;
	background: var(--bg-main);
	padding: 0.2rem 0.6rem;
	border-radius: 6px;
	color: var(--text-muted);
	font-weight: 600;
}

.cautela-title-container {
	padding-bottom: 0.5rem;
}

/* ==========================================================================
   INFORMAÇÕES (BLOCO 1 E 2)
   ========================================================================== */

.cautela-meta-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1.5rem;
}

#meta-item-recebedor-atual[hidden] {
	display: none !important;
}

/* Recebedor Almox: select → chip (toque para trocar) */

.trug-recebedor-almox-wrap {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.trug-recebedor-almox-select {
	min-width: 220px;
	max-width: 100%;
	width: 100%;
	font-weight: 600;
	box-sizing: border-box;
}

.trug-recebedor-almox-select[hidden] {
	display: none !important;
}

.trug-recebedor-almox-chip {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1.5px solid #86efac;
	background: #f0fdf4;
	color: #166534;
	cursor: pointer;
	text-align: left;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}

.trug-recebedor-almox-chip[hidden] {
	display: none !important;
}

.trug-recebedor-almox-chip > .ph-check-circle {
	font-size: 1.2rem;
	color: #16a34a;
	flex-shrink: 0;
	margin-top: 1px;
}

.trug-recebedor-almox-chip > span {
	flex: 1 1 auto;
	min-width: 0;
	font-weight: 700;
	font-size: 0.9rem;
	line-height: 1.35;
	color: #14532d;
	overflow-wrap: anywhere;
	word-break: break-word;
	white-space: normal;
}

.trug-recebedor-almox-chip-x {
	flex-shrink: 0;
	font-size: 1rem;
	line-height: 1;
	color: #15803d;
	opacity: 0.75;
	margin-top: 2px;
	padding: 2px;
	border-radius: 6px;
}

.trug-recebedor-almox-chip:hover,
.trug-recebedor-almox-chip:focus-visible {
	background: #dcfce7;
	border-color: #4ade80;
	outline: none;
}

.trug-recebedor-almox-chip:hover .trug-recebedor-almox-chip-x,
.trug-recebedor-almox-chip:focus-visible .trug-recebedor-almox-chip-x {
	opacity: 1;
	background: rgba(22, 163, 74, 0.12);
}

/* Detalhe TRUG: só aparece sem [hidden] (evita invasão sobre a lista) */

#cautela-detalhes[hidden] {
	display: none !important;
}

#cautela-detalhes:not([hidden]) {
	display: flex;
	flex-direction: column;
	gap: 1.35rem;
}

#cautela-detalhes .trug-detalhe-titulo {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	min-width: 0;
}

#cautela-detalhes .trug-status-junto-id,
#cautela-detalhes #cautela-status.status-pill {
	margin: 0;
	vertical-align: middle;
	flex-shrink: 0;
}

#cautela-detalhes .sigma-v3-clean-card.block-vertical {
	margin: 0;
}

#cautela-detalhes .trug-detalhe-acoes,
#cautela-detalhes .action-footer-card,
#cautela-detalhes .sigma-v3-clean-card.action-footer-card,
#cautela-detalhes .sigma-v3-clean-card.block-vertical.action-footer-card {
	background: none !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
	padding: 8px 0 4px !important;
	margin: 0 !important;
	min-height: 0 !important;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

#cautela-detalhes .trug-detalhe-acoes #cautela-botoes,
#cautela-detalhes .acoes-container-centered {
	display: inline-flex !important;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 12px;
	width: auto !important;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 !important;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
}

#cautela-detalhes .btn-trug-cancelar-direita {
	margin-left: 0;
}

#cautela-detalhes .material-main-clean {
	display: flex;
	flex-direction: row;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 10px;
	flex: 1 1 auto;
	min-width: 0;
}

#cautela-detalhes .btn-item-reportar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 6px 10px;
	font-size: 0.78rem;
	white-space: nowrap;
}

#cautela-detalhes .btn-item-reportar:disabled {
	opacity: 0.65;
	cursor: not-allowed;
}

/* Central TRUG: desktop vs mobile */

.trug-hub-desktop-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 15px;
	margin-top: 8px;
	padding-bottom: 20px;
}

/* Rodapé: Gerar (Adobe), Transferir (azul modal), Devolver (verde) */

#cautela-detalhes .btn-trug-gerar-pdf {
	background: #fef2f2;
	border-color: #fecaca;
	color: #b91c1c;
}

#cautela-detalhes .btn-trug-gerar-pdf i {
	color: #e5252a;
	font-size: 1.15em;
}

#cautela-detalhes .btn-trug-gerar-pdf:hover:not(:disabled) {
	background: #fee2e2;
	border-color: #f87171;
	color: #991b1b;
}

#cautela-detalhes .btn-trug-transferir {
	background: #2c7399;
	border-color: #2c7399;
	color: #ffffff;
}

#cautela-detalhes .btn-trug-transferir:hover:not(:disabled) {
	background: #246286;
	border-color: #246286;
	color: #ffffff;
}

#cautela-detalhes .btn-trug-devolver {
	background: #16a34a;
	border-color: #16a34a;
	color: #ffffff;
}

#cautela-detalhes .btn-trug-devolver:hover:not(:disabled) {
	background: #15803d;
	border-color: #15803d;
	color: #ffffff;
}

#cautela-detalhes .btn-trug-transferir:disabled,
#cautela-detalhes .btn-trug-devolver:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

/* ==========================================================================
   TELA: REPORTAR PROBLEMA (TRUG)
   ========================================================================== */

#painel-reporte-trug {
	--trug-reporte-accent: #f59e0b;
	--trug-reporte-accent-soft: #fef3c7;
	--trug-reporte-accent-border: #fcd34d;
	--trug-reporte-accent-deep: #d97706;
}

#painel-reporte-trug[hidden] {
	display: none !important;
}

#painel-reporte-trug:not([hidden]) {
	display: flex;
	flex-direction: column;
	gap: 1.35rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

#painel-reporte-trug .trug-detalhe-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#painel-reporte-trug .trug-reporte-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#painel-reporte-trug .trug-reporte-title-text .sigma-v3-title-label {
	margin: 0;
}

#painel-reporte-trug .trug-reporte-title-text .sigma-v3-description {
	margin: 4px 0 0;
}

#painel-reporte-trug .trug-reporte-stack {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	width: 100%;
}

#painel-reporte-trug .trug-reporte-lista {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}

#painel-reporte-trug .trug-reporte-card {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
	padding: 12px 14px;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

#painel-reporte-trug .trug-reporte-card.is-ativo {
	border-color: var(--trug-reporte-accent-border);
	background: #fffbeb;
	box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.12);
}

#painel-reporte-trug .trug-reporte-card.is-bloqueado {
	opacity: 0.72;
	background: #f8fafc;
}

#painel-reporte-trug .trug-reporte-card-head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	width: 100%;
	min-width: 0;
}

#painel-reporte-trug .trug-reporte-card-head-static {
	cursor: default;
}

#painel-reporte-trug .trug-reporte-card.is-inline .trug-reporte-card-body {
	margin-top: 12px;
	padding-top: 12px;
}

#painel-reporte-trug .trug-reporte-card-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1 1 auto;
	min-width: 0;
}

#painel-reporte-trug .trug-reporte-card-info strong {
	font-size: 0.95rem;
	color: #0f172a;
	overflow-wrap: anywhere;
}

#painel-reporte-trug .trug-reporte-card-info span {
	font-size: 0.8rem;
	color: #64748b;
}

#painel-reporte-trug .trug-reporte-badge-analise {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 600;
	background: #fee2e2;
	color: #b91c1c;
	white-space: nowrap;
}

#painel-reporte-trug .trug-reporte-card-body {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px dashed #e2e8f0;
}

#painel-reporte-trug .trug-reporte-card-body[hidden] {
	display: none !important;
}

#painel-reporte-trug .trug-reporte-card-body .frota-form-field {
	margin: 0;
}

#painel-reporte-trug .trug-reporte-card-body textarea.form-control-clean {
	min-height: 88px;
	resize: vertical;
}

#painel-reporte-trug .trug-reporte-actions {
	justify-content: center;
	padding-bottom: 8px;
}

#painel-reporte-trug .btn-trug-enviar-reporte {
	background: var(--trug-reporte-accent);
	border-color: var(--trug-reporte-accent);
	color: #fff;
	min-width: 180px;
	justify-content: center;
}

#painel-reporte-trug .btn-trug-enviar-reporte:hover:not(:disabled) {
	background: var(--trug-reporte-accent-deep);
	border-color: var(--trug-reporte-accent-deep);
	color: #fff;
}

#painel-reporte-trug .btn-trug-enviar-reporte:disabled {
	opacity: 0.65;
	cursor: wait;
}

#painel-reporte-trug .btn-trug-reporte-cancelar {
	min-width: 120px;
	justify-content: center;
}

body.trug-detalhe-aberta-body .content {
	padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
}

body.trug-detalhe-aberta-body.trug-detalhe-com-acao-hibrida .content {
	padding-bottom: var(--mobile-bottom-nav-clearance) !important;
}

/* Modal Transferir Carga — espaço vertical para sugestões */

.swal-trug-transferencia {
	max-height: 92vh !important;
	overflow: visible !important;
}

.swal-trug-transferencia .swal2-html-container,
.swal-trug-transferencia-html {
	overflow: visible !important;
	max-height: none !important;
	margin-top: 0.5rem !important;
}

.swal-trug-transf-wrap {
	position: relative;
	width: 100%;
}

.swal-trug-transf-input {
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.swal-trug-transf-chip {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	border-radius: 10px;
	border: 1.5px solid #86efac;
	background: #f0fdf4;
	color: #166534;
	cursor: pointer;
	text-align: left;
	user-select: none;
}

.swal-trug-transf-chip[hidden] {
	display: none !important;
}

.swal-trug-transf-chip > i {
	font-size: 1.25rem;
	color: #16a34a;
	flex-shrink: 0;
}

.swal-trug-transf-chip > span {
	flex: 1;
	min-width: 0;
	font-weight: 700;
	font-size: 0.95rem;
	color: #14532d;
}

.swal-trug-transf-chip > small {
	flex-shrink: 0;
	font-size: 0.7rem;
	font-weight: 600;
	color: #15803d;
	opacity: 0.85;
}

.swal-trug-transf-chip:hover {
	background: #dcfce7;
	border-color: #4ade80;
}

.swal-trug-transf-sugestoes {
	display: block;
	margin-top: 10px;
	min-height: 160px;
	max-height: 280px;
	overflow-y: auto;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.1);
}

.swal-trug-transf-sugestoes[hidden] {
	display: none !important;
}

.swal-trug-transf-item {
	padding: 11px 12px;
	cursor: pointer;
	border-bottom: 1px solid #f1f5f9;
	font-size: 0.9rem;
	color: #0f172a;
}

.swal-trug-transf-item:last-child {
	border-bottom: none;
}

.swal-trug-transf-item:hover {
	background: #f8fafc;
}

/* Cards mobile TRUG (mesma cara da tabela) */

.sigma-trug-mcards {
	display: none;
}

.sigma-almox-carga .kpi-trug {
	background: #fef3c7;
}

.sigma-almox-carga .kpi-trug small,
.sigma-almox-carga .kpi-trug b {
	color: #d97706;
}

.sigma-trug-mcard {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 14px 14px 12px;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06);
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.sigma-trug-mcard:active {
	transform: scale(0.985);
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.05);
}

.sigma-trug-mcard-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 10px;
}

.sigma-trug-mcard-origem {
	font-weight: 600;
	color: #334155;
	font-size: 0.88rem;
	margin-bottom: 8px;
	line-height: 1.35;
}

.sigma-trug-mcard .col-envolvidos {
	margin-bottom: 10px;
}

.sigma-trug-mcard-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;
	padding-top: 8px;
	border-top: 1px solid #f1f5f9;
}

.sigma-trug-mcard-qtd {
	background: #f1f5f9;
	padding: 4px 8px;
	border-radius: 6px;
	font-weight: 600;
	font-size: 0.8rem;
	color: #334155;
}

/* Estrutura da Linha (Substitui os Cards Pesados) */

.trug-row-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid #e2e8f0;
    transition: background-color 0.15s ease;
}

/* Efeito Zebrado Limpo */

.trug-row-item:nth-of-type(even) {
    background-color: #f8fafc;
}

.trug-row-item:hover {
    background-color: #f1f5f9 !important;
}

/* =========================================================================
   🚀 FORÇAR LAYOUT EM LINHAS ZEBRADAS E ANULAR O GRID (TELA NOVO TRUG)
   ========================================================================= */

#cautela-nova .accordion-content-clean {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    padding: 0 !important;
}

#cautela-nova .trug-row-item {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 12px 16px;
    border-bottom: 1px solid #e2e8f0;
    background: #ffffff;
    transition: background-color 0.15s ease;
}

#cautela-nova .trug-row-item:nth-of-type(even) {
    background-color: #f8fafc;
}

#cautela-nova .trug-row-item:hover {
    background-color: #f1f5f9 !important;
}

/* =========================================================================
   🌟 LAYOUT WIZARD: SESSÕES SEPARADAS E ZEBRADO (NOVO TRUG)
   ========================================================================= */

/* Fundo da tela levemente cinza para destacar os cartões brancos */

#cautela-nova.cautela-section {
    background-color: #f8fafc !important; 
    padding: 20px !important;
}

/* Container que envolve os passos */

.trug-wizard-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 15px;
}

/* Cartão Individual de cada Sessão */

.trug-step-card {
    background: #ffffff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    overflow: hidden;
}

/* Autocomplete do destinatário: não pode ser clipado pelo card */

#cautela-nova .trug-step-card--com-autocomplete,
#cautela-nova .trug-step-card:has(#cautela-suggestions-box) {
    overflow: visible;
    position: relative;
    z-index: 6;
}

#cautela-nova .trug-step-card--com-autocomplete .custom-select-container,
#cautela-nova .trug-step-card:has(#cautela-suggestions-box) .custom-select-container {
    position: relative;
    z-index: 30;
}

#cautela-nova #cautela-suggestions-box.suggestions-box-clean {
    z-index: 80;
    max-height: 260px;
    overflow-y: auto;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.16);
}

.trug-step-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: #800020; /* Vermelho Institucional */
    color: #ffffff;
    border-radius: 50%;
    font-size: 0.9rem;
    font-weight: bold;
    box-shadow: 0 2px 4px rgba(128, 0, 32, 0.3);
}

.trug-step-title {
    margin: 0;
    font-size: 1.1rem;
    color: #1e293b;
    font-weight: 600;
}

/* Corpo do Cartão */

.trug-step-body {
    padding: 20px;
}

/* =========================================================================
   🦓 CORREÇÃO DO ZEBRADO NAS LINHAS DE MATERIAIS
   ========================================================================= */

#cautela-nova .trug-row-item {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 12px 16px;
    border-bottom: 1px solid #e2e8f0;
    background-color: #ffffff !important; /* Força o branco nas ímpares */
    transition: background-color 0.15s ease;
}

/* A mágica do Zebrado: Linhas Pares ganham cinza bem claro */

#cautela-nova .trug-row-item:nth-child(even) {
    background-color: #f1f5f9 !important; 
}

/* Hover de interação em qualquer linha */

#cautela-nova .trug-row-item:hover {
    background-color: #e2e8f0 !important; 
}

.trug-id-badge {
    font-family: monospace;
    font-size: 0.95rem;
    font-weight: 700;
    color: #800020;
}

.trug-emissao-date {
    font-size: 0.8rem;
    color: #64748b;
    display: flex;
    align-items: center;
    gap: 4px;
}

/* =============================================================================
   05-ALMOX · Almoxarifado — catálogo, aporte, rastreio, histórico
   ============================================================================= */

/*======================================== verificar a partir daqui ===============*/

.g-cat-tab-btn {
	flex-grow: 1;
	font-size: 0.85em;
}

/* Cabeçalho bordô legado removido — usa sigma-modern-table */

.g-cat-tab-btn {
	padding: 10px 18px;
	border: none;
	background: #f1f1f1;
	cursor: pointer;
	font-weight: bold;
	color: #666;
	border-radius: 8px 8px 0 0;
	transition: all 0.2s ease;
	border-bottom: 3px solid transparent;

}

.g-cat-tab-btn:hover {
	background: #e9e9e9;
	color: #800020;
}

.g-cat-tab-btn.active {
	background: #fff;
	color: #800020;
	border-bottom: 3px solid #800020;
	box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.05);
}

/* Linhas do inventário — accent por estado de estoque */
#almox-table tbody tr.almox-row {
	cursor: pointer;
	transition: background-color 0.18s ease, box-shadow 0.18s ease;
}

#almox-table tbody tr.almox-row:nth-child(odd) {
	background: #ffffff;
}

#almox-table tbody tr.almox-row:nth-child(even) {
	background: #fbfdff;
}

#almox-table tbody tr.almox-row:hover {
	background: #f8fafc !important;
	box-shadow: inset 3px 0 0 #800020;
}

#almox-table tbody tr.almox-row.is-alerta {
	box-shadow: inset 3px 0 0 #ef4444;
}

#almox-table tbody tr.almox-row.is-zerado {
	box-shadow: inset 3px 0 0 #94a3b8;
}

#almox-table tbody tr.almox-row.is-baixo {
	box-shadow: inset 3px 0 0 #f59e0b;
}

#almox-table tbody tr.almox-row.is-ok:hover {
	box-shadow: inset 3px 0 0 #16a34a;
}

.v4-btn-tool,
.v4-btn-almox-tool {
	width: 34px !important;
	height: 34px !important;
	border-radius: 8px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
	font-size: 14px !important;
	outline: none !important;
}

.v4-btn-tool:hover,
.v4-btn-almox-tool:hover {
	transform: scale(1.1) !important;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1) !important;
}

/* =========================================================
   📦 VIEW: NOVO CADASTRO DE MATERIAL (ficha mestre)
   ========================================================= */

#view-novo-catalogo.sigma-catalogo-view {
	width: 100%;
	min-height: calc(100vh - 60px);
	background: #f8fafc;
	padding-bottom: 2rem;
	box-sizing: border-box;
}

#view-novo-catalogo.sigma-catalogo-view.is-modo-busca {
	min-height: 0;
	height: auto;
	flex: 0 0 auto;
	align-self: flex-start;
	width: 100%;
}

#view-novo-catalogo .sigma-catalogo-wrap {
	width: 100%;
	max-width: none;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1.15rem;
	box-sizing: border-box;
}

#view-novo-catalogo.is-modo-busca .sigma-catalogo-wrap {
	flex: 0 0 auto;
	min-height: 0;
	height: auto;
	gap: 0.7rem;
}

#view-novo-catalogo .sigma-catalogo-hero {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 4px 2px 8px;
}

#view-novo-catalogo .sigma-catalogo-hero-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(160deg, #fff1f2 0%, #f8fafc 75%);
	border: 1px solid #e2e8f0;
	color: #800020;
	font-size: 1.55rem;
	flex-shrink: 0;
}

#view-novo-catalogo .sigma-catalogo-title {
	margin: 0;
	font-size: 1.45rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.2;
}

#view-novo-catalogo .sigma-catalogo-sub {
	margin: 4px 0 0;
	font-size: 0.86rem;
	color: #64748b;
	font-weight: 500;
}

#view-novo-catalogo .sigma-catalogo-card.is-busca .sigma-catalogo-card-head {
	background: #f0f9ff;
}

#view-novo-catalogo .sigma-catalogo-card.is-busca .sigma-catalogo-card-head > i {
	color: #0369a1;
}

#view-novo-catalogo .sigma-catalogo-card.is-busca {
	flex: 0 0 auto;
	height: auto;
	align-self: stretch;
}

#view-novo-catalogo .sigma-catalogo-card.is-busca .sigma-catalogo-card-body {
	gap: 8px;
	padding: 12px 18px 14px;
	justify-content: flex-start;
	flex: 0 0 auto;
	min-height: 0;
}

/* flex: 1 1 200px global vira altura de 200px neste card em coluna */
#view-novo-catalogo .sigma-catalogo-card.is-busca .sigma-v3-input-group {
	flex: 0 0 auto;
	min-width: 0;
	width: 100%;
	height: auto;
}

#view-novo-catalogo .sigma-catalogo-dna-hint {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.78rem;
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-dna-status {
	margin: 0;
	font-size: 0.86rem;
	font-weight: 600;
	color: #475569;
}

#view-novo-catalogo .sigma-catalogo-dna-status:empty,
#view-novo-catalogo .sigma-catalogo-dna-resultados:empty {
	display: none;
}

#view-novo-catalogo .sigma-catalogo-dna-status .is-muted { color: #94a3b8; font-weight: 500; }
#view-novo-catalogo .sigma-catalogo-dna-status .is-ok { color: #0f766e; }
#view-novo-catalogo .sigma-catalogo-dna-status .is-empty { color: #b45309; }
#view-novo-catalogo .sigma-catalogo-dna-status .is-err { color: #b91c1c; }
#view-novo-catalogo .sigma-catalogo-dna-status .is-loading { color: #0369a1; }

#view-novo-catalogo .sigma-catalogo-dna-resultados {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	flex: 0 0 auto;
	height: auto;
	min-height: 0;
	max-height: min(38vh, 280px);
	overflow-y: auto;
	padding-right: 2px;
}

#view-novo-catalogo .sigma-catalogo-dna-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.85rem 1rem;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
}

#view-novo-catalogo .sigma-catalogo-dna-card-main {
	min-width: 0;
	flex: 1 1 auto;
}

#view-novo-catalogo .sigma-catalogo-dna-card-main strong {
	display: block;
	font-size: 0.95rem;
	color: #0f172a;
	line-height: 1.3;
}

#view-novo-catalogo .sigma-catalogo-dna-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem 0.65rem;
	margin-top: 0.35rem;
	font-size: 0.75rem;
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-dna-unids {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.45rem;
	font-size: 0.72rem;
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-dna-pill {
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	border-radius: 999px;
	background: #f1f5f9;
	color: #334155;
	font-weight: 700;
	letter-spacing: 0.02em;
}

#view-novo-catalogo .sigma-catalogo-dna-pill.is-muted {
	background: transparent;
	color: #94a3b8;
	font-weight: 500;
	padding-left: 0;
}

#view-novo-catalogo .sigma-catalogo-dna-unids .is-mine {
	font-style: normal;
	color: #0f766e;
	font-weight: 700;
	margin-left: 0.25rem;
}

#view-novo-catalogo .sigma-catalogo-dna-criar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem;
	margin-top: 0.35rem;
	padding: 0.85rem 1rem;
	border: 1px dashed #cbd5e1;
	border-radius: 12px;
	background: #f8fafc;
}

#view-novo-catalogo .sigma-catalogo-dna-criar-copy {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	min-width: 0;
}

#view-novo-catalogo .sigma-catalogo-dna-criar-copy > i {
	font-size: 1.35rem;
	color: #800020;
	margin-top: 2px;
}

#view-novo-catalogo .sigma-catalogo-dna-criar-copy strong {
	display: block;
	color: #0f172a;
	font-size: 0.92rem;
}

#view-novo-catalogo .sigma-catalogo-dna-criar-copy span {
	display: block;
	margin-top: 2px;
	font-size: 0.8rem;
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-hero-copy {
	min-width: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

#view-novo-catalogo .sigma-catalogo-voltar-hero {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	margin: 0 0 4px;
	padding: 0;
	border: none;
	background: transparent;
	color: #64748b;
	font-size: 0.8rem;
	font-weight: 650;
	line-height: 1.2;
	cursor: pointer;
	letter-spacing: 0.01em;
}

#view-novo-catalogo .sigma-catalogo-voltar-hero i {
	font-size: 0.95rem;
	line-height: 1;
}

#view-novo-catalogo .sigma-catalogo-voltar-hero:hover {
	color: #800020;
}

#view-novo-catalogo .sigma-catalogo-voltar-hero[hidden] {
	display: none !important;
}

#view-novo-catalogo #catalogo-ficha-form[hidden],
#view-novo-catalogo #catalogo-gate-busca[hidden],
#view-novo-catalogo #catalogo-ficha-voltar[hidden],
#view-novo-catalogo #catalogo-dna-criar-box[hidden] {
	display: none !important;
}

@media (max-width: 720px) {
	#view-novo-catalogo .sigma-catalogo-dna-card {
		flex-direction: column;
		align-items: stretch;
	}
	#view-novo-catalogo .sigma-catalogo-dna-card .btn-soft {
		width: 100%;
		justify-content: center;
	}
}

#view-novo-catalogo .sigma-catalogo-card {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	/* visible: o autocomplete de família/peças não pode ser cortado */
	overflow: visible;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

#view-novo-catalogo .sigma-catalogo-card-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	border-bottom: 1px solid #e2e8f0;
	border-radius: 16px 16px 0 0;
}

#view-novo-catalogo .sigma-catalogo-card.is-id .sigma-catalogo-card-head {
	background: #eff6ff;
}

#view-novo-catalogo .sigma-catalogo-card.is-log .sigma-catalogo-card-head {
	background: #f0fdf4;
}

#view-novo-catalogo .sigma-catalogo-card.is-ctrl .sigma-catalogo-card-head {
	background: #f8fafc;
}

#view-novo-catalogo .sigma-catalogo-step {
	width: 28px;
	height: 28px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.78rem;
	font-weight: 800;
	background: #fff;
	border: 1px solid #e2e8f0;
	color: #0f172a;
	flex-shrink: 0;
}

#view-novo-catalogo .sigma-catalogo-card-head > i {
	font-size: 1.25rem;
	flex-shrink: 0;
}

#view-novo-catalogo .sigma-catalogo-card.is-id .sigma-catalogo-card-head > i {
	color: #2563eb;
}

#view-novo-catalogo .sigma-catalogo-card.is-log .sigma-catalogo-card-head > i {
	color: #16a34a;
}

#view-novo-catalogo .sigma-catalogo-card.is-ctrl .sigma-catalogo-card-head > i {
	color: #800020;
}

#view-novo-catalogo .sigma-catalogo-card-head h3 {
	margin: 0;
	font-size: 1rem;
	font-weight: 800;
	color: #0f172a;
}

#view-novo-catalogo .sigma-catalogo-card-head p {
	margin: 2px 0 0;
	font-size: 0.78rem;
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-card-body {
	padding: 18px 20px 20px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

#view-novo-catalogo .sigma-v3-input-group {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

#view-novo-catalogo .sigma-v3-input-group > label,
#view-novo-catalogo .sigma-catalogo-natureza-block > label {
	font-size: 0.72rem;
	font-weight: 800;
	color: #475569;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

#view-novo-catalogo .req {
	color: #e11d48;
}

#view-novo-catalogo .sigma-form-grid {
	display: grid;
	gap: 14px;
}

#view-novo-catalogo .sigma-catalogo-grid-2-1 {
	grid-template-columns: 2fr 1fr;
}

#view-novo-catalogo .sigma-catalogo-grid-2 {
	grid-template-columns: 1fr 1fr;
}

/* Identificação: campos à esquerda + foto média à direita */
#view-novo-catalogo .sigma-catalogo-id-com-foto {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 168px;
	gap: 1.25rem;
	align-items: start;
}

#view-novo-catalogo .sigma-catalogo-card.is-id > .sigma-catalogo-manual-group {
	margin: 0 18px 16px;
	padding-top: 0.85rem;
	border-top: 1px solid #f1f5f9;
}

#view-novo-catalogo .sigma-catalogo-id-campos {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
}

#view-novo-catalogo .sigma-catalogo-foto-box {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.5rem;
	width: 168px;
}

#view-novo-catalogo .sigma-catalogo-foto-label {
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-foto-preview {
	width: 168px;
	height: 168px;
	border-radius: 14px;
	border: 1.5px dashed #cbd5e1;
	background: #f8fafc;
	padding: 0;
	cursor: pointer;
	overflow: hidden;
	position: relative;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

#view-novo-catalogo .sigma-catalogo-foto-preview:hover {
	border-color: #800020;
	background: #fff;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.08);
}

#view-novo-catalogo .sigma-catalogo-foto-preview.has-foto {
	border-style: solid;
	border-color: #e2e8f0;
}

#view-novo-catalogo .sigma-catalogo-foto-preview img:not([hidden]) {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

#view-novo-catalogo .sigma-catalogo-foto-preview img[hidden] {
	display: none !important;
}

#view-novo-catalogo .sigma-catalogo-foto-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	color: #64748b;
	padding: 0.75rem;
	box-sizing: border-box;
}

#view-novo-catalogo .sigma-catalogo-foto-placeholder i {
	font-size: 1.75rem;
	color: #94a3b8;
}

#view-novo-catalogo .sigma-catalogo-foto-placeholder span {
	font-size: 0.78rem;
	font-weight: 700;
	color: #475569;
}

#view-novo-catalogo .sigma-catalogo-foto-placeholder small {
	font-size: 0.68rem;
	color: #94a3b8;
	text-align: center;
	line-height: 1.35;
}

#view-novo-catalogo .sigma-catalogo-foto-remover {
	border: none;
	background: transparent;
	color: #be123c;
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
	align-items: center;
	justify-content: center;
	gap: 0.3rem;
	padding: 0.25rem;
}

#view-novo-catalogo .sigma-catalogo-foto-remover:not([hidden]) {
	display: inline-flex;
}

#view-novo-catalogo .sigma-catalogo-foto-remover[hidden] {
	display: none !important;
}

#view-novo-catalogo .sigma-catalogo-foto-remover:hover {
	text-decoration: underline;
}

/* Manual do usuário (PDF opcional) */
#view-novo-catalogo .sigma-catalogo-manual-group {
	margin-top: 0;
	margin-bottom: 0;
}

#view-novo-catalogo .sigma-catalogo-manual-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
}

#view-novo-catalogo .sigma-catalogo-manual-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.55rem 0.85rem;
	border-radius: 10px;
	border: 1px dashed #cbd5e1;
	background: #f8fafc;
	color: #475569;
	font-size: 0.82rem;
	font-weight: 600;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
	max-width: 100%;
}

#view-novo-catalogo .sigma-catalogo-manual-btn:hover {
	border-color: #800020;
	background: #fff;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.08);
}

#view-novo-catalogo .sigma-catalogo-manual-btn.has-file {
	border-style: solid;
	border-color: #bbf7d0;
	background: #f0fdf4;
	color: #166534;
}

#view-novo-catalogo .sigma-catalogo-manual-btn i {
	font-size: 1.15rem;
	flex-shrink: 0;
}

#view-novo-catalogo .sigma-catalogo-manual-btn span {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#view-novo-catalogo .sigma-catalogo-manual-remover {
	border: none;
	background: transparent;
	color: #be123c;
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
	align-items: center;
	gap: 0.3rem;
	padding: 0.25rem;
}

#view-novo-catalogo .sigma-catalogo-manual-remover:not([hidden]) {
	display: inline-flex;
}

#view-novo-catalogo .sigma-catalogo-manual-remover[hidden] {
	display: none !important;
}

#view-novo-catalogo .sigma-catalogo-manual-remover:hover {
	text-decoration: underline;
}

#view-novo-catalogo .sigma-catalogo-manual-hint {
	margin: 0.35rem 0 0;
	font-size: 0.72rem;
	color: #94a3b8;
	line-height: 1.4;
}

#view-novo-catalogo .sigma-v3-input,
#view-novo-catalogo .sigma-v3-select {
	width: 100%;
	padding: 11px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	background: #f8fafc;
	color: #1e293b;
	font-size: 0.9rem;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
	box-sizing: border-box;
	min-height: 44px;
}

#view-novo-catalogo .sigma-v3-input:focus,
#view-novo-catalogo .sigma-v3-select:focus {
	outline: none;
	border-color: #800020;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

#view-novo-catalogo #novo-cat-familia.is-nova {
	border-left: 4px solid #16a34a;
	background: #f0fdf4;
}

#view-novo-catalogo #novo-cat-familia.is-existente {
	border-left: 4px solid #d97706;
	background: #fffbeb;
}

#view-novo-catalogo .sigma-catalogo-input-icon {
	position: relative;
}

#view-novo-catalogo .sigma-catalogo-input-icon > i {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	pointer-events: none;
	font-size: 1rem;
}

#view-novo-catalogo .sigma-catalogo-input-icon .sigma-v3-input {
	padding-left: 38px;
}

#view-novo-catalogo .sigma-catalogo-suggest-wrap {
	position: relative;
	z-index: 20;
}

#view-novo-catalogo .sigma-catalogo-card.is-id {
	position: relative;
	z-index: 30;
}

#view-novo-catalogo .sigma-catalogo-suggest {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	width: 100%;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
	z-index: 80;
	max-height: 220px;
	overflow-y: auto;
}

#view-novo-catalogo .sigma-catalogo-suggest[hidden] {
	display: none !important;
}

#view-novo-catalogo .sigma-catalogo-suggest:not([hidden]) {
	display: block !important;
}

#view-novo-catalogo .sigma-catalogo-suggest-list {
	margin: 0;
	padding: 4px;
	list-style: none;
}

#view-novo-catalogo .sigma-catalogo-suggest-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-radius: 8px;
	cursor: pointer;
	font-size: 0.86rem;
	font-weight: 700;
	color: #0f172a;
}

#view-novo-catalogo .sigma-catalogo-suggest-item:hover {
	background: #f8fafc;
}

#view-novo-catalogo .sigma-catalogo-suggest-item > i {
	color: #d97706;
	font-size: 1.05rem;
}

#view-novo-catalogo .sigma-catalogo-suggest-item.is-create > i {
	color: #16a34a;
}

#view-novo-catalogo .sigma-catalogo-suggest-item.is-create strong {
	display: block;
	color: #15803d;
	font-size: 0.84rem;
}

#view-novo-catalogo .sigma-catalogo-suggest-item.is-create small,
#view-novo-catalogo .sigma-catalogo-suggest-empty {
	display: block;
	color: #64748b;
	font-size: 0.72rem;
	font-weight: 600;
	padding: 10px 12px;
}

#view-novo-catalogo .sigma-catalogo-natureza-block {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#view-novo-catalogo .sigma-catalogo-natureza-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

#view-novo-catalogo .nature-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	text-align: left;
	border: 1px solid #cbd5e1;
	background: #f8fafc;
	border-radius: 12px;
	padding: 14px 16px;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
	box-sizing: border-box;
	font: inherit;
	color: inherit;
	min-height: 96px;
}

#view-novo-catalogo .nature-card > i {
	font-size: 1.35rem;
	color: #64748b;
	margin-bottom: 2px;
}

#view-novo-catalogo .nature-card .nature-title {
	font-size: 0.88rem;
	font-weight: 800;
	color: #334155;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

#view-novo-catalogo .nature-card small {
	font-size: 0.72rem;
	color: #94a3b8;
	font-weight: 500;
	line-height: 1.3;
}

#view-novo-catalogo .nature-card:hover {
	border-color: #94a3b8;
	background: #fff;
}

#view-novo-catalogo .nature-card.selected {
	border-color: #800020;
	background: #fff1f2;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.08);
}

#view-novo-catalogo .nature-card.selected > i,
#view-novo-catalogo .nature-card.selected .nature-title {
	color: #800020;
}

#view-novo-catalogo .sigma-catalogo-toggle {
	display: block;
	cursor: pointer;
	margin: 0;
}

#view-novo-catalogo .sigma-catalogo-toggle > input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

#view-novo-catalogo .sigma-catalogo-toggle-ui {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #cbd5e1;
	border-radius: 12px;
	background: #f8fafc;
	min-height: 44px;
	transition: border-color 0.15s ease, background 0.15s ease;
}

#view-novo-catalogo .sigma-catalogo-toggle-ui > i {
	font-size: 1.2rem;
	color: #94a3b8;
	margin-top: 2px;
}

#view-novo-catalogo .sigma-catalogo-toggle-ui b {
	display: block;
	font-size: 0.84rem;
	font-weight: 800;
	color: #334155;
}

#view-novo-catalogo .sigma-catalogo-toggle-ui small {
	display: block;
	margin-top: 2px;
	font-size: 0.72rem;
	color: #94a3b8;
	font-weight: 500;
}

#view-novo-catalogo .sigma-catalogo-toggle > input:checked + .sigma-catalogo-toggle-ui {
	border-color: #800020;
	background: #fff1f2;
}

#view-novo-catalogo .sigma-catalogo-toggle > input:checked + .sigma-catalogo-toggle-ui > i {
	color: #800020;
}

#view-novo-catalogo .sigma-catalogo-panel {
	padding: 16px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	display: flex;
	flex-direction: column;
	gap: 12px;
	transition: border-color 0.25s ease, background 0.25s ease;
}

#view-novo-catalogo .sigma-catalogo-panel[hidden] {
	display: none !important;
}

#view-novo-catalogo .sigma-catalogo-panel.is-flash {
	border-color: #800020;
	background: #fff1f2;
}

#view-novo-catalogo .sigma-catalogo-panel-head {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

#view-novo-catalogo .sigma-catalogo-panel-head > i {
	color: #800020;
	font-size: 1.2rem;
	margin-top: 1px;
}

#view-novo-catalogo .sigma-catalogo-panel-head strong {
	display: block;
	font-size: 0.82rem;
	font-weight: 800;
	color: #0f172a;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

#view-novo-catalogo .sigma-catalogo-panel-head span {
	display: block;
	font-size: 0.75rem;
	color: #64748b;
	margin-top: 2px;
}

#view-novo-catalogo .sigma-catalogo-bula-list,
#view-novo-catalogo .sigma-catalogo-comp-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#view-novo-catalogo .linha-bula-kit {
	display: grid;
	grid-template-columns: 1fr 84px 36px;
	gap: 8px;
	align-items: center;
}

#view-novo-catalogo .linha-bula-kit .input-bula-nome {
	text-transform: uppercase;
}

#view-novo-catalogo .linha-bula-kit .input-bula-qtd {
	text-align: center;
	font-weight: 800;
}

#view-novo-catalogo .sigma-catalogo-add-line {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 12px;
	border: 2px dashed #cbd5e1;
	border-radius: 10px;
	background: #fff;
	color: #15803d;
	font-weight: 800;
	font-size: 0.8rem;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}

#view-novo-catalogo .sigma-catalogo-add-line:hover {
	border-color: #86efac;
	background: #f0fdf4;
}

#view-novo-catalogo .sigma-catalogo-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: none;
	background: transparent;
	color: #ef4444;
	cursor: pointer;
	border-radius: 8px;
	font-size: 1.2rem;
}

#view-novo-catalogo .sigma-catalogo-remove:hover {
	background: #fef2f2;
}

#view-novo-catalogo .componente-selecionado-regra {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	background: #fff;
	padding: 12px 14px;
	border: 1px solid #e2e8f0;
	border-left: 4px solid #800020;
	border-radius: 10px;
}

#view-novo-catalogo .sigma-catalogo-comp-info {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}

#view-novo-catalogo .sigma-catalogo-comp-info i {
	color: #64748b;
}

#view-novo-catalogo .sigma-catalogo-comp-info span {
	font-weight: 800;
	font-size: 0.84rem;
	color: #0f172a;
	text-transform: uppercase;
}

#view-novo-catalogo .sigma-catalogo-comp-actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

#view-novo-catalogo .sigma-catalogo-comp-actions label {
	font-size: 0.68rem;
	font-weight: 800;
	color: #94a3b8;
}

#view-novo-catalogo .sigma-catalogo-comp-actions .input-qtd-regra {
	width: 64px;
	min-height: 36px;
	padding: 6px;
	text-align: center;
	font-weight: 800;
}

#view-novo-catalogo .novo-catalogo-actions {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 4px;
	padding: 8px 0 4px;
}

#view-novo-catalogo .btn-catalogo-salvar,
#view-novo-catalogo .btn-catalogo-cancelar {
	min-width: 148px;
	justify-content: center;
}

@media (max-width: 768px) {
	#view-novo-catalogo .sigma-catalogo-grid-2-1,
	#view-novo-catalogo .sigma-catalogo-grid-2,
	#view-novo-catalogo .sigma-catalogo-natureza-grid {
		grid-template-columns: 1fr;
	}

	#view-novo-catalogo .sigma-catalogo-id-com-foto {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	#view-novo-catalogo .sigma-catalogo-id-campos {
		width: 100%;
	}

	#view-novo-catalogo .sigma-catalogo-foto-box {
		order: -1;
		width: 148px;
	}

	#view-novo-catalogo .sigma-catalogo-foto-preview {
		width: 148px;
		height: 148px;
	}

	#view-novo-catalogo .sigma-catalogo-title {
		font-size: 1.2rem;
	}

	#view-novo-catalogo .novo-catalogo-actions {
		flex-direction: column;
		align-items: stretch;
	}

	#view-novo-catalogo .btn-catalogo-salvar,
	#view-novo-catalogo .btn-catalogo-cancelar {
		width: 100%;
		min-width: 0;
	}

	#view-novo-catalogo .linha-bula-kit {
		grid-template-columns: 1fr 72px 36px;
	}
}

/* =========================================================
   📥 VIEW: APORTE DE MATERIAL (lote + QR + trilha fiscal)
   ========================================================= */

#view-aporte.sigma-aporte-view {
	width: 100%;
	min-height: calc(100vh - 60px);
	background: #f8fafc;
	padding-bottom: 2rem;
	box-sizing: border-box;
}

#view-aporte .sigma-aporte-wrap {
	width: 100%;
	max-width: none;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	box-sizing: border-box;
}

#view-aporte .sigma-aporte-hero {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 2px 0 4px;
}

#view-aporte .sigma-aporte-hero-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(160deg, #e0f2fe 0%, #f8fafc 75%);
	border: 1px solid #e2e8f0;
	color: #0369a1;
	font-size: 1.5rem;
	flex-shrink: 0;
}

#view-aporte .sigma-aporte-title {
	margin: 0;
	font-size: 1.4rem;
	font-weight: 800;
	color: #0f172a;
}

#view-aporte .sigma-aporte-sub {
	margin: 4px 0 0;
	font-size: 0.86rem;
	color: #64748b;
}

#view-aporte .sigma-aporte-item-card {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px 18px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-left: 4px solid #0284c7;
	border-radius: 14px;
}

#view-aporte .sigma-aporte-item-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f0f9ff;
	color: #0369a1;
	font-size: 1.3rem;
	flex-shrink: 0;
}

#view-aporte .sigma-aporte-item-copy small {
	display: block;
	font-size: 0.68rem;
	font-weight: 800;
	color: #0284c7;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

#view-aporte .sigma-aporte-item-copy strong {
	display: block;
	margin-top: 2px;
	font-size: 1.15rem;
	font-weight: 800;
	color: #0f172a;
	text-transform: uppercase;
}

#view-aporte .sigma-aporte-item-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-top: 8px;
	font-size: 0.75rem;
	font-weight: 600;
	color: #64748b;
}

#view-aporte .sigma-aporte-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

#view-aporte .sigma-aporte-card-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	border-bottom: 1px solid #e2e8f0;
}

#view-aporte .sigma-aporte-card.is-log .sigma-aporte-card-head { background: #eff6ff; }
#view-aporte .sigma-aporte-card.is-vida .sigma-aporte-card-head { background: #eef2ff; }
#view-aporte .sigma-aporte-card.is-lote .sigma-aporte-card-head { background: #f0fdf4; }
#view-aporte .sigma-aporte-card.is-uid .sigma-aporte-card-head { background: #fff7ed; }
#view-aporte .sigma-aporte-card.is-doc .sigma-aporte-card-head { background: #f8fafc; }

#view-aporte .sigma-aporte-step {
	width: 28px;
	height: 28px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.78rem;
	font-weight: 800;
	background: #fff;
	border: 1px solid #e2e8f0;
	color: #0f172a;
}

#view-aporte .sigma-aporte-card-head > i { font-size: 1.25rem; }
#view-aporte .sigma-aporte-card.is-log .sigma-aporte-card-head > i { color: #2563eb; }
#view-aporte .sigma-aporte-card.is-vida .sigma-aporte-card-head > i { color: #4f46e5; }
#view-aporte .sigma-aporte-card.is-lote .sigma-aporte-card-head > i { color: #16a34a; }
#view-aporte .sigma-aporte-card.is-uid .sigma-aporte-card-head > i { color: #ea580c; }
#view-aporte .sigma-aporte-card.is-doc .sigma-aporte-card-head > i { color: #800020; }

#view-aporte .sigma-aporte-card-head h3 {
	margin: 0;
	font-size: 1rem;
	font-weight: 800;
	color: #0f172a;
}

#view-aporte .sigma-aporte-card-head p {
	margin: 2px 0 0;
	font-size: 0.78rem;
	color: #64748b;
}

#view-aporte .sigma-aporte-card-body {
	padding: 18px 20px 20px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

#view-aporte .sigma-form-grid {
	display: grid;
	gap: 14px;
}

#view-aporte .sigma-aporte-grid-2 { grid-template-columns: 1fr 1fr; }
#view-aporte .sigma-aporte-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#view-aporte #novo-aporte-grid-log {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
#view-aporte #novo-aporte-unidade-group[hidden] {
	display: none !important;
}

#view-aporte .sigma-v3-input-group {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

#view-aporte .sigma-v3-input-group label {
	font-size: 0.72rem;
	font-weight: 800;
	color: #475569;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

#view-aporte .req { color: #e11d48; }

#view-aporte .sigma-v3-input,
#view-aporte .sigma-v3-select {
	width: 100%;
	padding: 11px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	background: #f8fafc;
	color: #1e293b;
	font-size: 0.9rem;
	min-height: 44px;
	box-sizing: border-box;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

#view-aporte .sigma-v3-input:focus,
#view-aporte .sigma-v3-select:focus {
	outline: none;
	border-color: #0284c7;
	background: #fff;
	box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.12);
}

#view-aporte .sigma-aporte-qtd {
	font-size: 1.2rem;
	font-weight: 800;
	text-align: center;
	color: #0369a1;
}

#view-aporte .sigma-aporte-obs {
	min-height: 88px;
	resize: vertical;
}

#view-aporte .sigma-aporte-toggle {
	display: block;
	cursor: pointer;
	margin: 0;
}

#view-aporte .sigma-aporte-toggle > input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

#view-aporte .sigma-aporte-toggle-ui {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #cbd5e1;
	border-radius: 12px;
	background: #f8fafc;
	transition: border-color 0.15s ease, background 0.15s ease;
}

#view-aporte .sigma-aporte-toggle-ui > i {
	font-size: 1.25rem;
	color: #94a3b8;
	margin-top: 2px;
}

#view-aporte .sigma-aporte-toggle-ui b {
	display: block;
	font-size: 0.86rem;
	font-weight: 800;
	color: #334155;
}

#view-aporte .sigma-aporte-toggle-ui small {
	display: block;
	margin-top: 2px;
	font-size: 0.74rem;
	color: #94a3b8;
	font-weight: 500;
}

#view-aporte .sigma-aporte-toggle > input:checked + .sigma-aporte-toggle-ui {
	border-color: #16a34a;
	background: #f0fdf4;
}

#view-aporte .sigma-aporte-toggle > input:checked + .sigma-aporte-toggle-ui > i {
	color: #16a34a;
}

#view-aporte .sigma-aporte-panel {
	padding: 14px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	display: flex;
	flex-direction: column;
	gap: 12px;
	transition: border-color 0.25s ease, background 0.25s ease;
}

#view-aporte .sigma-aporte-panel[hidden] { display: none !important; }

#view-aporte .sigma-aporte-panel.is-flash {
	border-color: #16a34a;
	background: #f0fdf4;
}

#view-aporte .sigma-aporte-lote-code {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px;
	align-items: stretch;
}

#view-aporte .btn-aporte-gerar-lote {
	min-width: 110px;
	justify-content: center;
	white-space: nowrap;
}

#view-aporte #novo-aporte-lote.is-auto {
	border-color: #86efac;
	background: #f0fdf4;
	font-weight: 800;
	letter-spacing: 0.04em;
	color: #166534;
}

#view-aporte .btn-aporte-gerar-lote.is-loading {
	opacity: 0.65;
	pointer-events: none;
}

#view-aporte .sigma-aporte-panel-head {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

#view-aporte .sigma-aporte-panel-head > i {
	color: #ea580c;
	font-size: 1.2rem;
}

#view-aporte .sigma-aporte-panel-head strong {
	display: block;
	font-size: 0.8rem;
	font-weight: 800;
	color: #0f172a;
	text-transform: uppercase;
}

#view-aporte .sigma-aporte-panel-head span {
	display: block;
	font-size: 0.74rem;
	color: #64748b;
	margin-top: 2px;
}

#view-aporte .sigma-aporte-uid-hint {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 12px;
	background: #fff7ed;
	border: 1px dashed #fdba74;
	color: #9a3412;
	font-size: 0.84rem;
	font-weight: 600;
}

#view-aporte .sigma-aporte-uid-hint[hidden] { display: none !important; }

#view-aporte .sigma-aporte-tomb-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#view-aporte .sigma-aporte-tomb-row {
	display: grid;
	grid-template-columns: 36px 1fr 1fr 92px 36px;
	gap: 8px;
	align-items: center;
	padding: 6px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #fff;
}

#view-aporte .sigma-aporte-tomb-ord {
	height: 36px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #0369a1;
	color: #fff;
	font-size: 0.78rem;
	font-weight: 800;
}

#view-aporte .sigma-aporte-tomb-row .val-tomb {
	text-transform: uppercase;
	font-weight: 700;
}

#view-aporte .sigma-aporte-tomb-qr {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ea580c;
	font-size: 1.15rem;
}

#view-aporte .sigma-aporte-briefing {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1px solid #c7d2fe;
	background: #eef2ff;
	color: #3730a3;
	font-size: 0.84rem;
	font-weight: 600;
	line-height: 1.45;
}

#view-aporte.is-consumo .sigma-aporte-briefing {
	border-color: #bbf7d0;
	background: #f0fdf4;
	color: #166534;
}

#view-aporte .sigma-aporte-briefing i {
	font-size: 1.25rem;
	margin-top: 1px;
	flex-shrink: 0;
}

#view-aporte .sigma-aporte-notice {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1px dashed #94a3b8;
	background: #f8fafc;
}

#view-aporte .sigma-aporte-notice.is-perm {
	border-color: #a5b4fc;
	background: #fafafe;
}

#view-aporte .sigma-aporte-notice i {
	color: #4f46e5;
	font-size: 1.25rem;
	flex-shrink: 0;
}

#view-aporte .sigma-aporte-notice b {
	display: block;
	font-size: 0.8rem;
	font-weight: 800;
	color: #0f172a;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

#view-aporte .sigma-aporte-notice span {
	display: block;
	margin-top: 2px;
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 500;
}

#view-aporte .sigma-aporte-computed {
	min-height: 44px;
	display: flex;
	align-items: center;
	padding: 0 12px;
	border-radius: 10px;
	border: 1px dashed #cbd5e1;
	background: #fff;
	font-size: 0.9rem;
	font-weight: 800;
	color: #334155;
}

#view-aporte .sigma-aporte-ciclos-block {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-top: 4px;
}

#view-aporte .sigma-aporte-ciclos-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}

#view-aporte .sigma-aporte-ciclos-head strong {
	display: block;
	font-size: 0.82rem;
	font-weight: 800;
	color: #0f172a;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

#view-aporte .sigma-aporte-ciclos-head span {
	display: block;
	margin-top: 2px;
	font-size: 0.76rem;
	color: #64748b;
}

#view-aporte .sigma-aporte-presets {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

#view-aporte .sigma-aporte-preset {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 999px;
	border: 1px solid #c7d2fe;
	background: #fff;
	color: #4338ca;
	font-size: 0.72rem;
	font-weight: 800;
	cursor: pointer;
}

#view-aporte .sigma-aporte-preset:hover {
	background: #eef2ff;
}

#view-aporte .sigma-aporte-ciclos-host {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#view-aporte .sigma-aporte-ciclo {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #f8fafc;
	padding: 12px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#view-aporte .sigma-aporte-ciclo-top {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

#view-aporte .sigma-aporte-ciclo-top .sigma-v3-select {
	max-width: 170px;
	min-height: 40px;
}

#view-aporte .sigma-aporte-ciclo-top .sigma-v3-input {
	flex: 1 1 160px;
	min-height: 40px;
}

#aporte-vida-patrimonio[hidden],
#aporte-vida-consumo[hidden],
#aporte-horimetro-group[hidden] {
	display: none !important;
}

#view-aporte .sigma-aporte-ciclo-ord {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #4f46e5;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 800;
	flex-shrink: 0;
}

#view-aporte .sigma-aporte-ciclo-remove {
	margin-left: auto;
	border: 0;
	background: transparent;
	color: #94a3b8;
	cursor: pointer;
	font-size: 1.15rem;
	padding: 4px;
}

#view-aporte .sigma-aporte-ciclo-remove:hover { color: #e11d48; }

#view-aporte .sigma-aporte-ciclo-due {
	font-size: 0.72rem;
	font-weight: 800;
	color: #4f46e5;
	white-space: nowrap;
}

#view-aporte .sigma-aporte-ciclo-empty {
	padding: 18px 12px;
	text-align: center;
	color: #94a3b8;
	font-size: 0.82rem;
	border: 1px dashed #cbd5e1;
	border-radius: 12px;
	background: #fff;
}

#view-aporte.is-consumo .sigma-aporte-tomb-row {
	grid-template-columns: 36px 1fr 1fr 36px;
}

.sigma-ciclo-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 4px;
}

.sigma-ciclo-chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 7px;
	border-radius: 999px;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.sigma-ciclo-chip.is-vencido {
	background: #fef2f2;
	color: #b91c1c;
	border: 1px solid #fecaca;
}

.sigma-ciclo-chip.is-a-vencer {
	background: #fffbeb;
	color: #b45309;
	border: 1px solid #fde68a;
}

.sigma-ciclo-chip.is-ok {
	background: #f0fdf4;
	color: #166534;
	border: 1px solid #bbf7d0;
}

.sigma-ciclo-chip.is-garantia {
	background: #eef2ff;
	color: #4338ca;
	border: 1px solid #c7d2fe;
}

.sigma-detalhe-manut-strip {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}

.sigma-detalhe-manut-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 800;
}

.sigma-detalhe-manut-pill.is-vencido {
	background: #fef2f2;
	color: #b91c1c;
}

.sigma-detalhe-manut-pill.is-a-vencer {
	background: #fffbeb;
	color: #b45309;
}

#view-aporte .sigma-aporte-actions {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	padding: 8px 0 4px;
}

#view-aporte .btn-aporte-salvar,
#view-aporte .btn-aporte-cancelar {
	min-width: 148px;
	justify-content: center;
}

/* Modal de etiquetas QR (Storz — só UID/tombamento + QR) */
.sigma-qr-modal { text-align: left; }
.sigma-qr-modal-head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.sigma-qr-modal-head i { font-size: 1.6rem; color: #ea580c; }
.sigma-qr-modal-head h3 { margin: 0; font-size: 1.05rem; font-weight: 800; color: #0f172a; }
.sigma-qr-modal-head p { margin: 2px 0 0; font-size: 0.8rem; color: #64748b; }

.sigma-qr-format-row {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: 10px;
}
.sigma-qr-format-row label {
	font-size: 0.72rem;
	font-weight: 800;
	color: #475569;
	text-transform: uppercase;
}
.sigma-qr-format-row .sigma-v3-select {
	width: 100%;
	min-height: 42px;
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	background: #f8fafc;
	font-size: 0.88rem;
}

.sigma-qr-status {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 10px;
	padding: 8px 10px;
	border-radius: 8px;
	font-size: 0.78rem;
	font-weight: 600;
	background: #f8fafc;
	color: #64748b;
}
.sigma-qr-status.is-ok { background: #f0fdf4; color: #166534; }
.sigma-qr-status.is-warn { background: #fffbeb; color: #92400e; }
.sigma-qr-status.is-error { background: #fef2f2; color: #b91c1c; }

.sigma-qr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 10px;
	max-height: 48vh;
	overflow: auto;
	padding: 4px;
}
.sigma-qr-grid.is-simple {
	grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
}
.sigma-qr-card {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 10px 8px;
	background: #fff;
	text-align: center;
}
.sigma-qr-card.is-simple {
	padding: 10px 6px 8px;
}
.sigma-qr-canvas {
	min-height: 96px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.sigma-qr-canvas img {
	width: 96px;
	height: 96px;
	object-fit: contain;
}
.sigma-qr-fail {
	font-size: 0.75rem;
	font-weight: 800;
	color: #dc2626;
}
.sigma-qr-meta { margin-top: 6px; }
.sigma-qr-tipo {
	display: block;
	font-size: 0.58rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	color: #94a3b8;
	text-transform: uppercase;
}
.sigma-qr-meta b {
	display: block;
	margin-top: 2px;
	font-size: 0.68rem;
	font-weight: 800;
	color: #0f172a;
	word-break: break-all;
	line-height: 1.25;
}

/* ===== Estúdio de etiquetas QR (fluxo tipo Stoqui) ===== */
.sigma-swal-etiqueta-studio {
	padding: 0 !important;
	border-radius: 16px !important;
	overflow: hidden;
}
.sigma-swal-etiqueta-studio .swal2-html-container {
	margin: 0 !important;
	padding: 0 !important;
	overflow: auto;
	max-height: min(86vh, 900px);
}
.sigma-etiq-shell {
	text-align: left;
	padding: 18px 20px 16px;
	color: #0f172a;
}
.sigma-etiq-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
}
.sigma-etiq-head h3 {
	margin: 0;
	font-size: 1.15rem;
	font-weight: 800;
}
.sigma-etiq-head p {
	margin: 4px 0 0;
	font-size: 0.82rem;
	color: #64748b;
}
.sigma-etiq-section {
	margin-bottom: 16px;
}
.sigma-etiq-section h4 {
	margin: 0 0 8px;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #475569;
}
.sigma-etiq-hint {
	margin: -2px 0 10px;
	font-size: 0.8rem;
	color: #94a3b8;
}
.sigma-etiq-search {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
	margin-bottom: 10px;
}
.sigma-etiq-search i { color: #94a3b8; }
.sigma-etiq-search input {
	border: 0;
	outline: none;
	background: transparent;
	width: 100%;
	font-size: 0.9rem;
	color: #0f172a;
}
.sigma-etiq-lote-lista,
.sigma-etiq-size-lista {
	display: flex;
	flex-direction: column;
	gap: 8px;
	max-height: 42vh;
	overflow: auto;
	padding-right: 2px;
}
.sigma-etiq-lote-row,
.sigma-etiq-size-row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
	cursor: pointer;
}
.sigma-etiq-lote-row:hover,
.sigma-etiq-size-row:hover { border-color: #93c5fd; background: #f8fafc; }
.sigma-etiq-size-row.is-on,
.sigma-etiq-lote-row:has(input:checked) {
	border-color: #3b82f6;
	background: #eff6ff;
	box-shadow: inset 0 0 0 1px #3b82f6;
}
.sigma-etiq-lote-copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
	text-align: left;
}
.sigma-etiq-lote-copy b {
	font-size: 0.92rem;
	font-weight: 800;
}
.sigma-etiq-lote-copy small {
	font-size: 0.75rem;
	color: #64748b;
}
.sigma-etiq-warn {
	margin: 0 0 8px;
	color: #b91c1c;
	font-size: 0.8rem;
	font-weight: 700;
}
.sigma-etiq-empty {
	margin: 0;
	padding: 24px;
	text-align: center;
	color: #94a3b8;
}
.sigma-etiq-foot {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 8px;
	padding-top: 12px;
	border-top: 1px solid #f1f5f9;
}
.sigma-etiq-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(240px, 0.9fr);
	gap: 18px;
	align-items: start;
}
.sigma-etiq-printers {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.sigma-etiq-printer {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
	cursor: pointer;
	text-align: left;
}
.sigma-etiq-printer i { font-size: 1.4rem; color: #64748b; }
.sigma-etiq-printer span {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.sigma-etiq-printer b { font-size: 0.9rem; font-weight: 800; color: #0f172a; }
.sigma-etiq-printer small { font-size: 0.72rem; color: #64748b; }
.sigma-etiq-printer.is-on {
	border-color: #3b82f6;
	background: #eff6ff;
	box-shadow: inset 0 0 0 1px #3b82f6;
}
.sigma-etiq-printer.is-on i { color: #2563eb; }
.sigma-etiq-size-btn {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
	cursor: pointer;
	text-align: left;
}
.sigma-etiq-size-btn > span:not(.sigma-etiq-size-ico) {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.sigma-etiq-size-btn b { font-size: 0.88rem; font-weight: 800; }
.sigma-etiq-size-btn small { font-size: 0.72rem; color: #64748b; }
.sigma-etiq-size-ico {
	width: 36px;
	height: 28px;
	border: 1.5px solid #94a3b8;
	border-radius: 4px;
	flex-shrink: 0;
	background: linear-gradient(180deg, #fff 40%, #e2e8f0 40%);
}
.sigma-etiq-size-ico.is-list {
	width: 32px;
	height: 24px;
}
.sigma-etiq-check {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	font-size: 0.9rem;
	font-weight: 600;
	color: #334155;
	cursor: pointer;
}
.sigma-etiq-check input { width: 16px; height: 16px; }
.sigma-etiq-copies-row {
	display: flex;
	align-items: center;
	gap: 12px;
}
.sigma-etiq-copies-row input {
	width: 72px;
	padding: 8px 10px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 0.95rem;
	font-weight: 700;
}
.sigma-etiq-copies-row small { color: #64748b; font-size: 0.75rem; }
.sigma-etiq-preview-pane h4 {
	margin: 0 0 10px;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #475569;
}
.sigma-etiq-preview-stage {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 280px;
	padding: 28px 20px;
	border-radius: 14px;
	background: #eef2f7;
}
.sigma-etiq-preview-stage.is-transparent {
	/* Xadrez = fundo vazado na prévia */
	background-color: #e5e7eb;
	background-image:
		linear-gradient(45deg, #cbd5e1 25%, transparent 25%),
		linear-gradient(-45deg, #cbd5e1 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, #cbd5e1 75%),
		linear-gradient(-45deg, transparent 75%, #cbd5e1 75%);
	background-size: 16px 16px;
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
}
.sigma-etiq-preview-canvas {
	display: block;
	background: transparent;
	border-radius: 4px;
	box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
	image-rendering: auto;
	max-width: 100%;
}
.sigma-etiq-preview-stage:not(.is-transparent) .sigma-etiq-preview-canvas {
	background: #fff;
}
.sigma-etiq-preview-meta {
	margin: 10px 0 0;
	font-size: 0.75rem;
	color: #64748b;
	text-align: center;
}
.sigma-etiq-size-cat {
	margin: 10px 0 4px;
	padding: 4px 2px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #64748b;
}
.sigma-etiq-size-grade {
	display: block;
	margin-top: 2px;
	color: #94a3b8 !important;
}
.sigma-etiq-size-lista {
	max-height: 50vh;
}

@media (max-width: 760px) {
	.sigma-etiq-grid { grid-template-columns: 1fr; }
	.sigma-etiq-printers { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
	#view-aporte .sigma-aporte-grid-3,
	#view-aporte #novo-aporte-grid-log { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
	#view-aporte .sigma-aporte-grid-2,
	#view-aporte .sigma-aporte-grid-3,
	#view-aporte #novo-aporte-grid-log { grid-template-columns: 1fr; }

	#view-aporte .sigma-aporte-tomb-row {
		grid-template-columns: 32px 1fr;
	}

	#view-aporte .sigma-aporte-tomb-row .val-sn,
	#view-aporte .sigma-aporte-tomb-row .val-horimetro { grid-column: 2; }
	#view-aporte .sigma-aporte-tomb-qr { display: none; }

	#view-aporte .sigma-aporte-actions {
		flex-direction: column;
		align-items: stretch;
	}

	#view-aporte .btn-aporte-salvar,
	#view-aporte .btn-aporte-cancelar {
		width: 100%;
		min-width: 0;
	}
}

/* ==========================================================================
   ALMOXARIFADO — tabela moderna (PC) + cards (mobile) · doutrina TRUG
   ========================================================================== */

.almox-main-display {
	width: 100%;
}

.btn-almox-acao-pdf i.ph-file-pdf,
.btn-almox-acao-pdf .ph-file-pdf {
	color: #e5252a;
}

/* Wrapper sem overflow vertical — senão o sticky do thead não “gruda” no .content */
#view-almoxarifado .sigma-almox-table-wrap.sigma-modern-table-wrapper {
	overflow: visible;
}

#view-almoxarifado #almox-table.sigma-modern-table {
	border-collapse: separate;
	border-spacing: 0;
}

#view-almoxarifado #almox-table.sigma-modern-table th {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	padding: 12px 12px;
}

#view-almoxarifado #almox-table.sigma-modern-table td {
	padding: 12px;
}

/* Cabeçalho congelado ao tocar o topo da área de conteúdo (logo sob o header da página) */
@media (min-width: 769px) {
	#view-almoxarifado #almox-table.sigma-modern-table thead th {
		position: sticky;
		top: 0;
		z-index: 30;
		background: #f8fafc !important;
		box-shadow: 0 1px 0 #e2e8f0, 0 6px 12px -8px rgba(15, 23, 42, 0.18);
	}

	#view-almoxarifado #almox-table.sigma-modern-table thead th:first-child {
		border-top-left-radius: 12px;
	}

	#view-almoxarifado #almox-table.sigma-modern-table thead th:last-child {
		border-top-right-radius: 12px;
	}

	#view-almoxarifado #almox-rastreio-table.sigma-modern-table thead th {
		position: sticky;
		top: 0;
		z-index: 30;
		background: #f8fafc !important;
		box-shadow: 0 1px 0 #e2e8f0, 0 6px 12px -8px rgba(15, 23, 42, 0.18);
	}
}

/* ==========================================================================
   ALMOX · Detalhe do material (dossiê + rastreio)
   ========================================================================== */

/* Detalhe/histórico: cobre o cabeçalho do módulo + ações */
#view-almoxarifado.is-subtela-aberta #almox-modulo-header {
	display: none !important;
}

/* ==========================================================================
   ALMOX · Histórico de vida (fundo + barra do tempo)
   ========================================================================== */

.content.is-historico-aberto,
.content:has(#view-almoxarifado.is-historico-aberto) {
	background: #f7f6f3 !important;
}

/* Histórico: só o .content rola — overflow-x:hidden no filho vira overflow-y:auto (scroll aninhado). */
.content.is-historico-aberto #view-almoxarifado.is-historico-aberto,
.content:has(#view-almoxarifado.is-historico-aberto) #view-almoxarifado.is-historico-aberto {
	flex: 0 0 auto;
	height: auto !important;
	max-height: none !important;
	overflow: visible !important;
}

#view-almoxarifado.is-historico-aberto .sigma-v3-clean-wrapper,
#almox-historico-wrapper.sigma-hist-tela,
#almox-historico-wrapper.sigma-hist-tela > .sigma-v3-clean-card.block-vertical {
	overflow: visible !important;
	max-height: none !important;
	height: auto !important;
}

/* ==========================================================================
   Caminho clicável (molde Spark) — Início > módulo > tela
   ========================================================================== */

.sigma-crumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0;
	flex-shrink: 0;
	margin: 0 0 8px;
	padding: 2px 0 10px;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.35;
	color: #64748b;
	letter-spacing: 0.01em;
	position: static;
	z-index: 40;
	background: transparent;
	border: none;
	box-shadow: none;
	box-sizing: border-box;
}

.sigma-crumbs[hidden] {
	display: none !important;
}

.sigma-crumbs__item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font: inherit;
	color: #64748b;
	max-width: 220px;
}

.sigma-crumbs__item > span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sigma-crumbs__item .ph-house,
.sigma-crumbs__item .ph-fill {
	font-size: 0.95rem;
	color: inherit;
	flex-shrink: 0;
}

.sigma-crumbs__link {
	cursor: pointer;
	text-decoration: none;
	transition: color 0.15s ease;
}

.sigma-crumbs__link:hover,
.sigma-crumbs__link:hover > span,
.sigma-crumbs__link:hover .ph-house,
.sigma-crumbs__link:hover .ph-fill {
	color: #2563eb;
	text-decoration: none;
}

.sigma-crumbs__link:focus-visible {
	outline: 2px solid #2563eb;
	outline-offset: 2px;
	border-radius: 4px;
}

.sigma-crumbs__current {
	color: #334155;
	font-weight: 600;
	cursor: default;
}

.sigma-crumbs__sep {
	margin: 0 8px;
	color: #94a3b8;
	font-weight: 400;
	user-select: none;
}

.content.is-historico-aberto .sigma-crumbs,
.content:has(#view-almoxarifado.is-historico-aberto) .sigma-crumbs {
	background: transparent;
}

@media (max-width: 768px) {
	.sigma-crumbs {
		position: static;
		background: transparent;
		padding: 0 0 10px;
		font-size: 0.78rem;
	}

	.sigma-crumbs__item {
		max-width: 160px;
	}

	.sigma-crumbs__sep {
		margin: 0 6px;
	}
}

#view-almoxarifado.is-historico-aberto {
	background: transparent;
	min-height: 0;
	overflow: visible;
	max-width: 100%;
	box-sizing: border-box;
}

#almox-historico-wrapper.sigma-hist-tela {
	padding: 0.25rem 0 2.5rem;
	max-width: 100%;
	box-sizing: border-box;
	overflow: visible;
}

#almox-historico-wrapper.sigma-hist-tela > .sigma-v3-clean-card.block-vertical {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

#almox-historico-wrapper #hist-header-contexto.sigma-v3-clean-card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	background: rgba(255, 255, 255, 0.88);
	border: 1px solid rgba(226, 232, 240, 0.9);
	backdrop-filter: blur(8px);
	max-width: 100%;
	box-sizing: border-box;
	overflow: visible;
}

.sigma-hist-ficha-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
}

.sigma-hist-ficha-ident {
	display: flex;
	align-items: flex-start;
	gap: 0.9rem;
	min-width: 0;
	flex: 1 1 auto;
}

.sigma-hist-ficha-icon {
	flex-shrink: 0;
	width: 60px;
	height: 60px;
	border-radius: 12px;
	border: 1px solid var(--border-soft);
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--text-muted);
	font-size: 1.8rem;
	padding: 0;
	overflow: hidden;
}

button.sigma-hist-ficha-icon {
	cursor: pointer;
	font: inherit;
	line-height: 0;
}

.sigma-hist-ficha-icon.has-foto:hover {
	box-shadow: 0 0 0 2px rgba(14, 116, 144, 0.22);
}

.sigma-hist-ficha-icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: inherit;
}

.sigma-hist-ficha-unidade .sigma-consulta-uid-head,
.sigma-hist-ficha-unidade .sigma-item-media {
	display: none !important;
}

.sigma-hist-ficha-copy {
	min-width: 0;
	flex: 1 1 auto;
}

.sigma-hist-ficha-title {
	margin: 0 0 0.5rem;
	font-size: 1.3rem;
}

.sigma-hist-ficha-tags {
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
}

.sigma-hist-ficha-ref {
	font-size: 0.75rem;
	color: var(--text-muted);
	font-weight: 700;
}

.sigma-hist-voltar {
	flex-shrink: 0;
	margin-left: auto;
	white-space: nowrap;
}

#almox-historico-wrapper .sigma-hist-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem;
	margin-bottom: 1.35rem;
	padding-bottom: 1rem;
	border-bottom: 1px dashed rgba(148, 163, 184, 0.45);
	max-width: 100%;
	box-sizing: border-box;
}

#hist-timeline-feed.sigma-hist-timeline {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding: 0.35rem 0 2rem 2.85rem;
	max-height: none;
	overflow: visible;
}

#hist-timeline-feed.sigma-hist-timeline::before {
	content: '';
	position: absolute;
	left: 0.95rem;
	top: 0.4rem;
	bottom: 1.2rem;
	width: 2px;
	background: #2c5a8c;
	border-radius: 2px;
	opacity: 0.7;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-item {
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0 0 1.35rem;
	box-sizing: border-box;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-item:last-child {
	margin-bottom: 0;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node {
	position: absolute;
	left: -2.85rem;
	top: 0.85rem;
	width: 2.15rem;
	height: 2.15rem;
	border-radius: 50%;
	background: #ffffff;
	border: 2px solid #2c5a8c;
	color: #2c5a8c;
	box-shadow: 0 0 0 4px #f7f6f3;
	font-size: 0.85rem;
	z-index: 2;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node.node-green {
	background: #ffffff;
	border-color: #0f766e;
	color: #0f766e;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node.node-red {
	background: #ffffff;
	border-color: #be123c;
	color: #be123c;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node.node-blue {
	background: #ffffff;
	border-color: #2c5a8c;
	color: #2c5a8c;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node.node-amber {
	background: #ffffff;
	border-color: #b45309;
	color: #b45309;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node.node-gray {
	background: #ffffff;
	border-color: #64748b;
	color: #64748b;
}

#hist-timeline-feed.sigma-hist-timeline .timeline-content-card {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 1rem 1.15rem;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	box-shadow: 0 8px 22px rgba(28, 45, 74, 0.06);
}

#hist-timeline-feed.sigma-hist-timeline .timeline-content-card::before {
	display: none;
}

@media (max-width: 720px) {
	.sigma-hist-ficha-top {
		flex-wrap: wrap;
	}

	.sigma-hist-voltar {
		margin-left: auto;
	}

	#hist-timeline-feed.sigma-hist-timeline {
		padding-left: 2.4rem;
	}

	#hist-timeline-feed.sigma-hist-timeline::before {
		left: 0.75rem;
	}

	#hist-timeline-feed.sigma-hist-timeline .timeline-icon-node {
		left: -2.4rem;
		width: 1.85rem;
		height: 1.85rem;
		font-size: 0.75rem;
		top: 0.7rem;
	}
}

.sigma-detalhe-material {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding-bottom: 1.5rem;
}

.sigma-detalhe-material[hidden] {
	display: none !important;
}

.sigma-detalhe-hero {
	position: relative;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.25rem 1.35rem 1.15rem;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.sigma-detalhe-hero::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: #16a34a;
}

.sigma-detalhe-hero.is-baixo::before {
	background: #f59e0b;
}

.sigma-detalhe-hero.is-alerta::before,
.sigma-detalhe-hero.is-zerado::before {
	background: #ef4444;
}

.sigma-detalhe-hero-main {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	flex-wrap: wrap;
}

/* Painel foto + manual (detalhe e consulta QR) */
.sigma-item-media {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.55rem;
	flex-shrink: 0;
}

.sigma-item-media-foto {
	width: 88px;
	height: 88px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(160deg, #fff7ed 0%, #f8fafc 70%);
	border: 1px solid #e2e8f0;
	color: #800020;
	font-size: 2rem;
	overflow: hidden;
	padding: 0;
	margin: 0;
	font: inherit;
	appearance: none;
	-webkit-appearance: none;
}

button.sigma-item-media-foto {
	cursor: zoom-in;
}

.sigma-item-media-foto.has-foto {
	width: 132px;
	height: 132px;
	padding: 0;
	background: #f1f5f9;
}

.sigma-item-media-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sigma-item-media-empty {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 8px;
	box-sizing: border-box;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-item-media-manual {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.42rem 0.72rem;
	border-radius: 999px;
	border: 1px solid #fecaca;
	background: #fff1f2;
	color: #be123c;
	font-size: 0.72rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.sigma-item-media-manual:hover {
	background: #ffe4e6;
	border-color: #fda4af;
	color: #9f1239;
}

.sigma-item-media.is-compact .sigma-item-media-foto {
	width: 76px;
	height: 76px;
	font-size: 1.65rem;
}

.sigma-item-media.is-compact .sigma-item-media-foto.has-foto {
	width: 108px;
	height: 108px;
}

.sigma-item-media.is-compact .sigma-item-media-manual {
	font-size: 0.68rem;
	padding: 0.38rem 0.62rem;
}

.sigma-detalhe-hero-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(160deg, #fff7ed 0%, #f8fafc 70%);
	border: 1px solid #e2e8f0;
	color: #800020;
	font-size: 1.55rem;
	flex-shrink: 0;
	overflow: hidden;
}

.sigma-detalhe-hero-icon.has-foto {
	width: 72px;
	height: 72px;
	padding: 0;
	background: #f1f5f9;
}

.sigma-detalhe-hero-foto {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sigma-detalhe-hero-copy {
	flex: 1 1 220px;
	min-width: 0;
}

.sigma-detalhe-hero-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 6px;
}

.sigma-detalhe-hero-title {
	margin: 0;
	font-size: 1.35rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.35;
	letter-spacing: 0.01em;
	text-transform: uppercase;
}

.sigma-detalhe-hero-title .sigma-item-manual-chip {
	display: inline-flex;
	vertical-align: middle;
	margin-left: 0.15em;
	position: relative;
	top: -1px;
	text-transform: none;
	white-space: nowrap;
}

.sigma-detalhe-hero-refs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 16px;
	margin-top: 8px;
	font-size: 0.75rem;
	font-weight: 600;
	color: #64748b;
	text-transform: uppercase;
}

.sigma-detalhe-hero-refs i {
	margin-right: 4px;
	color: #94a3b8;
}

.sigma-detalhe-unidades-hero {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.sigma-detalhe-hero-refs .sigma-unidade-pill,
.sigma-rastreio-group-inner .sigma-unidade-pill {
	text-transform: none;
}

.sigma-detalhe-hero-refs b {
	color: #334155;
	font-weight: 800;
}

.sigma-detalhe-hist-btn {
	flex-shrink: 0;
	align-self: flex-start;
}

.sigma-detalhe-hero-actions {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	flex-shrink: 0;
	align-self: flex-start;
	min-width: 168px;
}

.sigma-detalhe-btn-aporte,
.sigma-detalhe-btn-qr {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 12px;
	font-size: 0.84rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, transform 0.12s ease;
}

.sigma-detalhe-btn-aporte {
	border: none;
	background: #059669;
	color: #fff;
	box-shadow: 0 1px 2px rgba(5, 150, 105, 0.28);
}

.sigma-detalhe-btn-aporte:hover {
	background: #047857;
	transform: translateY(-1px);
}

.sigma-detalhe-btn-qr {
	border: 1px solid #bae6fd;
	background: #f0f9ff;
	color: #0369a1;
}

.sigma-detalhe-btn-qr:hover:not(:disabled) {
	background: #e0f2fe;
	border-color: #7dd3fc;
}

.sigma-detalhe-btn-qr:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.sigma-detalhe-lotes {
	margin-top: 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.sigma-detalhe-lotes.is-empty {
	flex-direction: row;
	align-items: center;
	gap: 8px;
	padding: 8px 10px;
	border: 1px dashed #cbd5e1;
	border-radius: 10px;
	background: #f8fafc;
	color: #64748b;
	font-size: 0.78rem;
	font-weight: 600;
}

.sigma-detalhe-lotes-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-detalhe-lotes-track {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sigma-detalhe-lote-chip {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	padding: 8px 12px;
	border: 1px solid #fdba74;
	border-radius: 10px;
	background: #fff7ed;
	color: #9a3412;
	cursor: pointer;
	text-align: left;
	transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.sigma-detalhe-lote-chip:hover {
	border-color: #f97316;
	background: #ffedd5;
	transform: translateY(-1px);
}

.sigma-detalhe-lote-chip b {
	font-size: 0.82rem;
	font-weight: 800;
	color: #9a3412;
}

.sigma-detalhe-lote-chip small {
	font-size: 0.68rem;
	font-weight: 600;
	color: #c2410c;
}

.sigma-rastreio-lote {
	display: block;
	margin-top: 2px;
	font-size: 0.72rem;
	font-weight: 600;
	color: #9a3412;
}

.sigma-rastreio-lote.is-empty {
	color: #94a3b8;
}

.sigma-rastreio-lote b {
	font-weight: 800;
}

.sigma-detalhe-bula {
	margin-top: 14px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #f8fafc;
	padding: 0.55rem 0.85rem;
}

.sigma-detalhe-bula summary {
	cursor: pointer;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.78rem;
	font-weight: 800;
	color: #475569;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	user-select: none;
}

.sigma-detalhe-bula summary::-webkit-details-marker {
	display: none;
}

.sigma-detalhe-bula summary i {
	color: #800020;
}

.sigma-detalhe-bula-count {
	margin-left: auto;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	padding: 1px 8px;
	font-size: 0.68rem;
	color: #64748b;
}

.sigma-detalhe-bula-list {
	list-style: none;
	margin: 10px 0 4px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.sigma-detalhe-bula-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 0;
	border-top: 1px dashed #e2e8f0;
}

.sigma-detalhe-bula-qtd {
	font-size: 0.72rem;
	font-weight: 800;
	color: #0f172a;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	padding: 3px 8px;
	font-variant-numeric: tabular-nums;
}

.sigma-detalhe-bula-nome {
	font-size: 0.84rem;
	font-weight: 600;
	color: #475569;
}

.sigma-detalhe-kpi-strip {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-top: 1.15rem;
}

.sigma-detalhe-kpi {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-radius: 12px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	min-width: 0;
}

.sigma-detalhe-kpi > i {
	font-size: 1.2rem;
	color: #94a3b8;
	flex-shrink: 0;
}

.sigma-detalhe-kpi small {
	display: block;
	font-size: 0.62rem;
	font-weight: 800;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.sigma-detalhe-kpi b {
	display: block;
	font-size: 1.2rem;
	font-weight: 800;
	color: #0f172a;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
}

.sigma-detalhe-kpi.is-disp > i,
.sigma-detalhe-kpi.is-disp b {
	color: #16a34a;
}

.sigma-detalhe-kpi.is-carga > i {
	color: #0284c7;
}

.sigma-detalhe-kpi.is-pend.has-alert > i,
.sigma-detalhe-kpi.is-pend.has-alert b {
	color: #dc2626;
}

.sigma-detalhe-kpi.is-trug > i,
.sigma-detalhe-kpi.is-trug b {
	color: #d97706;
}

.sigma-detalhe-gauge-row {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 14px;
	margin-top: 12px;
	align-items: end;
}

.sigma-detalhe-carga-vazia {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 12px;
	background: #f8fafc;
	border: 1px dashed #cbd5e1;
	color: #94a3b8;
	font-size: 0.78rem;
	font-weight: 600;
}

.sigma-detalhe-rastreio {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.1rem 1.2rem 1.25rem;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.sigma-detalhe-rastreio-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
	padding-bottom: 1rem;
	margin-bottom: 0.85rem;
	border-bottom: 1px dashed #e2e8f0;
}

.sigma-detalhe-rastreio-titles .sc-title {
	margin: 0 0 4px;
	font-size: 1.05rem;
}

.sigma-detalhe-rastreio-titles .sigma-v3-description {
	margin: 0;
	font-size: 0.82rem;
}

.sigma-detalhe-busca {
	margin: 0;
	min-width: min(280px, 100%);
	flex: 1 1 220px;
}

.sigma-detalhe-filtros {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0.65rem;
	justify-content: flex-end;
	flex: 1 1 auto;
}

.sigma-detalhe-filtros .sigma-detalhe-busca {
	margin-bottom: 0;
	display: flex;
	align-items: stretch;
}

.sigma-detalhe-filtros .sigma-detalhe-busca .form-control-clean,
.sigma-detalhe-filtros .sigma-detalhe-filtro-status {
	height: 42px;
	min-height: 42px;
	padding-top: 0;
	padding-bottom: 0;
	line-height: 1.25;
	font-size: 0.9rem;
	box-sizing: border-box;
}

.sigma-detalhe-filtro-status {
	min-width: 160px;
	max-width: 200px;
	flex: 0 0 auto;
	align-self: stretch;
}

.sigma-detalhe-mapa-chip.is-active {
	border-color: #800020;
	box-shadow: inset 0 -3px 0 #f59e0b;
	background: #fff7ed;
}

.sigma-emprego-badge {
	display: inline-flex;
	align-items: center;
	padding: 3px 9px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	white-space: nowrap;
}

.sigma-emprego-badge.is-estoque {
	background: #f1f5f9;
	color: #475569;
}

.sigma-emprego-badge.is-operacional {
	background: #eff6ff;
	color: #1d4ed8;
}

.sigma-emprego-badge.is-missao {
	background: #fdf2f8;
	color: #9d174d;
}

.sigma-detalhe-mapa {
	margin-bottom: 1rem;
}

.sigma-detalhe-mapa:empty {
	display: none;
}

.sigma-detalhe-mapa-label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.72rem;
	font-weight: 800;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 8px;
}

.sigma-detalhe-mapa-label i {
	color: #800020;
}

.sigma-detalhe-mapa-track {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sigma-detalhe-mapa-chip {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	cursor: pointer;
	overflow: hidden;
	transition: border-color 0.15s ease, transform 0.15s ease, background 0.15s ease;
	font: inherit;
	color: inherit;
}

.sigma-detalhe-mapa-chip:hover {
	border-color: #cbd5e1;
	background: #fff;
	transform: translateY(-1px);
}

.sigma-detalhe-mapa-chip > i.ph {
	font-size: 1.1rem;
	color: #64748b;
	z-index: 1;
}

.sigma-detalhe-mapa-chip.is-almox > i.ph {
	color: #800020;
}

.sigma-detalhe-mapa-chip.is-vtr > i.ph {
	color: #dc2626;
}

.sigma-detalhe-mapa-nome {
	font-size: 0.78rem;
	font-weight: 700;
	color: #334155;
	text-transform: uppercase;
	z-index: 1;
}

.sigma-detalhe-mapa-chip b {
	font-size: 1rem;
	font-weight: 800;
	color: #0f172a;
	font-variant-numeric: tabular-nums;
	z-index: 1;
}

.sigma-detalhe-mapa-chip small {
	font-size: 0.68rem;
	font-weight: 700;
	color: #94a3b8;
	z-index: 1;
}

.sigma-detalhe-mapa-bar {
	position: absolute;
	left: 0;
	bottom: 0;
	height: 3px;
	background: linear-gradient(90deg, #800020, #f59e0b);
	border-radius: 0 2px 0 0;
	font-style: normal;
}

.sigma-rastreio-table-wrap {
	overflow: visible;
}

#almox-rastreio-table.sigma-modern-table {
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
}

#almox-rastreio-table.sigma-modern-table th {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	padding: 12px;
}

#almox-rastreio-table.sigma-modern-table td {
	padding: 12px;
	vertical-align: middle;
}

.sigma-rastreio-group td {
	background: #f8fafc;
	border-top: 2px solid #e2e8f0;
	padding: 10px 14px !important;
}

.sigma-rastreio-group-inner {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.sigma-rastreio-group-icon {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	color: #800020;
}

.sigma-rastreio-group-inner b {
	font-size: 0.82rem;
	font-weight: 800;
	color: #0f172a;
	text-transform: uppercase;
}

.sigma-rastreio-group-count {
	background: #fff;
	border: 1px solid #e2e8f0;
	color: #64748b;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 700;
}

.sigma-rastreio-row:hover {
	background: #fbfdff;
}

.sigma-rastreio-row.is-pend {
	box-shadow: inset 3px 0 0 #ef4444;
}

.sigma-rastreio-row.is-manut {
	box-shadow: inset 3px 0 0 #d97706;
}

.sigma-rastreio-row.is-trug {
	box-shadow: inset 3px 0 0 #f59e0b;
}

.sigma-rastreio-row.is-carga {
	box-shadow: inset 3px 0 0 #0ea5e9;
}

.sigma-rastreio-id {
	display: flex;
	flex-direction: column;
	gap: 2px;
	line-height: 1.3;
}

.sigma-rastreio-id b {
	color: #0f172a;
	font-size: 0.92rem;
	font-weight: 800;
}

.sigma-rastreio-id span {
	color: #64748b;
	font-size: 0.74rem;
	font-weight: 600;
}

.sigma-rastreio-id.is-consumo b {
	color: #64748b;
	font-size: 0.8rem;
	text-transform: uppercase;
}

.sigma-rastreio-qtd {
	text-align: center;
	font-weight: 800;
	font-size: 1rem;
	color: #0f172a;
	font-variant-numeric: tabular-nums;
}

.sigma-rastreio-setor {
	color: #64748b;
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	line-height: 1.3;
}

.sigma-status-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	white-space: nowrap;
}

.sigma-status-badge.is-disp {
	background: #f0fdf4;
	color: #15803d;
}

.sigma-status-badge.is-carga {
	background: #eff6ff;
	color: #0369a1;
}

.sigma-status-badge.is-pend {
	background: #fef2f2;
	color: #b91c1c;
}

.sigma-status-badge.is-manut {
	background: #fffbeb;
	color: #b45309;
}

.sigma-status-badge.is-trug {
	background: #fffbeb;
	color: #b45309;
}

.sigma-almox-gestao-title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 1rem;
	font-weight: 700;
	color: #0f172a;
}

.sigma-almox-gestao-sub {
	margin: 0 0 12px;
	font-size: 0.82rem;
	color: #64748b;
}

.sigma-almox-gestao-menu {
	display: flex;
	flex-direction: column;
	gap: 8px;
	text-align: left;
}

.sigma-almox-gestao-opt {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1.5px solid #e2e8f0;
	background: #fff;
	cursor: pointer;
	text-align: left;
	transition: border-color 0.15s ease, background 0.15s ease, transform 0.12s ease;
}

.sigma-almox-gestao-opt i {
	font-size: 1.15rem;
	margin-top: 2px;
	flex-shrink: 0;
}

.sigma-almox-gestao-opt b {
	display: block;
	font-size: 0.82rem;
	font-weight: 750;
	color: #0f172a;
}

.sigma-almox-gestao-opt small {
	display: block;
	font-size: 0.7rem;
	color: #64748b;
	margin-top: 2px;
	line-height: 1.3;
}

.sigma-almox-gestao-opt:hover {
	transform: translateY(-1px);
}

.sigma-almox-gestao-opt.is-obs {
	border-color: #93c5fd;
	background: #eff6ff;
}
.sigma-almox-gestao-opt.is-obs i { color: #1d4ed8; }

.sigma-almox-gestao-opt.is-manut {
	border-color: #fcd34d;
	background: #fffbeb;
}
.sigma-almox-gestao-opt.is-manut i { color: #b45309; }

.sigma-almox-gestao-opt.is-ok {
	border-color: #6ee7b7;
	background: #ecfdf5;
}
.sigma-almox-gestao-opt.is-ok i { color: #047857; }

.sigma-almox-gestao-textarea {
	width: 100%;
	box-sizing: border-box;
	min-height: 96px;
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	font-size: 0.85rem;
	font-family: inherit;
	resize: vertical;
	margin: 0 0 10px;
}

.sigma-almox-gestao-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	flex-wrap: wrap;
}

.sigma-almox-gestao-actions.is-solo {
	justify-content: center;
	margin-top: 12px;
}

.sigma-almox-gestao-err {
	margin: 0 0 8px;
	font-size: 0.75rem;
	font-weight: 650;
	color: #b91c1c;
	text-align: left;
}

.sigma-detalhe-obs {
	font-size: 0.75rem;
	line-height: 1.45;
	color: #64748b;
}

.sigma-detalhe-obs.is-pend {
	display: flex;
	flex-direction: column;
	gap: 8px;
	color: #9f1239;
	max-width: 280px;
}

.sigma-obs-bloco {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 6px 8px;
	border-radius: 8px;
	border: 1px solid transparent;
}

.sigma-obs-bloco.is-campo {
	background: #fff1f2;
	border-color: #fecdd3;
}

.sigma-obs-bloco.is-gestao {
	background: #fffbeb;
	border-color: #fde68a;
	color: #92400e;
}

.sigma-obs-kicker {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.62rem;
	font-weight: 750;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	opacity: 0.9;
}

.sigma-obs-texto {
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.35;
	color: inherit;
	text-align: left;
	background: none;
	border: none;
	padding: 0;
	cursor: inherit;
}

button.sigma-obs-texto.sigma-detalhe-link {
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.sigma-obs-meta {
	font-size: 0.66rem;
	font-weight: 600;
	opacity: 0.85;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
}

.sigma-obs-rotulo {
	font-size: 0.62rem;
	font-style: normal;
	font-weight: 700;
	opacity: 0.8;
}

.sigma-detalhe-obs.is-ok {
	color: #64748b;
}

.sigma-detalhe-obs.is-trug {
	color: #854d0e;
}

.sigma-detalhe-link {
	cursor: pointer;
	text-decoration: underline;
	color: var(--color-primary, #800020);
}

.sigma-rastreio-acoes {
	text-align: center;
	white-space: nowrap;
}

.sigma-rastreio-acoes-inner {
	display: inline-flex;
	gap: 4px;
	justify-content: center;
}

.sigma-rastreio-sem-acao {
	color: #cbd5e1;
	font-weight: 700;
}

.sigma-detalhe-footer {
	display: flex;
	justify-content: center;
	padding-top: 0.25rem;
}

.btn-detalhe-cancelar {
	min-width: 140px;
	justify-content: center;
}

@media (max-width: 900px) {
	.sigma-detalhe-kpi-strip {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.sigma-detalhe-gauge-row {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.sigma-detalhe-kpi-strip {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sigma-item-media {
		width: 100%;
		flex-direction: row;
		justify-content: flex-start;
		align-items: center;
	}

	.sigma-detalhe-hero-actions {
		flex-direction: row;
		flex-wrap: wrap;
		min-width: 0;
		width: 100%;
	}

	.sigma-detalhe-btn-aporte,
	.sigma-detalhe-btn-qr {
		flex: 1 1 140px;
	}

	.sigma-detalhe-hist-btn span {
		display: none;
	}

	.sigma-detalhe-hist-btn {
		width: 44px;
		height: 44px;
		padding: 0;
		justify-content: center;
	}

	.sigma-detalhe-footer {
		justify-content: stretch;
	}

	.btn-detalhe-cancelar {
		width: 100%;
	}
}

.almox-td-ord {
	text-align: center;
	color: #94a3b8;
	font-weight: 700;
	font-size: 0.8rem;
	font-variant-numeric: tabular-nums;
}

#almox-table:not(.is-visao-geral) .almox-col-unidade,
#almox-rastreio-table:not(.is-visao-geral) .almox-col-unidade {
	display: none !important;
}

.almox-td-unidade {
	text-align: center;
	vertical-align: middle;
}

#almox-rastreio-table th.almox-col-unidade,
#almox-rastreio-table td.almox-col-unidade {
	text-align: center;
	vertical-align: middle;
}

#almox-rastreio-table td.almox-col-unidade .sigma-unidade-pills {
	justify-content: center;
}

#almox-rastreio-table td.almox-col-unidade .sigma-unidade-pill {
	margin: 0 auto;
}

.sigma-unidade-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	align-items: center;
	justify-content: center;
}

.sigma-unidade-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.45;
	border: 1px solid;
	white-space: nowrap;
	max-width: 100%;
}

.sigma-unidade-pill.is-empty {
	background: #f1f5f9;
	color: #94a3b8;
	border-color: #e2e8f0;
	font-weight: 700;
}

.sigma-rastreio-uids-wrap {
	margin-top: 6px;
}

.sigma-rastreio-uids-wrap summary {
	cursor: pointer;
	list-style: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #0369a1;
	font-size: 0.72rem;
	font-weight: 800;
	user-select: none;
}

.sigma-rastreio-uids-wrap summary::-webkit-details-marker {
	display: none;
}

.sigma-rastreio-uids-wrap summary:hover {
	text-decoration: underline;
}

.sigma-rastreio-uids {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 6px;
	max-height: 140px;
	overflow-y: auto;
}

.sigma-rastreio-uid {
	display: inline-block;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.68rem;
	font-weight: 700;
	color: #0f172a;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	padding: 2px 7px;
	line-height: 1.4;
}

.almox-material-cell {
	display: flex;
	align-items: flex-start;
	min-width: 0;
}

.almox-material-text {
	min-width: 0;
	flex: 1 1 auto;
}

.visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.almox-material-nome {
	display: block;
	color: #0f172a;
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: 0.01em;
}

.almox-material-nome-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	min-width: 0;
}

.almox-material-nome-row .almox-material-nome {
	display: inline;
	flex: 0 1 auto;
}

.sigma-item-manual-chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 3px 8px;
	border-radius: 6px;
	background: #fff5f5;
	color: #ec1c24;
	border: 1px solid #f8b4b4;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-decoration: none;
	line-height: 1;
	flex-shrink: 0;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.sigma-item-manual-chip i {
	font-size: 0.85rem;
}

.sigma-item-manual-chip:hover {
	background: #ec1c24;
	border-color: #ec1c24;
	color: #fff;
}

.almox-td-foto {
	width: 64px;
	text-align: center;
	vertical-align: middle;
}

.almox-foto-thumb {
	display: inline-flex;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	overflow: hidden;
	background: #f8fafc;
	cursor: zoom-in;
	vertical-align: middle;
}

.almox-foto-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.almox-foto-empty {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 4px 3px;
	border-radius: 10px;
	background: #f1f5f9;
	border: 1px dashed #94a3b8;
	color: #475569;
	font-size: 0.58rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.15;
	text-align: center;
	text-transform: uppercase;
	box-sizing: border-box;
	vertical-align: middle;
}

.sigma-swal-wait-msg {
	margin: 0;
	color: #64748b;
	font-size: 0.9rem;
}

.sigma-swal-wait-spin {
	width: 36px;
	height: 36px;
	margin: 16px auto 4px;
	border: 3px solid #e2e8f0;
	border-top-color: #800020;
	border-radius: 50%;
	animation: sigma-swal-spin 0.7s linear infinite;
}

@keyframes sigma-swal-spin {
	to { transform: rotate(360deg); }
}

.swal2-popup:has(.sigma-swal-wait-spin) .swal2-actions {
	display: none !important;
}

.almox-material-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 5px;
}

.sigma-almox-tag {
	color: #6d28d9;
	font-weight: 800;
	font-size: 0.65rem;
	background: #f5f3ff;
	padding: 2px 7px;
	border-radius: 999px;
	letter-spacing: 0.03em;
}

.sigma-almox-cat {
	color: #64748b;
	font-weight: 600;
	font-size: 0.7rem;
}

.almox-material-setor {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-top: 6px;
	font-size: 0.72rem;
	font-weight: 600;
	color: #0369a1;
	line-height: 1.3;
}

.almox-material-setor i {
	color: #94a3b8;
	flex-shrink: 0;
}

.almox-td-num {
	text-align: center;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: #334155;
}

.almox-chip-total {
	display: inline-flex;
	min-width: 36px;
	justify-content: center;
	padding: 4px 10px;
	border-radius: 8px;
	background: #f1f5f9;
	color: #0f172a;
	font-weight: 800;
}

.almox-td-carga {
	text-align: center;
}

/* Em Carga: total + composição (S/A · Pend · TRUG) */
.almox-carga-block {
	display: inline-flex;
	flex-direction: column;
	align-items: stretch;
	gap: 5px;
	min-width: 148px;
	max-width: 190px;
	padding: 8px 10px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #ffffff;
	text-align: left;
	box-sizing: border-box;
}

.almox-carga-head {
	display: flex;
	align-items: baseline;
	gap: 4px;
	line-height: 1;
}

.almox-carga-total {
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
	font-variant-numeric: tabular-nums;
}

.almox-carga-label {
	font-size: 0.68rem;
	font-weight: 800;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.almox-carga-bar {
	display: flex;
	width: 100%;
	height: 6px;
	border-radius: 999px;
	overflow: hidden;
	background: #e2e8f0;
}

.almox-carga-bar > i {
	display: block;
	height: 100%;
	font-style: normal;
	min-width: 0;
}

.almox-carga-bar .seg-sa {
	background: #22c55e;
}

.almox-carga-bar .seg-pend {
	background: #ef4444;
}

.almox-carga-bar .seg-trug {
	background: #f59e0b;
}

.almox-carga-parts {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 8px;
	font-size: 0.65rem;
	font-weight: 700;
	line-height: 1.2;
}

.almox-carga-parts b {
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.almox-carga-parts .part-sa {
	color: #15803d;
}

.almox-carga-parts .part-pend {
	color: #b91c1c;
}

.almox-carga-parts .part-trug {
	color: #b45309;
}

.almox-td-trug {
	color: #d97706 !important;
}

.almox-td-pend.has-value {
	color: #dc2626 !important;
}

.almox-td-disp {
	text-align: center;
}

.almox-disp-cell {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	min-width: 56px;
}

.almox-disp-cell b {
	font-size: 1.05rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: #0f172a;
}

.almox-row.is-ok .almox-disp-cell b {
	color: #16a34a;
}

.almox-row.is-baixo .almox-disp-cell b {
	color: #d97706;
}

.almox-row.is-zerado .almox-disp-cell b,
.almox-row.is-alerta .almox-disp-cell b {
	color: #dc2626;
}

.sigma-almox-gauge {
	width: 100%;
}

.sigma-almox-gauge.compact {
	width: 56px;
}

.sigma-almox-gauge-track {
	height: 5px;
	border-radius: 999px;
	background: #e2e8f0;
	overflow: hidden;
}

.sigma-almox-gauge-fill {
	height: 100%;
	border-radius: 999px;
	background: linear-gradient(90deg, #800020 0%, #16a34a 100%);
	transition: width 0.35s ease;
}

.almox-row.is-zerado .sigma-almox-gauge-fill,
.sigma-almox-mcard.is-zerado .sigma-almox-gauge-fill {
	background: #94a3b8;
}

.almox-row.is-alerta .sigma-almox-gauge-fill,
.sigma-almox-mcard.is-alerta .sigma-almox-gauge-fill {
	background: linear-gradient(90deg, #ef4444 0%, #f97316 100%);
}

.almox-row.is-baixo .sigma-almox-gauge-fill,
.sigma-almox-mcard.is-baixo .sigma-almox-gauge-fill {
	background: linear-gradient(90deg, #f59e0b 0%, #fbbf24 100%);
}

.sigma-almox-gauge-label {
	display: block;
	margin-top: 4px;
	font-size: 0.65rem;
	font-weight: 700;
	color: #94a3b8;
}

.almox-td-acoes {
	text-align: center;
}

.almox-acoes-cell {
	display: inline-flex;
	gap: 8px;
	justify-content: center;
}

.almox-btn-enviar {
	background: #fdf2f4 !important;
	color: #800020 !important;
	border-color: #f3c5ce !important;
}

.almox-btn-aporte {
	background: #ecfdf5 !important;
	color: #047857 !important;
	border-color: #a7f3d0 !important;
}

/* Cards mobile */
.sigma-almox-mcards {
	display: none;
}

.sigma-almox-mcard {
	position: relative;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 14px 14px 12px;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	overflow: hidden;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.sigma-almox-mcard::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: #cbd5e1;
}

.sigma-almox-mcard.is-ok::before {
	background: #16a34a;
}

.sigma-almox-mcard.is-baixo::before {
	background: #f59e0b;
}

.sigma-almox-mcard.is-alerta::before {
	background: #ef4444;
}

.sigma-almox-mcard.is-zerado::before {
	background: #94a3b8;
}

.sigma-almox-mcard:active {
	transform: scale(0.985);
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.sigma-almox-mcard-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 10px;
}

.sigma-almox-mcard-info {
	min-width: 0;
	flex: 1 1 auto;
}

.sigma-almox-nome-row {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}

.sigma-almox-nome-row .almox-foto-thumb,
.sigma-almox-nome-row .almox-foto-empty {
	width: 36px;
	height: 36px;
}

.sigma-almox-ord {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	padding: 0 6px;
	border-radius: 6px;
	background: #f1f5f9;
	color: #64748b;
	font-size: 0.7rem;
	font-weight: 800;
	flex-shrink: 0;
}

.sigma-almox-nome {
	color: #0f172a;
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.sigma-almox-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 6px;
}

.sigma-almox-disp-hero {
	flex: 0 0 auto;
	text-align: center;
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	border-radius: 12px;
	padding: 8px 12px;
	min-width: 58px;
}

.sigma-almox-mcard.is-baixo .sigma-almox-disp-hero {
	background: #fffbeb;
	border-color: #fde68a;
}

.sigma-almox-mcard.is-alerta .sigma-almox-disp-hero,
.sigma-almox-mcard.is-zerado .sigma-almox-disp-hero {
	background: #fef2f2;
	border-color: #fecaca;
}

.sigma-almox-disp-hero small {
	display: block;
	font-size: 0.6rem;
	font-weight: 800;
	color: #94a3b8;
	letter-spacing: 0.06em;
}

.sigma-almox-disp-hero b {
	display: block;
	font-size: 1.25rem;
	font-weight: 800;
	color: #15803d;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
}

.sigma-almox-mcard.is-baixo .sigma-almox-disp-hero b {
	color: #d97706;
}

.sigma-almox-mcard.is-alerta .sigma-almox-disp-hero b,
.sigma-almox-mcard.is-zerado .sigma-almox-disp-hero b {
	color: #dc2626;
}

.sigma-almox-setor {
	font-size: 0.78rem;
	font-weight: 600;
	color: #0369a1;
	margin-bottom: 10px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.sigma-almox-setor i {
	color: #94a3b8;
	margin-right: 4px;
}

.sigma-almox-kpis {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 10px 0;
}

.sigma-almox-kpis .almox-carga-block {
	display: flex;
	width: 100%;
	max-width: none;
	min-width: 0;
}

.sigma-almox-nums {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.sigma-almox-nums > span {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 7px 8px;
	text-align: center;
}

.sigma-almox-nums small {
	display: block;
	font-size: 0.6rem;
	font-weight: 800;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.sigma-almox-nums b {
	font-size: 0.95rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: #0f172a;
}

.sigma-almox-nums .is-trug b {
	color: #d97706;
}

.sigma-almox-nums .is-pend.has-value b {
	color: #dc2626;
}

.sigma-almox-mcard-foot {
	display: flex;
	gap: 8px;
	padding-top: 10px;
	border-top: 1px solid #f1f5f9;
}

/* Compat: strip também responde à classe antiga */
.sigma-almox-carga {
	display: none;
}

/* =============================================================================
   06-LISTAS · Listas — editor e arquitetura
   ============================================================================= */

/* ✅ BOTÃO FILTRAR MODERNO */

/* ✅ SELETOR DINÂMICO DE LISTAS */

#link-listas[style*="display: block"],
#link-listas[style*="display: inline-flex"],
#link-listas[style*="display: flex"] {
	display: flex !important;
	flex-direction: column;
	align-items: center;
}

/* Formulário Nova/Editar Lista — mesmo stack da frota, identidade bordô */

#view-lista-form .frota-form-section-title i {
	color: #800020;
}

#view-lista-form .lista-form-hint {
	margin: -4px 0 14px;
	font-size: 0.85rem;
	line-height: 1.45;
	color: #64748b;
}

#view-lista-form .lista-form-choice-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

#view-lista-form .lista-form-choice-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	text-align: left;
	padding: 14px 16px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	color: #334155;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
	-webkit-tap-highlight-color: transparent;
}

#view-lista-form .lista-form-choice-card i {
	font-size: 1.4rem;
	color: #94a3b8;
}

#view-lista-form .lista-form-choice-card strong {
	font-size: 0.92rem;
	font-weight: 700;
	color: #0f172a;
}

#view-lista-form .lista-form-choice-card span {
	font-size: 0.78rem;
	line-height: 1.35;
	color: #64748b;
}

#view-lista-form .lista-form-choice-card.is-active {
	background: #fdf2f4;
	border-color: #f3c5ce;
	box-shadow: 0 0 0 1px #f3c5ce inset;
}

#view-lista-form .lista-form-choice-card.is-active i,
#view-lista-form .lista-form-choice-card.is-active strong {
	color: #800020;
}

#view-lista-form .lista-form-tipo-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(158px, 1fr));
	gap: 10px;
}

#view-lista-form .lista-form-tipo-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	text-align: left;
	padding: 12px 12px 14px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	color: #334155;
	cursor: pointer;
	min-height: 108px;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
	-webkit-tap-highlight-color: transparent;
}

#view-lista-form .lista-form-tipo-card i {
	font-size: 1.45rem;
	color: #0284c7;
}

#view-lista-form .lista-form-tipo-card strong {
	font-size: 0.82rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
}

#view-lista-form .lista-form-tipo-card span {
	font-size: 0.72rem;
	line-height: 1.35;
	color: #64748b;
}

#view-lista-form .lista-form-tipo-card.is-active {
	border-color: #800020;
	background: #fff1f2;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.08);
}

#view-lista-form .lista-form-tipo-card.is-active i,
#view-lista-form .lista-form-tipo-card.is-active strong {
	color: #800020;
}

#view-lista-form .lista-form-field-help,
#view-lista-form .lista-form-aviso-perm {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 6px;
	font-size: 0.75rem;
	font-weight: 600;
	color: #64748b;
}

#view-lista-form .lista-form-aviso-perm {
	color: #059669;
}

#view-lista-form .lista-form-ativo-picker {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#view-lista-form .lista-form-ativo-picker.is-ativo-escolhido .lista-form-ativo-search,
#view-lista-form .lista-form-ativo-picker.is-ativo-escolhido .lista-form-ativo-lista {
	display: none !important;
}

#view-lista-form .lista-form-ativo-selecionado[hidden] {
	display: none !important;
}

#view-lista-form .lista-form-ativo-search {
	position: relative;
}

#view-lista-form .lista-form-ativo-search > i {
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	pointer-events: none;
}

#view-lista-form .lista-form-ativo-search .form-control-clean {
	padding-left: 40px;
	width: 100%;
}

#view-lista-form .lista-form-ativo-lista {
	max-height: 240px;
	overflow-y: auto;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
}

#view-lista-form .lista-form-ativo-item {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 12px 14px;
	border: none;
	border-bottom: 1px solid #f1f5f9;
	background: transparent;
	cursor: pointer;
	text-align: left;
	-webkit-tap-highlight-color: transparent;
}

#view-lista-form .lista-form-ativo-item:last-child {
	border-bottom: none;
}

#view-lista-form .lista-form-ativo-item:hover,
#view-lista-form .lista-form-ativo-item:focus-visible {
	background: #fdf2f4;
}

#view-lista-form .lista-form-ativo-item-nome {
	font-weight: 700;
	color: #0f172a;
	font-size: 0.92rem;
}

#view-lista-form .lista-form-ativo-item-meta {
	font-size: 0.75rem;
	font-weight: 600;
	color: #94a3b8;
	flex-shrink: 0;
}

#view-lista-form .lista-form-ativo-empty {
	padding: 20px 14px;
	text-align: center;
	color: #94a3b8;
	font-size: 0.85rem;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

#view-lista-form .lista-form-ativo-selecionado {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1px solid #f3c5ce;
	background: #fdf2f4;
	cursor: pointer;
	text-align: left;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
}

#view-lista-form .lista-form-ativo-selecionado-info {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	flex: 1 1 auto;
}

#view-lista-form .lista-form-ativo-selecionado-info > i {
	font-size: 1.35rem;
	color: #800020;
	flex-shrink: 0;
}

#view-lista-form .lista-form-ativo-selecionado-info strong {
	display: block;
	font-size: 0.95rem;
	color: #800020;
	font-weight: 800;
}

#view-lista-form .lista-form-ativo-selecionado-info small {
	display: block;
	font-size: 0.75rem;
	color: #64748b;
	font-weight: 600;
}

#view-lista-form .lista-form-ativo-trocar-hint {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.72rem;
	font-weight: 700;
	color: #94a3b8;
	white-space: nowrap;
}

#view-lista-form .lista-form-ativo-trocar-hint i {
	font-size: 0.9rem;
	line-height: 1;
}

#view-lista-form .listas-title-text .sigma-v3-title-label {
	margin: 0;
}

#view-lista-form .listas-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

#view-lista-form .btn-lista-form-salvar {
	background: #800020 !important;
	background-color: #800020 !important;
	color: #ffffff !important;
	border: 1px solid #600018 !important;
	box-shadow: none !important;
}

#view-lista-form .btn-lista-form-salvar:hover {
	background: #600018 !important;
	background-color: #600018 !important;
	color: #ffffff !important;
	transform: none;
}

/* Listas — cabeçalho + filtros + espaçamento dos cards */

#menu-editor-listas .listas-title-row,
#view-lista-form .listas-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#menu-editor-listas .listas-title-text,
#view-lista-form .listas-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#menu-editor-listas .listas-title-text .sigma-v3-title-label {
	margin: 0;
}

#menu-editor-listas .listas-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

#menu-editor-listas .btn-listas-nova {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	white-space: nowrap;
	background: #fdf2f4 !important;
	background-color: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
	box-shadow: none !important;
}

#menu-editor-listas .btn-listas-nova i {
	color: #800020 !important;
}

#menu-editor-listas .btn-listas-nova:hover,
#menu-editor-listas .btn-listas-nova:active {
	background: #fce7eb !important;
	background-color: #fce7eb !important;
	color: #5c0018 !important;
}

#menu-editor-listas .listas-filtro-card {
	margin-bottom: 1.75rem;
}

#menu-editor-listas #container-cards-listas {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
}

/* ── Tabela de Listas (PC) ─────────────────────── */
#menu-editor-listas .listas-table-wrap {
	overflow-x: auto;
	border-radius: 14px;
	border: 1px solid #e2e8f0;
	background: #fff;
}

#menu-editor-listas .listas-table {
	min-width: 920px;
}

#menu-editor-listas .listas-th-nome    { width: auto; }
#menu-editor-listas .listas-th-ativo   { width: 150px; }
#menu-editor-listas .listas-th-posto   { width: 180px; }
#menu-editor-listas .listas-th-unidade { width: 110px; }
#menu-editor-listas .listas-th-itens   { width: 70px; text-align: center; }
#menu-editor-listas .listas-th-status  { width: 140px; }
#menu-editor-listas .listas-th-acoes   { width: 170px; text-align: center; }

#menu-editor-listas .listas-tr.is-inativa {
	opacity: 0.55;
	filter: grayscale(0.6);
}

#menu-editor-listas .listas-tr.is-inativa:hover {
	opacity: 0.8;
	filter: none;
}

#menu-editor-listas .listas-td-nome {
	min-width: 0;
}

#menu-editor-listas .listas-nome-texto {
	display: block;
	font-weight: 700;
	color: #1e293b;
	font-size: 0.9rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 260px;
}

#menu-editor-listas .listas-badge-comp {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	padding: 2px 7px;
	border-radius: 999px;
	font-size: 0.65rem;
	font-weight: 800;
	background: #eff6ff;
	color: #1d4ed8;
	margin-top: 4px;
}

#menu-editor-listas .listas-td-posto,
#menu-editor-listas .listas-td-unidade,
#menu-editor-listas .listas-td-ativo {
	font-size: 0.82rem;
}

#menu-editor-listas .listas-td-meta.is-vazio {
	color: #94a3b8;
	font-weight: 600;
	font-style: italic;
}

#menu-editor-listas .listas-td-ativo .listas-td-meta {
	font-weight: 700;
	color: #0f172a;
	letter-spacing: 0.02em;
}

#menu-editor-listas .listas-td-meta {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #475569;
	font-weight: 600;
}

#menu-editor-listas .listas-td-meta i {
	color: #800020;
	font-size: 0.9rem;
	opacity: 0.7;
}

#menu-editor-listas .listas-td-itens {
	text-align: center;
}

#menu-editor-listas .listas-itens-pill {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 20px;
	background: #f1f5f9;
	color: #475569;
	font-size: 0.78rem;
	font-weight: 800;
}

/* Status chips */
#menu-editor-listas .listas-status-chip {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 8px;
	font-size: 0.72rem;
	font-weight: 800;
}

#menu-editor-listas .listas-status-chip.is-ativa {
	background: #f0fdf4;
	color: #15803d;
}

#menu-editor-listas .listas-status-chip.is-inativa {
	background: #f8fafc;
	color: #94a3b8;
}

/* Botões de ação */
#menu-editor-listas .listas-td-acoes {
	text-align: center;
	white-space: nowrap;
}

#menu-editor-listas .listas-btn-acao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 7px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	color: #64748b;
	cursor: pointer;
	margin: 0 1px;
	font-size: 0.9rem;
	transition: background 0.13s, color 0.13s, border-color 0.13s;
}

#menu-editor-listas .listas-btn-acao:hover { background: #f1f5f9; }

#menu-editor-listas .listas-btn-acao.is-view:hover  { background: #eff6ff; color: #2563eb; border-color: #bfdbfe; }
#menu-editor-listas .listas-btn-acao.is-edit:hover  { background: #eff6ff; color: #2563eb; border-color: #bfdbfe; }
#menu-editor-listas .listas-btn-acao.is-cfg:hover   { background: #fdf4ff; color: #7c3aed; border-color: #e9d5ff; }
#menu-editor-listas .listas-btn-acao.is-warn:hover  { background: #fffbeb; color: #d97706; border-color: #fde68a; }
#menu-editor-listas .listas-btn-acao.is-ok:hover    { background: #f0fdf4; color: #15803d; border-color: #bbf7d0; }
#menu-editor-listas .listas-btn-acao.is-del:hover   { background: #fff1f2; color: #dc2626; border-color: #fecaca; }

#menu-editor-listas .listas-secao-titulo {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0 0 1.1rem 0;
}

#view-extrato-lista .extrato-lista-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#view-extrato-lista .extrato-lista-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#view-extrato-lista .extrato-lista-title-text .sigma-v3-title-label {
	margin: 0;
}

#view-extrato-lista .extrato-lista-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

#view-extrato-lista .extrato-lista-voltar-pc {
	flex: 0 0 auto;
	background: #f8fafc !important;
	color: #334155 !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: none !important;
	min-width: 120px;
	justify-content: center;
}

#view-extrato-lista .extrato-lista-voltar-pc:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

#view-extrato-lista .extrato-lista-acoes {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	width: 100%;
}

#view-extrato-lista .extrato-lista-acoes:empty {
	display: none !important;
}

#view-extrato-lista .extrato-lista-acoes .extrato-btn {
	box-shadow: none !important;
	font-weight: 600;
}

/* Editar Lista: soft bordô (não o primary sólido genérico) */

#view-extrato-lista .extrato-lista-acoes .btn-soft-primary {
	background: #fdf2f4 !important;
	background-color: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
	box-shadow: none !important;
}

#view-extrato-lista .extrato-lista-acoes .btn-soft-primary:hover {
	background: #fce7eb !important;
	background-color: #fce7eb !important;
	color: #5c0018 !important;
	transform: none;
}

#view-extrato-lista .extrato-status-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 8px;
	border-radius: 6px;
	font-size: 0.9em;
	font-weight: 700;
}

#view-extrato-lista .extrato-status-badge.is-ativa {
	background: #10b98120;
	color: #10b981;
}

#view-extrato-lista .extrato-status-badge.is-inativa {
	background: #f59e0b20;
	color: #f59e0b;
}

#view-extrato-lista .extrato-meta-info {
	text-align: right;
	background: #f8fafc;
	padding: 12px 20px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	min-width: 210px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02);
	display: flex;
	flex-direction: column;
	gap: 6px;
}

#view-extrato-lista .extrato-meta-item + .extrato-meta-item {
	border-top: 1px solid #e2e8f0;
	margin-top: 4px;
	padding-top: 8px;
}

#view-extrato-lista .extrato-meta-label {
	display: block;
	font-size: 0.65em;
	color: #94a3b8;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	margin-bottom: 2px;
}

#view-extrato-lista .extrato-meta-value {
	display: block;
	font-size: 0.85em;
	color: #1e293b;
	font-weight: 800;
	line-height: 1.35;
	word-break: break-word;
}

#view-extrato-lista .extrato-meta-value.is-resp {
	color: #800020;
}

#view-extrato-lista .extrato-btn-txt-mobile {
	display: none;
}

#view-extrato-lista .extrato-btn-txt-pc {
	display: inline;
}

#menu-editor-listas .listas-secao-titulo h3 {
	color: #1e293b;
	font-size: 0.95em;
	font-weight: 600;
	margin: 0;
}

#menu-editor-listas .listas-secao-titulo--inativas {
	margin-top: 2rem;
	padding-top: 1.75rem;
	border-top: 1px solid #e2e8f0;
}

#menu-editor-listas .listas-secao-titulo--inativas h3 {
	color: #64748b;
}

#menu-editor-listas .listas-secao-barra {
	width: 4px;
	height: 18px;
	border-radius: 10px;
	flex-shrink: 0;
}

#menu-editor-listas .listas-secao-barra--ativa {
	background: #800020;
}

#menu-editor-listas .listas-secao-barra--inativa {
	background: #94a3b8;
}

#menu-editor-listas .listas-cards-grid {
	width: 100%;
	margin-top: 0 !important;
	gap: 1.25rem !important;
}

/* Padronização do Grid de Listas igual ao de Unidades */

#container-cards-listas.cards-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: 20px !important;
	width: 100% !important;
	align-items: stretch;
}

#container-cards-listas .unit-building-card {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

#modal-novo-setor-arquitetura .modal-content {
	animation: scaleUp 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Estilização elegante para o scroll no estilo Sigma */

.item-arquitetura-linha {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #e8edf3;
	border-radius: 12px;
	margin-bottom: 10px;
	cursor: grab;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	animation: editorItemIn 0.28s ease both;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
}

.item-arquitetura-linha:hover {
	border-color: #f3c5ce;
	background: #fff;
	box-shadow: 0 8px 20px rgba(128, 0, 32, 0.06);
	transform: translateY(-1px);
}

@keyframes editorItemIn {
	from {
		opacity: 0;
		transform: translateY(6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.sigma-setores-field label,
.sigma-setores-lista-head label {
	display: block;
	margin: 0 0 6px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-setores-lista-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 8px;
}

.sigma-setores-lista-head label {
	margin: 0;
}

.sigma-setores-lista-head span {
	font-size: 0.7rem;
	font-weight: 600;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.sigma-setores-lista {
	max-height: 250px;
	overflow-y: auto;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #f8fafc;
}

#view-editor-arquitetura {
	position: fixed !important;
	top: 70px !important;

	/* Flanco Esquerdo (Sidebar) */
	left: 80px !important;

	/* 🎯 FLANCO DIREITO: Aumente este valor se quiser afastar da borda direita */
	right: 0 !important;

	bottom: 0 !important;

	/* Desativa larguras e alturas forçadas que causam vazamento */
	height: auto !important;
	width: auto !important;

	margin: 0 !important;
	padding: 0 !important;
	z-index: 50;
}

/* ---------------------------------------------------
   CABEÇALHOS DE SEÇÃO (ESTILO BANNER - PRINT 01)
--------------------------------------------------- */

/* Tag dinâmica que o JS alimenta com o nome da base (Ex: Base: FÊNIX ALFA) */

/* ---------------------------------------------------
   SESSÕES E GRID
--------------------------------------------------- */

#grid-listas-tela2.prep-grid .card-lista-tela2,
#grid-postos-tela2.prep-grid .card-opcao-tela2 {
	height: auto !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/* ========================================================
   🖤 ESTILOS DOS CARDS DA TELA 2 (CLEAN BLACK / CORPORATIVO)
   ======================================================== */

.card-lista-tela2,
.card-opcao-tela2 {
    background: var(--sigma-surface-2, #f8fafc) !important;
    border: none !important;
    border-left: 6px solid #000000 !important;
    border-radius: 12px !important;
    padding: 20px !important;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    /* Permite que botões internos usem 100% da largura se precisarem */
    text-align: left !important;
    /* FORÇA o alinhamento à esquerda */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

/* EFEITO AO PASSAR O MOUSE (Hover) */

.card-lista-tela2:hover,
.card-opcao-tela2:hover {
    background: var(--sigma-surface, #f1f5f9) !important;
    border-left-color: #000000 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px -2px rgba(0, 0, 0, 0.12);
}

/* EFEITO DE CARD SELECIONADO / ATIVO */

.card-lista-tela2.active,
.card-opcao-tela2.active,
.card-lista-tela2.selecionado,
.card-opcao-tela2.selecionado {
    background: #e2e8f0 !important;
    border-left-color: #000000 !important;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15) !important;
}

/* Linha tracejada da área de ação acompanha a paleta */

.card-lista-tela2 .card-action-area {
	border-top-color: #cbd5e1 !important;
}

#painel-preparacao-conferencia #prep-sec-ativo .prep-ativo-lista {
	max-height: 220px;
}

#painel-preparacao-conferencia .prep-ativo-sessao.is-vinculo-lista .prep-ativo-selecionado,
#painel-preparacao-conferencia .prep-ativo-sessao.is-instalacao-fixa .prep-ativo-selecionado {
	cursor: default;
}

#painel-preparacao-conferencia .prep-ativo-sessao.is-vinculo-lista .prep-ativo-trocar-hint,
#painel-preparacao-conferencia .prep-ativo-sessao.is-instalacao-fixa .prep-ativo-trocar-hint {
	display: none !important;
}

.prep-ativo-lista {
	max-height: 200px;
	overflow-y: auto;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
}

.prep-ativo-picker.is-ativo-escolhido .prep-ativo-search,
.prep-ativo-sessao.is-ativo-escolhido .prep-ativo-search,
.prep-ativo-sessao.is-ativo-escolhido .prep-ativo-lista {
	display: none !important;
}

.card-lista-tela2.is-sem-vinculo.selecionado,
.card-lista-tela2.is-sem-vinculo.active {
	border-left-color: #800020 !important;
}

#painel-preparacao-checklist .check-recentes-lista {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

/* =============================================================================
   07-FROTA · Frota / VTR — bases, formulários, checklist prep
   ============================================================================= */

/*MENU VIATURAS*/

.v3-vtr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 20px;
	margin-top: 20px;
}

#vtr-bases-cards-container .card-actions-container {
	position: absolute !important;
	top: 10px !important;
	right: 10px !important;
	display: flex !important;
	gap: 8px !important;
	z-index: 20;
}

#vtr-bases-cards-container {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 20px;
	padding: 20px 0;
	align-items: start;
}

/* Frota — cabeçalho + filtros + cards limpos */

#view-vtr-bases .frota-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#view-vtr-bases .frota-modulo-icon {
	background: #fff1f2;
	color: #9f1239;
	display: flex;
	align-items: center;
	justify-content: center;
}

#view-vtr-bases .frota-modulo-icon i {
	font-size: 1.35rem;
}

#view-vtr-bases .frota-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#view-vtr-bases .frota-title-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

#view-vtr-bases .btn-frota-sync {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	white-space: nowrap;
	background: #f8fafc !important;
	color: #334155 !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: none !important;
}

#view-vtr-bases .btn-frota-sync i {
	color: #2563eb !important;
}

#view-vtr-bases .btn-frota-sync:hover,
#view-vtr-bases .btn-frota-sync:active {
	background: #eff6ff !important;
	border-color: #bfdbfe !important;
	color: #1e40af !important;
}

#view-vtr-bases .frota-title-text .sigma-v3-title-label {
	margin: 0;
}

#view-vtr-bases .frota-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

#view-vtr-bases .btn-frota-nova {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	white-space: nowrap;
	background: #fff1f2 !important;
	background-color: #fff1f2 !important;
	color: #9f1239 !important;
	border: 1px solid #fecdd3 !important;
	box-shadow: none !important;
}

#view-vtr-bases .btn-frota-nova i,
#view-vtr-bases .btn-frota-nova span {
	color: #9f1239 !important;
}

#view-vtr-bases .btn-frota-nova:hover,
#view-vtr-bases .btn-frota-nova:active {
	background: #ffe4e6 !important;
	background-color: #ffe4e6 !important;
	color: #881337 !important;
}

/* Form / Detalhe Frota */

#view-vtr-form .frota-title-row,
#view-vtr-detalhe .frota-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#view-vtr-form .frota-title-text,
#view-vtr-detalhe .frota-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#view-vtr-detalhe .frota-detalhe-km-chip {
	flex: 0 0 auto;
	text-align: center;
	background: #f0f9ff;
	border: 1px solid #bae6fd;
	border-radius: 12px;
	padding: 8px 12px;
	min-width: 64px;
}

#view-vtr-detalhe .frota-detalhe-km-chip b {
	display: block;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0284c7;
	line-height: 1.1;
}

#view-vtr-detalhe .frota-detalhe-km-chip small {
	font-size: 0.62rem;
	font-weight: 700;
	color: #94a3b8;
	letter-spacing: 0.4px;
}

#view-vtr-detalhe .frota-detalhe-header-actions {
	display: flex;
	align-items: stretch;
	gap: 8px;
}

#view-vtr-detalhe .frota-detalhe-edit-chip {
	flex: 0 0 auto;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3px;
	text-align: center;
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	border-radius: 10px;
	min-width: 64px;
	padding: 6px 10px;
	color: #2563eb;
	cursor: pointer;
	transition: background .15s, border-color .15s, color .15s;
}

#view-vtr-detalhe .frota-detalhe-edit-chip i {
	font-size: 1rem;
	line-height: 1;
}

#view-vtr-detalhe .frota-detalhe-edit-chip small {
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.3px;
	text-transform: uppercase;
}

#view-vtr-detalhe .frota-detalhe-edit-chip:hover {
	background: #dbeafe;
	border-color: #93c5fd;
	color: #1d4ed8;
}

#view-vtr-detalhe .frota-detalhe-icon-box,
#view-vtr-form .icon-box {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

#view-vtr-detalhe .frota-detalhe-icon-box i {
	font-size: 1.35rem;
}

.frota-form-stack {
	display: flex;
	flex-direction: column;
	gap: 14px;
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

.frota-form-section {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 18px 18px 16px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.frota-form-section-oleo {
	background: #fffbeb;
	border-color: #fde68a;
}

.frota-form-section-rev {
	background: #f0fdf4;
	border-color: #bbf7d0;
}

.frota-form-section-title {
	margin: 0 0 14px 0;
	padding-bottom: 10px;
	border-bottom: 1px solid #e2e8f0;
	font-size: 0.82rem;
	font-weight: 700;
	color: #334155;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.frota-form-section-title i {
	color: #2563eb;
	font-size: 1.1rem;
}

.frota-form-section-oleo .frota-form-section-title i {
	color: #d97706;
}

.frota-form-section-rev .frota-form-section-title i {
	color: #16a34a;
}

.frota-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 16px;
}

.frota-form-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.frota-form-field-full {
	grid-column: 1 / -1;
}

.frota-form-field label {
	font-size: 0.72rem;
	font-weight: 700;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.3px;
}

.frota-form-field .required {
	color: #e11d48;
}

.frota-form-field textarea.form-control-clean {
	min-height: 96px;
	resize: vertical;
}

.frota-form-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 4px 0 20px;
}

.frota-detalhe-body {
	display: flex;
	flex-direction: column;
	gap: 14px;
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

/* —— Dossiê gestor de frota —— */
.vtr-gestao-shell {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	width: 100%;
}

.vtr-gestao-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.vtr-gestao-acoes {
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.vtr-gestao-acoes-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 10px;
}

.vtr-gestao-acoes-grid .btn-soft {
	flex: 1 1 180px;
	justify-content: center;
}

.vtr-gestao-quick-fields {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	flex: 1 1 320px;
	min-width: 0;
}

.vtr-gestao-condicao {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: min(200px, 100%);
	flex: 1 1 180px;
}

.vtr-gestao-condicao label {
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #64748b;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.vtr-gestao-condicao select {
	font-weight: 700;
}

.vtr-gestao-toolbar-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-end;
}

.vtr-gestao-toolbar-actions .btn-soft {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.vtr-gestao-status-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.vtr-gestao-status-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 14px 14px 12px;
	border-radius: 14px;
	border: 1px solid #e2e8f0;
	background: #fff;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
	min-width: 0;
}

.vtr-gestao-status-card.is-ok {
	border-color: #bbf7d0;
	background: linear-gradient(180deg, #f0fdf4 0%, #fff 48%);
}

.vtr-gestao-status-card.is-alerta {
	border-color: #fde68a;
	background: linear-gradient(180deg, #fffbeb 0%, #fff 48%);
}

.vtr-gestao-status-card.is-vencido {
	border-color: #fecaca;
	background: linear-gradient(180deg, #fef2f2 0%, #fff 48%);
}

.vtr-gestao-status-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.vtr-gestao-status-title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #0f172a;
}

.vtr-gestao-status-title i {
	font-size: 1.15rem;
	color: #64748b;
}

.vtr-gestao-status-card.is-oleo .vtr-gestao-status-title i { color: #0ea5e9; }
.vtr-gestao-status-card.is-rev .vtr-gestao-status-title i { color: #6366f1; }
.vtr-gestao-status-card.is-doc .vtr-gestao-status-title i { color: #0f766e; }

.vtr-gestao-pill {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

.vtr-gestao-pill.is-ok { background: #ecfdf5; color: #047857; }
.vtr-gestao-pill.is-nao { background: #fef2f2; color: #b91c1c; }
.vtr-gestao-pill.is-na { background: #f1f5f9; color: #94a3b8; }

.vtr-gestao-status-msg {
	margin: 0;
	font-size: 0.84rem;
	font-weight: 700;
	color: #334155;
	line-height: 1.35;
	min-height: 2.4em;
}

.vtr-gestao-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	padding-top: 8px;
	border-top: 1px solid #f1f5f9;
}

.vtr-gestao-metric {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.vtr-gestao-metric small {
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #94a3b8;
}

.vtr-gestao-metric b {
	font-size: 0.82rem;
	font-weight: 800;
	color: #0f172a;
	white-space: normal;
	word-break: break-word;
}

.vtr-gestao-status-btn {
	margin-top: auto;
	align-self: stretch;
	justify-content: center;
	gap: 6px;
}

.vtr-gestao-id-card,
.vtr-gestao-panel {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 16px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.vtr-gestao-section-title {
	margin: 0 0 6px;
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #334155;
}

.vtr-gestao-section-title i { color: #800020; }

.vtr-gestao-panel-sub {
	margin: 0 0 12px;
	font-size: 0.8rem;
	color: #64748b;
	font-weight: 500;
}

.vtr-gestao-id-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.vtr-gestao-id-grid small {
	display: block;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #94a3b8;
	margin-bottom: 3px;
}

.vtr-gestao-id-grid b {
	font-size: 0.9rem;
	font-weight: 800;
	color: #0f172a;
}

.vtr-gestao-obs {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid #f1f5f9;
}

.vtr-gestao-obs small {
	display: block;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #94a3b8;
	margin-bottom: 6px;
}

.vtr-gestao-obs p {
	margin: 0;
	font-size: 0.9rem;
	font-weight: 600;
	color: #475569;
	line-height: 1.45;
}

.vtr-gestao-check-grid {
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 12px;
	align-items: start;
}

.vtr-gestao-hist-scroll {
	max-height: 420px;
	overflow-y: auto;
	padding-right: 4px;
}

.vtr-gestao-loading,
.vtr-gestao-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 28px 12px;
	color: #94a3b8;
	font-weight: 600;
	text-align: center;
}

.vtr-gestao-empty i { font-size: 1.6rem; opacity: 0.45; }
.vtr-gestao-empty.is-erro { color: #dc2626; }

.vtr-check-item {
	padding: 12px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	margin-bottom: 10px;
}

.vtr-check-item:last-child { margin-bottom: 0; }

.vtr-check-item.is-destaque {
	background: #eff6ff;
	border-color: #bfdbfe;
}

.vtr-check-item.is-pend { border-left: 4px solid #dc2626; }
.vtr-check-item.is-ok { border-left: 4px solid #16a34a; }

.vtr-check-item-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 8px;
}

.vtr-check-item-top strong {
	font-size: 0.86rem;
	color: #0f172a;
}

.vtr-check-badge {
	padding: 3px 8px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	white-space: nowrap;
}

.vtr-check-badge.is-ok { background: #ecfdf5; color: #047857; }
.vtr-check-badge.is-pend { background: #fef2f2; color: #b91c1c; }

.vtr-check-item-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	font-size: 0.78rem;
	font-weight: 600;
	color: #475569;
}

.vtr-check-item-meta i { color: #94a3b8; margin-right: 3px; }

.vtr-check-obs {
	margin: 8px 0 0;
	font-size: 0.8rem;
	color: #64748b;
	font-style: italic;
}

.vtr-swal-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px 12px;
	text-align: left;
	margin-top: 8px;
}

.vtr-swal-grid label {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 0.75rem;
	font-weight: 700;
	color: #475569;
}

.vtr-swal-grid .swal2-input {
	margin: 0 !important;
	width: 100% !important;
}

@media (max-width: 900px) {
	.vtr-gestao-status-grid,
	.vtr-gestao-check-grid,
	.vtr-gestao-id-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.vtr-gestao-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.vtr-gestao-quick-fields {
		flex: 0 0 auto;
		flex-direction: column;
		align-items: stretch;
		align-content: flex-start;
		width: 100%;
		height: auto;
		gap: 10px;
	}

	.vtr-gestao-condicao {
		flex: 0 0 auto;
		width: 100%;
		min-width: 0;
	}

	.vtr-gestao-toolbar-actions .btn-soft {
		flex: 1 1 auto;
		justify-content: center;
	}

	.vtr-gestao-metrics {
		grid-template-columns: 1fr;
	}

	.vtr-swal-grid {
		grid-template-columns: 1fr;
	}
}

.frota-detalhe-grid-tele {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.frota-tele-card {
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 16px;
	text-align: left;
}

.frota-tele-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 12px;
}

.frota-tele-head i {
	font-size: 1.6rem;
}

.frota-tele-head span {
	font-size: 0.62rem;
	font-weight: 800;
	color: #fff;
	padding: 3px 8px;
	border-radius: 6px;
	letter-spacing: 0.3px;
}

.frota-tele-label {
	font-size: 0.68rem;
	font-weight: 800;
	text-transform: uppercase;
	color: #64748b;
}

.frota-tele-value {
	font-size: 1.25rem;
	font-weight: 800;
	color: #0f172a;
	margin-top: 2px;
}

.frota-tele-meta {
	font-size: 0.78rem;
	font-weight: 600;
	color: #475569;
	margin-top: 2px;
}

.frota-tele-msg {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dashed rgba(100, 116, 139, 0.35);
	font-size: 0.72rem;
	font-weight: 800;
}

.frota-detalhe-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 16px 18px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.frota-detalhe-card-title {
	margin: 0 0 12px 0;
	font-size: 0.8rem;
	font-weight: 700;
	color: #334155;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.frota-detalhe-card-title i {
	color: #2563eb;
}

.frota-detalhe-meta-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.frota-detalhe-meta-grid small,
.frota-detalhe-emprego small {
	display: block;
	font-size: 0.62rem;
	font-weight: 800;
	color: #94a3b8;
	text-transform: uppercase;
	margin-bottom: 4px;
}

.frota-detalhe-meta-grid b,
.frota-detalhe-emprego b {
	font-size: 0.9rem;
	font-weight: 700;
	color: #0f172a;
}

.frota-detalhe-emprego {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid #f1f5f9;
}

.frota-detalhe-obs p {
	margin: 0;
	font-size: 0.9rem;
	color: #475569;
	line-height: 1.55;
	font-style: italic;
}

.frota-detalhe-acoes {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: 10px;
	width: 100%;
	padding-bottom: 24px;
}

.frota-detalhe-acoes .btn-frota-acao {
	width: auto;
	min-width: 120px;
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	padding: 0.7rem 1rem;
}

.frota-detalhe-acoes .btn-frota-acao i {
	font-size: 1.15rem;
	margin: 0;
	line-height: 1;
}

.frota-detalhe-acoes .btn-frota-acao span {
	font-weight: 700;
	font-size: 0.85rem;
}

#view-vtr-form,
#view-vtr-detalhe {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

#view-vtr-bases .frota-filtros-card {
	display: grid;
	grid-template-columns: minmax(220px, 1.4fr) minmax(0, 2fr);
	gap: 1rem;
	align-items: end;
	padding: 1.25rem;
}

#view-vtr-bases .frota-filtros-bar {
	display: contents;
}

#view-vtr-bases .frota-filtros-toggle {
	display: none;
}

#view-vtr-bases .frota-filtros-selects {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.75rem;
	min-width: 0;
}

#view-vtr-bases .frota-filtro-busca,
#view-vtr-bases .frota-filtro-status,
#view-vtr-bases .frota-filtro-atuacao,
#view-vtr-bases .frota-filtro-oleo,
#view-vtr-bases .frota-filtro-rev,
#view-vtr-bases .frota-filtro-doc {
	min-width: 0;
	width: 100%;
}

@media (max-width: 1200px) {
	#view-vtr-bases .frota-filtros-card {
		grid-template-columns: 1fr;
	}

	#view-vtr-bases .frota-filtros-selects {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1100px) {
	#view-vtr-bases .frota-filtros-selects {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

#view-vtr-bases .frota-vtr-card {
	position: relative;
	display: flex;
	align-items: stretch;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 14px 14px 14px 16px;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05);
	cursor: pointer;
	box-sizing: border-box;
	overflow: hidden;
	min-width: 0;
}

#view-vtr-bases .frota-vtr-card.border-verde {
	border-left: 5px solid #16a34a;
}

#view-vtr-bases .frota-vtr-card.border-vermelho {
	border-left: 5px solid #dc2626;
}

#view-vtr-bases .frota-vtr-card.border-amarelo {
	border-left: 5px solid #d97706;
}

#view-vtr-bases .frota-vtr-card-main {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-width: 0;
}

#view-vtr-bases .frota-vtr-card-img {
	width: 55px;
	height: 55px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

#view-vtr-bases .frota-vtr-card-img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
}

#view-vtr-bases .frota-vtr-card-body {
	flex: 1 1 auto;
	min-width: 0;
}

#view-vtr-bases .frota-vtr-card-stats {
	display: flex;
	gap: 12px;
	margin-top: 8px;
	padding-top: 8px;
	border-top: 1px solid #f1f5f9;
	min-width: 0;
}

#view-vtr-bases .frota-vtr-card-stats > div {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

#view-vtr-bases .frota-stat-unidade {
	margin-left: auto;
	text-align: right;
}

#view-vtr-bases .frota-stat-label {
	font-size: 0.55rem;
	color: #94a3b8;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.2px;
}

#view-vtr-bases .frota-stat-value {
	font-size: 0.85rem;
	font-weight: 800;
	color: #334155;
}

#view-vtr-bases .frota-stat-oleo {
	color: #c2780e;
}

#view-vtr-bases .frota-stat-un {
	color: #2c7399;
}

/* —— Lista Frota: tabela no padrão estoque (sigma-modern-table) —— */
#view-vtr-bases.view-section {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
	overflow-x: visible;
}

#view-vtr-bases .frota-filtros-card,
#view-vtr-bases .frota-modulo-header,
#view-vtr-bases .frota-lista-host {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}

#view-vtr-bases .frota-lista-host {
	min-width: 0;
	overflow: visible;
	display: block;
}

#view-vtr-bases .frota-lista-vazia {
	text-align: center;
	padding: 48px 20px;
	color: #94a3b8;
	font-weight: 600;
}

#view-vtr-bases .frota-lista-vazia i {
	display: block;
	font-size: 2.4rem;
	opacity: 0.35;
	margin-bottom: 12px;
}

#view-vtr-bases .frota-lista-vazia.is-erro {
	color: #dc2626;
}

#view-vtr-bases .sigma-frota-table-wrap.sigma-modern-table-wrapper {
	display: block;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#view-vtr-bases #frota-table.sigma-modern-table {
	border-collapse: separate;
	border-spacing: 0;
	width: 100% !important;
	min-width: 100% !important;
	max-width: none !important;
	table-layout: fixed;
}

#view-vtr-bases #frota-table.sigma-modern-table th {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	padding: 12px 10px;
	font-weight: 700;
}

#view-vtr-bases #frota-table.sigma-modern-table th i {
	font-size: 1rem;
	vertical-align: text-bottom;
	margin-right: 4px;
	color: #94a3b8;
}

#view-vtr-bases #frota-table.sigma-modern-table td {
	padding: 12px 10px;
	font-size: 0.86rem;
	color: #1e293b;
	word-wrap: break-word;
	overflow-wrap: anywhere;
}

/* Prefixo | Modelo | Condição | Atuação | Óleo | Rev | Doc */
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(1),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(1) { width: 20%; }
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(2),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(2) { width: 18%; }
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(3),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(3) { width: 14%; text-align: center; }
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(4),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(4) { width: 14%; }
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(5),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(5),
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(6),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(6),
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(7),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(7) { width: 10%; text-align: center; }
#view-vtr-bases #frota-table.sigma-modern-table th:nth-child(8),
#view-vtr-bases #frota-table.sigma-modern-table td:nth-child(8) { width: 11%; text-align: center; }

@media (min-width: 769px) {
	#view-vtr-bases #frota-table.sigma-modern-table thead th {
		position: sticky;
		top: 0;
		z-index: 30;
		background: #f8fafc !important;
		box-shadow: 0 1px 0 #e2e8f0, 0 6px 12px -8px rgba(15, 23, 42, 0.18);
	}

	#view-vtr-bases #frota-table.sigma-modern-table thead th:first-child {
		border-top-left-radius: 12px;
	}

	#view-vtr-bases #frota-table.sigma-modern-table thead th:last-child {
		border-top-right-radius: 12px;
	}
}

#view-vtr-bases #frota-table tbody tr.frota-row {
	cursor: default;
	transition: background-color 0.2s ease;
}

#view-vtr-bases #frota-table tbody tr.frota-row:nth-child(odd) {
	background: #ffffff;
}

#view-vtr-bases #frota-table tbody tr.frota-row:nth-child(even) {
	background: #fafbfc;
}

#view-vtr-bases #frota-table tbody tr.frota-row:hover {
	background: #f1f5f9;
}

#view-vtr-bases #frota-table tbody tr.frota-row.is-alerta {
	background: #fff7f7;
}

#view-vtr-bases #frota-table tbody tr.frota-row.is-baixo {
	background: #fffbeb;
}

#view-vtr-bases .frota-prefixo-cell {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

#view-vtr-bases .frota-prefixo-nome {
	font-size: 0.95rem;
	font-weight: 800;
	color: #0f172a;
	letter-spacing: 0.02em;
	line-height: 1.25;
}

#view-vtr-bases .frota-prefixo-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

#view-vtr-bases .sigma-frota-tag {
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	border-radius: 999px;
	border: 1px solid transparent;
	background: #eff6ff;
	color: #1d4ed8;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

#view-vtr-bases .sigma-frota-posto,
.vtr-gestao-shell .sigma-frota-posto {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 8px;
	border-radius: 999px;
	border: 1px solid rgba(124, 58, 237, 0.28);
	background: #f5f3ff;
	color: #6d28d9;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	white-space: nowrap;
}

#view-vtr-bases .sigma-frota-posto i,
.vtr-gestao-shell .sigma-frota-posto i {
	font-size: 0.78rem;
}

#view-vtr-bases .frota-vtr-card-posto {
	color: #6d28d9;
	font-weight: 700;
}

#view-vtr-bases .sigma-frota-placa {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-size: 0.72rem;
	font-weight: 700;
	color: #64748b;
	letter-spacing: 0.03em;
}

#view-vtr-bases .sigma-frota-placa i {
	font-size: 0.85rem;
	color: #94a3b8;
}

#view-vtr-bases .frota-td-modelo {
	font-weight: 600;
	color: #334155;
	max-width: none;
}

#view-vtr-bases .frota-chip-tipo {
	display: inline-flex;
	padding: 3px 9px;
	border-radius: 8px;
	background: #f1f5f9;
	color: #475569;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	white-space: nowrap;
}

#view-vtr-bases .frota-cell-icon-text {
	display: inline-flex;
	align-items: flex-start;
	gap: 5px;
	font-weight: 600;
	color: #475569;
	line-height: 1.35;
}

#view-vtr-bases .frota-cell-icon-text i {
	flex-shrink: 0;
	margin-top: 2px;
	color: #94a3b8;
	font-size: 0.95rem;
}

#view-vtr-bases .frota-td-check {
	text-align: center;
}

#view-vtr-bases .frota-td-acoes {
	text-align: center;
	white-space: nowrap;
}

#view-vtr-bases .frota-btn-acao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0 1px;
	border-radius: 7px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	color: #64748b;
	cursor: pointer;
	transition: background .15s, border-color .15s, color .15s;
}

#view-vtr-bases .frota-btn-acao:hover { background: #f1f5f9; }
#view-vtr-bases .frota-btn-acao.is-open:hover { background: #eff6ff; border-color: #bfdbfe; color: #2563eb; }
#view-vtr-bases .frota-btn-acao.is-edit:hover { background: #eff6ff; border-color: #bfdbfe; color: #2563eb; }
#view-vtr-bases .frota-btn-acao.is-cfg:hover { background: #f3f0ff; border-color: #ddd6fe; color: #6d28d9; }
#view-vtr-bases .frota-btn-acao.is-del:hover { background: #fff1f2; border-color: #fecdd3; color: #dc2626; }

#view-vtr-bases .frota-condicao-chip {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	background: #f1f5f9;
	color: #475569;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-vtr-bases .frota-condicao-chip.is-ativo {
	background: #ecfdf5;
	color: #047857;
}

#view-vtr-bases .frota-condicao-chip.is-manutencao {
	background: #fef2f2;
	color: #b91c1c;
}

#view-vtr-bases .frota-condicao-chip.is-reserva {
	background: #fffbeb;
	color: #b45309;
}

#view-vtr-bases .frota-ok-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 0;
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	line-height: 1.15;
	white-space: nowrap;
}

#view-vtr-bases .frota-ok-pill i {
	font-size: 0.9rem;
}

#view-vtr-bases .frota-ok-pill.is-ok {
	background: #ecfdf5;
	color: #047857;
}

#view-vtr-bases .frota-ok-pill.is-alerta {
	background: #fffbeb;
	color: #b45309;
}

#view-vtr-bases .frota-ok-pill.is-nao {
	background: #fef2f2;
	color: #b91c1c;
}

#view-vtr-bases .frota-ok-pill.is-na {
	background: #f1f5f9;
	color: #94a3b8;
}

#view-vtr-bases .frota-vtr-card-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 2px;
}

#view-vtr-bases .frota-vtr-card-placa {
	font-size: 0.72rem;
	font-weight: 800;
	color: #64748b;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	flex-shrink: 0;
}

#view-vtr-bases .frota-vtr-card-meta {
	display: flex;
	flex-direction: column;
	gap: 3px;
	margin-top: 8px;
	font-size: 0.78rem;
	font-weight: 600;
	color: #475569;
}

#view-vtr-bases .frota-vtr-card-meta i {
	color: #94a3b8;
	margin-right: 4px;
}

#view-vtr-bases .frota-vtr-card-condicao {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 10px;
	padding-top: 8px;
	border-top: 1px solid #f1f5f9;
}

#view-vtr-bases .frota-vtr-card-condicao small {
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #94a3b8;
}

#view-vtr-bases .frota-vtr-card-condicao b {
	font-size: 0.8rem;
	font-weight: 800;
	color: #0f172a;
}

#view-vtr-bases .frota-vtr-card-checks {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
	margin-top: 10px;
}

#view-vtr-bases .frota-check-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	padding: 6px 4px;
	border-radius: 10px;
	background: #f8fafc;
}

#view-vtr-bases .frota-check-item > span {
	font-size: 0.58rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #94a3b8;
}

#view-vtr-bases .frota-cards-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}

#vtr-bases-cards-container .unit-building-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	position: relative;
}

.result-vtr-card.selected {
	border-left: 6px solid #1b8a3e !important;
	background-color: #f0fdf4 !important;
	border-color: #1b8a3e !important;
	box-shadow: 0 4px 15px rgba(27, 138, 62, 0.15) !important;
	transform: scale(1.01) translateX(5px);
}

.result-vtr-card {
	background: #fff;
	border: 1px solid #eee;
	padding: 12px 15px;
	margin-bottom: 8px;
	border-radius: 10px;
	cursor: pointer;
	transition: all 0.2s;
	border-left: 4px solid #2c3e50;
}

.result-vtr-card:hover {
	background: #f8fafc;
	border-color: #2c7399;
	transform: translateX(5px);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.result-vtr-card b {
	font-size: 1.1em;
	color: #333;
}

.result-vtr-card i {
	color: #2c7399;
	margin-right: 8px;
}

#painel-preparacao-conferencia .prep-conf-selecao-row > .frota-form-section {
	min-width: 0;
	height: auto;
	align-self: stretch;
	position: relative;
	z-index: 1;
}

#painel-preparacao-conferencia .frota-form-section-title i {
	color: #800020;
}

/* =========================================================================
   Checklist de Viatura — tela única (azul petróleo #2c7399)
   ========================================================================= */

#painel-preparacao-checklist {
	--prep-check-accent: #2c7399;
	--prep-check-accent-soft: #e8f4f8;
	--prep-check-accent-border: #b6d4e3;
	--prep-check-accent-deep: #1f5a78;
}

#painel-preparacao-checklist .prep-check-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#painel-preparacao-checklist .prep-check-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#painel-preparacao-checklist .prep-check-title-text .sigma-v3-title-label {
	margin: 0;
}

#painel-preparacao-checklist .prep-check-title-text .sigma-v3-description {
	margin: 4px 0 0;
}

#painel-preparacao-checklist .prep-check-stack {
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 22px;
	width: 100%;
	max-width: none;
	min-height: min-content;
}

#painel-preparacao-checklist .prep-check-stack > * {
	flex-shrink: 0;
	min-height: min-content;
}

#painel-preparacao-checklist .prep-check-selecao-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	width: 100%;
	align-items: stretch;
}

#painel-preparacao-checklist .prep-check-selecao-row > .frota-form-section {
	min-width: 0;
	height: auto;
	align-self: stretch;
}

#painel-preparacao-checklist .frota-form-section-title i {
	color: var(--prep-check-accent);
}

#painel-preparacao-checklist .check-dados-hint {
	margin: -4px 0 12px;
	font-size: 0.8rem;
	line-height: 1.4;
	color: #64748b;
}

#painel-preparacao-checklist #check-sec-dados .frota-form-field + .frota-form-field {
	margin-top: 16px;
}

#painel-preparacao-checklist #check-sec-dados[hidden],
#painel-preparacao-checklist #check-area-busca[hidden],
#painel-preparacao-checklist #check-resumo-vtr[hidden],
#painel-preparacao-checklist #check-container-recentes[hidden] {
	display: none !important;
}

#painel-preparacao-checklist #check-vtr-km:disabled,
#painel-preparacao-checklist #check-vtr-combustivel:disabled {
	opacity: 0.55;
	cursor: not-allowed;
	background: #f8fafc;
}

#painel-preparacao-checklist .check-ativo-search {
	position: relative;
	display: flex;
	align-items: center;
}

#painel-preparacao-checklist .check-ativo-search > i {
	position: absolute;
	left: 12px;
	color: var(--prep-check-accent);
	font-size: 1.05rem;
	pointer-events: none;
	z-index: 1;
}

#painel-preparacao-checklist .check-ativo-search .form-control-clean {
	padding-left: 38px;
	text-transform: uppercase;
}

#painel-preparacao-checklist .check-ativo-search .form-control-clean:focus {
	border-color: var(--prep-check-accent);
	box-shadow: 0 0 0 3px rgba(44, 115, 153, 0.15);
}

#painel-preparacao-checklist #check-vtr-km:focus,
#painel-preparacao-checklist #check-vtr-combustivel:focus {
	border-color: var(--prep-check-accent);
	box-shadow: 0 0 0 3px rgba(44, 115, 153, 0.15);
}

#painel-preparacao-checklist .check-recentes {
	margin-top: 12px;
}

#painel-preparacao-checklist .check-recentes > small {
	display: block;
	margin-bottom: 8px;
	font-size: 0.72rem;
	font-weight: 700;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.3px;
}

#painel-preparacao-checklist .check-badge-recente {
	display: inline-flex;
	align-items: center;
	padding: 6px 12px;
	border-radius: 999px;
	border: 1px solid var(--prep-check-accent-border);
	background: var(--prep-check-accent-soft);
	color: var(--prep-check-accent-deep);
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
}

#painel-preparacao-checklist .check-badge-recente:hover {
	background: #d7ebf3;
	border-color: var(--prep-check-accent);
}

#painel-preparacao-checklist .check-resultados-busca {
	margin-top: 12px;
	max-height: 240px;
	overflow-y: auto;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
}

#painel-preparacao-checklist .check-resultados-busca:empty {
	display: none;
}

#painel-preparacao-checklist .check-result-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100%;
	padding: 11px 12px;
	border: none;
	border-bottom: 1px solid #f1f5f9;
	background: transparent;
	cursor: pointer;
	text-align: left;
}

#painel-preparacao-checklist .check-result-item:last-child {
	border-bottom: none;
}

#painel-preparacao-checklist .check-result-item:hover,
#painel-preparacao-checklist .check-result-item:focus-visible {
	background: var(--prep-check-accent-soft);
}

#painel-preparacao-checklist .check-result-item-nome {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 700;
	color: #0f172a;
	font-size: 0.9rem;
}

#painel-preparacao-checklist .check-result-item-nome i {
	color: var(--prep-check-accent);
}

#painel-preparacao-checklist .check-result-item-meta {
	font-size: 0.72rem;
	font-weight: 600;
	color: var(--prep-check-accent);
	flex-shrink: 0;
}

#painel-preparacao-checklist .check-vtr-selecionada {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100%;
	padding: 14px;
	border-radius: 12px;
	border: 1px solid var(--prep-check-accent-border);
	background: var(--prep-check-accent-soft);
	cursor: pointer;
	text-align: left;
	box-sizing: border-box;
}

#painel-preparacao-checklist #check-resumo-vtr:not([hidden]) {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
}

#painel-preparacao-checklist .check-vtr-selecionada-info {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
}

#painel-preparacao-checklist .check-vtr-selecionada-info > i {
	font-size: 1.35rem;
	color: var(--prep-check-accent);
	margin-top: 2px;
	flex-shrink: 0;
}

#painel-preparacao-checklist .check-vtr-selecionada-info strong {
	display: block;
	font-size: 1.05rem;
	color: var(--text-dark, #0f172a);
	font-weight: 700;
}

#painel-preparacao-checklist .check-vtr-selecionada-info small {
	display: block;
	margin-top: 2px;
	font-size: 0.78rem;
	font-weight: 600;
	color: #64748b;
}

#painel-preparacao-checklist .check-vtr-ultima {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-top: 6px;
	font-size: 0.72rem;
	font-weight: 600;
	color: #94a3b8;
}

#painel-preparacao-checklist .check-vtr-modelo {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-top: 5px;
	font-size: 0.75rem;
	font-weight: 700;
	color: #334155;
}

#painel-preparacao-checklist .check-vtr-modelo i {
	color: var(--prep-check-accent);
}

#painel-preparacao-checklist .check-vtr-alertas {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 10px;
}

#painel-preparacao-checklist .check-vtr-alerta {
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	padding: 10px 12px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	background: var(--sigma-surface-2, #f8fafc);
}

#painel-preparacao-checklist .check-vtr-alerta-head {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.68rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.35px;
	color: #64748b;
}

#painel-preparacao-checklist .check-vtr-alerta-head i {
	font-size: 1rem;
}

#painel-preparacao-checklist .check-vtr-alerta-msg {
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--text-dark, #0f172a);
	line-height: 1.3;
}

#painel-preparacao-checklist .check-vtr-alerta small {
	font-size: 0.72rem;
	font-weight: 600;
	color: #64748b;
	line-height: 1.35;
}

#painel-preparacao-checklist .check-vtr-alerta--ok {
	background: var(--sigma-vtr-ok-bg, #f0fdf4);
	border-color: var(--sigma-vtr-ok-border, #bbf7d0);
}

#painel-preparacao-checklist .check-vtr-alerta--ok .check-vtr-alerta-head,
#painel-preparacao-checklist .check-vtr-alerta--ok .check-vtr-alerta-head i,
#painel-preparacao-checklist .check-vtr-alerta--ok .check-vtr-alerta-msg {
	color: var(--sigma-vtr-ok-fg, #166534);
}

#painel-preparacao-checklist .check-vtr-alerta--alerta {
	background: var(--sigma-vtr-warn-bg, #fff9f0);
	border-color: var(--sigma-vtr-warn-border, #f5d0a0);
}

#painel-preparacao-checklist .check-vtr-alerta--alerta .check-vtr-alerta-head,
#painel-preparacao-checklist .check-vtr-alerta--alerta .check-vtr-alerta-head i,
#painel-preparacao-checklist .check-vtr-alerta--alerta .check-vtr-alerta-msg {
	color: var(--sigma-vtr-warn-fg, #c2780e);
}

#painel-preparacao-checklist .check-vtr-alerta--vencido {
	background: var(--sigma-vtr-bad-bg, #fef2f2);
	border-color: var(--sigma-vtr-bad-border, #fecaca);
}

#painel-preparacao-checklist .check-vtr-alerta--vencido .check-vtr-alerta-head,
#painel-preparacao-checklist .check-vtr-alerta--vencido .check-vtr-alerta-head i,
#painel-preparacao-checklist .check-vtr-alerta--vencido .check-vtr-alerta-msg {
	color: var(--sigma-vtr-bad-fg, #991b1b);
}

#painel-preparacao-checklist .check-vtr-alerta--sem_dados {
	background: #f8fafc;
	border-color: #e2e8f0;
}

#painel-preparacao-checklist .check-vtr-trocar-hint {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--prep-check-accent);
	white-space: nowrap;
}

#painel-preparacao-checklist .prep-check-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 4px 0 8px;
	position: relative;
	z-index: 1;
}

#painel-preparacao-checklist .prep-check-btn-iniciar {
	min-width: 200px;
	justify-content: center;
	background: var(--prep-check-accent) !important;
	border-color: var(--prep-check-accent-deep) !important;
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(44, 115, 153, 0.25);
}

#painel-preparacao-checklist .prep-check-btn-iniciar:hover:not(:disabled) {
	background: var(--prep-check-accent-deep) !important;
}

#painel-preparacao-checklist .prep-check-btn-iniciar[hidden] {
	display: none !important;
}

#painel-preparacao-checklist .prep-check-btn-iniciar:not([hidden]) {
	display: inline-flex !important;
}

#painel-preparacao-checklist .prep-check-btn-cancelar {
	min-width: 140px;
	justify-content: center;
	box-shadow: none !important;
}

#view-dashboard.prep-checklist-aberta > :not(#painel-preparacao-checklist) {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	height: 0 !important;
	max-height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist,
#view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist.sigma-prep-view {
	display: flex !important;
	flex-direction: column !important;
	visibility: visible !important;
	pointer-events: auto !important;
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	width: 100% !important;
	min-height: min-content !important;
	height: auto !important;
	max-height: none !important;
	z-index: 1 !important;
	background: #f8fafc !important;
	overflow: visible !important;
	padding: 8px 12px 16px 16px !important;
	margin: 0 !important;
	animation: none !important;
	flex-shrink: 0 !important;
	box-sizing: border-box !important;
}

/* =============================================================================
   08-USUARIOS · Usuários — efetivo, ficha, meu perfil
   ============================================================================= */

/* ===== Modal Ajuste de Foto (perfil) ===== */

#modal-crop-perfil.modal-crop-perfil-overlay {
	padding: 16px;
	box-sizing: border-box;
}

#modal-crop-perfil .modal-crop-perfil {
	max-width: 460px;
	width: min(100%, 460px);
	padding: 0;
	overflow: hidden;
	border-radius: 16px;
	border: 1px solid #e2e8f0;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
	text-align: left;
}

#modal-crop-perfil .modal-crop-perfil-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #fdf2f4;
	color: #800020;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border: 1px solid #f3c5ce;
}

#modal-crop-perfil .modal-crop-perfil-icon i {
	font-size: 1.35rem;
	line-height: 1;
}

#modal-crop-perfil .modal-crop-perfil-titles h3 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
	letter-spacing: 0.01em;
}

#modal-crop-perfil .modal-crop-perfil-titles p {
	margin: 3px 0 0;
	font-size: 0.8rem;
	color: #64748b;
	font-weight: 500;
}

#modal-crop-perfil .modal-crop-perfil-stage {
	max-height: min(58vh, 420px);
	width: 100%;
	background: #0f172a;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}

#modal-crop-perfil .modal-crop-perfil-stage img {
	max-width: 100%;
	display: block;
}

#modal-crop-perfil .modal-crop-perfil-actions {
	display: flex;
	gap: 10px;
	padding: 14px 16px 16px;
	background: #fff;
	border-top: 1px solid #e2e8f0;
}

#modal-crop-perfil .modal-crop-perfil-actions .btn-soft {
	flex: 1 1 0;
	justify-content: center;
	min-height: 44px;
	margin: 0 !important;
	margin-top: 0 !important;
	width: auto;
	box-shadow: none;
	font-weight: 600;
	padding: 10px 18px;
}

#modal-crop-perfil .modal-crop-perfil-actions .btn-crop-salvar {
	background: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
}

#modal-crop-perfil .modal-crop-perfil-actions .btn-crop-salvar:hover {
	background: #fff !important;
	border-color: #800020 !important;
}

#modal-crop-perfil .modal-crop-perfil-actions .btn-crop-cancelar {
	background: #f8fafc !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
}

#modal-crop-perfil .modal-crop-perfil-actions .btn-crop-cancelar:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

/* ===== Ficha do Militar (currículo) ===== */

.usuario-ficha-shell .usuario-ficha-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

.usuario-ficha-shell .usuario-ficha-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

.usuario-ficha-shell .usuario-ficha-title-text .sigma-v3-title-label {
	margin: 0;
}

.usuario-ficha-shell .usuario-ficha-hero {
	display: flex;
	align-items: center;
	gap: 1.35rem;
	padding: 1.15rem 1.25rem;
	border-radius: 16px;
	background: #fff;
	color: #1e293b;
	border: 1px solid #e2e8f0;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.usuario-ficha-shell .usuario-ficha-foto-wrap {
	position: relative;
	flex: 0 0 auto;
}

.usuario-ficha-shell .usuario-ficha-foto {
	width: 112px;
	height: 112px;
	border-radius: 18px;
	background: #fdf2f4;
	color: #800020;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.9rem;
	font-weight: 900;
	letter-spacing: 1px;
	border: 1px solid #f3c5ce;
	box-shadow: none;
	background-size: cover;
	background-position: center;
	cursor: pointer;
	overflow: hidden;
}

.usuario-ficha-shell .usuario-ficha-foto.has-foto > span {
	display: none;
}

.usuario-ficha-shell .usuario-ficha-foto-btn {
	position: absolute;
	right: -4px;
	bottom: -4px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 2px solid #fff;
	background: #800020;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(128, 0, 32, 0.25);
}

.usuario-ficha-shell .usuario-ficha-hero-info {
	flex: 1 1 auto;
	min-width: 0;
}

.usuario-ficha-shell .usuario-ficha-hero-info h2 {
	margin: 0 0 10px 0;
	font-size: 1.4rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	line-height: 1.2;
	color: #0f172a;
}

.usuario-ficha-shell .usuario-ficha-hero-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 8px;
}

.usuario-ficha-shell .usuario-ficha-badge-perfil {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 999px;
	background: #fdf2f4;
	color: #800020;
	border: 1px solid #f3c5ce;
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.usuario-ficha-shell .usuario-ficha-badge-unidade {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	background: #f1f5f9;
	color: #334155;
	border: 1px solid #e2e8f0;
}

.usuario-ficha-shell .usuario-ficha-hero-hint {
	margin: 0;
	font-size: 0.8rem;
	color: #94a3b8;
	line-height: 1.4;
}

.usuario-ficha-shell .usuario-ficha-stack {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.usuario-ficha-shell .usuario-ficha-section {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.25rem 1.35rem 1.4rem;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.usuario-ficha-shell .usuario-ficha-section-title {
	margin: 0 0 1rem 0;
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.92rem;
	font-weight: 800;
	color: #1e293b;
}

.usuario-ficha-shell .usuario-ficha-section-title i {
	color: #800020;
	font-size: 1.15rem;
}

.usuario-ficha-shell .usuario-ficha-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem 1.25rem;
}

.usuario-ficha-shell .usuario-ficha-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}

.usuario-ficha-shell .usuario-ficha-field-wide {
	grid-column: 1 / -1;
}

.usuario-ficha-shell .usuario-ficha-field label {
	font-size: 0.68rem;
	font-weight: 800;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.usuario-ficha-shell .usuario-ficha-control {
	display: flex;
	align-items: stretch;
	gap: 6px;
}

.usuario-ficha-shell .usuario-ficha-control .form-control-clean {
	flex: 1 1 auto;
	min-width: 0;
	background: #f8fafc;
	border-color: #e2e8f0;
}

.usuario-ficha-shell .usuario-ficha-control.is-editing .form-control-clean {
	background: #fff;
	border-color: #93c5fd;
	box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}

.usuario-ficha-shell .usuario-ficha-field-full {
	grid-column: 1 / -1;
}

.usuario-ficha-shell .usuario-ficha-control-stack {
	flex-wrap: wrap;
	align-items: flex-start;
}

.usuario-ficha-shell .usuario-ficha-hint-inline {
	margin: 6px 0 0;
	font-size: 0.78rem;
	color: #94a3b8;
}

.sigma-acl-roles {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	flex: 1 1 auto;
	min-width: 0;
	padding: 8px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
}

.sigma-acl-roles.is-locked {
	opacity: 0.85;
}

.sigma-acl-role-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid #e2e8f0;
	font-size: 0.78rem;
	font-weight: 700;
	color: #334155;
	cursor: pointer;
	user-select: none;
}

.sigma-acl-role-chip input {
	accent-color: #800020;
}

#usr-ficha-escopos-wrap {
	position: relative;
}

.sigma-acl-escopos {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 12px;
	margin-top: 6px;
}

.sigma-acl-escopo-block {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.sigma-acl-escopo-label {
	font-size: 0.72rem;
	font-weight: 800;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.sigma-acl-escopo-block small {
	color: #94a3b8;
	font-size: 0.72rem;
}

.sigma-acl-escopo-block select[multiple] {
	min-height: 120px;
	background: #f8fafc;
}

.usuario-ficha-lapis-escopos {
	position: absolute;
	top: 0;
	right: 0;
}

.usuario-ficha-shell .usuario-ficha-lapis {
	flex: 0 0 auto;
	width: 42px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #fff;
	color: #64748b;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: 0.15s ease;
}

.usuario-ficha-shell .usuario-ficha-lapis:hover {
	color: #1d4ed8;
	border-color: #bfdbfe;
	background: #eff6ff;
}

.usuario-ficha-shell .usuario-ficha-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 1;
	margin-top: 0.5rem;
	padding: 14px 10px 4px;
	background: transparent;
	border: none;
	border-radius: 0;
	box-shadow: none;
}

/* Slot único: Remover ↔ Salvar (mesmo lugar visual) */
#usr-ficha-actions #btn-usr-ficha-remover,
#usr-ficha-actions #btn-usr-ficha-salvar {
	order: 1;
	min-width: 140px;
}

#usr-ficha-actions #btn-usr-ficha-voltar {
	order: 2;
}

.usuario-ficha-shell .btn-usuario-voltar {
	background: #f8fafc !important;
	color: #334155 !important;
	border: 1px solid #e2e8f0 !important;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 140px;
	justify-content: center;
	box-shadow: none !important;
}

.usuario-ficha-shell .btn-usuario-voltar:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

.usuario-ficha-shell .btn-usuario-salvar {
	background: #800020 !important;
	color: #ffffff !important;
	border: 1px solid #600018 !important;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 140px;
	justify-content: center;
}

.usuario-ficha-shell .btn-usuario-remover {
	background: #fff !important;
	color: #b91c1c !important;
	border: 1px solid #fecaca !important;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 140px;
	justify-content: center;
}

/* Usuários — cabeçalho + filtros + cards (padrão gestão) */

#view-usuarios .usuarios-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#view-usuarios .usuarios-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#view-usuarios .usuarios-title-text .sigma-v3-title-label {
	margin: 0;
}

#view-usuarios .usuarios-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

/* Contador de efetivo no cabeçalho (clean) */

#view-usuarios .usuarios-efetivo-count {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-left: auto;
	padding: 6px 12px;
	border-radius: 999px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	color: #64748b;
	line-height: 1;
	white-space: nowrap;
	user-select: none;
}

#view-usuarios .usuarios-efetivo-count i {
	font-size: 1rem;
	color: #800020;
}

#view-usuarios .usuarios-efetivo-count-label {
	font-size: 0.7rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #94a3b8;
}

#view-usuarios .usuarios-efetivo-count b {
	font-size: 0.95rem;
	font-weight: 800;
	color: #1e293b;
	font-variant-numeric: tabular-nums;
}

html.modo-noturno-ativo #view-usuarios .usuarios-efetivo-count {
	background: rgba(148, 163, 184, 0.08);
	border-color: rgba(148, 163, 184, 0.22);
	color: #94a3b8;
}

html.modo-noturno-ativo #view-usuarios .usuarios-efetivo-count-label {
	color: #64748b;
}

html.modo-noturno-ativo #view-usuarios .usuarios-efetivo-count b {
	color: #e2e8f0;
}

/* Barra de busca: sobe com o scroll até o topo do .content (logo sob o header) e fixa */
#view-usuarios {
	overflow: visible;
}

#view-usuarios .usuarios-filtro-card {
	position: sticky;
	top: 0;
	z-index: 45;
	margin-bottom: 0.25rem;
	/* Fundo sólido para a lista não “vazar” por baixo ao rolar */
	background: var(--bg-card-clean, #ffffff) !important;
	border: 1px solid var(--border-soft, #e2e8f0);
	border-radius: 12px;
	box-shadow: 0 10px 24px -12px rgba(15, 23, 42, 0.18);
	/* Respiro visual sob o header quando grudada */
	margin-top: 0;
	display: block;
}

#view-usuarios .usuarios-filtro-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(200px, 240px);
	gap: 0.85rem 1rem;
	align-items: end;
}

#view-usuarios .usuarios-filtro-busca-wrap {
	position: relative;
}

#view-usuarios .usuarios-filtro-busca-wrap > i {
	position: absolute;
	left: 15px;
	top: 14px;
	color: #94a3b8;
	pointer-events: none;
}

#view-usuarios .usuarios-filtro-busca-wrap .form-control-clean {
	padding-left: 40px;
	width: 100%;
}

html.modo-noturno-ativo #view-usuarios .usuarios-filtro-card {
	box-shadow: 0 10px 24px -12px rgba(0, 0, 0, 0.45);
	border-color: #334155;
}

@media (max-width: 768px) {
	/* No mobile o scroll é do documento — gruda abaixo do header fixo */
	#view-usuarios .usuarios-filtro-card {
		top: calc(75px + env(safe-area-inset-top, 0px));
	}

	#view-usuarios .usuarios-filtro-form {
		grid-template-columns: 1fr;
	}
}

/* Tabela elegante (PC — modo lista) */

#view-usuarios .usuarios-table-host {
	width: 100%;
}

#view-usuarios .usuarios-table-wrap {
	width: 100%;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

#view-usuarios .usuarios-table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

#view-usuarios .usuarios-table thead th {
	text-align: left !important;
	padding: 14px 16px !important;
	white-space: nowrap;
	color: #475569 !important;
	font-size: 0.7rem !important;
	letter-spacing: 0.04em;
}

#view-usuarios .usuarios-table .usuarios-th-militar {
	width: 28%;
}

#view-usuarios .usuarios-table tbody td {
	padding: 12px 16px;
	border-top: 1px solid #f1f5f9;
	vertical-align: middle;
	font-size: 0.88rem;
	color: #334155;
}

#view-usuarios .usuarios-table-row {
	cursor: pointer;
	transition: background 0.15s ease;
}

#view-usuarios .usuarios-table-row:nth-child(odd) {
	background: linear-gradient(90deg, #f8fafc 0%, #ffffff 65%);
}

#view-usuarios .usuarios-table-row:nth-child(even) {
	background: #fff;
}

#view-usuarios .usuarios-table-row:hover {
	background: rgba(128, 0, 32, 0.04) !important;
	box-shadow: inset 4px 0 0 #800020;
}

#view-usuarios .usuarios-table-militar {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

#view-usuarios .usuarios-table-avatar {
	width: 40px !important;
	height: 40px !important;
	flex-shrink: 0;
}

#view-usuarios .usuarios-table-militar-text {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

#view-usuarios .usuarios-table-militar-text strong {
	font-size: 0.9rem;
	font-weight: 800;
	color: #1e293b;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-usuarios .usuarios-table-militar-text small {
	font-size: 0.72rem;
	font-weight: 700;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

#view-usuarios .usuarios-td-nome {
	font-size: 0.8rem !important;
	font-weight: 600;
	color: #64748b !important;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-usuarios .usuarios-table-unidade {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-weight: 800;
	color: #475569;
	font-size: 0.82rem;
}

#view-usuarios .usuarios-table-unidade i {
	opacity: 0.65;
}

#view-usuarios .usuarios-td-perfil .usuarios-card-role {
	display: inline-block;
}

#view-usuarios .usuarios-table-status {
	display: inline-flex;
	align-items: center;
	padding: 3px 9px;
	border-radius: 999px;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

#view-usuarios .usuarios-table-status.is-ativo {
	background: #ecfdf5;
	color: #047857;
	border: 1px solid #a7f3d0;
}

#view-usuarios .usuarios-table-status.is-inativo {
	background: #fef2f2;
	color: #b91c1c;
	border: 1px solid #fecaca;
}

/* Cards (mobile sempre / PC no modo grid) */

#view-usuarios {
	max-width: 100%;
	min-width: 0;
	overflow-x: hidden;
	box-sizing: border-box;
}

#view-usuarios #users-render-container {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow-x: hidden;
	box-sizing: border-box;
}

#view-usuarios .usuarios-cards-grid {
	display: grid !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin-top: 0 !important;
	gap: 1rem !important;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)) !important;
	box-sizing: border-box;
}

#view-usuarios .usuarios-card {
	position: relative;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px 18px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	background: #fff;
	border-radius: 12px;
	cursor: pointer;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
	border: 1px solid #f1f5f9;
	box-sizing: border-box !important;
	overflow: hidden;
	transition: box-shadow 0.2s ease, transform 0.15s ease;
}

#view-usuarios .usuarios-card:hover {
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
}

#view-usuarios .usuarios-card-avatar {
	width: 46px !important;
	height: 46px !important;
	flex-shrink: 0;
}

#view-usuarios .usuarios-cards-grid .usuarios-card-avatar {
	width: 52px !important;
	height: 52px !important;
}

#view-usuarios .usuarios-card-iniciais {
	display: flex !important;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	font-size: 0.85em;
	border-radius: 50%;
}

#view-usuarios .usuarios-card-body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

#view-usuarios .usuarios-card-nome {
	margin: 0;
	color: #1e293b;
	font-size: 0.95em;
	font-weight: 800;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-usuarios .usuarios-card-completo {
	font-size: 0.72em;
	font-weight: 600;
	color: #64748b;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-transform: uppercase;
}

#view-usuarios .usuarios-card-meta {
	margin-top: 4px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	min-width: 0;
	width: 100%;
}

#view-usuarios .usuarios-card-role {
	font-size: 0.65em;
	font-weight: 800;
	padding: 3px 8px;
	border-radius: 6px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	flex-shrink: 0;
}

#view-usuarios .usuarios-card-unidade {
	font-size: 0.78em;
	font-weight: 800;
	color: #475569;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-usuarios .usuarios-card-unidade i {
	opacity: 0.65;
	flex-shrink: 0;
}

/* =============================================================================
   08-GESTAO · Gestão — unidades, postos, cards de módulo
   ============================================================================= */

#link-unidades {
	display: none;
	/* Escondido por padrão, o JS do Admin liga ele */
}

/* Unidades — cabeçalho + filtros + cards (padrão Postos/Listas) */

#view-unidades .unidades-title-row,
#view-unidade-form .unidades-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#view-unidades .unidades-title-text,
#view-unidade-form .unidades-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#view-unidades .unidades-title-text .sigma-v3-title-label,
#view-unidade-form .unidades-title-text .sigma-v3-title-label {
	margin: 0;
}

#view-unidades .unidades-title-text .sigma-v3-description,
#view-unidade-form .unidades-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

#view-unidade-form .frota-form-section-title i {
	color: #800020;
}

#view-unidade-form .unidade-form-escudo-block {
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
}

#view-unidade-form .unidade-form-escudo-frame {
	position: relative;
	width: 112px;
	height: 112px;
	flex: 0 0 auto;
	overflow: visible;
}

#view-unidade-form .unidade-form-escudo-placeholder,
#view-unidade-form .unidade-form-escudo-img {
	position: absolute;
	inset: 0;
	width: 112px;
	height: 112px;
	max-width: 112px;
	max-height: 112px;
	border-radius: 50%;
	box-sizing: border-box;
}

#view-unidade-form .unidade-form-escudo-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fdf2f4;
	color: #800020;
	border: 3px dashed #f3c5ce;
	font-size: 2.4rem;
}

#view-unidade-form .unidade-form-escudo-img {
	display: none;
	object-fit: cover;
	border: 3px solid #e2e8f0;
	background: #fff;
}

#view-unidade-form .unidade-form-escudo-frame.has-escudo .unidade-form-escudo-placeholder {
	display: none !important;
}

#view-unidade-form .unidade-form-escudo-frame.has-escudo .unidade-form-escudo-img {
	display: block !important;
}

#view-unidade-form .unidade-form-escudo-camera {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
	width: 34px;
	height: 34px;
	border: none;
	border-radius: 50%;
	background: #1e293b;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.25);
}

#view-unidade-form .unidade-form-escudo-camera i {
	font-size: 1rem;
	line-height: 1;
}

#view-unidade-form .unidade-form-escudo-meta {
	flex: 1 1 180px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}

#view-unidade-form .unidade-form-escudo-meta strong {
	font-size: 0.92rem;
	color: #1e293b;
}

#view-unidade-form .unidade-form-escudo-meta p {
	margin: 0 0 4px 0;
	font-size: 0.82rem;
	color: #64748b;
	line-height: 1.35;
}

#view-unidade-form .btn-unidade-form-escudo {
	margin-top: 2px;
}

/* PC: só o ícone da câmera no brasão (mesmo clique do "Selecionar PNG") */
@media (min-width: 769px) {
	#view-unidade-form .btn-unidade-form-escudo {
		display: none !important;
	}
}

#view-unidade-form .btn-unidade-form-salvar {
	background: #800020 !important;
	background-color: #800020 !important;
	color: #ffffff !important;
	border: 1px solid #600018 !important;
}

#view-unidade-form .btn-unidade-form-salvar i {
	color: #ffffff !important;
}

#view-unidade-form .btn-unidade-form-salvar:hover,
#view-unidade-form .btn-unidade-form-salvar:active {
	background: #600018 !important;
	background-color: #600018 !important;
	color: #ffffff !important;
}

#view-unidades .btn-unidades-nova {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	white-space: nowrap;
	background: #fdf2f4 !important;
	background-color: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
	box-shadow: none !important;
}

#view-unidades .btn-unidades-nova i {
	color: #800020 !important;
}

#view-unidades .btn-unidades-nova:hover,
#view-unidades .btn-unidades-nova:active {
	background: #fce7eb !important;
	background-color: #fce7eb !important;
	color: #5c0018 !important;
}

#view-unidades .unidades-filtro-card {
	margin-bottom: 0.5rem;
}

#view-unidades .unidades-secao-titulo {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0.5rem 0 1.1rem 0;
}

#view-unidades .unidades-secao-titulo:not(:first-child) {
	margin-top: 2rem;
	padding-top: 1.75rem;
	border-top: 1px solid #e2e8f0;
}

#view-unidades .unidades-secao-titulo h3 {
	color: #1e293b;
	font-size: 0.95em;
	font-weight: 600;
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

#view-unidades .unidades-secao-barra {
	width: 4px;
	height: 18px;
	border-radius: 10px;
	flex-shrink: 0;
}

#view-unidades .unidades-cards-grid {
	width: 100%;
	margin-top: 0 !important;
	gap: 1.25rem !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

#view-unidades .unidades-card {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px 16px;
	background: #fff;
	border-radius: 12px;
	cursor: pointer;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
	border: 1px solid #f1f5f9;
	box-sizing: border-box;
	transition: box-shadow 0.2s ease, transform 0.15s ease;
}

#view-unidades .unidades-card:hover {
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
}

#view-unidades .unidades-card-icon {
	width: 52px !important;
	height: 52px !important;
	border-radius: 12px !important;
	font-size: 1.35rem !important;
	flex-shrink: 0 !important;
}

#view-unidades .unidades-card-escudo {
	width: 52px !important;
	height: 52px !important;
	flex-shrink: 0;
}

#view-unidades .unidades-card-body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

#view-unidades .unidades-card-sigla {
	margin: 0;
	color: #1e293b;
	font-size: 1.05em;
	font-weight: 800;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-unidades .unidades-card-nome {
	font-size: 0.78em;
	font-weight: 600;
	color: #64748b;
	line-height: 1.35;
	text-transform: uppercase;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

#view-unidades .unidades-card-natureza {
	font-size: 0.68em;
	font-weight: 700;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

#view-unidades .unidades-lista-host {
	width: 100%;
}

#view-unidades .unidades-lista-vazia {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 64px 20px;
	background: #f8fafc;
	border: 2px dashed #e2e8f0;
	border-radius: 16px;
	text-align: center;
	color: #94a3b8;
	font-weight: 600;
}

#view-unidades .unidades-lista-vazia i {
	font-size: 2.4rem;
	opacity: 0.55;
}

#view-unidades .unidades-lista-vazia h3 {
	margin: 0;
	color: #475569;
	font-size: 1.1em;
	font-weight: 800;
}

#view-unidades .unidades-lista-vazia p {
	margin: 0;
	font-size: 0.92em;
}

#view-unidades .unidades-lista-vazia.is-erro {
	border-color: #fecaca;
	background: #fef2f2;
	color: #b91c1c;
}

#view-unidades .sigma-unidades-table-wrap {
	width: 100%;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	overflow: hidden;
}

#view-unidades #unidades-table tbody tr.unidades-row {
	cursor: default;
	transition: background 0.15s ease;
}

#view-unidades #unidades-table tbody tr.unidades-row:hover {
	background: #f8fafc;
}

#view-unidades .unidades-th-brasao { width: 72px; }
#view-unidades .unidades-th-efetivo { width: 90px; }
#view-unidades .unidades-th-acoes { width: 96px; }

#view-unidades .unidades-td-efetivo {
	text-align: center;
	font-weight: 700;
	font-size: 0.82rem;
	color: #334155;
	white-space: nowrap;
}

#view-unidades .unidades-td-acoes {
	text-align: center;
	white-space: nowrap;
}

#view-unidades .unidades-btn-acao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #f8fafc;
	cursor: pointer;
	font-size: 1rem;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
	color: #475569;
}

#view-unidades .unidades-btn-acao + .unidades-btn-acao {
	margin-left: 6px;
}

#view-unidades .unidades-btn-acao.is-edit:hover {
	background: #eff6ff;
	border-color: #3b82f6;
	color: #2563eb;
}

#view-unidades .unidades-btn-acao.is-del:hover {
	background: #fef2f2;
	border-color: #fca5a5;
	color: #dc2626;
}

#view-unidades .unidades-td-escudo {
	width: 64px;
	vertical-align: middle;
}

#view-unidades .unidades-table-escudo {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid #e2e8f0;
	display: block;
}

#view-unidades .unidades-table-icon {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.15rem;
}

#view-unidades .unidades-td-sigla {
	color: #1e293b;
	font-size: 0.95em;
	letter-spacing: 0.02em;
}

#view-unidades .unidades-td-nome {
	color: #475569;
	font-weight: 600;
	text-transform: uppercase;
	font-size: 0.82em;
	line-height: 1.35;
}

#view-unidades .unidades-td-natureza {
	text-align: center;
	vertical-align: middle;
}

#view-unidades .unidades-natureza-chip,
.unidades-natureza-chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.68em;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

#view-unidades .unidades-natureza-chip.is-ope,
.unidades-natureza-chip.is-ope {
	background: #fdf2f4;
	color: #800020;
	border: 1px solid #f3c5ce;
}

#view-unidades .unidades-natureza-chip.is-adm,
.unidades-natureza-chip.is-adm {
	background: #f1f5f9;
	color: #475569;
	border: 1px solid #e2e8f0;
}

/* Postos — cabeçalho + filtros + cards (padrão Listas/Frota) */

#view-postos .postos-title-row,
#view-posto-form .postos-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#view-postos .postos-title-text,
#view-posto-form .postos-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#view-postos .postos-title-text .sigma-v3-title-label,
#view-posto-form .postos-title-text .sigma-v3-title-label {
	margin: 0;
}

#view-postos .postos-title-text .sigma-v3-description,
#view-posto-form .postos-title-text .sigma-v3-description {
	margin: 4px 0 0 0;
}

#view-posto-form .frota-form-section-title i {
	color: #800020;
}

#view-posto-form .posto-form-field-hint {
	display: block;
	margin: -2px 0 4px 0;
	font-size: 0.78rem;
	color: #94a3b8;
	line-height: 1.35;
}

#view-posto-form .btn-posto-form-salvar {
	background: #800020 !important;
	background-color: #800020 !important;
	color: #ffffff !important;
	border: 1px solid #600018 !important;
}

#view-posto-form .btn-posto-form-salvar i {
	color: #ffffff !important;
}

#view-posto-form .btn-posto-form-salvar:hover,
#view-posto-form .btn-posto-form-salvar:active {
	background: #600018 !important;
	background-color: #600018 !important;
	color: #ffffff !important;
}

#view-postos .btn-postos-nova {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	white-space: nowrap;
	background: #fdf2f4 !important;
	background-color: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
	box-shadow: none !important;
}

#view-postos .btn-postos-nova i {
	color: #800020 !important;
}

#view-postos .btn-postos-nova:hover,
#view-postos .btn-postos-nova:active {
	background: #fce7eb !important;
	background-color: #fce7eb !important;
	color: #5c0018 !important;
}

#view-postos .postos-filtro-card {
	margin-bottom: 0.5rem;
}

#postos-cards-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	width: 100% !important;
	margin-top: 0;
}

/* ── Tabela de Postos (PC) ── */
#view-postos .sigma-postos-table-wrap.sigma-modern-table-wrapper {
	width: 100%;
	overflow-x: auto;
	margin-bottom: 24px;
}

#view-postos .postos-table.sigma-modern-table {
	width: 100%;
	min-width: 680px;
	table-layout: auto;
	border-collapse: separate;
	border-spacing: 0;
}

#view-postos .postos-table th,
#view-postos .postos-table td {
	box-sizing: border-box;
	vertical-align: middle;
}

#view-postos .postos-table.sigma-modern-table th {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	padding: 12px 14px;
}

#view-postos .postos-table.sigma-modern-table td {
	padding: 11px 14px;
}

#view-postos .postos-th-icone { width: 52px; }
#view-postos .postos-th-qtd   { width: 60px; }
#view-postos .postos-th-status { width: 100px; }
#view-postos .postos-th-acoes  { width: 88px; }

#view-postos .postos-table-row {
	cursor: pointer;
	transition: background 0.15s;
}

#view-postos .postos-table-row:hover {
	background: #f8fafc;
}

#view-postos .postos-table-row.is-inativo {
	cursor: default;
}

#view-postos .postos-td-icone {
	text-align: center;
}

#view-postos .postos-table-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 8px;
	font-size: 1rem;
}

#view-postos .postos-td-nome {
	white-space: nowrap;
}

#view-postos .postos-table-nome {
	font-weight: 700;
	color: #0f172a;
	font-size: 0.92rem;
}

#view-postos .postos-table-hiberna-badge {
	display: inline-block;
	margin-left: 6px;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #94a3b8;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	padding: 2px 7px;
	vertical-align: middle;
}

#view-postos .postos-td-endereco .postos-table-endereco {
	color: #64748b;
	font-size: 0.82rem;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

#view-postos .postos-td-endereco .postos-table-endereco i {
	color: #800020;
	flex-shrink: 0;
}

#view-postos .postos-tabela-ativo-chip {
	display: inline-flex;
	align-items: center;
	font-size: 0.72rem;
	font-weight: 700;
	color: #475569;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	padding: 3px 8px;
	margin: 2px 3px 2px 0;
	white-space: nowrap;
}

#view-postos .postos-td-vazio {
	color: #94a3b8;
	font-size: 0.82rem;
	font-weight: 600;
}

#view-postos .postos-td-qtd strong {
	font-size: 0.95rem;
	font-weight: 800;
	color: #1e293b;
}

#view-postos .postos-btn-toggle {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	border: 1px solid;
	cursor: pointer;
	transition: opacity 0.15s;
}

#view-postos .postos-btn-toggle.is-ativo {
	background: #f0fdf4;
	border-color: #86efac;
	color: #15803d;
}

#view-postos .postos-btn-toggle.is-inativo {
	background: #fafafa;
	border-color: #e2e8f0;
	color: #94a3b8;
}

#view-postos .postos-btn-toggle:hover {
	opacity: 0.75;
}

#view-postos .postos-td-acoes {
	white-space: nowrap;
}

#view-postos .postos-btn-acao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid #e2e8f0;
	border-radius: 7px;
	background: #f8fafc;
	cursor: pointer;
	font-size: 0.9rem;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
	color: #475569;
}

#view-postos .postos-btn-acao + .postos-btn-acao {
	margin-left: 5px;
}

#view-postos .postos-btn-acao.is-edit:hover {
	background: #eff6ff;
	border-color: #3b82f6;
	color: #2563eb;
}

#view-postos .postos-btn-acao.is-del:hover {
	background: #fef2f2;
	border-color: #fca5a5;
	color: #dc2626;
}

#view-postos .postos-btn-acao.is-config:hover {
	background: #fdf2f4;
	border-color: #800020;
	color: #800020;
}

/* Tipo chip (Operacional / Missão) */
#view-postos .postos-tipo-chip {
	display: inline-flex;
	align-items: center;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	white-space: nowrap;
}

#view-postos .postos-tipo-chip.is-oper {
	background: #fdf2f4;
	color: #800020;
	border: 1px solid #f3c5ce;
}

#view-postos .postos-tipo-chip.is-missao {
	background: #f0f4f8;
	color: #2c3e50;
	border: 1px solid #cbd5e1;
}

/* ── Tela Configuração do Posto ── */
#view-posto-config .posto-cfg-topbar {
	display: flex;
	align-items: center;
	gap: 8px;
	padding-bottom: 4px;
	border-bottom: 1px solid #f1f5f9;
	margin-bottom: 4px;
}

#view-posto-config .posto-cfg-topbar-icon {
	font-size: 1.05rem;
	color: #800020;
	flex-shrink: 0;
}

#view-posto-config .posto-cfg-topbar-label {
	font-size: 0.78rem;
	font-weight: 800;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

#view-posto-config {
	width: 100%;
}

#view-posto-config #posto-cfg-conteudo {
	flex: 1;
	width: 100%;
}

#view-posto-config .posto-cfg-layout {
	display: grid;
	grid-template-columns: 300px 1fr;
	gap: 20px;
	width: 100%;
	align-items: start;
}

/* ── ASIDE (identidade + mapa) ── */
#view-posto-config .posto-cfg-aside {
	display: flex;
	flex-direction: column;
	gap: 14px;
	position: sticky;
	top: 0;
}

#view-posto-config .posto-cfg-identity {
	display: flex;
	align-items: center;
	gap: 14px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 18px;
}

#view-posto-config .posto-cfg-identity-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	flex-shrink: 0;
}

#view-posto-config .posto-cfg-nome {
	margin: 0 0 6px;
	font-size: 1rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
}

#view-posto-config .posto-cfg-info-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

#view-posto-config .posto-cfg-info-row {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.85rem;
	font-weight: 600;
	color: #475569;
	line-height: 1.4;
}

#view-posto-config .posto-cfg-info-row i {
	flex-shrink: 0;
	margin-top: 2px;
	font-size: 1rem;
}

#view-posto-config .posto-cfg-coord-row {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-top: 10px;
	border-top: 1px dashed #e2e8f0;
}

#view-posto-config .posto-cfg-coord-row > span {
	font-size: 0.78rem;
	font-weight: 700;
	color: #64748b;
	font-variant-numeric: tabular-nums;
	display: flex;
	align-items: center;
	gap: 6px;
}

#view-posto-config .posto-cfg-coord-row > i {
	color: #800020;
}

#view-posto-config .posto-cfg-map-btns {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}

#view-posto-config .posto-cfg-map-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 11px;
	border-radius: 8px;
	font-size: 0.72rem;
	font-weight: 800;
	text-decoration: none;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	color: #475569;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
}

#view-posto-config .posto-cfg-map-btn:hover {
	background: #eff6ff;
	border-color: #3b82f6;
	color: #2563eb;
}

#view-posto-config .posto-cfg-stat-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

#view-posto-config .posto-cfg-stat {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 12px 8px;
	text-align: center;
}

#view-posto-config .posto-cfg-stat strong {
	display: block;
	font-size: 1.35rem;
	font-weight: 900;
	color: #0f172a;
	line-height: 1.1;
}

#view-posto-config .posto-cfg-stat span {
	display: block;
	font-size: 0.65rem;
	font-weight: 700;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-top: 3px;
}

/* ── MAIN (listas) ── */
#view-posto-config .posto-cfg-main {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

#view-posto-config .posto-cfg-section {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 20px;
}

#view-posto-config .posto-cfg-section--readonly {
	background: #f8fafc;
}

#view-posto-config .posto-cfg-section-title {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 16px;
	font-size: 0.78rem;
	font-weight: 800;
	color: #334155;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

#view-posto-config .posto-cfg-section-title i {
	color: #800020;
	font-size: 1.05em;
}

/* Item de lista */
#view-posto-config .posto-cfg-lista-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 14px 16px;
	margin-bottom: 8px;
	transition: border-color 0.15s, background 0.15s;
}

#view-posto-config .posto-cfg-lista-item:last-child {
	margin-bottom: 0;
}

#view-posto-config .posto-cfg-lista-item:not(.is-locked):not(.is-readonly):hover {
	border-color: #cbd5e1;
	background: #fff;
}

#view-posto-config .posto-cfg-lista-item.is-locked {
	opacity: 0.55;
}

#view-posto-config .posto-cfg-lista-item.is-readonly {
	background: #f1f5f9;
	border-color: #e2e8f0;
}

#view-posto-config .posto-cfg-lista-info {
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 2px;
}

#view-posto-config .posto-cfg-lista-info strong {
	font-weight: 700;
	color: #1e293b;
	font-size: 0.92rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-posto-config .posto-cfg-lista-info span {
	font-size: 0.75rem;
	font-weight: 600;
	color: #64748b;
}

#view-posto-config .posto-cfg-tag-fixa {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-size: 0.63rem;
	font-weight: 800;
	color: #ef4444;
	margin-top: 2px;
}

/* Toggle switch */
#view-posto-config .posto-cfg-switch {
	position: relative;
	display: inline-block;
	width: 48px;
	height: 26px;
	flex-shrink: 0;
	cursor: pointer;
}

#view-posto-config .posto-cfg-switch input {
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;
}

#view-posto-config .posto-cfg-switch-track {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background: #cbd5e1;
	border-radius: 999px;
	transition: background 0.25s;
}

#view-posto-config .posto-cfg-switch-track::after {
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	left: 3px;
	top: 3px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0,0,0,0.18);
	transition: transform 0.22s;
}

#view-posto-config .posto-cfg-switch input:checked + .posto-cfg-switch-track {
	background: #10b981;
}

#view-posto-config .posto-cfg-switch input:checked + .posto-cfg-switch-track::after {
	transform: translateX(22px);
}

#view-posto-config .posto-cfg-switch input:disabled + .posto-cfg-switch-track {
	opacity: 0.5;
	cursor: not-allowed;
}

#view-posto-config .posto-cfg-vazio {
	color: #94a3b8;
	font-size: 0.85rem;
	font-weight: 600;
	text-align: center;
	padding: 20px 0;
}

/* Rodapé com botão Voltar */
#view-posto-config .posto-cfg-footer {
	display: flex;
	justify-content: center;
	padding-top: 12px;
	margin-top: 4px;
}

#view-posto-config .posto-cfg-btn-voltar {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 28px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #fff;
	color: #475569;
	font-size: 0.85rem;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
}

#view-posto-config .posto-cfg-btn-voltar:hover {
	background: #f1f5f9;
	border-color: #cbd5e1;
	color: #0f172a;
}

#view-posto-config .posto-cfg-btn-voltar i {
	font-size: 1rem;
}

/* Mobile: empilha */
@media (max-width: 768px) {
	#view-posto-config .posto-cfg-layout {
		grid-template-columns: 1fr;
	}

	#view-posto-config .posto-cfg-aside {
		position: static;
	}
}

@media (min-width: 769px) {
	#view-postos .postos-table.sigma-modern-table thead th {
		position: sticky;
		top: 0;
		z-index: 20;
		background: #f8fafc !important;
		box-shadow: 0 1px 0 #e2e8f0, 0 6px 12px -8px rgba(15, 23, 42, 0.18);
	}

	#view-postos .postos-table.sigma-modern-table thead th:first-child {
		border-top-left-radius: 12px;
	}

	#view-postos .postos-table.sigma-modern-table thead th:last-child {
		border-top-right-radius: 12px;
	}
}

#view-postos .postos-secao-titulo {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0.5rem 0 1.1rem 0;
}

#view-postos .postos-secao-titulo:not(:first-child) {
	margin-top: 2rem;
	padding-top: 1.75rem;
	border-top: 1px solid #e2e8f0;
}

#view-postos .postos-secao-titulo h3 {
	color: #1e293b;
	font-size: 0.95em;
	font-weight: 600;
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

#view-postos .postos-secao-barra {
	width: 4px;
	height: 18px;
	border-radius: 10px;
	flex-shrink: 0;
}

#view-postos .postos-cards-grid {
	width: 100%;
	margin-top: 0 !important;
	gap: 1.25rem !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

#view-postos .postos-card {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px 16px;
	background: #fff;
	border-radius: 12px;
	cursor: pointer;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
	border: 1px solid #f1f5f9;
	box-sizing: border-box;
	min-height: 0;
	transition: box-shadow 0.2s ease, transform 0.15s ease;
}

#view-postos .postos-card:hover {
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
}

#view-postos .postos-card-tool {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 2;
	background: #fff !important;
}

#view-postos .postos-card-icon {
	width: 45px !important;
	height: 45px !important;
	border-radius: 10px !important;
	font-size: 1.25rem !important;
}

#view-postos .postos-card-body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-right: 28px;
}

#view-postos .postos-card-title {
	margin: 0;
	color: #1e293b;
	font-size: 1em;
	font-weight: 800;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-postos .postos-card-endereco {
	font-size: 0.78em;
	color: #64748b;
	font-weight: 600;
	display: flex;
	align-items: flex-start;
	gap: 6px;
	line-height: 1.35;
}

#view-postos .postos-card-endereco i {
	color: #ef4444;
	flex-shrink: 0;
	margin-top: 1px;
}

#view-postos .postos-card-endereco span {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

/* Novo Posto — busca CEP ou rua + número/complemento + coordenadas */
#view-posto-form .posto-endereco-search {
	position: relative;
	width: 100%;
}

#view-posto-form .posto-endereco-search[hidden] {
	display: none !important;
}

#view-posto-form .posto-endereco-sugestoes {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	z-index: 40;
	margin: 0;
	padding: 6px 0;
	list-style: none;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
	max-height: 260px;
	overflow-y: auto;
}

#view-posto-form .posto-endereco-sugestoes[hidden] {
	display: none !important;
}

#view-posto-form .posto-endereco-sugestao {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
	padding: 10px 14px;
	border: none;
	background: transparent;
	text-align: left;
	cursor: pointer;
	color: #1e293b;
	font: inherit;
}

#view-posto-form .posto-endereco-sugestao:hover,
#view-posto-form .posto-endereco-sugestao.is-active {
	background: #f8fafc;
}

#view-posto-form .posto-endereco-sugestao i {
	color: #800020;
	margin-top: 2px;
	flex-shrink: 0;
}

#view-posto-form .posto-endereco-sugestao strong {
	display: block;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.3;
}

#view-posto-form .posto-endereco-sugestao small {
	display: block;
	margin-top: 2px;
	font-size: 0.75rem;
	color: #64748b;
	line-height: 1.35;
}

#view-posto-form .posto-endereco-sugestao-vazia,
#view-posto-form .posto-endereco-sugestao-info {
	padding: 12px 14px;
	font-size: 0.8rem;
	color: #94a3b8;
	font-weight: 600;
}

#view-posto-form .posto-endereco-resolvido {
	margin-top: 4px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

#view-posto-form .posto-endereco-resolvido[hidden] {
	display: none !important;
}

#view-posto-form .posto-endereco-logradouro-box {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 10px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
}

#view-posto-form .posto-endereco-logradouro-box > i {
	color: #800020;
	font-size: 1.1rem;
	margin-top: 2px;
	flex-shrink: 0;
}

#view-posto-form .posto-endereco-logradouro-box > div {
	flex: 1 1 auto;
	min-width: 0;
}

#view-posto-form .posto-endereco-logradouro-box strong {
	display: block;
	font-size: 0.95rem;
	font-weight: 800;
	color: #1e293b;
	line-height: 1.3;
}

#view-posto-form .posto-endereco-logradouro-box small {
	display: block;
	margin-top: 3px;
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 600;
	line-height: 1.35;
}

#view-posto-form .btn-posto-trocar-endereco {
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #fff;
	color: #64748b;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

#view-posto-form .btn-posto-trocar-endereco:hover {
	color: #800020;
	border-color: #f3c5ce;
	background: #fdf2f4;
}

#view-posto-form .posto-endereco-numeros {
	display: grid;
	grid-template-columns: minmax(90px, 140px) 1fr;
	gap: 12px;
}

#view-posto-form .posto-geo-status {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 8px;
	padding: 6px 10px;
	border-radius: 999px;
	background: #ecfdf5;
	border: 1px solid #a7f3d0;
	color: #047857;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

#view-posto-form .posto-geo-status[hidden] {
	display: none !important;
}

#view-posto-form .posto-geo-status.is-pending {
	background: #fff7ed;
	border-color: #fed7aa;
	color: #c2410c;
}

#view-posto-form .posto-geo-status.is-error {
	background: #fef2f2;
	border-color: #fecaca;
	color: #b91c1c;
}

@media (max-width: 768px) {
	#view-posto-form .posto-endereco-numeros {
		grid-template-columns: 1fr 1fr;
	}
}

#view-postos .postos-card-ativos {
	font-size: 0.72em;
	font-weight: 600;
	color: #475569;
	background: #f1f5f9;
	padding: 6px 10px;
	border-radius: 8px;
	line-height: 1.35;
	word-break: break-word;
}

#view-postos .postos-card-ativos b {
	font-weight: 800;
	margin-right: 4px;
}

#view-postos .postos-card-hiberna {
	align-self: flex-start;
	background: #ef4444;
	color: #fff;
	font-size: 0.62em;
	font-weight: 900;
	padding: 3px 8px;
	border-radius: 6px;
	letter-spacing: 0.03em;
}

#postos-cards-container .unit-building-card {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

/* Voltar Gestão: oculto por padrão (só mobile) */

.btn-voltar-gestao-secao {
	display: none;
}

/* =============================================================================
   09-CONFERENCIA-PREP · Preparação de conferência / checklist (pré-missão)
   ============================================================================= */

#painel-preparacao-conferencia .prep-conf-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

#painel-preparacao-conferencia .prep-conf-title-text {
	flex: 1 1 auto;
	min-width: 0;
}

#painel-preparacao-conferencia .prep-conf-title-text .sigma-v3-title-label {
	margin: 0;
}

#painel-preparacao-conferencia .prep-conf-title-text .sigma-v3-description {
	margin: 4px 0 0;
}

#painel-preparacao-conferencia .prep-conf-stack {
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 22px;
	width: 100%;
	max-width: none;
	min-height: min-content;
}

/* Impede o flex pai de esmagar os blocos (causava Resumo/botões sobrepostos) */

#painel-preparacao-conferencia .prep-conf-stack > * {
	flex-shrink: 0;
	min-height: min-content;
}

#painel-preparacao-conferencia .prep-conf-selecao-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	align-items: stretch;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}

#painel-preparacao-conferencia #prep-sec-lista[hidden],
#painel-preparacao-conferencia #prep-sec-ativo[hidden],
#painel-preparacao-conferencia #prep-sec-extrato[hidden] {
	display: none !important;
}

#painel-preparacao-conferencia #prep-sec-extrato:not([hidden]) {
	display: block;
	position: relative;
	z-index: 0;
	margin: 0;
}

#painel-preparacao-conferencia .prep-conf-hint {
	margin: -4px 0 12px;
	font-size: 0.8rem;
	line-height: 1.4;
	color: #64748b;
}

#painel-preparacao-conferencia .prep-conf-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 4px 0 8px;
	position: relative;
	z-index: 1;
	clear: both;
}

#painel-preparacao-conferencia .prep-btn-cancelar {
	min-width: 140px;
	justify-content: center;
	box-shadow: none !important;
}

#painel-preparacao-conferencia .prep-btn-iniciar[hidden] {
	display: none !important;
}

#painel-preparacao-conferencia .prep-btn-iniciar:not([hidden]) {
	display: inline-flex !important;
	min-width: 200px;
	justify-content: center;
}

/*
 * Nova Conferência exclusiva: esconde o dashboard e compacta o painel
 * (sem min-height 100vh / margin-top:auto — causavam scroll e “nascer no meio”).
 */

#view-dashboard.prep-conferencia-aberta > :not(#painel-preparacao-conferencia) {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	height: 0 !important;
	max-height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia,
#view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia.sigma-prep-view {
	display: flex !important;
	flex-direction: column !important;
	visibility: visible !important;
	pointer-events: auto !important;
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	width: 100% !important;
	min-height: min-content !important;
	height: auto !important;
	max-height: none !important;
	z-index: 1 !important;
	background: #f8fafc !important;
	overflow: visible !important;
	padding: 8px 0 16px 0 !important;
	margin: 0 !important;
	animation: none !important;
	flex-shrink: 0 !important;
}

#view-dashboard.prep-conferencia-aberta .prep-title-section {
	margin-bottom: 16px !important;
}

#view-dashboard.prep-conferencia-aberta .prep-footer-actions {
	margin-top: 16px !important;
	padding-top: 8px !important;
	padding-bottom: 0 !important;
}

#view-dashboard.prep-conferencia-aberta .prep-section::after {
	display: none !important;
	height: 0 !important;
	content: none !important;
}

/* Overlay de preparação: cobre a tela atual (Início, Almox, Gestão, etc.) */
body.prep-conferencia-aberta-body #view-dashboard,
body.prep-checklist-aberta-body #view-dashboard {
	display: block !important;
	visibility: visible !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	overflow: visible !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	pointer-events: none !important;
}

body.prep-conferencia-aberta-body #painel-preparacao-conferencia,
body.prep-conferencia-aberta-body #painel-preparacao-conferencia.sigma-prep-view,
body.prep-checklist-aberta-body #painel-preparacao-checklist,
body.prep-checklist-aberta-body #painel-preparacao-checklist.sigma-prep-view {
	position: fixed !important;
	top: 60px !important;
	left: 52px !important;
	right: 0 !important;
	bottom: 0 !important;
	width: auto !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	z-index: 20050 !important;
	display: flex !important;
	flex-direction: column !important;
	visibility: visible !important;
	pointer-events: auto !important;
	overflow: auto !important;
	background: linear-gradient(180deg, #f3f5f8 0%, #f6f7f9 42%, #f8f9fb 100%) !important;
	padding: 12px 18px 20px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	isolation: isolate !important;
}

body.prep-conferencia-aberta-body .sigma-gestao-host,
body.prep-checklist-aberta-body .sigma-gestao-host,
body.prep-conferencia-aberta-body .vtr-hist-completo-host,
body.prep-checklist-aberta-body .vtr-hist-completo-host {
	visibility: hidden !important;
	pointer-events: none !important;
}

@media (max-width: 768px) {
	body.prep-conferencia-aberta-body #painel-preparacao-conferencia,
	body.prep-conferencia-aberta-body #painel-preparacao-conferencia.sigma-prep-view,
	body.prep-checklist-aberta-body #painel-preparacao-checklist,
	body.prep-checklist-aberta-body #painel-preparacao-checklist.sigma-prep-view {
		top: calc(75px + env(safe-area-inset-top, 0px)) !important;
		left: 0 !important;
		padding: 8px 12px var(--mobile-bottom-nav-clearance, 24px) 12px !important;
	}
}

/* =============================================================================
   10-ATIVIDADES · Atividades — histórico, extrato, abas
   ============================================================================= */

/* ✅ ESTILO DAS ABAS (TABS) NO HUB DE ATIVIDADES */

.grid-container {
	margin-top: 20px !important;
	padding: 15px 0 !important;
	/* Ajuste o valor conforme necessário (ex: 30px, 40px, 50px) */
}

/* CONTROLE DE HISTÓRICO - PÁGINA DE HISTÓRICO */

#view-my-history .sigma-v3-clean-wrapper {
	padding-top: 0 !important;
	/* Remove o espaço interno do wrapper */
	margin-top: 0 !important;
	/* Puxa o conteúdo para cima para compensar o padding do .content */
}

#view-my-history .sigma-v3-title-label {
	margin-top: 0 !important;
	/* Garante que o título não tenha margem superior */
	padding-top: 5px !important;
	/* Apenas um respiro mínimo de 5px */
	margin-bottom: 20px !important;
	/* Espaço para os botões de abas abaixo dele */
}

/*=== CLASSES MENUN ATIVIDADES ===*/

/* ==========================================================================
   FILTROS DO HISTÓRICO (ATIVIDADES)
   ========================================================================== */

.atividades-tab-content:not([hidden]) {
	display: flex;
	flex-direction: column;
	animation: fadeIn 0.3s ease-in-out;
	width: 100%;
	min-width: 0;
}

#view-my-history .atividades-table-host {
	margin-top: 1rem;
	width: 100%;
	min-width: 0;
	overflow: visible;
}

#view-my-history .sigma-atividades-table-wrap.sigma-modern-table-wrapper {
	width: 100%;
	overflow: visible;
}

#view-my-history .atividades-table.sigma-modern-table {
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 0;
}

#view-my-history .atividades-table.sigma-modern-table th,
#view-my-history .atividades-table.sigma-modern-table td {
	box-sizing: border-box;
}

#view-my-history .atividades-table th:nth-child(1),
#view-my-history .atividades-table td:nth-child(1) { width: 26%; }
#view-my-history .atividades-table th:nth-child(2),
#view-my-history .atividades-table td:nth-child(2) { width: 11%; }
#view-my-history .atividades-table th:nth-child(3),
#view-my-history .atividades-table td:nth-child(3) { width: 15%; }
#view-my-history .atividades-table th:nth-child(4),
#view-my-history .atividades-table td:nth-child(4) { width: 16%; }
#view-my-history .atividades-table th:nth-child(5),
#view-my-history .atividades-table td:nth-child(5) { width: 20%; }
#view-my-history .atividades-table th:nth-child(6),
#view-my-history .atividades-table td:nth-child(6) { width: 12%; }

#view-my-history .atividades-table.sigma-modern-table th {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	padding: 12px 14px;
}

#view-my-history .atividades-table.sigma-modern-table td {
	padding: 12px 14px;
}

#view-my-history .atividades-table .atividades-row {
	cursor: pointer;
}

#view-my-history .atividades-table .atividades-row:active {
	background: #f1f5f9;
}

#view-my-history .atividades-table .atividades-td-nome {
	display: block;
	font-weight: 700;
	color: #0f172a;
	white-space: normal;
	word-break: break-word;
}

#view-my-history .atividades-table .atividades-td-data {
	white-space: nowrap;
	color: #475569;
	font-size: 0.85rem;
	overflow: hidden;
	text-overflow: ellipsis;
}

#view-my-history .atividades-table .atividades-td-ref {
	cursor: default;
}

#view-my-history .atividades-ref-cell {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: 100%;
}

#view-my-history .atividades-ref-id {
	flex: 0 1 auto;
	min-width: 0;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.78rem;
	font-weight: 600;
	color: #334155;
	letter-spacing: 0.01em;
	line-height: 1.35;
	word-break: break-all;
	overflow-wrap: anywhere;
}

#view-my-history .atividades-ref-copy {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #fff;
	color: #64748b;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

#view-my-history .atividades-ref-copy:hover {
	background: #f8fafc;
	color: #1e3a5f;
	border-color: #cbd5e1;
}

#view-my-history .atividades-ref-copy.is-copied {
	background: #ecfdf5;
	border-color: #a7f3d0;
	color: #059669;
}

.atividades-tipo-chip {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	white-space: nowrap;
}

.atividades-tipo-chip.is-conferencia {
	background: #f1f5f9;
	color: #334155;
}

.atividades-tipo-chip.is-vistoria {
	background: var(--soft-info, #e0f2fe);
	color: var(--text-info-soft, #0369a1);
}

.atividades-tipo-chip.is-carga {
	background: var(--soft-warning, #fef3c7);
	color: var(--text-warning-soft, #b45309);
}

@media (min-width: 769px) {
	#view-my-history .atividades-table.sigma-modern-table thead th {
		position: sticky;
		top: 0;
		z-index: 30;
		background: #f8fafc !important;
		box-shadow: 0 1px 0 #e2e8f0, 0 6px 12px -8px rgba(15, 23, 42, 0.18);
	}

	#view-my-history .atividades-table.sigma-modern-table thead th:first-child {
		border-top-left-radius: 12px;
	}

	#view-my-history .atividades-table.sigma-modern-table thead th:last-child {
		border-top-right-radius: 12px;
	}
}

/* ==========================================================================
   STACKED CARDS (SUBSTITUTO DA LINHA DO TEMPO)
   ========================================================================== */

.stacked-cards-container {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	flex: 1;
	overflow-y: auto;
	/* Força a rolagem vertical se houver muitos cards */
	max-height: calc(100vh - 280px);
	/* Evita que a lista estique a tela ao infinito */
	padding-bottom: 80px;
	/* Garante que o último card não fique grudado no rodapé */
}

.stacked-card {
	background: var(--bg-card-clean);
	border: 1px solid var(--border-soft);
	border-radius: 10px;
	padding: 1.25rem;
	display: flex;
	align-items: center;
	gap: 1.5rem;
	transition: all 0.2s ease;
	text-decoration: none;
	cursor: pointer;
}

.stacked-card:hover {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
	border-color: #cbd5e1;
	transform: translateY(-1px);
}

.stacked-card:active {
	transform: scale(0.99);
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06);
}

.pill-tab {
	background: transparent;
	border: none;
	padding: 0.6rem 1.2rem;
	border-radius: 50px;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--text-muted);
	cursor: pointer;
	transition: all 0.2s;
}

.pill-tab:hover {
	color: var(--text-dark);
}

.pill-tab.active {
	background: var(--soft-info);
	color: var(--text-info-soft);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.prep-extrato-kpis-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.prep-extrato-kpi {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 14px 10px;
	border-radius: 12px;
	background: var(--bg-card-clean, #f8fafc);
	border: 1px solid var(--border-soft, #e2e8f0);
	text-align: center;
}

.prep-extrato-kpi > i {
	font-size: 1.25rem;
	color: #800020;
}

.prep-extrato-kpi-label {
	font-size: 0.68rem;
	font-weight: 800;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.prep-extrato-kpi-val {
	font-size: 1.35rem;
	font-weight: 900;
	color: var(--text-dark, #0f172a);
	line-height: 1.1;
}

.prep-extrato-kpi.is-alerta {
	background: #fffbeb;
	border-color: #fde68a;
}

.prep-extrato-kpi.is-alerta > i,
.prep-extrato-kpi.is-alerta .prep-extrato-kpi-val {
	color: #b45309;
}

/* =============================================================================
   11-OVERLAYS · Overlays — modais, drawers, dropdowns
   ============================================================================= */

/* --- ADICIONAIS PARA DASHBOARD OPERACIONAL SIGMA V3 --- */

/* --- VISUALIZADOR DE PDF SIGMA V3 (OTIMIZADO PARA MÚLTIPLAS PÁGINAS) --- */

.sigma-v3-pdf-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(15, 23, 42, 0.85) !important; /* Fundo escuro mais moderno e profundo */
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 99999 !important; /* Acima de qualquer barra ou menu flutuante */
    display: none; /* Controlado via JS (.style.display = 'flex') */
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.sigma-v3-pdf-modal {
    background: #ffffff;
    width: 100%;
    height: 100%;
    max-width: 1200px;
    max-height: 95vh; /* No desktop mantém respiro elegante */
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    animation: sigmaZoomIn 0.3s ease-out;
}

/* Separadores de Grupo na Tabela Sigma V3 */

/*MODAL DE GERENCIAR LISTAS EM POSTOS*/

.swal-v3-list-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	padding: 12px 15px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	margin-bottom: 8px;
	transition: 0.2s;
}

.swal-v3-list-item:hover {
	border-color: #8e44ad;
	background: #fdfaff;
}

.swal-v3-lock {
	background: #f1f5f9 !important;
	opacity: 0.7;
	border-style: dashed !important;
}

/*MODAL DE FORMULÁRIO DE POSTOS*/

.swal-v3-form-group {
	text-align: left;
	margin-bottom: 15px;
}

.swal-v3-form-group label {
	display: block;
	font-weight: 800;
	font-size: 0.75em;
	color: #64748b;
	margin-bottom: 6px;
}

.swal-v3-form-group input {
	width: 100%;
	padding: 12px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	font-size: 0.95em;
	box-sizing: border-box;
}

/* Efeito no botão de opções do card de listas */

.v3-card-dropdown {
	transition: opacity 0.2s ease;
	z-index: 1000;
	/* Garante que fique sobre os outros cards */
}

.swal2-container {
	z-index: 99999 !important;
}

/* Fecha do Swal: sem retângulo de foco ao abrir o modal */
.swal2-close,
.swal2-close:focus,
.swal2-close:focus-visible,
.swal2-close:active {
	outline: none !important;
	box-shadow: none !important;
	border: none !important;
}

body.swal2-shown {
	overflow: hidden !important;
}

.modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	z-index: 2000;
	display: none;
	align-items: center;
	justify-content: center;
}

.modal .modal-content {
	margin: auto;
	position: relative;
}

.modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 2000;
}

.modal-content {
	background: var(--bg-card-clean, #fff);
	padding: 25px;
	border-radius: 12px;
	width: 90%;
	max-width: 500px;
	position: relative;
	text-align: left;
	max-height: 90vh;
	overflow-y: auto;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

.modal-content h2 {
	margin-top: 0;
	color: #800020;
	border-bottom: 1px solid #eee;
	padding-bottom: 10px;
	font-size: 1.4em;
}

.modal-content label {
	display: block;
	margin-top: 15px;
	margin-bottom: 5px;
	font-weight: 600;
	color: #444;
	font-size: 0.95em;
}

.modal-content input[type="text"],
.modal-content input[type="number"],
.modal-content select,
.modal-content textarea {
	width: 100%;
	padding: 12px;
	margin-bottom: 15px;
	box-sizing: border-box;
	border: 1px solid #ccc;
	border-radius: 6px;
	font-size: 1em;

	transition: border-color 0.3s, box-shadow 0.3s;
}

.modal-content input:focus,
.modal-content select:focus,
.modal-content textarea:focus {
	border-color: #800020;
	outline: none;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

.modal-content textarea {
	height: 100px;
	resize: vertical;
}

.modal-buttons {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 10px;
}

.modal-content button {
	padding: 10px 20px;
	margin-top: 20px;
	border: none;
	border-radius: 5px;
	cursor: pointer;
	transition: background-color 0.3s;
	font-weight: bold;
}

.modal-btn-cancel {
	background-color: #ccc;
	color: #333;
}

.modal-btn-cancel:hover {
	background-color: #bbb;
}

/* ===== Modal Alterar Senha (SweetAlert — padrão sistema) ===== */

.swal2-popup.sigma-swal-senha {
	width: min(100%, 440px) !important;
	padding: 0 !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22) !important;
	overflow: hidden;
}

.swal2-popup.sigma-swal-senha .swal2-html-container {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	text-align: left !important;
	color: #334155;
}

.sigma-senha-modal {
	padding: 18px 18px 4px;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-actions {
	display: flex !important;
	gap: 10px;
	margin: 0 !important;
	padding: 14px 16px 16px !important;
	border-top: 1px solid #e2e8f0;
	width: 100%;
	box-sizing: border-box;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-confirm,
.swal2-popup.sigma-swal-senha .sigma-swal-senha-cancel {
	flex: 1 1 0 !important;
	margin: 0 !important;
	min-height: 44px;
	justify-content: center;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	box-shadow: none !important;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-confirm {
	background: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-confirm:hover {
	background: #fff !important;
	border-color: #800020 !important;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-cancel {
	background: #f8fafc !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-cancel:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

.swal2-popup.sigma-swal-senha .sigma-swal-senha-validation {
	margin: 0 16px 8px !important;
	border-radius: 10px !important;
	background: #fef2f2 !important;
	color: #b91c1c !important;
	box-shadow: none !important;
}

/* ===== Modal Gestão de Setores (padrão sistema) ===== */

.swal2-popup.sigma-swal-setores {
	width: min(100%, 460px) !important;
	padding: 0 !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22) !important;
	overflow: hidden;
}

.swal2-popup.sigma-swal-setores .swal2-html-container {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	text-align: left !important;
	color: #334155;
}

.sigma-setores-modal {
	padding: 18px 18px 8px;
}

.sigma-setores-modal-compact {
	padding-bottom: 4px;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-actions {
	display: flex !important;
	gap: 10px;
	margin: 0 !important;
	padding: 14px 16px 16px !important;
	border-top: 1px solid #e2e8f0;
	width: 100%;
	box-sizing: border-box;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-confirm,
.swal2-popup.sigma-swal-setores .sigma-swal-senha-cancel,
.swal2-popup.sigma-swal-setores .sigma-swal-setores-danger {
	flex: 1 1 0 !important;
	margin: 0 !important;
	min-height: 44px;
	justify-content: center;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	box-shadow: none !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-confirm {
	background: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-confirm:hover {
	background: #fff !important;
	border-color: #800020 !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-cancel {
	background: #f8fafc !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-cancel:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-setores-danger {
	background: #fef2f2 !important;
	color: #b91c1c !important;
	border: 1px solid #fecaca !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-setores-danger:hover {
	background: #fff !important;
	border-color: #b91c1c !important;
}

.swal2-popup.sigma-swal-setores .sigma-swal-senha-validation {
	margin: 0 16px 8px !important;
	border-radius: 10px !important;
	background: #fef2f2 !important;
	color: #b91c1c !important;
	box-shadow: none !important;
}

/* ===== Modal Relatório de Inventário (padrão sistema) ===== */

.swal2-popup.sigma-swal-relatorio {
	width: min(100%, 480px) !important;
	padding: 0 !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22) !important;
	overflow: hidden;
}

.swal2-popup.sigma-swal-relatorio .swal2-html-container {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	text-align: left !important;
	color: #334155;
}

.sigma-relatorio-modal {
	padding: 18px 18px 8px;
}

.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-actions {
	display: flex !important;
	gap: 10px;
	margin: 0 !important;
	padding: 14px 16px 16px !important;
	border-top: 1px solid #e2e8f0;
	width: 100%;
	box-sizing: border-box;
}

.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-confirm,
.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-cancel {
	flex: 1 1 0 !important;
	margin: 0 !important;
	min-height: 44px;
	justify-content: center;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	box-shadow: none !important;
}

.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-confirm {
	background: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
}

.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-confirm:hover {
	background: #fff !important;
	border-color: #800020 !important;
}

.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-cancel {
	background: #f8fafc !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
}

.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-cancel:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

/* --- 3. MOTOR DO MODAL CADASTRO GLOBAL (WIZARD) --- */

/* Transição Suave Universal para Inputs */

.swal-input {
	transition: background-color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease, color 0.3s ease !important;
}

/* --- CABEÇALHO DO DROPDOWN --- */

.dropdown-divider {
	border: 0;
	border-top: 1px solid #e2e8f0;
	margin: 6px 12px;
}

.dropdown-item {
	padding: 12px 16px;
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s;
	color: #475569;
	background: transparent;
	border: none;
	width: 100%;
	text-align: left;
	font: inherit;
	-webkit-tap-highlight-color: transparent;
	outline: none;
}

.dropdown-item:focus,
.dropdown-item:focus-visible,
.dropdown-item:active {
	outline: none;
	background: transparent;
	box-shadow: none;
}

/* Ícones padrão */

.dropdown-item i {
	font-size: 1rem;
	color: #475569;
	width: 20px;
	text-align: center;
}

/* Texto simples (Removemos a necessidade do div de coluna) */

.dropdown-item span {
	font-size: 0.95rem;
	font-weight: 400;
}

/* Logout em vermelho */

.dropdown-item.logout {
	color: #dc2626;
	margin-top: 4px;
}

/* Remove efeito de hover e cursor para os itens informativos */

.dropdown-item.info-item:hover {
	background: transparent !important;
}

.dropdown-item.info-item i {
	color: #94a3b8 !important;
	/* Ícones dos informativos um pouco mais claros */
}

.dropdown-item.info-item span {
	color: #64748b !important;
	/* Cor de texto neutra para leitura */
	font-weight: 500;
}

#mobile-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	z-index: 998;
	backdrop-filter: blur(4px);
}

/* =============================================================================
   12-BUTTONS-FORMS · Botões, inputs e padrões de formulário
   ============================================================================= */

/* ✅ CONTAINER DE FILTROS UNIFICADO */

/* ✅ GRUPOS DE INPUT */

.sigma-v3-input-group {
	flex: 1 1 200px;
	/* Isso impede que os campos fiquem menores que 200px e se "colem" */
	min-width: 160px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.sigma-v3-input-group.flex-2 {
	flex: 2;
}

.sigma-v3-input-group label {
	font-size: 0.75rem;
	font-weight: 500;
	color: #64748b;
	margin-left: 5px;
	display: flex;
	align-items: center;
	gap: 5px;
}

/* ✅ ESTILIZAÇÃO DOS INPUTS DE DATA (VIDA AO CALENDÁRIO) */

.sigma-v3-date-input,
.sigma-v3-select,
.flatpickr-input {
	width: 100% !important;
	height: 45px !important;
	/* Força a altura para não ficar com os 19px do log */
	padding: 10px 15px !important;
	border-radius: 10px !important;
	border: 1px solid #e2e8f0 !important;
	background: #ffffff !important;
	font-size: 0.9rem !important;
	color: #1e293b !important;
	font-weight: 600 !important;
	transition: all 0.3s ease;
	cursor: pointer;
	box-sizing: border-box !important;
	appearance: none !important;
	/* Mata o visual nativo "velho" */
	-webkit-appearance: none !important;
}

/* Remove a aparência "velha" do seletor de data e adiciona foco */

.sigma-v3-date-input:focus,
.sigma-v3-select:focus,
.flatpickr-input:focus,
.flatpickr-input.active {
	border-color: #800020 !important;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1) !important;
	outline: none;
	background: #fff !important;
}

.btn-v3-action {
	border: none;
	border-radius: 8px;
	padding: 8px 16px;
	font-size: 0.95rem;
	font-weight: 700em;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
	color: white !important;
	transition: 0.3s;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.btn-v3-conf {
	background: #800020 !important;
}

.btn-v3-vtr {
	background: #2c3e50 !important;
}

.btn-v3-action:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* ❌ Botão de Fechar com Destaque Elegante (Vermelho Suave) */

.btn-close-pdf {
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    color: #dc2626 !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close-pdf:hover {
    background: #dc2626 !important;
    border-color: #dc2626 !important;
    color: #ffffff !important;
    transform: scale(1.05);
}

.v3-btn-action {
	width: 32px;
	height: 32px;
	border-radius: 10px;
	border: none;
	background: rgba(255, 255, 255, 0.9);
	color: #64748b;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease-in-out !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	opacity: 1 !important;
}

.v3-btn-action:hover {
	transform: scale(1.1);
	color: #fff;
	opacity: 1 !important;
}

.v3-btn-action i {
	opacity: 1 !important;
}

/* Seletor Grid/Lista */

.btn-toggle-v3 {
	border: none;
	background: transparent;
	color: #64748b;
	padding: 8px 12px;
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.3s;
}

.btn-toggle-v3.active {
	background: white;
	color: #800020;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.item-selection-card.selected {
	border-color: #1b8a3e;
	background-color: #f6fff6;
	box-shadow: 0 0 5px rgba(27, 138, 62, 0.3);
}

.btn-publish {
	background: #1b8a3e;
	color: white;
	border: none;
	padding: 8px 16px;
	border-radius: 6px;
	font-weight: bold;
	cursor: pointer;
	transition: 0.3s;
}

.btn-publish:hover {
	background: #14682f;
	transform: translateY(-2px);
}

.search-input-wrapper {
	flex: 3;
	position: relative;
	display: flex;
	flex-direction: column;
}

.search-input-wrapper i {
	position: absolute;
	left: 12px;
	top: 38px;
	color: #94a3b8;
	z-index: 10;
}

.search-input-wrapper input {
	width: 100%;
	padding: 12px 12px 12px 38px;
	border: 2px solid #e2e8f0;
	border-radius: 8px;
	margin-top: 5px;
	font-size: 0.95em;
	box-sizing: border-box;
}

.search-input-wrapper>i {
	position: absolute;
	left: 12px;
	top: 24px;
	color: #94a3b8;
	z-index: 10;
	pointer-events: none;
}

.form-group {
	margin-bottom: 15px;
}

.form-group label {
	display: block;
	color: #444;
	margin-bottom: 5px;
	font-size: 0.9em;
}

.form-group select:focus,
.form-group input:focus,
.form-group textarea:focus {
	border-color: var(--vinho-sigma);
	outline: none;
	background-color: #fffcfc;
	/* Um leve toque rosado no fundo ao clicar */
	box-shadow: 0 0 0 4px rgba(128, 0, 32, 0.1);
	/* Sombra mais suave e moderna */
}

.custom-select-container {
	position: relative;
}

.custom-select-container input[type="text"] {
	width: 100%;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
	font-size: 1em;
	outline: none;
	transition: border-color 0.3s;
}

.custom-select-container input[type="text"]:focus {
	border-color: #800020;
	box-shadow: 0 0 0 2px rgba(128, 0, 32, 0.2);
}

.sigma-senha-input-wrap {
	position: relative;
	display: flex;
	align-items: center;
}

.sigma-senha-input-wrap input {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 44px 12px 14px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
	color: #0f172a;
	font-size: 0.95rem;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.sigma-senha-input-wrap input:focus {
	background: #fff;
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

.sigma-setores-add-row input {
	flex: 1 1 auto;
	min-width: 0;
}

.sigma-setores-btn-add {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	flex: 0 0 auto;
	min-width: 44px;
	padding: 0 14px !important;
	margin: 0 !important;
	border-radius: 10px !important;
	border: 1px solid #f3c5ce !important;
	background: #fdf2f4 !important;
	color: #800020 !important;
	font-weight: 700 !important;
	font-size: 0.85rem !important;
	cursor: pointer;
	box-shadow: none !important;
}

.sigma-setores-btn-add i {
	font-size: 1.15rem;
	line-height: 1;
	color: inherit !important;
}

.sigma-setores-btn-add:hover:not(:disabled) {
	background: #fff !important;
	border-color: #800020 !important;
}

.sigma-setores-btn-add:disabled,
.sigma-setores-btn-add.is-loading {
	opacity: 0.65;
	cursor: wait;
}

.sigma-setores-field input {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
	color: #0f172a;
	font-size: 0.95rem;
	outline: none;
	text-transform: uppercase;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.sigma-setores-add-row input {
	width: auto;
}

.sigma-setores-field input:focus {
	background: #fff;
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

.sigma-setores-btn-acao {
	width: 34px;
	height: 34px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #64748b;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.sigma-setores-btn-acao i {
	font-size: 1.1rem;
	line-height: 1;
}

.sigma-setores-btn-acao:hover {
	background: #f1f5f9;
	color: #0f172a;
}

.sigma-setores-btn-acao.is-danger {
	color: #e11d48;
}

.sigma-setores-btn-acao.is-danger:hover {
	background: #fef2f2;
	color: #be123c;
}

.sigma-relatorio-field select {
	width: 100%;
	box-sizing: border-box;
	padding: 11px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
	color: #0f172a;
	font-size: 0.9rem;
	outline: none;
	cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2364748b' viewBox='0 0 256 256'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	padding-right: 36px;
}

.sigma-relatorio-field select:focus {
	background-color: #fff;
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

.sigma-relatorio-field select:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.sigma-relatorio-check input {
	margin-top: 2px;
	accent-color: #800020;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.btn-modern-action {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background-color: #800020;
	color: #ffffff !important;
	border: none;
	padding: 8px 15px;
	border-radius: 6px;
	cursor: pointer;
	font-weight: bold;
	text-transform: uppercase;
	text-align: center;
	justify-content: center;
	font-size: 0.9em;
	transition: 0.2s;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
	white-space: nowrap;
}

.btn-modern-action:hover {
	background-color: #a00030;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.btn-modern-action:active {
	transform: translateY(1px);
	box-shadow: none;
}

.btn-secondary {
	background-color: #5d6d7e;
	color: #ffffff !important;
	border: none;
	padding: 8px 15px;
	border-radius: 5px;
	cursor: pointer;
	font-size: 0.9em;
	font-weight: bold;
	transition: 0.2s;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.btn-secondary:hover {
	background-color: #34495e;
}

.btn-secondary:active {
	transform: scale(0.95);
}

.btn-sync {
	background-color: #1b8a3e;
}

.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

.item-selection-card:has(input[type="checkbox"]:checked) {
	border-color: #800020 !important;
	background-color: #fff1f2 !important;
	box-shadow: 0 4px 12px rgba(128, 0, 32, 0.1);
}

/* Efeito "Ouro" para Nova Família (Suavizado) */

.input-selecionado-ouro {
	border: 2px solid #d97706 !important;
	background-color: #fffbeb !important;
	color: #92400e !important;
	font-weight: 800 !important;
	box-shadow: 0 4px 12px rgba(217, 119, 6, 0.15) !important;
	animation: pulse-soft 2s infinite ease-in-out;
}

.btn-close-dialog {
	background: none;
	border: none;
	font-size: 1.5em;
	color: #94a3b8;
	cursor: pointer;
	transition: 0.2s;
}

.btn-close-dialog:hover {
	color: #ef4444;
}

.sigma-form-group {
	display: flex;
	flex-direction: column;
	margin-bottom: 15px;
	position: relative;
}

.sigma-form-group label {
	font-size: 0.75em;
	font-weight: 800;
	color: #475569;
	margin-bottom: 6px;
}

.sigma-form-group label .required {
	color: #ef4444;
}

.sigma-form-group input[type="text"],
.sigma-form-group input[type="number"],
.sigma-form-group select {
	width: 100%;
	height: 42px;
	padding: 0 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 0.95em;
	outline: none;
	transition: 0.2s;
	background: #fff;
	box-sizing: border-box;
}

.sigma-form-group input:focus,
.sigma-form-group select:focus {
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

.btn-sigma-primary,
.btn-sigma-outline,
.btn-sigma-success {
	padding: 12px 25px;
	border-radius: 8px;
	font-weight: 800;
	font-size: 0.9em;
	cursor: pointer;
	transition: 0.2s;
	border: none;
}

.btn-sigma-outline {
	background: transparent;
	color: #64748b;
	border: 1px solid #cbd5e1;
}

.btn-sigma-outline:hover {
	background: #f8fafc;
	color: #1e293b;
	border-color: #94a3b8;
}

.btn-sigma-success {
	background: #10b981;
	color: #fff;
}

.btn-sigma-success:hover {
	background: #059669;
}

/* ======================================================= */

/* AUTOCOMPLETE E BUSCA INTELIGENTE                        */

/* ======================================================= */

/* VISUAL DE SELEÇÃO IMPACTANTE (DNA JÁ EXISTENTE) */

.input-selecionado-ouro {
	border: 2px solid #d97706 !important;
	background-color: #fffbeb !important;
	color: #92400e !important;
	font-weight: 800 !important;
	box-shadow: 0 0 12px rgba(217, 119, 6, 0.2) !important;
}

/* VISUAL DE SELEÇÃO IMPACTANTE (DNA NOVO) */

.input-selecionado-verde {
	border: 2px solid #10b981 !important;
	background-color: #ecfdf5 !important;
	color: #065f46 !important;
	font-weight: 800 !important;
	box-shadow: 0 0 12px rgba(16, 185, 129, 0.2) !important;
}

/* Força os elementos de formulário e textos a herdarem a fonte e o tamanho do body */

button,
input,
select,
textarea,
span,
p,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Instrument Sans, ui-sans-serif, system-ui, sans-serif;
	font-size: inherit;
	/* 🎯 AQUI: Obriga botões e inputs a respeitarem os 16px do body */
}

/* Base unificada - Foco na Leveza */

.btn-v3-action {
	background: var(--bg-card-clean, #ffffff) !important;
	border-radius: 8px !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 20px !important;
	transition: all 0.2s ease !important;
	font-size: 0.8rem !important;
	letter-spacing: 0.5px !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
	/* Sombra quase invisível, só para descolar do fundo */
}

/* 1. Botão Checklist (Grafite Tático - Leve) */

.btn-v3-vtr {
	color: #1e293b !important;
	border: 1px solid #cbd5e1 !important;
}

.btn-v3-vtr i {
	color: #64748b !important;
	font-size: 1.1rem;
}

.btn-v3-vtr:hover {
	background: #f8fafc !important;
	border-color: #94a3b8 !important;
	box-shadow: 0 4px 12px rgba(30, 41, 59, 0.08) !important;
	transform: translateY(-2px) !important;
}

/* 2. Botão Conferência (Vinho Operacional - Leve) */

.btn-v3-conf {
	color: #800020 !important;
	border: 1px solid #fecdd3 !important;
	/* Borda vinho super clara */
}

.btn-v3-conf i {
	color: #e11d48 !important;
	font-size: 1.1rem;
}

.btn-v3-conf:hover {
	background: #fff1f2 !important;
	/* Fundo vinho translúcido (wash) */
	border-color: #fda4af !important;
	box-shadow: 0 4px 12px rgba(128, 0, 32, 0.08) !important;
	transform: translateY(-2px) !important;
}

.btn-v3-qr {
	color: #0f766e !important;
	border: 1px solid #99f6e4 !important;
}

.btn-v3-qr i {
	color: #0d9488 !important;
	font-size: 1.15rem;
}

.btn-v3-qr:hover {
	background: #f0fdfa !important;
	border-color: #5eead4 !important;
	box-shadow: 0 4px 12px rgba(13, 148, 136, 0.1) !important;
	transform: translateY(-2px) !important;
}

/* Efeito de "apertar o botão" (clique) */

.btn-v3-action:active {
	transform: translateY(0) !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

/* =========================================================
   🟩 3. Botão Excel / Importar (Verde Tático - Leve)
   ========================================================= */

.btn-v3-excel {
	color: #15803d !important;
	/* Texto Verde Escuro (Padrão Excel) */
	border: 1px solid #bbf7d0 !important;
	/* Borda Verde Clara */
}

.btn-v3-excel i {
	color: #16a34a !important;
	/* Ícone Verde Vivo */
	font-size: 1.1rem !important;
}

/* Efeito ao passar o mouse (PC) ou tocar (Mobile) */

.btn-v3-excel:hover,
.btn-v3-excel:active {
	background: #f0fdf4 !important;
	/* Fundo verde translúcido */
	border-color: #86efac !important;
	/* Escurece levemente a borda */
	box-shadow: 0 4px 12px rgba(22, 163, 74, 0.08) !important;
	transform: translateY(-2px) !important;
	/* Levanta sutilmente */
}

.btn-back-v4 {
	background: #f1f5f9;
	border: none;
	color: #475569;
	padding: 10px 15px;
	display: flex;
	align-items: center;
	gap: 8px;
	border-radius: 8px;
	font-weight: 700;
	cursor: pointer;
	transition: 0.2s;
}

.btn-back-v4:hover {
	background: #e2e8f0;
	color: #1e293b;
}

.btn-publish-v4 {
	background: #e2e8f0;
	color: #94a3b8;
	border: 1px solid #cbd5e1;
	padding: 10px 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border-radius: 10px;
	font-weight: 700;
	font-size: 0.88rem;
	cursor: not-allowed;
	box-shadow: none;
	transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.btn-publish-v4 i {
	font-size: 1.15rem;
	line-height: 1;
}

.btn-publish-v4:not(:disabled):hover,
.btn-publish-v4.modified:hover {
	filter: brightness(0.95);
	transform: translateY(-1px);
}

.btn-publish-v4.modified {
	background: #d97706 !important;
	border-color: #b45309 !important;
	color: #fff !important;
	cursor: pointer !important;
	box-shadow: 0 4px 14px rgba(217, 119, 6, 0.35);
	animation: pulse-orange 2s infinite;
}

.btn-add-setor-v4 {
	background: #fdf2f4;
	color: #800020;
	border: 1px solid #f3c5ce;
	width: 34px;
	height: 34px;
	border-radius: 9px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: 0.2s;
	font-size: 1.05rem;
}

.btn-add-setor-v4:hover {
	background: #fce7eb;
	color: #5c0018;
	border-color: #e8a0ae;
	transform: scale(1.04);
}

/* Botão voltar do Mobile oculto no PC */

.btn-back-mobile {
	display: none;
	background: #fdf2f4;
	border: 1px solid #f3c5ce;
	color: #800020;
	font-weight: 800;
	font-size: 0.85em;
	cursor: pointer;
	padding: 6px 12px;
	border-radius: 8px;
	align-items: center;
	gap: 4px;
}

.search-input-wrapper-v4 {
	position: relative;
}

.search-input-wrapper-v4 .icon-busca {
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	font-size: 1.05rem;
	pointer-events: none;
}

.search-input-wrapper-v4 input {
	width: 100%;
	padding: 13px 15px 13px 44px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	font-size: 0.9em;
	font-weight: 600;
	outline: none;
	background: #f8fafc;
	box-sizing: border-box;
	color: #1e293b;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.search-input-wrapper-v4 input:focus {
	border-color: #800020;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.1);
}

.suggestions-box-v4 {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	right: 0;
	z-index: 40;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12);
	max-height: 280px;
	overflow-y: auto;
	display: none;
}

/* --- TÍTULOS DE SEÇÃO --- */

.sigma-form-section-title {
	color: #64748b;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0 0 20px 0;
	border-bottom: 1px solid #f1f5f9;
	padding-bottom: 10px;
}

.sigma-form-section-title i {
	color: #800020;
	margin-right: 8px;
}

/* --- GRADE DE FORMULÁRIO (Proporção Perfeita) --- */

.sigma-form-grid {
	display: grid;
	gap: 20px;
	margin-bottom: 20px;
	align-items: stretch;
	/* Faz as caixas vizinhas terem a mesma altura */
}

.sigma-checkbox-box input[type="checkbox"] {
	width: 20px;
	height: 20px;
	accent-color: #800020;
	cursor: pointer;
}

.form-grid-2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.form-group-clean {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	position: relative;
}

.form-label-clean {
	font-weight: 600;
	/* Requisito: Máx 600 */
	font-size: 0.75rem;
	color: var(--text-muted);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	display: flex;
	align-items: center;
	gap: 0.4rem;
}

.form-control-clean {
	width: 100%;
	padding: 0.75rem 1rem;
	border-radius: 8px;
	border: 1px solid var(--border-soft);
	background: var(--bg-main);
	color: var(--text-dark);
	font-size: 0.95rem;
	font-weight: 500;
	box-sizing: border-box;
	transition: all 0.2s ease;
	outline: none;
}

.form-control-clean:focus {
	border-color: #cbd5e1;
	box-shadow: 0 0 0 3px rgba(203, 213, 225, 0.3);
	background: var(--bg-card-clean, #ffffff);
}

.select-pointer {
	cursor: pointer;
}

/* Posto/Missão — picker agrupado (Operacional / Missões) */
.prep-posto-picker {
	position: relative;
	width: 100%;
	z-index: 2;
}

#painel-preparacao-conferencia #prep-sec-base.is-posto-menu-open {
	z-index: 80;
	overflow: visible;
}

.prep-posto-trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	min-height: 48px;
	text-align: left;
	cursor: pointer;
	font: inherit;
	background: #f8fafc;
	color: #0f172a;
	border: 1px solid #e2e8f0;
	-webkit-appearance: none;
	appearance: none;
}

.prep-posto-trigger > span {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.prep-posto-trigger > i {
	flex-shrink: 0;
	color: #64748b;
	font-size: 1rem;
	transition: transform 0.15s ease;
}

.prep-posto-trigger[aria-expanded="true"] > i {
	transform: rotate(180deg);
}

.prep-posto-menu {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	z-index: 90;
	max-height: min(360px, 60vh);
	overflow: auto;
	padding: 0.35rem 0 0.5rem;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: var(--bg-card-clean, #fff);
	box-shadow: 0 16px 36px rgba(15, 23, 42, 0.16);
	pointer-events: auto;
}

.prep-posto-grupo {
	padding: 0;
}

.prep-posto-grupo + .prep-posto-grupo {
	margin-top: 0.55rem;
}

.prep-posto-grupo-titulo {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 0.2rem;
	padding: 0.55rem 0.9rem 0.45rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.2;
	border-bottom: 1px solid transparent;
}

.prep-posto-grupo.is-operacional .prep-posto-grupo-titulo {
	color: #1e3a8a;
	border-bottom-color: rgba(37, 99, 235, 0.28);
	background: linear-gradient(180deg, rgba(37, 99, 235, 0.06) 0%, transparent 100%);
}

.prep-posto-grupo.is-missao .prep-posto-grupo-titulo {
	color: #334155;
	border-bottom-color: rgba(30, 41, 59, 0.18);
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.04) 0%, transparent 100%);
}

.prep-posto-subgrupo {
	padding: 0.15rem 0 0.45rem;
}

.prep-posto-subgrupo + .prep-posto-subgrupo {
	margin-top: 0.15rem;
	border-top: 1px solid #e8eef5;
}

.prep-posto-subgrupo-titulo {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0.35rem 0.65rem 0.1rem;
	padding: 0.28rem 0.55rem;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #0c4a6e;
	background: linear-gradient(90deg, rgba(14, 165, 233, 0.12) 0%, rgba(14, 165, 233, 0.03) 72%, transparent 100%);
	border-left: 3px solid #0284c7;
	border-radius: 0 6px 6px 0;
	line-height: 1.25;
}

.prep-posto-subgrupo-titulo i {
	flex: 0 0 auto;
	font-size: 0.92rem;
	color: #0284c7;
}

.prep-posto-grupo.is-missao .prep-posto-subgrupo-titulo {
	color: #3f3f46;
	background: linear-gradient(90deg, rgba(113, 113, 122, 0.14) 0%, rgba(113, 113, 122, 0.03) 72%, transparent 100%);
	border-left-color: #71717a;
}

.prep-posto-grupo.is-missao .prep-posto-subgrupo-titulo i {
	color: #71717a;
}

.prep-posto-opt {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	width: 100%;
	padding: 0.62rem 0.9rem;
	border: 0;
	background: transparent;
	color: var(--text-dark, #0f172a);
	font: inherit;
	font-size: 0.95rem;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

.prep-posto-opt > i {
	flex: 0 0 auto;
	width: 2.05rem;
	height: 2.05rem;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #e0f2fe;
	color: #0369a1;
	font-size: 1.05rem;
}

.prep-posto-opt-copy {
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 0.08rem;
}

.prep-posto-opt-nome {
	font-weight: 800;
	line-height: 1.25;
}

.prep-posto-opt-desc {
	font-size: 0.72rem;
	font-weight: 650;
	color: #64748b;
	line-height: 1.3;
}

.prep-posto-opt:hover,
.prep-posto-opt:focus-visible {
	background: #eff6ff;
	color: #1d4ed8;
	outline: none;
}

.prep-posto-opt:hover .prep-posto-opt-desc,
.prep-posto-opt:focus-visible .prep-posto-opt-desc {
	color: #3b82f6;
}

.prep-select-lista-native {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
	overflow: hidden;
}

@media (max-width: 768px) {
	#painel-preparacao-conferencia .prep-posto-picker {
		display: block !important;
		width: 100%;
		position: relative;
		z-index: 4;
	}

	#painel-preparacao-conferencia .prep-select-lista-native {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		opacity: 0 !important;
		pointer-events: none !important;
		display: block !important;
	}

	#painel-preparacao-conferencia .prep-posto-trigger {
		display: flex !important;
		min-height: 48px;
		visibility: visible !important;
		opacity: 1 !important;
	}

	#painel-preparacao-conferencia .prep-posto-menu {
		position: static;
		max-height: min(38vh, 260px);
		margin-top: 8px;
		box-shadow: 0 8px 20px rgba(15, 23, 42, 0.1);
	}

	#painel-preparacao-conferencia .prep-conf-selecao-row {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
		min-height: 0;
	}

	#painel-preparacao-conferencia #prep-sec-base,
	#painel-preparacao-conferencia #prep-sec-ativo:not([hidden]) {
		display: flex !important;
		flex-direction: column !important;
		width: 100% !important;
		height: auto !important;
		max-height: none;
		overflow: visible !important;
		align-self: stretch !important;
		padding: 12px 14px !important;
	}

	#painel-preparacao-conferencia .frota-form-field {
		display: flex !important;
		visibility: visible !important;
		min-width: 0;
	}

	#painel-preparacao-conferencia .frota-form-section-title {
		margin-bottom: 8px !important;
		padding-bottom: 8px !important;
	}

	#painel-preparacao-conferencia #prep-sec-ativo .prep-ativo-lista {
		max-height: min(28vh, 180px);
	}

	#painel-preparacao-conferencia .prep-conf-stack {
		flex: 1 1 auto;
		min-height: 0;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		gap: 12px !important;
		padding-bottom: 8px;
	}

	#painel-preparacao-conferencia .prep-conf-actions {
		flex-shrink: 0;
		margin-top: 0 !important;
	}

	body.prep-conferencia-aberta-body #view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia,
	body.prep-conferencia-aberta-body #view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia.sigma-prep-view {
		position: fixed !important;
		top: calc(75px + env(safe-area-inset-top, 0px)) !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		height: auto !important;
		max-height: none !important;
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
		z-index: 20050 !important;
		pointer-events: auto !important;
		padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px)) 12px !important;
		box-sizing: border-box !important;
	}

	#painel-preparacao-conferencia .prep-conf-header {
		flex-shrink: 0;
		margin-bottom: 8px !important;
		padding-bottom: 10px !important;
	}
}

.prep-posto-empty {
	padding: 1rem;
	text-align: center;
	color: #94a3b8;
	font-size: 0.9rem;
}

.prep-select-base-sync {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.textarea-clean {
	resize: vertical;
	min-height: 80px;
}

/* Wrapper para o ícone de busca */

.search-input-wrapper {
	position: relative;
	margin-bottom: 1rem;
}

/* Área de Seleção de Materiais */

.materials-selection-area {
	border-top: 2px dashed var(--border-soft);
	padding-top: 1.5rem;
	display: flex;
	flex-direction: column;
}

/* Card Individual de Seleção */

.item-selection-card {
	background: var(--bg-card-clean);
	border: 1px solid var(--border-soft);
	border-radius: 8px;
	padding: 1rem;
	display: flex;
	flex-direction: column;
}

.btn-soft {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid transparent;
	padding: 10px 18px;
	border-radius: 8px;
	box-sizing: border-box;
	font-weight: 600;
	/* Requisito: Máximo 600 */
	font-size: 0.9rem;
	cursor: pointer;
	transition: all 0.2s ease;
}

/* Botão Primário Ativo (Ex: Emitir TRUG com itens) */

.btn-soft.btn-soft-primary:not(:disabled) {
    background-color: #800020 !important; /* Bordô / Vermelho Institucional CBMRR */
    color: #ffffff !important;
    border-color: #600018 !important;
    box-shadow: 0 4px 12px rgba(128, 0, 32, 0.25);
}

.btn-soft.btn-soft-primary:not(:disabled):hover {
    background-color: #600018 !important;
    transform: translateY(-1px);
}

.btn-soft:disabled {
	background-color: #f1f5f9 !important;
    color: #94a3b8 !important;
    border-color: #cbd5e1 !important;
    cursor: not-allowed;
    box-shadow: none !important;
    opacity: 0.7;
}

/* Cores dos botões */

.btn-soft-neutral {
	background: var(--soft-neutral);
	color: var(--text-neutral-soft);
}

.btn-soft-info {
	background: var(--soft-info);
	color: var(--text-info-soft);
}

.btn-soft-success {
	background: var(--soft-success);
	color: var(--text-success-soft);
}

.btn-soft-warning {
	background: var(--soft-warning);
	color: var(--text-warning-soft);
}

.btn-soft-danger {
	background: var(--soft-danger);
	color: var(--text-danger-soft);
}

.btn-soft-primary {
	background: var(--soft-primary);
	color: var(--text-primary-soft);
}

.pagination-clean button {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	color: #475569;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border-radius: 8px;
	font-weight: 600;
	font-size: 0.9rem;
	cursor: pointer;
	transition: all 0.2s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.pagination-clean button:hover:not(:disabled) {
	background: #f8fafc;
	border-color: #cbd5e1;
	color: #0f172a;
}

.pagination-clean button.active {
	/* Cor principal suave, seguindo nosso padrão */
	background: var(--bg-main, #e0f2fe);
	border-color: var(--color-primary, #0ea5e9);
	color: var(--color-primary, #0ea5e9);
}

.pagination-clean button:disabled {
	opacity: 0.4;
	cursor: not-allowed;
	background: #f8fafc;
}

.btn-prep-back-bottom {
	width: fit-content;
	/* Ocupa apenas o tamanho do texto + ícone */
	background: #b91c1c;
	color: white;
	border: none;
	padding: 12px 24px;
	border-radius: 8px;
	font-size: 0.85rem;
	font-weight: 500;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: all 0.2s ease;
	box-shadow: 0 4px 6px -1px rgba(185, 28, 28, 0.2);
}

.btn-prep-back-bottom:hover {
	background: #991b1b;
	box-shadow: 0 6px 8px -1px rgba(185, 28, 28, 0.3);
}

.prep-ativo-search .form-control-clean {
	padding-left: 38px;
	width: 100%;
}

.prep-btn-iniciar {
	min-width: 220px;
	justify-content: center;
	background: #fdf2f4 !important;
	color: #800020 !important;
	border: 1px solid #f3c5ce !important;
	box-shadow: none !important;
}

.prep-btn-iniciar.is-aguardando-ativo,
.prep-btn-iniciar:disabled {
	background: #f1f5f9 !important;
	color: #94a3b8 !important;
	border-color: #cbd5e1 !important;
	cursor: not-allowed !important;
	opacity: 1 !important;
}

.btn-view-mode {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 12px;
    border: none;
    background: transparent;
    color: #475569;
    font-weight: 600;
    font-size: 0.85rem;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-view-mode:hover {
    color: #0f172a;
    background: rgba(255, 255, 255, 0.5);
}

.btn-view-mode.active {
    background: #ffffff;
    color: #800020; /* Vermelho institucional CBMRR */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    font-weight: 700;
}

/* =============================================================================
   13-RESPONSIVE · Responsivo — blocos @media
   ============================================================================= */

@media (min-width: 1100px) {
	.frota-form-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.frota-form-field-full {
		grid-column: 1 / -1;
	}
}

@media (min-width: 900px) {
	#cautelas-options-container {
		grid-template-columns: repeat(4, 1fr) !important;
		gap: 15px;
	}
}

@media (max-width: 480px) {
	#modal-crop-perfil .modal-crop-perfil-actions {
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	.swal2-popup.sigma-swal-senha .sigma-swal-senha-actions {
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	.sigma-setores-btn-add span {
		display: none;
	}
}

@media (max-width: 480px) {
	.swal2-popup.sigma-swal-setores .sigma-swal-senha-actions {
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	.sigma-relatorio-filters-row {
		flex-direction: column;
		gap: 10px;
	}

	.swal2-popup.sigma-swal-relatorio .sigma-swal-senha-actions {
		flex-direction: column;
	}
}

/* Modernização dos botões de filtro */

/* ================================================================
   BLOCO DE REGRAS EXCLUSIVAS PARA MOBILE (ATÉ 768px)
   ================================================================ */

@media (max-width: 768px) {
	

	.desktop-only,
	.user-info-text {
		display: none !important;
		/* Esconde o longo no Mobile */
	}

	/* 3. Ajusta o alinhamento dos cantos */
	.header-left {
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		padding-left: 0 !important;
		width: auto;
		/* Deixa o tamanho ser definido pelo conteúdo */
	}

	.user-profile-header {
		flex: 0 0 auto;
		display: flex;
		justify-content: flex-end;
		margin-left: auto;
		background: transparent !important;
		box-shadow: none !important;
		padding: 5px 8px !important;
		padding-right: 12px !important;
		gap: 0 !important;
		cursor: pointer;
		width: max-content !important;
		margin-left: auto !important;
		/* Mantido para permitir o clique no avatar */
	}

	/* Garante que o dropdown abra alinhado à direita no mobile */
	.profile-dropdown {
		right: 10px !important;
		left: auto !important;
		transform: none !important;
	}



	#greeting-photo {
		width: 48px !important;
		height: 48px !important;
		border: 2px solid #800020 !important;
	}

	#greeting-text {
		font-size: 1.15em !important;
		line-height: 1.2 !important;
	}

	#greeting-name {
		font-size: 0.85em !important;
		font-weight: 500 !important;
	}

	#current-date {
		font-size: 1.0em !important;
	}

	.v3-action-hub {
		position: fixed !important;
		bottom: 25px !important;
		right: 25px !important;
		z-index: 9999 !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-end !important;
		gap: 15px !important;
		width: auto !important;
		height: auto !important;
		pointer-events: none !important;
	}

	.btn-v3-action {
		width: auto !important;
		height: 45px !important;
		border-radius: 25px !important;
		padding: 0 18px !important;
		white-space: nowrap !important;
		box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2) !important;
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
	}

	.btn-v3-action span {
		display: inline !important;
		font-size: 1.2em !important;
		font-weight: 500 !important;
	}

	.view-section {
		width: 100% !important;
		max-width: 100% !important;
		display: none;
		padding: 0 !important;
	}

	.view-section[style*="display: block"],
	.view-section.active-view {
		display: block !important;
	}

	/* Transformação das Grades em Coluna Única (Empilhamento) */
	#view-unidades .unidades-cards-grid {
		grid-template-columns: 1fr !important;
		gap: 1rem !important;
	}

	#view-postos .postos-cards-grid {
		grid-template-columns: 1fr !important;
		gap: 1rem !important;
	}

	/* Ajustes de espaçamento e largura para inputs e botões dentro dos filtros modernos */
	.sigma-v3-filter-row {
		gap: 10px;
		padding: 15px;
	}

	.sigma-v3-input-group {
		min-width: 100%;
	}

	.btn-modern-filter {
		width: 100%;
		justify-content: center;
	}

	/* Reorganização do Header de Cautelas (Prioridade Flex) */
	.header-container {
		flex-wrap: wrap;
		justify-content: flex-start !important;
		align-items: flex-start !important;
		padding-left: 5px !important;
		padding-right: 5px !important;
	}

	#btn-back-cautelas {
		order: 1;
		margin-left: auto;
		flex-shrink: 0;
		margin-top: 5px;
		margin-bottom: 5px;
	}

	.header-container h3 {
		order: 2;
		flex-basis: 100%;
		margin-top: 0;
	}

	.dashboard-master-detail-container {
		flex-direction: column;
	}

	.dashboard-master-column {
		flex: 1;
		width: 100%;
		max-height: none;
	}

	.dashboard-detail-column {
		width: 100%;
	}

	.sigma-v3-empty-state {
		display: none;
	}

	/* Gradeamento Table-to-Card (Transforma tabelas em cartões) */
	#cautelas-ativas-table,
	#cautelas-receive-table,
	#cautelas-ativas-table thead,
	#cautelas-receive-table thead,
	#cautelas-ativas-table tbody,
	#cautelas-receive-table tbody,
	#cautelas-ativas-table th,
	#cautelas-receive-table th,
	#cautelas-ativas-table td,
	#cautelas-receive-table td,
	#cautelas-ativas-table tr,
	#cautelas-receive-table tr {
		display: block;
	}

	/* Ajuste de Títulos de Grupo e remoção de labels automáticos nesses títulos */
	#cautelas-ativas-table .group-title-cell:before {
		content: none !important;
	}

	/* Ocultação visual do cabeçalho da tabela original */
	#cautelas-ativas-table thead tr,
	#cautelas-receive-table thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}

	/* Estilo do Card individual da linha da tabela */
	#cautelas-ativas-table tr,
	#cautelas-receive-table tr {
		border: 1px solid #ccc;
		margin-bottom: 10px;
		border-radius: 6px;
		box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
		padding: 10px;
		cursor: pointer;
	}

	/* Manutenção do comportamento de linha para cabeçalhos de grupo */
	#cautelas-ativas-table tr.group-header {
		display: table-row;
		border: none;
		box-shadow: none;
		margin-bottom: 20px;
	}

	#cautelas-ativas-table tr.group-header td {
		display: table-cell;
		padding: 0;
	}

	.group-header .group-title-cell {
		font-size: 1.1em;
		font-weight: bold;
		color: #333;
		padding-left: 0 !important;
	}

	/* Formatação de células como linhas de dados (Rótulo à esquerda, Dado à direita) */
	#cautelas-ativas-table td,
	#cautelas-receive-table td {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 50% !important;
		text-align: right;
		white-space: normal;
		font-size: 0.9em;
	}

	#cautelas-ativas-table td:before,
	#cautelas-receive-table td:before {
		content: attr(data-label);
		position: absolute;
		left: 10px;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		text-align: left;
		font-weight: bold;
		color: #800020;
	}

	/* Ajustes específicos do Dashboard Greeting */

	#btn-open-conf-modal {
		flex-basis: 100%;
		margin-top: 15px;
		margin-left: 0;
		width: 100%;
		order: 1;
	}

	.btn-dial-mobile {
		display: inline-block !important;
	}

	/* Controle da Sidebar no Mobile */
	#menu-btn {
		display: block;
		margin-left: 0 !important;
		padding: 10px 5px !important;
		/* Espaçamento interno mínimo */
		background: transparent;
		border: none;
		color: black;
	}

	/* Ajuste para a nova Sidebar Slim no Mobile */
	.sidebar {
		left: -85px;
		/* Esconde exatamente a largura da nova sidebar */
		width: 85px;
		border-right: none;
		/* Remove a borda para manter o visual limpo */
		top: 60px;
		/* Garante que comece abaixo da sua nova header */
		height: calc(100vh - 60px);
	}

	.sidebar.mobile-active {
		left: 0 !important;
		box-shadow: 10px 0 30px rgba(0, 0, 0, 0.3);
		/* Sombra para destacar sobre o conteúdo */
	}

	/* No mobile, removemos o efeito de "aba transpassada" para não bugar o visual */
	.sidebar a.active::before,
	.sidebar a.active::after {
		display: none !important;
	}

	.sidebar a.active {
		margin-left: 0;
		width: 100%;
		border-radius: 0;
	}

	/* Layout de Seções e Conteúdo */
	.content {
		left: 0;
		width: 100%;
		padding: 15px;
		padding-bottom: var(--mobile-bottom-nav-clearance);
		background: transparent;
		min-height: auto;
	}

	.content,
	.content-area {
		margin-left: 0 !important;
	}

	.view-section {
		padding: 0 !important;
	}

	.menu-card {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* Filtros e Inputs Mobile */
	.modern-filter-card {
		flex-direction: column;
		align-items: stretch;
		gap: 10px;
	}

	.btn-filter-modern {
		width: 100%;
	}

	.filter-input {
		max-width: 100%;
		width: 100%;
	}

	.filter-item {
		width: 100%;
		min-width: 0;
	}

	/* Tabelas Administrativas Mobile (Rótulos data-label) */
	.admin-container {
		padding: 10px;
		margin-top: 20px;
	}

	.admin-table,
	.admin-table thead,
	.admin-table tbody,
	.admin-table th,
	.admin-table td,
	.admin-table tr {
		display: block;
	}

	.admin-table thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}

	.admin-table tr {
		border: 1px solid #ccc;
		margin-bottom: 10px;
		border-radius: 6px;
		box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
	}

	.admin-table td {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 50%;
		text-align: right;
		font-size: 0.9em;
	}

	.admin-table td:before {
		content: attr(data-label);
		position: absolute;
		left: 10px;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		text-align: left;
		font-weight: bold;
		color: #800020;
	}

	.admin-table td[data-label="Ações:"],
	.admin-table td:last-child {
		text-align: right !important;
	}

	/* Formulários Globais e Seções de Cadastro */
	.global-actions {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.new-local-section .form-group {
		margin-bottom: 10px;
	}

	.new-local-section .btn-modern-action,
	.new-local-section .btn-create {
		width: 100%;
		margin-top: 10px;
	}

	/* Cards de Setor e Grade de Cards */
	.sector-card {
		margin-left: 0 !important;
		margin-right: 0 !important;
		flex: 1 1 100% !important;
		max-width: 100% !important;
	}

	.cards-grid {
		gap: 20px 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* Editor de Listas (Setores e Itens) Mobile */
	.add-setor-form {
		flex-direction: column;
		gap: 10px !important;
		margin-left: 0 !important;
	}

	.add-item-form-setor {
		flex-wrap: wrap;
	}

	.add-item-form-setor input,
	.add-item-form-setor select,
	.add-item-form-setor button {
		flex-grow: 1;
		width: 100%;
		box-sizing: border-box;
	}

	.add-item-form-setor button {
		flex-grow: 0;
		width: 48%;
	}

	.item-conferencia-admin {
		flex-direction: column;
		align-items: flex-start;
		padding: 10px;
	}

	.item-actions-admin {
		margin-top: 10px;
		align-self: flex-end;
	}

	.tombamento-container-wrapper {
		padding-left: 10px;
		margin-top: 10px;
	}

	.tombamento-list li {
		flex-wrap: wrap;
		padding: 5px 0;
	}

	.tombamento-list input {
		flex-grow: 1;
	}

	.form-grid-2-columns {
		grid-template-columns: 1fr;
	}

	.selection-card {
		width: 100%;
		height: 100px;
		flex-direction: row;
		padding: 0 20px;
		justify-content: flex-start;
		gap: 20px;
	}

	.selection-card i {
		font-size: 2em;
	}

	.editor-search-bar {
		flex-direction: column;
		align-items: stretch;
		gap: 12px !important;
		padding: 10px 15px 15px 15px !important;
	}

	.target-sector-wrapper {
		min-width: 100% !important;
	}

	.search-input-wrapper {
		width: 100%;
		flex: none !important;
	}

	/* --- Estilos para o Visualizador de PDF Sigma V3 --- */

	/* Esconde o texto apenas em telas menores que 600px */

	/* Selecionamos o botão que chama a função de imprimir */
	/* Esconde o botão de imprimir no mobile (geralmente não funcional em webview/celular) */
	button[onclick="imprimirPdfInterno()"] {
		display: none !important;
	}

	/* Remove textos para priorizar ícones */
	.hide-mobile {
		display: none !important;
	}

	.sigma-v3-pdf-modal {
		width: 100% !important;
		height: 100% !important;
		max-width: none !important;
		border-radius: 0 !important;
		/* Fullscreen total */
	}

	.sigma-v3-pdf-header {
		padding: 10px 12px;
		gap: 10px;
	}

	/* Ajuste do container de título para não empurrar os botões */
	.sigma-v3-pdf-header>div:first-child {
		flex: 1;
		/* Faz o título ocupar o espaço restante */
		min-width: 0;
		/* Permite que o texto encolha */
	}

	/* Limita o nome do arquivo/relatório para não quebrar a linha */
	#pdf-modal-filename {
		max-width: 140px !important;
		display: block;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		font-size: 0.7em !important;
	}

	.sigma-v3-pdf-actions {
		gap: 8px !important;
		flex-shrink: 0;
		/* Impede os botões de sumirem */
	}

	.sigma-v3-pdf-btn {
		min-width: 48px;
		min-height: 48px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 !important;
		/* Remove o padding variável do texto */
		border-radius: 12px;
		/* Cantos arredondados mais suaves */
		background-color: #f1f5f9;
		/* Um fundo cinza muito suave para destacar o alvo */
		border: 1px solid #e2e8f0;
		/* Uma borda leve para definir o botão */
		margin-left: 8px;
		/* Espaçamento entre botões */
		transition: all 0.2s ease;
	}

	/* Efeito de toque (Feedback visual) */
	.sigma-v3-pdf-btn:active {
		background-color: #e2e8f0;
		transform: scale(0.95);
	}

	/* Melhora o ícone dentro do novo botão */
	.sigma-v3-pdf-btn i {
		margin: 0 !important;
		/* Garante que o ícone fique centralizado */
		font-size: 1.2rem;
		color: #475569;
	}

	.btn-close-pdf {
		background-color: #fee2e2 !important;
		/* Vermelho muito suave */
		border: 1px solid #fecaca !important;
	}

	.btn-close-pdf i {
		color: #dc2626 !important;
	}

	.sigma-v3-pdf-body {
		padding: 15px 5px;
		background: #444;
		flex-direction: column !important;
		align-items: center !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
	}

	/* Garante que a página do PDF não fique maior que a tela do celular */
	.pdf-render-canvas {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		margin: 0 auto !important;
	}

	/*---- FIM DO BLOCO Estilos para o Visualizador de PDF Sigma V3 ----*/
}

@media (min-width: 769px) {

	/* ✅ CORREÇÃO: No Desktop, por padrão, usamos GRID para os cards se espalharem.
       O FLEX só entrará quando a classe .split-view estiver ativa (no clique).
    */
	.dashboard-columns {
		display: grid !important;
		grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
		gap: 25px;
		width: 100%;
	}

	/* Quando o Gestor clica em um card, o JS adiciona .split-view ao pai.
       Só então o layout muda para FLEX (lado a lado).
    */
	#dashboard-content-by-role.split-view .dashboard-columns {
		display: flex !important;
		flex-direction: row !important;
		align-items: stretch;
	}

	button[onclick="imprimirPdfInterno()"] {
		display: flex !important;
	}
}

/* Hover só em dispositivos com ponteiro real (evita “select” preso no mobile) */

@media (hover: hover) and (pointer: fine) {
	.dropdown-item:hover:not(.logout) {
		background: #f8fafc;
	}

	.dropdown-item.logout:hover {
		background: #fef2f2;
	}
}

/* Desktop: TRUG em tabela; voltar/PDF de seção só no mobile */

@media (min-width: 769px) {
	.btn-chrome-trug,
	.btn-voltar-trug-secao,
	.btn-voltar-gestao-secao,
	.btn-pdf-trug-secao {
		display: none !important;
	}

	/* Frota detalhe: Voltar permanece no PC */
	#view-vtr-detalhe .btn-voltar-gestao-secao {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: auto;
		min-width: 32px;
		padding: 4px 6px 4px 0;
		margin: 0;
		border: none;
		background: transparent;
		color: #0f172a;
		cursor: pointer;
	}

	#view-vtr-detalhe .btn-voltar-gestao-secao i {
		font-size: 1.45rem;
		line-height: 1;
	}

	#view-cautelas .sigma-trug-mcards {
		display: none !important;
	}

	#view-cautelas .sigma-modern-table-wrapper {
		display: block !important;
	}

	#view-almoxarifado .sigma-almox-mcards {
		display: none !important;
	}

	#view-almoxarifado .sigma-almox-table-wrap,
	#view-almoxarifado #container-tabela-principal {
		display: block !important;
	}

	#view-almoxarifado .almox-main-display {
		display: block;
	}

	#view-almoxarifado .almox-acoes-topo {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 0.5rem;
	}

	#view-almoxarifado .almox-acoes-topo .btn-almox-acao {
		display: inline-flex;
		flex-direction: row;
		align-items: center;
		gap: 0.4rem;
	}

	/* No PC o Imprimir / Voltar / Receber da página continuam visíveis */
	#view-cautelas .btn-trug-imprimir-pagina,
	#view-cautelas .btn-trug-voltar-pagina,
	#view-cautelas .btn-trug-receber-pagina {
		display: inline-flex !important;
	}
}

/* Desktop: sidebar/header fixos — só a área .content rola */
@media (min-width: 769px) {
	html {
		height: 100% !important;
		overflow: hidden !important;
	}

	body {
		height: 100% !important;
		max-height: 100vh !important;
		min-height: 0 !important;
		overflow: hidden !important;
		padding-bottom: 0 !important;
	}

	#sigma-app-invertible {
		height: 100% !important;
		max-height: 100% !important;
		overflow: hidden !important;
		min-height: 0 !important;
	}

	#main-sidebar,
	.sidebar {
		position: fixed !important;
		top: 60px !important;
		left: 0 !important;
		height: calc(100vh - 60px) !important;
		height: calc(100dvh - 60px) !important;
		z-index: 999 !important;
	}

	.content {
		margin-top: 60px !important;
		margin-left: 52px !important;
		width: calc(100% - 52px) !important;
		height: calc(100vh - 60px) !important;
		height: calc(100dvh - 60px) !important;
		max-height: calc(100vh - 60px) !important;
		max-height: calc(100dvh - 60px) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		min-height: 0 !important;
	}
}

/* Desktop: header volta a ser fixed clássico; menu inferior some via media query */

@media (min-width: 769px) {
	#sigma-chrome-layer {
		/* Só ancora o header — não engole o layout do PC */
		bottom: auto !important;
		height: 0 !important;
		z-index: 1200 !important;
	}

	#sigma-chrome-layer .main-header,
	.main-header {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 60px !important;
		z-index: 1200 !important;
	}

	#sigma-chrome-layer .mobile-bottom-nav {
		display: none !important;
	}

	#sigma-app-invertible {
		width: 100% !important;
		flex: 1 1 100% !important;
	}

	.content {
		width: calc(100% - 52px) !important;
		max-width: none !important;
	}
}

/* Mobile: header/menu absolutos dentro da camada fixed (= grudados na tela) */

@media (max-width: 768px) {
	#sigma-chrome-layer .main-header {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		z-index: 2 !important;
		filter: none !important;
	}

	#sigma-chrome-layer .mobile-bottom-nav {
		position: absolute !important;
		left: 15px !important;
		right: 15px !important;
		bottom: calc(var(--mobile-bottom-nav-offset) + var(--sigma-safe-bottom, 0px)) !important;
		z-index: 3 !important;
		filter: none !important;
		transform: none !important;
	}
}

/* PC: respiro entre sidebar e Nova Conferência / Resumo da Conferência */

@media (min-width: 769px) {
	.content:has(#view-dashboard.prep-conferencia-aberta),
	.content:has(#view-dashboard.prep-checklist-aberta),
	.content:has(#view-my-history.extrato-aberto),
	.content:has(#view-my-history.reporte-servico-aberto) {
		padding-top: 8px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
		padding-bottom: 20px !important;
	}

	#view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist {
		padding: 8px 8px 20px 12px !important;
	}

	#painel-preparacao-checklist .prep-check-stack {
		gap: 28px !important;
	}

	#painel-preparacao-checklist .prep-check-selecao-row {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 16px !important;
	}

	#painel-preparacao-checklist .prep-check-actions {
		margin-top: 4px !important;
		padding-top: 8px !important;
	}

	#view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia {
		padding: 8px 0 20px 0 !important;
	}

	/* PC: respiro claro entre Base/Lista → Resumo → botões */
	#painel-preparacao-conferencia .prep-conf-stack {
		gap: 28px !important;
		max-width: none !important;
		width: 100% !important;
	}

	#painel-preparacao-conferencia .prep-conf-selecao-row {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 16px !important;
	}

	#painel-preparacao-conferencia .prep-conf-actions {
		margin-top: 4px !important;
		padding-top: 8px !important;
	}

	/*
	 * Extrato é position:absolute (left:0) — ignora padding do .content.
	 * Respiro precisa estar NO PRÓPRIO painel.
	 */
	#view-my-history.extrato-aberto #painel-extrato-conferencia,
	#view-my-history.extrato-aberto #painel-extrato-conferencia.sigma-prep-view {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		min-height: 0 !important;
		height: auto !important;
		padding: 0 0 16px 0 !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}

	#view-my-history.extrato-aberto #painel-extrato-conferencia .prep-inner-wrapper {
		padding-left: 0 !important;
		margin-left: 0 !important;
	}

	/*
	 * Alteração Operacional também é .sigma-prep-view (absolute left:0).
	 * Sem recuo próprio, o título cola no sidebar.
	 */
	#view-my-history.reporte-servico-aberto #painel-reporte-servico,
	#view-my-history.reporte-servico-aberto #painel-reporte-servico.sigma-prep-view,
	#view-my-history.extrato-aberto #painel-reporte-servico,
	#view-my-history.extrato-aberto #painel-reporte-servico.sigma-prep-view {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		min-height: 0 !important;
		height: auto !important;
		padding: 8px 8px 24px 24px !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}

	#view-my-history.reporte-servico-aberto #painel-reporte-servico .prep-inner-wrapper {
		padding-left: 0 !important;
		margin-left: 0 !important;
	}

	/* Botão voltar circular do extrato: só no mobile */
	.btn-fechar-extrato-topo {
		display: none !important;
	}

	#painel-extrato-conferencia .extrato-header-actions {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		flex-shrink: 0;
		gap: 10px;
	}

	#painel-extrato-conferencia .extrato-header-actions .btn-prep-back-bottom {
		padding: 10px 18px;
		margin: 0;
	}

	#painel-extrato-conferencia .extrato-footer-actions {
		display: none !important;
	}
}

@media (max-width: 768px) {
	.btn-fechar-extrato-topo {
		display: flex !important;
	}

	#painel-extrato-conferencia .extrato-header-actions {
		display: none !important;
	}

	/* PDF fica no FAB híbrido; Voltar fica no botão circular do topo */
	#painel-extrato-conferencia .extrato-footer-actions {
		display: none !important;
	}
}

/* ========== EXTRATO CONFERÊNCIA — lista completa + Reportar serviço ========== */
#painel-extrato-conferencia .extrato-conf-shell {
	display: flex;
	flex-direction: column;
	gap: 14px;
	width: 100%;
	box-sizing: border-box;
}

#painel-extrato-conferencia .extrato-conf-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	align-items: center;
}

#painel-extrato-conferencia .extrato-conf-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.82rem;
	font-weight: 600;
	color: #334155;
}

#painel-extrato-conferencia .extrato-conf-meta-item.is-muted {
	color: #64748b;
	font-weight: 500;
}

#painel-extrato-conferencia .extrato-conf-meta-item i {
	color: #800020;
	font-size: 1.05em;
}

#painel-extrato-conferencia .extrato-conf-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

#painel-extrato-conferencia .extrato-conf-kpi {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 10px 8px;
	text-align: center;
	min-width: 0;
}

#painel-extrato-conferencia .extrato-conf-kpi strong {
	display: block;
	font-size: 1.15rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.2;
}

#painel-extrato-conferencia .extrato-conf-kpi span {
	display: block;
	margin-top: 2px;
	font-size: 0.68rem;
	font-weight: 600;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

#painel-extrato-conferencia .extrato-conf-kpi.is-danger strong { color: #b91c1c; }
#painel-extrato-conferencia .extrato-conf-kpi.is-ok strong { color: #15803d; }
#painel-extrato-conferencia .extrato-conf-kpi.is-warn strong { color: #b45309; }

#painel-extrato-conferencia .extrato-conf-toolbar {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#painel-extrato-conferencia .extrato-conf-search {
	position: relative;
	display: flex;
	align-items: center;
}

#painel-extrato-conferencia .extrato-conf-search i {
	position: absolute;
	left: 12px;
	color: #94a3b8;
	pointer-events: none;
}

#painel-extrato-conferencia .extrato-conf-search input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 11px 12px 11px 36px;
	font-size: 0.92rem;
	background: #fff;
	color: #0f172a;
}

#painel-extrato-conferencia .extrato-conf-search input:focus {
	outline: none;
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.12);
}

#painel-extrato-conferencia .extrato-conf-chips {
	display: flex;
	flex-wrap: nowrap;
	gap: 6px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 2px;
}

#painel-extrato-conferencia .extrato-chip {
	flex: 0 0 auto;
	border: 1px solid #e2e8f0;
	background: #fff;
	color: #475569;
	border-radius: 999px;
	padding: 7px 12px;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
}

#painel-extrato-conferencia .extrato-chip.is-active {
	background: #800020;
	border-color: #800020;
	color: #fff;
}

#painel-extrato-conferencia .extrato-conf-lista {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding-bottom: 8px;
}

.extrato-setor-box {
	background: var(--sigma-elev, #fff);
	border: 1px solid var(--sigma-line, #e2e8f0);
	border-radius: 12px;
	margin-bottom: 20px;
	overflow: hidden;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02);
}

.extrato-setor-box-head {
	background: var(--sigma-chip-bg, #f8fafc);
	padding: 15px 20px;
	border-bottom: 1px solid var(--sigma-line, #e2e8f0);
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.extrato-setor-box-head h3 {
	margin: 0;
	color: var(--sigma-ink, #1e293b);
	font-size: 1.1em;
	font-weight: 800;
	display: flex;
	align-items: center;
	gap: 10px;
}

.extrato-setor-box-head h3 i {
	color: #800020;
}

.extrato-setor-box-count {
	background: var(--sigma-chip-bg, #e2e8f0);
	color: var(--sigma-muted, #475569);
	padding: 2px 10px;
	border-radius: 20px;
	font-size: 0.8em;
	font-weight: 800;
}

.extrato-item-row {
	padding: 16px 0;
	border-bottom: 1px dashed var(--sigma-line, #f1f5f9);
}

.extrato-item-row-inner {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	width: 100%;
}

.extrato-item-dot {
	width: 8px;
	height: 8px;
	background: #800020;
	border-radius: 50%;
	margin-top: 6px;
	flex-shrink: 0;
}

.extrato-item-body {
	font-weight: 700;
	color: var(--sigma-ink, #334155);
	font-size: 0.95em;
	line-height: 1.4;
	width: 100%;
	min-width: 0;
}

.extrato-item-line {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	align-items: flex-start;
}

.extrato-item-nome {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	color: inherit;
}

.extrato-tomb-chip {
	background: rgba(128, 0, 32, 0.08);
	color: #800020;
	font-size: 0.75em;
	font-weight: 900;
	padding: 2px 8px;
	border-radius: 6px;
	margin-left: 8px;
	border: 1px solid rgba(128, 0, 32, 0.22);
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.extrato-item-qtd {
	background: var(--sigma-chip-bg, #f1f5f9);
	color: var(--sigma-ink, #1e293b);
	font-weight: 900;
	padding: 2px 10px;
	border-radius: 6px;
	font-size: 0.85em;
	white-space: nowrap;
}

.extrato-item-acessorios {
	margin-top: 10px;
	padding-left: 15px;
	border-left: 2px solid var(--sigma-line, #cbd5e1);
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.extrato-item-acessorio {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 0.85em;
}

.extrato-item-acessorio-nome {
	color: var(--sigma-muted, #64748b);
	font-weight: 600;
}

.extrato-item-acessorio-qtd {
	color: var(--sigma-muted, #94a3b8);
	font-weight: 700;
	font-size: 0.9em;
}

.suggestion-item.is-bloqueado {
	opacity: 0.5;
	cursor: not-allowed;
}

.suggestion-item-text {
	flex: 1;
	overflow: hidden;
	margin-left: 12px;
}

#painel-extrato-conferencia .extrato-conf-setor-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 8px;
}

#painel-extrato-conferencia .extrato-conf-setor-head h3 {
	margin: 0;
	font-size: 0.92rem;
	font-weight: 800;
	color: #0f172a;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

#painel-extrato-conferencia .extrato-conf-setor-head h3 i { color: #800020; }

#painel-extrato-conferencia .extrato-conf-setor-head span {
	font-size: 0.75rem;
	font-weight: 700;
	color: #64748b;
	background: #f1f5f9;
	border-radius: 999px;
	padding: 3px 9px;
}

#painel-extrato-conferencia .extrato-conf-setor-body {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#painel-extrato-conferencia .sigma-extrato-table-wrap.sigma-modern-table-wrapper {
	width: 100%;
	overflow-x: auto;
}

#painel-extrato-conferencia .extrato-table.sigma-modern-table {
	width: 100%;
	min-width: 720px;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 0;
}

#painel-extrato-conferencia .extrato-table.sigma-modern-table th,
#painel-extrato-conferencia .extrato-table.sigma-modern-table td {
	box-sizing: border-box;
	vertical-align: middle;
}

#painel-extrato-conferencia .extrato-table.sigma-modern-table th {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	padding: 12px 14px;
}

#painel-extrato-conferencia .extrato-table.sigma-modern-table td {
	padding: 11px 14px;
}

#painel-extrato-conferencia .extrato-table:not(.is-checklist) {
	table-layout: fixed;
	width: 100%;
}
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-item,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-item { width: 18%; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-id,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-id { width: 16%; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-qtd,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-qtd { width: 6%; text-align: center; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-rx,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-rx { width: 8%; text-align: center; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-obs,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-obs { width: 26%; text-align: left; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-foto,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-foto { width: 6%; text-align: center; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-serv,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-serv { width: 8%; text-align: center; }
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-th-acao,
#painel-extrato-conferencia .extrato-table:not(.is-checklist) .extrato-td-acao { width: 12%; text-align: center; }

#painel-extrato-conferencia .extrato-td-item-nome {
	display: block;
	font-weight: 700;
	color: #0f172a;
	white-space: normal;
	word-break: break-word;
	line-height: 1.3;
}

#painel-extrato-conferencia .extrato-td-filho-nome {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding-left: 10px;
	font-weight: 600;
	color: #334155;
	white-space: normal;
	word-break: break-word;
}

#painel-extrato-conferencia .extrato-td-filho-nome i {
	color: #94a3b8;
	flex-shrink: 0;
}

#painel-extrato-conferencia .extrato-table tbody tr.is-filho td {
	background: #f8fafc;
}

#painel-extrato-conferencia .extrato-td-id {
	white-space: normal;
}

#painel-extrato-conferencia .extrato-td-id .extrato-linha-meta-chip {
	margin: 2px 4px 2px 0;
}

#painel-extrato-conferencia .extrato-td-qtd {
	font-weight: 700;
	color: #475569;
	white-space: nowrap;
}

#painel-extrato-conferencia .extrato-td-rx,
#painel-extrato-conferencia .extrato-td-serv,
#painel-extrato-conferencia .extrato-td-acao {
	white-space: nowrap;
}

#painel-extrato-conferencia .extrato-td-vazio {
	color: #94a3b8;
	font-weight: 600;
}

#painel-extrato-conferencia .extrato-vistoria-midia {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-top: 8px;
}

#painel-extrato-conferencia .extrato-vistoria-sec {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 14px 16px;
}

#painel-extrato-conferencia .extrato-vistoria-sec h4 {
	margin: 0 0 10px;
	font-size: 0.92rem;
	font-weight: 800;
	color: #334155;
	display: flex;
	align-items: center;
	gap: 8px;
}

#painel-extrato-conferencia .extrato-vistoria-obs-lista {
	margin: 0;
	padding-left: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#painel-extrato-conferencia .extrato-vistoria-obs-lista li {
	font-size: 0.9rem;
	line-height: 1.45;
	color: #1e293b;
	background: #f8fafc;
	border-radius: 8px;
	padding: 8px 10px;
}

#painel-extrato-conferencia .extrato-vistoria-obs-num {
	font-weight: 800;
	color: #475569;
	margin-right: 4px;
}

#painel-extrato-conferencia .extrato-vistoria-foto-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 10px;
}

#painel-extrato-conferencia .extrato-vistoria-foto {
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	overflow: hidden;
	padding: 0;
	background: #f1f5f9;
	cursor: pointer;
	display: flex;
	flex-direction: column;
}

#painel-extrato-conferencia .extrato-vistoria-foto img {
	width: 100%;
	height: 100px;
	object-fit: cover;
	display: block;
}

#painel-extrato-conferencia .extrato-vistoria-foto span {
	font-size: 0.68rem;
	font-weight: 700;
	color: #64748b;
	padding: 4px 6px;
	text-align: center;
}

#painel-extrato-conferencia .extrato-table.is-checklist .extrato-td-qtd {
	display: none;
}

#painel-extrato-conferencia .sigma-extrato-table-wrap.is-checklist {
	width: 100%;
}

#painel-extrato-conferencia .extrato-table.is-checklist {
	table-layout: fixed;
	width: 100%;
}

#painel-extrato-conferencia .extrato-table.is-checklist.has-acao th:nth-child(1),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao td:nth-child(1),
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-th-item,
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-td-item { width: 18%; }
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao th:nth-child(2),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao td:nth-child(2),
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-th-rx,
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-td-rx { width: 8%; text-align: center; }
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao th:nth-child(3),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao td:nth-child(3),
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-th-obs,
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-td-obs { width: 46%; text-align: left; }
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao th:nth-child(4),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao td:nth-child(4),
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-th-foto,
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-td-foto { width: 6%; text-align: center; }
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao th:nth-child(5),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao td:nth-child(5),
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-th-serv,
#painel-extrato-conferencia .extrato-table.is-checklist .extrato-td-serv { width: 8%; text-align: center; }
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao th:nth-child(6),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao td:nth-child(6),
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao .extrato-th-acao,
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao .extrato-td-acao {
	width: 14%;
	text-align: center;
}
#painel-extrato-conferencia .extrato-table.is-checklist.has-acao .extrato-td-acao .extrato-btn-reportar {
	margin-left: auto;
	margin-right: auto;
}

#painel-extrato-conferencia .extrato-td-obs {
	white-space: normal;
	vertical-align: middle;
	font-size: 0.8rem;
	color: #334155;
	line-height: 1.35;
	overflow-wrap: break-word;
}

#painel-extrato-conferencia .extrato-td-obs-linha {
	margin: 0;
}

#painel-extrato-conferencia .extrato-td-obs-linha + .extrato-td-obs-linha {
	margin-top: 6px;
}

#painel-extrato-conferencia .extrato-td-foto {
	vertical-align: middle;
}

#painel-extrato-conferencia .extrato-btn-evidencia {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	background: #f8fafc;
	color: #0f4c81;
	cursor: pointer;
}

#painel-extrato-conferencia .extrato-btn-evidencia:hover {
	background: #e8eef6;
	border-color: #94a3b8;
}

#painel-extrato-conferencia .extrato-btn-evidencia i {
	font-size: 1.15rem;
}

#painel-extrato-conferencia .extrato-btn-evidencia-n {
	position: absolute;
	top: -5px;
	right: -5px;
	min-width: 16px;
	height: 16px;
	padding: 0 4px;
	border-radius: 999px;
	background: #b91c1c;
	color: #fff;
	font-size: 0.62rem;
	font-weight: 800;
	line-height: 16px;
}

#painel-extrato-conferencia .extrato-conf-item-obs {
	margin-top: 8px;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

#painel-extrato-conferencia .extrato-conf-item-obs-txt {
	flex: 1;
	min-width: 0;
}

#painel-extrato-conferencia .extrato-conf-item-obs .extrato-td-obs-linha {
	font-size: 0.82rem;
	color: #334155;
}

#painel-extrato-conferencia .extrato-conf-item-foto {
	flex-shrink: 0;
}

#painel-extrato-conferencia .extrato-table .extrato-badge-rx,
#painel-extrato-conferencia .extrato-table .extrato-badge-servico {
	margin: 0;
}

#painel-extrato-conferencia .extrato-table .extrato-btn-reportar {
	width: auto;
}

#painel-extrato-conferencia .extrato-td-id-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	align-items: center;
}

@media (min-width: 769px) {
	#painel-extrato-conferencia .extrato-table.sigma-modern-table thead th {
		position: sticky;
		top: 0;
		z-index: 20;
		background: #f8fafc !important;
		box-shadow: 0 1px 0 #e2e8f0, 0 6px 12px -8px rgba(15, 23, 42, 0.18);
	}

	#painel-extrato-conferencia .extrato-table.sigma-modern-table thead th:first-child {
		border-top-left-radius: 12px;
	}

	#painel-extrato-conferencia .extrato-table.sigma-modern-table thead th:last-child {
		border-top-right-radius: 12px;
	}
}

#painel-extrato-conferencia .extrato-conf-item {
	background: var(--sigma-elev, #fff);
	border: 1px solid var(--sigma-line, #e2e8f0);
	border-radius: 14px;
	padding: 12px;
}

#painel-extrato-conferencia .extrato-conf-item-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}

#painel-extrato-conferencia .extrato-conf-item-nome {
	font-size: 0.92rem;
	font-weight: 700;
	color: var(--sigma-ink, #0f172a);
	line-height: 1.3;
	min-width: 0;
	flex: 1;
}

#painel-extrato-conferencia .extrato-conf-item-actions {
	flex-shrink: 0;
}

#painel-extrato-conferencia .extrato-btn-reportar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 6px 10px;
	font-size: 0.76rem;
	white-space: nowrap;
	background: #fffbeb;
	border: 1px solid #fde68a;
	color: #b45309;
}

#painel-extrato-conferencia .extrato-btn-reportar:hover:not(:disabled) {
	background: #fef3c7;
	border-color: #fbbf24;
}

#painel-extrato-conferencia .extrato-btn-reportar:disabled {
	opacity: 0.65;
	cursor: not-allowed;
	background: #f8fafc;
	border-color: #e2e8f0;
	color: #64748b;
}

#painel-extrato-conferencia .extrato-conf-item-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 6px;
}

#painel-extrato-conferencia .extrato-linha-meta-chip {
	font-size: 0.7rem;
	font-weight: 600;
	color: var(--sigma-muted, #64748b);
	background: var(--sigma-chip-bg, #f8fafc);
	border: 1px solid var(--sigma-line, #e2e8f0);
	border-radius: 6px;
	padding: 2px 7px;
}

#painel-extrato-conferencia .extrato-linha-meta-chip.is-tomb {
	background: rgba(128, 0, 32, 0.06);
	color: #800020;
	border-color: rgba(128, 0, 32, 0.2);
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	gap: 3px;
}

#painel-extrato-conferencia .extrato-conf-item-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 8px;
}

#painel-extrato-conferencia .extrato-badge-rx {
	display: inline-flex;
	align-items: center;
	font-size: 0.7rem;
	font-weight: 800;
	border-radius: 6px;
	padding: 3px 8px;
	letter-spacing: 0.01em;
	border: 1px solid transparent;
	font-family: inherit;
	line-height: 1.2;
}

#painel-extrato-conferencia .extrato-badge-rx.is-sa {
	background: #ecfdf5;
	color: #15803d;
	border-color: #a7f3d0;
}

#painel-extrato-conferencia .extrato-badge-rx.is-ca {
	background: #fef2f2;
	color: #b91c1c;
	border-color: #fecaca;
}

#painel-extrato-conferencia .extrato-badge-servico {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.7rem;
	font-weight: 700;
	background: #fffbeb;
	color: #b45309;
	border: 1px solid #fde68a;
	border-radius: 6px;
	padding: 3px 8px;
	font-family: inherit;
	line-height: 1.2;
}

#painel-extrato-conferencia .extrato-badge-rx.is-clickable,
#painel-extrato-conferencia .extrato-badge-servico.is-clickable {
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

#painel-extrato-conferencia .extrato-badge-rx.is-clickable:active,
#painel-extrato-conferencia .extrato-badge-servico.is-clickable:active {
	transform: scale(0.96);
}

#painel-extrato-conferencia .extrato-badge-rx.is-clickable:hover {
	box-shadow: 0 0 0 2px rgba(185, 28, 28, 0.18);
}

#painel-extrato-conferencia .extrato-badge-servico.is-clickable:hover {
	box-shadow: 0 0 0 2px rgba(180, 83, 9, 0.18);
}

.extrato-pend-swal {
	border-radius: 16px !important;
}

.extrato-pend-modal {
	text-align: left;
	max-height: 70vh;
	overflow-y: auto;
	padding: 2px 2px 8px;
}

.extrato-pend-item-nome {
	font-weight: 800;
	color: #0f172a;
	margin-bottom: 12px;
	font-size: 0.95rem;
}

.extrato-pend-card {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 12px;
	margin-bottom: 10px;
}

.extrato-pend-card-head {
	display: flex;
	justify-content: space-between;
	gap: 8px;
	align-items: center;
	margin-bottom: 8px;
}

.extrato-pend-card-head strong {
	font-size: 0.82rem;
	color: #334155;
}

.extrato-pend-card-head span {
	font-size: 0.68rem;
	font-weight: 800;
	color: #b45309;
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 999px;
	padding: 2px 8px;
}

.extrato-pend-motivo {
	margin: 0 0 8px;
	font-size: 0.88rem;
	color: #0f172a;
	line-height: 1.4;
}

.extrato-pend-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 0.72rem;
	color: #64748b;
	font-weight: 600;
	margin-bottom: 8px;
}

.extrato-pend-meta span {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.extrato-pend-fotos {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.extrato-pend-foto {
	width: 64px;
	height: 64px;
	border-radius: 8px;
	overflow: hidden;
	border: 2px solid #e2e8f0;
	padding: 0;
	cursor: pointer;
	background: #fff;
}

.extrato-pend-foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.extrato-pend-sem-foto {
	margin: 0;
	font-size: 0.75rem;
	color: #94a3b8;
	display: flex;
	align-items: center;
	gap: 6px;
}

#painel-extrato-conferencia .extrato-conf-empty {
	text-align: center;
	padding: 36px 16px;
	color: #64748b;
}

#painel-extrato-conferencia .extrato-conf-empty i {
	font-size: 1.8rem;
	color: #94a3b8;
	display: block;
	margin-bottom: 8px;
}

#painel-extrato-conferencia .extrato-conf-filhos {
	margin-top: 10px;
	padding: 8px 0 0 10px;
	border-left: 2px solid var(--sigma-line, #cbd5e1);
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#painel-extrato-conferencia .extrato-conf-filho-main {
	display: flex;
	align-items: flex-start;
	gap: 6px;
}

#painel-extrato-conferencia .extrato-conf-filho-caret {
	color: #94a3b8;
	margin-top: 3px;
	flex-shrink: 0;
}

#painel-extrato-conferencia .extrato-conf-filho-text {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

#painel-extrato-conferencia .extrato-conf-filho-text strong {
	font-size: 0.82rem;
	font-weight: 650;
	color: var(--sigma-ink, #475569);
	line-height: 1.3;
}

#painel-extrato-conferencia .extrato-conf-filho-side {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 4px;
	flex-shrink: 0;
}

#painel-extrato-conferencia .extrato-conf-filho .extrato-btn-reportar {
	padding: 4px 8px;
	font-size: 0.7rem;
}

#painel-extrato-conferencia .extrato-conf-topo-wrap {
	text-align: center;
	margin: 18px 0 28px;
}

#painel-extrato-conferencia .extrato-conf-btn-topo {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #f8fafc;
	color: #475569;
	border: 1px solid #cbd5e1;
	padding: 12px 22px;
	border-radius: 30px;
	font-weight: 800;
	font-size: 0.85rem;
	cursor: pointer;
	box-shadow: 0 4px 6px rgba(0,0,0,0.05);
}

#painel-extrato-conferencia .extrato-conf-btn-topo:hover {
	background: #e2e8f0;
	color: #1e293b;
}

/* FAB flutuante removido — só o botão inline da lista */

#painel-reporte-servico {
	display: none;
	flex-direction: column;
	background: #f8fafc;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow-x: hidden;
}

#painel-reporte-servico .prep-inner-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	overflow-x: hidden;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

#painel-reporte-servico .prep-title-section {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 4px 0 18px 0 !important;
	margin: 0 0 8px 0 !important;
	border-radius: 0 !important;
	align-items: center;
	gap: 14px;
}

#painel-reporte-servico .prep-title-section .title-wrapper {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
}

#painel-reporte-servico .prep-title-icon {
	background: #fffbeb;
	color: #b45309;
	border-color: #fde68a;
}

#painel-reporte-servico .prep-title-icon i {
	font-size: 1.6rem;
}

#painel-reporte-servico .prep-title-text .sigma-v3-title-label,
#painel-reporte-servico .prep-title-text h2 {
	margin: 0;
	font-size: 1.45rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
}

#painel-reporte-servico .prep-title-text .sigma-v3-description,
#painel-reporte-servico .prep-title-text p {
	margin: 4px 0 0;
}

#painel-reporte-servico .extrato-reporte-stack {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 0 0 28px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow-x: hidden;
}

#painel-reporte-servico .sigma-v3-clean-card {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

#painel-reporte-servico .extrato-reporte-mat-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	min-width: 0;
}

#painel-reporte-servico .extrato-reporte-mat-card .extrato-badge-rx {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	width: auto;
	max-width: 100%;
	flex-wrap: nowrap;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	border-radius: 6px;
	padding: 3px 8px;
	border: 1px solid transparent;
	font-family: inherit;
	line-height: 1.2;
}

#painel-reporte-servico .extrato-reporte-mat-card .extrato-badge-rx.is-sa {
	background: #ecfdf5;
	color: #15803d;
	border-color: #a7f3d0;
}

#painel-reporte-servico .extrato-reporte-mat-card .extrato-badge-rx.is-ca {
	background: #fef2f2;
	color: #b91c1c;
	border-color: #fecaca;
}

#painel-reporte-servico .extrato-reporte-mat-card strong {
	font-size: 1rem;
	color: #0f172a;
	word-break: break-word;
}

#painel-reporte-servico .extrato-reporte-mat-card span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.82rem;
	color: #64748b;
	min-width: 0;
	flex-wrap: wrap;
}

#painel-reporte-servico .btn-trug-enviar-reporte {
	background: #f59e0b;
	border-color: #d97706;
	color: #fff;
}

#painel-reporte-servico .btn-trug-enviar-reporte:hover:not(:disabled) {
	background: #d97706;
}

#painel-reporte-servico #extrato-reporte-wrap-uid[hidden] {
	display: none !important;
}

#painel-reporte-servico .extrato-reporte-uid-hint {
	display: block;
	margin-top: 6px;
	font-size: 0.72rem;
	color: #64748b;
}

#painel-reporte-servico .extrato-reporte-fotos-box {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#painel-reporte-servico .extrato-reporte-fotos-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 600;
}

#painel-reporte-servico .extrato-reporte-fotos-head strong {
	color: #b45309;
	font-weight: 800;
}

#painel-reporte-servico .extrato-reporte-fotos-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	align-self: flex-start;
	background: #fffbeb;
	border: 1px dashed #fbbf24;
	color: #b45309;
	font-weight: 700;
	font-size: 0.85rem;
	padding: 10px 14px;
	border-radius: 10px;
	cursor: pointer;
}

#painel-reporte-servico .extrato-reporte-fotos-preview {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

#painel-reporte-servico .extrato-reporte-foto-thumb {
	position: relative;
	width: 72px;
	height: 72px;
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid #e2e8f0;
	background: #f8fafc;
}

#painel-reporte-servico .extrato-reporte-foto-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

#painel-reporte-servico .extrato-reporte-foto-x {
	position: absolute;
	top: 4px;
	right: 4px;
	width: 22px;
	height: 22px;
	border: none;
	border-radius: 50%;
	background: rgba(185, 28, 28, 0.95);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	font-size: 0.75rem;
}

@media (min-width: 900px) {
	#painel-extrato-conferencia .extrato-conf-toolbar {
		flex-direction: row;
		align-items: center;
	}

	#painel-extrato-conferencia .extrato-conf-search {
		flex: 1;
		min-width: 220px;
	}

	#painel-extrato-conferencia .extrato-conf-chips {
		flex-wrap: wrap;
		overflow: visible;
	}

	#painel-extrato-conferencia .extrato-conf-item-top {
		align-items: center;
	}
}

@media (max-width: 768px) {
	#view-my-history.extrato-aberto #painel-reporte-servico,
	#view-my-history.reporte-servico-aberto #painel-reporte-servico,
	#view-my-history.extrato-aberto #painel-reporte-servico.sigma-prep-view {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 0 !important;
		height: auto !important;
		padding: 12px 12px calc(var(--mobile-bottom-nav-clearance, 96px) + 28px) 12px !important;
		margin: 0 !important;
		box-sizing: border-box !important;
		z-index: 106 !important;
		overflow-x: hidden !important;
	}

	#view-my-history.reporte-servico-aberto {
		overflow-x: hidden !important;
	}

	#painel-reporte-servico .prep-title-section {
		gap: 10px !important;
		margin-bottom: 12px !important;
		max-width: 100%;
	}

	#painel-reporte-servico .prep-title-text h2,
	#painel-reporte-servico .prep-title-text .sigma-v3-title-label {
		font-size: 1.2rem !important;
		line-height: 1.3 !important;
	}

	#painel-reporte-servico .prep-title-text p {
		font-size: 0.78rem !important;
	}

	#painel-reporte-servico .extrato-reporte-actions-pc {
		display: none !important;
	}

	#painel-extrato-conferencia .extrato-conf-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#painel-extrato-conferencia .extrato-btn-reportar .btn-item-reportar-label {
		display: none;
	}

	#painel-extrato-conferencia .extrato-btn-reportar {
		padding: 8px 10px;
	}

	#painel-extrato-conferencia .extrato-btn-reportar i {
		font-size: 1.05rem;
	}

	#painel-extrato-conferencia .extrato-btn-reportar:disabled {
		opacity: 0.55;
		filter: grayscale(0.35);
	}
}

/*================= >>FIM<< [TIMELINE DE AUDITORIA (HISTÓRICO DE VIDA)]======================= */

/* No computador/telas grandes, as colunas ficam lado a lado */

@media (min-width: 769px) {
	/* =========================================================================
   🖥️ SIDEBAR DESKTOP - MINI-VARIANT (EXPANDE COM HOVER)
   ========================================================================= */
    
    /* 1. Contêiner Mestre Seco (52px Fechado -> 210px Aberto) */
    #main-sidebar {
        width: 52px !important; /* 🔥 Ultra minimalista e seco */
        height: calc(100dvh - 60px) !important;
        max-height: calc(100dvh - 60px) !important;
        position: fixed !important;
        left: 0 !important;
        top: 60px !important;
        background: var(--bg-card-clean, #ffffff) !important;
        border-right: 1px solid #e2e8f0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 4px !important;
        padding: 10px 6px 8px !important;
        z-index: 999 !important;
        overflow-x: hidden !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
        transition: width 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s ease !important;
    }

    #main-sidebar:hover,
    #main-sidebar.sigma-sidebar-open {
        width: 240px !important;
        overflow-x: visible !important;
        box-shadow: 12px 0 25px -5px rgba(0, 0, 0, 0.06) !important;
    }

    #main-sidebar:hover .sidebar-nav-scroll,
    #main-sidebar.sigma-sidebar-open .sidebar-nav-scroll {
        overflow-x: visible !important;
    }

    /* 2. Botões com Geometria Exata (Fim do espaço branco sobrando!) */
    #main-sidebar a {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 12px !important;
        padding: 0 !important; /* 🔥 Zero padding interno no link */
        height: 40px !important;
        max-height: 40px !important;
        width: 100% !important;
        border-radius: 8px !important;
        color: #475569 !important;
        font-weight: 600 !important;
        font-size: 0.85rem !important;
        text-decoration: none !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        position: relative !important;
        box-sizing: border-box !important;
        margin: 0 !important;
    }

    /* 3. Ícone Travado em um Quadrado Exato de 40x40px (Centro perfeito!) */
    #main-sidebar a i:not(.submenu-arrow) {
        font-size: 1.25rem !important;
        width: 40px !important; /* 🔥 Largura idêntica à altura do botão */
        min-width: 40px !important;
        height: 40px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        color: #64748b !important;
        margin: 0 !important;
        transition: color 0.2s ease, transform 0.2s ease !important;
    }

    #main-sidebar .em-curso-nav-icon {
        width: 40px !important;
        min-width: 40px !important;
        height: 40px !important;
        flex-shrink: 0 !important;
        overflow: visible;
    }

    #main-sidebar .em-curso-nav-dot {
        top: 7px;
        right: 7px;
        width: 7px;
        height: 7px;
        box-shadow: 0 0 0 2px var(--bg-card-clean, #ffffff);
    }

    /* 4. Texto Deslizando Suave à Direita */
    #main-sidebar a span {
        display: inline-block !important;
        opacity: 0 !important;
        transform: translateX(-8px) !important;
        transition: opacity 0.2s ease, transform 0.2s ease !important;
        line-height: 1 !important;
        margin: 0 !important;
    }

    #main-sidebar:hover a span,
    #main-sidebar.sigma-sidebar-open a span {
        opacity: 1 !important;
        transform: translateX(0) !important;
    }

    /* 5. Seta do Submenu */
    #main-sidebar .submenu-arrow {
        opacity: 0 !important;
        transition: transform 0.2s ease, opacity 0.2s ease !important;
        margin-left: auto !important;
        margin-right: 12px !important;
        font-size: 0.75rem !important;
        color: #94a3b8 !important;
    }

    #main-sidebar:hover .submenu-arrow,
    #main-sidebar.sigma-sidebar-open .submenu-arrow {
        opacity: 1 !important;
    }

    /* 6. Efeitos de Hover e Link Ativo */
    #main-sidebar a:hover {
        background: #f1f5f9 !important;
        color: #0f172a !important;
    }

    #main-sidebar a:hover i:not(.submenu-arrow) {
        color: #2563eb !important;
        transform: scale(1.08) !important;
    }

    #main-sidebar a.active {
        background: #eff6ff !important;
        color: #2563eb !important;
        font-weight: 700 !important;
    }

    #main-sidebar a.active i:not(.submenu-arrow) {
        color: #2563eb !important;
    }

    #main-sidebar .sidebar-user.active .sidebar-user-main {
        background: #eff6ff;
        border-radius: 10px;
    }

    #main-sidebar .sidebar-user.active .sidebar-user-meta strong {
        color: #2563eb;
    }

    #main-sidebar .sidebar-user.active .sidebar-user-avatar {
        box-shadow: 0 0 0 2px #2563eb;
        border-color: #2563eb;
    }

    #main-sidebar:hover .sidebar-user,
    #main-sidebar.sigma-sidebar-open .sidebar-user {
        align-items: stretch;
        padding: 8px 2px 0;
    }

    #main-sidebar:hover .sidebar-user-main,
    #main-sidebar.sigma-sidebar-open .sidebar-user-main {
        flex-direction: row;
        align-items: center;
        gap: 8px;
        justify-content: flex-start;
    }

    #main-sidebar:hover .sidebar-user-meta,
    #main-sidebar.sigma-sidebar-open .sidebar-user-meta {
        align-items: flex-start;
        flex: 1;
        min-width: 0;
    }

    #main-sidebar:hover .sidebar-user-meta strong,
    #main-sidebar.sigma-sidebar-open .sidebar-user-meta strong {
        display: block;
    }

    #main-sidebar:hover .sidebar-user-badge::after,
    #main-sidebar.sigma-sidebar-open .sidebar-user-badge::after {
        content: attr(data-full);
    }

    #main-sidebar:hover .sidebar-user-logout,
    #main-sidebar.sigma-sidebar-open .sidebar-user-logout {
        display: inline-flex;
    }

    .header-mobile-only,
    .user-profile-header.header-mobile-only {
        display: none !important;
    }

/* =========================================================================
   ✨ SUBMENU TRUG DEFINITIVO: RÉGUA EXPOSTA + GEOMETRIA BLINDADA (52PX)
   ========================================================================= */

/* --- 1. ESTRUTURA GERAL DO SUBMENU (MODO EXPANDIDO) --- */
#main-sidebar .sigma-v3-menu-group {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

#main-sidebar .sigma-v3-submenu {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    border-left: 2px solid #e2e8f0 !important; /* 🔥 A famosa Régua Prata */
    margin: 2px 0 4px 18px !important;
    padding: 0 0 0 6px !important;
    display: none !important; /* Nasce fechado por padrão */
    flex-direction: column !important;
    gap: 2px !important;
    width: calc(100% - 18px) !important;
    box-sizing: border-box !important;
}

#main-sidebar .sigma-v3-submenu a {
    height: 36px !important;
    max-height: 36px !important;
    font-size: 0.8rem !important;
    background: transparent !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

#main-sidebar .sigma-v3-submenu a:hover {
    background: #f8fafc !important;
    color: #2563eb !important;
}

#main-sidebar .sigma-v3-submenu a i:not(.submenu-arrow) {
    width: 34px !important;
    min-width: 34px !important;
    height: 36px !important;
    font-size: 1.1rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

/* --- 2. INTELIGÊNCIA DE NAVEGAÇÃO E HERANÇA VISUAL (:has) --- */

/* Destaque do Pai (TRUG): Fica azul se tiver um filho ativo */
#main-sidebar .sigma-v3-menu-group:has(a.active) .sigma-v3-dropdown-btn {
    background: #eff6ff !important;
    color: #2563eb !important;
    font-weight: 700 !important;
}

#main-sidebar .sigma-v3-menu-group:has(a.active) .sigma-v3-dropdown-btn i:not(.submenu-arrow) {
    color: #2563eb !important;
}

/* Destaque do Filho Ativo (Quando o menu está aberto) */
#main-sidebar .sigma-v3-submenu a.active {
    background: #eff6ff !important;
    color: #2563eb !important;
    font-weight: 700 !important;
    padding-left: 10px !important; /* Recuo elegante na leitura */
}

#main-sidebar .sigma-v3-submenu a.active i:not(.submenu-arrow) {
    color: #2563eb !important;
    transform: scale(1.08) !important;
}

#main-sidebar:hover .sigma-v3-submenu:has(a.active),
#main-sidebar.sigma-sidebar-open .sigma-v3-submenu:has(a.active) {
    display: flex !important;
}

/* --- 3. 🛡️ COMPORTAMENTO RECOLHIDO (52PX): RÉGUA EXPOSTA + PÍLULA SIMÉTRICA --- */

/* Se a barra fechar, esconde APENAS os submenus que NÃO têm o item selecionado! */
#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu:not(:has(a.active)) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 🔥 A RÉGUA PERMANECE ACESA: recuo + linha prata, cabendo nos 52px */
#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu:has(a.active) {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    margin: 2px 0 4px 14px !important;
    padding: 0 0 0 4px !important;
    width: calc(100% - 14px) !important;
    max-width: calc(100% - 14px) !important;
    align-items: flex-start !important;
    border-left: 2px solid #e2e8f0 !important;
    box-sizing: border-box !important;
}

/* 🔥 O CULPADO DO PRINT DESLIGADO: Desativa o texto (span) no modo recolhido para não empurrar o ícone! */
#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu a span {
    display: none !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
}

/* Ícones do filho alinhados à régua (sem centralizar na trilha) */
#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu a {
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    height: 32px !important;
    max-height: 32px !important;
    padding: 0 !important;
    margin: 2px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

/* Centraliza o ícone perfeitamente dentro dos 26px */
#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu a i:not(.submenu-arrow) {
    width: 100% !important;
    min-width: 100% !important;
    margin: 0 !important;
    font-size: 1.1rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Pílula ativa 100% contida, simétrica e alinhada à linha prata */
#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu a.active {
    width: 20px !important;
    padding: 0 !important;
    background: #eff6ff !important;
    color: #2563eb !important;
}

#main-sidebar:not(:hover):not(.sigma-sidebar-open) .sigma-v3-submenu a:hover {
    background: #f8fafc !important;
    color: #2563eb !important;
}

/* Tablet/toque: hover-fantasma do iPad não deve abrir a barra */
body.sigma-sidebar-touch #main-sidebar:hover:not(.sigma-sidebar-open) {
    width: 52px !important;
    overflow-x: hidden !important;
    box-shadow: none !important;
}
body.sigma-sidebar-touch #main-sidebar:hover:not(.sigma-sidebar-open) a span,
body.sigma-sidebar-touch #main-sidebar:hover:not(.sigma-sidebar-open) .submenu-arrow {
    opacity: 0 !important;
    transform: translateX(-8px) !important;
}

	/* === FIM DO SIDEBAR === */

	#cards-container {
		flex-direction: row !important;
		align-items: flex-start !important;
	}

	.v4-group-section {
		flex: 1;
		min-width: 0;
	}

	/* 1. DOUTRINA DESKTOP (PC): A gaveta não existe, some com ela! */
	#detalhes-drawer {
		display: none !important;
	}

	/* MATA o FAB Global no PC, pois o PC tem espaço para os botões no topo */
	#fab-global-container,
	#fab-global-options,
	#btn-fab-principal,
	.v3-fab-main {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.mobile-bottom-nav {
		display: none !important;
	}

	.header-brand-mobile {
		display: none !important;
		/* No PC exibe o padrão centralizado */
	}

	/* 🛡️ TRAVA DE SEGURANÇA: Proíbe hubs mobile no PC (Telas > 768px) */
	#view-menu-geral,
	#view-trug-hub {
        display: none !important;
    }
}

/* =============================================================================
   14-TEMA · Tema — modo noturno e preferências de cor
   ============================================================================= */

html.modo-noturno-ativo .text-white {
	color: #f8fafc !important;
}

html.modo-noturno-ativo .user-info-text strong,
html.modo-noturno-ativo #user-name-top {
	color: #f8fafc !important;
}

html.modo-noturno-ativo .user-info-text small,
html.modo-noturno-ativo #user-role-top {
	color: #94a3b8 !important;
}

.dropdown-tema-block {
	padding: 8px 12px 10px;
}

.dropdown-tema-label {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 4px 4px 8px;
	color: #64748b;
	font-size: 0.8rem;
	font-weight: 600;
}

.dropdown-tema-label i {
	font-size: 1rem;
	color: #475569;
	width: 20px;
	text-align: center;
}

.dropdown-tema-opcoes {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 6px;
}

.dropdown-tema-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 8px 4px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
	color: #475569;
	cursor: pointer;
	font-size: 0.7rem;
	font-weight: 600;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.dropdown-tema-btn i {
	font-size: 1.05rem;
	color: inherit;
}

.dropdown-tema-btn:hover {
	background: #fff;
	border-color: #cbd5e1;
	color: #0f172a;
}

.dropdown-tema-btn.is-active {
	background: #fff;
	border-color: #800020;
	color: #800020;
	box-shadow: 0 0 0 1px rgba(128, 0, 32, 0.12);
}

/* Cores Temáticas dos Grupos */

.tema-almox i {
	color: #f59e0b;
}

.tema-frota i {
	color: #000000;
}

/* =========================================================================
   🌙 MODO DARK — paleta nativa (css/sigma-dark.css). Invert desativado.
   ========================================================================= */

html.modo-noturno-ativo {
	color-scheme: dark;
}

html.modo-noturno-ativo #sigma-app-invertible {
	filter: none !important;
	transition: none !important;
}

html.modo-noturno-ativo .sigma-prep-view,
html.modo-noturno-ativo .sigma-prep-view[style*="display: block"],
html.modo-noturno-ativo .sigma-prep-view[style*="display:block"] {
	animation: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	-webkit-transform: none !important;
	z-index: 200 !important;
}

html.modo-noturno-ativo #grid-postos-tela2,
html.modo-noturno-ativo #grid-listas-tela2,
html.modo-noturno-ativo .card-opcao-tela2,
html.modo-noturno-ativo .card-lista-tela2 {
	opacity: 1 !important;
	visibility: visible !important;
}

html.modo-noturno-ativo #sigma-app-invertible img,
html.modo-noturno-ativo #sigma-app-invertible video,
html.modo-noturno-ativo #sigma-app-invertible iframe,
html.modo-noturno-ativo #sigma-app-invertible canvas,
html.modo-noturno-ativo #sigma-app-invertible .ignorar-dark,
html.modo-noturno-ativo #sigma-chrome-layer img,
html.modo-noturno-ativo #sigma-chrome-layer .user-avatar-img,
html.modo-noturno-ativo #user-avatar-top {
	filter: none !important;
}

/* Chrome nativo no escuro (não passa pelo invert) */

html.modo-noturno-ativo #sigma-chrome-layer .main-header {
	background: #000000 !important;
	border-bottom-color: #1e293b !important;
	box-shadow: none !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .brand-text-sigma,
html.modo-noturno-ativo #sigma-chrome-layer .header-brand-mobile .brand-text-sigma,
html.modo-noturno-ativo #sigma-chrome-layer .header-center-mobile span,
html.modo-noturno-ativo #sigma-chrome-layer .header-center-unified span,
html.modo-noturno-ativo #sigma-chrome-layer .header-center-unified .text-white {
	color: #f8fafc !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .mobile-bottom-nav .nav-items-container {
	background: #111111 !important;
	box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.45) !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .mobile-bottom-nav .nav-item {
	color: #64748b !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .mobile-bottom-nav .nav-item.active {
	color: #ffffff !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .mobile-bottom-nav .nav-fab-btn {
	background: #ffffff !important;
	color: #334155 !important;
	box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.35) !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .mobile-bottom-nav .nav-fab-icon {
	color: #111111 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .mobile-bottom-nav .nav-fab-btn span {
	color: #334155 !important;
}

/* Dropdown do perfil no chrome: tema escuro nativo (não passa pelo invert) */

html.modo-noturno-ativo #sigma-chrome-layer .profile-dropdown {
	background: #111827 !important;
	border-color: #334155 !important;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.55) !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item {
	color: #e2e8f0 !important;
	background: transparent !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item i {
	color: #cbd5e1 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item:focus,
html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item:focus-visible,
html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item:active {
	background: transparent !important;
}

@media (hover: hover) and (pointer: fine) {
	html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item:hover:not(.logout) {
		background: #1e293b !important;
	}
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item.logout {
	color: #f87171 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item.logout i {
	color: #f87171 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-item.logout:hover {
	background: rgba(248, 113, 113, 0.12) !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-divider {
	border-top-color: #334155 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-tema-label {
	color: #94a3b8 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-tema-label i {
	color: #94a3b8 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-tema-btn {
	background: #0f172a !important;
	border-color: #334155 !important;
	color: #cbd5e1 !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-tema-btn:hover {
	background: #1e293b !important;
	color: #f8fafc !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .dropdown-tema-btn.is-active {
	background: #1e293b !important;
	border-color: #64748b !important;
	color: #e2e8f0 !important;
	box-shadow: 0 0 0 1px rgba(148, 163, 184, 0.2);
}

html.modo-noturno-ativo #sigma-chrome-layer .header-tema-group .dropdown-tema-btn {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

html.modo-noturno-ativo #sigma-chrome-layer .header-tema-group .dropdown-tema-btn.is-active {
	background: #1e293b !important;
	color: #f8fafc !important;
}

/* =========================================================================
   ☀️ DESTAQUE DO BOTÃO DE MODO NOTURNO (QUANDO ESCURO)
   ========================================================================= */

html.modo-noturno-ativo #btn-dark-toggle,
body.modo-noturno-ativo #btn-dark-toggle {
	background: #334155 !important;
	border-color: #64748b !important;
	box-shadow: 0 0 10px rgba(234, 179, 8, 0.15) !important;
}

html.modo-noturno-ativo #btn-dark-toggle i,
body.modo-noturno-ativo #btn-dark-toggle i {
	color: #facc15 !important;
}

/* ==========================================================================
   📱 OVERRIDE DE ALTO COMANDO: CORREÇÕES DEFINITIVAS MOBILE (ATÉ 1024px)
   ========================================================================== */

@media (max-width: 768px) {

	/* Shell mobile: fundo contínuo até o fim (Safari não pode ter html transparente) */
	html {
		min-height: 100%;
		min-height: 100dvh;
		min-height: -webkit-fill-available;
		height: auto;
		background: var(--sigma-page-grad, #f5f6f8) !important;
		background-color: var(--sigma-page-bg, #f5f6f8) !important;
	}

	html:not(.modo-noturno-ativo) {
		color-scheme: light;
		background: var(--sigma-page-grad, #f5f6f8) !important;
		background-color: var(--sigma-page-bg, #f5f6f8) !important;
	}

	body {
		display: block !important;
		min-height: 100%;
		min-height: -webkit-fill-available;
		height: auto;
		margin: 0 !important;
		padding-top: calc(75px + env(safe-area-inset-top, 0px)) !important;
		padding-bottom: var(--sigma-safe-bottom, 0px) !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-y: none;
		background: var(--sigma-page-grad, #f5f6f8) !important;
		background-color: var(--sigma-page-bg, #f5f6f8) !important;
	}

	html:not(.modo-noturno-ativo) body {
		background: var(--sigma-page-grad, #f5f6f8) !important;
		background-color: var(--sigma-page-bg, #f5f6f8) !important;
	}

	html.modo-noturno-ativo {
		background-color: #10141c !important;
		background: #10141c !important;
		color-scheme: dark;
	}

	html.modo-noturno-ativo body {
		background: #10141c !important;
		background-color: #10141c !important;
	}

	#sigma-app-invertible {
		background: transparent !important;
		min-height: 100% !important;
	}

	#sigma-chrome-layer {
		position: fixed !important;
		inset: 0 !important;
		width: auto !important;
		height: auto !important;
		max-height: none !important;
		z-index: 2500 !important;
		pointer-events: none !important;
		filter: none !important;
		background: transparent !important;
	}

	.content {
		display: block !important;
		min-height: auto !important;
		height: auto !important;
		flex: none !important;
		margin-left: 0 !important;
		margin-top: 0 !important;
		width: 100% !important;
		max-width: 100vw !important;
		box-sizing: border-box;
		background-color: transparent !important;
		padding: 8px 15px var(--mobile-bottom-nav-clearance) 15px !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
	}

	.content::after {
		display: none !important;
	}

	#dashboard-content-by-role.split-view,
	#dashboard-content-by-role.split-view .dashboard-master-column,
	#dashboard-content-by-role.split-view .dashboard-detail-column {
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}

	#dashboard-content-by-role.split-view .dashboard-master-column,
	#dashboard-content-by-role.split-view .dashboard-detail-column {
		overflow-y: visible !important;
	}

	.header-center-unified {
		display: none !important;
	}

	.header-pc-only,
	.header-tema-group,
	.header-acao-wrap,
	.sidebar-user {
		display: none !important;
	}

	.header-mobile-only,
	.user-profile-header.header-mobile-only {
		display: flex !important;
	}

	/* 0. LIMPEZA DE ÁREA (Esconde exclusividades de PC) */
	.desktop-only,
	.user-info-text {
		display: none !important;
	}

	#sigma-chrome-layer .main-header,
	.main-header {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		z-index: 2 !important;
		height: calc(75px + env(safe-area-inset-top, 0px)) !important;
		min-height: calc(75px + env(safe-area-inset-top, 0px)) !important;
		padding: env(safe-area-inset-top, 0px) 20px 0 20px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		box-sizing: border-box !important;
		filter: none !important;
	}

	/* 3. Layout Mobile: Ícone maior que o nome à esquerda */
	.header-brand-mobile {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	/* Chrome TRUG no header SIGMA — removido (voltar/PDF ficam no título da seção) */
	.btn-chrome-trug {
		display: none !important;
	}

	/* Voltar ao lado do ícone do título (Ativos / Receber / Histórico / Detalhe / Gestão) */
	.btn-voltar-trug-secao,
	.btn-voltar-gestao-secao {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: auto;
		height: auto;
		min-width: 28px;
		padding: 2px 4px 2px 0;
		margin: 0;
		border: none;
		background: transparent;
		color: #0f172a;
		cursor: pointer;
		-webkit-tap-highlight-color: transparent;
	}

	.btn-voltar-trug-secao i,
	.btn-voltar-gestao-secao i {
		font-size: 1.45rem;
		line-height: 1;
	}

	.btn-voltar-trug-secao:active,
	.btn-voltar-gestao-secao:active {
		opacity: 0.65;
		transform: scale(0.92);
	}

	.trug-section-header .title-wrapper,
	.gestao-modulo-header .title-wrapper,
	.gestao-modulo-title {
		display: flex !important;
		align-items: center !important;
		gap: 10px !important;
	}

	/* Módulo da Central de Gestão: menu inferior some */
	body.gestao-modulo-aberto #sigma-chrome-layer .mobile-bottom-nav,
	body.gestao-modulo-aberto .mobile-bottom-nav {
		display: none !important;
	}

	body.gestao-modulo-aberto .content {
		padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
	}

	/* Detalhe: < TRUG-XXX ........ [PDF] */
	.trug-detalhe-title-row {
		display: flex;
		align-items: center;
		gap: 8px;
		width: 100%;
	}

	.trug-detalhe-titulo {
		display: flex !important;
		align-items: center;
		gap: 8px;
		flex: 1 1 auto;
		min-width: 0;
		margin: 0 !important;
	}

	.trug-detalhe-titulo #cautela-detalhes-id {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.btn-pdf-trug-secao {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 38px;
		height: 38px;
		border-radius: 10px;
		border: 1px solid #fecaca;
		background: #fef2f2;
		color: #b91c1c;
		cursor: pointer;
		-webkit-tap-highlight-color: transparent;
	}

	.btn-pdf-trug-secao i {
		font-size: 1.25rem;
		line-height: 1;
	}

	.btn-pdf-trug-secao:active {
		transform: scale(0.92);
		opacity: 0.85;
	}

	/* Tabela TRUG some no mobile — cards assumem */
	#view-cautelas .sigma-modern-table-wrapper {
		display: none !important;
	}

	#view-cautelas .sigma-trug-mcards {
		display: flex !important;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		margin-bottom: 12px;
	}

	/* Frota: cabeçalho com Nova Viatura à direita do título */
	#view-vtr-bases .frota-modulo-header {
		margin-bottom: 16px !important;
		padding: 0 0 16px 0 !important;
		border-bottom: 1px solid rgba(148, 163, 184, 0.22);
	}

	#view-vtr-bases .frota-title-text .sigma-v3-description {
		margin: 6px 0 0 0 !important;
		line-height: 1.35;
	}

	#view-vtr-bases .frota-title-row {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#view-vtr-bases .frota-title-text {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	#view-vtr-bases .frota-title-text .sigma-v3-title-label {
		font-size: 1.15rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#view-vtr-bases .frota-title-actions {
		display: flex !important;
		align-items: center !important;
		gap: 6px !important;
	}

	#view-vtr-bases .btn-frota-sync,
	#view-vtr-bases .btn-frota-nova {
		flex: 0 0 auto !important;
		width: 40px !important;
		min-width: 40px !important;
		max-width: 40px !important;
		height: 40px !important;
		min-height: 40px !important;
		padding: 0 !important;
		display: inline-flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: center !important;
		border-radius: 12px !important;
		white-space: nowrap !important;
	}

	#view-vtr-bases .btn-frota-sync span,
	#view-vtr-bases .btn-frota-nova span {
		display: none !important;
	}

	#view-vtr-bases .btn-frota-sync i,
	#view-vtr-bases .btn-frota-nova i {
		font-size: 1.15rem !important;
		margin: 0 !important;
		line-height: 1 !important;
	}

	#view-vtr-bases .btn-frota-nova {
		background: #fff1f2 !important;
		background-color: #fff1f2 !important;
		color: #9f1239 !important;
		border: 1px solid #fecdd3 !important;
		box-shadow: none !important;
	}

	#view-vtr-bases .btn-frota-nova i {
		color: #9f1239 !important;
	}

	/* Ficha militar — mobile */
	.usuario-ficha-shell .usuario-ficha-header {
		margin-bottom: 10px !important;
		padding: 0 !important;
	}

	.usuario-ficha-shell .usuario-ficha-title-row {
		gap: 8px !important;
	}

	.usuario-ficha-shell .usuario-ficha-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.usuario-ficha-shell .usuario-ficha-hero {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 1.25rem 1rem;
		gap: 1rem;
	}

	.usuario-ficha-shell .usuario-ficha-foto {
		width: 112px;
		height: 112px;
		border-radius: 20px;
	}

	.usuario-ficha-shell .usuario-ficha-hero-info h2 {
		font-size: 1.25rem;
	}

	.usuario-ficha-shell .usuario-ficha-hero-badges {
		justify-content: center;
	}

	.usuario-ficha-shell .usuario-ficha-grid {
		grid-template-columns: 1fr !important;
	}

	.usuario-ficha-shell .usuario-ficha-actions {
		position: relative;
		bottom: auto;
		margin-top: 0.75rem;
		padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
	}

	/* Meu perfil: Voltar inferior some no mobile (já existe seta no topo) */
	#view-meu-perfil #btn-meu-perfil-voltar {
		display: none !important;
	}

	#view-meu-perfil #meu-perfil-actions:not(.has-salvar) {
		display: none !important;
	}

	#view-meu-perfil #meu-perfil-actions.has-salvar {
		display: flex !important;
	}

	.usuario-ficha-shell .btn-usuario-voltar,
	.usuario-ficha-shell .btn-usuario-salvar,
	.usuario-ficha-shell .btn-usuario-remover {
		flex: 1 1 auto;
		min-width: 0;
		flex-direction: column;
		gap: 2px;
		padding: 10px 8px;
		font-size: 0.7rem;
	}

	/* Usuários — cabeçalho compacto + contador */
	#view-usuarios .usuarios-modulo-header {
		margin-bottom: 10px !important;
		padding: 0 !important;
	}

	#view-usuarios .usuarios-title-row {
		display: flex !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#view-usuarios .usuarios-title-text {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	#view-usuarios .usuarios-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#view-usuarios .usuarios-efetivo-count {
		padding: 5px 10px !important;
		gap: 6px !important;
	}

	#view-usuarios .usuarios-efetivo-count-label {
		display: none;
	}

	#view-usuarios .usuarios-efetivo-count b {
		font-size: 0.9rem !important;
	}

	#view-usuarios .usuarios-table-wrap {
		display: none !important;
	}

	#view-usuarios .usuarios-cards-grid {
		grid-template-columns: 1fr !important;
		gap: 0.85rem !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	#view-usuarios .usuarios-card {
		padding: 14px !important;
		gap: 12px !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}

	#view-usuarios .usuarios-card-body {
		gap: 4px !important;
		min-width: 0 !important;
		overflow: hidden;
	}

	#view-usuarios .usuarios-card-meta {
		flex-wrap: wrap;
		gap: 6px !important;
	}

	#view-usuarios .usuarios-card-unidade {
		max-width: 100%;
		min-width: 0;
	}

	/* Unidades — Nova no canto do cabeçalho (ícone em cima / nome embaixo) */
	#view-unidades .unidades-modulo-header {
		margin-bottom: 14px !important;
		padding: 0 !important;
	}

	#view-unidades .unidades-title-row {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#view-unidades .unidades-title-text {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	#view-unidades .unidades-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#view-unidades .btn-unidades-nova {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		display: inline-flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 2px !important;
		padding: 8px 10px !important;
		min-width: 58px !important;
		min-height: 58px !important;
		border-radius: 12px !important;
		font-size: 0.62rem !important;
		font-weight: 700 !important;
		line-height: 1.1 !important;
		text-align: center !important;
		white-space: normal !important;
		background: #fdf2f4 !important;
		background-color: #fdf2f4 !important;
		color: #800020 !important;
		border: 1px solid #f3c5ce !important;
		box-shadow: none !important;
	}

	#view-unidades .btn-unidades-nova i {
		font-size: 1.3rem !important;
		margin: 0 !important;
		line-height: 1 !important;
		color: #800020 !important;
	}

	#view-unidades .btn-unidades-nova span {
		display: block;
		max-width: 4.5rem;
		color: #800020 !important;
	}

	#view-unidades .unidades-card {
		padding: 16px 14px !important;
		gap: 12px !important;
	}

	#view-unidades .unidades-card-body {
		gap: 5px !important;
	}

	/* Postos — Nova no canto do cabeçalho (ícone em cima / nome embaixo) */
	#view-postos .postos-modulo-header {
		margin-bottom: 14px !important;
		padding: 0 !important;
	}

	#view-postos .postos-title-row {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#view-postos .postos-title-text {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	#view-postos .postos-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#view-postos .btn-postos-nova {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		display: inline-flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 2px !important;
		padding: 8px 10px !important;
		min-width: 58px !important;
		min-height: 58px !important;
		border-radius: 12px !important;
		font-size: 0.62rem !important;
		font-weight: 700 !important;
		line-height: 1.1 !important;
		text-align: center !important;
		white-space: normal !important;
		background: #fdf2f4 !important;
		background-color: #fdf2f4 !important;
		color: #800020 !important;
		border: 1px solid #f3c5ce !important;
		box-shadow: none !important;
	}

	#view-postos .btn-postos-nova i {
		font-size: 1.3rem !important;
		margin: 0 !important;
		line-height: 1 !important;
		color: #800020 !important;
	}

	#view-postos .btn-postos-nova span {
		display: block;
		max-width: 4.5rem;
		color: #800020 !important;
	}

	#view-postos .postos-card {
		padding: 16px 14px !important;
		gap: 12px !important;
	}

	#view-postos .postos-card-body {
		gap: 7px !important;
	}

	/* Listas — Nova no canto do cabeçalho (ícone em cima / nome embaixo) */
	#menu-editor-listas .listas-modulo-header {
		margin-bottom: 14px !important;
		padding: 0 0 14px 0 !important;
	}

	#menu-editor-listas .listas-title-row,
	#view-lista-form .listas-title-row {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#menu-editor-listas .listas-title-text,
	#view-lista-form .listas-title-text {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	#view-lista-form .listas-modulo-header {
		margin-bottom: 14px !important;
		padding: 0 0 14px 0 !important;
	}

	#menu-editor-listas .listas-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#menu-editor-listas .btn-listas-nova {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		display: inline-flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 2px !important;
		padding: 8px 10px !important;
		min-width: 58px !important;
		min-height: 58px !important;
		border-radius: 12px !important;
		font-size: 0.62rem !important;
		font-weight: 700 !important;
		line-height: 1.1 !important;
		text-align: center !important;
		white-space: normal !important;
		background: #fdf2f4 !important;
		background-color: #fdf2f4 !important;
		color: #800020 !important;
		border: 1px solid #f3c5ce !important;
		box-shadow: none !important;
	}

	#menu-editor-listas .btn-listas-nova i {
		font-size: 1.3rem !important;
		margin: 0 !important;
		line-height: 1 !important;
		color: #800020 !important;
	}

	#menu-editor-listas .btn-listas-nova span {
		display: block;
		max-width: 4.5rem;
		color: #800020 !important;
	}

	#menu-editor-listas .listas-filtro-card {
		margin-bottom: 1.5rem !important;
	}

	#menu-editor-listas .listas-secao-titulo {
		margin-bottom: 1rem !important;
	}

	#menu-editor-listas .listas-cards-grid {
		gap: 1rem !important;
	}

	/* Form / detalhe Frota no mobile */
	.frota-form-grid,
	.frota-detalhe-grid-tele,
	.frota-detalhe-meta-grid {
		grid-template-columns: 1fr !important;
	}

	/* Detalhe: botões lado a lado, ícone em cima / nome embaixo */
	#view-vtr-detalhe .frota-detalhe-acoes {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: stretch !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#view-vtr-detalhe .frota-detalhe-acoes .btn-frota-acao {
		flex: 1 1 0 !important;
		width: auto !important;
		min-width: 0 !important;
		display: inline-flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		padding: 10px 6px !important;
		min-height: 68px !important;
		border-radius: 12px !important;
		text-align: center !important;
	}

	#view-vtr-detalhe .frota-detalhe-acoes .btn-frota-acao i {
		font-size: 1.3rem !important;
		margin: 0 !important;
	}

	#view-vtr-detalhe .frota-detalhe-acoes .btn-frota-acao span {
		font-size: 0.65rem !important;
		font-weight: 700 !important;
		line-height: 1.15 !important;
		white-space: normal !important;
	}

	/* Formulário: Cancelar some no mobile (já existe Voltar no topo) */
	#view-vtr-form .btn-frota-cancelar,
	#view-lista-form .btn-lista-form-cancelar,
	#view-unidade-form .btn-unidade-form-cancelar,
	#view-posto-form .btn-posto-form-cancelar {
		display: none !important;
	}

	/* Nova Conferência mobile: Cancelar desnecessário — Voltar no topo */
	#painel-preparacao-conferencia .prep-btn-cancelar {
		display: none !important;
	}

	/* Checklist VTR mobile: Cancelar desnecessário — Voltar no topo */
	#painel-preparacao-checklist .prep-check-btn-cancelar {
		display: none !important;
	}

	/* Reportar Problema mobile: Cancelar some — caret Voltar no topo */
	#painel-reporte-trug .btn-trug-reporte-cancelar {
		display: none !important;
	}

	/* Ficha do militar: Cancelar some no mobile — caret Voltar no topo */
	#view-usuario-ficha #btn-usr-ficha-voltar {
		display: none !important;
	}

	/* Extrato de lista: botão Voltar inferior é só para PC */
	#view-extrato-lista .extrato-lista-voltar-pc {
		display: none !important;
	}

	#painel-reporte-trug .trug-reporte-title-text .sigma-v3-description {
		display: none;
	}

	#painel-reporte-trug .trug-reporte-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#painel-reporte-trug .trug-reporte-card-head {
		flex-wrap: wrap;
	}

	#painel-reporte-trug .btn-trug-enviar-reporte {
		width: 100%;
		min-width: 0;
	}

	#painel-reporte-trug .trug-reporte-actions {
		padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
	}

	#painel-preparacao-checklist .prep-check-header {
		margin-bottom: 14px !important;
		padding: 0 0 14px 0 !important;
	}

	#painel-preparacao-checklist .prep-check-title-row {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 8px !important;
	}

	#painel-preparacao-checklist .prep-check-title-text .sigma-v3-description {
		display: none;
	}

	#painel-preparacao-checklist .prep-check-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#painel-preparacao-checklist .prep-check-selecao-row {
		display: flex !important;
		flex-direction: column !important;
		gap: 14px !important;
	}

	#painel-preparacao-checklist .prep-check-actions {
		flex-direction: column;
		align-items: stretch !important;
	}

	#painel-preparacao-checklist .prep-check-btn-iniciar {
		width: 100% !important;
		justify-content: center !important;
	}

	#painel-preparacao-checklist .check-vtr-selecionada {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	#painel-preparacao-checklist .check-vtr-trocar-hint {
		color: var(--prep-check-accent) !important;
	}

	#painel-preparacao-conferencia .prep-conf-header {
		margin-bottom: 14px !important;
		padding: 0 0 14px 0 !important;
	}

	#painel-preparacao-conferencia .prep-conf-title-row {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 8px !important;
	}

	#painel-preparacao-conferencia .prep-conf-title-text .sigma-v3-description {
		display: none;
	}

	#painel-preparacao-conferencia .prep-conf-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#painel-preparacao-conferencia .prep-conf-selecao-row {
		display: flex !important;
		flex-direction: column !important;
		gap: 14px !important;
	}

	#painel-preparacao-conferencia .frota-form-grid {
		grid-template-columns: 1fr !important;
	}

	#painel-preparacao-conferencia .prep-conf-actions {
		flex-direction: column;
		align-items: stretch !important;
	}

	#painel-preparacao-conferencia .prep-btn-iniciar {
		width: 100% !important;
		justify-content: center !important;
	}

	#painel-preparacao-conferencia .prep-ativo-selecionado {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	#painel-preparacao-conferencia .prep-ativo-trocar-hint {
		color: #800020 !important;
	}

	#painel-preparacao-conferencia .prep-extrato-kpis-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 8px !important;
	}

	#painel-preparacao-conferencia .prep-extrato-kpi {
		padding: 12px 6px !important;
	}

	#painel-preparacao-conferencia .prep-extrato-kpi-val {
		font-size: 1.15rem !important;
	}

	#view-vtr-form .frota-form-actions,
	#view-lista-form .lista-form-actions,
	#view-unidade-form .frota-form-actions,
	#view-posto-form .frota-form-actions {
		flex-direction: column;
		justify-content: center !important;
		align-items: stretch !important;
		width: 100% !important;
	}

	#view-vtr-form .frota-form-actions .btn-frota-salvar,
	#view-lista-form .lista-form-actions .btn-lista-form-salvar,
	#view-unidade-form .frota-form-actions .btn-unidade-form-salvar,
	#view-posto-form .frota-form-actions .btn-posto-form-salvar {
		width: 100% !important;
		justify-content: center !important;
	}

	#view-lista-form .lista-form-choice-grid {
		grid-template-columns: 1fr !important;
	}

	#view-lista-form .lista-form-tipo-grid {
		grid-template-columns: 1fr 1fr !important;
	}

	#view-lista-form .lista-form-ativo-selecionado {
		width: 100% !important;
		max-width: 100% !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 8px !important;
	}

	#view-lista-form .lista-form-ativo-trocar-hint {
		display: inline-flex !important;
		align-items: center;
		gap: 5px;
		font-size: 0.75rem !important;
		font-weight: 700 !important;
		color: #800020 !important;
		opacity: 0.8;
		white-space: nowrap;
	}

	#view-lista-form .lista-form-ativo-trocar-hint i {
		font-size: 0.95rem;
		line-height: 1;
	}

	#view-lista-form .listas-title-text .sigma-v3-description {
		display: none;
	}

	#view-lista-form .listas-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#view-lista-form .frota-form-grid {
		grid-template-columns: 1fr !important;
	}

	#view-vtr-detalhe .frota-detalhe-km-chip {
		padding: 6px 8px;
		min-width: 52px;
	}

	#view-vtr-detalhe .frota-detalhe-edit-chip {
		padding: 6px 8px;
		min-width: 52px;
	}

	#view-vtr-detalhe .frota-title-text .sigma-v3-title-label {
		font-size: 1.1rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	/* Frota: filtros empilhados corretamente no mobile */
	#view-vtr-bases .frota-filtros-card {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
		padding: 14px !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	#view-vtr-bases .frota-filtros-bar {
		display: flex !important;
		align-items: flex-end;
		gap: 8px;
		width: 100%;
	}

	#view-vtr-bases .frota-filtros-bar .frota-filtro-busca {
		flex: 1 1 auto !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 108px);
	}

	#view-vtr-bases .frota-filtros-bar .search-input-wrapper,
	#view-vtr-bases .frota-filtros-bar .search-clean {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	#view-vtr-bases .frota-filtros-toggle {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		gap: 6px;
		flex: 0 0 auto;
		height: 42px;
		padding: 0 12px;
		border-radius: 12px;
		border: 1px solid #e2e8f0;
		background: #fff;
		color: #334155;
		font-size: 0.78rem;
		font-weight: 800;
		letter-spacing: 0.02em;
		position: relative;
		z-index: 1;
	}

	#view-vtr-bases .frota-filtros-toggle i {
		font-size: 1rem;
	}

	#view-vtr-bases .frota-filtros-card.is-abertos .frota-filtros-toggle {
		border-color: #fecdd3;
		background: #fff1f2;
		color: #9f1239;
	}

	#view-vtr-bases .frota-filtros-count {
		min-width: 18px;
		height: 18px;
		padding: 0 5px;
		border-radius: 999px;
		background: #9f1239;
		color: #fff;
		font-size: 0.68rem;
		line-height: 18px;
		text-align: center;
	}

	#view-vtr-bases .frota-filtros-selects {
		display: none !important;
	}

	#view-vtr-bases .frota-filtros-card.is-abertos .frota-filtros-selects {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 10px !important;
		width: 100% !important;
	}

	#view-vtr-bases .frota-filtro-busca,
	#view-vtr-bases .frota-filtro-status,
	#view-vtr-bases .frota-filtro-atuacao,
	#view-vtr-bases .frota-filtro-oleo,
	#view-vtr-bases .frota-filtro-rev,
	#view-vtr-bases .frota-filtro-doc {
		width: 100% !important;
		min-width: 0 !important;
		flex: none !important;
	}

	#view-vtr-bases .frota-vtr-card {
		width: 100% !important;
		box-sizing: border-box !important;
		padding: 12px 12px 12px 14px !important;
	}

	#view-vtr-bases .frota-vtr-card-stats {
		gap: 8px !important;
		flex-wrap: nowrap !important;
	}

	#view-vtr-bases .frota-vtr-card-stats > div {
		flex: 1 1 0;
	}

	#view-vtr-bases .frota-stat-unidade {
		margin-left: 0 !important;
		text-align: right;
	}

	/* Estoque / Almox: ações do topo lado a lado (ícone + rótulo) */
	#view-almoxarifado .gestao-modulo-header {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
	}

	#view-almoxarifado .almox-acoes-topo {
		display: flex !important;
		flex-direction: row !important;
		align-items: stretch !important;
		justify-content: space-between !important;
		gap: 8px !important;
		width: 100% !important;
		margin: 0 !important;
	}

	#view-almoxarifado .almox-acoes-topo .btn-almox-acao {
		flex: 1 1 0 !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		display: inline-flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		padding: 10px 6px !important;
		min-height: 68px !important;
		border-radius: 12px !important;
		font-size: 0.68rem !important;
		font-weight: 700 !important;
		line-height: 1.15 !important;
		text-align: center !important;
		white-space: normal !important;
	}

	#view-almoxarifado .almox-acoes-topo .btn-almox-acao i {
		font-size: 1.35rem !important;
		margin: 0 !important;
		line-height: 1 !important;
	}

	#view-almoxarifado .almox-acoes-topo .btn-almox-acao-pdf i {
		color: #e5252a !important;
	}

	#view-almoxarifado .almox-acoes-topo .btn-almox-acao span {
		display: block;
		max-width: 100%;
	}

	/* Almox: tabela some no mobile — cards assumem */
	#view-almoxarifado .sigma-almox-table-wrap,
	#view-almoxarifado #container-tabela-principal {
		display: none !important;
	}

	#view-almoxarifado #almox-main-display,
	#view-almoxarifado .almox-main-display {
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
		overflow: visible !important;
	}

	#view-almoxarifado .sigma-almox-mcards {
		display: flex !important;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		padding: 0 2px 8px;
		box-sizing: border-box;
	}

	#view-almoxarifado .sigma-almox-mcard {
		animation: almoxCardIn 0.28s ease both;
	}

	#view-almoxarifado .sigma-almox-mcard:nth-child(1) { animation-delay: 0.02s; }
	#view-almoxarifado .sigma-almox-mcard:nth-child(2) { animation-delay: 0.05s; }
	#view-almoxarifado .sigma-almox-mcard:nth-child(3) { animation-delay: 0.08s; }
	#view-almoxarifado .sigma-almox-mcard:nth-child(4) { animation-delay: 0.11s; }
	#view-almoxarifado .sigma-almox-mcard:nth-child(5) { animation-delay: 0.14s; }

@keyframes almoxCardIn {
	from {
		opacity: 0;
		transform: translateY(8px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

	#view-almoxarifado .sigma-almox-mcard-foot .btn-almox-mcard-acao {
		flex: 1 1 0 !important;
		width: auto !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 6px !important;
		padding: 0.55rem 0.65rem !important;
		font-size: 0.8rem !important;
	}

	/* Ações da página migradas para o título / FAB */
	#view-cautelas .btn-trug-voltar-pagina,
	#view-cautelas .btn-trug-imprimir-pagina,
	#view-cautelas .btn-trug-receber-pagina {
		display: none !important;
	}

	/* Limpar filtros → botão híbrido (Ativos / Receber / Histórico) */
	#view-cautelas .btn-trug-limpar-filtros,
	#view-cautelas .filter-actions-trug-limpar {
		display: none !important;
	}

	/* Histórico → PDF no híbrido: some o PDF do canto */
	#cautela-detalhes .btn-pdf-trug-secao.trug-pdf-via-hibrido {
		display: none !important;
	}

	#cautela-detalhes .action-footer-card.trug-footer-somente-chrome {
		display: none !important;
	}

	/* Detalhe TRUG: cabe na largura (sem “empurrar” para a direita) */
	#cautela-detalhes {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		overflow-x: hidden !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#cautela-detalhes .sigma-v3-clean-card,
	#cautela-detalhes .trug-detalhe-header,
	#cautela-detalhes .cautela-title-container {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		overflow-x: hidden !important;
	}

	#cautela-detalhes .sigma-v3-clean-card:not(.action-footer-card) {
		padding: 1rem 0.85rem !important;
	}

	#cautela-detalhes .cautela-meta-grid {
		grid-template-columns: 1fr !important;
		gap: 0.85rem !important;
		width: 100% !important;
		min-width: 0 !important;
	}

	#cautela-detalhes .meta-item,
	#cautela-detalhes .meta-item span,
	#cautela-detalhes .obs-content {
		min-width: 0 !important;
		max-width: 100% !important;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	#cautela-detalhes .trug-recebedor-almox-select {
		min-width: 0;
	}

	#cautela-detalhes .material-card-clean {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		padding: 0.75rem !important;
	}

	#cautela-detalhes .material-header-clean {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.65rem;
		min-width: 0;
	}

	#cautela-detalhes .material-main-clean {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	#cautela-detalhes .material-title-clean {
		width: 100%;
		min-width: 0;
		overflow-wrap: anywhere;
		word-break: break-word;
		line-height: 1.3;
	}

	#cautela-detalhes .item-tag-clean {
		align-self: flex-start;
		white-space: nowrap;
	}

	/* Ação do material: só ícone no mobile */
	#cautela-detalhes .btn-item-reportar {
		width: 40px;
		height: 40px;
		min-width: 40px;
		padding: 0;
		border-radius: 10px;
	}

	#cautela-detalhes .btn-item-reportar-label {
		display: none !important;
	}

	#cautela-detalhes .btn-item-reportar i {
		font-size: 1.15rem;
		margin: 0;
	}

	/* Central TRUG mobile = molde da Central de Gestão */
	#view-trug-hub {
		padding-top: 4px !important;
		gap: 1rem !important;
	}

	#view-trug-hub .trug-hub-desktop-header,
	#view-trug-hub .trug-hub-desktop-grid {
		display: none !important;
	}

	#view-trug-hub .trug-hub-mobile-header {
		display: block !important;
		margin-bottom: 8px;
		text-align: left;
	}

	#view-trug-hub .trug-hub-mobile-header h2 {
		font-size: 1.5rem;
		font-weight: 700;
		color: #0f172a;
		margin: 0;
		display: flex;
		align-items: center;
		gap: 8px;
	}

	#view-trug-hub .trug-hub-mobile-header h2 i {
		color: #0f172a;
	}

	#view-trug-hub .trug-hub-mobile-header p {
		font-size: 0.85rem;
		color: #64748b;
		margin-top: 6px;
		font-weight: 500;
		line-height: 1.4;
	}

	#view-trug-hub .trug-hub-mobile {
		display: flex !important;
		flex-direction: column;
		gap: 10px;
		width: 100%;
		padding-bottom: 12px;
	}

	#view-trug-hub .trug-hub-icon-ativos {
		color: #16a34a;
	}

	#view-trug-hub .trug-hub-icon-receber {
		color: #d97706;
	}

	#view-trug-hub .trug-hub-icon-historico {
		color: #475569;
	}

	#cautela-detalhes .timeline-header-clean {
		flex-wrap: wrap;
		gap: 0.35rem;
		min-width: 0;
	}

	#cautela-detalhes .timeline-content-clean,
	#cautela-detalhes .timeline-body-clean {
		min-width: 0;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.brand-icon-large {
		width: 48px !important;
		/* Ícone visivelmente maior */
		height: 48px !important;
		object-fit: contain;
	}

	.brand-text-sigma {
		font-size: 1.15rem !important;
		/* Texto proporcionalmente menor que o ícone */
		font-weight: 650 !important;
		color: #1e293b;
		/* Ajuste para a cor do texto do seu tema */
	}

	.header-left {
		flex: 1 !important;
		display: flex !important;
		justify-content: flex-start !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.header-center-mobile {
		flex: 2 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 8px !important;
		position: static !important;
		transform: none !important;
	}

	.header-center-mobile span {
		font-size: 1.15rem !important;
		font-weight: 900 !important;
		letter-spacing: 1px !important;
	}

	.header-icon-mobile {
		height: 28px !important;
		width: auto !important;
	}

	.user-profile-header {
		flex: 1 !important;
		display: flex !important;
		justify-content: flex-end !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		width: max-content !important;
		margin-left: auto !important;
	}

	#app-runner-container {
		position: fixed !important;
		top: 60px !important;
		/* Cola logo abaixo do Header */
		left: 0 !important;
		/* Cola no canto esquerdo */
		width: 100vw !important;
		/* 🚀 DEVOLVIDO: Força a largura máxima da tela */
		bottom: 0 !important;
		/* MANTIDO: Trava no chão real da tela (resolve o botão escondido) */
		height: auto !important;
		/* Desliga o bug do 100vh no mobile */
		margin: 0 !important;
		padding: 0 !important;
		z-index: 900 !important;
		/* Aumentado para garantir que fique por cima de tudo */
		background: #f8fafc !important;
		display: none;
		overflow: hidden !important;
	}

	/* 3. SIDEBAR: FLUTUAÇÃO SUPREMA E OVERLAY */
	.sidebar {
		position: fixed !important;
		left: -280px !important;
		width: 260px !important;
		top: 60px !important;
		height: calc(100vh - 60px) !important;
		z-index: 9999 !important;
		transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
		border-right: none !important;
	}

	.sidebar.mobile-active,
	.sidebar.active {
		left: 0 !important;
		box-shadow: 0 0 0 200vw rgba(15, 23, 42, 0.7) !important;
	}

	/* =========================================================
       3.1. SIDEBAR MOBILE: PADRONIZAÇÃO SLIM (IGUAL AO PC)
       ========================================================= */
	.sidebar {
		position: fixed !important;
		left: -85px !important;
		/* Esconde exatamente a largura dela */
		width: 85px !important;
		/* LARGURA IDÊNTICA AO PC */
		top: 60px !important;
		height: calc(100vh - 60px) !important;
		z-index: 9999 !important;
		transition: left 0.3s ease !important;
		/* Fundo cinza vidro original */
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		padding-top: 10px !important;
		border-right: none !important;
	}

	.sidebar.mobile-active,
	.sidebar.active {
		left: 0 !important;
		/* Overlay para travar o conteúdo ao fundo */
		box-shadow: 0 0 0 100vw rgba(15, 23, 42, 0.5) !important;
	}

	/* Formatação dos Links (Ícone em cima, Nome embaixo) */
	.sidebar a,
	.sidebar .sigma-v3-dropdown-btn {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		min-height: 85px !important;
		margin: 0 !important;
		padding: 15px 0 !important;
		background: transparent !important;
		color: #475569 !important;
		border-radius: 0 !important;
	}

	/* Ícones e Textos (Escala do PC) */
	.sidebar a i,
	.sigma-v3-dropdown-btn i {
		font-size: 1.4rem !important;
		margin-bottom: 5px !important;
		margin-right: 0 !important;
	}

	.sidebar a span,
	.sigma-v3-dropdown-btn span {
		font-size: 0.65rem !important;
		font-weight: 700 !important;
		text-align: center !important;
		max-width: 75px !important;
		line-height: 1.2 !important;
		display: block !important;
	}

	/* ESTADO ATIVO: O VAZADO BRANCO DO PC */
	.sidebar a.active,
	.sigma-v3-dropdown-btn.active_group {
		background: #f8fafc !important;
		/* Fundo gelo do sistema */
		color: #18181b !important;
		width: 75px !important;
		/* Recuo original */
		align-self: flex-end !important;
		border-radius: 30px 0 0 30px !important;
		margin-left: 10px !important;
	}

	.sidebar a.active i,
	.sidebar a.active span {
		color: #18181b !important;
	}

	/* MATA AS CURVAS (BEFORE/AFTER) NO MOBILE PARA NÃO BUGAR O OVERLAY */
	.sidebar a.active::before,
	.sidebar a.active::after,
	.sigma-v3-dropdown-btn.active_group::before,
	.sigma-v3-dropdown-btn.active_group::after {
		display: none !important;
		content: none !important;
	}

	/* SUBMENUS: COMPACTOS */
	.sigma-v3-submenu a {
		padding: 10px 0 !important;
		min-height: 60px !important;
	}

	/* ========================================================= */

	/* 4. DASHBOARD MASTER-DETAIL: EMPILHAMENTO ESTRUTURAL */
	.dashboard-master-detail-container,
	#dashboard-content-by-role.split-view {
		flex-direction: column !important;
		flex-wrap: wrap !important;
	}

	.dashboard-detail-column,
	#dashboard-content-by-role.split-view .dashboard-master-column {
		flex: 1 1 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
	}

	/* 5. FAB: POSICIONAMENTO FIXO E INTERAÇÃO TÁTIL */
	.v3-fab-options,
	.v3-fab-main {
		pointer-events: auto !important;
	}

	/* 1. Formatação Base: Quadrado 65x65, Fundo Branco Puro e Curvatura Elegante */
#fab-global-options button,
#fab-global-options a,
.v3-fab-sub {
    width: 65px !important;
    height: 65px !important;
    max-width: 65px !important;
    min-width: 65px !important;
    background: var(--sigma-fab-bg, var(--bg-card-clean, #ffffff)) !important;
    border: 1px solid var(--sigma-fab-border, var(--border-soft, #e2e8f0)) !important;
    border-radius: 20px !important; /* Curvatura idêntica ao botão principal */
    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important; /* Ícone em cima, texto embaixo */
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    color: var(--sigma-fab-fg, var(--text-dark, #475569)) !important;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08) !important; /* Sombra leve e flutuante */
    white-space: nowrap !important;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;

    /* Animação suave de surgimento */
    transform: scale(0);
    opacity: 0;
    transform-origin: bottom center;
    transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.2s ease, box-shadow 0.2s ease !important;
}

#fab-global-options .v3-fab-sub-qr,
.v3-fab-sub-qr {
    border-color: var(--sigma-fab-qr, #0d9488) !important;
}

#fab-global-options .v3-fab-sub-qr i,
#fab-global-options .v3-fab-sub-qr .fab-sub-text,
.v3-fab-sub-qr i,
.v3-fab-sub-qr .fab-sub-text {
    color: var(--sigma-fab-qr, #0d9488) !important;
}

/* 2. Estágio Ativo: O bloco surge em escala 1x1 perfeita */
#fab-global-options button.nascido,
#fab-global-options a.nascido,
#fab-global-options button.expandido,
#fab-global-options a.expandido,
.v3-fab-sub.nascido,
.v3-fab-sub.expandido {
    transform: scale(1) !important;
    opacity: 1 !important;
    max-width: 65px !important;
}

/* 3. Ícones internos: Tamanho de destaque (as cores serão injetadas pelo JS ou herdadas daqui) */
#fab-global-options button i,
#fab-global-options a i,
.v3-fab-sub i {
    font-size: 1.5rem !important; /* Ícone com presença visual */
    margin: 0 !important;
    color: inherit !important;
    transition: transform 0.2s ease;
}

/* 4. Textos internos: Tipografia limpa em cinza ardósia */
#fab-global-options button span,
#fab-global-options a span,
#fab-global-options .fab-sub-text,
.v3-fab-sub .fab-sub-text,
.v3-fab-sub span {
    font-size: 0.68rem !important; /* Tamanho harmonioso com o texto "Novo" da barra */
    font-weight: 700 !important;
    color: var(--sigma-fab-fg, var(--text-dark, #475569)) !important;
    margin: 0 !important;
    opacity: 1 !important;
    line-height: 1 !important;
    letter-spacing: 0.3px;
}

/* 5. Efeito ao Passar o Mouse (Desktop) */
#fab-global-options button:hover,
#fab-global-options a:hover,
.v3-fab-sub:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12) !important;
    border-color: #cbd5e1 !important;
}

/* 6. Efeito de Toque (Mobile): Fundo ganha um tom cinza clarinho instantâneo */
#fab-global-options button:active,
#fab-global-options a:active,
.v3-fab-sub:active {
    transform: scale(0.94) !important;
    background: #f1f5f9 !important; /* Feedback visual claro sem escurecer */
    border-color: #cbd5e1 !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05) !important;
}

	/* =========================================================
   🗂️ GAVETA DE DETALHES (MOBILE SLIDE-IN)
   ========================================================= */
	.v3-details-drawer {
		position: fixed !important;
		top: 60px !important;
		/* 🎯 Desce a gaveta para baixo do Header */
		right: -100%;
		/* Mantém ela escondida à direita */
		width: 100% !important;
		height: calc(100vh - 60px) !important;
		/* 🎯 Limita a altura, descontando o Header */
		background: #f8fafc;
		z-index: 900 !important;
		/* Fica acima do painel, mas abaixo do menu lateral/header */
		transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
		display: flex;
		flex-direction: column;
		box-shadow: -5px 0 25px rgba(0, 0, 0, 0.15);
	}

	.v3-details-drawer.active {
		right: 0;
		/* Desliza para dentro */
	}

	.v3-drawer-header {
		padding: 20px;
		background: #ffffff;
		border-bottom: 1px solid #e2e8f0;
		display: flex;
		align-items: center;
		gap: 15px;
	}

	.v3-drawer-body {
		flex: 1;
		overflow-y: auto;
		padding: 20px;
	}

	/* 3. Gatilho de ativação */
	#app-runner-container.ativo {
		display: block !important;
	}

	#app-iframe {
		width: 100% !important;
		height: 100% !important;
		border: none !important;
		display: block !important;
	}

	/* =======================================================
   🚀 MODO CARDS (RESPONSIVO) PARA TABELAS DO ALMOXARIFADO
   ======================================================== */

	/* 1. Esconde o cabeçalho original da tabela */
	#almox-body h1,
	#container-tabela-principal thead {
		display: none !important;
	}

	/* 2. Trava a tabela para não vazar a largura da tela */
	#container-tabela-principal {
		overflow-x: hidden !important;
		box-sizing: border-box !important;
	}

	#container-tabela-principal table {
		min-width: 0 !important;
		width: 100% !important;
	}

	/* 3. Quebra o comportamento rígido de tabela */
	#container-tabela-principal table,
	#container-tabela-principal tbody {
		display: block;
		width: 100%;
		box-sizing: border-box !important;
	}

	/* 4. Transforma cada linha num "Card" visual (ATUALIZADO PARA v4-almox-row) */
	.v4-almox-row {
		display: flex !important;
		flex-direction: column;
		background: #ffffff;
		border: 1px solid #cbd5e1;
		border-radius: 12px;
		margin-bottom: 20px;
		padding: 10px 15px 15px 15px;
		box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
		position: relative;
		overflow: hidden;
		width: 100%;
		box-sizing: border-box !important;
	}

	/* 5. Transforma as células (TD) em linhas flexíveis */
	.v4-almox-row td {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		width: 100%;
		padding: 10px 0 !important;
		border-bottom: 1px dashed #f1f5f9;
		text-align: right !important;
		box-sizing: border-box !important;
	}

	/* Remove a borda pontilhada do último item (Ações) */
	.v4-almox-row td:last-child {
		border-bottom: none;
		margin-top: 10px;
		padding-bottom: 0 !important;
	}

	/* 6. MÁGICA: Imprime o título (data-label) do lado esquerdo da célula */
	.v4-almox-row td::before {
		content: attr(data-label);
		font-weight: 900;
		font-size: 0.75rem;
		color: #64748b;
		text-transform: uppercase;
		text-align: left;
		margin-right: 10px;
		flex-shrink: 0;
	}

	/* 7. Formatação Especial para a Célula "MATERIAL" (O Cabeçalho do Card) */
	.v4-almox-row td[data-label="MATERIAL"] {
		flex-direction: column !important;
		align-items: flex-start !important;
		background: #f8fafc;
		padding: 15px !important;
		margin: -10px -15px 15px -15px;
		width: calc(100% + 30px) !important;
		border-bottom: 2px solid #e2e8f0;
	}

	.v4-almox-row td[data-label="MATERIAL"]>div {
		text-align: left !important;
		width: 100%;
	}

	/* Esconde a palavra "MATERIAL" e o número "ORDEM" no mobile pra limpar a tela */
	.v4-almox-row td[data-label="MATERIAL"]::before,
	.v4-almox-row td[data-label="ORDEM"] {
		display: none !important;
	}

	/* 8. Ajustes dos blocos internos e alinhamento */
	.v4-almox-row td[data-label="EMPREGADO"]>div,
	.v4-almox-row td[data-label="EM CARGA"]>div {
		justify-content: flex-end !important;
	}

	/* Esconde a palavra "AÇÕES" e centraliza os botões */
	.v4-almox-row td[data-label="AÇÕES"]::before {
		display: none !important;
	}

	.v4-almox-row td[data-label="AÇÕES"] div {
		justify-content: center !important;
		width: 100%;
	}

	/* Esconde os botões do topo para o FAB assumir o comando */
	.botoes-topo-dashboard,
	.botoes-topo-almox {
		display: none !important;
	}

	/* 📱 MODO MOBILE (TELA DESLIZANTE - SLIDING PANELS) */
	.hide-on-mobile {
		display: none !important;
	}

	.editor-header-v4 {
		padding: 10px 12px;
	}

	#view-editor-arquitetura .editor-lista-header.gestao-modulo-header {
		padding: 10px 12px;
	}

	#view-editor-arquitetura .editor-lista-voltar-pc {
		display: none !important;
	}

	#view-editor-arquitetura .editor-lista-title-row {
		gap: 8px;
	}

	#view-editor-arquitetura .editor-lista-title-text h2,
	.editor-title-v4 h2 {
		font-size: 0.95rem;
	}

	#view-editor-arquitetura .btn-publish-v4 {
		padding: 10px;
		min-width: 42px;
		width: 42px;
		justify-content: center;
	}

	#view-editor-arquitetura .btn-lixeira-cart {
		width: 42px;
		height: 42px;
	}

	.btn-back-v4,
	.btn-publish-v4 {
		padding: 10px;
		width: 40px;
		justify-content: center;
	}

	/* Botões quadrados só com ícone */
	.editor-title-v4 h2 {
		font-size: 1.05em;
	}

	/*
	 * Master-Detail do editor: regras finais ficam DEPOIS do bloco global
	 * (.sigma-md-* ~linha 16784). Aqui só marcamos intenção — ver bloco
	 * "EDITOR ARQUITETURA MOBILE (CASCADE FIX)" no fim do arquivo mobile.
	 */

	/* Essa classe vai esconder os botões originais no celular */
	.esconder-no-mobile {
		display: none !important;
	}

	#btn-imprimir-extrato {
        display: none !important;
    }

	/* ========================================================= */
	/* 📱 FAB OPTIONS - MECÂNICA DE LAYOUT E CORES (MOBILE)      */
	/* ========================================================= */

	/*
	 * Ancora o menu + acima do botão Novo.
	 * Usa safe-area (PWA iOS) — valores fixos desalinhavam no app instalado.
	 * JS (sigmaAlinharFabOptionsAoBotaoNovo) refina com getBoundingClientRect.
	 */
	#fab-global-container {
		position: fixed !important;
		bottom: calc(
			var(--mobile-bottom-nav-height) + var(--mobile-bottom-nav-offset) + var(--sigma-safe-bottom, 0px) + 10px
		) !important;
		right: 15px !important;
		left: auto !important;
		top: auto !important;
		width: 65px !important;
		z-index: 100001 !important;
		display: block !important;
		pointer-events: none !important;
		transform: none !important;
	}

	/* Empilhamento vertical — display fica a cargo do JS (flex ao abrir / none ao fechar) */
	#fab-global-options {
		position: relative !important;
		bottom: auto !important;
		right: auto !important;
		left: auto !important;
		margin: 0 !important;
		width: 65px !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 8px !important;
		pointer-events: auto !important;
		box-sizing: border-box !important;
	}



	/* Estágio Ativo: O bloco surge em escala 1x1 perfeita */
	.v3-fab-sub.nascido,
	.v3-fab-sub.expandido {
		transform: scale(1) !important;
		opacity: 1 !important;
		max-width: 65px !important;
	}

	/* Ícones internos ajustados para o quadrado de 65px */
	#fab-global-options button i,
	#fab-global-options a i,
	.v3-fab-sub i {
		font-size: 1.3rem !important;
		color: var(--sigma-fab-fg, var(--text-dark, #475569)) !important;
		margin: 0 !important;
	}

	/* Textos internos curtos e centralizados */
	#fab-global-options button span,
	#fab-global-options a span,
	#fab-global-options .fab-sub-text,
	.v3-fab-sub .fab-sub-text,
	.v3-fab-sub span {
		font-size: 0.65rem !important;
		/* Mesmo tamanho do texto "Novo" da barra */
		font-weight: 500 !important;
		color: var(--sigma-fab-fg, var(--text-dark, #475569)) !important;
		margin: 0 !important;
		opacity: 1 !important;
		line-height: 1 !important;
	}

	/* Efeito de Toque Mobile (Fundo clareia levemente ao invés de escurecer) */
	#fab-global-options button:active,
	#fab-global-options a:active,
	.v3-fab-sub:active {
		transform: scale(0.92) !important;
		background: #222222 !important;
		border-color: #444444 !important;
	}

	

	/* ========================================================= */
	/* 🔄 4. ANIMAÇÃO DE ROTAÇÃO DO ÍCONE "+"                    */
	/* ========================================================= */
	.nav-fab-icon {
		transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	}

	/* Ao receber a classe, gira 135 graus para virar um elegante "×" */
	.nav-fab-icon.girado {
		transform: rotate(135deg) !important;
	}

	/* Oculta o botão flutuante antigo (a bolinha redonda do FAB) no celular */
	#btn-fab-principal {
		display: none !important;
	}

	/* Animação suave para o ícone de + do botão Novo */
	.nav-fab-icon {
		transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	}

	/* Quando receber a classe de menu aberto, gira para virar um X */
	.nav-fab-icon.girado {
		transform: rotate(135deg) !important;
	}

	/* =========================================================
   🔧 4. AJUSTE ESTRUTURAL DO CONTAINER PAI
   ========================================================= */
	/* Garante que o container base do FAB exista para as opções aparecerem */
	#fab-global-container {
		display: block !important;
	}

	/* Oculta a "bolinha" antiga, pois o botão NOVO da barra inferior já assumiu essa função e chama o toggleFabMenu() */
	#btn-fab-principal {
		display: none !important;
	}

	/* --- REGRA DE OCULTAÇÃO AUTOMÁTICA SIGMA V4 --- */

	/* 2. REGRA DE OCULTAÇÃO (Deve vir DEPOIS): 
   	Se o container ganhar a classe .ativo, o FAB bate em retirada imediatamente */
	body.app-operacional #fab-global-container {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	/* ==========================================================================
       MOBILE: NOVO CADASTRO DE MATERIAL
       ========================================================================== */

	#view-novo-catalogo .sigma-catalogo-wrap {
		max-width: 100% !important;
		gap: 1rem !important;
	}

	#view-novo-catalogo .sigma-catalogo-card-body {
		padding: 14px !important;
	}

	/* ==========================================================================
       CORREÇÃO MOBILE: TELA DE APORTE DE MATERIAL
       ========================================================================== */

	/* 1. Header: Botões nas pontas, Título na linha de baixo */
	#view-aporte .sigma-v3-clean-wrapper>div:first-child {
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: space-between !important;
		align-items: center !important;
		gap: 20px !important;
		padding-bottom: 15px !important;
	}

	/* Força o título a cair para a 2ª linha */
	#view-aporte .sigma-v3-title-label {
		order: 3 !important;
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		gap: 12px !important;
	}

	#view-aporte .sigma-v3-title-label i {
		margin-right: 0 !important;
		font-size: 1.4em !important;
	}

	/* 2. Empilha os campos de formulário forçando 1 coluna */
	#view-aporte .sigma-form-grid {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 15px !important;
		margin-bottom: 20px !important;
		align-items: start !important;
	}

	/* Garante que os inputs não vazem da tela */
	#view-aporte .sigma-v3-input,
	#view-aporte .sigma-v3-select {
		width: 100% !important;
		box-sizing: border-box !important;
		height: auto !important;
	}

	#view-aporte .sigma-v3-input-group {
		margin: 0 !important;
		height: auto !important;
	}

	/* 3. Reduz o padding excessivo da caixa branca no celular */
	#view-aporte .sigma-v3-clean-wrapper>div:nth-child(2) {
		padding: 20px 15px !important;
	}

	/* 4. NOVO: Destaque Visual para os Títulos dos Grupos (Barras de Seção) */
	#view-aporte .sigma-form-section-title {
		background: #f8fafc !important;
		padding: 12px 15px !important;
		border-radius: 8px !important;
		border-left: 4px solid #0284c7 !important;
		/* Borda azul tática */
		border-bottom: none !important;
		margin-top: 30px !important;
		margin-bottom: 20px !important;
		font-size: 0.95rem !important;
	}

	/* 5. NOVO: Desgruda o botão SALVAR da caixa de observações */
	#view-aporte .sigma-v3-clean-wrapper>div:nth-child(2)>div:last-child {
		margin-top: 35px !important;
		padding-top: 20px !important;
		border-top: 1px solid #e2e8f0 !important;
		display: flex !important;
		justify-content: flex-end !important;
		width: 100% !important;
	}

	/* ==========================================================================
       MOBILE: RASTREIO / DETALHE DO MATERIAL
       ========================================================================== */

	#almox-rastreio-thead {
		display: none !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-loading,
	#almox-rastreio-body tr.sigma-rastreio-loading td {
		display: block !important;
		width: 100% !important;
		text-align: center !important;
		border: none !important;
		background: transparent !important;
		padding: 8px 0 18px !important;
		box-sizing: border-box !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-loading .modern-loader-container {
		width: 100%;
		margin: 0 auto;
		align-items: center;
		justify-content: center;
		text-align: center;
	}

	#almox-rastreio-wrapper table,
	#almox-rastreio-body {
		display: block !important;
		width: 100% !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-group {
		display: block !important;
		background: transparent !important;
		border: none !important;
		padding: 18px 0 8px !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-group td {
		display: block !important;
		background: transparent !important;
		border: none !important;
		padding: 0 !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row {
		display: flex !important;
		flex-direction: column !important;
		background: var(--bg-card-clean, #ffffff) !important;
		border: 1px solid var(--border-soft, #cbd5e1) !important;
		border-radius: 12px !important;
		margin-bottom: 12px !important;
		padding: 0 14px 12px !important;
		box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05) !important;
		box-sizing: border-box !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		width: 100% !important;
		padding: 10px 0 !important;
		border-bottom: 1px dashed #f1f5f9 !important;
		text-align: right !important;
		box-sizing: border-box !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td::before {
		content: attr(data-label);
		font-weight: 800 !important;
		font-size: 0.72rem !important;
		color: #64748b !important;
		text-transform: uppercase !important;
		text-align: left !important;
		margin-right: 12px !important;
		flex-shrink: 0 !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td:first-child {
		flex-direction: column !important;
		align-items: flex-start !important;
		background: #f8fafc !important;
		padding: 14px !important;
		margin: 0 -14px 6px !important;
		width: calc(100% + 28px) !important;
		border-bottom: 1px solid #e2e8f0 !important;
		border-radius: 12px 12px 0 0 !important;
		text-align: left !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td:first-child::before {
		display: none !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td[data-label="Unidade"] {
		justify-content: space-between !important;
		align-items: center !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td[data-label="Unidade"] .sigma-unidade-pill {
		margin: 0 !important;
	}

	.sigma-rastreio-uids {
		max-height: 110px;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td[data-label="Observações"]::before {
		align-self: flex-start !important;
		margin-bottom: 6px !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td.sigma-rastreio-acoes {
		border-bottom: none !important;
		justify-content: center !important;
		padding-top: 12px !important;
	}

	#almox-rastreio-body tr.sigma-rastreio-row td.sigma-rastreio-acoes::before {
		display: none !important;
	}

	.sigma-detalhe-rastreio {
		padding: 1rem !important;
	}

	.sigma-detalhe-mapa-track {
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		padding-bottom: 4px;
		-webkit-overflow-scrolling: touch;
	}

	.sigma-detalhe-mapa-chip {
		flex: 0 0 auto;
	}

	#view-editor-arquitetura {
		/* Flanco Esquerdo (Sidebar) */
		left: 0 !important;
	}

	.desktop-only {
		display: none !important;
	}

	.mobile-only {
		display: block !important;
	}

	/* Trava o tamanho do Bom dia/Boa tarde no celular */
	#greeting-text {
		font-size: 1.6rem !important;
	}

	/* Garante que o nome acompanhe o tamanho e fique na mesma linha */
	#greeting-name {
		font-size: 1.1rem !important;
		display: inline !important;
	}

	/* Destaca um pouco mais o Posto no celular */
	.posto-graduacao {
		font-size: 0.95rem !important;
		margin-top: 4px !important;
	}

	/* ⬅️ Regra exclusiva para Mobile (telas menores que 768px) */
	.onboarding-card span {
		flex: 1;
		/* Força o span a ocupar 100% do espaço que sobra ao lado do ícone */
		text-align: justify;
		/* Justifica o texto */
		text-justify: inter-word;
		/* Melhora a quebra de espaçamento entre as palavras */
	}

	.onboarding-card i {
		margin-top: 3px;
		/* Dá um leve empurrãozinho no ícone para ele alinhar perfeitamente com a primeira linha do texto justificado */
	}

	/*DETALHES DE CAUTELAS ATIVAS (TELA 2)*/
	.acoes-container-centered {
		flex-direction: column;
	}

	.btn-soft {
		width: 100%;
		justify-content: center;
	}

	/*=== CLASSES MENU ATIVIDADES ===*/
	.col-span-full {
		grid-column: 1 / -1;
	}

	/*CLASSE PARA CORRIGIR CARD DE ATIVIDADES*/
	/* Ajuste estrutural do formulário de filtros superiores */
	.filter-card-clean.grid-advanced-4,
	.filter-card-clean.grid-advanced-5,
	.filter-card-clean.grid-advanced-6 {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
		padding: 15px !important;
	}

	/* O Card de Atividade vira vertical */
	.stacked-card {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		padding: 16px !important;
		gap: 12px !important;
		width: 100% !important;
		box-sizing: border-box !important;
		border-radius: 12px !important;
		position: relative !important;
	}

	/* Fixa o ícone quadrado na parte superior esquerda */
	.sc-icon-wrapper {
		width: 42px !important;
		height: 42px !important;
		flex-shrink: 0 !important;
	}

	/* Corpo do texto ocupa a largura inteira */
	.sc-body {
		width: 100% !important;
		padding: 0 !important;
	}

	/* Título da Viatura ganha destaque e quebra linha de forma segura */
	.sc-title {
		font-size: 1.1rem !important;
		line-height: 1.3 !important;
		margin-bottom: 8px !important;
		color: #1e293b !important;
		word-break: break-word !important;
	}

	/* Reorganiza a linha de metadados em blocos verticais */
	.sc-meta-row {
		display: flex !important;
		flex-direction: column !important;
		gap: 6px !important;
		align-items: flex-start !important;
	}

	.sc-meta-item {
		font-size: 0.8rem !important;
		color: #64748b !important;
	}

	/* O Bloco da direita (Badge de Avaria + REF) vira o rodapé do card */
	.sc-status-wrapper {
		width: 100% !important;
		display: flex !important;
		flex-direction: column-reverse !important;
		/* Joga a Badge C/A por cima da REF */
		align-items: flex-start !important;
		justify-content: flex-start !important;
		gap: 8px !important;
		margin-top: 4px !important;
		border-top: 1px dashed #e2e8f0 !important;
		/* Linha sutil de divisão */
		padding-top: 12px !important;
	}

	/* Customizações das Badges no Mobile para manter a harmonia */
	.sc-badge {
		font-size: 0.7rem !important;
		padding: 4px 10px !important;
		border-radius: 20px !important;
		width: fit-content !important;
		display: inline-flex !important;
	}

	/* Código de REF pequenino na base do rodapé */
	.sc-ref {
		font-size: 0.65rem !important;
		color: #94a3b8 !important;
		display: block !important;
		text-align: left !important;
	}

	/*=== CLASSE PRO MENU LISTAS ===*/
	/* Força o grid a ficar 1 por linha no celular */
	.v3-vtr-grid {
		grid-template-columns: 1fr !important;
	}

	/* Oculta textos de botões superiores para poupar espaço */
	.hide-on-mobile {
		display: none !important;
	}

	/* Extrato Lista — voltar no título (caret), Voltar PC oculto */
	#view-extrato-lista .extrato-lista-header {
		margin-bottom: 10px !important;
		padding: 0 !important;
	}

	#view-extrato-lista .extrato-lista-title-row {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		width: 100% !important;
	}

	#view-extrato-lista .extrato-lista-title-text {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	#view-extrato-lista .extrato-lista-title-text .sigma-v3-title-label {
		font-size: 1.05rem !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#view-extrato-lista .extrato-lista-title-text .sigma-v3-description {
		display: none;
	}

	#view-extrato-lista .extrato-lista-voltar-pc {
		display: none !important;
	}

	/* Card do extrato: empilha título + meta com respiro */
	#view-extrato-lista .extrato-header-mobile {
		flex-direction: column !important;
		align-items: stretch !important;
		padding: 16px !important;
		gap: 12px !important;
	}

	#view-extrato-lista .extrato-header-mobile > div:first-child {
		width: 100% !important;
		align-items: flex-start !important;
	}

	#view-extrato-lista #extrato-titulo {
		font-size: 1.25rem !important;
	}

	/* Meta: empilhada em coluna (sem espremer data e responsável) */
	#view-extrato-lista .extrato-meta-info {
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		text-align: left !important;
		margin-top: 0 !important;
		padding: 12px 14px !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 10px !important;
		box-sizing: border-box;
	}

	#view-extrato-lista .extrato-meta-item + .extrato-meta-item {
		border-top: 1px solid #e2e8f0 !important;
		margin-top: 0 !important;
		padding-top: 10px !important;
	}

	#view-extrato-lista .extrato-meta-value {
		font-size: 0.9em !important;
		white-space: normal !important;
	}

	/* Botões: 4 na mesma linha, quadrados, nomes simples */
	#extrato-action-buttons,
	#view-extrato-lista .extrato-lista-acoes {
		width: 100% !important;
		display: flex !important;
		flex-direction: row !important;
		align-items: stretch !important;
		justify-content: space-between !important;
		gap: 8px !important;
	}

	#extrato-action-buttons button,
	#view-extrato-lista .extrato-lista-acoes .extrato-btn {
		flex: 1 1 0 !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		display: inline-flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		padding: 10px 4px !important;
		min-height: 68px !important;
		border-radius: 12px !important;
		font-size: 0.68rem !important;
		font-weight: 700 !important;
		line-height: 1.15 !important;
		text-align: center !important;
		white-space: normal !important;
		box-shadow: none !important;
	}

	#extrato-action-buttons button i,
	#view-extrato-lista .extrato-lista-acoes .extrato-btn i {
		font-size: 1.35rem !important;
		margin: 0 !important;
		line-height: 1 !important;
	}

	#view-extrato-lista .extrato-btn-txt-pc {
		display: none !important;
	}

	#view-extrato-lista .extrato-btn-txt-mobile {
		display: block !important;
	}

	#extrato-action-buttons button span {
		display: block;
		max-width: 100%;
	}

	/* As linhas dos itens dentro da gaveta (força empilhamento seguro) */
	.extrato-item-row>div>div {
		flex-direction: column !important;
		gap: 8px !important;
	}

	/* A tag de Quantidade na direita desce para o fluxo da esquerda no mobile */
	.extrato-item-row span[style*="height: fit-content"] {
		align-self: flex-start !important;
		margin-top: 4px;
	}

	/*--- TELA 2 (SELEÇÃO DE LISTA DE CONFERÊNCIAS) ---*/
	#painel-preparacao-conferencia {
		background-color: var(--sigma-page-bg) !important;
		min-height: 0 !important;
		box-sizing: border-box;
		padding: 8px 12px !important;
		padding-bottom: var(--mobile-bottom-nav-clearance) !important;
		border-radius: 14px !important;
	}

	/* 2. Cards em coluna ocupando 100% da largura no mobile */
	#grid-listas-tela2,
	#grid-postos-tela2,
	#grid-listas-tela2.prep-grid,
	#grid-postos-tela2.prep-grid {
		padding-bottom: 8px !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
		align-items: stretch !important;
		width: 100% !important;
	}

	.prep-ativo-selecionado {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 8px !important;
	}

	.prep-ativo-trocar-hint {
		color: #800020 !important;
		opacity: 0.8;
	}

	.prep-btn-iniciar,
	.prep-lista-cta .btn-soft {
		width: 100% !important;
		min-width: 0 !important;
	}

	#grid-listas-tela2 .card-lista-tela2,
	#grid-postos-tela2 .card-opcao-tela2,
	#grid-listas-tela2.prep-grid .card-lista-tela2,
	#grid-postos-tela2.prep-grid .card-opcao-tela2 {
		align-self: stretch !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	#barra-confirmacao-tela2 {
		flex-direction: column !important;
		text-align: center;
	}

	#barra-confirmacao-tela2 button {
		width: 100% !important;
		justify-content: center;
	}

	.stepper-visual {
		display: none !important;
	}

	.btn-prep-back-bottom {
		width: fit-content;
		/* Garante que no celular o botão também não estique */
		justify-content: center;
		align-self: center;
	}

	.prep-inner-wrapper {
		padding: 25px 15px;
	}

	/* Força a ocultação com a maior especificidade possível */
	div#resume-container.em-foco>div.v4-op-card:not(.card-ativo) {
		display: none !important;
		opacity: 0 !important;
		visibility: hidden !important;
	}

	/* Garante que o container pai não force a exibição dos filhos via grid */
	div#resume-container.em-foco {
		display: block !important;
		/* Quebra o grid para apenas um card aparecer */
	}
	

	/* 1. Oculta elementos exclusivos de PC */
	#main-sidebar {
		display: none !important;
	}

	#menu-btn {
		display: none !important;
	}

	/* #fab-global-container fica visível no mobile (menu + / Novo) — não ocultar */

	.sidebar-overlay {
		display: none !important;
	}

	/* 1. Esconde definitivamente o botão "Voltar" antigo do rodapé no celular */
    #painel-extrato-conferencia .prep-footer-actions button[onclick*="fecharExtratoConferencia"] {
        display: none !important;
    }
	
	/* 2. Estilo e efeito de toque elegante para o botão de fechar no topo */
    .btn-fechar-extrato-topo:active {
        background: #e2e8f0 !important;
        transform: scale(0.92);
    }

	/* 1. Prep no fluxo normal (evita viewport fixo + scroll duplo) */
    #painel-preparacao-conferencia,
    #painel-preparacao-checklist,
    #painel-extrato-conferencia,
    .sigma-prep-view {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        background: #f8fafc !important;
        z-index: 150 !important;
        padding: 8px 12px var(--mobile-bottom-nav-clearance) 12px !important;
        margin: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    #view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist,
    #view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist.sigma-prep-view {
        position: relative !important;
        top: auto !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 4px 8px var(--mobile-bottom-nav-clearance) 8px !important;
    }

    body.prep-conferencia-aberta-body #view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia,
    body.prep-conferencia-aberta-body #view-dashboard.prep-conferencia-aberta > #painel-preparacao-conferencia.sigma-prep-view {
        position: fixed !important;
        top: calc(75px + env(safe-area-inset-top, 0px)) !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: auto !important;
        max-width: none !important;
        height: auto !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: hidden !important;
        z-index: 20050 !important;
        pointer-events: auto !important;
        padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px)) 12px !important;
        box-sizing: border-box !important;
        background: #f8fafc !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-header,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-stack,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-selecao-row,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .frota-form-section,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .frota-form-field,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-posto-picker,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-posto-menu,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-ativo-sessao,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-ativo-lista,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-actions,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .form-control-clean {
        max-width: 100% !important;
        min-width: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-stack {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-selecao-row {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-posto-picker {
        display: block !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-posto-menu {
        position: static !important;
        left: auto !important;
        right: auto !important;
        max-height: min(38vh, 260px) !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia #prep-sec-ativo .prep-ativo-lista {
        max-height: min(28vh, 180px) !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-btn-iniciar,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-btn-cancelar,
    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-btn-iniciar:not([hidden]) {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-title-row {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body.prep-conferencia-aberta-body #painel-preparacao-conferencia .prep-conf-title-text {
        min-width: 0 !important;
        overflow: hidden;
    }

    body.prep-checklist-aberta-body #view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist,
    body.prep-checklist-aberta-body #view-dashboard.prep-checklist-aberta > #painel-preparacao-checklist.sigma-prep-view {
        position: fixed !important;
        top: calc(75px + env(safe-area-inset-top, 0px)) !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: auto !important;
        height: auto !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: hidden !important;
        z-index: 20050 !important;
        pointer-events: auto !important;
        padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px)) 12px !important;
        box-sizing: border-box !important;
        background: #f8fafc !important;
        visibility: visible !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-header {
        flex-shrink: 0;
        min-width: 0 !important;
        max-width: 100% !important;
        margin-bottom: 8px !important;
        padding-bottom: 10px !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-stack,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-selecao-row,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .frota-form-section,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .frota-form-field,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .check-ativo-search,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .check-resultados-busca,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-actions,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .form-control-clean {
        max-width: 100% !important;
        min-width: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-stack {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        gap: 12px !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-selecao-row {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .check-resultados-busca {
        max-height: min(32vh, 200px) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-btn-iniciar,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-btn-cancelar,
    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-btn-iniciar:not([hidden]) {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-title-row {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body.prep-checklist-aberta-body #painel-preparacao-checklist .prep-check-title-text {
        min-width: 0 !important;
        overflow: hidden;
    }

    /* 2. Título compacto no mobile */
    #painel-preparacao-conferencia .prep-title-section,
    #painel-extrato-conferencia .prep-title-section,
    .sigma-prep-view .prep-title-section {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 0 14px 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        flex-shrink: 0 !important;
    }

    #painel-preparacao-conferencia .prep-title-text h2,
    #painel-extrato-conferencia .prep-title-text h2,
    .sigma-prep-view .prep-title-text h2 {
        font-size: 1.35rem !important;
        line-height: 1.35 !important;
        margin: 0 !important;
        padding: 0 0 2px 0 !important;
        overflow: visible !important;
        color: #0f172a !important;
    }

    /* 3. Seções limpas e sem excessos de padding interno */
    #secao-passo-1,
    #secao-passo-2,
    .sigma-prep-view .prep-section {
        width: 100% !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        padding-bottom: 0 !important; 
    }

    /* 4. Sem tijolo fantasma (gerava scroll vazio) */
    #secao-passo-1::after,
    #secao-passo-2::after,
    .sigma-prep-view .prep-section::after {
        content: none !important;
        display: none !important;
        height: 0 !important;
    }

    /* 5. Ações de rodapé alinhadas — sem empurrar a página */
    .prep-footer-actions {
        margin-top: 12px !important;
        padding-bottom: 0 !important;
        padding-top: 4px !important;
        position: relative !important;
        z-index: 10 !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

	/* 4. Oculta a barra inferior durante o carregamento inicial da cortina */
	#sigma-global-curtain:not([style*="display: none"])~.mobile-bottom-nav,
	body:has(#sigma-global-curtain:not([style*="display: none"])) .mobile-bottom-nav {
		display: none !important;
	}

	/* 4.1 BARRA INFERIOR — absoluta dentro de #sigma-chrome-layer (fixa na tela) */
	#sigma-chrome-layer .mobile-bottom-nav,
	.mobile-bottom-nav {
		display: flex !important;
		position: absolute !important;
		bottom: calc(var(--mobile-bottom-nav-offset) + var(--sigma-safe-bottom, 0px)) !important;
		left: 15px !important;
		right: 15px !important;
		height: 65px !important;
		z-index: 3 !important;
		gap: 12px !important;
		background: transparent !important;
		background-color: transparent !important;
		border: none !important;
		box-shadow: none !important;
		pointer-events: none;
		filter: none !important;
		transform: none !important;
	}

	/* Reativa o clique apenas nas caixas visíveis dos botões da barra */
	.nav-items-container,
	.nav-fab-btn {
		pointer-events: auto !important;
	}

	/* 5. Bloco branco da esquerda (Início, Atividades, TRUG) */
	.nav-items-container {
		flex: 1;
		background: var(--bg-card-clean, #ffffff) !important;
		border-radius: 20px !important;
		display: flex;
		justify-content: space-around;
		align-items: center;
		box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15) !important;
		padding: 0 10px;
	}

	/* Estilo dos atalhos individuais */
	.nav-item {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		color: #94a3b8;
		text-decoration: none;
		font-size: 0.65rem;
		font-weight: 600;
		gap: 5px;
		flex: 1;
		-webkit-tap-highlight-color: transparent;
	}

	.nav-item.active {
		color: #111111 !important;
	}

	.nav-item i {
		font-size: 1.3rem;
	}

	/* 6. Botão NOVO (Escuro à direita) */
	.nav-fab-btn {
		width: 65px !important;
		background: #111111 !important;
		border-radius: 20px !important;
		border: none !important;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		color: #94a3b8;
		font-size: 0.65rem;
		font-weight: 500;
		cursor: pointer;
		box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.2) !important;
		-webkit-tap-highlight-color: transparent;
	}

	.nav-fab-icon {
		font-size: 1.4rem !important;
		color: #ffffff !important;
		margin-bottom: 2px;
	}

	.nav-fab-btn span {
		margin-top: 2px;
	}

	/* Esconde o botão grande de filtrar do meio da tela, pois a barra inferior já faz isso */
	#view-my-history .form-group-clean.align-bottom {
		display: none !important;
	}

	/* Esconde os botões vermelhos de "Voltar" nas telas de preparação da Nova Conferência */
	#painel-preparacao-conferencia .prep-footer-actions {
		display: none !important;
	}

	/* ========================================================= */
	/* 📱 COMPACTAÇÃO DE LAYOUT: TELA NOVO TRUG                  */
	/* ========================================================= */

	/* 1. Esconde o botão "Emitir TRUG" do topo, pois o botão híbrido inferior assumiu o controle */
	#cautela-nova #btn-iniciar-cautela {
		display: none !important;
	}

	/* 2. Zera margens acumuladas entre o topo da tela e o wrapper de cautelas */
	#view-cautelas .sigma-v3-clean-wrapper {
		padding: 0 !important;
		margin-top: 0 !important;
	}

	/* 3. Puxa a seção para cima e reduz o espaço em branco abaixo do header principal */
	#cautela-nova {
		padding-top: 5px !important;
	}

	/* 4. Compacta o cabeçalho da seção ("Novo TRUG") e reduz o recuo lateral esquerdo/direito */
	#cautela-nova .section-modern-header {
		margin-top: 0 !important;
		margin-bottom: 12px !important;
		padding: 8px 4px !important;
		/* Diminui a distância da borda esquerda */
		gap: 8px !important;
	}

	/* 5. Alarga os cards internos para aproveitarem ao máximo a largura da tela do celular */
	#cautela-nova .sigma-v3-clean-card {
		padding: 15px 10px !important;
		margin-bottom: 15px !important;
		border-radius: 12px !important;
	}

	/* =========================================================================
   📱 HUB DE GESTÃO - EXCLUSIVO PARA MOBILE (MAX-WIDTH: 768PX)
   ========================================================================= */

	#view-menu-geral {
    	padding-top: 4px !important;
	}

	/* Estrutura das Seções */
    .menu-hub-section {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .menu-hub-label {
        font-size: 0.75rem;
        font-weight: 700;
        color: #64748b;
        text-transform: uppercase;
        letter-spacing: 0.8px;
        display: flex;
        align-items: center;
        gap: 6px;
        padding-left: 4px;
    }

    /* Lista vertical: um módulo por linha (largura total) */
    .menu-hub-grid {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
    }

    /* O Card Interativo (Otimizado para o Toque) */
    .menu-hub-card {
        width: 100%;
        box-sizing: border-box;
        background: #f8fafc;
        border: 1px solid #e2e8f0;
        border-radius: 14px;
        padding: 14px 16px;
        display: flex;
        align-items: center;
        gap: 12px;
        cursor: pointer;
        position: relative;
        transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
        -webkit-tap-highlight-color: transparent !important;
        outline: none !important;
    }

    /* Efeito de Clique / Toque Físico no Celular */
    .menu-hub-card:active {
        transform: scale(0.98) !important;
        background: #e2e8f0;
        border-color: #cbd5e1;
    }

    .menu-hub-group {
        display: flex;
        flex-direction: column;
        gap: 8px;
        width: 100%;
    }

    .menu-hub-sub {
        display: none;
        flex-direction: column;
        gap: 8px;
        margin: 0 0 2px 18px;
        padding: 2px 0 2px 10px;
        border-left: 2px solid #e2e8f0;
    }

    .menu-hub-group.is-open .menu-hub-sub {
        display: flex;
    }

    .menu-hub-parent .hub-arrow {
        transition: transform 0.2s ease;
    }

    .menu-hub-group.is-open .menu-hub-parent .hub-arrow {
        transform: rotate(180deg);
    }

    /* Caixa do Ícone à Esquerda */
    .hub-card-icon {
        width: 42px;
        height: 42px;
        border-radius: 10px;
        background: #ffffff;
        border: 1px solid #e2e8f0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.2rem;
        color: #000000;
        flex-shrink: 0;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    }

    /* Área de Texto do Card */
    .hub-card-info {
        display: flex;
        flex-direction: column;
        gap: 2px;
        flex-grow: 1;
        text-align: left;
        overflow: hidden;
    }

    .hub-card-info strong {
        font-size: 0.95rem;
        font-weight: 700;
        color: #0f172a;
        line-height: 1.2;
    }

    .hub-card-info span {
    	font-size: 0.72rem;
    	color: #64748b;
    	font-weight: 500;
    	line-height: 1.3;
    	display: -webkit-box;
    	-webkit-line-clamp: 2; /* Para Chrome, Safari, Edge e Android */
    	line-clamp: 2; /* Padrão oficial W3C para silenciar o aviso do VS Code */
    	-webkit-box-orient: vertical;
    	overflow: hidden;
	}

    /* Seta direcional discreta à direita */
    .hub-arrow {
        font-size: 0.8rem;
        color: #94a3b8;
        transition: transform 0.2s;
        flex-shrink: 0;
    }

	/* === 📄 VISUALIZADOR DE PDF SIGMA === */
	.sigma-v3-pdf-modal {
        width: 100vw !important;
        height: 100vh !important;
        max-height: 100vh !important;
        border-radius: 0 !important;
    }

	.sigma-v3-pdf-body {
        padding: 10px;
    }

}

/* =============================================================================
   99-MISC · Diversos — utilitários e restos em uso
   ============================================================================= */

/* Placeholder Interno */

#detail-placeholder {
	display: none;
	width: 100%;
	height: 100%;
	min-height: 350px;
	align-items: center;
	justify-content: center;
	pointer-events: auto;
}

/* Estado Vazio (Placeholder) */

.sigma-v3-empty-state {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: #94a3b8;
	text-align: center;
	padding: 60px 0;
}

.sigma-v3-empty-state i {
	font-size: 4em;
	margin-bottom: 15px;
	opacity: 0.2;
}

/* Ajuste para garantir que o Flatpickr não "quebre" o layout flex */

.flatpickr-mobile {
	appearance: none !important;
}

.text-white {
	color: #0f172a;
}

#menu-btn {
	display: none;
	background: none;
	border: none;
	color: black;
	font-size: 1.5em;
	cursor: pointer;
	padding: 0 5px;
}

.v3-greeting-compact {
	height: auto !important;
	padding: 0 !important;
}

#greeting-photo {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: 3px solid #800020;
	object-fit: cover;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.v3-user-info {
	display: flex;
	flex-direction: column;
	/* Empilha H2, Span e Small verticalmente */
	align-items: flex-start;
	gap: 2px;
}

#greeting-text {
	margin: 0;
	font-size: 1.6rem;
	/* Aumentado para ênfase */
	color: #0f172a;
	font-weight: 600;
	letter-spacing: -0.5px;
}

#greeting-name {
	color: #881337;
	/* Vermelho bombeiro para destacar o nome/posto */
	font-weight: 500;
	font-size: 1.1rem;
	display: block;
}

#current-date {
	color: #64748b;
	font-size: 1.0rem;
	font-weight: 500;
	font-style: italic;
	margin-top: 5px;
	text-transform: none !important;
	/* Força o navegador a ignorar qualquer regra de 'uppercase' dos pais */
}

.skeleton-text {
	display: inline-block;
	height: 1rem;
	background: #e2e8f0;
	border-radius: 4px;
	animation: skeleton-pulse 1.5s infinite;
}

/* Esconde o container enquanto carrega */

#cards-container.hidden-until-load {
	display: none !important;
}

/* Bloco de Informação Base */

/* Garante que o ícone acompanhe o estilo */

.v3-action-hub {
	display: flex;
	align-items: center;
}

.v3-fab-options {
	display: flex;
	gap: 10px;
}

.v3-fab-main {
	display: none !important;
}

/* --- NOVO DESIGN SYSTEM SIGMA V3 (EXCLUSIVO DASHBOARD) --- */

.sigma-v3-details-wrapper {
	background: #f1f5f9 !important;
	border-radius: 20px !important;
	padding: 10px !important;
	/* Reduzido de 25px para 10px */
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.05) !important;
	margin-top: 10px;
	/* Reduzido de 20px para 10px */
	overflow: hidden;
	/* Garante que nada "vaze" para fora */
}

.sigma-v3-details-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 15px;
	padding: 10px 0;
}

/* --- CARD DE RESUMO OPERACIONAL PREMIUM SIGMA V3 (FINAL CORRIGIDO) --- */

/* --- ESTILO FLUTUANTE SIGMA V3 --- */

.sigma-v3-clean-wrapper {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 10px 0 !important;
	width: 100%;
	box-sizing: border-box;
	padding-top: 0 !important;
    margin-top: 0 !important;
}

.sigma-v3-title-label {
	font-size: 1.7em;
	font-weight: 500;
	margin: 10px 0 10px 0 !important;
	display: flex;
	align-items: center;
	gap: 10px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}

.sigma-v3-pdf-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

/* 🎨 REPAUINADA DOS BOTÕES: Estilo Sóbrio, Limpo e Moderno */

.sigma-v3-pdf-btn {
    background: #f1f5f9;
    border: 1px solid #cbd5e1;
    color: #334155;
    padding: 8px 14px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.85em;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
}

.sigma-v3-pdf-btn:hover {
    background: #e2e8f0 !important;
    border-color: #94a3b8 !important;
    color: #0f172a !important;
    transform: translateY(-1px);
}

.sigma-v3-pdf-btn i {
    font-size: 1.1em;
}

/* ✅ ÁREA DE RENDERIZAÇÃO (páginas empilhadas na vertical) */

.sigma-v3-pdf-body {
    flex: 1;
    background: #e2e8f0;
    overflow-x: hidden;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    padding: 20px;
    box-sizing: border-box;
}

/* ✅ OS CANVASES (Páginas do PDF) */

.pdf-render-canvas {
	background: white;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
	max-width: 100%;
	width: auto;
	height: auto !important;
	margin: 0 auto;
	border-radius: 2px;
	display: block;
	flex-shrink: 0;
}

/* Esconde o canvas estático antigo se ele ainda estiver no HTML */

#pdf-render-canvas:not(.pdf-render-canvas) {
	display: none;
}

/* --- TIMELINE MODERNA SIGMA V3 --- */

.sigma-v3-timeline {
	position: relative;
	padding: 20px 0;
	margin-left: 20px;
	border-left: 3px solid rgba(128, 0, 32, 0.1);
}

.sigma-v3-timeline-item {
	position: relative;
	margin-bottom: 30px;
	padding-left: 35px;
	animation: slideInLeft 0.4s ease-out;
}

.sigma-v3-timeline-item::before {
	content: "";
	position: absolute;
	left: -9px;
	top: 0;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #fff;
	border: 3px solid #800020;
	box-shadow: 0 0 10px rgba(128, 0, 32, 0.2);
	z-index: 2;
}

.sigma-v3-timeline-card {
	background: #ffffff;
	border-radius: 15px;
	padding: 18px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
	border: 1px solid #f1f5f9;
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: 0.3s;
}

.sigma-v3-timeline-card:hover {
	transform: translateX(8px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
	border-color: #800020;
}

.sigma-v3-timeline-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.sigma-v3-timeline-title {
	font-weight: 800;
	color: #1e293b;
	font-size: 1em;
	text-transform: uppercase;
}

.sigma-v3-timeline-meta {
	font-size: 0.75em;
	color: #94a3b8;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 10px;
}

.sigma-v3-timeline-badge {
	padding: 3px 10px;
	border-radius: 20px;
	font-size: 0.9em;
	font-weight: 800;
	text-transform: uppercase;
}

/*tabelas CAUTELAS ATIVAS*/

.sigma-v3-clean-card {
	background: white;
	border-radius: 18px;
	padding: 20px;
	border: 1px solid #e2e8f0;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

/*CARDS DE POSTOS*/

.v3-group-title {
	grid-column: 1/-1;
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 30px 0 15px;
	padding-bottom: 8px;
	border-bottom: 2px solid #e2e8f0;
	color: #1e293b;
	font-weight: 800;
	text-transform: uppercase;
	font-size: 0.9em;
	letter-spacing: 1px;
}

.v3-posto-card {
	background: #fff;
	border-radius: 20px;
	border: 1px solid #e2e8f0;
	display: flex;
	flex-direction: column;
	height: 100%;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	cursor: pointer;
	box-sizing: border-box;
}

.v3-posto-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
}

/* Reaproveitando os estilos do semáforo que mandei antes */

.status-ok {
	background: #e8f5e9;
	color: #2e7d32;
	border-color: #c8e6c9;
}

.ph-spin {
	display: inline-block;
	animation: sigma-ph-spin 0.8s linear infinite;
}

.tag-sugestao-setor {
	display: inline-flex;
	align-items: center;
	background: #f8fafc;
	color: #475569;
	padding: 6px 12px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	cursor: pointer;
	border: 1px solid #e2e8f0;
	transition: all 0.2s;
	text-transform: uppercase;
}

.tag-sugestao-setor:hover {
	background: #fdf2f4;
	color: #800020;
	border-color: #f3c5ce;
	transform: translateY(-1px);
}

/* Badge de Nível Translúcido - Estilo Moderno */

#resultados-busca-vtr {
	margin-top: 20px;
	max-height: 250px;
	overflow-y: auto;
	padding: 5px;
}

.view-section {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;      /* 🔥 Garante zero padding no container pai da tela */
    margin: 0 !important;       /* 🔥 Garante zero margem */
    box-sizing: border-box !important;
    display: none;
    transition: all 0.3s ease;
}

.view-section.active-view {
    display: block;
    width: 100% !important;
    animation: menuFadeIn 0.4s ease-out forwards;
}

.sector-card {
	background-color: white;
	padding: 15px;
	min-height: 100px;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	flex: 0 0 220px;
	max-width: 100%;
	cursor: pointer;
	transition: transform 0.2s, box-shadow 0.2s;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.sector-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
	background-color: #fff5f5;
}

.sector-card.status-alert {
	border-left: 5px solid #d90f23;
}

.sector-card.status-ok {
	border-left: 5px solid #1b8a3e;
}

.sector-card.status-unit {
	border-left: 5px solid #2c7399;
}

.sector-card.status-posto {
	border-left: 5px solid #8e44ad;
}

.sector-card.active-card {
	background-color: #ffecec;
	border: 1px solid #d90f23;
	border-left: 5px solid #d90f23;
}

.sector-card h3 {
	margin-top: 0;
	font-size: 1.1em;
	color: #333;
	margin-bottom: 5px;
	font-weight: bold;
}

.sector-card .main-stat {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 10px 0;
}

.sector-card .count-value {
	font-size: 2em;
	font-weight: bold;
}

.sector-card.status-alert .count-value {
	color: #d90f23;
}

.sector-card.status-ok .count-value {
	color: #1b8a3e;
}

.sector-card .card-footer {
	font-size: 0.75em;
	color: #777;
	margin-top: 10px;
	border-top: 1px solid #eee;
	line-height: 1.4;
}

#sugestoes-estoque-editor {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 1000;
	background: white;
	border: 1px solid #2c7399;
	border-radius: 0 0 8px 8px;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
	display: none;
	max-height: 250px;
	overflow-y: auto;
}

.suggestion-item {
	display: flex !important;
	align-items: center !important;
	padding: 10px 15px;
	border-bottom: 1px solid #f1f5f9;
	cursor: pointer;
}

.suggestion-item:hover {
	background: #f0f7fa;
}

.suggestion-item i {
	width: 20px;
	text-align: center;
	font-size: 1.1em;
	flex-shrink: 0;
}

.suggestion-item div {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.suggestion-item b {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
}

.suggestion-item small {
	color: #64748b;
	font-size: 0.8em;
}

.op-card {
	background: white;
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
	padding: 25px;
	margin-bottom: 25px;
	border-left: 5px solid #ccc;
}

.op-card.resume:hover {
	transform: translateY(-2px);
}

.suggestions-box {
	position: absolute;
	top: calc(100% + 2px);
	/* ✅ Pequeno respiro para não colar na borda do input */
	left: 0;
	right: 0;
	z-index: 20;
	/* ✅ Aumentado para garantir prioridade sobre tudo */
	background-color: #fff;
	border: 1px solid #cbd5e1;
	/* ✅ Borda mais neutra para não brigar com o conteúdo */
	border-top: none;
	border-radius: 0 0 8px 8px;
	/* ✅ Arredondamento mais moderno */
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
	/* ✅ Sombra mais suave e profunda */
	max-height: 250px;
	overflow-y: auto;
	display: none;
}

/* ✅ Adicione este ajuste para a barra de rolagem ficar elegante */

.suggestions-box::-webkit-scrollbar {
	width: 6px;
}

.suggestions-box::-webkit-scrollbar-thumb {
	background-color: #cbd5e1;
	border-radius: 10px;
}

.status-badge {
	padding: 4px 8px;
	border-radius: 4px;
	font-size: 0.8em;
	font-weight: bold;
}

.status-badge.badge-concluida {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	white-space: nowrap;
	background: #ecfdf5;
	color: #047857;
	border: 1px solid rgba(4, 120, 87, 0.28);
}

.badge-pendente {
	background-color: #ffebee;
	color: #d32f2f;
}

.badge-solucao {
	background-color: #fff9c4;
	color: #fbc02d;
	border: 1px solid #fbc02d;
}

.close-btn {
	position: absolute;
	top: 15px;
	right: 15px;
	background: none;
	border: none;
	font-size: 20px;
	cursor: pointer;
	color: #999;
	transition: color 0.2s;
}

.close-btn:hover {
	color: #d90f23;
}

.sigma-senha-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #fdf2f4;
	color: #800020;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border: 1px solid #f3c5ce;
}

.sigma-senha-icon i {
	font-size: 1.35rem;
	line-height: 1;
}

.sigma-senha-titles h3 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
}

.sigma-senha-titles p {
	margin: 3px 0 0;
	font-size: 0.8rem;
	color: #64748b;
	font-weight: 500;
}

.sigma-senha-hint {
	margin: 0 0 14px;
	font-size: 0.85rem;
	line-height: 1.45;
	color: #64748b;
}

.sigma-senha-field {
	margin-bottom: 12px;
}

.sigma-senha-field label {
	display: block;
	margin: 0 0 6px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-senha-toggle {
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #94a3b8;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.sigma-senha-toggle i {
	font-size: 1.15rem;
	line-height: 1;
}

.sigma-senha-toggle:hover,
.sigma-senha-toggle.is-active {
	color: #800020;
	background: #fdf2f4;
}

.sigma-senha-divider {
	height: 0;
	border: 0;
	border-top: 1px dashed #e2e8f0;
	margin: 6px 0 14px;
}

.sigma-setores-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #fdf2f4;
	color: #800020;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border: 1px solid #f3c5ce;
}

.sigma-setores-icon.is-danger {
	background: #fef2f2;
	color: #b91c1c;
	border-color: #fecaca;
}

.sigma-setores-icon i {
	font-size: 1.35rem;
	line-height: 1;
}

.sigma-setores-titles h3 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
}

.sigma-setores-titles p {
	margin: 3px 0 0;
	font-size: 0.8rem;
	color: #64748b;
	font-weight: 500;
}

.sigma-setores-hint {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #64748b;
}

.sigma-setores-field {
	margin-bottom: 14px;
}

.sigma-setores-add-row {
	display: flex;
	align-items: stretch;
	gap: 8px;
}

.sigma-setores-vazio {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 28px 16px;
	color: #94a3b8;
	font-size: 0.88rem;
}

.sigma-setores-vazio i {
	font-size: 1.6rem;
	opacity: 0.55;
}

.sigma-setores-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border-bottom: 1px solid #e2e8f0;
	background: #fff;
}

.sigma-setores-item:last-child {
	border-bottom: none;
}

.sigma-setores-nome {
	font-weight: 700;
	color: #1e293b;
	font-size: 0.9rem;
	text-transform: uppercase;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sigma-setores-item-acoes {
	display: flex;
	gap: 4px;
	flex-shrink: 0;
}

.sigma-relatorio-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #fdf2f4;
	color: #800020;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border: 1px solid #f3c5ce;
}

.sigma-relatorio-icon i {
	font-size: 1.35rem;
	line-height: 1;
}

.sigma-relatorio-titles h3 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
}

.sigma-relatorio-titles p {
	margin: 3px 0 0;
	font-size: 0.8rem;
	color: #64748b;
	font-weight: 500;
}

.sigma-relatorio-section {
	margin-bottom: 16px;
}

.sigma-relatorio-label {
	display: block;
	margin: 0 0 8px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-relatorio-layouts {
	display: flex;
	gap: 10px;
}

.sigma-relatorio-layout {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 14px 10px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
	color: #64748b;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.sigma-relatorio-layout i {
	font-size: 1.25rem;
	line-height: 1;
	color: inherit;
}

.sigma-relatorio-layout span {
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.sigma-relatorio-layout:hover {
	border-color: #cbd5e1;
	color: #334155;
}

.sigma-relatorio-layout.is-active {
	background: #fdf2f4;
	border-color: #800020;
	color: #800020;
	box-shadow: 0 0 0 1px rgba(128, 0, 32, 0.12);
}

.sigma-relatorio-field {
	margin-bottom: 10px;
}

.sigma-relatorio-filters-row {
	display: flex;
	gap: 10px;
}

.sigma-relatorio-filters-row .sigma-relatorio-field {
	flex: 1;
	margin-bottom: 0;
}

.sigma-relatorio-status {
	display: grid;
	gap: 8px;
	padding: 12px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
}

.sigma-relatorio-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 0.85rem;
	color: #334155;
	cursor: pointer;
	line-height: 1.35;
}

/* APP CONTAINER (IFRAME) */

#app-runner-container {
	display: none;
	position: fixed;
	top: 60px;
	/* Ajustado para a altura da nova Header */
	left: 85px;
	/* Ajustado para a largura da Sidebar Slim */
	width: calc(100% - 85px);
	/* Preenche o restante da tela */
	height: calc(100vh - 60px);
	/* Desconta a altura da Header */
	background: white;
	z-index: 500;
	overflow: hidden;
}

#app-iframe {
	width: 100%;
	height: 100%;
	border: none;
}

.status-ok {
	background-color: #e8f5e9;
	color: #2e7d32;
	border: 1px solid #c8e6c9;
}

.status-alert {
	background-color: #ffebee;
	color: #c62828;
	border: 1px solid #ffcdd2;
}

#units-cards-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	width: 100% !important;
	margin-top: 0;
}

.border-azul {
	border-left: 6px solid #2c3e50 !important;
}

/*Efeito haver do botão de consulta global de estoque*/

tr[onclick]:hover {
	background-color: #f1f5f9 !important;
	transition: 0.2s;
}

/* Estilo base para itens restritos (escondidos por padrão) */

a.restricted-admin-only,
div.menu-label.restricted-admin-only {
	display: none !important;
	/* Mantém escondido */
}

.op-card.resume {
	position: relative;
}

#itens-custodia-list {
	max-height: 300px;
	overflow-y: auto;
	border: 1px solid #ddd;
	padding: 10px;
	border-radius: 5px;
	margin-bottom: 15px;
}

.unit-building-card {
	position: relative;
	background: white;
	border-radius: 12px;
	border: 1px solid #ddd;
	border-top: 6px solid #800020;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
	transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease, opacity 0.5s ease;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.unit-building-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);
}

.switch {
	position: relative;
	display: inline-block;
	width: 44px;
	height: 24px;
}

/* ================================================================
   PATCH DE IDENTIDADE VISUAL E RENDERIZAÇÃO SIGMA V3
   Garante a exibição correta de ícones e avatares de material
   ================================================================ */

/* BLINDAGEM TOTAL DOS ÍCONES SIGMA V3 */

/* Força o ícone a ser um bloco centralizado e visível */

.fa-solid,
.fas,
.fa {

	font-weight: 900 !important;
	display: inline-flex !important;
	/* Mudado para inline-flex */
	align-items: center !important;
	justify-content: center !important;
	font-style: normal !important;
	text-rendering: auto !important;
	line-height: 1 !important;
	width: auto !important;
	height: auto !important;
}

/* O Container do Avatar (Quadrado Arredondado) */

.sigma-icon-avatar {
	width: 36px !important;
	height: 36px !important;
	min-width: 36px !important;
	border-radius: 10px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	position: relative !important;
	margin: 0 !important;
	/* Garante que não tenha margem externa que o desalinhe */
}

/* Centralização Absoluta do Ícone dentro do Quadrado */

.sigma-icon-avatar i {
	font-size: 18px !important;
	/* Tamanho proporcional ao quadrado de 36px */
	position: static !important;
	/* Remove posicionamentos relativos que o tirem do centro */
	margin: 0 !important;
	padding: 0 !important;
	color: inherit !important;
	display: flex !important;
}

/* CORES V3 - Ajustadas para maior contraste */

.avatar-kit {
	background: #fff7ed !important;
	color: #f59e0b !important;
	border: 1px solid #ffedd5 !important;
}

.avatar-patrimonio {
	background: #f0f9ff !important;
	color: #2c7399 !important;
	border: 1px solid #e0f2fe !important;
}

.avatar-consumo {
	background: #f8fafc !important;
	color: #64748b !important;
	border: 1px solid #f1f5f9 !important;
}

/* ======================================================= */

/* ESTILOS DO MODAL NATIVO (DIALOG) - CATÁLOGO MESTRE      */

/* ======================================================= */

.sigma-dialog {
	border: none;
	border-radius: 16px;
	padding: 0;
	width: 850px;
	max-width: 95vw;
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
	background: transparent;
	/* O fundo real é o container */
}

.sigma-dialog::backdrop {
	background: rgba(15, 23, 42, 0.7);
	backdrop-filter: blur(4px);
}

.sigma-dialog-container {
	display: flex;
	flex-direction: column;
	background: #ffffff;
	border-radius: 16px;
	overflow: hidden;
}

/* CONTENT ABAS */

.sigma-dialog-content {
	flex: 1;
	padding: 30px;
	position: relative;
	overflow-y: auto;
	max-height: 50vh;
}

.pane-title {
	margin: 0 0 20px 0;
	color: #1e293b;
	font-size: 1.1em;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-bottom: 2px solid #f1f5f9;
	padding-bottom: 10px;
}

/* FORMS E GRIDS */

.sigma-grid-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px;
	margin-bottom: 15px;
}

/* INPUT COM SUFIXO (EX: ANOS) */

/* SMART CARDS (CONSUMO VS PATRIMONIO) */

/* TOGGLE SWITCH (CHAVEZINHA LIGA/DESLIGA MODERNA) */

.sigma-dialog-footer {
	background: #fff;
	padding: 20px 25px;
	border-top: 1px solid #e2e8f0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* --- ÁREA DE CONTEÚDO PRINCIPAL (SLIM & SEM VAZIO NO FUNDO) --- */

.content {
    position: relative;
    /* margin-top/padding de desktop ficam no @media (min-width: 769px)
       para não sobrescrever o layout mobile (body já reserva o header). */
    margin-left: 52px;
    width: calc(100% - 52px);
    background: var(--sigma-page-grad, #f5f6f8) !important;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transition: margin-left 0.25s cubic-bezier(0.4, 0, 0.2, 1), width 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 10;
}

/* Desktop: trava a página; só .content rola (sidebar permanece fixed) */
@media (min-width: 769px) {
	html {
		height: 100% !important;
		overflow: hidden !important;
	}

	body {
		height: 100% !important;
		max-height: 100vh !important;
		overflow: hidden !important;
		padding-bottom: 0 !important;
	}

	#sigma-app-invertible {
		height: 100% !important;
		max-height: 100% !important;
		overflow: hidden !important;
	}

	#main-sidebar,
	.sidebar {
		position: fixed !important;
		top: 60px !important;
		left: 0 !important;
		height: calc(100vh - 60px) !important;
		height: calc(100dvh - 60px) !important;
		z-index: 999 !important;
	}

	.content {
		margin-top: 60px !important;
		min-height: 0 !important;
		padding: 20px 30px 40px 25px !important;
		height: calc(100vh - 60px) !important;
		height: calc(100dvh - 60px) !important;
		max-height: calc(100vh - 60px) !important;
		max-height: calc(100dvh - 60px) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
	}
}

/* Mobile: sem margem extra — o padding-top do body já compensa o header */
@media (max-width: 768px) {
	.content {
		margin-top: 0 !important;
		margin-left: 0 !important;
		width: 100% !important;
		min-height: auto !important;
		height: auto !important;
		max-height: none !important;
		padding: 8px 15px var(--mobile-bottom-nav-clearance) 15px !important;
		background: transparent !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
	}
}

/* 4. Campo do Perfil Redondo (Circular perfeito) */

/* Correção definitiva para o avatar circular perfeito */

.user-avatar-wrapper.rounded-avatar {
	width: 42px !important;
	height: 42px !important;
	min-width: 42px !important;
	min-height: 42px !important;
	border-radius: 50% !important;
	overflow: visible !important;
	flex-shrink: 0 !important;
	/* Impede que o flexbox esprema o elemento */
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
}

.user-avatar-wrapper.rounded-avatar img.user-avatar-img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: 50% !important;
}

/* Indicador de menu no avatar (mobile): deixa claro que a foto abre opções */
.user-avatar-menu-cue {
	display: none;
}

@media (max-width: 768px) {
	.user-avatar-menu-cue {
		display: flex !important;
		align-items: center;
		justify-content: center;
		position: absolute;
		right: -2px;
		bottom: -2px;
		width: 16px;
		height: 16px;
		border-radius: 50%;
		background: #0f172a;
		color: #ffffff;
		border: 2px solid #ffffff;
		box-shadow: 0 1px 3px rgba(15, 23, 42, 0.25);
		pointer-events: none;
		z-index: 2;
	}

	.user-avatar-menu-cue i {
		font-size: 0.55rem;
		line-height: 1;
	}

	.user-profile-header:active .user-avatar-menu-cue,
	.user-profile-header:focus-visible .user-avatar-menu-cue {
		transform: scale(0.92);
	}

	/* Hub Central de Gestão: sem menu inferior — remove folga extra */
	body.gestao-modulo-aberto #view-menu-geral {
		padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
	}
}

html.modo-noturno-ativo .user-avatar-menu-cue {
	background: #f8fafc;
	color: #0f172a;
	border-color: #1e293b;
}

.user-info-text {
	text-align: right;
	line-height: 1.2;
}

.user-info-text strong {
	display: block;
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.2px;
	color: #0f172a !important;

}

.user-info-text small {
	font-size: 0.65rem;
	font-weight: 600;
	color: #64748b !important;
	text-transform: uppercase;

}

.user-avatar-img {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	border: 2px solid rgba(255, 255, 255, 0.1);
	object-fit: cover;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.skeleton-card {
	height: 160px;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	position: relative;
	overflow: hidden;
	width: 100%;
	/* Força a ocupar todo o espaço do grid */
}

.skeleton-card>div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
	animation: skeleton-pulse 1.5s infinite linear;
	/* 'linear' fica mais suave */
}

.v3-greeting-compact h2 {

	font-size: 1.4rem;
	font-weight: 800;
	color: #1e293b;
	margin: 0;
	letter-spacing: -0.5px;
}

.v3-greeting-compact span {
	font-size: 1rem;
	color: #64748b;
	font-weight: 600;
	display: block;
}

.v3-greeting-compact small {
	font-size: 0.75rem;
	color: #94a3b8;
	font-weight: 700;
	text-transform: uppercase;
}

/* 3. Cards de Pendências e Sincronização */

.sigma-v3-clean-wrapper {
	width: 100%;
}

/* 3.1 Estilo para os cards que serão injetados via JS */

/* 4. Estados Vazios e Detalhes */

.sigma-v3-empty-state {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 60px;
	text-align: center;
	color: #94a3b8;
}

.sigma-v3-empty-state i {
	font-size: 4rem;
	opacity: 0.2;
	margin-bottom: 20px;
}

.sigma-v3-empty-state p {
	font-weight: 700;
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.sigma-v3-details-wrapper {
	padding: 25px;
}

.editor-title-v4 {
	text-align: left;
	flex: 1 1 auto;
	min-width: 0;
}

.editor-title-v4 h2 {
	margin: 2px 0 0 0;
	font-size: 1.15rem;
	color: #1e293b;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	line-height: 1.2;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.editor-title-v4 .sigma-v3-title-label {
	margin: 0;
}

.editor-title-v4 .sigma-v3-description,
.editor-title-v4 small,
#edit-vtr-unidade {
	margin: 3px 0 0 0;
	color: #64748b;
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

/* --- O PALCO MASTER-DETAIL --- */

.sigma-md-container {
	display: flex;
	height: calc(100vh - 158px);
	overflow: hidden;
	position: relative;
}

/* ⬅️ COLUNA ESQUERDA (MASTER - SETORES) — largura fixa só no PC */

.md-master-body {
	flex: 1;
	overflow-y: auto;
	padding: 15px;
	/* TRAVA: Obriga o navegador a respeitar o limite de altura do pai */
	min-height: 0;
}

@media (min-width: 769px) {
	.sigma-md-master {
		width: 420px;
		/* Largura fixa no PC — nomes de setor legíveis */
		background: #ffffff;
		border-right: 1px solid #e2e8f0;
		display: flex;
		flex-direction: column;
		flex-shrink: 0;
		z-index: 2;
	}

	#view-editor-arquitetura .sigma-md-master {
		width: 420px;
		max-width: 42vw;
	}

	/* ➡️ COLUNA DIREITA (DETAIL - ITENS) */
	.sigma-md-detail {
		flex: 1;
		background: #f1f5f9;
		display: flex;
		flex-direction: column;
		z-index: 1;
		min-height: 0 !important;
		min-width: 0 !important;
		height: 100% !important;
		max-height: 100% !important;
		overflow: hidden !important;
	}
}

/* Mobile: master em tela cheia; detail desliza por cima (após regras globais do PC) */
@media (max-width: 768px) {
	#view-editor-arquitetura {
		top: calc(75px + env(safe-area-inset-top, 0px)) !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		z-index: 120 !important;
		background: #f1f5f9 !important;
		/* display fica a cargo do switchView (flex quando aberto / none quando fechado) */
		flex-direction: column !important;
		overflow: hidden !important;
	}

	#view-editor-arquitetura .sigma-md-container {
		flex: 1 1 auto !important;
		height: auto !important;
		min-height: 0 !important;
		width: 100% !important;
	}

	#view-editor-arquitetura .sigma-md-master {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 auto !important;
		background: #ffffff;
		border-right: none !important;
		display: flex !important;
		flex-direction: column !important;
		z-index: 2 !important;
		min-height: 0 !important;
	}

	#view-editor-arquitetura .sigma-md-detail {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		height: 100% !important;
		max-height: none !important;
		flex: none !important;
		display: flex !important;
		flex-direction: column !important;
		background: #f1f5f9 !important;
		transform: translateX(100%) !important;
		transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
		z-index: 20 !important;
		min-height: 0 !important;
		min-width: 0 !important;
		overflow: hidden !important;
		pointer-events: none;
	}

	#view-editor-arquitetura .sigma-md-container.show-detail .sigma-md-detail {
		transform: translateX(0) !important;
		pointer-events: auto;
	}

	#view-editor-arquitetura .sigma-md-container.show-detail .sigma-md-master {
		pointer-events: none;
		visibility: hidden;
	}

	#view-editor-arquitetura .btn-back-mobile {
		display: flex !important;
		align-items: center;
		gap: 5px;
	}

	#view-editor-arquitetura .md-detail-header {
		padding: 15px !important;
	}

	#view-editor-arquitetura .md-detail-body {
		padding: 15px !important;
	}
}

.md-detail-toolbar {
	padding: 15px 25px;
	background: #ffffff;
	border-bottom: 1px solid #e2e8f0;
}

.md-detail-body {
	flex: 1;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding: 25px;

	/* 🎯 A MÁGICA DO SCROLL: Como o pai agora está travado, 
       o scroll nasce perfeitamente aqui dentro! */
	min-height: 0 !important;
	height: 100% !important;
}

.md-empty-state {
	text-align: center;
	padding: 72px 24px;
	color: #94a3b8;
	max-width: 420px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	animation: editorItemIn 0.35s ease both;
}

.md-empty-state .md-empty-icon {
	width: 72px;
	height: 72px;
	border-radius: 20px;
	background: linear-gradient(145deg, #fdf2f4 0%, #fff 100%);
	border: 1px solid #f3c5ce;
	color: #800020;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 8px;
	box-shadow: 0 8px 24px rgba(128, 0, 32, 0.08);
}

.md-empty-state .md-empty-icon i,
.md-empty-state > i {
	font-size: 2rem;
	opacity: 1;
	margin: 0;
	color: #800020;
}

.md-empty-state i {
	font-size: 3.5em;
	margin-bottom: 20px;
	opacity: 0.3;
	color: #64748b;
}

.md-empty-state .md-empty-icon i {
	font-size: 2rem;
	margin-bottom: 0;
	opacity: 1;
	color: #800020;
}

.md-empty-state p {
	line-height: 1.5;
	font-size: 0.95rem;
	font-weight: 700;
	color: #475569;
	margin: 0;
}

.md-empty-state small {
	font-size: 0.8rem;
	color: #94a3b8;
	font-weight: 600;
	line-height: 1.4;
}

/* =========================================================
   EDITOR DE LISTA — redesign SIGMA (Phosphor + gestao)
   ========================================================= */

#view-editor-arquitetura.editor-arquitetura-view {
	background:
		radial-gradient(1200px 400px at 0% 0%, rgba(128, 0, 32, 0.045), transparent 55%),
		radial-gradient(900px 360px at 100% 0%, rgba(44, 115, 153, 0.05), transparent 50%),
		#f4f6f9 !important;
}

#view-editor-arquitetura .editor-lista-header.gestao-modulo-header {
	margin: 0;
	padding: 12px 18px;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid #e8edf3;
	border-top: 6px solid #800020;
	box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);
}

#view-editor-arquitetura .editor-lista-title-row {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-width: 0;
	position: relative;
}

#view-editor-arquitetura .editor-lista-actions {
	position: relative;
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 auto;
	margin-left: auto;
}

#view-editor-arquitetura .editor-lista-voltar-pc {
	background: #f8fafc !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: none !important;
}

#view-editor-arquitetura .editor-lista-voltar-pc:hover {
	background: #f1f5f9 !important;
	color: #1e293b !important;
	border-color: #cbd5e1 !important;
}

#view-editor-arquitetura .btn-lixeira-cart {
	position: relative;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	width: 42px;
	height: 42px;
	border-radius: 10px;
	cursor: pointer;
	color: #475569;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: 0.2s;
	outline: none;
	padding: 0;
}

#view-editor-arquitetura .btn-lixeira-cart i {
	font-size: 1.25rem;
}

#view-editor-arquitetura .btn-lixeira-cart:hover {
	background: #f1f5f9;
	color: #800020;
	border-color: #f3c5ce;
}

#view-editor-arquitetura .badge-lixeira-count {
	position: absolute;
	top: -4px;
	right: -4px;
	background: #e11d48;
	color: white;
	font-size: 0.68rem;
	font-weight: 800;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	display: none;
	align-items: center;
	justify-content: center;
	line-height: 1;
	box-shadow: 0 2px 6px rgba(225, 29, 72, 0.35);
}

#view-editor-arquitetura .popover-lixeira-sigma {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	width: 340px;
	max-width: calc(100vw - 24px);
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.16);
	border: 1px solid #e2e8f0;
	z-index: 1000;
	flex-direction: column;
	overflow: hidden;
	animation: editorItemIn 0.22s ease both;
}

#view-editor-arquitetura .popover-lixeira-head {
	padding: 12px 14px;
	background: #fdf2f4;
	border-bottom: 1px solid #f3c5ce;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#view-editor-arquitetura .popover-lixeira-head h4 {
	margin: 0;
	font-size: 0.85rem;
	color: #1e293b;
	font-weight: 800;
	display: flex;
	align-items: center;
	gap: 8px;
}

#view-editor-arquitetura .popover-lixeira-close {
	background: transparent;
	border: none;
	cursor: pointer;
	color: #94a3b8;
	width: 28px;
	height: 28px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

#view-editor-arquitetura .popover-lixeira-close:hover {
	background: #fff;
	color: #1e293b;
}

#view-editor-arquitetura .popover-lixeira-body {
	max-height: 260px;
	overflow-y: auto;
	padding: 10px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#view-editor-arquitetura .setor-master-card {
	padding: 12px 12px 12px 10px;
	border-bottom: 1px solid #f1f5f9;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	transition: background 0.18s ease, border-color 0.18s ease;
	border-left: 4px solid transparent;
	background: #ffffff;
}

#view-editor-arquitetura .setor-master-card:hover {
	background: #fafbfc;
}

#view-editor-arquitetura .setor-master-card.is-active {
	border-left-color: #800020;
	background: linear-gradient(90deg, #fdf2f4 0%, #ffffff 55%);
}

#view-editor-arquitetura .setor-master-card .setor-master-main {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	flex: 1;
}

#view-editor-arquitetura .setor-master-card .setor-drag-handle {
	color: #94a3b8;
	cursor: grab;
	padding: 4px 2px;
	flex-shrink: 0;
	font-size: 1rem;
}

#view-editor-arquitetura .setor-master-card .setor-master-icon {
	color: #64748b;
	flex-shrink: 0;
	font-size: 1.05rem;
	transition: color 0.2s ease;
}

#view-editor-arquitetura .setor-master-card.is-active .setor-master-icon {
	color: #800020;
}

#view-editor-arquitetura .setor-master-card .setor-master-name {
	color: #1e293b;
	font-size: 0.82rem;
	font-weight: 800;
	text-transform: uppercase;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	white-space: normal;
	line-height: 1.25;
	word-break: break-word;
}

#view-editor-arquitetura .setor-master-side {
	display: flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
}

#view-editor-arquitetura .setor-itens-badge {
	background: #eff6ff;
	color: #1d4ed8;
	padding: 3px 8px;
	border-radius: 999px;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	margin-right: 4px;
	white-space: nowrap;
}

#view-editor-arquitetura .setor-master-card.is-active .setor-itens-badge {
	background: #fdf2f4;
	color: #800020;
}

#view-editor-arquitetura .setor-card-btn {
	background: none;
	border: none;
	cursor: pointer;
	opacity: 0.7;
	padding: 6px;
	border-radius: 8px;
	transition: 0.15s;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.95rem;
}

#view-editor-arquitetura .setor-card-btn.is-edit {
	color: #64748b;
}

#view-editor-arquitetura .setor-card-btn.is-edit:hover {
	background: #f1f5f9;
	color: #1e293b;
	opacity: 1;
}

#view-editor-arquitetura .setor-card-btn.is-del {
	color: #ef4444;
	opacity: 0.55;
}

#view-editor-arquitetura .setor-card-btn.is-del:hover {
	background: #fff1f2;
	opacity: 1;
}

#view-editor-arquitetura .item-arq-row {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

#view-editor-arquitetura .item-arq-actions {
	display: flex;
	gap: 6px;
	flex-shrink: 0;
}

#view-editor-arquitetura .btn-item-mover,
#view-editor-arquitetura .btn-item-remover {
	border-radius: 8px;
	cursor: pointer;
	padding: 7px 10px;
	transition: 0.2s;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	line-height: 1;
	flex-shrink: 0;
}

#view-editor-arquitetura .btn-item-mover {
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	color: #1d4ed8;
}

#view-editor-arquitetura .btn-item-mover:hover {
	background: #dbeafe;
}

#view-editor-arquitetura .btn-item-remover {
	background: #fff1f2;
	border: 1px solid #fecdd3;
	color: #e11d48;
}

#view-editor-arquitetura .btn-item-remover:hover {
	background: #ffe4e6;
}

#view-editor-arquitetura .editor-busca-row {
	display: flex;
	align-items: stretch;
	gap: 10px;
	width: 100%;
}

#view-editor-arquitetura .editor-busca-row .search-input-wrapper-v4 {
	flex: 1 1 auto;
	min-width: 0;
}

#view-editor-arquitetura .btn-qr-editor-lista {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 0 14px;
	min-width: 48px;
	border-radius: 12px;
	border: 1px solid #f3c5ce;
	background: #fdf2f4;
	color: #800020;
	font-weight: 800;
	font-size: 0.85rem;
	cursor: pointer;
	transition: 0.18s ease;
}

#view-editor-arquitetura .btn-qr-editor-lista i {
	font-size: 1.25rem;
	line-height: 1;
}

#view-editor-arquitetura .btn-qr-editor-lista:hover {
	background: #fce7eb;
	border-color: #e8a0ae;
	transform: translateY(-1px);
}

#view-editor-arquitetura .item-arq-uid {
	background: #fdf2f4 !important;
	color: #800020 !important;
	border-color: #f3c5ce !important;
}

/* ===== Checklist de viatura: tema azul petróleo/cinza ===== */
#view-editor-arquitetura.is-checklist-mode.editor-arquitetura-view {
	background:
		radial-gradient(1200px 400px at 0% 0%, rgba(44, 62, 80, 0.06), transparent 55%),
		radial-gradient(900px 360px at 100% 0%, rgba(15, 23, 42, 0.06), transparent 50%),
		#f4f6f9 !important;
}

#view-editor-arquitetura.is-checklist-mode .editor-lista-header.gestao-modulo-header {
	border-top-color: #2c3e50 !important;
}

#view-editor-arquitetura.is-checklist-mode .setor-master-card.is-active {
	border-left-color: #2c3e50 !important;
	background: linear-gradient(90deg, #eef2f7 0%, #ffffff 55%) !important;
}

#view-editor-arquitetura.is-checklist-mode .setor-master-card.is-active .setor-master-icon {
	color: #2c3e50 !important;
}

#view-editor-arquitetura.is-checklist-mode .setor-master-card.is-active .setor-itens-badge {
	background: #eef2ff !important;
	color: #334155 !important;
}

#view-editor-arquitetura.is-checklist-mode .search-input-wrapper-v4 input:focus {
	border-color: #2c3e50 !important;
	box-shadow: 0 0 0 3px rgba(44, 62, 80, 0.12) !important;
}

#view-editor-arquitetura.is-checklist-mode .btn-lixeira-cart:hover {
	color: #2c3e50 !important;
	border-color: #cbd5e1 !important;
}

/* Seletor de UIDs (movimentação) */
.sigma-uid-picker {
	text-align: left;
}

.sigma-uid-picker-sub {
	margin: 0 0 12px 0;
	color: #64748b;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.4;
}

.sigma-uid-picker-toolbar {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.sigma-uid-picker-toolbar .btn-soft {
	padding: 6px 10px;
	font-size: 0.75rem;
}

.sigma-uid-picker-count {
	margin-left: auto;
	font-size: 0.78rem;
	font-weight: 800;
	color: #800020;
}

.sigma-uid-picker-list {
	max-height: 280px;
	overflow-y: auto;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #f8fafc;
	padding: 6px;
}

.sigma-uid-check-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 10px;
	border-radius: 8px;
	cursor: pointer;
	margin: 0;
	font-weight: 600;
	color: #1e293b;
}

.sigma-uid-check-row:hover {
	background: #fff;
}

.sigma-uid-check-code {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 0.82rem;
	letter-spacing: 0.02em;
}

.modal-qr-editor-lista .modal-qr-editor-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 16px;
}

.modal-qr-editor-lista .modal-qr-editor-head .icon-box {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 1.25rem;
}

.modal-qr-editor-lista .modal-qr-editor-head h2 {
	margin: 0 0 4px 0;
	font-size: 1.15rem;
	color: #800020;
	font-weight: 800;
}

.modal-qr-editor-lista .modal-qr-editor-head p {
	margin: 0;
	color: #64748b;
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1.4;
}

.editor-qr-reader-box {
	width: 100%;
	min-height: 260px;
	border-radius: 14px;
	overflow: hidden;
	background: #0f172a;
	border: 1px solid #e2e8f0;
}

.editor-qr-reader-box video {
	width: 100% !important;
	border-radius: 14px;
}

.editor-qr-hint {
	margin: 12px 0 0 0;
	color: #64748b;
	font-size: 0.8rem;
	font-weight: 600;
	display: flex;
	align-items: flex-start;
	gap: 6px;
	line-height: 1.4;
}

@media (max-width: 768px) {
	#view-editor-arquitetura .btn-qr-editor-lista {
		min-width: 48px;
		padding: 0 12px;
	}
}

#view-editor-arquitetura .item-arq-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 4px;
	align-items: center;
}

#view-editor-arquitetura .item-arq-tomb {
	background: #f1f5f9;
	color: #475569;
	font-size: 9px;
	font-weight: 800;
	padding: 2px 6px;
	border-radius: 4px;
	border: 1px solid #e2e8f0;
}

#view-editor-arquitetura .item-arq-qtd {
	color: #64748b;
	font-size: 10px;
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: 4px;
}

#view-editor-arquitetura .item-arq-unid {
	background: #eff6ff;
	color: #1d4ed8;
	border-color: #bfdbfe;
}

#view-editor-arquitetura .arq-qtd-chip {
	color: #1e293b;
	background: #e2e8f0;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 10px;
	font-weight: 800;
	border: 1px solid transparent;
}

#view-editor-arquitetura .arq-qtd-chip.is-acessorio {
	background: #fff;
	border-color: #fde68a;
}

#view-editor-arquitetura .bula-vtr-label {
	text-transform: uppercase;
	font-size: 0.65em;
	font-weight: 900;
	color: #0369a1;
	border-bottom: 1px solid #e2e8f0;
	padding-bottom: 4px;
}

#view-editor-arquitetura .acessorios-vtr-container,
#view-editor-arquitetura .bula-vtr-container {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin-top: 4px;
	padding: 10px 12px;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	box-sizing: border-box;
	overflow: hidden;
}

#view-editor-arquitetura .acessorios-vtr-container {
	background: #fffbeb;
	border: 1px dashed #fcd34d;
}

#view-editor-arquitetura .bula-vtr-container {
	background: #f8fafc;
	border: 1px dashed #cbd5e1;
}

#view-editor-arquitetura .acessorios-vtr-container > small,
#view-editor-arquitetura .bula-vtr-container > small {
	display: block;
	min-width: 0;
}

#view-editor-arquitetura .acessorio-linha,
#view-editor-arquitetura .bula-linha {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	font-size: 11px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

#view-editor-arquitetura .acessorio-linha-nome,
#view-editor-arquitetura .bula-linha-nome {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #475569;
	font-weight: 600;
}

#view-editor-arquitetura .acessorio-linha-meta,
#view-editor-arquitetura .bula-linha-meta {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
}

#view-editor-arquitetura .sigma-md-master {
	box-shadow: 4px 0 24px rgba(15, 23, 42, 0.03);
}

#view-editor-arquitetura .sigma-md-detail {
	background: transparent;
}

#view-editor-arquitetura .md-detail-body {
	background:
		linear-gradient(180deg, rgba(248, 250, 252, 0.65) 0%, rgba(241, 245, 249, 0.9) 100%);
	overflow-x: hidden !important;
	box-sizing: border-box;
}

.modal-novo-setor-sigma .modal-novo-setor-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 18px;
}

.modal-novo-setor-sigma .modal-novo-setor-head .icon-box {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 1.25rem;
}

.modal-novo-setor-sigma .modal-novo-setor-head h2 {
	font-size: 1.15rem;
	color: #800020;
	margin: 0 0 4px 0;
	font-weight: 800;
}

.modal-novo-setor-sigma .modal-novo-setor-head p {
	margin: 0;
	color: #64748b;
	font-size: 0.85rem;
	font-weight: 600;
}

.modal-novo-setor-sigma .form-group label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: 700;
	color: #475569;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 8px;
}

.modal-novo-setor-sigma .modal-setor-sugestoes {
	margin-top: 14px;
}

.modal-novo-setor-sigma .modal-setor-sugestoes > label {
	font-size: 0.72rem;
	color: #64748b;
	text-transform: uppercase;
	font-weight: 800;
	letter-spacing: 0.04em;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 8px;
}

.modal-novo-setor-sigma #setores-tags-container {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.modal-novo-setor-sigma .modal-novo-setor-actions {
	margin-top: 22px;
	display: flex;
	justify-content: flex-end;
	gap: 10px;
}

@keyframes pulse-orange {
	0% { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0.7); }
	70% { box-shadow: 0 0 0 10px rgba(217, 119, 6, 0); }
	100% { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0); }
}

/* O Bloco Operacional Premium — Tiles V5 (Listas / Frota) */

.v4-card-tile {
	background: #ffffff;
	border-radius: 16px;
	padding: 16px 16px 14px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	text-align: left;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
	cursor: pointer;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03);
	border: 1px solid #e2e8f0;
	position: relative;
	overflow: hidden;
	min-height: 168px;
}

.v4-card-tile.sigma-tile {
	appearance: none;
	-webkit-appearance: none;
	font: inherit;
	color: inherit;
	width: 100%;
	animation: sigmaTileIn 0.4s ease both;
	animation-delay: var(--tile-delay, 0ms);
}

.v4-card-tile.sigma-tile.sigma-entity-card {
	min-height: 0;
}

@keyframes sigmaTileIn {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

.v4-card-tile:hover {
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
	transform: translateY(-2px);
	border-color: #cbd5e1;
}

.v4-card-tile.selected,
.v4-card-tile.sigma-tile.selected {
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.12), 0 12px 24px rgba(15, 23, 42, 0.08);
}

.sigma-tile-rail {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: #94a3b8;
}

.bg-status-ok .sigma-tile-rail { background: #15803d; }
.bg-status-alerta .sigma-tile-rail { background: #b91c1c; }
.bg-status-stale .sigma-tile-rail { background: #c2410c; }

.sigma-tile-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 12px;
	padding-left: 4px;
}

.sigma-tile-chevron {
	color: #94a3b8;
	font-size: 1rem;
	flex-shrink: 0;
}

.sigma-tile-body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	padding-left: 4px;
	flex: 1;
}

.sigma-tile-icon {
	width: 36px;
	height: 36px;
	border-radius: 10px;
	display: grid;
	place-items: center;
	background: rgba(128, 0, 32, 0.08);
	color: #800020;
	font-size: 1.15rem;
	margin-bottom: 2px;
}

.bg-status-ok .sigma-tile-icon {
	background: rgba(22, 163, 74, 0.1);
	color: #15803d;
}

.bg-status-alerta .sigma-tile-icon {
	background: rgba(185, 28, 28, 0.1);
	color: #b91c1c;
}

.bg-status-stale .sigma-tile-icon {
	background: rgba(194, 65, 12, 0.1);
	color: #c2410c;
}

.sigma-tile-grid {
	margin-top: 4px !important;
}

.sigma-tile-empty {
	grid-column: 1 / -1;
	text-align: center;
	padding: 40px 16px;
	color: #94a3b8;
	font-weight: 600;
}

/* Badge do Posto (Ex: ALFA, BRAVO) */

.badge-posto {
	background: #0f172a;
	color: #ffffff;
	font-size: 0.65rem;
	font-weight: 800;
	padding: 5px 10px;
	border-radius: 8px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 0;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* STATUS SOFT-FILLS (Fundos suaves) */

.bg-status-ok {
	background: linear-gradient(180deg, #ffffff 0%, #f0fdf4 100%) !important;
	border-color: #bbf7d0 !important;
}

.bg-status-alerta {
	background: linear-gradient(180deg, #ffffff 0%, #fef2f2 100%) !important;
	border-color: #fecaca !important;
}

.bg-status-stale {
	background: linear-gradient(180deg, #ffffff 0%, #fff7ed 100%) !important;
	border-color: #fed7aa !important;
}

.tile-title {
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
	margin: 0;
	letter-spacing: -0.01em;
	line-height: 1.25;
	text-transform: uppercase;
}

.tile-subtitle,
.tile-badge-alert,
.tile-badge-aviso {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin: 0;
	padding: 4px 8px;
	border-radius: 999px;
}

.tile-subtitle {
	color: #15803d;
	background: rgba(22, 163, 74, 0.1);
}

.tile-badge-alert {
	color: #b91c1c;
	background: rgba(185, 28, 28, 0.1);
}

.tile-badge-aviso {
	color: #9a3412;
	background: rgba(194, 65, 12, 0.1);
}

.tile-meta,
.sigma-tile-meta {
	font-size: 0.72rem;
	color: #64748b;
	margin-top: auto;
	border-top: 1px solid rgba(15, 23, 42, 0.06);
	padding-top: 10px;
	padding-left: 4px;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.sigma-tile-meta span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-weight: 600;
}

.sigma-tile-meta i {
	flex-shrink: 0;
	color: #94a3b8;
}

.sigma-tile-sems {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 4px;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.75);
	border: 1px solid rgba(15, 23, 42, 0.06);
	font-size: 1rem;
}

@media (max-width: 768px) {
	.cards-grid-tiles,
	.sigma-tile-grid {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.v4-card-tile {
		min-height: 148px;
		padding: 14px;
		border-radius: 14px;
	}

	.tile-title {
		font-size: 0.98rem;
	}
}

/* LED de Status Laranja */

/* Badge de aviso para o card laranja */

.tile-badge-aviso {
	background: #fff7ed;
	color: #9a3412;
	padding: 2px 10px;
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 800;
	margin-bottom: 10px;
}

.col-full {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 25px 0 10px 0 !important;
}

.v4-loading-box {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 80px 0 !important;
}

.border-vinho {
	border-left: 6px solid #800020 !important;
}

.border-verde {
	border-left: 6px solid #166534 !important;
}

.border-vermelho {
	border-left: 6px solid #991b1b !important;
}

.border-amarelo {
	border-left: 6px solid #c2780e !important;
}

.border-cinza {
	border-left: 6px solid #94a3b8 !important;
}

.v4-icon-box {
	width: 50px !important;
	height: 50px !important;
	border-radius: 12px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 1.3em !important;
	flex-shrink: 0 !important;
}

.v4-avatar-circle {
	border-radius: 50% !important;
	object-fit: cover !important;
	flex-shrink: 0 !important;
	border: 2px solid #fff !important;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important;
}

.v4-thead-gradient,
#container-tabela-principal thead tr {
	background: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%) !important;
	border-bottom: 2px solid #cbd5e1 !important;
}

.sigma-v4-table thead th,
#container-tabela-principal thead th {
	color: #475569 !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	font-size: 11px !important;
	letter-spacing: 0.5px !important;
	padding: 15px 12px !important;
	text-align: center !important;
}

/* Caixa do Ícone (Estilo Tile) */

/* =========================================
   BASE DO CARD OPERACIONAL
========================================= */

.v4-op-card {
	position: relative;
	overflow: hidden;
	padding: 15px 20px;
	/* Reduzi o padding superior/inferior de 20px para 15px */
	border-radius: 16px;
	border: 1px solid rgba(0, 0, 0, 0.05);
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 20px;
	/* Reduzido drasticamente de 120px para 85px */
	
}

.v4-op-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* --- DEGRADÊS POR CATEGORIA --- */

.op-card-red {
	background: linear-gradient(135deg, #fff5f5 0%, #ffe4e6 100%);
	border-left: 4px solid #800020;
}

.op-card-green {
	background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
	border-left: 4px solid #16a34a;
}

.op-card-blue {
	background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
	border-left: 4px solid #2563eb;
}

.op-card-amber {
	background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
	border-left: 4px solid #f59e0b;
}

.op-card-teal {
	background: linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%);
	border-left: 4px solid #0d9488;
}

#view-dashboard .sigma-dash-kpi .sigma-kpi-missao-valor {
	align-items: flex-start;
	font-size: 1.05rem;
	font-weight: 650;
	letter-spacing: -0.01em;
	line-height: 1.25;
	color: #334155;
}

#view-dashboard .sigma-dash-kpi .sigma-kpi-missao-nome {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
	font-size: 1.05rem;
	font-weight: 650;
	letter-spacing: -0.01em;
	color: #0f766e;
	text-transform: none;
}

#view-dashboard .sigma-dash-kpi .sigma-kpi-missao-nome.is-empty {
	color: #94a3b8;
	font-weight: 600;
	font-size: 0.95rem;
}

#view-dashboard .sigma-dash-kpi[data-kpi="missao-stats"].is-disabled,
#view-dashboard .sigma-dash-kpi#kpi-painel-missao-card.is-disabled,
#view-dashboard .sigma-dash-kpi#kpi-painel-missao-card:disabled {
	opacity: 0.62;
	cursor: not-allowed;
	filter: grayscale(0.25);
	pointer-events: none;
	box-shadow: none !important;
	transform: none !important;
}

#view-dashboard .sigma-dash-kpi[data-kpi="missao-stats"].is-disabled:hover,
#view-dashboard .sigma-dash-kpi#kpi-painel-missao-card.is-disabled:hover {
	transform: none !important;
	box-shadow: none !important;
}

	background: linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%);
	border-left: 4px solid #0f766e;
}

/* --- Logística da Missão --- */
#view-missao-stats .missao-origem-badge {
	display: inline-flex;
	align-items: center;
	margin-left: 6px;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	vertical-align: middle;
}

#view-missao-stats .missao-origem-badge.is-missao {
	background: #ecfdf5;
	color: #0f766e;
}

#view-missao-stats .missao-origem-badge.is-apoio {
	background: #eff6ff;
	color: #1d4ed8;
}

#view-missao-stats tr.is-apoio-row {
	background: #f8fbff;
}

#view-missao-stats .missao-stats-btn-inicio {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
	white-space: nowrap;
	font-weight: 700;
	font-size: 0.85rem;
	padding: 8px 12px;
}

#view-missao-stats .missao-stats-kpis {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 10px;
	margin-bottom: 1.25rem;
}

#view-missao-stats .missao-stats-kpi {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 14px 12px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

#view-missao-stats .missao-stats-kpi small {
	font-size: 0.68rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #94a3b8;
}

#view-missao-stats .missao-stats-kpi b {
	font-size: 1.55rem;
	color: #0f172a;
	line-height: 1.1;
}

#view-missao-stats .missao-stats-kpi span {
	font-size: 0.72rem;
	color: #64748b;
	font-weight: 600;
}

#view-missao-stats .missao-stats-kpi.is-warn b { color: #b45309; }
#view-missao-stats .missao-stats-kpi.is-amber b { color: #c2410c; }
#view-missao-stats .missao-stats-kpi.is-ok b { color: #15803d; }
#view-missao-stats .missao-stats-kpi.is-manut b { color: #1d4ed8; }
#view-missao-stats .missao-stats-kpi.is-sub b { color: #be123c; }
#view-missao-stats .missao-stats-kpi.is-missao-kpi b { color: #0f766e; }

#view-missao-stats .missao-stats-kpi-familia {
	grid-column: span 1;
	background: #f0fdfa;
	border-color: #99f6e4;
}

#view-missao-stats .missao-kpi-fam-nome {
	font-size: 1rem !important;
	line-height: 1.25 !important;
	word-break: break-word;
}

#view-missao-stats .missao-stats-section {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 16px 16px 8px;
	margin-bottom: 1rem;
}

#view-missao-stats .missao-stats-section header {
	margin-bottom: 12px;
}

#view-missao-stats .missao-stats-section h3 {
	margin: 0 0 4px;
	font-size: 1rem;
	color: #1e293b;
	display: flex;
	align-items: center;
	gap: 8px;
}

#view-missao-stats .missao-stats-section p {
	margin: 0;
	font-size: 0.82rem;
	color: #64748b;
}

#view-missao-stats .missao-stats-table .num {
	text-align: center;
	font-variant-numeric: tabular-nums;
	font-weight: 700;
}

#view-missao-stats .missao-stats-mats {
	font-size: 0.78rem;
	color: #475569;
	max-width: 280px;
}

#view-missao-stats .missao-stats-empty,
#view-missao-stats .missao-stats-loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 48px 20px;
	background: #f8fafc;
	border: 2px dashed #e2e8f0;
	border-radius: 14px;
	color: #64748b;
	font-weight: 600;
	text-align: center;
}

#view-missao-stats .missao-stats-loading i {
	font-size: 2rem;
	color: #0f766e;
}

#view-missao-stats .missao-stats-empty.is-erro {
	border-color: #fecaca;
	background: #fef2f2;
	color: #b91c1c;
}

#view-missao-stats .missao-stats-foot {
	font-size: 0.78rem;
	color: #94a3b8;
	margin: 8px 0 24px;
}

#view-missao-stats .missao-stats-empty-cell {
	text-align: center;
	color: #94a3b8;
	padding: 24px !important;
}

#view-missao-stats .missao-stats-estoque {
	border-color: #99f6e4;
	background: linear-gradient(180deg, #f0fdfa 0%, #fff 48px);
}

#view-missao-stats .missao-stock-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	margin: 0 0 12px;
	font-size: 0.72rem;
	font-weight: 700;
	color: #475569;
}

#view-missao-stats .missao-stock-legend .dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 3px;
	margin-right: 5px;
	vertical-align: -1px;
}

#view-missao-stats .missao-stock-legend .seg-disp,
#view-missao-stats .missao-stock-bar .seg-disp { background: #22c55e; }
#view-missao-stats .missao-stock-legend .seg-ops,
#view-missao-stats .missao-stock-bar .seg-ops { background: #64748b; }
#view-missao-stats .missao-stock-legend .seg-missao,
#view-missao-stats .missao-stock-bar .seg-missao { background: #0d9488; }
#view-missao-stats .missao-stock-legend .seg-pend,
#view-missao-stats .missao-stock-bar .seg-pend { background: #f59e0b; }
#view-missao-stats .missao-stock-legend .seg-trug,
#view-missao-stats .missao-stock-bar .seg-trug { background: #f97316; }

#view-missao-stats .missao-stock-bar {
	display: flex;
	height: 8px;
	border-radius: 999px;
	overflow: hidden;
	background: #e2e8f0;
	margin-top: 8px;
	max-width: 420px;
}

#view-missao-stats .missao-stock-bar.is-empty { opacity: 0.55; }
#view-missao-stats .missao-stock-bar span {
	display: block;
	height: 100%;
	min-width: 0;
}

#view-missao-stats .missao-stock-fam {
	font-size: 0.92rem;
	color: #0f172a;
}

#view-missao-stats .missao-stock-frase {
	margin-top: 4px;
	font-size: 0.78rem;
	font-weight: 600;
	color: #64748b;
	line-height: 1.35;
	max-width: 52rem;
}

#view-missao-stats .missao-stock-frase b {
	color: #0f172a;
	font-weight: 800;
}

#view-missao-stats .missao-stock-table tbody tr.is-on-mission {
	background: #f0fdfa;
}

#view-missao-stats .missao-stock-table .is-disp { color: #15803d; }
#view-missao-stats .missao-stock-table .is-ops { color: #475569; }
#view-missao-stats .missao-stock-table .is-missao { color: #0f766e; }
#view-missao-stats .missao-stock-table .is-pend { color: #b45309; }
#view-missao-stats .missao-stock-table .is-trug { color: #c2410c; }

#view-missao-stats .missao-stock-outras {
	margin: 8px 0 12px;
	border-top: 1px dashed #ccfbf1;
	padding-top: 8px;
}

#view-missao-stats .missao-stock-outras summary {
	cursor: pointer;
	font-size: 0.8rem;
	font-weight: 700;
	color: #0f766e;
	padding: 6px 0;
	list-style: none;
}

#view-missao-stats .missao-stock-outras summary::-webkit-details-marker { display: none; }
#view-missao-stats .missao-stock-outras summary::before {
	content: '▸';
	display: inline-block;
	margin-right: 6px;
	transition: transform 0.15s ease;
}
#view-missao-stats .missao-stock-outras[open] summary::before {
	transform: rotate(90deg);
}

/* --- ESTRUTURA DOS GRUPOS BASILARES V4 (RESPONSIVO / MOBILE FIRST) --- */

#cards-container {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
	gap: 12px !important;
	width: 100%;
	flex-direction: unset !important;
}

#cards-container .sigma-materiais-root {
	display: flex !important;
	flex-direction: column !important;
	gap: 22px !important;
	grid-column: 1 / -1;
	width: 100%;
}

#cards-container .sigma-list-stack {
	display: contents !important;
}

#cards-container > .cards-grid-tiles,
#cards-container > .sigma-tile-grid,
#cards-container > .sigma-entity-grid {
	display: contents !important;
}

#cards-container .sigma-posto-group-grid.cards-grid-tiles,
#cards-container .sigma-posto-group-grid.sigma-tile-grid,
#cards-container .sigma-posto-group-grid.sigma-entity-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, 280px) !important;
	justify-content: start;
	gap: 12px !important;
}

/* Cápsula de cada grupo */

.v4-group-section {
	display: flex;
	flex-direction: column;
	width: 100%;
	background: #ffffff;
	border-radius: 16px;
	border: 1px solid #cbd5e1;
	padding: 15px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
	box-sizing: border-box;
}

.v4-group-title {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 10px !important;
	font-size: 1.6rem;
}

.v4-group-title i {
	font-size: 1.1rem;
	display: block !important;
	margin: 0 !important;
}

.v4-group-title h2 {
	font-size: 1.3rem;
	font-weight: 500 !important;
	margin: 0 !important;
	letter-spacing: 0.2px;
	line-height: 1.6 !important;
}

/* Grid interna onde os cards vão entrar (empilhados) */

.v4-group-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 16px;
	padding: 10px 0;
}

/* --- CHECKBOX TÁTICO --- */

.sigma-checkbox-box {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #f8fafc;
	padding: 15px;
	border-radius: 8px;
	border: 1px solid #e2e8f0;
}

.sigma-checkbox-box label {
	margin: 0;
	font-weight: 700;
	cursor: pointer;
	color: #1e293b;
	font-size: 0.9rem;
}

/* =========================================================
   🔘 BOTÕES GLOBAIS - PADRÃO CLEAN VINHO (V4)
   ========================================================= */

/* Efeito Hover (Apenas se estiver ativo) */

/* Efeito Bloqueado / Inativo */

/*Controla o informativo sobre como iniciar conferencia PC x Mobile*/
/* Só no desktop — no mobile a regra em max-width:768px esconde .desktop-only */

@media (min-width: 769px) {
	.desktop-only {
		display: block !important;
	}
}

/* ==============================================================
   TIMELINE DE AUDITORIA (HISTÓRICO DE VIDA)
============================================================== */

/* Os botões de filtro (Pílulas) */

/* O Container Central da Timeline */

/* A Linha Vertical Contínua */

/* Cada Item (Nó) do Histórico */

.timeline-item {
	position: relative;
	margin-bottom: 30px;
	display: flex;
	align-items: flex-start;
	animation: fadeIn 0.4s ease;
}

/* A "Bolinha" com Ícone que fica em cima da linha */

.timeline-icon-node {
	position: absolute;
	left: -40px;
	/* Puxa para cima da linha */
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	color: white;
	box-shadow: 0 0 0 4px #ffffff;
	/* Borda branca para "cortar" a linha cinza */
	z-index: 2;
}

/* O Card de Conteúdo do Histórico */

.timeline-content-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 15px 20px;
	width: 100%;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
	position: relative;
}

/* A setinha indicando de onde veio o card */

.timeline-content-card::before {
	content: '';
	position: absolute;
	top: 12px;
	left: -6px;
	width: 12px;
	height: 12px;
	background: #fff;
	border-left: 1px solid #e2e8f0;
	border-bottom: 1px solid #e2e8f0;
	transform: rotate(45deg);
}

.tl-date {
	font-size: 0.7rem;
	color: #94a3b8;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 8px;
	display: block;
}

.tl-title {
	font-size: 1rem;
	font-weight: 800;
	color: #1e293b;
	margin: 0;
}

.tl-user {
	font-size: 0.75rem;
	color: #475569;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 5px;
}

.tl-payload-box {
	background: #f8fafc;
	border-left: 3px solid #cbd5e1;
	padding: 10px 15px;
	border-radius: 0 8px 8px 0;
	margin-top: 12px;
	font-size: 0.85rem;
	color: #334155;
	line-height: 1.5;
}

.sigma-hist-card-head {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.sigma-hist-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.sigma-hist-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 3px 9px;
	border-radius: 999px;
	border: 1px solid #cbd5e1;
	background: #f1f5f9;
	color: #334155;
	font-size: 0.68rem;
	font-weight: 800;
}

.sigma-hist-badge.is-lote {
	border-color: #fdba74;
	background: #fff7ed;
	color: #9a3412;
}

.sigma-hist-badge.is-ok {
	border-color: #86efac;
	background: #f0fdf4;
	color: #166534;
}

.sigma-hist-badge.is-muted {
	font-weight: 700;
	color: #64748b;
}

.sigma-hist-meta-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 8px;
	margin-top: 12px;
}

.sigma-hist-meta-cell {
	padding: 8px 10px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #f8fafc;
	min-width: 0;
}

.sigma-hist-meta-cell small {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #94a3b8;
}

.sigma-hist-meta-cell b {
	display: block;
	margin-top: 3px;
	font-size: 0.78rem;
	font-weight: 700;
	color: #0f172a;
	word-break: break-word;
	line-height: 1.25;
}

.sigma-hist-uids {
	margin-top: 12px;
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #fff;
}

.sigma-hist-uids-head {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.72rem;
	font-weight: 800;
	color: #475569;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	margin-bottom: 8px;
}

.sigma-hist-uids-track {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.sigma-hist-uid-chip {
	display: inline-block;
	max-width: 100%;
	padding: 4px 8px;
	border-radius: 8px;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.68rem;
	font-weight: 700;
	color: #0f172a;
	word-break: break-all;
}

.sigma-hist-uid-more {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	font-size: 0.68rem;
	font-weight: 800;
	color: #64748b;
}

.sigma-hist-obs {
	margin-top: 12px;
	font-style: italic;
}

.sigma-hist-obs.is-empty {
	font-style: normal;
	color: #94a3b8;
	font-weight: 600;
}

.sigma-hist-troca {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: stretch;
	gap: 0.65rem;
	margin: 0.85rem 0 0.35rem;
}

.sigma-hist-troca-lado {
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 0.7rem 0.8rem;
	background: #f8fafc;
}

.sigma-hist-troca-lado small {
	display: block;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #64748b;
	margin-bottom: 0.2rem;
}

.sigma-hist-troca-lado b {
	font-size: 0.92rem;
	word-break: break-all;
}

.sigma-hist-troca-lado.is-saiu {
	background: #fff1f2;
	border-color: #fecdd3;
}

.sigma-hist-troca-lado.is-saiu small,
.sigma-hist-troca-lado.is-saiu b {
	color: #9f1239;
}

.sigma-hist-troca-lado.is-entrou {
	background: #ecfdf5;
	border-color: #a7f3d0;
}

.sigma-hist-troca-lado.is-entrou small,
.sigma-hist-troca-lado.is-entrou b {
	color: #047857;
}

.sigma-hist-troca-seta {
	align-self: center;
	font-size: 1.2rem;
	color: #64748b;
}

#hist-timeline-feed.sigma-hist-timeline .sigma-hist-ciclo-filhos {
	position: relative;
	margin: 1rem 0 0.15rem;
	padding: 0.15rem 0 0.15rem 1.85rem;
}

#hist-timeline-feed.sigma-hist-timeline .sigma-hist-ciclo-filhos::before {
	content: '';
	position: absolute;
	left: 0.7rem;
	top: 0.4rem;
	bottom: 0.4rem;
	width: 2px;
	background: #cbd5e1;
	border-radius: 2px;
}

#hist-timeline-feed.sigma-hist-timeline .sigma-hist-filho {
	position: relative;
	margin: 0 0 0.85rem;
}

#hist-timeline-feed.sigma-hist-timeline .sigma-hist-filho:last-child {
	margin-bottom: 0;
}

#hist-timeline-feed.sigma-hist-timeline .sigma-hist-filho .timeline-icon-node {
	left: -1.85rem;
	top: 0.7rem;
	width: 1.7rem;
	height: 1.7rem;
	font-size: 0.7rem;
	box-shadow: 0 0 0 3px #ffffff;
}

#hist-timeline-feed.sigma-hist-timeline .sigma-hist-filho .timeline-content-card {
	padding: 0.75rem 0.9rem;
	box-shadow: none;
	background: #f8fafc;
}

@media (max-width: 720px) {
	.sigma-hist-troca {
		grid-template-columns: 1fr;
		justify-items: stretch;
	}

	.sigma-hist-troca-seta {
		transform: rotate(90deg);
		justify-self: center;
	}
}

.sigma-hist-actions {
	margin-top: 12px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

/* Cores Temáticas dos Nós (Aplicadas dinamicamente via JS) */

.node-green {
	background: #10b981;
}

.node-red {
	background: #ef4444;
}

.node-blue {
	background: #3b82f6;
}

.node-amber {
	background: #f59e0b;
}

.node-gray {
	background: #64748b;
}

.filter-card-clean {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1.25rem;
	padding: 1.25rem;
	background: var(--bg-card-clean);
}

/* Grid Avançado para a Tab de Unidade (com 4+ botões) */

.filter-card-clean.grid-advanced {
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.align-bottom {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.w-full {
	width: 100%;
	justify-content: center;
}

.search-icon {
	position: absolute;
	left: 1rem;
	top: 50%;
	transform: translateY(-50%);
	color: var(--text-muted);
}

.search-clean {
	padding-left: 2.5rem;
}

.materials-list-container {
	background: var(--bg-main);
	border: 1px solid var(--border-soft);
	border-radius: 8px;
	min-height: 200px;
	max-height: 400px;
	padding: 1rem;
}

/* Caixa de Sugestões de Usuários (Autocomplete) */

.suggestions-box-clean {
	position: absolute;
	top: calc(100% + 5px);
	left: 0;
	right: 0;
	background: var(--bg-card-clean);
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
	z-index: 50;
	max-height: 200px;
	overflow-y: auto;
}

.suggestions-box-clean:not([hidden]) {
	display: block;
}

.suggestions-box-clean ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.suggestions-box-clean li {
	padding: 0.75rem 1rem;
	border-bottom: 1px solid var(--border-soft);
	cursor: pointer;
	font-size: 0.9rem;
	color: var(--text-dark);
}

.suggestions-box-clean li:last-child {
	border-bottom: none;
}

.suggestions-box-clean li:hover {
	background: var(--bg-main);
}

/* ==========================================================================
   ACORDEÕES E CARDS DE SELEÇÃO DE MATERIAIS
   ========================================================================== */

/* Banner de Segurança (Aviso Inteligente UX) */

.security-banner-clean {
	background: var(--soft-info);
	border: 1px solid #bfdbfe;
	border-left: 4px solid var(--text-info-soft);
	padding: 1rem;
	border-radius: var(--radius-clean);
	margin-bottom: 1.25rem;
	display: flex;
	align-items: center;
	gap: 1rem;
}

.security-banner-icon {
	background: #dbeafe;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--text-info-soft);
	flex-shrink: 0;
}

.security-banner-text {
	font-size: 0.85rem;
	color: var(--text-dark);
	line-height: 1.4;
}

.security-banner-title {
	font-weight: 600;
	font-size: 0.95rem;
	display: block;
	margin-bottom: 2px;
}

/* Acordeões de Setor */

.inventory-group-clean {
	margin-bottom: 1.25rem;
}

.accordion-title-clean {
	font-weight: 600;
	color: var(--text-dark);
	font-size: 0.85rem;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.accordion-title-clean i {
	color: var(--text-muted);
}

.accordion-count {
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--text-muted);
}

.accordion-content-clean {
	overflow: hidden;
	padding: 0.5rem 0.25rem;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 0.75rem;
	transition: max-height 0.3s ease-out;
}

.item-card-kit {
	margin-top: 5px;
	color: var(--text-primary-soft);
	font-size: 0.75rem;
	font-weight: 600;
}

.item-card-badge {
	font-size: 0.7rem;
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 6px;
}

.badge-disp {
	background: var(--soft-success);
	color: var(--text-success-soft);
}

/* Ações Inferiores (Checkbox e Input) */

.label-checkbox-clean {
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--text-dark);
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

/* Pills de Tombamento */

.tomb-pill-clean {
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 0.4rem;
	background: var(--bg-card-clean);
	border: 1px solid var(--border-soft);
	padding: 0.4rem 0.75rem;
	border-radius: 6px;
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--text-dark);
}

.tomb-pill-clean:hover {
	border-color: #cbd5e1;
}

/* ==========================================================================
   FILTROS AVANÇADOS (ATIVIDADES)
   ========================================================================== */

.grid-advanced-4 {
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.almox-filtros-btns {
	display: flex;
	gap: 8px;
	width: 100%;
}

.almox-filtros-btns .btn-soft {
	flex: 1 1 0;
	justify-content: center;
	min-height: 42px;
}

.almox-filtros-acoes {
	display: flex;
	align-items: flex-end;
}

.sigma-setores-page {
	width: 100%;
	max-width: none;
}

.sigma-setores-page-inner {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 20px;
}

/* Gestão full-width de setores globais */
#view-almox-setores .sigma-v3-clean-wrapper {
	max-width: none;
	width: 100%;
}

.sigma-setores-gestao-host {
	width: 100%;
}

.sigma-setores-gestao {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	width: 100%;
}

.sigma-setores-gestao-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.sigma-setores-kpi {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1rem 1.15rem;
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

.sigma-setores-kpi small {
	font-size: 0.72rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #64748b;
}

.sigma-setores-kpi b {
	font-size: 1.75rem;
	font-weight: 700;
	color: #0f172a;
	line-height: 1.1;
}

.sigma-setores-kpi span {
	font-size: 0.78rem;
	color: #94a3b8;
}

.sigma-setores-kpi.is-unid b {
	color: #0d6e6e;
}

.sigma-setores-kpi.is-rede b {
	color: #800020;
}

.sigma-setores-gestao-info {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	background: linear-gradient(135deg, #f0f9ff 0%, #f8fafc 100%);
	border: 1px solid #bae6fd;
	border-radius: 12px;
	padding: 1rem 1.25rem;
}

.sigma-setores-gestao-info > i {
	font-size: 1.5rem;
	color: #0284c7;
	flex-shrink: 0;
	margin-top: 0.15rem;
}

.sigma-setores-gestao-info strong {
	display: block;
	font-size: 0.95rem;
	color: #0f172a;
	margin-bottom: 0.35rem;
}

.sigma-setores-gestao-info p {
	margin: 0;
	font-size: 0.85rem;
	color: #475569;
	line-height: 1.5;
}

.sigma-setores-gestao-info code {
	font-size: 0.8em;
	background: #e0f2fe;
	padding: 0.1em 0.4em;
	border-radius: 4px;
}

.sigma-setores-escopo {
	margin: 0.65rem 0 0;
	font-size: 0.82rem;
	color: #334155;
}

.sigma-setores-gestao-toolbar {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1rem 1.15rem;
}

.sigma-setores-busca {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex: 1 1 280px;
	max-width: 420px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 0 0.85rem;
}

.sigma-setores-busca i {
	color: #94a3b8;
}

.sigma-setores-busca input {
	flex: 1;
	border: none;
	background: transparent;
	padding: 0.65rem 0;
	font-size: 0.9rem;
	outline: none;
}

.sigma-setores-novo {
	display: flex;
	gap: 0.65rem;
	flex: 1 1 360px;
	justify-content: flex-end;
}

.sigma-setores-novo input {
	flex: 1;
	max-width: 320px;
	padding: 0.65rem 0.85rem;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	font-size: 0.9rem;
	text-transform: uppercase;
}

.sigma-setores-novo input:focus {
	border-color: #800020;
	outline: none;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.08);
}

.sigma-setores-table-wrap {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	overflow: hidden;
}

.sigma-setores-table th.num,
.sigma-setores-table td.num {
	text-align: center;
	width: 110px;
}

.sigma-setores-table td.act {
	width: 120px;
	text-align: right;
}

.sigma-setores-row.is-ativo-unid {
	background: rgba(13, 110, 110, 0.04);
}

.sigma-setores-uid {
	font-size: 0.78rem;
	background: #f1f5f9;
	padding: 0.2em 0.5em;
	border-radius: 4px;
	color: #475569;
}

.sigma-setores-legado {
	display: inline-block;
	margin-left: 0.4rem;
	font-size: 0.65rem;
	font-weight: 600;
	text-transform: uppercase;
	color: #b45309;
	background: #fef3c7;
	padding: 0.1em 0.35em;
	border-radius: 4px;
	vertical-align: middle;
}

.sigma-setores-so-leitura {
	font-size: 0.78rem;
	color: #94a3b8;
	font-style: italic;
}

.sigma-setores-tab-acoes {
	display: flex;
	gap: 0.35rem;
	justify-content: flex-end;
}

@media (max-width: 1024px) {
	.sigma-setores-gestao-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.sigma-setores-gestao-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sigma-setores-gestao-toolbar {
		flex: 0 0 auto;
		flex-direction: column;
		align-items: stretch;
		height: auto;
	}

	.sigma-setores-busca,
	.sigma-setores-novo {
		flex: 0 0 auto;
		width: 100%;
		max-width: none;
		min-height: 0;
		height: auto;
	}

	.sigma-setores-busca input,
	.sigma-setores-novo input {
		height: auto;
		min-height: 44px;
	}

	.sigma-setores-novo {
		flex-direction: column;
		align-items: stretch;
	}

	.sigma-setores-novo input {
		max-width: none;
		width: 100%;
	}

	#view-almox-setores .sigma-setores-btn-add {
		width: 100%;
		min-height: 44px;
	}

	#view-almox-setores .sigma-setores-btn-add span {
		display: inline !important;
	}

	#view-almox-setores .gestao-modulo-header .title-wrapper {
		align-items: flex-start !important;
		min-width: 0;
	}

	#view-almox-setores .gestao-modulo-header .title-wrapper > div:last-child {
		min-width: 0;
		flex: 1 1 auto;
	}

	#view-almox-setores .sigma-v3-title-label,
	#view-almox-setores .sigma-v3-description {
		overflow-wrap: anywhere;
	}

	#view-almox-setores .sigma-setores-table-wrap {
		overflow: visible;
		background: transparent;
		border: none;
		box-shadow: none;
	}

	#view-almox-setores .sigma-setores-table thead {
		display: none;
	}

	#view-almox-setores .sigma-setores-table,
	#view-almox-setores .sigma-setores-table tbody,
	#view-almox-setores .sigma-setores-table tr,
	#view-almox-setores .sigma-setores-table td {
		display: block;
		width: auto;
	}

	#view-almox-setores .sigma-setores-table tr {
		background: #fff;
		border: 1px solid #e2e8f0;
		border-radius: 12px;
		padding: 8px 12px;
		margin-bottom: 10px;
	}

	#view-almox-setores .sigma-setores-table td {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
		padding: 7px 0;
		border: none;
		text-align: right;
	}

	#view-almox-setores .sigma-setores-table td.num,
	#view-almox-setores .sigma-setores-table td.act {
		width: auto;
		text-align: right;
	}

	#view-almox-setores .sigma-setores-table td::before {
		content: attr(data-label);
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.03em;
		text-transform: uppercase;
		color: #64748b;
		text-align: left;
		flex: 0 0 auto;
	}

	#view-almox-setores .sigma-setores-table td[data-label=""]::before {
		content: none;
	}

	#view-almox-setores .sigma-setores-table tr.is-vazio td {
		display: block;
		text-align: center;
	}
}

/* —— Consulta universal por UID (QR) —— */
#view-consulta-uid {
	overflow-x: hidden;
	max-width: 100vw;
	box-sizing: border-box;
}

#view-consulta-uid .sigma-consulta-uid-wrap {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px));
	overflow-x: hidden;
}

#view-consulta-uid .gestao-modulo-header {
	max-width: 100%;
	min-width: 0;
	gap: 0.65rem;
}

#view-consulta-uid .gestao-modulo-header .title-wrapper {
	min-width: 0;
	flex: 1 1 auto;
}

#view-consulta-uid .sigma-v3-title-label {
	font-size: 1.25rem;
	word-break: break-word;
}

#view-consulta-uid .sigma-v3-clean-card {
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	overflow-x: hidden;
}

.sigma-consulta-uid-ficha {
	margin-bottom: 1rem;
	max-width: 100%;
	min-width: 0;
}

.sigma-consulta-uid-meta {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1rem 1.15rem;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

.sigma-consulta-uid-head {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin-bottom: 0.85rem;
}

.sigma-consulta-uid-head-copy {
	flex: 1 1 180px;
	min-width: 0;
}

.sigma-consulta-uid-meta-top {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.5rem 1rem;
	margin-bottom: 0;
}

.sigma-consulta-uid-meta-top strong {
	font-size: 1.05rem;
	color: #0f172a;
}

.sigma-consulta-uid-meta-top code {
	font-size: 0.78rem;
	background: #f0fdfa;
	color: #0f766e;
	padding: 0.2em 0.5em;
	border-radius: 4px;
	word-break: break-all;
}

.sigma-consulta-uid-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 0.65rem;
}

.sigma-consulta-uid-cell {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.sigma-consulta-uid-cell small {
	font-size: 0.68rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #94a3b8;
	font-weight: 600;
}

.sigma-consulta-uid-cell b {
	font-size: 0.88rem;
	color: #1e293b;
	font-weight: 600;
	word-break: break-word;
	overflow-wrap: anywhere;
}

.sigma-hist-ficha-unidade {
	margin-top: 0.75rem;
}

.sigma-hist-ficha-unidade .sigma-consulta-uid-meta {
	border: none;
	padding: 0;
	background: transparent;
}

.sigma-hist-ficha-unidade .sigma-consulta-uid-meta-top {
	display: none;
}

.sigma-rastreio-uid.is-link {
	display: inline-block;
	border: 1px solid #99f6e4;
	background: #f0fdfa;
	color: #0f766e;
	font-family: ui-monospace, monospace;
	font-size: 0.75rem;
	padding: 0.15em 0.45em;
	border-radius: 4px;
	cursor: pointer;
	margin: 0.1rem;
}

.sigma-rastreio-uid.is-link:hover {
	background: #ccfbf1;
	border-color: #5eead4;
}

.sigma-consulta-qr-manual {
	margin-top: 1rem;
}

.sigma-consulta-qr-manual label {
	display: block;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	color: #64748b;
	margin-bottom: 0.4rem;
}

.sigma-consulta-qr-manual-row {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	width: 100%;
}

.sigma-consulta-qr-manual-row input {
	display: block;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding: 0.85rem 0.9rem;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	font-size: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.sigma-consulta-qr-manual-row input:focus {
	outline: none;
	border-color: #0d9488;
	box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.15);
}

.sigma-consulta-qr-manual-row .btn-soft {
	width: 100% !important;
	justify-content: center;
	margin-top: 0 !important;
	flex: none;
}

#modal-qr-consulta .modal-content {
	width: min(440px, calc(100vw - 1.5rem));
	max-width: calc(100vw - 1.5rem);
	max-height: min(92vh, 900px);
	overflow-x: hidden;
	overflow-y: auto;
	box-sizing: border-box;
	padding: 1.15rem 1rem 1rem;
}

#modal-qr-consulta .modal-buttons {
	margin-top: 0.75rem;
}

#modal-qr-consulta .modal-buttons .btn-soft {
	width: 100% !important;
	margin-top: 0 !important;
	justify-content: center;
}

#view-consulta-uid .sigma-hist-toolbar {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.75rem;
	margin-bottom: 1rem;
	padding-bottom: 0.85rem;
	border-bottom: 1px dashed rgba(148, 163, 184, 0.45);
	max-width: 100%;
	min-width: 0;
}

#view-consulta-uid #consulta-uid-filter-pills.modern-pill-nav {
	display: flex;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	border-radius: 12px;
	flex-wrap: nowrap;
	align-self: stretch;
}

#view-consulta-uid #consulta-uid-filter-pills::-webkit-scrollbar {
	display: none;
}

#view-consulta-uid #consulta-uid-filter-pills .pill-tab {
	flex: 0 0 auto;
	white-space: nowrap;
	font-size: 0.78rem;
	padding: 0.45rem 0.7rem;
}

#view-consulta-uid .sigma-hist-toolbar .search-input-wrapper {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100%;
	box-sizing: border-box;
}

#view-consulta-uid .sigma-hist-toolbar .search-clean {
	width: 100%;
	min-height: 44px;
	font-size: 1rem;
	box-sizing: border-box;
}

#consulta-uid-timeline.sigma-hist-timeline {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding: 0.35rem 0 2rem 2.85rem;
	overflow-x: hidden;
	overflow-y: visible;
}

#consulta-uid-timeline.sigma-hist-timeline::before {
	content: '';
	position: absolute;
	left: 0.95rem;
	top: 0.4rem;
	bottom: 1.2rem;
	width: 2px;
	background: #2c5a8c;
	border-radius: 2px;
	opacity: 0.7;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-item {
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0 0 1.35rem;
	box-sizing: border-box;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-item:last-child {
	margin-bottom: 0;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node {
	position: absolute;
	left: -2.85rem;
	top: 0.85rem;
	width: 2.15rem;
	height: 2.15rem;
	border-radius: 50%;
	background: #ffffff;
	border: 2px solid #2c5a8c;
	color: #2c5a8c;
	box-shadow: 0 0 0 4px #f7f6f3;
	font-size: 0.85rem;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node.node-green {
	border-color: #0f766e;
	color: #0f766e;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node.node-red {
	border-color: #be123c;
	color: #be123c;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node.node-blue {
	border-color: #2c5a8c;
	color: #2c5a8c;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node.node-amber {
	border-color: #b45309;
	color: #b45309;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node.node-gray {
	border-color: #64748b;
	color: #64748b;
}

#consulta-uid-timeline.sigma-hist-timeline .timeline-content-card {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 1rem 1.15rem;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	box-shadow: 0 8px 22px rgba(28, 45, 74, 0.06);
	overflow: hidden;
}

#consulta-uid-timeline.sigma-hist-timeline .sigma-hist-meta-grid {
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}

#consulta-uid-timeline.sigma-hist-timeline .sigma-hist-ciclo-filhos {
	margin-top: 0.75rem;
	padding-left: 0.5rem;
	border-left: 2px dashed #cbd5e1;
}

#consulta-uid-timeline.sigma-hist-timeline .sigma-hist-filho {
	position: relative;
	margin: 0.75rem 0 0;
}

#consulta-uid-timeline.sigma-hist-timeline .sigma-hist-filho .timeline-icon-node {
	left: -2.35rem;
	width: 1.65rem;
	height: 1.65rem;
	font-size: 0.7rem;
	top: 0.55rem;
}

.sigma-consulta-uid-scan-btn {
	display: none;
	flex-shrink: 0;
}

@media (max-width: 768px) {
	.sigma-consulta-uid-scan-btn {
		display: inline-flex;
	}

	.sigma-consulta-uid-head {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.sigma-consulta-uid-head-copy {
		width: 100%;
	}

	.sigma-consulta-uid-meta-top {
		justify-content: center;
	}

	.sigma-consulta-uid-grid {
		grid-template-columns: 1fr 1fr;
	}

	#consulta-uid-timeline.sigma-hist-timeline {
		padding-left: 2.35rem;
		padding-right: 0.15rem;
	}

	#consulta-uid-timeline.sigma-hist-timeline::before {
		left: 0.7rem;
	}

	#consulta-uid-timeline.sigma-hist-timeline .timeline-icon-node {
		left: -2.35rem;
		width: 1.75rem;
		height: 1.75rem;
		font-size: 0.72rem;
		top: 0.7rem;
	}

	#consulta-uid-timeline.sigma-hist-timeline .timeline-content-card {
		padding: 0.85rem 0.9rem;
	}

	#consulta-uid-timeline.sigma-hist-timeline .sigma-hist-meta-grid {
		grid-template-columns: 1fr;
	}

	#consulta-uid-timeline.sigma-hist-timeline .sigma-hist-troca {
		grid-template-columns: 1fr;
	}
}

@media (min-width: 520px) {
	.sigma-consulta-qr-manual-row {
		flex-direction: row;
		align-items: stretch;
	}

	.sigma-consulta-qr-manual-row input {
		flex: 1 1 auto;
	}

	.sigma-consulta-qr-manual-row .btn-soft {
		width: auto !important;
		flex: 0 0 auto;
		min-width: 5.5rem;
	}
}

.grid-advanced-5 {
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.grid-advanced-6 {
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

/* Ícone lateral do Card */

.sc-icon-wrapper {
	width: 48px;
	height: 48px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	flex-shrink: 0;
}

.sc-icon-conf {
	background: var(--bg-main);
	color: var(--text-muted);
	border: 1px solid var(--border-soft);
}

.sc-icon-check {
	background: var(--soft-info);
	color: var(--text-info-soft);
}

.sc-icon-transf {
	background: var(--soft-warning);
	color: var(--text-warning-soft);
}

/* Corpo Principal (Títulos e Metadados) */

.sc-body {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.sc-title {
	font-size: 1.05rem;
	font-weight: 600;
	/* Max 600 garantido */
	color: var(--text-dark);
	margin: 0;
}

.sc-meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
	font-size: 0.8rem;
	color: var(--text-muted);
}

.sc-meta-item {
	display: flex;
	align-items: center;
	gap: 0.4rem;
}

.sc-meta-item i {
	color: #94a3b8;
}

.sc-meta-item strong {
	color: var(--text-dark);
	font-weight: 600;
}

/* Status Lateral (Direita) */

.sc-status-wrapper {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.5rem;
	flex-shrink: 0;
	min-width: 100px;
}

.sc-badge {
	padding: 0.35rem 0.85rem;
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.5px;
}

.badge-ca {
	background: var(--soft-danger);
	color: var(--text-danger-soft);
}

.badge-sa {
	background: var(--soft-success);
	color: var(--text-success-soft);
}

.badge-transf {
	background: var(--soft-primary);
	color: var(--text-primary-soft);
}

.sc-ref {
	font-size: 0.7rem;
	color: #cbd5e1;
}

/* ==========================================================================
   ESTADOS VAZIOS (EMPTY STATES) - CENTRALIZAÇÃO E DESIGN
   ========================================================================== */

.empty-state-clean {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 3rem 1rem;
	color: var(--text-muted);
}

.empty-state-clean p {
	margin: 0;
	font-weight: 600;
	/* Mantendo a sua regra de no máximo 600px de peso */
	font-size: 0.95rem;
}

.title-wrapper {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding-top: 0 !important;
}

.icon-box {
	width: 45px;
	height: 45px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
}

.info-box {
	background: var(--soft-info);
	color: var(--text-info-soft);
}

.warning-box {
	background: var(--soft-warning);
	color: var(--text-warning-soft);
}

.neutral-box {
	background: var(--soft-neutral);
	color: var(--text-neutral-soft);
}

.sigma-v3-clean-area {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

/* ==========================================================================
   NAVEGAÇÃO DO HISTÓRICO (PILL SWITCH)
   ========================================================================== */

.modern-pill-nav {
	display: inline-flex;
	background: var(--bg-card-clean);
	border: 1px solid var(--border-soft);
	border-radius: 50px;
	padding: 0.25rem;
	gap: 0.25rem;
	align-self: flex-start;
}

/* ==========================================================================
   LOADING MODERNO (PULSE RING)
   ========================================================================== */

.modern-loader-container {
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 3rem 0;
	gap: 1rem;
}

.modern-loader-container:not([hidden]) {
	display: flex;
}

.modern-loader-container span {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--text-muted);
	text-transform: uppercase;
	letter-spacing: 1px;
}

.pulse-ring {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 3px solid var(--soft-info);
	border-top-color: var(--text-info-soft);
	animation: spin 1s linear infinite;
}

/* ==========================================================================
   LAYOUT VERTICAL SEQUENCIAL
   ========================================================================== */

.sigma-v3-clean-card {
	background-color: var(--bg-card-clean);
	border: 1px solid var(--border-soft);
	border-radius: var(--radius-clean);
	padding: 1.5rem;
	box-shadow: var(--shadow-clean);
}

.block-vertical {
	width: 100%;
	display: flex;
	flex-direction: column;
}

.block-title {
	font-size: 1rem;
	font-weight: 600;
	/* Requisito: Máximo 600 */
	color: var(--text-dark);
	margin: 0 0 1.25rem 0;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	border-bottom: 1px solid var(--border-soft);
	padding-bottom: 0.75rem;
}

.block-title i {
	color: var(--text-muted);
}

.sigma-v3-title-label {
	font-size: 1.3rem;
	font-weight: 600;
	color: var(--text-dark);
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
}

.sigma-v3-description {
	font-size: 0.85rem;
	color: var(--text-muted);
	margin: 0.25rem 0 0 0;
}

.meta-item {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.meta-item label {
	font-size: 0.75rem;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--text-muted);
}

.meta-item span {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--text-dark);
}

.status-pill {
	display: inline-block;
	padding: 0.25rem 0.75rem;
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 600;
}

.status-aberta {
	background: var(--soft-warning);
	color: var(--text-warning-soft);
}

.status-transferencia {
	background: #eff6ff;
	color: #1d4ed8;
}

.status-recebida {
	background: var(--soft-success);
	color: var(--text-success-soft);
}

.status-devolucao {
	background: var(--soft-danger);
	color: var(--text-danger-soft);
}

.badge-recebedor-clean {
	background: var(--soft-info);
	color: var(--text-info-soft);
	padding: 0.25rem 0.5rem;
	border-radius: 6px;
	font-size: 0.85rem;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.obs-content {
	font-size: 0.95rem;
	color: var(--text-dark);
	line-height: 1.5;
	background: var(--bg-main);
	padding: 1rem;
	border-radius: 8px;
	border-left: 4px solid var(--border-soft);
}

/* ==========================================================================
   MATERIAIS (BLOCO 3)
   ========================================================================== */

.materials-container {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.material-card-clean {
	border: 1px solid var(--border-soft);
	padding: 1rem;
	border-radius: 8px;
	background: var(--bg-card-clean);
	transition: background 0.2s;
}

.material-card-clean:hover {
	background: var(--bg-main);
}

.material-title-clean {
	font-weight: 600;
	font-size: 0.95rem;
	color: var(--text-dark);
}

.item-tag-clean {
	font-size: 0.8rem;
	background: var(--bg-main);
	border: 1px solid var(--border-soft);
	padding: 0.2rem 0.5rem;
	border-radius: 4px;
	color: var(--text-muted);
	font-weight: 600;
}

.item-alert-clean {
	margin-top: 0.5rem;
	font-size: 0.8rem;
	color: var(--text-warning-soft);
	background: var(--soft-warning);
	padding: 0.4rem 0.6rem;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

/* ==========================================================================
   LINHA DO TEMPO ELEGANTE (BLOCO 4)
   ========================================================================== */

.elegant-timeline {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding-left: 0.5rem;
}

.timeline-item-clean {
	position: relative;
	padding-left: 1.75rem;
}

/* A Linha em si */

.timeline-item-clean::before {
	content: '';
	position: absolute;
	left: 0.35rem;
	top: 1.5rem;
	bottom: -1.25rem;
	width: 2px;
	background: var(--border-soft);
}

.timeline-item-clean:last-child::before {
	display: none;
}

/* A Bolinha (Marcador) */

.timeline-marker {
	position: absolute;
	left: 0;
	top: 0.25rem;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--bg-card-clean);
	border: 2px solid var(--text-muted);
	z-index: 1;
}

.timeline-content-clean {
	background: var(--bg-main);
	padding: 1rem;
	border-radius: 8px;
	border: 1px solid var(--border-soft);
}

.timeline-date-clean {
	font-weight: 600;
	font-size: 0.85rem;
	color: var(--text-dark);
}

.timeline-author-clean {
	font-size: 0.75rem;
	color: var(--text-muted);
}

.timeline-body-clean {
	font-size: 0.9rem;
	line-height: 1.4;
	color: var(--text-dark);
}

/* ==========================================================================
   AÇÕES FINAL (BLOCO 5) - BOTÕES CLEAN
   ========================================================================== */

.action-footer-card {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0;
	align-items: center;
}

.acoes-container-centered {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
	width: 100%;
}

/*=== CLASSE ALMOXARIFADO COMPLEMENTAR ===*/

/* ==========================================================================
   FORÇANDO O CABEÇALHO CLEAN NA TABELA PRINCIPAL
   ========================================================================== */

.table-clean thead tr {
	background-color: #f8fafc !important;
	/* Fundo cinza super claro */
	border-bottom: 2px solid #e2e8f0 !important;
}

.table-clean th {
	color: #64748b !important;
	/* Cinza azulado discreto */
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px;
	padding: 1.2rem 1rem !important;
	border: none !important;
}

/* ==========================================================================
   NOVA PAGINAÇÃO MODERNIZADA
   ========================================================================== */

.pagination-clean {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
	padding: 1.5rem 0;
	background: #ffffff;
	border-top: 1px solid #f1f5f9;
	border-radius: 0 0 12px 12px;
}

.pagination-clean .dots {
	color: #94a3b8;
	font-weight: 700;
	padding: 0 4px;
}

/* ==========================================================================
   TABELAS MODERNAS (CLEAN DESIGN)
   ========================================================================== */

.table-responsive {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.table-clean {
	width: 100%;
	border-collapse: collapse;
	background: white;
}

.table-clean th {
	background: #f8fafc;
	color: var(--text-muted);
	font-weight: 600;
	/* Requisito Max 600 */
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 1rem 0.75rem;
	border-bottom: 2px solid var(--border-soft);
	text-align: left;
	white-space: nowrap;
}

.table-clean td {
	padding: 1rem 0.75rem;
	border-bottom: 1px solid var(--border-soft);
	color: var(--text-dark);
	font-size: 0.9rem;
	vertical-align: middle;
}

.table-clean tbody tr:hover {
	background-color: #f1f5f9;
}

.table-clean tbody tr:last-child td {
	border-bottom: none;
}

/* ==========================================================================
   TRANSIÇÕES DE SUB-TELAS (ALMOXARIFADO)
   ========================================================================== */

.sub-screen-wrapper {
	animation: slideUpFade 0.3s ease-out forwards;
}

.sub-screen-wrapper[hidden] {
	display: none !important;
}

/*--- TELA 2 (ESCOLHA DA LISTA DE CONFERÊNCIA) ---*/

.card-opcao-tela2 {
	background: #ffffff;
	border: 2px solid #cbd5e1;
	border-radius: 16px;
	padding: 20px;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	align-items: center;
	gap: 15px;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
}

.card-opcao-tela2:hover {
	border-color: #0284c7;
	background: #f0f9ff;
	transform: translateY(-2px);
	box-shadow: 0 10px 15px -3px rgba(2, 132, 199, 0.1);
}

/* 1. Estrutura do painel de preparação (altura pelo conteúdo — sem 100vh fantasma) */

.sigma-prep-view {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        background: var(--sigma-page-bg, #f8fafc) !important;
        z-index: 150 !important;
        flex-direction: column !important;
        box-sizing: border-box !important;
        padding: 12px 8px 20px 8px !important;
        overflow: visible !important;
    }

/* 2. 🔥 O SEGREDO QUE DESTRAVA O BOTÃO VOLTAR E INÍCIO:
          Só ativa o painel na tela quando o JavaScript NÃO estiver mandando esconder! */

.sigma-prep-view:not([style*="display: none"]):not([style*="display:none"]) {
        display: flex !important;
    }

.sigma-prep-view[style*="display: block"] {
	display: flex !important;
	animation: sigmaSlideFade 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

/* O "Miolo" da Página (Limita a largura no PC) */

.prep-inner-wrapper {
	width: 100%;
	max-width: 700px;
	/* 👈 Bloqueia o esticamento bizarro no desktop */
	padding: 40px 20px;
	/* Espaço para respirar */
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}

/* ---------------------------------------------------
   TÍTULO E CABEÇALHOS
--------------------------------------------------- */

.prep-title-section {
	display: flex;
	align-items: center;
	/* Alinha o box do ícone com o bloco de texto */
	gap: 15px;
	/* Espaço entre o ícone e o texto */
	margin-bottom: 30px;
}

/* O Box quadradinho claro do Ícone (Visual Clean Cinza/Preto) */

.prep-title-icon {
    width: 50px;
    height: 50px;
    background: #f1f5f9; /* Fundo cinza suave e elegante (Slate 100) */
    border: 1px solid #e2e8f0; /* Borda sutil para dar acabamento premium */
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000000; /* Ícone preto em máximo contraste */
    font-size: 1.5rem; /* Levemente ajustado para valorizar o traço do Phosphor */
    flex-shrink: 0;
}

#painel-extrato-conferencia .prep-title-icon-extrato {
	background: #e0f2fe;
	color: #0284c7;
	border-color: #bae6fd;
}

#painel-extrato-conferencia .prep-title-icon-extrato i {
	font-size: 1.6rem;
	font-weight: 700;
}

.btn-fechar-extrato-topo {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fef2f2;
	border: 1px solid #fecaca;
	color: #dc2626;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	flex-shrink: 0;
	padding: 0;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn-fechar-extrato-topo i {
	font-size: 1.2rem;
	font-weight: 700;
}

/* Coluna de Texto (Título e Subtítulo) */

.prep-title-text {
	display: flex;
	flex-direction: column;
}

.prep-title-text h2 {
	margin: 0 0 4px 0;
	color: #1e293b;
	font-size: 1.4rem;
	/* Tamanho mais elegante */
	font-weight: 600;
	/* Fonte Semi-bold (mais fina que o 800 anterior) */
	letter-spacing: -0.5px;
}

.prep-title-text p {
	margin: 0;
	color: #64748b;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.3;
}

/* ---------------------------------------------------
   RODAPÉ E BOTÕES (CENTRALIZAÇÃO ABSOLUTA)
--------------------------------------------------- */

.prep-footer-actions {
	/* NÃO usar margin-top:auto — estica a tela e cria scroll fantasma */
	margin-top: 20px;
	width: 100%;
	display: flex;
	justify-content: center;
	padding-top: 8px;
	padding-bottom: 8px;
}

/* Nova Conferência — cards + seleção de ativo em listas sem vínculo */

.prep-ativo-sessao {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 12px;
}

.prep-ativo-label .required {
	color: #e11d48;
}

.prep-ativo-search {
	position: relative;
}

.prep-ativo-search > i {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	pointer-events: none;
}

.prep-ativo-item {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 11px 12px;
	border: none;
	border-bottom: 1px solid #f1f5f9;
	background: transparent;
	cursor: pointer;
	text-align: left;
}

.prep-ativo-item:last-child {
	border-bottom: none;
}

.prep-ativo-item:hover,
.prep-ativo-item:focus-visible {
	background: #fdf2f4;
}

.prep-ativo-item-nome {
	font-weight: 700;
	color: #0f172a;
	font-size: 0.9rem;
}

.prep-ativo-item-meta {
	font-size: 0.72rem;
	font-weight: 600;
	color: #94a3b8;
	flex-shrink: 0;
}

.prep-ativo-empty {
	padding: 16px 12px;
	text-align: center;
	color: #94a3b8;
	font-size: 0.82rem;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.prep-ativo-selecionado {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100%;
	padding: 12px;
	border-radius: 12px;
	border: 1px solid #f3c5ce;
	background: #fdf2f4;
	cursor: pointer;
	text-align: left;
	box-sizing: border-box;
}

.prep-ativo-selecionado[hidden] {
	display: none !important;
}

.prep-ativo-selecionado-info {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.prep-ativo-selecionado-info > i {
	font-size: 1.25rem;
	color: #800020;
	flex-shrink: 0;
}

.prep-ativo-selecionado-info strong {
	display: block;
	font-size: 0.92rem;
	color: #800020;
	font-weight: 800;
}

.prep-ativo-selecionado-info small {
	display: block;
	font-size: 0.72rem;
	color: #64748b;
	font-weight: 600;
}

.prep-ativo-trocar-hint {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.7rem;
	font-weight: 700;
	color: #94a3b8;
	white-space: nowrap;
	flex-shrink: 0;
}

/* =========================================================================
   📌 CHROME (header + menu) — fora do filter do dark mode
   ========================================================================= */

/* Camada de conteúdo: precisa ocupar 100% no PC (body é flex) */

#sigma-app-invertible {
	width: 100% !important;
	max-width: 100% !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	position: relative;
}

#sigma-chrome-layer {
	position: fixed !important;
	inset: 0 !important;
	width: auto !important;
	height: auto !important;
	z-index: 2500 !important;
	pointer-events: none !important;
	background: transparent !important;
	filter: none !important;
	transform: none !important;
	overflow: visible !important;
}

/* =========================================================================
   📋 VISÃO EM LINHAS ZEBRADAS & CONTROLE DE EXTRATO (NOVO TRUG)
   ========================================================================= */

/* Chaveador de Visão (Todos vs. Extrato) */

.view-mode-switch {
    display: flex;
    background: #f1f5f9;
    padding: 4px;
    border-radius: 8px;
    border: 1px solid #cbd5e1;
    gap: 4px;
    margin-bottom: 12px;
}

/* Coluna Principal da Linha (Nome do Item e Badges) */

.row-main-info {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 250px;
}

.row-title {
    font-weight: 600;
    font-size: 0.9rem;
    color: #1e293b;
}

/* Coluna de Ações (Inputs e Checkboxes na Linha) */

.row-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Container de Pílulas para itens MULTI (Tombamentos) */

.row-pills-container {
    width: 100%;
    margin-top: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding-left: 12px;
    border-left: 2px solid #cbd5e1;
}

/* Chaveador de Visão atualizado para encaixar no novo design */

.view-mode-switch {
    display: flex;
    background: #f1f5f9;
    padding: 4px;
    border-radius: 8px;
    border: 1px solid #cbd5e1;
    gap: 4px;
    margin-bottom: 20px;
}

/* =========================================================================
   🗄️ TELA DE HISTÓRICO: FILTROS E TABELA MODERNA
   ========================================================================= */

/* Painel de Filtros */

.history-filters-card {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    background: #ffffff;
    padding: 16px 20px;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
}

.history-filters-card .filter-group label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8rem;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    margin-bottom: 6px;
}

/* Tabela Moderna */

.sigma-modern-table-wrapper {
    background: #ffffff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    overflow-x: auto;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.sigma-modern-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.sigma-modern-table th {
    background: #f8fafc;
    color: #475569;
    font-weight: 700;
    font-size: 0.85rem;
    text-transform: uppercase;
    padding: 14px 16px;
    border-bottom: 2px solid #e2e8f0;
    white-space: nowrap;
}

.sigma-modern-table th i {
    font-size: 1rem;
    vertical-align: text-bottom;
    margin-right: 4px;
    color: #94a3b8;
}

.sigma-modern-table td {
    padding: 14px 16px;
    border-bottom: 1px solid #f1f5f9;
    color: #1e293b;
    font-size: 0.9rem;
    vertical-align: middle;
}

/* Efeito Hover nas Linhas */

.sigma-modern-table tbody tr {
    transition: background-color 0.2s ease;
}

.sigma-modern-table tbody tr:hover {
    background-color: #f8fafc;
}

/* Estilos Específicos das Colunas */

.col-id-emissao {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.col-envolvidos {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.actor-line {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
}

/* =========================================================================
   🏷️ BADGES DE STATUS (TRUGS ATIVOS)
   ========================================================================= */

.status-badge-modern {
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Status: ABERTA (Laranja/Alerta) */

.badge-aberta-modern {
    background-color: #fff7ed;
    color: #c2410c;
    border: 1px solid #c2410c;
}

/* Status: TRANSFERÊNCIA (Azul/Em trânsito) */

.badge-transferencia-modern {
    background-color: #eff6ff;
    color: #1d4ed8;
    border: 1px solid #93c5fd;
}

/* Status: RECEBIDA (Verde/Seguro) */

.badge-recebida-modern {
    background-color: #ecfdf5;
    color: #15803d;
    border: 1px solid #15803d;
}

/* Status: DEVOLUÇÃO (Roxo/Atenção) */

.badge-devolucao-modern {
    background-color: #f5f3ff;
    color: #6d28d9;
    border: 1px solid #6d28d9;
}


/* ==========================================================================
   DASHBOARD V5 — Painel de Guarnição / Central de Comando
   ========================================================================== */

#view-dashboard {
	--dash-ink: #0f172a;
	--dash-muted: #64748b;
	--dash-line: #e2e8f0;
	--dash-surface: #ffffff;
	--dash-soft: #f8fafc;
	--dash-wine: #800020;
	--dash-wine-soft: rgba(128, 0, 32, 0.08);
	--dash-ok: #15803d;
	--dash-danger: #b91c1c;
	--dash-info: #1d4ed8;
	--dash-warn: #b45309;
}

#view-dashboard .sigma-dash-hero,
#view-dashboard .v3-dashboard-header.sigma-dash-hero {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
	margin: 4px 0 18px !important;
	padding: 6px 2px 4px !important;
	border-radius: 0;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	box-sizing: border-box;
	height: auto !important;
}

#view-dashboard .sigma-dash-hero-main {
	padding: 0;
	min-width: 0;
}

#view-dashboard .sigma-dash-greeting,
#view-dashboard #greeting-text {
	margin: 0;
	color: #0f172a;
	font-size: clamp(1.42rem, 2.1vw, 1.85rem) !important;
	font-weight: 600 !important;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

#view-dashboard .sigma-dash-subtitle {
	margin: 6px 0 0;
	color: var(--dash-muted);
	font-size: 0.92rem;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.35;
}

#view-dashboard .sigma-dash-eyebrow {
	margin: 0 0 10px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--dash-muted);
}

#view-dashboard .sigma-dash-meta {
	margin: 8px 0 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 8px;
	font-size: 0.9rem;
	color: var(--dash-muted);
}

#view-dashboard .sigma-dash-role {
	font-weight: 700;
	color: #334155;
}

#view-dashboard .sigma-dash-meta-sep {
	opacity: 0.55;
}

#view-dashboard .sigma-dash-ctas {
	display: flex;
	gap: 8px;
	align-items: center;
	flex-shrink: 0;
}

#view-dashboard .sigma-dash-cta {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	min-height: 34px !important;
	padding: 6px 12px !important;
	border-radius: 8px !important;
	border: 1px solid transparent !important;
	font-weight: 700 !important;
	font-size: 0.78rem !important;
	line-height: 1.2 !important;
	cursor: pointer;
	box-sizing: border-box !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

#view-dashboard .sigma-dash-cta i {
	font-size: 0.95rem !important;
	line-height: 1 !important;
}

#view-dashboard .sigma-dash-cta-primary,
#view-dashboard .sigma-dash-cta-primary.btn-v3-conf {
	background: var(--dash-wine) !important;
	color: #fff !important;
	border-color: var(--dash-wine) !important;
	box-shadow: 0 3px 10px rgba(128, 0, 32, 0.18) !important;
}

#view-dashboard .sigma-dash-cta-primary i,
#view-dashboard .sigma-dash-cta-primary.btn-v3-conf i {
	color: #fff !important;
}

#view-dashboard .sigma-dash-cta-primary:hover,
#view-dashboard .sigma-dash-cta-primary.btn-v3-conf:hover {
	transform: translateY(-1px);
	background: #6b001b !important;
	border-color: #6b001b !important;
	box-shadow: 0 4px 12px rgba(128, 0, 32, 0.24) !important;
}

#view-dashboard .sigma-dash-cta-secondary {
	background: var(--bg-card-clean, #fff) !important;
	color: var(--dash-ink) !important;
	border-color: #cbd5e1 !important;
}

#view-dashboard .sigma-dash-cta-secondary:hover {
	border-color: #94a3b8 !important;
	background: var(--dash-soft) !important;
}

#view-dashboard .sigma-dash-section-head {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 4px 0 14px;
}

#view-dashboard .sigma-dash-section-title {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--dash-ink);
}

#view-dashboard .sigma-dash-section-title i {
	width: 34px;
	height: 34px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #f1f5f9;
	color: #0f172a;
	font-size: 1.15rem;
}

#view-dashboard .sigma-dash-section-title h2 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	letter-spacing: -0.01em;
}

#view-dashboard .sigma-dash-section-hint {
	margin: 0 0 0 44px;
	font-size: 0.84rem;
	color: var(--dash-muted);
}

/* Faixa de comando (gestor) + grade operacional */
#view-dashboard #resume-container.sigma-dash-command {
	/* display controlado pelo JS (grid/none) — sem !important */
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin: 0 0 18px;
	padding: 0 !important;
	width: 100%;
}

#view-dashboard .sigma-dash-op-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin: 0 0 18px;
	padding: 0;
	width: 100%;
}

#view-dashboard .sigma-dash-kpi,
#view-dashboard .sigma-dash-op-card {
	position: relative;
	appearance: none;
	-webkit-appearance: none;
	border: 1px solid var(--dash-line);
	background: linear-gradient(165deg, #ffffff 0%, #f8fafc 100%);
	border-radius: 18px;
	padding: 16px 18px 18px;
	min-height: 124px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: 10px;
	text-align: left;
	cursor: pointer;
	overflow: hidden;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04), 0 8px 24px rgba(15, 23, 42, 0.04);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
	animation: sigmaDashIn 0.42s ease both;
}

/* Operacional usa o mesmo card dos KPIs do gestor */
#view-dashboard .sigma-dash-op-card.v4-op-card {
	width: 100%;
}

#view-dashboard .sigma-dash-op-card:nth-child(2),
#view-dashboard .sigma-dash-kpi:nth-child(2) { animation-delay: 0.05s; }
#view-dashboard .sigma-dash-op-card:nth-child(3),
#view-dashboard .sigma-dash-kpi:nth-child(3) { animation-delay: 0.1s; }
#view-dashboard .sigma-dash-op-card:nth-child(4),
#view-dashboard .sigma-dash-kpi:nth-child(4) { animation-delay: 0.15s; }

@keyframes sigmaDashIn {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

#view-dashboard .sigma-dash-kpi:hover,
#view-dashboard .sigma-dash-op-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 32px rgba(15, 23, 42, 0.1);
	border-color: #cbd5e1;
}

/* Sem barra lateral — status via tipografia e tom do número */
#view-dashboard .sigma-dash-kpi-rail,
#view-dashboard .sigma-tile-rail,
.sigma-entity-card .sigma-tile-rail {
	display: none !important;
}

#view-dashboard .sigma-kpi-top {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 10px;
	width: 100%;
	z-index: 1;
	padding-right: 28px;
}

#view-dashboard .sigma-dash-kpi .op-kpi-icon,
#view-dashboard .sigma-dash-op-card .op-kpi-icon {
	position: absolute;
	right: 12px;
	bottom: 10px;
	/* Ganha de .op-kpi-icon { font-size: 4rem !important } */
	font-size: 1.55rem !important;
	opacity: 0.16;
	color: var(--dash-ink);
	flex-shrink: 0;
	margin: 0;
	z-index: 1;
	pointer-events: none;
	transform: none;
}

#view-dashboard .sigma-dash-kpi .op-kpi-valor,
#view-dashboard .sigma-dash-op-card .op-kpi-valor {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 2px 4px;
	font-size: 2rem;
	font-weight: 800;
	letter-spacing: -0.04em;
	line-height: 1;
	color: var(--dash-ink);
	margin-top: 2px;
	position: relative;
	z-index: 1;
}

/* Número principal pulsa quando o card está em alerta */
#view-dashboard .sigma-dash-kpi.has-kpi-alert .op-kpi-valor > span[id$="-val"] {
	display: inline-block;
	transform-origin: left center;
	animation: none;
}

/* Alerta triangular — canto superior direito */
#view-dashboard .sigma-kpi-alert {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 5;
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	pointer-events: none;
	color: #ea580c;
	filter: none;
}

#view-dashboard .sigma-kpi-alert[hidden] {
	display: none !important;
}

#view-dashboard .sigma-kpi-alert > i {
	position: relative;
	z-index: 2;
	font-size: 1.35rem;
	line-height: 1;
	color: #ea580c;
	animation: sigmaKpiAlertIconPulse 1.55s ease-in-out infinite;
}

#view-dashboard .sigma-kpi-alert.is-ok {
	color: #16a34a;
	filter: none;
}

#view-dashboard .sigma-kpi-alert.is-ok > i {
	color: #16a34a;
	animation: none;
}

#view-dashboard .sigma-kpi-alert.is-ok .sigma-kpi-alert-ripple {
	display: none;
	animation: none;
}

/* Raio verde estático — sem pulso */
#view-dashboard .sigma-dash-kpi.has-kpi-ok::before {
	content: none;
	display: none;
}

#view-dashboard .sigma-dash-kpi.has-kpi-ok .op-kpi-valor > span[id$="-val"] {
	animation: none;
}

#view-dashboard .sigma-kpi-alert-ripple {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	margin: -5px 0 0 -5px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(234, 88, 12, 0.45) 0%, rgba(234, 88, 12, 0.16) 45%, transparent 72%);
	z-index: 1;
	pointer-events: none;
	animation: sigmaKpiAlertRipple 1.85s cubic-bezier(0.15, 0.75, 0.35, 1) infinite;
}

#view-dashboard .sigma-dash-kpi.has-kpi-alert::before {
	content: none;
	display: none;
	animation: none;
}

@keyframes sigmaKpiNumPulse {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.14); }
}

@keyframes sigmaKpiAlertIconPulse {
	0%, 100% { transform: scale(1); opacity: 1; }
	50% { transform: scale(1.1); opacity: 0.85; }
}

@keyframes sigmaKpiAlertRipple {
	0% { transform: scale(0.6); opacity: 0.7; }
	70% { transform: scale(5.8); opacity: 0; }
	100% { transform: scale(5.8); opacity: 0; }
}

@keyframes sigmaKpiCornerEcho {
	0%, 100% { opacity: 0.55; transform: scale(1); }
	50% { opacity: 1; transform: scale(1.08); }
}

#view-dashboard .sigma-dash-kpi-total[hidden] {
	display: none !important;
}

/* Fração: pendências/críticas = vermelho (se > 0); total = verde */
#view-dashboard .sigma-dash-kpi .op-kpi-valor {
	color: inherit;
}

#view-dashboard .sigma-dash-kpi #kpi-lista-val,
#view-dashboard .sigma-dash-kpi #kpi-missao-val,
#view-dashboard .sigma-dash-kpi #kpi-frota-op-val,
#view-dashboard .sigma-dash-kpi #kpi-frota-missao-val,
#view-dashboard .sigma-dash-kpi #kpi-frota-geral-val {
	color: var(--dash-ok);
}

#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-lista-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-missao-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-frota-op-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-frota-missao-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-frota-geral-val {
	color: #ea580c;
}

#view-dashboard .sigma-dash-kpi-total {
	font-size: 0.9rem;
	font-weight: 700;
	color: var(--dash-ok) !important;
	margin-left: 2px;
}

/* TRUGs: azul normal; laranja se prazo expirado */
#view-dashboard .sigma-dash-kpi #kpi-trugs-val {
	color: var(--dash-info);
}

#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-trugs-val {
	color: #ea580c;
}

#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-trugs-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-lista-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-missao-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-frota-op-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-frota-missao-val,
#view-dashboard .sigma-dash-kpi.has-kpi-alert #kpi-frota-geral-val {
	animation: none;
}

/* Operacional mantém a cor por tipo de card */
#view-dashboard .op-card-green.sigma-dash-op-card .op-kpi-valor { color: var(--dash-ok); }
#view-dashboard .op-card-red.sigma-dash-op-card .op-kpi-valor { color: var(--dash-danger); }
#view-dashboard .op-card-blue.sigma-dash-op-card .op-kpi-valor { color: var(--dash-info); }
#view-dashboard .op-card-amber.sigma-dash-op-card .op-kpi-valor { color: var(--dash-warn); }

#view-dashboard .sigma-dash-kpi .op-kpi-label,
#view-dashboard .sigma-dash-op-card .op-kpi-label {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #334155;
	line-height: 1.25;
}

#view-dashboard .sigma-dash-kpi .op-kpi-sub,
#view-dashboard .sigma-dash-op-card .op-kpi-sub {
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--dash-muted);
}

.trug-prazo-expirado {
	color: #b91c1c;
	font-weight: 750;
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.trug-prazo-ok {
	color: #334155;
	font-weight: 650;
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

/* Medidor de prazo TRUG */
.trug-prazo-meter {
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 132px;
	max-width: 180px;
}

.trug-prazo-meter-head {
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.trug-prazo-meter-date {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.78rem;
	font-weight: 750;
	color: #334155;
}

.trug-prazo-meter-sub {
	font-size: 0.68rem;
	font-weight: 650;
	color: #64748b;
	line-height: 1.2;
}

.trug-prazo-meter-track {
	height: 6px;
	border-radius: 999px;
	background: #e2e8f0;
	overflow: hidden;
}

.trug-prazo-meter-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
	transition: width 0.35s ease, background 0.25s ease;
}

.trug-prazo-meter.is-ok .trug-prazo-meter-fill {
	background: linear-gradient(90deg, #22c55e, #16a34a);
}

.trug-prazo-meter.is-ok .trug-prazo-meter-sub { color: #15803d; }

.trug-prazo-meter.is-warn .trug-prazo-meter-fill {
	background: linear-gradient(90deg, #f59e0b, #d97706);
}

.trug-prazo-meter.is-warn .trug-prazo-meter-sub,
.trug-prazo-meter.is-warn .trug-prazo-meter-date { color: #b45309; }

.trug-prazo-meter.is-exp .trug-prazo-meter-fill {
	background: linear-gradient(90deg, #f87171, #dc2626);
}

.trug-prazo-meter.is-exp .trug-prazo-meter-sub,
.trug-prazo-meter.is-exp .trug-prazo-meter-date { color: #b91c1c; }

.trug-prazo-meter.is-none .trug-prazo-meter-label {
	font-size: 0.95rem;
	font-weight: 700;
	color: #94a3b8;
}

.trug-prazo-meter.is-none .trug-prazo-meter-track { display: none; }

.col-trug-prazo {
	min-width: 148px;
	vertical-align: middle;
}

.sigma-trug-mcard-prazo {
	margin-top: 6px;
}

.cautela-prazo-wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.cautela-prazo-wrap .trug-prazo-meter {
	max-width: 220px;
}

.btn-alterar-prazo-trug {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 8px;
	border: 1px solid #e2e8f0;
	background: #fff;
	color: #334155;
	font-size: 0.72rem;
	font-weight: 750;
	cursor: pointer;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.btn-alterar-prazo-trug:hover {
	border-color: #fecaca;
	color: #800020;
	background: #fff1f2;
}

.btn-alterar-prazo-trug[hidden] {
	display: none !important;
}

.meta-item-prazo .cautela-prazo-wrap {
	margin-top: 2px;
}

.timeline-item-clean.is-prazo .timeline-content-clean {
	border-color: #fecaca;
	background: linear-gradient(180deg, #fff7f7 0%, #fff 70%);
}

.timeline-marker.is-prazo {
	background: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.12);
}

.timeline-tipo-prazo {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0 0 6px;
	padding: 3px 8px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 750;
	letter-spacing: 0.02em;
	color: #800020;
	background: #fff1f2;
	border: 1px solid #fecaca;
}

#view-dashboard .sigma-dash-kpi-chevron {
	display: none !important;
}

/* KPI ativo (gestor) — sem barra ::after (glitch) */
#view-dashboard #resume-container.em-foco .sigma-dash-kpi:not(.card-ativo) {
	opacity: 0.62;
	filter: saturate(0.9);
}

#view-dashboard .sigma-dash-kpi.card-ativo {
	border-color: var(--dash-wine);
	box-shadow: 0 0 0 2px var(--dash-wine-soft), 0 10px 24px rgba(15, 23, 42, 0.08);
	opacity: 1 !important;
	filter: none !important;
	background: #fff;
}

#view-dashboard .sigma-dash-kpi.card-ativo::after {
	display: none !important;
	content: none !important;
}

#view-dashboard .sigma-dash-kpi-soon {
	cursor: default;
	opacity: 0.72;
}

#view-dashboard .sigma-dash-kpi-soon:hover {
	transform: none;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03);
}

#view-dashboard .sigma-dash-soon-badge {
	position: absolute;
	top: 10px;
	right: 10px;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--dash-warn);
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 999px;
	padding: 3px 8px;
}

/* Alerta TRUG a receber */
#view-dashboard .sigma-dash-op-receber.has-alert {
	border-color: #fbbf24;
	box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.16);
}

#view-dashboard .sigma-dash-op-receber.has-alert .sigma-dash-kpi-rail {
	animation: sigmaDashPulse 1.6s ease-in-out infinite;
}

@keyframes sigmaDashPulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.35; }
}

/* Empty state gestor */
#view-dashboard .sigma-dash-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 8px;
	padding: 36px 20px;
	border: 1px dashed #cbd5e1;
	border-radius: 18px;
	background: linear-gradient(180deg, var(--dash-surface), var(--dash-soft));
	border-color: var(--dash-line, #cbd5e1);
	margin-bottom: 12px;
}

#view-dashboard .sigma-dash-empty[hidden] {
	display: none !important;
}

#view-dashboard .sigma-dash-empty-icon {
	width: 52px;
	height: 52px;
	border-radius: 16px;
	display: grid;
	place-items: center;
	background: #f1f5f9;
	color: #0f172a;
	font-size: 1.5rem;
	margin-bottom: 4px;
}

#view-dashboard .sigma-dash-empty h3 {
	margin: 0;
	font-size: 1.05rem;
	color: var(--dash-ink);
}

#view-dashboard .sigma-dash-empty p {
	margin: 0;
	max-width: 360px;
	font-size: 0.9rem;
	color: var(--dash-muted);
	line-height: 1.45;
}

#view-dashboard .sigma-dash-skel {
	height: 140px;
	background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 37%, #f1f5f9 63%);
	background-size: 400% 100%;
	animation: sigmaDashSkel 1.35s ease infinite;
	border: 1px solid var(--dash-line);
	border-radius: 16px;
}

@keyframes sigmaDashSkel {
	0% { background-position: 100% 0; }
	100% { background-position: 0 0; }
}

#view-dashboard .sigma-dash-tiles .v4-card-tile {
	border-radius: 16px;
	border: 1px solid var(--dash-line);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

#view-dashboard .sigma-dash-tiles .v4-card-tile:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
}

#view-dashboard .sigma-dash-detail-empty {
	padding: 48px 24px;
	color: var(--dash-muted);
}

#view-dashboard .sigma-dash-detail-empty i {
	font-size: 2rem;
	color: var(--dash-wine);
	opacity: 0.7;
	display: block;
	margin-bottom: 10px;
}

#view-dashboard .sigma-dash-no-issues {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 40px 20px;
	color: var(--dash-ok);
	font-weight: 700;
}

#view-dashboard .sigma-dash-no-issues i {
	font-size: 1.8rem;
}

/* Mobile */
@media (max-width: 768px) {
	#view-dashboard .sigma-dash-hero,
	#view-dashboard .v3-dashboard-header.sigma-dash-hero {
		flex-direction: column;
		align-items: flex-start;
		padding: 4px 2px 8px !important;
		margin-bottom: 12px !important;
		border-radius: 0;
		background: none !important;
		border: none !important;
	}

	#view-dashboard .sigma-dash-greeting,
	#view-dashboard #greeting-text {
		font-size: 1.38rem !important;
		font-weight: 600 !important;
	}

	#view-dashboard .sigma-dash-subtitle {
		font-size: 0.76rem;
		font-weight: 400;
	}

	#view-dashboard .sigma-dash-ctas,
	#view-dashboard .botoes-topo-dashboard {
		display: none !important;
	}

	#view-dashboard .sigma-dash-section-hint {
		margin-left: 0;
	}

	#view-dashboard #resume-container.sigma-dash-command,
	#view-dashboard .sigma-dash-op-grid {
		grid-template-columns: 1fr !important;
		gap: 10px;
		margin-bottom: 12px;
		padding-bottom: 8px !important;
	}

	#view-dashboard .sigma-dash-kpi,
	#view-dashboard .sigma-dash-op-card {
		min-height: 0;
		height: auto;
		padding: 14px 16px 14px 16px;
		border-radius: 16px;
		gap: 6px;
		justify-content: flex-start;
	}

	#view-dashboard .sigma-kpi-top {
		padding-right: 28px;
		gap: 8px;
	}

	#view-dashboard .sigma-dash-kpi .op-kpi-label,
	#view-dashboard .sigma-dash-op-card .op-kpi-label {
		font-size: 0.78rem;
		line-height: 1.25;
		letter-spacing: 0.02em;
	}

	#view-dashboard .sigma-dash-kpi .op-kpi-valor,
	#view-dashboard .sigma-dash-op-card .op-kpi-valor {
		font-size: 1.75rem;
		margin-top: 2px;
	}

	#view-dashboard .sigma-dash-kpi .sigma-kpi-missao-valor,
	#view-dashboard .sigma-dash-kpi .sigma-kpi-missao-nome {
		font-size: 1rem !important;
		line-height: 1.3;
	}

	#view-dashboard .sigma-dash-kpi .op-kpi-sub,
	#view-dashboard .sigma-dash-op-card .op-kpi-sub {
		font-size: 0.8rem;
		margin-top: 0;
		line-height: 1.25;
	}

	#view-dashboard .sigma-dash-kpi .op-kpi-icon,
	#view-dashboard .sigma-dash-op-card .op-kpi-icon {
		font-size: 1.85rem !important;
		right: 14px;
		bottom: 12px;
		opacity: 0.14;
	}

	#view-dashboard .v4-op-card:hover .op-kpi-icon {
		transform: none;
	}

	#view-dashboard .sigma-dash-kpi.card-ativo::after {
		display: none !important;
	}
}

@media (min-width: 769px) and (max-width: 1100px) {
	#view-dashboard #resume-container.sigma-dash-command,
	#view-dashboard .sigma-dash-op-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}


/* ==========================================================================
   DASHBOARD R1 — entity cards (sem rail) + grupos por posto
   ========================================================================== */

.sigma-materiais-root {
	display: flex;
	flex-direction: column;
	gap: 22px;
	width: 100%;
}

.sigma-posto-group {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sigma-posto-group-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 0 2px 2px;
	border-bottom: 1px solid #e2e8f0;
}

.sigma-posto-group-title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #0f172a;
}

.sigma-posto-group-title i {
	color: #2563eb;
	font-size: 1.05rem;
}

.sigma-posto-group-title strong {
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sigma-posto-group-meta {
	font-size: 0.72rem;
	font-weight: 650;
	color: #64748b;
	white-space: nowrap;
}

.sigma-posto-group-grid,
.sigma-entity-grid,
#dashboard-content-by-role .sigma-entity-grid.cards-grid-tiles,
#dashboard-content-by-role .sigma-entity-grid.sigma-tile-grid {
	display: grid !important;
	/* Largura fixa de tile (não estica com 1fr) — padrão compacto da Central */
	grid-template-columns: repeat(auto-fill, 280px) !important;
	justify-content: start;
	gap: 12px !important;
	margin-top: 0 !important;
}

#cards-container .sigma-materiais-root {
	display: flex !important;
	flex-direction: column !important;
	grid-column: 1 / -1;
}

#cards-container .sigma-posto-group-grid.sigma-entity-grid {
	display: grid !important;
}

/* Entity card — leitura rápida, sem barra lateral */
.sigma-entity-card.v4-card-tile,
.sigma-ecard.v4-card-tile {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 8px;
	min-height: 0 !important;
	width: 280px;
	max-width: 280px;
	box-sizing: border-box;
	padding: 14px 14px 12px !important;
	border-radius: 14px !important;
	text-align: left;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03), 0 8px 20px rgba(15, 23, 42, 0.04) !important;
	transform: none !important;
	border: 1px solid #e2e8f0 !important;
	background: #fff !important;
	appearance: none;
	-webkit-appearance: none;
	font: inherit;
	color: inherit;
}

.sigma-ecard.is-ok {
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
}

.sigma-ecard.is-alert {
	background: linear-gradient(180deg, #ffffff 0%, #fff7f7 100%) !important;
	border-color: #fecaca !important;
}

.sigma-ecard.is-warn {
	background: linear-gradient(180deg, #ffffff 0%, #fffaf5 100%) !important;
	border-color: #fed7aa !important;
}

.sigma-entity-card.v4-card-tile:hover,
.sigma-ecard.v4-card-tile:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 28px rgba(15, 23, 42, 0.1) !important;
	border-color: #cbd5e1 !important;
}

.sigma-entity-card.selected,
.sigma-ecard.selected {
	border-color: #800020 !important;
	box-shadow: 0 0 0 2px rgba(128, 0, 32, 0.16), 0 12px 24px rgba(15, 23, 42, 0.08) !important;
}

.sigma-ecard-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-width: 0;
}

.sigma-ecard-head .sigma-ecard-title {
	flex: 1;
	min-width: 0;
	margin: 0;
}

.sigma-ecard-head .sigma-ecard-status {
	margin-left: 0;
	flex-shrink: 0;
}

.sigma-ecard-tag {
	display: inline-flex;
	align-items: center;
	padding: 4px 9px;
	border-radius: 8px;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	background: #0f172a;
	color: #fff;
}

.sigma-ecard-status {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 10px;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	white-space: nowrap;
	margin-left: auto;
}

.sigma-ecard-status.is-ok {
	background: rgba(22, 163, 74, 0.12);
	color: #15803d;
}

.sigma-ecard-status.is-alert {
	background: rgba(185, 28, 28, 0.12);
	color: #b91c1c;
}

.sigma-ecard-status.is-warn {
	background: rgba(194, 65, 12, 0.12);
	color: #c2410c;
}

.sigma-ecard-title,
.sigma-entity-card-title {
	margin: 0;
	font-size: 1.08rem;
	font-weight: 800;
	color: #0f172a;
	letter-spacing: -0.02em;
	line-height: 1.25;
	text-transform: uppercase;
}

.sigma-ecard-meta,
.sigma-entity-card-meta {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 0.74rem;
	color: #64748b;
	font-weight: 600;
}

.sigma-ecard-meta span,
.sigma-entity-card-meta span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sigma-ecard-meta i,
.sigma-entity-card-meta i { color: #94a3b8; }

.sigma-ecard-who,
.sigma-pl-who {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	max-width: 100%;
	padding: 5px 10px;
	border-radius: 8px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	color: #0f172a !important;
	font-size: 0.72rem;
	font-weight: 750;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sigma-ecard-who i,
.sigma-pl-who i {
	color: #800020 !important;
	font-size: 0.95rem;
	flex-shrink: 0;
}

.sigma-pl-head-meta .sigma-pl-who {
	background: #fff;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
}

.sigma-pl-facts .sigma-pl-who {
	background: #fff1f2;
	border-color: #fecdd3;
	color: #9f1239 !important;
}

.sigma-pl-facts .sigma-pl-who i {
	color: #be123c !important;
}

.sigma-ecard-foot {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: 2px;
	padding-top: 10px;
	border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.sigma-ecard-action {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-ecard:hover .sigma-ecard-action,
.sigma-ecard.selected .sigma-ecard-action {
	color: #800020;
}

.sigma-entity-card-go { display: none !important; }

.sigma-tile-sems-inline {
	display: inline-flex !important;
	gap: 12px;
	margin-top: 2px;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	font-size: 0.9rem;
}

.sigma-tile-empty {
	grid-column: 1 / -1;
	padding: 28px 20px;
	text-align: center;
	color: #64748b;
	font-weight: 600;
	border: 1px dashed #cbd5e1;
	border-radius: 14px;
	background: #f8fafc;
}

/* Split limpo: rail de cards + painel de detalhe */
#dashboard-content-by-role.split-view,
#dashboard-content-by-role.sigma-workbench.split-view {
	gap: 14px !important;
	align-items: stretch !important;
	min-height: 440px;
}

#dashboard-content-by-role.split-view .dashboard-master-column,
#dashboard-content-by-role.sigma-workbench.split-view .dashboard-master-column {
	flex: 0 0 360px !important;
	width: 360px !important;
	min-width: 300px !important;
	max-width: 380px !important;
	background: transparent;
	border: none;
	padding: 0;
}

#dashboard-content-by-role.split-view .dashboard-detail-column,
#dashboard-content-by-role.sigma-workbench.split-view .dashboard-detail-column {
	background: var(--bg-card-clean, #fff) !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 16px !important;
	padding: 0 !important;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03) !important;
	overflow: hidden;
}

#dashboard-content-by-role.split-view #ca-table-wrapper.sigma-v3-details-wrapper,
#dashboard-content-by-role.split-view #ca-table-wrapper,
#dashboard-content-by-role.sigma-workbench.split-view #ca-table-wrapper {
	display: block !important;
	padding: 18px 20px !important;
	background: #fff !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	min-height: 360px;
}

#dashboard-content-by-role.split-view #cards-container,
#dashboard-content-by-role.split-view .sigma-posto-group-grid {
	grid-template-columns: 1fr !important;
	gap: 10px !important;
}

#dashboard-content-by-role.split-view .sigma-entity-card,
#dashboard-content-by-role.split-view .sigma-ecard {
	width: 100% !important;
	max-width: none !important;
	padding: 12px 14px !important;
}

.sigma-dash-detail-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 300px;
	padding: 40px 24px;
	text-align: center;
	color: #64748b;
}

.sigma-dash-detail-empty-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	display: grid;
	place-items: center;
	background: rgba(128, 0, 32, 0.08);
	color: #800020;
	font-size: 1.5rem;
	margin-bottom: 4px;
}

.sigma-dash-detail-empty h3 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
}

.sigma-dash-detail-empty p {
	margin: 0;
	max-width: 300px;
	font-size: 0.86rem;
	line-height: 1.45;
	color: #64748b;
}

/* --- Pendências reformuladas (lista) --- */
.sigma-pl-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	margin: 0 0 16px;
	padding: 16px 18px;
	border-radius: 16px;
	background:
		radial-gradient(120% 140% at 0% 0%, rgba(128, 0, 32, 0.08), transparent 55%),
		linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border: 1px solid #e2e8f0;
}

.sigma-pl-head-main {
	min-width: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.sigma-pl-eyebrow {
	font-size: 0.68rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #94a3b8;
}

.sigma-pl-title-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.sigma-pl-list-title {
	margin: 0;
	font-size: 1.2rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #0f172a;
	line-height: 1.2;
}

.sigma-pl-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 8px;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 800;
}

.sigma-pl-count.is-alert {
	background: #0f172a;
	color: #fff;
}

.sigma-pl-count.is-ok {
	background: #ecfdf5;
	color: #047857;
	border: 1px solid #a7f3d0;
}

.sigma-pl-head-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 600;
}

.sigma-pl-head-meta i {
	margin-right: 4px;
	color: #94a3b8;
}

.sigma-pl-dot {
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #cbd5e1;
}

.sigma-pl-close {
	width: 36px;
	height: 36px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #fff;
	color: #64748b;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	flex-shrink: 0;
	font-size: 1.1rem;
}

.sigma-pl-close:hover {
	background: #fef2f2;
	border-color: #fecaca;
	color: #b91c1c;
}

.sigma-pl-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 40px 20px;
	border-radius: 16px;
	border: 1px dashed #cbd5e1;
	background: #f8fafc;
	text-align: center;
	color: #64748b;
}

.sigma-pl-empty i {
	font-size: 2rem;
	color: #059669;
	opacity: 0.45;
}

.sigma-pl-empty strong {
	color: #334155;
	font-size: 0.95rem;
}

.sigma-pl-empty p {
	margin: 0;
	font-size: 0.8rem;
	color: #94a3b8;
}

.sigma-pl-feed {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

/* Stage deslizante: lista ↔ decisão (mesmo cabeçalho) */
.sigma-pl-stage {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
}

.sigma-pl-track {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	width: 200%;
	transform: translate3d(0, 0, 0);
	transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: transform;
}

.sigma-pl-stage.is-gestao .sigma-pl-track {
	transform: translate3d(-50%, 0, 0);
}

.sigma-pl-pane {
	width: 50%;
	flex: 0 0 50%;
	min-width: 0;
	max-width: 50%;
	box-sizing: border-box;
}

.sigma-pl-pane-gestao {
	padding-left: 2px;
	display: flex;
	flex-direction: column;
	min-height: 220px;
	background: #f8fafc;
}

.sigma-pl-stage.is-gestao .sigma-pl-pane-gestao {
	max-height: calc(100dvh - 210px);
	overflow: hidden;
}

/* Mobile: slide confiável dentro da gaveta */
@media (max-width: 1024px) {
	#drawer-content-body .sigma-pl-stage {
		overflow: hidden !important;
		width: 100% !important;
	}

	#drawer-content-body .sigma-pl-stage.is-gestao .sigma-pl-track {
		transform: translate3d(-50%, 0, 0) !important;
	}

	#drawer-content-body .sigma-pl-pane-gestao {
		min-height: 260px;
		background: #f8fafc;
	}

	body.sigma-pl-gestao-inline #drawer-content-body {
		overflow-x: hidden !important;
	}
}

.sigma-pl-decide {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 4px 2px 8px;
	min-height: 0;
}

.sigma-pl-decide.is-compact {
	gap: 8px;
	height: 100%;
	max-height: calc(100dvh - 210px);
	overflow: hidden;
}

.sigma-pl-decide-boot {
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 10px;
	padding: 48px 16px;
	color: #64748b;
}

.sigma-pl-decide-boot strong {
	color: #0f172a;
	font-size: 0.95rem;
}

.sigma-pl-decide-boot span {
	font-size: 0.78rem;
	font-weight: 650;
	text-transform: uppercase;
}

.sigma-pl-decide-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}

.sigma-pl-decide-copy {
	min-width: 0;
	flex: 1;
}

.sigma-pl-decide-top-btns {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

.sigma-pl-back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #fff;
	color: #334155;
	font-size: 1.2rem;
	cursor: pointer;
}

.sigma-pl-back:hover {
	background: #f8fafc;
	border-color: #cbd5e1;
}

.sigma-pl-confirm-top {
	width: auto !important;
	min-height: 40px !important;
	padding: 0 14px !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.06em;
	border-radius: 10px !important;
	box-shadow: 0 6px 14px rgba(128, 0, 32, 0.18) !important;
}

.sigma-pl-decide-kicker {
	margin: 0;
	font-size: 0.66rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #94a3b8;
}

.sigma-pl-decide-title {
	margin: 2px 0 0;
	font-size: 0.95rem;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: #0f172a;
	text-transform: uppercase;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Ações compactas em uma linha */
.sigma-pl-decide .sigma-gp-actions.is-inline-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
}

.sigma-pl-decide .sigma-gp-actions.is-inline-row .sigma-gp-opt {
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 2px;
	padding: 8px 4px;
	border-radius: 10px;
	min-height: 58px;
}

.sigma-pl-decide .sigma-gp-actions.is-inline-row .sigma-gp-opt i {
	font-size: 1.05rem;
	margin: 0;
}

.sigma-pl-decide .sigma-gp-actions.is-inline-row .sigma-gp-opt b {
	font-size: 0.66rem;
	font-weight: 800;
	line-height: 1.15;
}

.sigma-pl-decide .sigma-gp-actions.is-inline-row .sigma-gp-opt small {
	display: none;
}

.sigma-pl-decide .sigma-gp-section-label {
	margin: 0;
	font-size: 0.66rem;
}

.sigma-pl-decide .sigma-gp-box-compact {
	padding: 8px 10px;
	gap: 6px;
	border-radius: 10px;
}

.sigma-pl-decide .sigma-gp-radio-row {
	display: flex;
	gap: 8px;
}

.sigma-pl-decide .sigma-gp-radio-row .sigma-gp-radio {
	flex: 1;
	padding: 8px;
}

.sigma-pl-decide-obs,
.sigma-pl-decide .sigma-gp-textarea.sigma-pl-decide-obs {
	flex: 1 1 auto;
	min-height: 88px;
	max-height: none;
	resize: none;
	margin: 0;
}

.sigma-pl-card.is-exiting {
	animation: sigma-pl-card-exit 0.38s cubic-bezier(0.4, 0, 0.2, 1) forwards;
	pointer-events: none;
}

@keyframes sigma-pl-card-exit {
	0% {
		opacity: 1;
		transform: translateX(0) scale(1);
		max-height: 240px;
		margin-bottom: 0;
	}
	55% {
		opacity: 0.35;
		transform: translateX(-28%) scale(0.98);
	}
	100% {
		opacity: 0;
		transform: translateX(-110%) scale(0.92);
		max-height: 0;
		padding-top: 0;
		padding-bottom: 0;
		margin: 0;
		border-width: 0;
	}
}

.sigma-pl-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 14px 16px;
	border-radius: 14px;
	background: #fff;
	border: 1px solid #e8edf3;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.sigma-pl-card:hover {
	border-color: #d7dee8;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.sigma-pl-card-top {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.sigma-pl-status {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 3px 9px;
	border-radius: 999px;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.sigma-pl-card.is-pendente .sigma-pl-status {
	background: #fff1f2;
	color: #be123c;
}

.sigma-pl-card.is-andamento .sigma-pl-status {
	background: #eff6ff;
	color: #1d4ed8;
}

.sigma-pl-card.is-trug .sigma-pl-status {
	background: #fffbeb;
	color: #b45309;
}

.sigma-pl-kit {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 3px 8px;
	border-radius: 999px;
	background: #fffbeb;
	border: 1px dashed #fcd34d;
	color: #b45309;
	font-size: 0.62rem;
	font-weight: 800;
}

.sigma-pl-time {
	margin-left: auto;
	font-size: 0.7rem;
	color: #94a3b8;
	font-weight: 650;
}

.sigma-pl-item {
	margin: 0;
	font-size: 0.98rem;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: #0f172a;
	line-height: 1.25;
	text-transform: uppercase;
}

.sigma-pl-facts {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	font-size: 0.72rem;
	color: #64748b;
	font-weight: 600;
}

.sigma-pl-facts i {
	margin-right: 3px;
	color: #94a3b8;
}

.sigma-pl-relato {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.4;
	color: #475569;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

.sigma-pl-card-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding-top: 4px;
	margin-top: 2px;
	border-top: 1px solid #f1f5f9;
	flex-wrap: wrap;
}

.sigma-pl-acoes {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	margin-left: auto;
}

.sigma-pl-act {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 7px 10px;
	border-radius: 9px;
	border: 1.5px solid transparent;
	font-size: 0.68rem;
	font-weight: 750;
	line-height: 1.1;
	cursor: pointer;
	transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
	white-space: nowrap;
}

.sigma-pl-act i {
	font-size: 0.95rem;
}

.sigma-pl-act:hover {
	transform: translateY(-1px);
	filter: brightness(0.98);
}

.sigma-pl-act.is-resolver {
	background: #ecfdf5;
	border-color: #6ee7b7;
	color: #047857;
}

.sigma-pl-act.is-substituir {
	background: #eff6ff;
	border-color: #93c5fd;
	color: #1d4ed8;
}

.sigma-pl-act.is-recolher {
	background: #fff1f2;
	border-color: #fda4af;
	color: #be123c;
}

.sigma-pl-act.is-on {
	box-shadow: 0 0 0 2px rgba(15, 23, 42, 0.12);
	transform: translateY(-1px);
}

.sigma-pl-act.is-resolver.is-on {
	box-shadow: 0 0 0 2px rgba(4, 120, 87, 0.35);
}

.sigma-pl-act.is-substituir.is-on {
	box-shadow: 0 0 0 2px rgba(29, 78, 216, 0.35);
}

.sigma-pl-act.is-recolher.is-on {
	box-shadow: 0 0 0 2px rgba(190, 18, 60, 0.35);
}

.sigma-pl-card.is-decidindo {
	border-color: #94a3b8;
	box-shadow: 0 10px 28px rgba(15, 23, 42, 0.1);
}

.sigma-pl-decide-slot {
	width: 100%;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dashed #e2e8f0;
	animation: sigma-pl-decide-in 0.22s ease;
}

@keyframes sigma-pl-decide-in {
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.sigma-pl-decide.is-on-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 0;
}

.sigma-pl-decide.is-on-card .sigma-pl-decide-kicker {
	margin: 0;
}

.sigma-pl-decide-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	flex-wrap: wrap;
	margin-top: 2px;
}

.sigma-pl-decide-cancel,
.sigma-pl-decide-confirm {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-height: 32px;
	padding: 6px 12px;
	border-radius: 8px;
	font-size: 0.72rem;
	font-weight: 750;
	line-height: 1.1;
	cursor: pointer;
	border: 1px solid transparent;
	transition: background 0.15s ease, border-color 0.15s ease, transform 0.12s ease;
}

.sigma-pl-decide-cancel {
	background: #f1f5f9;
	border-color: #e2e8f0;
	color: #475569;
}

.sigma-pl-decide-cancel:hover {
	background: #e2e8f0;
	border-color: #cbd5e1;
}

.sigma-pl-decide-confirm {
	background: #800020;
	border-color: #600018;
	color: #fff;
}

.sigma-pl-decide-confirm:hover {
	background: #600018;
	transform: translateY(-1px);
}

.sigma-pl-decide-slot .sigma-pl-decide-boot {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 600;
}

.sigma-pl-tools {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	min-height: 28px;
}

.sigma-pl-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 8px;
	border-radius: 8px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	color: #475569;
	font-size: 0.68rem;
	font-weight: 750;
	cursor: pointer;
}

.sigma-pl-link:hover {
	border-color: #cbd5e1;
	background: #fff;
}

.sigma-pl-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-left: auto;
	padding: 8px 12px;
	border: none;
	border-radius: 10px;
	background: #0f172a;
	color: #fff;
	font-size: 0.76rem;
	font-weight: 800;
	cursor: pointer;
	white-space: nowrap;
	transition: background 0.15s ease, transform 0.15s ease;
}

.sigma-pl-btn:hover {
	background: #1e293b;
	transform: translateY(-1px);
}

.sigma-pl-btn i {
	font-size: 0.95rem;
}

.sigma-pl-trug {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-left: auto;
	padding: 7px 10px;
	border-radius: 8px;
	background: #fffbeb;
	border: 1px dashed #fcd34d;
	color: #b45309;
	font-size: 0.7rem;
	font-weight: 800;
}

/* --- Gestão de pendência (painel / tela) --- */
.sigma-gp {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 0;
	max-height: inherit;
	background:
		radial-gradient(90% 60% at 100% 0%, rgba(128, 0, 32, 0.06), transparent 50%),
		linear-gradient(180deg, #f8fafc 0%, #ffffff 42%);
	color: #0f172a;
}

.sigma-gp.is-desktop {
	min-height: 0;
}

.sigma-gp-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid #e8edf3;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(8px);
	position: sticky;
	top: 0;
	z-index: 2;
}

.sigma-gp-nav {
	width: 40px;
	height: 40px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #fff;
	color: #334155;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 1.2rem;
	flex-shrink: 0;
	margin-left: auto;
}

.sigma-gp-nav:hover {
	background: #fef2f2;
	border-color: #fecaca;
	color: #b91c1c;
}

.sigma-gp-bar-copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.sigma-gp-eyebrow {
	font-size: 0.66rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #94a3b8;
}

.sigma-gp-bar-copy strong {
	font-size: 0.92rem;
	font-weight: 800;
	color: #0f172a;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sigma-gp-scroll {
	flex: 1;
	min-height: 0;
	overflow: auto;
	padding: 16px 16px 8px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.sigma-gp-brief {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 16px;
	border-radius: 16px;
	background: #fff;
	border: 1px solid #e8edf3;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.sigma-gp-item {
	margin: 0;
	font-size: 1.15rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: #0f172a;
	text-transform: uppercase;
}

.sigma-gp-facts {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sigma-gp-facts li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 999px;
	background: #f8fafc;
	border: 1px solid #eef2f7;
	font-size: 0.72rem;
	font-weight: 700;
	color: #475569;
}

.sigma-gp-facts li i {
	color: #94a3b8;
	font-size: 0.9rem;
}

.sigma-gp-facts li.is-alert {
	background: #fff1f2;
	border-color: #fecdd3;
	color: #be123c;
}

.sigma-gp-facts li.is-alert i {
	color: #e11d48;
}

.sigma-gp-relato {
	padding-top: 4px;
	border-top: 1px solid #f1f5f9;
}

.sigma-gp-relato-label {
	display: block;
	font-size: 0.66rem;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #94a3b8;
	margin-bottom: 6px;
}

.sigma-gp-relato p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.45;
	color: #334155;
}

.sigma-gp-decide {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.sigma-gp-section-label {
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #64748b;
}

.sigma-gp-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.sigma-gp-opt {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	padding: 14px 12px;
	border-radius: 14px;
	border: 1px solid #e2e8f0;
	background: #fff;
	cursor: pointer;
	text-align: left;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.sigma-gp-opt i {
	font-size: 1.25rem;
	color: #94a3b8;
	margin-bottom: 4px;
}

.sigma-gp-opt b {
	font-size: 0.88rem;
	font-weight: 800;
	color: #1e293b;
}

.sigma-gp-opt small {
	font-size: 0.68rem;
	color: #94a3b8;
	line-height: 1.3;
}

.sigma-gp-opt:hover {
	border-color: #cbd5e1;
	transform: translateY(-1px);
}

.sigma-gp-opt.is-on {
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
}

.sigma-gp-opt.is-resolver,
.sigma-gp-opt.is-sanar {
	border-color: #a7f3d0;
	background: #ecfdf5;
}
.sigma-gp-opt.is-resolver i,
.sigma-gp-opt.is-sanar i,
.sigma-gp-opt.is-resolver b,
.sigma-gp-opt.is-sanar b { color: #047857; }

.sigma-gp-opt.is-resolver.is-on,
.sigma-gp-opt.is-sanar.is-on {
	border-color: #34d399;
	background: #d1fae5;
	box-shadow: 0 0 0 2px rgba(4, 120, 87, 0.25);
}

.sigma-gp-opt.is-sub {
	border-color: #93c5fd;
	background: #eff6ff;
}
.sigma-gp-opt.is-sub i,
.sigma-gp-opt.is-sub b { color: #1d4ed8; }

.sigma-gp-opt.is-sub.is-on {
	border-color: #60a5fa;
	background: #dbeafe;
	box-shadow: 0 0 0 2px rgba(29, 78, 216, 0.25);
}

.sigma-gp-opt.is-rec {
	border-color: #fda4af;
	background: #fff1f2;
}
.sigma-gp-opt.is-rec i,
.sigma-gp-opt.is-rec b { color: #be123c; }

.sigma-gp-opt.is-rec.is-on {
	border-color: #fb7185;
	background: #ffe4e6;
	box-shadow: 0 0 0 2px rgba(190, 18, 60, 0.25);
}

.sigma-gp-opt.is-manut.is-on {
	border-color: #fbbf24;
	background: #fffbeb;
}
.sigma-gp-opt.is-manut.is-on i,
.sigma-gp-opt.is-manut.is-on b { color: #b45309; }

.sigma-gp-box {
	padding: 12px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.sigma-gp-box[hidden] {
	display: none !important;
}

.sigma-gp-box-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	font-size: 0.78rem;
	font-weight: 750;
	color: #334155;
}

.sigma-gp-box-head strong {
	color: #0f172a;
}

.sigma-gp-select {
	width: 100%;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1px solid #cbd5e1;
	background: #fff;
	font-size: 0.84rem;
	color: #0f172a;
}

.sigma-gp-hint {
	margin: 0;
	font-size: 0.76rem;
	color: #64748b;
	display: flex;
	align-items: flex-start;
	gap: 6px;
}

.sigma-gp-radio {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #fff;
	cursor: pointer;
}

.sigma-gp-radio input {
	margin-top: 2px;
	accent-color: #800020;
	width: 15px;
	height: 15px;
}

.sigma-gp-radio b {
	display: block;
	font-size: 0.8rem;
	color: #1e293b;
}

.sigma-gp-radio small {
	display: block;
	font-size: 0.7rem;
	color: #64748b;
	margin-top: 1px;
}

.sigma-gp-radio-col {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 6px;
}
.sigma-gp-radio-col .sigma-gp-radio {
	align-items: flex-start;
}
.sigma-gp-radio-col .sigma-gp-radio span {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.sigma-gp-textarea {
	width: 100%;
	min-height: 110px;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1px solid #cbd5e1;
	background: #fff;
	resize: vertical;
	font-size: 0.9rem;
	line-height: 1.45;
	color: #0f172a;
	font-family: inherit;
	box-sizing: border-box;
}

.sigma-gp-textarea:focus {
	outline: none;
	border-color: #800020;
	box-shadow: 0 0 0 3px rgba(128, 0, 32, 0.12);
}

.sigma-gp-foot {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 16px calc(14px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid #e8edf3;
	background: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(8px);
	position: sticky;
	bottom: 0;
	z-index: 2;
}

.sigma-gp-btn-primary {
	width: min(100%, 280px);
	min-height: 48px;
	padding: 0 28px;
	border: none;
	border-radius: 12px;
	background: linear-gradient(135deg, #800020 0%, #5c0017 100%);
	color: #fff;
	font-weight: 800;
	font-size: 0.92rem;
	letter-spacing: 0.08em;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 10px 22px rgba(128, 0, 32, 0.22);
}

.sigma-gp-btn-primary:hover {
	filter: brightness(1.05);
}

.sigma-gp.is-mobile .sigma-gp-btn-primary {
	width: 100%;
}

/* Boot / loading dentro do host */
.sigma-gp-boot {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: min(420px, 70vh);
	padding: 40px 24px;
	background:
		radial-gradient(90% 60% at 100% 0%, rgba(128, 0, 32, 0.07), transparent 55%),
		linear-gradient(180deg, #f8fafc 0%, #ffffff 55%);
}

.sigma-gp-boot-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	text-align: center;
}

.sigma-gp-boot-ring {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	border: 3px solid #e2e8f0;
	border-top-color: #800020;
	animation: sigma-gp-spin 0.75s linear infinite;
	margin-bottom: 6px;
}

.sigma-gp-boot-inner strong {
	font-size: 0.95rem;
	font-weight: 800;
	color: #0f172a;
	letter-spacing: -0.01em;
}

.sigma-gp-boot-inner span {
	font-size: 0.78rem;
	font-weight: 650;
	color: #64748b;
	max-width: 260px;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

@keyframes sigma-gp-spin {
	to { transform: rotate(360deg); }
}

@keyframes sigma-gp-grow {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes sigma-gp-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

.sigma-gestao-host-panel.is-growing {
	animation: sigma-gp-fade-in 0.28s ease both;
}

.sigma-gestao-host-panel.is-ready > .sigma-gp:not(.sigma-gp-boot) {
	animation: sigma-gp-fade-in 0.28s ease both;
}

.sigma-gestao-host.is-loading .sigma-gestao-host-panel {
	min-height: min(420px, 70vh);
}

/* Compat: shells antigos (se algum fluxo residual ainda renderizar) */
.sigma-gestao-shell-compact,
.sigma-gestao-shell-desktop,
.sigma-gestao-shell-mobile {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	background: #fff;
}

/* Tablet / mobile — densificar feed de pendências */
@media (max-width: 1024px) {
	.sigma-pl-head {
		padding: 12px 14px;
		border-radius: 14px;
		margin-bottom: 12px;
	}

	.sigma-pl-list-title {
		font-size: 1.05rem;
	}

	.sigma-pl-card {
		padding: 12px 14px;
		gap: 6px;
		border-radius: 12px;
		box-shadow: none;
	}

	.sigma-pl-card:hover {
		box-shadow: none;
	}

	.sigma-pl-item {
		font-size: 0.9rem;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.sigma-pl-facts {
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		gap: 10px;
	}

	.sigma-pl-facts::-webkit-scrollbar { display: none; }

	.sigma-pl-facts span {
		flex-shrink: 0;
		white-space: nowrap;
	}

	.sigma-pl-relato {
		font-size: 0.76rem;
		-webkit-line-clamp: 2;
		line-clamp: 2;
	}

	.sigma-pl-btn {
		min-height: 34px;
		padding: 6px 12px;
		font-size: 0.72rem;
	}

	.sigma-gp.is-mobile {
		min-height: 100dvh;
	}

	.sigma-gp-actions:not(.is-inline-row) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sigma-pl-decide .sigma-gp-actions.is-inline-row {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.sigma-pl-stage.is-gestao .sigma-pl-pane-gestao,
	.sigma-pl-decide.is-compact {
		max-height: calc(100dvh - 190px);
	}
}

@media (max-width: 768px) {
	#view-dashboard .sigma-dash-hero,
	#view-dashboard .v3-dashboard-header.sigma-dash-hero {
		padding: 4px 2px 8px !important;
		align-items: flex-start;
		flex-direction: column;
		background: none !important;
		border: none !important;
		border-radius: 0;
	}

	#view-dashboard .sigma-dash-ctas {
		width: 100%;
		flex-wrap: wrap;
	}

	#view-dashboard .sigma-dash-cta {
		flex: 1 1 auto;
		min-width: 0;
		min-height: 32px !important;
		padding: 6px 10px !important;
	}

	.sigma-pl-feed {
		gap: 8px;
	}

	.sigma-pl-close {
		width: 32px;
		height: 32px;
		border-radius: 8px;
	}

	.sigma-pl-card-foot {
		padding-top: 6px;
		flex-direction: column;
		align-items: stretch;
		gap: 8px;
	}

	.sigma-pl-acoes {
		margin-left: 0;
		width: 100%;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.sigma-pl-act {
		justify-content: center;
		padding: 8px 4px;
		font-size: 0.64rem;
	}

	.sigma-pl-act span {
		overflow: hidden;
		text-overflow: ellipsis;
	}

	/* ---- Entity cards (listas/postos) curtos ---- */
	.sigma-posto-group {
		gap: 8px;
	}

	.sigma-posto-group-head {
		gap: 6px;
		margin-bottom: 2px;
	}

	.sigma-posto-group-title strong {
		font-size: 0.95rem;
	}

	.sigma-posto-group-meta {
		font-size: 0.7rem;
	}

	#cards-container .sigma-posto-group-grid.sigma-entity-grid,
	.sigma-posto-group-grid.sigma-entity-grid {
		gap: 8px !important;
		grid-template-columns: 1fr !important;
	}

	.sigma-entity-card.v4-card-tile,
	.sigma-ecard.v4-card-tile {
		gap: 6px !important;
		width: 100% !important;
		max-width: none !important;
		padding: 10px 12px !important;
		border-radius: 12px !important;
		box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03) !important;
	}

	.sigma-entity-card.v4-card-tile:hover,
	.sigma-ecard.v4-card-tile:hover {
		transform: none !important;
		box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03) !important;
	}

	.sigma-ecard-head {
		gap: 6px;
		align-items: flex-start;
	}

	.sigma-ecard-title,
	.sigma-entity-card-title,
	.sigma-ecard-head .sigma-ecard-title {
		font-size: 0.92rem;
		line-height: 1.2;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		overflow: hidden;
	}

	.sigma-ecard-status {
		padding: 3px 8px;
		font-size: 0.62rem;
		border-radius: 999px;
	}

	.sigma-ecard-meta,
	.sigma-entity-card-meta {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 4px 10px;
		font-size: 0.68rem;
	}

	.sigma-ecard-foot {
		margin-top: 0;
		padding-top: 6px;
		border-top: 1px solid rgba(15, 23, 42, 0.05);
		justify-content: flex-end;
	}

	.sigma-ecard-action {
		font-size: 0.68rem;
		font-weight: 750;
		gap: 3px;
	}

	.sigma-ecard-action i {
		font-size: 0.75rem;
	}
}

/* ==========================================================================
   DASHBOARD R1 — workbench toolbar + gestão host + operacional
   ========================================================================== */

.sigma-workbench-toolbar {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 4px 2px 14px;
	margin-bottom: 6px;
	border-radius: 0;
	background: transparent;
	border: none;
	border-bottom: 1px solid #e2e8f0;
	color: #0f172a;
	box-shadow: none;
}

.sigma-workbench-toolbar[hidden] { display: none !important; }

.sigma-workbench-back { display: none !important; }

.sigma-workbench-toolbar-text {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.sigma-workbench-toolbar-text strong {
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.2;
	color: #0f172a;
	letter-spacing: -0.01em;
}

.sigma-workbench-toolbar-text small {
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 600;
}

#view-dashboard.sigma-workbench-ativo .sigma-dash-section-head {
	margin-bottom: 10px;
}

#view-dashboard.sigma-workbench-ativo .sigma-dash-command {
	gap: 10px !important;
	margin-bottom: 14px !important;
}

#view-dashboard.sigma-workbench-ativo .sigma-dash-kpi {
	min-height: 96px !important;
}

#view-dashboard.sigma-workbench-ativo .sigma-dash-hero {
	padding: 6px 2px 8px !important;
	margin-bottom: 12px !important;
	background: none !important;
	border: none !important;
}

/* Gestão host — modal central (desktop) / tela cheia (mobile) */
.sigma-gestao-host {
	position: fixed !important;
	inset: 0 !important;
	z-index: 4600 !important;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	box-sizing: border-box;
}

.sigma-gestao-host.is-open,
.sigma-gestao-host:not([hidden]) {
	display: flex !important;
}

.sigma-gestao-host[hidden] {
	display: none !important;
}

.sigma-gestao-host-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.48);
	backdrop-filter: blur(3px);
	opacity: 0;
	transition: opacity 0.28s ease;
}

.sigma-gestao-host.is-open .sigma-gestao-host-backdrop {
	opacity: 1;
}

.sigma-gestao-host-panel {
	position: relative;
	z-index: 1;
	width: min(560px, calc(100vw - 48px));
	max-width: 100%;
	height: auto;
	max-height: min(92vh, 920px);
	overflow: hidden;
	background: #fff;
	border-radius: 18px;
	box-shadow: 0 28px 64px rgba(15, 23, 42, 0.28);
	display: flex;
	flex-direction: column;
	transform-origin: var(--gp-ox, 50%) var(--gp-oy, 50%);
	will-change: transform, opacity;
}

.sigma-gestao-host-panel .sigma-gp,
.sigma-gestao-host-panel .sigma-gestao-shell-compact,
.sigma-gestao-host-panel .sigma-gestao-shell-desktop,
.sigma-gestao-host-panel .sigma-gestao-shell-mobile {
	flex: 1;
	min-height: 0;
	max-height: min(92vh, 920px);
	height: 100%;
	border-radius: 18px !important;
	box-shadow: none !important;
	overflow: hidden;
}

body.sigma-gestao-aberta-body {
	overflow: hidden !important;
}

body.sigma-gestao-aberta-body #sigma-chrome-layer .mobile-bottom-nav,
body.sigma-gestao-aberta-body .mobile-bottom-nav,
body.sigma-gestao-aberta-body #fab-global-container {
	display: none !important;
}

/* Operacional — mesmo padrão visual dos KPIs do gestor */
#view-dashboard .sigma-dash-op-panel {
	width: 100%;
}

#view-dashboard .sigma-dash-op-receber.has-alert {
	border-color: #f59e0b;
	box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.18);
}

#view-dashboard .sigma-dash-op-receber.has-alert .op-kpi-sub {
	color: #b45309;
	font-weight: 700;
}

@media (max-width: 1024px) {
	.sigma-gestao-host {
		align-items: stretch;
		justify-content: stretch;
		padding: 0;
	}
	.sigma-gestao-host-backdrop {
		display: block;
		background: #0f172a;
	}
	.sigma-gestao-host-panel {
		width: 100%;
		max-width: none;
		height: 100%;
		max-height: none;
		border-radius: 0;
		box-shadow: none;
	}
	.sigma-gestao-host-panel .sigma-gp,
	.sigma-gestao-host-panel .sigma-gestao-shell-mobile {
		max-height: none;
		border-radius: 0 !important;
		min-height: 100%;
		min-height: 100dvh;
	}

	#view-dashboard .sigma-dash-command,
	#view-dashboard .sigma-dash-op-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	#cards-container {
		grid-template-columns: 1fr !important;
	}

	.sigma-entity-card.v4-card-tile {
		padding: 14px 14px 12px 16px !important;
	}
}

@media (max-width: 768px) {
	#view-dashboard .sigma-dash-command,
	#view-dashboard .sigma-dash-op-grid,
	#view-dashboard #resume-container.sigma-dash-command {
		grid-template-columns: 1fr !important;
	}
}

@media (min-width: 1025px) {
	#view-dashboard #resume-container.sigma-dash-command,
	#view-dashboard .sigma-dash-op-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

/* ==========================================================================
   SIGMA — Tabela unificada de gestão (PC > 1024px)
   ========================================================================== */
.sigma-gestao-table-root {
	width: 100%;
}

.sigma-gestao-table-wrap {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.05);
	overflow: hidden;
}

.sigma-gestao-table-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	padding: 14px 18px;
	border-bottom: 1px solid #e2e8f0;
	background: linear-gradient(180deg, #fafbfc 0%, #fff 100%);
}

.sigma-gestao-table-toolbar-left {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #0f172a;
	font-size: 0.92rem;
}

.sigma-gestao-table-toolbar-left i {
	color: #2563eb;
	font-size: 1.15rem;
}

.sigma-gestao-table-count {
	font-size: 0.78rem;
	font-weight: 600;
	color: #64748b;
	padding: 3px 10px;
	border-radius: 999px;
	background: #f1f5f9;
}

.sigma-gestao-table-search {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #fff;
	min-width: min(320px, 100%);
}

.sigma-gestao-table-search i {
	color: #94a3b8;
}

.sigma-gestao-table-filter {
	border: none;
	outline: none;
	background: transparent;
	font-size: 0.88rem;
	width: 100%;
	min-width: 180px;
	color: #0f172a;
}

.sigma-gestao-table-scroll {
	overflow: visible;
}

.sigma-gestao-table {
	width: 100%;
	table-layout: auto;
	border-collapse: collapse;
	font-size: 0.86rem;
}

.sigma-gestao-table thead th {
	position: sticky;
	top: 0;
	z-index: 2;
	text-align: center;
	padding: 11px 10px;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #64748b;
	background: #f8fafc;
	border-bottom: 1px solid #e2e8f0;
	white-space: nowrap;
}

.sigma-gestao-table thead th:nth-child(1),
.sigma-gestao-table tbody td:nth-child(1) { width: 16%; }
.sigma-gestao-table thead th:nth-child(2),
.sigma-gestao-table tbody td:nth-child(2) { width: 14%; }
.sigma-gestao-table thead th:nth-child(3),
.sigma-gestao-table tbody td:nth-child(3) { width: 14%; }
.sigma-gestao-table thead th:nth-child(4),
.sigma-gestao-table tbody td:nth-child(4) { width: 8%; }
.sigma-gestao-table thead th:nth-child(5),
.sigma-gestao-table tbody td:nth-child(5) { width: 14%; }
.sigma-gestao-table thead th:nth-child(6),
.sigma-gestao-table tbody td:nth-child(6) { width: 20%; }
.sigma-gestao-table thead th:nth-child(7),
.sigma-gestao-table tbody td:nth-child(7) { width: 14%; }

.sigma-gestao-table thead th.num,
.sigma-gestao-table tbody td.num {
	text-align: center;
}

.sigma-gestao-table thead th.act,
.sigma-gestao-table tbody td.act {
	text-align: center;
}

.sigma-gestao-table tbody tr.sigma-gt-group-row td {
	padding: 9px 14px;
	font-size: 0.72rem;
	font-weight: 750;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	text-align: center;
	color: #334155;
	background: #f1f5f9;
	border-top: 1px solid #e2e8f0;
	border-bottom: 1px solid #e2e8f0;
}

.sigma-gestao-table tbody tr.sigma-gt-group-row td i {
	margin-right: 8px;
	color: #2563eb;
}

.sigma-gt-row {
	cursor: pointer;
	transition: background 0.15s ease;
}

.sigma-gt-row:hover {
	background: #f8fafc;
}

.sigma-gt-row.is-selected {
	background: #eff6ff;
	box-shadow: inset 3px 0 0 #2563eb;
}

.sigma-gt-row.is-alert {
	box-shadow: inset 3px 0 0 #f59e0b;
}

.sigma-gestao-table tbody td {
	padding: 12px 10px;
	border-bottom: 1px solid #f1f5f9;
	vertical-align: middle;
	text-align: center;
	color: #334155;
	white-space: normal;
	overflow: visible;
	text-overflow: unset;
	word-break: break-word;
}

.sigma-gt-item,
.sigma-gt-item strong {
	text-align: center;
	color: #475569;
	font-size: 0.88rem;
	font-weight: 600;
}

.sigma-gt-guarnicao,
.sigma-gt-guarnicao strong {
	text-align: center;
	color: #0f172a;
	font-size: 0.92rem;
	font-weight: 750;
	letter-spacing: 0.01em;
}

.sigma-gt-posto {
	color: #64748b;
	font-size: 0.82rem;
}

.sigma-gt-date {
	white-space: nowrap;
	font-size: 0.82rem;
	color: #64748b;
}

.sigma-gt-who .sigma-ecard-who {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 100%;
	overflow: visible;
	text-overflow: unset;
	white-space: normal;
	word-break: break-word;
}

.sigma-gt-badge,
.sigma-gt-tipo {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 700;
	white-space: nowrap;
}

.sigma-gt-badge.is-ok,
.sigma-gt-tipo.is-mat {
	background: #ecfdf5;
	color: #047857;
}

.sigma-gt-badge.is-alert {
	background: #fef2f2;
	color: #b91c1c;
}

.sigma-gt-badge.is-warn {
	background: #fffbeb;
	color: #b45309;
}

.sigma-gt-status {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 6px;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	margin: 0 auto;
}

.sigma-gt-hint {
	font-size: 0.68rem;
	font-weight: 650;
	letter-spacing: 0.01em;
	color: #b45309;
	white-space: nowrap;
	opacity: 0.85;
}

.sigma-ecard-status-wrap {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	margin-left: auto;
	flex-shrink: 0;
}

.sigma-ecard-status-wrap .sigma-ecard-status {
	margin-left: 0;
}

.sigma-ecard-status-wrap .sigma-gt-hint {
	font-size: 0.62rem;
	text-transform: lowercase;
}

.sigma-gt-tipo.is-vtr {
	background: #eff6ff;
	color: #1d4ed8;
}

.sigma-gt-tipo.is-mat {
	background: #f0fdf4;
	color: #15803d;
}

.sigma-gestao-table .is-pend {
	color: #dc2626;
	font-size: 1rem;
}

.sigma-gestao-table .is-zero {
	color: #94a3b8;
}

.sigma-gt-open {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #fff;
	color: #800020;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.15s ease;
}

.sigma-gt-open:hover {
	background: #800020;
	border-color: #800020;
	color: #fff;
}

.sigma-gestao-table-empty {
	text-align: center;
	padding: 28px 16px !important;
	color: #94a3b8;
}

.sigma-workbench-panel {
	width: 100%;
}

.sigma-workbench-panel {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

#wrapper-cards-dashboard {
	width: 100% !important;
	max-width: 100% !important;
}

#admin-gestor-cards-container.sigma-dash-gestor-panel {
	width: 100% !important;
	max-width: 100% !important;
}

/* Tabela de gestão: ocupa todo o rail (não fica presa na 1ª coluna do grid) */
#cards-container:has(.sigma-gestao-table-root),
#cards-container:has(.sigma-workbench-panel) {
	display: block !important;
	grid-template-columns: none !important;
}

#cards-container .sigma-workbench-panel,
#cards-container .sigma-gestao-table-root {
	grid-column: 1 / -1;
	width: 100% !important;
	max-width: 100% !important;
}

#cards-container .sigma-gestao-table-wrap,
#cards-container .sigma-gestao-table-scroll,
#cards-container .sigma-gestao-table {
	width: 100%;
}

/* Split com tabela: rail esquerdo + painel de gestão à direita */
#dashboard-content-by-role.split-view:has(#cards-container .sigma-gestao-table-root) .dashboard-master-column,
#dashboard-content-by-role.sigma-workbench.split-view:has(#cards-container .sigma-gestao-table-root) .dashboard-master-column {
	flex: 1 1 48% !important;
	width: auto !important;
	min-width: 380px !important;
	max-width: 58% !important;
}

#dashboard-content-by-role.split-view:has(#cards-container .sigma-gestao-table-root) .dashboard-detail-column,
#dashboard-content-by-role.sigma-workbench.split-view:has(#cards-container .sigma-gestao-table-root) .dashboard-detail-column {
	flex: 1 1 42% !important;
	width: auto !important;
	min-width: 340px !important;
	max-width: none !important;
	display: flex !important;
	flex-direction: column !important;
	min-height: 420px;
	max-height: calc(100vh - 160px);
	overflow: hidden;
}

#dashboard-content-by-role.split-view:has(#cards-container .sigma-gestao-table-root) #ca-table-wrapper.sigma-gestao-panel,
#dashboard-content-by-role.sigma-workbench.split-view:has(#cards-container .sigma-gestao-table-root) #ca-table-wrapper.sigma-gestao-panel {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	min-height: 0 !important;
	padding: 0 !important;
	background: var(--bg-card-clean, #fff) !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	overflow: hidden;
}

.sigma-gestao-panel-scroll {
	flex: 1 1 auto;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.sigma-gestao-panel .sigma-pl-head {
	position: sticky;
	top: 0;
	z-index: 3;
	margin: 0;
	border-radius: 0;
	border: none;
	border-bottom: 1px solid #e2e8f0;
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
}

.sigma-gestao-panel .sigma-pl-stage {
	padding: 0 16px 16px;
	overflow: hidden;
}

.sigma-gestao-panel .sigma-pl-track {
	width: 100%;
}

.sigma-gestao-panel .sigma-pl-pane {
	width: 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.sigma-gestao-panel .sigma-pl-feed {
	padding-top: 10px;
	gap: 10px;
}

@media (max-width: 1024px) {
	.sigma-gestao-table-root {
		display: none !important;
	}

	#dashboard-content-by-role.split-view:has(#cards-container .sigma-gestao-table-root) .dashboard-detail-column {
		display: none !important;
	}
}

/* Modal de gestão (fallback almox / decisão avulsa) */
.sigma-gestao-host-panel.is-lista-gestao {
	width: min(720px, calc(100vw - 40px));
}

.sigma-gp.is-lista-gestao {
	display: flex;
	flex-direction: column;
	min-height: 0;
	max-height: min(88vh, 820px);
	background: #fff;
}

.sigma-pl-modal-scroll {
	overflow-x: hidden;
	overflow-y: auto;
	flex: 1;
	min-height: 0;
	padding: 0;
}

.sigma-gp.is-lista-gestao .sigma-pl-head {
	position: sticky;
	top: 0;
	z-index: 3;
	background: #fff;
	border-bottom: 1px solid #e2e8f0;
	margin: 0;
	padding: 12px 16px;
	border-radius: 18px 18px 0 0;
	box-shadow: none;
	border-left: none;
	border-right: none;
	border-top: none;
}

.sigma-gp.is-lista-gestao .sigma-pl-list-title {
	font-size: 1.05rem;
}

.sigma-gp.is-lista-gestao .sigma-pl-count {
	min-width: 24px;
	height: 24px;
	font-size: 0.72rem;
}

.sigma-gp.is-lista-gestao .sigma-pl-head-meta {
	font-size: 0.72rem;
	gap: 6px;
}

.sigma-gp.is-lista-gestao .sigma-pl-close {
	width: 32px;
	height: 32px;
	font-size: 1rem;
}

.sigma-gp.is-lista-gestao .sigma-pl-stage {
	padding: 0 18px 16px;
	overflow: hidden;
}

.sigma-gp.is-lista-gestao .sigma-pl-track {
	width: 100%;
}

.sigma-gp.is-lista-gestao .sigma-pl-pane {
	width: 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.sigma-gp.is-lista-gestao .sigma-pl-feed {
	padding-top: 10px;
	gap: 8px;
}

/* Card v2 — modal / gaveta (com faixa de fotos + barra de ações) */
.sigma-pl-card-v2 {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0 !important;
	border-radius: 12px;
	overflow: visible;
}

.sigma-pl-card-v2:hover {
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.07);
	transform: none;
}

.sigma-pl-v2-head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	padding: 10px 24px 8px 16px;
	border-bottom: 1px solid #f1f5f9;
}

.sigma-pl-card-v2 .sigma-pl-status {
	padding: 2px 8px;
	font-size: 0.58rem;
}

.sigma-pl-card-v2 .sigma-pl-time {
	margin-left: auto;
	font-size: 0.68rem;
}

.sigma-pl-v2-body {
	padding: 10px 24px 10px 16px;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.sigma-pl-card-v2 .sigma-pl-item {
	font-size: 0.84rem;
	font-weight: 800;
	line-height: 1.25;
	text-transform: none;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	margin: 0;
}

.sigma-pl-card-v2 .sigma-pl-relato {
	font-size: 0.76rem;
	line-height: 1.4;
	color: #64748b;
	margin: 0;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

.sigma-pl-v2-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	margin-top: 2px;
}

.sigma-pl-chip {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	padding: 2px 7px;
	border-radius: 6px;
	background: #f1f5f9;
	color: #475569;
	font-size: 0.65rem;
	font-weight: 650;
	line-height: 1.2;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sigma-pl-chip i {
	font-size: 0.72rem;
	color: #94a3b8;
	flex-shrink: 0;
}

.sigma-pl-chip.is-autor {
	background: #fff1f2;
	color: #9f1239;
}

.sigma-pl-chip.is-autor i {
	color: #e11d48;
}

/* Faixa de fotos */
.sigma-pl-v2-fotos {
	padding: 8px 24px 10px 16px;
	border-top: 1px solid #f1f5f9;
	background: #fafbfc;
}

.sigma-pl-v2-fotos-label {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.65rem;
	font-weight: 700;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 6px;
}

.sigma-pl-v2-fotos-label i {
	font-size: 0.78rem;
	color: #94a3b8;
}

.sigma-pl-v2-fotos-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.sigma-pl-v2-foto {
	width: 56px;
	height: 56px;
	padding: 0;
	border: 2px solid #e2e8f0;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer;
	background: #fff;
	flex-shrink: 0;
	transition: border-color 0.15s ease, transform 0.12s ease;
}

.sigma-pl-v2-foto:hover {
	border-color: #800020;
	transform: scale(1.04);
}

.sigma-pl-v2-foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sigma-pl-v2-foto.is-more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #f1f5f9;
	color: #475569;
	font-size: 0.72rem;
	font-weight: 800;
	border-style: dashed;
}

.sigma-pl-v2-foto.is-more:hover {
	background: #e2e8f0;
	border-color: #94a3b8;
	color: #0f172a;
}

/* Barra de ações */
.sigma-pl-v2-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 12px 24px 14px 16px;
	border-top: 1px solid #e8edf3;
	background: #f8fafc;
	flex-wrap: wrap;
}

.sigma-pl-v2-tools {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
}

.sigma-pl-v2-tools .sigma-pl-link {
	padding: 4px 8px;
	font-size: 0.68rem;
}

.sigma-pl-v2-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	flex: 1;
	min-width: 0;
}

.sigma-pl-card-v2 .sigma-pl-acoes {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 6px;
	margin: 0 0 0 auto;
	width: auto;
	max-width: 100%;
	padding-right: 2px;
	box-sizing: border-box;
}

.sigma-pl-card-v2 .sigma-pl-act {
	padding: 7px 11px;
	font-size: 0.68rem;
	border-radius: 8px;
	gap: 4px;
	min-width: 0;
	flex: 0 1 auto;
	max-width: none;
	justify-content: center;
}

.sigma-pl-card-v2 .sigma-pl-act i {
	font-size: 0.9rem;
}

.sigma-pl-card-v2.is-decidindo {
	border-color: #94a3b8;
}

.sigma-pl-card-v2 .sigma-pl-decide-slot {
	padding: 0 24px 14px 16px;
	background: #f8fafc;
	border-top: 1px solid #e8edf3;
}

.sigma-pl-card-v2 .sigma-pl-kit {
	padding: 2px 6px;
	font-size: 0.58rem;
}

@media (max-width: 1024px) {
	.sigma-pl-card-v2 .sigma-pl-acoes {
		width: 100%;
	}

	.sigma-pl-card-v2 .sigma-pl-act {
		flex: 1 1 calc(33% - 6px);
		max-width: none;
	}

	.sigma-pl-v2-foot {
		flex-direction: column;
		align-items: stretch;
	}

	.sigma-pl-v2-actions {
		width: 100%;
	}
}

/* Legado compact — mantido para compat */
.sigma-pl-card-compact {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto;
	gap: 0 12px;
	padding: 11px 12px 14px 12px;
	border-radius: 12px;
	align-items: center;
}

.sigma-pl-card-compact:hover {
	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
	transform: none;
}

.sigma-pl-compact-body {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.sigma-pl-compact-head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
}

.sigma-pl-card-compact .sigma-pl-status {
	padding: 2px 7px;
	font-size: 0.58rem;
}

.sigma-pl-card-compact .sigma-pl-time {
	margin-left: auto;
	font-size: 0.65rem;
}

.sigma-pl-card-compact .sigma-pl-item {
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.2;
	text-transform: none;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	overflow: hidden;
}

.sigma-pl-card-compact .sigma-pl-relato {
	font-size: 0.75rem;
	line-height: 1.35;
	color: #64748b;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	margin: 0;
}

.sigma-pl-compact-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px;
}

.sigma-pl-compact-tools {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-left: 2px;
}

.sigma-pl-compact-tools .sigma-pl-link {
	padding: 2px 6px;
	font-size: 0.65rem;
}

.sigma-pl-compact-foot {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	gap: 5px;
	flex-shrink: 0;
	padding: 2px 6px 4px 8px;
}

.sigma-pl-card-compact .sigma-pl-acoes {
	flex-direction: column;
	gap: 4px;
	margin: 0;
}

.sigma-pl-card-compact .sigma-pl-act {
	padding: 5px 8px;
	font-size: 0.62rem;
	border-radius: 7px;
	gap: 3px;
	min-width: 88px;
	justify-content: center;
}

.sigma-pl-card-compact .sigma-pl-act i {
	font-size: 0.85rem;
}

.sigma-pl-card-compact .sigma-pl-act span {
	display: inline;
}

.sigma-pl-card-compact.is-decidindo {
	grid-template-columns: 1fr;
	align-items: stretch;
}

.sigma-pl-card-compact.is-decidindo .sigma-pl-compact-foot {
	grid-column: 1;
	flex-direction: row;
	flex-wrap: wrap;
}

.sigma-pl-card-compact .sigma-pl-decide-slot {
	grid-column: 1 / -1;
	margin-top: 6px;
}

.sigma-pl-card-compact .sigma-pl-kit {
	padding: 2px 6px;
	font-size: 0.58rem;
}

@media (max-width: 1024px) {
	.sigma-pl-card-compact {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.sigma-pl-compact-foot {
		border-top: 1px solid #f1f5f9;
		padding-top: 8px;
	}

	.sigma-pl-card-compact .sigma-pl-acoes {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: flex-end;
		width: 100%;
	}

	.sigma-pl-card-compact .sigma-pl-act {
		min-width: 0;
		flex: 1;
	}
}

.sigma-gt-gerenciar {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	background: #fff;
	color: #1e3a8a;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.15s ease;
	white-space: nowrap;
}

.sigma-gt-gerenciar:hover {
	background: #2563eb;
	border-color: #2563eb;
	color: #fff;
}

.sigma-gt-autor .sigma-ecard-who {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.82rem;
	color: #475569;
}

.sigma-gt-autor .sigma-ecard-who i {
	color: #64748b;
}

/* =============================================================================
   TELA FULL-WIDTH DE GESTÃO (substitui a tabela no workbench)
   ============================================================================= */
#sigma-gestao-view,
.sigma-gv-host {
	width: 100%;
}

body.sigma-gestao-tela-ativa #cards-container:has(#sigma-gestao-view:not([hidden])) .sigma-workbench-panel,
body.sigma-gestao-tela-ativa #cards-container:has(#sigma-gestao-view:not([hidden])) #grid-frota {
	display: none !important;
}

/* Caixa da gestão (material e frota) — envelope visível no workbench */
.sigma-gv-root {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
	min-height: 480px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
	box-sizing: border-box;
}

.sigma-gv-root.is-frota {
	min-height: 0;
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(45, 90, 105, 0.35);
	box-shadow: 0 10px 32px rgba(15, 50, 60, 0.14);
	backdrop-filter: blur(4px);
}

/* Escopo frota: degradê azul-petróleo suave (lista + prontuário) */
body.sigma-escopo-frota #cards-container,
body.sigma-prontuario-vtr #cards-container {
	background: linear-gradient(165deg, #d2e3e9 0%, #a9c5d0 38%, #b6cfd8 72%, #cfe0e6 100%) !important;
	border: 1px solid #7f9eaa;
	border-radius: 18px;
	padding: 14px;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.45),
		0 8px 24px rgba(30, 60, 70, 0.12);
	box-sizing: border-box;
}

body.sigma-escopo-frota .sigma-workbench-toolbar,
body.sigma-prontuario-vtr .sigma-workbench-toolbar {
	background: rgba(255, 255, 255, 0.62);
	border-radius: 12px;
	padding: 10px 14px;
	border: 1px solid rgba(55, 95, 110, 0.28);
	margin-bottom: 12px;
	backdrop-filter: blur(6px);
}

body.sigma-escopo-frota .sigma-gestao-table-wrap {
	background: rgba(255, 255, 255, 0.92);
	border-color: rgba(55, 95, 110, 0.28);
}

body.sigma-escopo-frota #dashboard-content-by-role,
body.sigma-prontuario-vtr #dashboard-content-by-role,
body.sigma-escopo-frota #admin-gestor-cards-container,
body.sigma-prontuario-vtr #admin-gestor-cards-container,
body.sigma-escopo-frota #wrapper-cards-dashboard,
body.sigma-prontuario-vtr #wrapper-cards-dashboard {
	background: transparent !important;
}

.sigma-gv-root.is-frota .sigma-gv-eyebrow {
	color: #1e4a5a;
}

.sigma-gv-frota {
	padding: 16px 20px 20px;
	border-bottom: none;
}

.sigma-gv-frota .vtr-gestao-shell {
	gap: 0.9rem;
}

/* —— Panes em tabela —— */
#sigma-gestao-view .vtr-gestao-panes,
.sigma-gv-root.is-frota .vtr-gestao-panes {
	padding: 14px 16px 16px;
	background: rgba(255, 255, 255, 0.97);
	border: 2px solid #e11d48;
	border-radius: 14px;
	box-shadow:
		0 0 0 1px rgba(225, 29, 72, 0.25),
		0 0 18px rgba(225, 29, 72, 0.45),
		0 0 36px rgba(225, 29, 72, 0.18),
		0 2px 10px rgba(15, 40, 50, 0.06);
	box-sizing: border-box;
	animation: vtr-panes-glow 2.4s ease-in-out infinite;
}

#sigma-gestao-view .vtr-gestao-panes.is-empty,
.sigma-gv-root.is-frota .vtr-gestao-panes.is-empty {
	border-color: rgba(55, 95, 110, 0.22);
	box-shadow: 0 2px 10px rgba(15, 40, 50, 0.06);
	animation: none;
	opacity: 0.95;
}

@keyframes vtr-panes-glow {
	0%, 100% {
		box-shadow:
			0 0 0 1px rgba(225, 29, 72, 0.22),
			0 0 14px rgba(225, 29, 72, 0.35),
			0 0 28px rgba(225, 29, 72, 0.12),
			0 2px 10px rgba(15, 40, 50, 0.06);
	}
	50% {
		box-shadow:
			0 0 0 2px rgba(225, 29, 72, 0.4),
			0 0 22px rgba(225, 29, 72, 0.55),
			0 0 40px rgba(225, 29, 72, 0.22),
			0 2px 10px rgba(15, 40, 50, 0.06);
	}
}

.vtr-panes-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.vtr-panes-count {
	flex-shrink: 0;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #9f1239;
	background: #ffe4e6;
	border: 1px solid #fecdd3;
	border-radius: 999px;
	padding: 4px 10px;
}

.vtr-panes-table-wrap {
	width: 100%;
	overflow-x: auto;
	border: 1px solid #fecdd3;
	border-radius: 12px;
	background: #fff;
}

.vtr-panes-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.84rem;
	min-width: 780px;
}

.vtr-panes-table thead th {
	text-align: center;
	padding: 10px 12px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #64748b;
	background: linear-gradient(180deg, #fff1f2 0%, #ffe4e6 100%);
	border-bottom: 1px solid #fecdd3;
	white-space: nowrap;
}

.vtr-panes-table tbody td {
	padding: 12px;
	vertical-align: middle;
	border-bottom: 1px solid #eef2f6;
	color: #334155;
	text-align: center;
}

.vtr-pane-col-item,
.vtr-pane-col-obs {
	text-align: left !important;
}

.vtr-pane-row:last-child td {
	border-bottom: none;
}

.vtr-pane-row:hover td {
	background: #fff8f8;
}

.vtr-pane-col-item {
	min-width: 140px;
	max-width: 180px;
}

.vtr-pane-col-item strong {
	display: block;
	font-size: 0.88rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
}

.vtr-pane-col-item small {
	display: block;
	margin-top: 3px;
	font-size: 0.7rem;
	font-weight: 600;
	color: #94a3b8;
}

.vtr-pane-col-obs {
	min-width: 200px;
	max-width: 320px;
}

.vtr-pane-col-obs p {
	margin: 0;
	padding: 8px 10px;
	border-radius: 8px;
	background: #fff1f2;
	color: #9f1239;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.35;
	text-align: left;
}

.vtr-pane-col-user {
	white-space: nowrap;
	font-size: 0.78rem;
	font-weight: 700;
	color: #475569;
}

.vtr-pane-col-user i {
	color: #94a3b8;
	margin-right: 2px;
}

.vtr-pane-col-date {
	white-space: nowrap;
	font-size: 0.78rem;
	font-weight: 700;
	color: #64748b;
}

.vtr-pane-col-fotos {
	white-space: nowrap;
}

.vtr-pane-fotos-none {
	color: #cbd5e1;
	font-weight: 700;
}

.vtr-pane-fotos-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border: 1px solid #bfdbfe;
	border-radius: 8px;
	background: #eff6ff;
	color: #1d4ed8;
	font-size: 0.72rem;
	font-weight: 750;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.vtr-pane-fotos-btn:hover {
	background: #dbeafe;
	border-color: #93c5fd;
}

.vtr-pane-col-act {
	min-width: 72px;
	width: 72px;
	text-align: center !important;
	white-space: nowrap;
}

.vtr-pane-act-btns {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 6px;
}

.vtr-pane-act {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border-radius: 9px;
	border: 1.5px solid transparent;
	cursor: pointer;
	line-height: 1;
	flex-shrink: 0;
	transition: background 0.15s ease, filter 0.15s ease;
}

.vtr-pane-act i {
	font-size: 1.15rem;
	pointer-events: none;
}

.vtr-pane-act.is-sanear,
.vtr-pane-act.is-reparar {
	background: #0f766e;
	border-color: #0d9488;
	color: #fff;
}

/* ===== Modal Sanear pendência (frota) ===== */
.swal2-popup.vtr-swal-sanear {
	width: min(100%, 440px) !important;
	padding: 0 !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22) !important;
	overflow: hidden;
}

.swal2-popup.vtr-swal-sanear .swal2-title {
	display: none !important;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-html,
.swal2-popup.vtr-swal-sanear .swal2-html-container {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	text-align: left !important;
	color: #334155;
}

.vtr-sanear-modal {
	padding: 20px 20px 8px;
	text-align: left;
}

.vtr-sanear-head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 14px;
}

.vtr-sanear-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: linear-gradient(145deg, #ccfbf1 0%, #f0fdfa 100%);
	border: 1px solid #99f6e4;
	color: #0f766e;
}

.vtr-sanear-icon i {
	font-size: 1.35rem;
}

.vtr-sanear-head-text {
	min-width: 0;
	flex: 1;
}

.vtr-sanear-title {
	margin: 0 0 4px;
	font-size: 1.12rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
	text-align: left;
}

.vtr-sanear-sub {
	margin: 0;
	font-size: 0.84rem;
	line-height: 1.4;
	color: #64748b;
	text-align: left;
}

.vtr-sanear-item {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 10px 12px;
	margin-bottom: 14px;
	border-radius: 10px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-left: 3px solid #0f766e;
}

.vtr-sanear-item-label {
	font-size: 0.65rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #94a3b8;
}

.vtr-sanear-item-name {
	font-size: 0.92rem;
	font-weight: 750;
	color: #0f172a;
	word-break: break-word;
}

.vtr-sanear-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	text-align: left;
}

.vtr-sanear-field > span {
	font-size: 0.78rem;
	font-weight: 750;
	color: #475569;
}

.vtr-sanear-field textarea {
	display: block;
	width: 100%;
	min-height: 96px;
	margin: 0;
	padding: 10px 12px;
	box-sizing: border-box;
	resize: vertical;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	background: #fff;
	color: #0f172a;
	font-size: 0.9rem;
	line-height: 1.45;
	font-family: inherit;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.vtr-sanear-field textarea::placeholder {
	color: #94a3b8;
}

.vtr-sanear-field textarea:focus {
	border-color: #0d9488;
	box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.18);
}

.vtr-sanear-err {
	margin: 8px 0 0;
	padding: 8px 10px;
	border-radius: 8px;
	background: #fef2f2;
	color: #b91c1c;
	font-size: 0.8rem;
	font-weight: 650;
	text-align: left;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-actions {
	display: flex !important;
	gap: 10px;
	margin: 0 !important;
	padding: 14px 16px 16px !important;
	border-top: 1px solid #e2e8f0;
	width: 100%;
	box-sizing: border-box;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-confirm,
.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-cancel {
	flex: 1 1 0 !important;
	margin: 0 !important;
	min-height: 44px;
	padding: 0 14px;
	border-radius: 10px;
	font-size: 0.9rem;
	font-weight: 750;
	cursor: pointer;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	box-shadow: none !important;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-confirm {
	background: #0f766e !important;
	color: #fff !important;
	border: 1px solid #0d9488 !important;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-confirm:hover {
	background: #0d9488 !important;
	border-color: #0f766e !important;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-cancel {
	background: #f8fafc !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
}

.swal2-popup.vtr-swal-sanear .vtr-swal-sanear-cancel:hover {
	background: #f1f5f9 !important;
	color: #0f172a !important;
}

.swal2-popup.vtr-swal-sanear .swal2-validation-message {
	display: none !important;
}

.vtr-pane-act.is-sanear:hover,
.vtr-pane-act.is-reparar:hover {
	background: #0d9488;
	filter: brightness(1.05);
}

.vtr-gestao-hist-vtr {
	padding: 14px 16px;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(55, 95, 110, 0.22);
	border-radius: 14px;
}

.vtr-hist-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
}

.vtr-hist-ver-completo {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
	padding: 8px 12px;
	border-radius: 10px;
	border: 1px solid #cbd5e1;
	background: #fff;
	color: #1e4a5a;
	font-size: 0.75rem;
	font-weight: 750;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.vtr-hist-ver-completo:hover {
	background: #f1f5f9;
	border-color: #94a3b8;
}

.vtr-hist-vtr-list.is-preview {
	display: flex;
	flex-direction: column;
	gap: 8px;
	max-height: none;
	overflow: visible;
}

.vtr-hist-preview-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
}

.vtr-hist-preview-row.is-ok {
	border-color: #99f6e4;
	background: #f0fdfa;
}

.vtr-hist-preview-row.is-warn {
	border-color: #fecdd3;
	background: #fff1f2;
}

.vtr-hist-preview-ciclo {
	display: flex;
	flex-direction: column;
	gap: 0;
	border-radius: 10px;
	overflow: hidden;
}

.vtr-hist-preview-ciclo .vtr-hist-ciclo-filhos {
	position: relative;
	margin: 0 0 0 14px;
	padding: 6px 0 2px 14px;
	border-left: 2px solid #cbd5e1;
}

.vtr-hist-preview-ciclo .vtr-hist-filho {
	margin-bottom: 6px;
	background: #f0fdfa;
	border-color: #99f6e4;
}

.vtr-hist-preview-ciclo .vtr-hist-filho:last-child {
	margin-bottom: 0;
}

.vtr-hist-badge {
	display: inline-flex;
	align-items: center;
	margin-top: 6px;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.vtr-hist-badge.is-ok {
	background: #ccfbf1;
	color: #0f766e;
}

.vtr-hist-badge.is-open {
	background: #fee2e2;
	color: #b91c1c;
}

.vtr-hist-preview-main {
	min-width: 0;
	flex: 1;
}

.vtr-hist-preview-main strong {
	display: block;
	font-size: 0.82rem;
	font-weight: 800;
	color: #0f172a;
}

.vtr-hist-preview-main p {
	margin: 4px 0 0;
	font-size: 0.78rem;
	font-weight: 600;
	color: #475569;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.vtr-hist-preview-meta {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 4px;
	flex-shrink: 0;
	text-align: right;
	font-size: 0.7rem;
	font-weight: 700;
	color: #64748b;
}

.vtr-hist-preview-meta i {
	margin-right: 2px;
	color: #94a3b8;
}

.vtr-hist-mais {
	margin: 4px 0 0;
	font-size: 0.72rem;
	font-weight: 700;
	color: #94a3b8;
	text-align: center;
}

/* —— Tela dedicada histórico completo —— */
.vtr-hist-completo-host {
	position: fixed;
	inset: 0;
	z-index: 12000;
	display: flex;
	align-items: stretch;
	justify-content: flex-end;
}

.vtr-hist-completo-host[hidden] {
	display: none !important;
}

.vtr-hist-completo-scrim {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.45);
}

.vtr-hist-completo-panel {
	position: relative;
	z-index: 1;
	width: min(560px, 100vw);
	height: 100%;
	background: #f8fafc;
	border-left: 1px solid #94a3b8;
	box-shadow: -12px 0 40px rgba(15, 23, 42, 0.18);
	display: flex;
	flex-direction: column;
	animation: vtr-hist-slide-in 0.22s ease-out;
}

@keyframes vtr-hist-slide-in {
	from { transform: translateX(24px); opacity: 0.6; }
	to { transform: translateX(0); opacity: 1; }
}

.vtr-hist-completo-header {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 16px 18px;
	background: #fff;
	border-bottom: 1px solid #e2e8f0;
}

.vtr-hist-completo-back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 12px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #fff;
	color: #475569;
	font-size: 0.78rem;
	font-weight: 750;
	cursor: pointer;
	flex-shrink: 0;
}

.vtr-hist-completo-back:hover {
	background: #f1f5f9;
}

.vtr-hist-completo-titles h2 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
}

.vtr-hist-completo-titles p {
	margin: 4px 0 0;
	font-size: 0.78rem;
	font-weight: 650;
	color: #64748b;
}

.vtr-hist-completo-feed {
	flex: 1;
	overflow-y: auto;
	padding: 14px 16px 28px;
	background: #f1f5f9;
}

.vtr-hist-timeline {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.vtr-hist-completo-item,
.vtr-hist-completo-ciclo {
	position: relative;
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
}

.vtr-hist-node {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #94a3b8;
	color: #fff;
	font-size: 0.95rem;
	box-shadow: 0 0 0 3px #f1f5f9;
	z-index: 1;
}

.vtr-hist-node.is-ok { background: #0d9488; }
.vtr-hist-node.is-warn { background: #e11d48; }

.vtr-hist-completo-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 12px 14px;
}

.vtr-hist-completo-item.is-ok .vtr-hist-completo-card {
	border-color: #99f6e4;
	background: #f0fdfa;
}

.vtr-hist-completo-item.is-warn .vtr-hist-completo-card,
.vtr-hist-completo-ciclo.is-aberta .vtr-hist-completo-card {
	border-color: #fecdd3;
	background: #fff1f2;
}

.vtr-hist-completo-ciclo.is-sanada .vtr-hist-completo-card {
	border-color: #e2e8f0;
	background: #fff;
}

.vtr-hist-completo-item {
	padding: 0;
	border: none;
	background: transparent;
}

.vtr-hist-completo-item.is-ok,
.vtr-hist-completo-item.is-warn {
	border: none;
	background: transparent;
}

.vtr-hist-completo-top {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 10px;
}

.vtr-hist-completo-top strong {
	font-size: 0.88rem;
	font-weight: 800;
	color: #0f172a;
}

.vtr-hist-completo-top time {
	font-size: 0.72rem;
	font-weight: 700;
	color: #94a3b8;
	white-space: nowrap;
}

.vtr-hist-completo-body {
	margin-top: 8px;
}

.vtr-hist-ciclo-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 4px;
}

.vtr-hist-item-chip {
	margin: 0 0 4px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.78rem;
	font-weight: 750;
	color: #475569;
}

.vtr-hist-ciclo-filhos {
	position: relative;
	margin: 12px 0 0;
	padding: 4px 0 2px 1.4rem;
}

.vtr-hist-ciclo-filhos::before {
	content: '';
	position: absolute;
	left: 0.55rem;
	top: 0.35rem;
	bottom: 0.35rem;
	width: 2px;
	background: #cbd5e1;
	border-radius: 2px;
}

.vtr-hist-completo-item.vtr-hist-filho {
	margin: 0 0 0.75rem;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 8px;
}

.vtr-hist-completo-item.vtr-hist-filho:last-child {
	margin-bottom: 0;
}

.vtr-hist-completo-item.vtr-hist-filho .vtr-hist-node {
	width: 22px;
	height: 22px;
	font-size: 0.75rem;
	box-shadow: 0 0 0 3px #fff;
}

.vtr-hist-completo-item.vtr-hist-filho .vtr-hist-completo-card {
	padding: 10px 12px;
	background: #f8fafc;
}

.vtr-hist-completo-quem {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.75rem;
	font-weight: 700;
	color: #64748b;
}

.vtr-hist-completo-oque {
	margin: 6px 0 0;
	font-size: 0.84rem;
	font-weight: 650;
	color: #334155;
	line-height: 1.4;
}

@media (max-width: 640px) {
	.vtr-hist-completo-panel {
		width: 100vw;
	}

	.vtr-hist-preview-row {
		flex-direction: column;
	}

	.vtr-hist-preview-meta {
		align-items: flex-start;
		text-align: left;
		flex-direction: row;
		gap: 10px;
	}
}

@media (max-width: 900px) {
	.vtr-pane-act span {
		display: none;
	}

	.vtr-pane-act {
		padding: 8px;
	}

	.vtr-pane-col-act {
		min-width: 120px;
	}
}

.sigma-gv-frota-pends {
	padding: 8px 20px 20px;
}

.sigma-gv-frota-pends-title {
	margin: 8px 0 12px;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #800020;
	display: flex;
	align-items: center;
	gap: 8px;
}

.sigma-gv-empty.is-compact {
	margin: 0 20px 20px;
	padding: 18px 16px;
	min-height: 0;
}

.sigma-gv-empty.is-compact i {
	font-size: 1.6rem;
}

.sigma-gv-root.is-frota .sigma-gv-workspace {
	padding: 0;
	border: none;
	box-shadow: none;
	background: transparent;
}

.sigma-gv-topbar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 20px;
	border-bottom: 1px solid #e8edf3;
	background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

.sigma-gv-close {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #fff;
	color: #64748b;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	flex-shrink: 0;
	transition: all 0.15s ease;
}

.sigma-gv-topbar-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	margin-left: auto;
}

.sigma-gv-pdf {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	border: 1px solid #fecaca;
	border-radius: 10px;
	background: #fff;
	color: #800020;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	flex-shrink: 0;
	transition: all 0.15s ease;
}

.sigma-gv-pdf i {
	font-size: 1.05rem;
}

.sigma-gv-pdf:hover {
	background: #800020;
	border-color: #800020;
	color: #fff;
}

.sigma-gv-close i {
	font-size: 1rem;
}

.sigma-gv-close:hover {
	border-color: #fecaca;
	color: #b91c1c;
	background: #fef2f2;
}

.sigma-gv-topbar-main {
	flex: 1;
	min-width: 0;
}

.sigma-gv-eyebrow {
	font-size: 0.68rem;
	font-weight: 750;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: #94a3b8;
}

.sigma-gv-title-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 4px;
}

.sigma-gv-title-row h1 {
	margin: 0;
	font-size: 1.35rem;
	font-weight: 800;
	color: #0f172a;
	letter-spacing: -0.02em;
	line-height: 1.15;
}

.sigma-gv-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 10px;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 800;
}

.sigma-gv-badge.is-alert {
	background: #0f172a;
	color: #fff;
}

.sigma-gv-badge.is-ok {
	background: #ecfdf5;
	color: #047857;
	border: 1px solid #a7f3d0;
}

.sigma-gv-topbar-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 6px;
	font-size: 0.78rem;
	color: #64748b;
	font-weight: 600;
}

.sigma-gv-dot {
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #cbd5e1;
}

.sigma-gv-workspace {
	display: flex;
	flex: 1;
	min-height: 0;
}

.sigma-gv-workspace.has-nav {
	border-top: none;
}

.sigma-gv-nav {
	flex: 0 0 240px;
	border-right: 1px solid #e8edf3;
	background: #f8fafc;
	padding: 12px 10px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	overflow-y: auto;
	max-height: calc(100vh - 220px);
}

.sigma-gv-pend-tab {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
	width: 100%;
	padding: 10px 12px;
	border: 1px solid transparent;
	border-radius: 10px;
	background: transparent;
	text-align: left;
	cursor: pointer;
	transition: all 0.15s ease;
}

.sigma-gv-pend-tab:hover {
	background: #fff;
	border-color: #e2e8f0;
}

.sigma-gv-pend-tab.is-active {
	background: #fff;
	border-color: #800020;
	box-shadow: 0 2px 8px rgba(128, 0, 32, 0.08);
}

.sigma-gv-pend-tab strong {
	font-size: 0.78rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

.sigma-gv-pend-tab small {
	font-size: 0.65rem;
	color: #94a3b8;
	font-weight: 600;
}

.sigma-gv-tab-head {
	display: flex;
	align-items: center;
	gap: 6px;
	width: 100%;
}

.sigma-gv-tab-count {
	margin-left: auto;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: #800020;
	color: #fff;
	font-size: 0.62rem;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.sigma-gv-relatos {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 0 16px;
}

.sigma-gv-relato {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 6px;
	width: 100%;
	margin: 0;
	padding: 12px 14px;
	border-radius: 12px;
	background: linear-gradient(135deg, #fff1f2 0%, #ffe4e6 100%);
	border: 1px solid #fecdd3;
	border-left: 4px solid #e11d48;
	text-align: left;
	cursor: pointer;
	transition: box-shadow 0.15s ease, border-color 0.15s ease;
}

.sigma-gv-relato:hover {
	box-shadow: 0 2px 8px rgba(225, 29, 72, 0.1);
}

.sigma-gv-relato.is-active {
	border-color: #800020;
	border-left-color: #800020;
	box-shadow: 0 2px 10px rgba(128, 0, 32, 0.12);
}

.sigma-gv-relato-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.sigma-gv-relato-meta time {
	font-size: 0.68rem;
	color: #94a3b8;
	font-weight: 650;
}

.sigma-gv-relato .sigma-gv-obs-text {
	font-size: 0.95rem;
}

.sigma-gv-relato-side {
	display: none;
	flex-direction: row;
	align-items: flex-start;
	gap: 0;
}

.sigma-gv-relato-side.is-active {
	display: flex;
}

.sigma-gv-tab-status {
	font-size: 0.58rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 2px 6px;
	border-radius: 999px;
}

.sigma-gv-tab-status.is-pendente {
	background: #fff1f2;
	color: #be123c;
}

.sigma-gv-tab-status.is-andamento {
	background: #eff6ff;
	color: #1d4ed8;
}

.sigma-gv-panels {
	flex: 1;
	min-width: 0;
	padding: 16px 20px 20px;
	overflow-y: auto;
	max-height: calc(100vh - 220px);
}

.sigma-gv-pend-panel {
	display: none;
	border: none;
	border-radius: 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
}

.sigma-gv-pend-panel.is-active {
	display: block;
}

.sigma-gv-item-ident {
	margin: 0 0 12px;
	padding: 12px 16px;
	background: #f8fafc;
	border: 1px solid #e8edf3;
	border-radius: 12px;
}

.sigma-gv-item-ident .sigma-gv-facts-cols {
	margin: 0;
}

.sigma-gv-pend-stack {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sigma-gv-pend-card {
	border: 1px solid #e8edf3;
	border-radius: 14px;
	padding: 0;
	background: #fff;
	box-shadow: none;
}

.sigma-gv-pend-card.is-decidindo,
.sigma-gv-pend-panel.is-decidindo {
	border-color: #94a3b8;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.sigma-gv-split {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 16px;
	padding: 18px 20px;
	align-items: start;
}

.sigma-gv-side {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 0;
	justify-self: end;
}

.sigma-gv-detail-head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}

.sigma-gv-status {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.62rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.sigma-gv-pend-panel.is-pendente .sigma-gv-status,
.sigma-gv-pend-card.is-pendente .sigma-gv-status {
	background: #fff1f2;
	color: #be123c;
}

.sigma-gv-pend-panel.is-andamento .sigma-gv-status,
.sigma-gv-pend-card.is-andamento .sigma-gv-status {
	background: #eff6ff;
	color: #1d4ed8;
}

.sigma-gv-detail-head time {
	margin-left: auto;
	font-size: 0.72rem;
	color: #94a3b8;
	font-weight: 650;
}

.sigma-gv-item-title {
	margin: 0 0 8px;
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.3;
}

/* Observação em destaque — elemento principal do card */
.sigma-gv-observacao {
	margin: 0 0 16px;
	padding: 16px 18px;
	border-radius: 12px;
	background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
	border: 1px solid #fed7aa;
	border-left: 4px solid #ea580c;
	box-shadow: 0 2px 8px rgba(234, 88, 12, 0.08);
}

.sigma-gv-pend-panel.is-pendente .sigma-gv-observacao,
.sigma-gv-pend-card.is-pendente .sigma-gv-observacao {
	background: linear-gradient(135deg, #fff1f2 0%, #ffe4e6 100%);
	border-color: #fecdd3;
	border-left-color: #e11d48;
	box-shadow: 0 2px 8px rgba(225, 29, 72, 0.08);
}

.sigma-gv-pend-panel.is-andamento .sigma-gv-observacao,
.sigma-gv-pend-card.is-andamento .sigma-gv-observacao {
	background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
	border-color: #bfdbfe;
	border-left-color: #2563eb;
	box-shadow: 0 2px 8px rgba(37, 99, 235, 0.08);
}

.sigma-gv-observacao.is-empty {
	background: #f8fafc;
	border-color: #e2e8f0;
	border-left-color: #94a3b8;
	box-shadow: none;
}

.sigma-gv-obs-label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.65rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #c2410c;
	margin-bottom: 8px;
}

.sigma-gv-pend-panel.is-pendente .sigma-gv-obs-label,
.sigma-gv-pend-card.is-pendente .sigma-gv-obs-label {
	color: #be123c;
}

.sigma-gv-pend-panel.is-andamento .sigma-gv-obs-label,
.sigma-gv-pend-card.is-andamento .sigma-gv-obs-label {
	color: #1d4ed8;
}

.sigma-gv-observacao.is-empty .sigma-gv-obs-label {
	color: #94a3b8;
}

.sigma-gv-obs-text {
	margin: 0;
	font-size: 1.12rem;
	font-weight: 800;
	line-height: 1.45;
	color: #0f172a;
	letter-spacing: -0.01em;
}

.sigma-gv-observacao.is-empty .sigma-gv-obs-text {
	font-size: 0.9rem;
	font-weight: 600;
	color: #94a3b8;
	font-style: italic;
}

.sigma-gv-item-context {
	display: flex;
	flex-direction: column;
	gap: 3px;
	margin: 0 0 10px;
	padding-bottom: 0;
	border-bottom: none;
}

.sigma-gv-obs-label.is-autor {
	text-transform: none;
	letter-spacing: 0.01em;
	font-size: 0.72rem;
	font-weight: 750;
	color: #334155;
}

.sigma-gv-pend-panel.is-pendente .sigma-gv-obs-label.is-autor {
	color: #334155;
}

.sigma-gv-pend-panel.is-andamento .sigma-gv-obs-label.is-autor {
	color: #334155;
}

.sigma-gv-facts-cols {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px 14px;
	margin: 0 0 10px;
	padding-bottom: 0;
	border-bottom: none;
}

.sigma-gv-facts-cols dt {
	font-size: 0.6rem;
}

.sigma-gv-facts-cols dd {
	font-size: 0.78rem;
	font-weight: 700;
	color: #1e293b;
	line-height: 1.35;
	word-break: break-word;
}

.sigma-gv-kit-line {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: -4px 0 10px;
	font-size: 0.68rem;
	font-weight: 650;
	color: #64748b;
	letter-spacing: 0.01em;
}

.sigma-gv-kit-line i {
	font-size: 0.78rem;
	color: #94a3b8;
}

.sigma-pl-decide.is-on-card > .sigma-gp-hint {
	margin: 0 0 12px;
}

.sigma-pl-decide-copy .sigma-gp-hint {
	margin: 4px 0 0;
}

.sigma-gv-media-col {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-height: 0;
	min-width: 0;
	width: 100%;
	max-width: 148px;
	justify-self: end;
}

.sigma-gv-media-col .sigma-gv-media {
	flex: 0 0 auto;
	align-items: stretch;
	height: auto;
	gap: 6px;
	width: 100%;
}

.sigma-gv-media-col .sigma-gv-photo-box {
	flex: 0 0 auto;
	width: 100%;
	max-width: 148px;
	height: auto;
	min-height: 0;
	aspect-ratio: 1 / 1;
}

.sigma-gv-media-col .sigma-gv-photo-thumbs {
	max-width: 148px;
}

.sigma-gv-item-context span {
	font-size: 0.62rem;
	font-weight: 750;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #94a3b8;
}

.sigma-gv-item-context strong {
	font-size: 0.88rem;
	font-weight: 700;
	color: #475569;
	line-height: 1.35;
}

.sigma-gv-relato {
	margin: 0 0 14px;
	font-size: 0.88rem;
	line-height: 1.5;
	color: #475569;
}

.sigma-gv-relato.is-muted {
	color: #94a3b8;
	font-style: italic;
}

.sigma-gv-facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 10px 16px;
	margin: 0 0 12px;
}

.sigma-gv-facts div {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.sigma-gv-facts dt {
	font-size: 0.62rem;
	font-weight: 750;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #94a3b8;
}

.sigma-gv-facts dd {
	margin: 0;
	font-size: 0.8rem;
	font-weight: 650;
	color: #334155;
	display: flex;
	align-items: center;
	gap: 4px;
}

.sigma-gv-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 6px 10px;
	border: 1px solid #fcd34d;
	border-radius: 8px;
	background: #fffbeb;
	color: #b45309;
	font-size: 0.72rem;
	font-weight: 700;
	cursor: pointer;
}

.sigma-gv-bottom-row {
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-width: 0;
}

/* legado — mantido para compatibilidade */
.sigma-gv-media {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}

.sigma-gv-photo-box {
	position: relative;
	width: 100%;
	max-width: 280px;
	aspect-ratio: 1 / 1;
	border-radius: 14px;
	overflow: hidden;
	border: 2px solid #e2e8f0;
	background: #f1f5f9;
	cursor: pointer;
	transition: border-color 0.15s ease, transform 0.12s ease;
}

.sigma-gv-photo-box:hover {
	border-color: #800020;
	transform: scale(1.01);
}

.sigma-gv-photo-box.is-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	cursor: default;
	color: #94a3b8;
	font-size: 0.78rem;
	font-weight: 600;
	text-align: center;
}

.sigma-gv-photo-box.is-empty i {
	font-size: 2rem;
	opacity: 0.4;
}

.sigma-gv-photo-box.is-empty span {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0 10px;
	box-sizing: border-box;
	text-align: center;
	line-height: 1.3;
}

.sigma-gv-photo-box img,
.sigma-gv-photo-main {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sigma-gv-photo-zoom {
	position: absolute;
	right: 8px;
	bottom: 8px;
	width: 32px;
	height: 32px;
	border-radius: 8px;
	background: rgba(15, 23, 42, 0.65);
	color: #fff;
	display: grid;
	place-items: center;
	font-size: 1rem;
	pointer-events: none;
}

.sigma-gv-photo-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	justify-content: center;
	max-width: 280px;
}

.sigma-gv-thumb {
	width: 48px;
	height: 48px;
	padding: 0;
	border: 2px solid #e2e8f0;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer;
	background: #fff;
	transition: border-color 0.12s ease;
}

.sigma-gv-thumb.is-active,
.sigma-gv-thumb:hover {
	border-color: #800020;
}

.sigma-gv-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sigma-gv-photo-count {
	font-size: 0.68rem;
	font-weight: 700;
	color: #64748b;
}

.sigma-gv-foot {
	display: none;
}

.sigma-gv-acoes-col {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 5px;
	width: 44px;
	flex: 0 0 44px;
	margin-left: 14px;
	padding-left: 14px;
	border-left: 1px solid #e2e8f0;
}

.sigma-gv-acoes-label {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
	font-size: 0.56rem;
	font-weight: 400;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #64748b;
	text-align: center;
	line-height: 1;
}

.sigma-gv-acoes-label i {
	font-size: 0.7rem;
	color: #94a3b8;
}

.sigma-gv-acoes,
.sigma-gv-side .sigma-pl-acoes.sigma-gv-acoes {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap;
	grid-template-columns: none !important;
	gap: 4px;
	justify-content: flex-start;
	align-items: stretch;
	margin: 0;
	width: 44px;
	flex: 0 0 44px;
}

.sigma-gv-btn {
	flex: 0 0 44px;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	width: 44px;
	height: 44px;
	aspect-ratio: 1 / 1;
	box-sizing: border-box;
	padding: 3px 2px;
	border-radius: 8px;
	border: 0;
	font-size: 0.48rem;
	font-weight: 650;
	line-height: 1.05;
	letter-spacing: 0.01em;
	text-align: center;
	color: #fff;
	cursor: pointer;
	transition: transform 0.12s ease, filter 0.12s ease, box-shadow 0.12s ease;
}

.sigma-gv-btn i {
	font-size: 0.85rem;
	line-height: 1;
}

.sigma-gv-btn span {
	display: block;
	width: 100%;
	text-align: center;
	color: inherit;
}

.sigma-gv-btn.is-resolver {
	background: linear-gradient(180deg, #22c55e 0%, #15803d 100%);
	box-shadow: 0 4px 10px rgba(21, 128, 61, 0.32);
}

.sigma-gv-btn.is-substituir {
	background: linear-gradient(180deg, #3b82f6 0%, #1d4ed8 100%);
	box-shadow: 0 4px 10px rgba(29, 78, 216, 0.32);
}

.sigma-gv-btn.is-recolher {
	background: linear-gradient(180deg, #f43f5e 0%, #be123c 100%);
	box-shadow: 0 4px 10px rgba(190, 18, 60, 0.32);
}

.sigma-gv-btn.is-on,
.sigma-gv-btn:hover {
	transform: translateY(-1px);
	filter: brightness(1.06);
}

.sigma-gv-trug {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 76px;
	padding: 6px 4px;
	border-radius: 8px;
	background: #f1f5f9;
	color: #475569;
	font-size: 0.58rem;
	font-weight: 700;
	text-align: center;
}

.sigma-gv-pend-panel .sigma-pl-decide-slot {
	padding: 0 20px 16px;
}

.sigma-gv-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 60px 24px;
	color: #64748b;
	text-align: center;
}

.sigma-gv-empty i {
	font-size: 2.5rem;
	color: #059669;
	opacity: 0.45;
}

.swal2-popup.sigma-gv-decide-modal {
	padding: 1.15rem 1.2rem 1.05rem !important;
	border-radius: 16px !important;
}

.swal2-popup.sigma-gv-decide-modal .swal2-html-container,
.sigma-gv-decide-modal-body {
	margin: 0.35rem 0 0 !important;
	padding: 0 !important;
	text-align: left !important;
	overflow: visible !important;
}

.swal2-popup.sigma-gv-decide-modal .sigma-pl-decide {
	margin: 0;
}

@media (max-width: 900px) {
	.sigma-gv-split {
		grid-template-columns: 1fr;
		gap: 10px;
		padding: 12px;
	}

	.sigma-gv-detail-head {
		margin-bottom: 8px;
	}

	.sigma-gv-observacao {
		padding: 10px 12px;
		margin-bottom: 0;
		border-radius: 10px;
	}

	.sigma-gv-obs-label.is-autor {
		font-size: 0.68rem;
		margin-bottom: 4px;
	}

	.sigma-gv-obs-text {
		font-size: 0.92rem;
		line-height: 1.35;
	}

	.sigma-gv-facts-cols {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 6px 8px;
		margin: 0;
		padding: 10px 0 2px;
		border-top: 1px solid #f1f5f9;
	}

	.sigma-gv-facts-cols dt {
		font-size: 0.55rem;
	}

	.sigma-gv-facts-cols dd {
		font-size: 0.72rem;
	}

	.sigma-gv-side {
		display: flex;
		flex-direction: row;
		align-items: stretch;
		justify-content: flex-start;
		gap: 0;
		width: 100%;
		max-width: none;
		justify-self: stretch;
	}

	.sigma-gv-relato-side.is-active {
		flex: 1 1 auto;
		width: 100%;
		align-items: stretch;
	}

	.sigma-gv-media-col {
		flex: 1 1 0;
		width: auto;
		max-width: none;
		min-width: 0;
		height: auto;
		margin: 0;
		padding-right: 12px;
	}

	.sigma-gv-media-col .sigma-gv-media {
		height: auto;
		width: 100%;
		align-items: stretch;
		gap: 0;
	}

	.sigma-gv-media-col .sigma-gv-photo-box {
		width: 100%;
		max-width: none;
		height: auto;
		min-height: 0;
		aspect-ratio: 1 / 1;
		margin: 0;
	}

	.sigma-gv-photo-box.is-empty {
		gap: 4px;
		font-size: 0.68rem;
	}

	.sigma-gv-photo-box.is-empty i {
		font-size: 1.45rem;
	}

	.sigma-gv-photo-box.is-empty span {
		padding: 0 6px;
		font-size: 0;
		line-height: 0;
	}

	.sigma-gv-photo-box.is-empty span::after {
		content: 'Sem foto';
		display: block;
		font-size: 0.68rem;
		line-height: 1.2;
		font-weight: 650;
	}

	.sigma-gv-acoes-col {
		display: flex;
		flex-direction: column;
		flex: 1 1 0;
		width: auto;
		min-width: 0;
		max-width: none;
		margin: 0;
		padding-left: 12px;
		border-left: 1px solid #e2e8f0;
		gap: 6px;
		align-items: stretch;
		justify-content: flex-start;
		align-self: stretch;
	}

	.sigma-gv-acoes-label {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		gap: 3px;
		font-size: 0.58rem;
		font-weight: 400;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: #64748b;
		line-height: 1;
	}

	.sigma-gv-acoes-label i {
		font-size: 0.7rem;
		color: #94a3b8;
	}

	.sigma-gv-acoes,
	.sigma-gv-side .sigma-pl-acoes.sigma-gv-acoes {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		grid-template-columns: none !important;
		width: 100% !important;
		flex: 1 1 auto !important;
		height: auto !important;
		min-height: 0;
		gap: 6px;
		justify-content: stretch;
		align-items: stretch;
		margin: 0;
	}

	.sigma-gv-btn {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100%;
		height: auto !important;
		min-height: 40px;
		flex: 1 1 0;
		aspect-ratio: unset !important;
		padding: 8px 10px;
		gap: 8px;
		font-size: 0.78rem;
		font-weight: 750;
		border-radius: 10px;
		letter-spacing: 0.01em;
	}

	.sigma-gv-btn i {
		font-size: 1.05rem;
		line-height: 1;
		flex-shrink: 0;
	}

	.sigma-gv-btn span {
		display: inline;
		width: auto;
		text-align: left;
		line-height: 1.1;
		position: static;
	}

	.sigma-gv-photo-box:hover {
		transform: none;
	}

	.sigma-gv-workspace.has-nav {
		flex-direction: column;
	}

	.sigma-gv-nav {
		flex: none;
		flex-direction: row;
		overflow-x: auto;
		max-height: none;
		border-right: none;
		border-bottom: 1px solid #e8edf3;
	}

	.sigma-gv-pend-tab {
		min-width: 160px;
	}
}

@media (max-width: 1024px) {
	#drawer-content-body .sigma-gv-root {
		border-radius: 0;
		box-shadow: none;
	}

	#drawer-content-body .sigma-gv-topbar {
		padding: 12px 16px;
	}

	#drawer-content-body .sigma-gv-split {
		padding: 12px;
		gap: 10px;
	}

	#drawer-content-body .sigma-gv-pend-panel {
		border-radius: 0;
	}

	#drawer-content-body .sigma-gv-pend-card {
		border-radius: 14px;
	}
}

/* Modal — Montagem de kit / anfitrião */
.swal2-popup.sigma-swal-kit-montagem {
	border-radius: 16px;
	padding: 1.25rem 1.25rem 1rem;
}

.swal2-popup.sigma-swal-kit-montagem .swal2-title {
	font-size: 1.15rem;
	font-weight: 800;
	color: #0f172a;
	padding-bottom: 0.35rem;
}

.swal2-popup.sigma-swal-kit-montagem .swal2-html-container {
	margin: 0.5rem 0 0;
	padding: 0;
	overflow: visible;
}

.sigma-kit-modal {
	text-align: left;
}

.sigma-kit-modal-host {
	background: linear-gradient(135deg, #fdf2f4 0%, #fff 100%);
	border: 1px solid #fecdd3;
	border-left: 4px solid #800020;
	border-radius: 12px;
	padding: 14px 16px;
	margin-bottom: 12px;
}

.sigma-kit-modal-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.62rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #800020;
	margin-bottom: 8px;
}

.sigma-kit-modal-host-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.sigma-kit-modal-host-main {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
}

.sigma-kit-modal-host-main > i {
	font-size: 1.35rem;
	color: #800020;
	margin-top: 2px;
	flex-shrink: 0;
}

.sigma-kit-modal-host-main strong {
	display: block;
	font-size: 0.95rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.35;
	word-break: break-word;
}

.sigma-kit-tomb {
	display: inline-block;
	margin-top: 4px;
	font-size: 0.72rem;
	font-weight: 800;
	color: #800020;
	background: #fff;
	border: 1px solid #fecdd3;
	border-radius: 6px;
	padding: 2px 8px;
}

.sigma-kit-unidade-badge {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.68rem;
	font-weight: 800;
	color: #334155;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	padding: 6px 10px;
	white-space: nowrap;
}

.sigma-kit-qtd-host {
	margin-top: 12px;
	padding-top: 10px;
	border-top: 1px dashed #fecdd3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.sigma-kit-qtd-host label {
	font-size: 0.68rem;
	font-weight: 750;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.sigma-kit-qtd-input {
	width: 72px;
	height: 36px;
	text-align: center;
	font-weight: 800;
	border: 1.5px solid #cbd5e1;
	border-radius: 8px;
	font-size: 0.9rem;
}

.sigma-kit-modal-hint {
	margin: 0 0 14px;
	font-size: 0.76rem;
	line-height: 1.45;
	color: #64748b;
}

.sigma-kit-componentes {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-height: 80px;
}

.sigma-kit-loading,
.sigma-kit-vazio {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 24px 12px;
	color: #64748b;
	font-size: 0.82rem;
	font-weight: 600;
}

.sigma-kit-loading i {
	font-size: 1.5rem;
	color: #800020;
}

.sigma-kit-linha {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	background: #f8fafc;
	padding: 12px 14px;
}

.sigma-kit-linha-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 10px;
}

.sigma-kit-familia {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #334155;
}

.sigma-kit-sug {
	font-size: 0.65rem;
	font-weight: 700;
	color: #94a3b8;
	white-space: nowrap;
}

.sigma-kit-linha-campos {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 10px;
	align-items: end;
}

.sigma-kit-field,
.sigma-kit-uid-wrap {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.sigma-kit-field-label {
	font-size: 0.62rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #64748b;
	margin: 0;
}

.sigma-kit-uid-wrap.is-disabled .sigma-kit-field-label {
	color: #cbd5e1;
}

.sigma-kit-select,
.sigma-kit-qtd {
	width: 100%;
	height: 40px;
	margin: 0;
	padding: 0 10px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 0.82rem;
	font-weight: 600;
	color: #0f172a;
	background: #fff;
	box-sizing: border-box;
}

.sigma-kit-qtd {
	text-align: center;
	font-weight: 800;
}

.sigma-kit-select:disabled,
.sigma-kit-qtd:disabled {
	background: #f1f5f9;
	color: #94a3b8;
	cursor: not-allowed;
}

@media (max-width: 520px) {
	.sigma-kit-linha-campos {
		grid-template-columns: 1fr;
	}

	.sigma-kit-modal-host-row {
		flex-direction: column;
	}

	.sigma-kit-unidade-badge {
		align-self: flex-start;
	}
}
