/* Tecnologiaz — ferramentas da escala 5x2 */
.tze, .tze * { box-sizing: border-box; }
.tze--larga { display: flex !important; flex-direction: column; gap: 16px; }
.tze-fases { display: flex; flex-direction: column; gap: 10px; }
.tze-fase { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; border: 1px solid #DCD3F4; border-left: 4px solid #8B6AD8; border-radius: 12px; background: #FAF8FF; font-size: 14.5px; line-height: 1.5; color: #2A3844; }
.tze-fase--hoje { border-color: #E2E8EE; border-left-color: #9AABBC; background: #F6F8FA; }
.tze-fase strong { font: 600 15px/1.3 'Sora', sans-serif; color: #0F1B26; }
.tze-fase small { font-size: 13px; color: #5A6B7B; }
.tze-fase b { color: #0F1B26; }
.tze-alerta { color: #B42318; font-weight: 500; }
.tze-ok { color: #0A7F4F; font-weight: 500; }
.tze-erro { color: #B42318 !important; font-weight: 500; }
.tze-form { display: flex; flex-direction: column; gap: 14px; }
.tze-form__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.tze-dias { margin: 0; padding: 12px 14px; border: 1px solid #E2E8EE; border-radius: 12px; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.tze-dias legend { padding: 0 6px; font-size: 14px; color: #3D4C5A; }
.tze-dias label, .tze-check { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; font-size: 14px; color: #3D4C5A; cursor: pointer; }
.tze-dias input, .tze-check input { width: 18px; height: 18px; accent-color: #0A7F4F; }
.tze-acoes { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.tze-acoes .tzf__botao--claro { align-self: center; }
.tze-acoes button[disabled] { opacity: .5; cursor: not-allowed; }
.tze-tabela { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid #E2E8EE; border-radius: 12px; background: #fff; }
.tze-tabela table { border-collapse: collapse; margin: 0 !important; font-size: 13px; min-width: 100%; }
.tze-tabela th, .tze-tabela td { padding: 6px 4px; text-align: center; border-bottom: 1px solid #EEF2F5; border-right: 1px solid #F2F5F7; min-width: 28px; }
.tze-tabela thead th { background: #F6F8FA; font-weight: 600; color: #3D4C5A; line-height: 1.1; }
.tze-tabela thead th small { display: block; font-weight: 400; font-size: 11px; color: #5A6B7B; }
.tze-tabela th.tze-fds { background: #EFE9FB; }
.tze-tabela .tze-nome { position: sticky; left: 0; z-index: 1; background: #fff; text-align: left; padding: 6px 10px; min-width: 110px; max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; color: #0F1B26; }
.tze-tabela thead .tze-nome { background: #F6F8FA; }
.tze-tabela td[data-p] { cursor: pointer; font-weight: 600; }
.tze-T { background: #E9F6EF; color: #0A7F4F; }
.tze-F { background: #FFF1D6; color: #8A5300; }
.tze-X { background: #EEF2F5; color: #9AABBC; }
.tze-tot { font-weight: 600; background: #F6F8FA; }
.tze-cob td, .tze-cob th { background: #F6F8FA; font-weight: 600; }
.tze-baixo { background: #FDE2E1 !important; color: #B42318; }
.tze-legenda { margin: 6px 0 0 !important; font-size: 13px; color: #5A6B7B; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.tze-legenda span { display: inline-block; min-width: 22px; padding: 2px 6px; border-radius: 4px; text-align: center; font-weight: 600; }
.tze-contagem { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; padding: 18px; border-radius: 14px; background: #1E1442; color: #fff; }
.tze-contagem span { font-size: 14px; color: #D6CCF5; }
.tze-contagem strong { font: 600 30px/1.2 'JetBrains Mono', monospace; color: #C9B6FF; font-variant-numeric: tabular-nums; }
.tze-linha { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 10px; }
.tze-linha li { display: flex; flex-direction: column; gap: 3px; margin: 0 !important; padding: 12px 16px; border: 1px solid #E2E8EE; border-left: 4px solid #C9D4DE; border-radius: 10px; background: #fff; }
.tze-linha li.is-proximo { border-left-color: #8B6AD8; background: #FAF8FF; }
.tze-linha li.is-passou { border-left-color: #0A7F4F; }
.tze-linha__data { font-size: 13px; font-weight: 600; color: #5A6B7B; text-transform: uppercase; letter-spacing: .02em; }
.tze-linha strong { font-size: 17px; color: #0F1B26; }
.tze-linha small { font-size: 14px; line-height: 1.5; color: #3D4C5A; }
.tze-discussao { padding: 14px 16px; border-radius: 10px; background: #FFF7E0; border: 1px solid #F3DE9C; color: #5A4300; font-size: 14.5px; line-height: 1.55; }
.tze-discussao p { margin: 4px 0 0 !important; }
.tze .tze-atualizado { font-size: 12px; }
@media (max-width: 640px) {
	.tze-form__grade { grid-template-columns: 1fr; }
	.tze-contagem strong { font-size: 26px; }
}
@media print {
	body.tze-imprimindo * { visibility: hidden !important; }
	body.tze-imprimindo .tze-imprimir .tze-escala, body.tze-imprimindo .tze-imprimir .tze-escala * { visibility: visible !important; }
	body.tze-imprimindo .tze-imprimir .tze-escala { position: absolute; left: 0; top: 0; width: 100%; }
	body.tze-imprimindo .tze-tabela { overflow: visible; border: 0; }
	body.tze-imprimindo .tze-tabela table { font-size: 9px; }
	body.tze-imprimindo .tze-tabela th, body.tze-imprimindo .tze-tabela td { padding: 3px 2px; min-width: 0; }
	@page { size: landscape; margin: 10mm; }
}
/* 1.45.1: campos alinhados e dicas curtas */
.tze .tzf__grade2 { align-items: start; }
.tze .tzf__campo { justify-content: flex-start; }
.tze-dica { font-size: 12px; line-height: 1.4; color: #5A6B7B; }
