:root {
  --f7-theme-color: #2e7d32;
  --f7-theme-color-rgb: 46, 125, 50;
  --f7-theme-color-shade: #1b5e20;
  --f7-theme-color-tint: #43a047;
  --f7-font-size: 16px;
  --f7-navbar-font-size: 18px;
  --f7-navbar-title-font-size: 19px;
  --f7-block-font-size: 15px;
  --f7-list-item-title-font-size: 15px;
  --f7-list-item-label-font-size: 13px;
  --f7-list-item-footer-font-size: 13px;
  --f7-button-font-size: 16px;
  --f7-button-text-transform: none;
}
.login-screen-content { padding-top: 40px; }
.login-screen-page {
  background: linear-gradient(#2e7d32 0%, #1b5e20 100%) !important;
}
.navbar, .navbar a { color: #fff !important; }
.navbar-bg,
.button-fill,
.fab > a {
  background: linear-gradient(#2e7d32 0%, #1b5e20 100%) !important;
}
.button-fill {
  border: 0;
}
.app-logo {
  max-width: 260px;
  width: 100%;
  height: auto;
  margin: 0 auto 16px;
  display: block;
}
.app-name {
  color: #ffffff;
  font-weight: 700;
  font-size: var(--f7-navbar-title-font-size);
  margin-bottom: 20px;
}
.os-card .item-title { white-space: normal !important; }
.badge-status { color:#fff; padding:3px 8px; border-radius:10px; font-size:11px; white-space:nowrap; }
.st-LIBERADA, .st-EM_TRANSITO_IDA, .st-EM_TRANSITO_VOLTA { background:#0288d1; }
.st-AGUARDANDO_RECEBIMENTO { background:#757575; }
.st-RECEBIDA_OFICINA, .st-EM_SERVICO { background:#1565c0; }
.st-SERVICO_FINALIZADO, .st-ENTREGUE { background:#2e7d32; }
.st-OS_RECEBIDA { background:#f9a825; }
.acao-block .button { margin-bottom: 10px; }
.os-meta { font-size: 13px; color:#555; }
.item-title-row { display:flex; justify-content:space-between; align-items:flex-start; gap:8px; }
.fotos-grid { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0; }
.foto-thumb { position:relative; width:80px; height:80px; }
.foto-thumb img { width:100%; height:100%; object-fit:cover; border-radius:6px; }
.foto-del { position:absolute; top:-6px; right:-6px; background:red; color:#fff; border-radius:50%; width:22px; height:22px; display:flex; align-items:center; justify-content:center; }
.foto-del i { font-size:14px; }
.checklist-item { padding:8px 0; border-bottom:1px solid #eee; }
.checklist-item label { display:flex; align-items:center; gap:8px; }
.status-nf-pendente { background:#f9a825; }
.status-nf-anexada { background:#1565c0; }
.status-nf-enviada { background:#2e7d32; }
.versaoApp {
  font-size: 12px;
  margin-top: 20px;
  color: rgba(255, 255, 255, 0.85);
}
