/* Synk Painel v17 — camada visual unificada. Mantém a lógica e os IDs existentes. */
:root {
  --v17-bg: #f3f7f8;
  --v17-panel: #ffffff;
  --v17-panel-soft: #f8fbfc;
  --v17-ink: #102f35;
  --v17-muted: #668087;
  --v17-line: #dce8ea;
  --v17-primary: #0d6874;
  --v17-primary-strong: #084c56;
  --v17-accent: #13a67b;
  --v17-danger: #d14343;
  --v17-warning: #d99018;
  --v17-shadow: 0 18px 48px rgba(13, 67, 75, .10);
  --v17-shadow-soft: 0 6px 22px rgba(13, 67, 75, .07);
  --v17-radius: 16px;
}

html { background: var(--v17-bg); }
body {
  color: var(--v17-ink);
  background:
    radial-gradient(circle at 94% 4%, rgba(19, 166, 123, .08), transparent 24rem),
    var(--v17-bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Login */
body.login-page,
body.login-page.login-pro {
  min-width: 0 !important;
  min-height: 100vh;
  overflow-x: hidden;
}
body.login-page.login-pro .login-shell {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 100svh !important;
  padding: clamp(20px, 5vw, 64px) !important;
  display: grid !important;
  place-items: center !important;
  background:
    linear-gradient(120deg, rgba(3, 20, 29, .88), rgba(7, 71, 78, .64)),
    radial-gradient(circle at 18% 18%, rgba(47, 211, 170, .25), transparent 32%),
    url('/painel/login-bg-synknet.png') center / cover no-repeat !important;
}
body.login-page.login-pro .login-card-pro {
  width: min(100%, 440px) !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: clamp(26px, 5vw, 40px) !important;
  border: 1px solid rgba(255,255,255,.20) !important;
  border-radius: 26px !important;
  background: linear-gradient(145deg, rgba(8, 36, 46, .88), rgba(8, 28, 38, .76)) !important;
  box-shadow: 0 32px 90px rgba(0,0,0,.36) !important;
  backdrop-filter: blur(22px) saturate(130%);
}
body.login-page.login-pro .login-card-pro::before {
  width: 210px !important;
  height: 210px !important;
  background: rgba(38, 200, 161, .16) !important;
  filter: blur(28px) !important;
}
.login-brand.centered { margin-bottom: 24px !important; }
body.login-page.login-pro .login-logo {
  width: 92px !important;
  height: 92px !important;
  margin-bottom: 12px !important;
}
body.login-page.login-pro .login-brand-text {
  color: #fff !important;
  font-size: clamp(30px, 7vw, 38px) !important;
  letter-spacing: -.04em;
}
body.login-page.login-pro .login-brand-subtitle {
  color: rgba(231, 250, 247, .72) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.login-icon-orbit { gap: 8px !important; }
.login-icon-orbit span {
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
  background: rgba(255,255,255,.10) !important;
}
.login-feature-row { gap: 8px !important; margin-bottom: 16px !important; }
.login-feature-row span {
  min-height: 34px !important;
  border-radius: 10px !important;
  color: rgba(255,255,255,.90) !important;
  background: rgba(255,255,255,.07) !important;
}
.login-input-wrap {
  min-height: 52px !important;
  border: 1px solid rgba(255,255,255,.30) !important;
  border-radius: 13px !important;
  padding: 0 14px !important;
  background: rgba(255,255,255,.96) !important;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.login-input-wrap:focus-within {
  border-color: #61d7bb !important;
  box-shadow: 0 0 0 4px rgba(97,215,187,.16) !important;
  transform: translateY(-1px);
}
body.login-page .login-input-wrap input {
  width: 100% !important;
  color: #15383d !important;
  font-size: 15px !important;
  outline: none !important;
}
body.login-page.login-pro #loginBtn {
  min-height: 52px !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, #16a47e, #0d7580) !important;
  box-shadow: 0 14px 30px rgba(6, 117, 104, .32) !important;
}
.login-safe-note { color: rgba(227,247,244,.60) !important; }

/* Estrutura principal */
body:not(.login-page) .app {
  display: block !important;
  min-height: 100vh;
}
body:not(.login-page) .sidebar { display: none !important; }
body:not(.login-page) .main,
.system-shell > main {
  width: min(100% - 32px, 1440px) !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 112px 0 48px !important;
  background: transparent !important;
}
.global-panel-header {
  position: fixed !important;
  z-index: 900 !important;
  top: 12px !important;
  left: 50% !important;
  width: min(calc(100% - 24px), 1440px) !important;
  max-width: 1440px !important;
  min-height: 78px !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 11px 14px !important;
  border: 1px solid rgba(205,224,226,.88) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.90) !important;
  box-shadow: 0 16px 48px rgba(12,65,73,.13) !important;
  backdrop-filter: blur(18px) saturate(140%);
}
.dashboard-logo-wrap {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  padding: 0 8px 0 2px !important;
  cursor: pointer;
}
.dashboard-empresa-logo {
  width: 50px !important;
  height: 50px !important;
  border-radius: 14px !important;
  object-fit: contain !important;
  background: linear-gradient(145deg, #0d6874, #063c45) !important;
  padding: 5px !important;
  box-shadow: 0 8px 20px rgba(8,76,86,.20) !important;
}
.dashboard-brand-kicker {
  color: var(--v17-primary) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase;
}
.dashboard-logo-wrap h1 {
  margin: 1px 0 0 !important;
  color: var(--v17-ink) !important;
  font-size: 18px !important;
  letter-spacing: -.025em !important;
}
.dashboard-logo-wrap p { display: none !important; }
.dashboard-menu-buttons.compact-menu {
  display: flex !important;
  flex: 1 1 auto !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 5px !important;
  overflow-x: auto;
  scrollbar-width: none;
}
.dashboard-menu-buttons.compact-menu::-webkit-scrollbar { display: none; }
.dashboard-menu-buttons.compact-menu button {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 8px 10px !important;
  border: 1px solid transparent !important;
  border-radius: 11px !important;
  color: #28484e !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}
.dashboard-menu-buttons.compact-menu button:hover {
  color: var(--v17-primary) !important;
  border-color: var(--v17-line) !important;
  background: #edf7f7 !important;
}

/* Conteúdo */
.topbar, .dashboard-title-row {
  margin: 0 0 18px !important;
  align-items: flex-end !important;
}
.title h1, #sec-dashboard .dashboard-title-row h1 {
  color: var(--v17-ink) !important;
  font-size: clamp(25px, 3vw, 34px) !important;
  font-weight: 850 !important;
  letter-spacing: -.04em !important;
}
.title p { color: var(--v17-muted) !important; font-size: 14px !important; }
body:not(.login-page) .section,
body:not(.login-page) .card,
.system-page .section,
.system-page .card {
  border: 1px solid var(--v17-line) !important;
  border-radius: var(--v17-radius) !important;
  background: var(--v17-panel) !important;
  box-shadow: var(--v17-shadow-soft) !important;
}
body:not(.login-page) .section,
.system-page .section { padding: clamp(15px, 2vw, 22px) !important; }
body:not(.login-page) .card,
.system-page .card {
  position: relative;
  overflow: hidden;
  min-height: 92px !important;
  padding: 16px !important;
}
body:not(.login-page) .card::after,
.system-page .card::after {
  content: "";
  position: absolute;
  right: -24px;
  bottom: -34px;
  width: 76px;
  height: 76px;
  border-radius: 50%;
  background: rgba(13,104,116,.06);
}
body:not(.login-page) .card:hover,
.system-page .card:hover {
  transform: translateY(-2px) !important;
  border-color: #bfd9dc !important;
  box-shadow: var(--v17-shadow) !important;
}
.card .label {
  color: var(--v17-muted) !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  letter-spacing: .075em !important;
}
.card .value {
  color: var(--v17-ink) !important;
  font-size: 25px !important;
  letter-spacing: -.04em !important;
}
.section-head { margin-bottom: 16px !important; }
.section-head h2 { color: var(--v17-ink) !important; font-size: 17px !important; }
.card-grid { gap: 12px !important; }

button, .btn, .btn-link {
  min-height: 40px;
  border-radius: 11px !important;
  background: var(--v17-primary) !important;
  box-shadow: 0 8px 18px rgba(13,104,116,.16) !important;
  font-weight: 800 !important;
}
button:hover, .btn:hover { background: var(--v17-primary-strong) !important; }
button.secondary, .btn.secondary {
  color: #315158 !important;
  border-color: var(--v17-line) !important;
  background: var(--v17-panel-soft) !important;
  box-shadow: none !important;
}
button.success { background: var(--v17-accent) !important; }
button.danger { background: var(--v17-danger) !important; }
input, select, textarea {
  min-height: 42px;
  border: 1px solid #cfdfe2 !important;
  border-radius: 11px !important;
  color: var(--v17-ink) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(13,67,75,.03) !important;
  outline: none;
}
input:focus, select:focus, textarea:focus {
  border-color: #5cb8b9 !important;
  box-shadow: 0 0 0 4px rgba(13,104,116,.10) !important;
}
input::placeholder, textarea::placeholder { color: #8ba1a6; }
.filters, .actions { gap: 9px !important; }
.table-wrap {
  border: 1px solid var(--v17-line) !important;
  border-radius: 13px !important;
  background: #fff !important;
  overflow: auto !important;
}
table { background: #fff !important; }
th {
  position: sticky;
  top: 0;
  z-index: 1;
  color: #607b82 !important;
  background: #f2f7f8 !important;
  font-size: 10px !important;
  letter-spacing: .075em !important;
}
th, td { padding: 12px !important; border-bottom-color: #e7eff0 !important; }
tbody tr { transition: background .16s ease; }
tbody tr:hover { background: #f5fbfa !important; }
.cliente-ip-atual {
  display: inline-flex;
  min-width: 116px;
  padding: 7px 9px;
  border: 1px solid var(--v17-line);
  border-radius: 9px;
  background: var(--v17-panel-soft);
  color: var(--v17-ink);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
  font-weight: 750;
}
.cliente-acesso-web {
  display: grid;
  grid-template-columns: minmax(118px, 1fr) auto;
  gap: 7px;
  min-width: 210px;
  align-items: center;
}
.cliente-acesso-web select {
  min-height: 36px !important;
  padding: 6px 30px 6px 9px !important;
  font-size: 13px !important;
}
.cliente-acesso-web button { min-height: 36px; white-space: nowrap; }
.badge, .pill {
  border: 1px solid rgba(13,104,116,.10);
  border-radius: 999px !important;
  font-weight: 800 !important;
}
.muted { color: var(--v17-muted) !important; }
.modal-backdrop { background: rgba(4,25,31,.58) !important; backdrop-filter: blur(5px); }
.modal-card {
  border-radius: 20px !important;
  border-color: rgba(255,255,255,.72) !important;
  box-shadow: 0 30px 90px rgba(4,25,31,.32) !important;
}
.system-feedback {
  margin: 0 0 14px !important;
  padding: 10px 13px;
  border: 1px solid var(--v17-line);
  border-radius: 11px;
  background: rgba(255,255,255,.72);
}
.system-card-grid { grid-template-columns: repeat(4, minmax(0,1fr)) !important; }

/* Tema escuro compatível */
body[data-theme="dark"] {
  --v17-bg: #07181c;
  --v17-panel: #0d262c;
  --v17-panel-soft: #102d34;
  --v17-ink: #e7f4f4;
  --v17-muted: #9db5ba;
  --v17-line: #23444b;
  background: #07181c !important;
}
body[data-theme="dark"] .global-panel-header,
body[data-theme="dark"] table,
body[data-theme="dark"] .table-wrap,
body[data-theme="dark"] th,
body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea { background: #0d262c !important; }
body[data-theme="dark"] .dashboard-menu-buttons.compact-menu button { color: #c7dcdf !important; }

/* Responsividade */
@media (max-width: 1080px) {
  .global-panel-header { align-items: flex-start !important; }
  .dashboard-menu-buttons.compact-menu { justify-content: flex-start !important; }
  .system-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 760px) {
  body:not(.login-page) .main,
  .system-shell > main {
    width: min(100% - 20px, 1440px) !important;
    padding-top: 126px !important;
  }
  .global-panel-header {
    top: 8px !important;
    width: calc(100% - 16px) !important;
    min-height: 104px !important;
    flex-direction: column !important;
    gap: 7px !important;
    padding: 9px !important;
    border-radius: 16px !important;
  }
  .dashboard-logo-wrap { width: 100% !important; }
  .dashboard-empresa-logo { width: 42px !important; height: 42px !important; }
  .dashboard-logo-wrap h1 { font-size: 16px !important; }
  .dashboard-menu-buttons.compact-menu { width: 100% !important; }
  .dashboard-menu-buttons.compact-menu button { min-height: 34px !important; padding: 6px 8px !important; }
  .topbar, .section-head { align-items: stretch !important; }
  .section-head { flex-direction: column !important; }
  .filters, .actions { width: 100% !important; }
  .filters > *, .actions > * { flex: 1 1 150px !important; min-width: 0 !important; }
  #novaOsEndereco, #novaOsCliente, #novaOsReferencia, #novaOsMensagem,
  #buscaClienteResultados { min-width: 0 !important; }
  .system-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 480px) {
  body.login-page.login-pro .login-shell { padding: 12px !important; }
  body.login-page.login-pro .login-card-pro { padding: 24px 18px !important; border-radius: 20px !important; }
  .login-feature-row { grid-template-columns: 1fr !important; }
  .login-feature-row span { min-height: 28px !important; }
  .system-card-grid { grid-template-columns: 1fr !important; }
  .title h1, #sec-dashboard .dashboard-title-row h1 { font-size: 25px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* v17.1 — tipografia confortável e três temas claramente distintos */
body:not(.login-page) {
  font-size: 16px !important;
  line-height: 1.5 !important;
}
.dashboard-brand-kicker { font-size: 11px !important; }
.dashboard-logo-wrap h1 { font-size: 20px !important; }
.dashboard-menu-buttons.compact-menu button {
  min-height: 44px !important;
  padding: 9px 12px !important;
  font-size: 13px !important;
}
.title p { font-size: 16px !important; }
.section-head h2 { font-size: 20px !important; }
.card .label { font-size: 12px !important; line-height: 1.35 !important; }
.card .value { font-size: 29px !important; }
button, .btn, .btn-link {
  min-height: 44px !important;
  font-size: 14px !important;
}
input, select, textarea {
  min-height: 46px !important;
  font-size: 15px !important;
}
th { font-size: 12px !important; }
td { font-size: 15px !important; }
.badge, .pill { font-size: 13px !important; }
.muted, .system-feedback { font-size: 14px !important; }

/* Claro — neutro, luminoso e com contraste alto */
body[data-theme="light"] {
  --v17-bg: #f5f7f8;
  --v17-panel: #ffffff;
  --v17-panel-soft: #f7f9fa;
  --v17-ink: #162f35;
  --v17-muted: #587078;
  --v17-line: #d6e0e3;
  --v17-primary: #176674;
  --v17-primary-strong: #0d4d58;
  --v17-accent: #168c69;
  background: #f5f7f8 !important;
}
body[data-theme="light"] .global-panel-header,
body[data-theme="light"] .section,
body[data-theme="light"] .card { background-color: #fff !important; }

/* Synk — identidade verde-petróleo mais presente */
body[data-theme="synk_teal"] {
  --v17-bg: #eaf4f4;
  --v17-panel: #ffffff;
  --v17-panel-soft: #edf8f7;
  --v17-ink: #0b343a;
  --v17-muted: #4e747a;
  --v17-line: #c5dcde;
  --v17-primary: #086b76;
  --v17-primary-strong: #064f58;
  --v17-accent: #0b9b70;
  background:
    radial-gradient(circle at 92% 2%, rgba(11,155,112,.15), transparent 28rem),
    linear-gradient(180deg, #e6f2f3 0%, #f2f7f7 100%) !important;
}
body[data-theme="synk_teal"] .global-panel-header {
  border-color: #b8d5d8 !important;
  background: rgba(248,253,253,.93) !important;
}
body[data-theme="synk_teal"] .card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(#0b9b70, #08707a);
}

/* Escuro — superfícies profundas sem preto absoluto */
body[data-theme="dark"] {
  --v17-bg: #07171b;
  --v17-panel: #0d272d;
  --v17-panel-soft: #123138;
  --v17-ink: #ecf7f7;
  --v17-muted: #a6bec3;
  --v17-line: #294a51;
  --v17-primary: #39a9b4;
  --v17-primary-strong: #248b96;
  --v17-accent: #38bd91;
  --v17-shadow: 0 18px 50px rgba(0,0,0,.36);
  --v17-shadow-soft: 0 7px 24px rgba(0,0,0,.24);
  color-scheme: dark;
  background:
    radial-gradient(circle at 92% 2%, rgba(36,139,150,.12), transparent 28rem),
    #07171b !important;
}
body[data-theme="dark"] .global-panel-header {
  border-color: #294a51 !important;
  background: rgba(13,39,45,.94) !important;
}
body[data-theme="dark"] .section,
body[data-theme="dark"] .card,
body[data-theme="dark"] table,
body[data-theme="dark"] .table-wrap,
body[data-theme="dark"] th,
body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea {
  color: var(--v17-ink) !important;
  border-color: var(--v17-line) !important;
  background: var(--v17-panel) !important;
}
body[data-theme="dark"] th { background: #15353c !important; }
body[data-theme="dark"] tbody tr:hover { background: #123138 !important; }
body[data-theme="dark"] input::placeholder,
body[data-theme="dark"] textarea::placeholder { color: #809ca2 !important; }

@media (max-width: 760px) {
  body:not(.login-page) { font-size: 15px !important; }
  .dashboard-menu-buttons.compact-menu button { min-height: 38px !important; font-size: 12px !important; }
  .card .value { font-size: 26px !important; }
  td { font-size: 14px !important; }
}

/* v17.2 — contraste de campos, links e identificadores de OS */
body:not(.login-page) td,
body:not(.login-page) td strong,
body:not(.login-page) .modal-value,
body:not(.login-page) .modal-field,
body:not(.login-page) .os-relatorio-localizacao span,
body:not(.login-page) .os-anexo-card {
  color: var(--v17-ink) !important;
}

button.linklike,
button.linklike.os-numero-link,
.os-numero-link {
  min-height: 0 !important;
  padding: 2px 4px !important;
  border: 0 !important;
  border-radius: 6px !important;
  color: var(--v17-primary) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}
button.linklike:hover,
button.linklike.os-numero-link:hover,
.os-numero-link:hover {
  color: var(--v17-primary-strong) !important;
  background: rgba(13,104,116,.09) !important;
  transform: none !important;
}

body[data-theme="dark"] button.linklike,
body[data-theme="dark"] button.linklike.os-numero-link,
body[data-theme="dark"] .os-numero-link {
  color: #67d6df !important;
}
body[data-theme="dark"] button.linklike:hover,
body[data-theme="dark"] button.linklike.os-numero-link:hover,
body[data-theme="dark"] .os-numero-link:hover {
  color: #a1edf1 !important;
  background: rgba(103,214,223,.12) !important;
}

body:not(.login-page) input[readonly],
body:not(.login-page) input:disabled,
body:not(.login-page) select:disabled,
body:not(.login-page) textarea:disabled {
  opacity: 1 !important;
  color: #49666c !important;
  -webkit-text-fill-color: #49666c !important;
  background: #eef3f4 !important;
  border-color: #d4e0e2 !important;
}
body[data-theme="dark"] input[readonly],
body[data-theme="dark"] input:disabled,
body[data-theme="dark"] select:disabled,
body[data-theme="dark"] textarea:disabled {
  color: #c2d5d8 !important;
  -webkit-text-fill-color: #c2d5d8 !important;
  background: #17343a !important;
  border-color: #31545b !important;
}

body:not(.login-page) a:not(.btn):not(.os-anexo-card) {
  color: var(--v17-primary) !important;
}
body[data-theme="dark"] a:not(.btn):not(.os-anexo-card) {
  color: #67d6df !important;
}

body:not(.login-page) .badge,
body:not(.login-page) .pill {
  filter: saturate(.95) contrast(1.04);
}
body[data-theme="dark"] .badge,
body[data-theme="dark"] .pill {
  border-color: rgba(255,255,255,.18) !important;
}

/* v17.4 — leitura confortável em notebooks de 13 polegadas */
@media (min-width: 761px) and (max-width: 1440px) {
  body:not(.login-page) {
    font-size: 17px !important;
    line-height: 1.55 !important;
  }
  body:not(.login-page) .main,
  .system-shell > main {
    width: min(100% - 24px, 1380px) !important;
  }
  .global-panel-header {
    width: min(calc(100% - 16px), 1380px) !important;
  }
  .dashboard-menu-buttons.compact-menu button {
    min-height: 46px !important;
    padding: 9px 11px !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
  }
  .dashboard-logo-wrap h1 { font-size: 21px !important; }
  .dashboard-brand-kicker { font-size: 12px !important; }
  .title h1,
  #sec-dashboard .dashboard-title-row h1 { font-size: 34px !important; }
  .title p,
  .dashboard-title-row p { font-size: 17px !important; }
  .section-head h2 { font-size: 21px !important; }
  body:not(.login-page) .card,
  .system-page .card {
    min-height: 108px !important;
    padding: 17px !important;
  }
  body:not(.login-page) .card .label,
  #sec-dashboard .card .label,
  #synkIaResumo.card-grid .card .label,
  .system-page .card .label {
    font-size: 13px !important;
    line-height: 1.35 !important;
    letter-spacing: .045em !important;
  }
  body:not(.login-page) .card .value,
  #sec-dashboard .card .value,
  #synkIaResumo.card-grid .card .value,
  .system-page .card .value {
    font-size: 30px !important;
    line-height: 1.1 !important;
  }
  body:not(.login-page) button,
  body:not(.login-page) .btn,
  body:not(.login-page) .btn-link {
    min-height: 46px !important;
    padding: 10px 13px !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
  }
  body:not(.login-page) input,
  body:not(.login-page) select,
  body:not(.login-page) textarea {
    min-height: 48px !important;
    padding: 10px 12px !important;
    font-size: 16px !important;
  }
  body:not(.login-page) th {
    padding: 13px 12px !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
  }
  body:not(.login-page) td {
    padding: 14px 12px !important;
    font-size: 16px !important;
    line-height: 1.45 !important;
  }
  body:not(.login-page) .badge,
  body:not(.login-page) .pill {
    padding: 7px 11px !important;
    font-size: 14px !important;
  }
  body:not(.login-page) .muted,
  body:not(.login-page) .system-feedback,
  #synkIaInsights,
  #synkIaRecomendacoes,
  .synkia-monitor-mini {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  .synkia-monitor-mini span { font-size: 14px !important; }
  button.linklike,
  button.linklike.os-numero-link,
  .os-numero-link {
    font-size: 16px !important;
  }
}

@media (min-width: 1000px) and (max-width: 1440px) {
  #sec-dashboard #dashboardCards {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  #synkIaResumo.card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* v18 — design system corporativo Synk */
:root {
  --pro-navy: #0a2f36;
  --pro-teal: #08717c;
  --pro-green: #0ea777;
  --pro-blue: #2d6cdf;
  --pro-amber: #d8901f;
  --pro-red: #d64b4b;
}
body:not(.login-page) {
  letter-spacing: -.005em;
}
body:not(.login-page) .main,
.system-shell > main {
  padding-bottom: 72px !important;
}
.global-panel-header {
  box-shadow: 0 10px 35px rgba(7, 48, 55, .13) !important;
}
.dashboard-menu-buttons.compact-menu button {
  position: relative;
  overflow: hidden;
}
.dashboard-menu-buttons.compact-menu button::after {
  content: "";
  position: absolute;
  right: 10px;
  bottom: 3px;
  left: 10px;
  height: 2px;
  border-radius: 2px;
  background: transparent;
}
.dashboard-menu-buttons.compact-menu button:hover::after {
  background: var(--v17-accent);
}
.module-hero {
  position: relative;
  overflow: hidden;
  min-height: 142px;
  padding: 28px 30px !important;
  border: 1px solid #bfd9dc;
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 10%, rgba(42, 190, 158, .24), transparent 16rem),
    linear-gradient(135deg, #083e47 0%, #0b6972 100%) !important;
  box-shadow: 0 18px 46px rgba(8, 68, 77, .18);
}
.module-hero::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -120px;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(255,255,255,.035), 0 0 0 86px rgba(255,255,255,.025);
}
.module-hero .title { position: relative; z-index: 1; }
.module-hero .title h1,
.module-hero .title p { color: #fff !important; }
.module-hero .title p { max-width: 720px; color: rgba(235,252,250,.78) !important; }
.module-eyebrow {
  margin-bottom: 7px;
  color: #7ce0c6;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .13em;
}
.technician-kpis {
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  margin: 16px 0;
}
.technician-kpi {
  display: flex !important;
  align-items: center;
  gap: 14px;
  min-height: 108px !important;
}
.technician-kpi::after { display: none; }
.kpi-icon {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  color: var(--pro-teal);
  background: #e5f4f4;
  font-size: 20px;
  font-weight: 900;
}
.kpi-icon.success { color: #16835f; background: #e4f6ef; }
.kpi-icon.online { color: #138c68; background: #ddf7ed; }
.kpi-icon.workload { color: #2d6cdf; background: #e8effd; }
.technician-directory { margin-top: 0 !important; }
.technician-toolbar {
  display: flex;
  gap: 9px;
  align-items: center;
  flex-wrap: wrap;
}
.technician-toolbar input { min-width: min(330px, 58vw) !important; }
.technician-toolbar select { min-width: 135px !important; }
.technician-table td { vertical-align: middle !important; }
.technician-identity {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 210px;
}
.technician-avatar {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  color: #fff;
  background: linear-gradient(135deg, var(--pro-teal), var(--pro-green));
  box-shadow: 0 7px 16px rgba(8,113,124,.20);
  font-weight: 900;
}
.technician-identity strong,
.technician-identity span { display: block; }
.technician-identity strong { color: var(--v17-ink); font-size: 16px; }
.technician-identity div > span { margin-top: 2px; color: var(--v17-muted); font-size: 12px; font-weight: 700; }
.role-chip {
  display: inline-flex;
  padding: 6px 9px;
  border: 1px solid var(--v17-line);
  border-radius: 8px;
  color: #38575d;
  background: var(--v17-panel-soft);
  font-size: 13px;
  font-weight: 800;
}
.status-dot {
  width: 9px;
  height: 9px;
  display: inline-block;
  margin-right: 7px;
  border-radius: 50%;
  background: #9badb1;
  box-shadow: 0 0 0 4px rgba(155,173,177,.13);
}
.status-dot.is-active { background: var(--pro-green); box-shadow: 0 0 0 4px rgba(14,167,119,.13); }
.status-dot.is-inactive { background: var(--pro-red); box-shadow: 0 0 0 4px rgba(214,75,75,.12); }
.workload-count { color: var(--pro-navy); font-size: 22px; font-weight: 900; }
.webapp-user { color: var(--v17-muted); font-size: 12px; font-weight: 750; }

/* Padrão profissional compartilhado por todos os módulos */
body:not(.login-page) .section {
  overflow: hidden;
}
body:not(.login-page) .section-head {
  padding-bottom: 13px;
  border-bottom: 1px solid var(--v17-line);
}
body:not(.login-page) .section-head h2 { margin: 0; }
body:not(.login-page) tbody tr:last-child td { border-bottom: 0 !important; }
body:not(.login-page) button:focus-visible,
body:not(.login-page) input:focus-visible,
body:not(.login-page) select:focus-visible,
body:not(.login-page) a:focus-visible {
  outline: 3px solid rgba(13, 148, 136, .26) !important;
  outline-offset: 2px;
}
body:not(.login-page) .notice {
  border: 1px solid #c9dfe2;
  border-left: 4px solid var(--pro-teal);
  border-radius: 11px;
  background: #f2f8f8;
}
body[data-theme="dark"] .module-hero {
  border-color: #285159 !important;
  background: linear-gradient(135deg, #092b32, #0c4f58) !important;
}
body[data-theme="dark"] .role-chip,
body[data-theme="dark"] .notice { color: #d8e8ea; background: #15343b; border-color: #2c5057; }
body[data-theme="dark"] .technician-identity strong,
body[data-theme="dark"] .workload-count { color: var(--v17-ink); }

@media (max-width: 900px) {
  .technician-kpis { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .module-hero { min-height: 128px; padding: 23px 20px !important; }
}
@media (max-width: 560px) {
  .technician-kpis { grid-template-columns: 1fr !important; }
  .technician-toolbar,
  .technician-toolbar input,
  .technician-toolbar select { width: 100% !important; min-width: 0 !important; }
  .module-hero { border-radius: 17px; }
}

/* v18.1 — linguagem profissional aplicada a todos os módulos */
body:not(.login-page) [data-section] > .topbar {
  position: relative;
  overflow: hidden;
  min-height: 132px;
  padding: 26px 28px !important;
  border: 1px solid #bfd9dc;
  border-radius: 21px;
  background:
    radial-gradient(circle at 92% 8%, rgba(51,205,170,.23), transparent 16rem),
    linear-gradient(135deg, #083f48 0%, #0b6a73 100%) !important;
  box-shadow: 0 17px 44px rgba(8,68,77,.17);
}
body:not(.login-page) [data-section] > .topbar::after {
  content: "";
  position: absolute;
  right: -62px;
  bottom: -126px;
  width: 290px;
  height: 290px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  box-shadow: 0 0 0 38px rgba(255,255,255,.035), 0 0 0 80px rgba(255,255,255,.02);
}
body:not(.login-page) [data-section] > .topbar .title {
  position: relative;
  z-index: 1;
}
body:not(.login-page) [data-section] > .topbar .title::before {
  content: "SYNK PAINEL";
  display: block;
  margin-bottom: 6px;
  color: #80e4ca;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
}
body:not(.login-page) [data-section] > .topbar h1,
body:not(.login-page) [data-section] > .topbar p {
  color: #fff !important;
}
body:not(.login-page) [data-section] > .topbar p {
  color: rgba(234,251,248,.78) !important;
  font-size: 16px !important;
}
#sec-os > .topbar,
#sec-relatorio > .topbar { background: radial-gradient(circle at 92% 8%, rgba(104,160,255,.24), transparent 16rem), linear-gradient(135deg,#123e6f,#2468a7) !important; }
#sec-cliente > .topbar { background: radial-gradient(circle at 92% 8%, rgba(69,205,172,.24), transparent 16rem), linear-gradient(135deg,#07544d,#11806c) !important; }
#sec-os-tecnico > .topbar { background: radial-gradient(circle at 92% 8%, rgba(118,206,201,.22), transparent 16rem), linear-gradient(135deg,#164653,#247381) !important; }
#sec-config > .topbar { background: radial-gradient(circle at 92% 8%, rgba(173,139,255,.22), transparent 16rem), linear-gradient(135deg,#3e356b,#61529c) !important; }
#sec-rh > .topbar { background: radial-gradient(circle at 92% 8%, rgba(246,185,89,.20), transparent 16rem), linear-gradient(135deg,#654717,#92702e) !important; }
#sec-frota > .topbar { background: radial-gradient(circle at 92% 8%, rgba(114,180,255,.22), transparent 16rem), linear-gradient(135deg,#263f66,#3f6590) !important; }

body:not(.login-page) [data-section] > .topbar + .section,
body:not(.login-page) [data-section] > .topbar + div,
body:not(.login-page) [data-section] > .topbar + .card-grid {
  margin-top: 16px !important;
}
body:not(.login-page) [data-section] .section {
  border-top: 3px solid rgba(8,113,124,.22) !important;
}
#sec-os .section { border-top-color: rgba(45,108,223,.28) !important; }
#sec-cliente .section { border-top-color: rgba(14,167,119,.28) !important; }
#sec-config .section { border-top-color: rgba(102,82,164,.28) !important; }

.system-page-hero {
  margin-bottom: 18px !important;
}
.system-page-hero .title::before {
  content: "SYNK PAINEL";
  display: block;
  margin-bottom: 6px;
  color: #80e4ca;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
}
.system-page-hero h1 { margin: 0; color: #fff; font-size: 32px; letter-spacing: -.04em; }
.system-page-hero p { margin: 7px 0 0; color: rgba(234,251,248,.78); }
.system-rh-page .system-page-hero { background: radial-gradient(circle at 92% 8%, rgba(246,185,89,.20), transparent 16rem), linear-gradient(135deg,#654717,#92702e) !important; }
.system-frota-page .system-page-hero { background: radial-gradient(circle at 92% 8%, rgba(114,180,255,.22), transparent 16rem), linear-gradient(135deg,#263f66,#3f6590) !important; }

@media (max-width: 760px) {
  body:not(.login-page) [data-section] > .topbar {
    min-height: 118px;
    padding: 21px 18px !important;
    border-radius: 17px;
  }
  body:not(.login-page) [data-section] > .topbar h1 { font-size: 27px !important; }
}

/* v18.2 — Dashboard utiliza toda a área útil */
#sec-dashboard,
#sec-dashboard .dashboard-title-row,
#sec-dashboard .dashboard-top-row,
#sec-dashboard > .section {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}
#sec-dashboard .dashboard-top-row {
  display: block !important;
}
#sec-dashboard #dashboardCards {
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
#sec-dashboard #dashboardExtra:empty { display: none !important; }
#sec-dashboard #synkIaResumo {
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
#sec-dashboard #synkIaResumo .card {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
}
@media (max-width: 1100px) {
  #sec-dashboard #dashboardCards { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  #sec-dashboard #synkIaResumo { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 560px) {
  #sec-dashboard #dashboardCards,
  #sec-dashboard #synkIaResumo { grid-template-columns: 1fr !important; }
}

/* v18.3 — prioridade por cor somente no texto */
.priority-text {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-size: inherit;
  font-weight: 900;
  letter-spacing: .025em;
}
.priority-text.critica { color: #b4232c !important; }
.priority-text.alta { color: #df5b18 !important; }
.priority-text.normal { color: #1f67c7 !important; }
.priority-text.baixa { color: #168252 !important; }
body[data-theme="dark"] .priority-text.critica { color: #ff747c !important; }
body[data-theme="dark"] .priority-text.alta { color: #ff9a62 !important; }
body[data-theme="dark"] .priority-text.normal { color: #78aaff !important; }
body[data-theme="dark"] .priority-text.baixa { color: #5fdaa0 !important; }

/* v18.5 — central flutuante da Synk IA sempre acessível */
#synkIaFloatingAlert {
  z-index: 10020 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  touch-action: manipulation;
}
#synkIaPopup {
  z-index: 10019 !important;
  pointer-events: auto !important;
}

/* v18.6 — filtros e alerta de idade das filas da Synk IA */
.synkia-table-controls { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.synkia-table-controls input { width:min(260px, 70vw); min-height:42px; }
.synkia-table-controls select { width:78px; min-height:42px; }
.synkia-age-alert { margin-top:8px; padding:9px 12px; border:1px solid #f2b84b; border-radius:10px; background:#fff4d6; color:#8a4b08; font-weight:800; }
tr.os-age-warning td:first-child { border-left:4px solid #e18b16 !important; }
tr.os-age-warning td:last-child { color:#b45309; }
body[data-theme="dark"] .synkia-age-alert { background:#4b3211; border-color:#b87921; color:#ffd88a; }
@media (max-width:760px) { .synkia-table-controls, .synkia-table-controls input { width:100%; } }

/* v18.7 — agendamento de OS compatível com os campos do IXC */
.os-schedule-fields { padding:14px; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); }
.os-schedule-fields label { display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:800; color:var(--muted); }
.os-schedule-fields input { min-width:220px; }

/* v18.8 — filtros de OS por técnico e separação das fechadas */
.os-tecnico-status-filters { margin:0 0 14px; align-items:flex-end; }
.os-tecnico-status-filters label { display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:800; color:var(--muted); }
.os-tecnico-status-filters select { min-width:230px; }
.os-tecnico-group td { padding:10px 14px !important; background:var(--surface-2) !important; color:var(--muted) !important; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }

/* v18.8.1 — contraste do título principal no tema escuro */
body[data-theme="dark"] #sec-dashboard .dashboard-title-row h1,
body[data-theme="dark"] #sec-dashboard > .topbar h1 { color:#fff !important; }

/* v18.9 — edição segura nos detalhes da OS */
.os-edit-panel { margin-top:16px; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }
.os-edit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
.os-edit-grid label { display:flex; flex-direction:column; gap:6px; color:var(--muted); font-size:13px; font-weight:800; }
.os-edit-grid .wide { grid-column:1 / -1; }
.os-edit-grid input,.os-edit-grid select,.os-edit-grid textarea { width:100%; }
@media(max-width:700px){ .os-edit-grid{grid-template-columns:1fr}.os-edit-grid .wide{grid-column:auto} }

/* v19.1 — leitura das integrações e configuração de backup */
#ixcConfigBlock .card-grid .value,
#openaiConfigBlock .openai-status-grid .value { font-size:14px !important; line-height:1.35 !important; white-space:normal !important; overflow-wrap:anywhere; }
#ixcConfigBlock .card-grid { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important; }
#openaiConfigBlock > .filters { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); align-items:stretch; }
#openaiConfigBlock > .filters input,
#openaiConfigBlock > .filters select {
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:auto !important;
  min-height:46px !important;
  padding:10px 12px !important;
  font-size:15px !important;
  line-height:1.35 !important;
  overflow:visible !important;
}
#openaiConfigBlock > .filters select { padding-right:36px !important; }

/* v19.3 — organização profissional da página de configurações */
#sec-config .config-quick-nav { position:sticky; top:76px; z-index:40; display:flex; gap:8px; flex-wrap:wrap; margin:12px 0 20px; padding:10px; border:1px solid var(--line); border-radius:14px; background:color-mix(in srgb,var(--surface) 94%,transparent); box-shadow:0 10px 30px rgba(15,23,42,.08); backdrop-filter:blur(12px); }
#sec-config .config-quick-nav button { min-height:38px !important; padding:8px 14px !important; background:var(--surface-2) !important; color:var(--v17-ink) !important; border:1px solid var(--line) !important; }
#sec-config .config-quick-nav button:hover { border-color:var(--brand) !important; color:var(--brand) !important; }
#sec-config .config-group-title { margin:26px 0 10px; padding:0 2px 10px; border-bottom:2px solid color-mix(in srgb,var(--brand) 32%,var(--line)); color:var(--v17-ink); font-size:18px; font-weight:900; letter-spacing:-.02em; }
#sec-config .config-organized-card { width:100%; margin:0 0 14px !important; scroll-margin-top:145px; }
#sec-config .config-organized-card > .section-head { min-height:40px; }
#sec-config .config-organized-card > .filters { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); align-items:end; }
#sec-config .config-organized-card > .filters input,
#sec-config .config-organized-card > .filters select { width:100% !important; min-width:0 !important; max-width:none !important; }
#empresaConfigBlock #empresa_endereco { grid-column:1 / -1; }
body[data-theme="dark"] #sec-config .config-quick-nav { background:rgba(10,34,40,.94); }
@media(max-width:760px){ #sec-config .config-quick-nav{position:static} #sec-config .config-quick-nav button{flex:1 1 calc(50% - 8px)} #sec-config .config-organized-card > .filters{grid-template-columns:1fr} }

/* v19.3.1 — cards relacionados lado a lado */
#sec-config:not(.hidden) { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:16px; align-items:start; }
#sec-config > .topbar,
#sec-config > #configFeedback,
#sec-config > .config-quick-nav,
#sec-config > .config-group-title { grid-column:1 / -1; }
#sec-config #usuariosPainelBlock { grid-column:1 / -1; }
#sec-config .config-organized-card { height:calc(100% - 14px); }
#sec-config #logoConfigBlock,
#sec-config #temaConfigBlock { min-height:190px; }
@media(max-width:1180px){ #sec-config:not(.hidden){grid-template-columns:1fr} #sec-config #usuariosPainelBlock{grid-column:auto} }

/* v19.3.2 — card Usuário do WebApp compacto */
#webappAcessoConfigBlock > .filters {
  display:grid !important;
  grid-template-columns:minmax(190px,1.5fr) minmax(125px,.75fr) minmax(150px,1fr) minmax(150px,1fr) !important;
  gap:9px !important;
  align-items:end !important;
}
#sec-config #webappAcessoConfigBlock { grid-column:1 / -1; }
#webappAcessoConfigBlock #configWebappTecnico,
#webappAcessoConfigBlock #configWebappTecnicoIxcId,
#webappAcessoConfigBlock #configWebappUsername,
#webappAcessoConfigBlock #configWebappPassword { width:100% !important; min-width:0 !important; }
#webappAcessoConfigBlock #configWebappStatus { grid-column:1 / 2; width:100% !important; }
#webappAcessoConfigBlock #btnSalvarWebappConfig { grid-column:2 / 4; width:max-content; min-width:190px; }
#webappAcessoConfigBlock .table-wrap { width:100%; overflow-x:auto; }
#webappAcessoConfigBlock table { width:100%; min-width:780px !important; table-layout:auto; }
#webappAcessoConfigBlock th,
#webappAcessoConfigBlock td { padding:9px 8px !important; font-size:12.5px !important; line-height:1.3; vertical-align:middle; }
#webappAcessoConfigBlock th:nth-child(2),
#webappAcessoConfigBlock td:nth-child(2),
#webappAcessoConfigBlock th:nth-child(4),
#webappAcessoConfigBlock td:nth-child(4),
#webappAcessoConfigBlock th:nth-child(5),
#webappAcessoConfigBlock td:nth-child(5) { width:82px; white-space:nowrap; }
#webappAcessoConfigBlock td:last-child .actions { display:flex; gap:5px; flex-wrap:wrap; }
#webappAcessoConfigBlock td:last-child button { min-height:32px !important; padding:6px 8px !important; font-size:12px !important; }
@media(max-width:1100px){ #webappAcessoConfigBlock > .filters{grid-template-columns:repeat(2,minmax(0,1fr)) !important} #webappAcessoConfigBlock #configWebappStatus,#webappAcessoConfigBlock #btnSalvarWebappConfig{grid-column:auto} }
@media(max-width:760px){ #webappAcessoConfigBlock > .filters{grid-template-columns:1fr !important} }

/* v19.3.3 — card Usuário WebApp Avulso compacto */
#sec-config #webappAvulsoConfigBlock { grid-column:1 / -1; }
#webappAvulsoConfigBlock > .filters {
  display:grid !important;
  grid-template-columns:minmax(200px,1.2fr) minmax(190px,1fr) minmax(150px,.7fr) auto !important;
  gap:9px !important;
  align-items:end !important;
}
#webappAvulsoConfigBlock > .filters input,
#webappAvulsoConfigBlock > .filters select { width:100% !important; min-width:0 !important; max-width:none !important; }
#webappAvulsoConfigBlock #btnSalvarWebappAvulso { min-width:190px; white-space:nowrap; }
#webappAvulsoConfigBlock .table-wrap { width:100%; overflow-x:auto; }
#webappAvulsoConfigBlock table { width:100%; min-width:720px !important; }
#webappAvulsoConfigBlock th,
#webappAvulsoConfigBlock td { padding:9px 8px !important; font-size:12.5px !important; line-height:1.3; vertical-align:middle; }
#webappAvulsoConfigBlock td:last-child .actions { display:flex; gap:5px; flex-wrap:wrap; }
#webappAvulsoConfigBlock td:last-child button { min-height:32px !important; padding:6px 8px !important; font-size:12px !important; }
@media(max-width:1000px){ #webappAvulsoConfigBlock > .filters{grid-template-columns:repeat(2,minmax(0,1fr)) !important} }
@media(max-width:760px){ #webappAvulsoConfigBlock > .filters{grid-template-columns:1fr !important} #webappAvulsoConfigBlock #btnSalvarWebappAvulso{width:100%} }

/* v19.4 — relatório completo por total, técnico e cliente */
#sec-relatorio .relatorio-total-grid { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
#sec-relatorio .relatorio-total-grid .card { min-height:86px !important; }
#sec-relatorio .relatorio-total-grid .value { font-size:26px !important; }
@media(max-width:1200px){ #sec-relatorio .relatorio-total-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important} }
@media(max-width:600px){ #sec-relatorio .relatorio-total-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important} }
@media print {
  #printRelatorioArea { padding:12mm !important; }
  #printRelatorioArea .print-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #printRelatorioArea .print-card { break-inside:avoid; }
  #printRelatorioArea .print-table thead { display:table-header-group; }
  #printRelatorioArea .print-table tr { break-inside:avoid; }
  #printRelatorioArea .print-section-title { break-after:avoid; }
}
#openaiConfigBlock .openai-status-grid { grid-template-columns:repeat(auto-fit,minmax(190px,1fr)) !important; }
.backup-cloud-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.backup-cloud-grid label { display:flex; flex-direction:column; gap:6px; color:var(--muted); font-size:13px; font-weight:800; }
.backup-cloud-grid .wide { grid-column:1 / -1; }
.backup-cloud-grid input,.backup-cloud-grid select,.backup-cloud-grid textarea { width:100%; }
.backup-cloud-actions { margin-top:14px; }
@media(max-width:760px){ .backup-cloud-grid{grid-template-columns:1fr}.backup-cloud-grid .wide{grid-column:auto} }
