/* D-122 — Visita Técnica Comercial. Usa só os tokens do design system (design-system.css); grade de 4/8 px; piso tipográfico de .78rem. */
.vt-resumo { display: flex; flex-wrap: wrap; align-items: center; gap: var(--gps-space-2) var(--gps-space-3); margin-bottom: var(--gps-space-3); }
.vt-secao { font-size: .95rem; margin: var(--gps-space-4) 0 var(--gps-space-2); }
.vt-pergunta { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: var(--gps-space-2) var(--gps-space-3); padding: var(--gps-space-2) 0; border-bottom: 1px solid var(--gps-color-border, rgba(127,127,127,.25)); }
.vt-pergunta-texto { min-width: 0; overflow-wrap: anywhere; }
.vt-custo { margin-left: var(--gps-space-1); padding: 0 var(--gps-space-1); font-size: .78rem; border: 1px solid currentColor; border-radius: 4px; opacity: .8; }
.vt-editor { display: flex; flex-wrap: wrap; align-items: center; gap: var(--gps-space-2); min-width: 0; }
.vt-editor .vt-estado { flex: 0 1 12rem; }
.vt-editor .vt-texto { flex: 1 1 14rem; min-width: 0; }
.vt-ponto { padding: var(--gps-space-3); margin-bottom: var(--gps-space-2); border: 1px solid var(--gps-color-border, rgba(127,127,127,.25)); border-radius: 8px; }
.vt-ponto-topo { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--gps-space-2); }
.vt-ponto-acao { display: flex; flex-wrap: wrap; gap: var(--gps-space-2); margin-top: var(--gps-space-2); }
.vt-ponto-acao > input[type="text"] { flex: 1 1 14rem; min-width: 0; }
.vt-fotos { display: grid; grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr)); gap: var(--gps-space-2); margin: var(--gps-space-2) 0; }
.vt-foto { margin: 0; min-width: 0; }
.vt-foto img { width: 100%; height: 8rem; object-fit: cover; border-radius: 6px; }
.vt-lista { list-style: none; padding: 0; margin: var(--gps-space-2) 0; display: grid; gap: var(--gps-space-2); }
.vt-tabela { width: 100%; border-collapse: collapse; }
.vt-tabela th, .vt-tabela td { padding: var(--nexus-cell-padding-y, 8px) var(--nexus-cell-padding-x, 12px); text-align: left; border-bottom: 1px solid var(--gps-color-border, rgba(127,127,127,.25)); }
.vt-servicos { margin: var(--gps-space-3) 0 0; padding: 0; border: 0; display: flex; flex-wrap: wrap; gap: var(--gps-space-2) var(--gps-space-4); }
.vt-servicos legend { padding: 0; margin-bottom: var(--gps-space-2); font-weight: 600; }
.vt-servico { display: inline-flex; align-items: center; gap: var(--gps-space-2); }
@media (max-width: 768px) { .vt-pergunta { grid-template-columns: minmax(0, 1fr); } }

/* App de campo (D-122): alvos de toque de 44 px, uma coluna, sem rolagem horizontal. */
.vt-app-voltar { display: inline-block; margin: 0 0 12px; padding: 12px 0; min-height: 44px; color: var(--nx-navy, #14213d); font-weight: 600; text-decoration: none; }
.vt-app-vazio { padding: 16px; margin: 8px 0; border: 1px dashed currentColor; border-radius: 12px; opacity: .8; }
.vt-app-cartao { display: grid; gap: 8px; padding: 16px; margin: 0 0 12px; border: 1px solid rgba(127,127,127,.3); border-radius: 14px; color: inherit; text-decoration: none; min-width: 0; overflow-wrap: anywhere; background: #fff; }
.vt-app-ponto em { font-style: normal; opacity: .85; font-size: .9rem; }
.vt-app-estado { font-size: .82rem; font-weight: 600; }
.vt-app-secao { margin: 20px 0 8px; font-size: 1rem; }
.vt-app-linha { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0; }
.vt-app-campo { flex: 1 1 10rem; min-width: 0; min-height: 44px; padding: 8px 12px; font-size: 1rem; border: 1px solid rgba(127,127,127,.5); border-radius: 10px; }
.vt-app-botao { flex: 1 1 8rem; min-height: 44px; padding: 10px 14px; font-size: .95rem; font-weight: 600; border: 1px solid rgba(127,127,127,.5); border-radius: 10px; background: #fff; color: inherit; text-align: center; cursor: pointer; }
.vt-app-primario { background: var(--nx-navy, #14213d); border-color: var(--nx-navy, #14213d); color: #fff; }
.vt-app-camera { display: flex; align-items: center; justify-content: center; margin-top: 12px; }
.vt-app-abas { display: flex; gap: 6px; margin: 12px 0; }
.vt-app-abas button { flex: 1; min-height: 44px; border: 1px solid rgba(127,127,127,.4); border-radius: 10px; background: #fff; font-weight: 600; color: inherit; }
.vt-app-abas button[aria-selected="true"] { background: var(--nx-navy, #14213d); color: #fff; }

/* Vistoria (D-122): editor da pergunta e quadros de dimensionamento. */
.vt-editor-linha { display: flex; flex-wrap: wrap; align-items: center; gap: var(--gps-space-2); min-width: 0; width: 100%; }
.vt-editor .vt-fonte { flex: 0 1 14rem; min-width: 0; }
.vt-quadro-form { display: grid; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); gap: var(--gps-space-2); margin-bottom: var(--gps-space-3); min-width: 0; }
.vt-quadro-form .vt-quadro-largo { grid-column: span 2; }
@media (max-width: 768px) { .vt-quadro-form .vt-quadro-largo { grid-column: span 1; } }

/* Fotos por item (D-122): até 4 miniaturas abaixo da pergunta, do ponto de custo ou da linha de quadro. */
.vt-fotos-item { display: flex; flex-wrap: wrap; align-items: center; gap: var(--gps-space-2); margin-top: var(--gps-space-1); min-width: 0; }
.vt-foto-mini { margin: 0; width: 5.5rem; display: grid; gap: 2px; justify-items: start; }
.vt-foto-mini img { width: 5.5rem; height: 4rem; object-fit: cover; border-radius: 6px; }
.vt-foto-mini figcaption { font-size: .78rem; }
.vt-foto-botao { cursor: pointer; }
.vt-fotos-linha { display: grid; gap: var(--gps-space-1); padding: var(--gps-space-2) 0; border-bottom: 1px solid var(--gps-color-border, rgba(127,127,127,.25)); }
