/* ACE cascade: ace-page. Prioridade definida em ace-fonts.css. */
@layer ace-page {
/* ACE Campo | estilos extraidos de index.html; a ordem da cascata foi preservada. */
/* v57: CSS final para tablet; une melhorias do Codex com correção v54 da faixa verde das abas. */

:root {
      --ace-field-green-dark: #073b24;
      --ace-field-green: #0f6f3d;
      --ace-field-green-strong: #0b7a3b;
      --ace-field-red: #c62828;
      --ace-field-silver: #9aa4ad;
      --ace-field-bg: #f3f8f5;
      --ace-field-card-border: rgba(21, 83, 51, .12);
    }

    html body.field-page {
      background:
        radial-gradient(circle at 18% 0%, rgba(15, 111, 61, .10), transparent 28rem),
        linear-gradient(180deg, #eef6f1 0%, #f7faf8 16rem, var(--ace-field-bg) 100%);
      color: #1f2933;
    }

    html body.field-page .page-shell,
    html body.field-page .ace-shell {
      background: transparent;
    }

    html body.field-page .topbar.topbar-v43,
    html body.field-page header.topbar.topbar-v43,
    html body.field-page .ace-topbar {
      position: sticky;
      top: 0;
      z-index: 60;
      overflow: hidden;
      margin: 0;
      background: var(--ace-field-green-dark);
      border: 0;
      border-bottom: 1px solid rgba(255, 255, 255, .10);
      box-shadow: 0 10px 22px rgba(7, 59, 36, .18);
      color: #ffffff;
    }

    html body.field-page .topbar-v43 .topbar-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 14px;
      align-items: center;
      max-width: 1180px;
      margin: 0 auto;
      padding: 10px 18px 8px;
      background: var(--ace-field-green-dark);
      color: #ffffff;
    }

    html body.field-page .topbar-v43 .topbar-main,
    html body.field-page .topbar-v43 .brand-copy {
      min-width: 0;
    }

    html body.field-page .topbar-v43 .brand-copy h1 {
      margin: 0;
      color: #ffffff;
      font-size: clamp(.98rem, 1.35vw, 1.25rem);
      font-weight: 900;
      line-height: 1.05;
      letter-spacing: -.02em;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    html body.field-page .topbar-v43 .brand-copy p,
    html body.field-page .topbar-v43 .brand-copy span {
      margin: 3px 0 0;
      color: rgba(255, 255, 255, .76);
      font-size: .72rem;
      font-weight: 700;
      line-height: 1.1;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    html body.field-page .topbar-v43 .chip-row,
    html body.field-page .topbar-v43 .topbar-actions {
      display: grid;
      grid-auto-flow: column;
      grid-auto-columns: minmax(82px, auto);
      gap: 8px;
      align-items: center;
      justify-content: end;
      margin: 0;
      width: auto;
      min-width: 0;
    }

    html body.field-page .topbar-v43 .topbar-actions > *,
    html body.field-page .topbar-v43 .chip,
    html body.field-page .topbar-v43 .operation-mode-badge,
    html body.field-page .topbar-v43 #syncChip,
    html body.field-page .topbar-v43 #headerSyncBtn,
    html body.field-page .topbar-v43 #logoutBtn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 82px;
      width: auto;
      height: 33px;
      min-height: 33px;
      max-height: 33px;
      padding: 0 12px;
      border-radius: 10px;
      border: 1px solid rgba(255, 255, 255, .72);
      background: #ffffff;
      color: var(--ace-field-silver);
      font-size: .76rem;
      font-weight: 900;
      line-height: 1;
      text-align: center;
      text-shadow: none;
      white-space: nowrap;
      box-shadow: none;
      box-sizing: border-box;
    }

    html body.field-page .topbar-v43 .topbar-actions > * *,
    html body.field-page .topbar-v43 .chip *,
    html body.field-page .topbar-v43 .operation-mode-badge *,
    html body.field-page .topbar-v43 #syncChip * {
      color: var(--ace-field-silver);
      font-size: inherit;
      line-height: 1;
      white-space: nowrap;
      text-shadow: none;
    }

    html body.field-page .topbar-v43 .operation-mode-badge {
      gap: 4px;
    }

    html body.field-page .topbar-v43 .operation-mode-badge span,
    html body.field-page .topbar-v43 .operation-mode-badge strong {
      display: inline;
      min-width: 0;
    }

    html body.field-page .topbar-v43 #syncChip.is-ok,
    html body.field-page .topbar-v43 .chip.is-ok,
    html body.field-page .topbar-v43 #headerSyncBtn,
    html body.field-page .topbar-v43 .header-sync-btn {
      background: var(--ace-field-green);
      border-color: var(--ace-field-green);
      color: #ffffff;
      box-shadow: 0 6px 14px rgba(15, 111, 61, .24);
    }

    html body.field-page .topbar-v43 #syncChip.is-ok *,
    html body.field-page .topbar-v43 .chip.is-ok *,
    html body.field-page .topbar-v43 #headerSyncBtn *,
    html body.field-page .topbar-v43 .header-sync-btn * {
      color: #ffffff;
    }

    html body.field-page .topbar-v43 #syncChip.is-warn,
    html body.field-page .topbar-v43 .chip.is-warn {
      background: #d97706;
      border-color: #d97706;
      color: #ffffff;
    }

    html body.field-page .topbar-v43 #syncChip.is-danger,
    html body.field-page .topbar-v43 .chip.is-danger,
    html body.field-page .topbar-v43 #logoutBtn,
    html body.field-page .topbar-v43 .chip-logout {
      background: var(--ace-field-red);
      border-color: #b42323;
      color: #ffffff;
      box-shadow: 0 6px 14px rgba(198, 40, 40, .22);
    }

    html body.field-page .topbar-v43 #syncChip.is-warn *,
    html body.field-page .topbar-v43 .chip.is-warn *,
    html body.field-page .topbar-v43 #syncChip.is-danger *,
    html body.field-page .topbar-v43 .chip.is-danger *,
    html body.field-page .topbar-v43 #logoutBtn *,
    html body.field-page .topbar-v43 .chip-logout * {
      color: #ffffff;
    }

    html body.field-page .nav-tabs.nav-tabs-v43 {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 9px;
      max-width: 1180px;
      margin: 0 auto;
      padding: 7px 18px 11px;
      background: var(--ace-field-green-dark);
      border: 0;
      border-top: 1px solid rgba(255, 255, 255, .10);
      box-shadow: none;
    }


    /* v55: garante faixa verde contínua antes/depois das abas, sem fresta branca antes de "Visita". */
    html body.field-page .topbar.topbar-v43.ace-topbar::after,
    html body.field-page .topbar.topbar-v43::after,
    html body.field-page .nav-tabs.nav-tabs-v43::before,
    html body.field-page .nav-tabs.nav-tabs-v43::after {
      content: none;
      display: none;
      height: 0;
      background: transparent;
    }

    html body.field-page .topbar.topbar-v43,
    html body.field-page header.topbar.topbar-v43,
    html body.field-page .topbar-v43 .topbar-row,
    html body.field-page .nav-tabs.nav-tabs-v43 {
      background-color: var(--ace-field-green-dark);
    }

    html body.field-page .nav-tabs.nav-tabs-v43 {
      position: relative;
      width: 100%;
      box-sizing: border-box;
      background: var(--ace-field-green-dark);
      box-shadow: 0 0 0 100vmax var(--ace-field-green-dark);
      clip-path: inset(0 -100vmax);
    }

    html body.field-page .nav-tabs-v43 .tab-btn,
    html body.field-page .nav-tabs-v43 button.tab-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 36px;
      min-height: 36px;
      padding: 0 12px;
      border-radius: 11px;
      border: 1px solid #dce4df;
      background: #ffffff;
      color: var(--ace-field-silver);
      font-size: .84rem;
      font-weight: 900;
      letter-spacing: .01em;
      line-height: 1;
      text-shadow: none;
      box-shadow: none;
    }

    html body.field-page .nav-tabs-v43 .tab-btn *,
    html body.field-page .nav-tabs-v43 .tab-btn .tab-btn__label,
    html body.field-page .nav-tabs-v43 button.tab-btn *,
    html body.field-page .nav-tabs-v43 button.tab-btn .tab-btn__label {
      color: var(--ace-field-silver);
      font-weight: 900;
      text-shadow: none;
    }

    html body.field-page .nav-tabs-v43 .tab-btn.active,
    html body.field-page .nav-tabs-v43 .tab-btn.is-active,
    html body.field-page .nav-tabs-v43 .tab-btn[aria-selected="true"],
    html body.field-page .nav-tabs-v43 button.tab-btn.active,
    html body.field-page .nav-tabs-v43 button.tab-btn.is-active,
    html body.field-page .nav-tabs-v43 button.tab-btn[aria-selected="true"] {
      background: var(--ace-field-green-strong);
      border-color: var(--ace-field-green-strong);
      color: #ffffff;
      box-shadow: 0 8px 16px rgba(11, 122, 59, .20);
    }

    html body.field-page .nav-tabs-v43 .tab-btn.active *,
    html body.field-page .nav-tabs-v43 .tab-btn.active .tab-btn__label,
    html body.field-page .nav-tabs-v43 .tab-btn.is-active *,
    html body.field-page .nav-tabs-v43 .tab-btn.is-active .tab-btn__label,
    html body.field-page .nav-tabs-v43 .tab-btn[aria-selected="true"] *,
    html body.field-page .nav-tabs-v43 .tab-btn[aria-selected="true"] .tab-btn__label,
    html body.field-page .nav-tabs-v43 button.tab-btn.active *,
    html body.field-page .nav-tabs-v43 button.tab-btn.active .tab-btn__label,
    html body.field-page .nav-tabs-v43 button.tab-btn.is-active *,
    html body.field-page .nav-tabs-v43 button.tab-btn.is-active .tab-btn__label,
    html body.field-page .nav-tabs-v43 button.tab-btn[aria-selected="true"] *,
    html body.field-page .nav-tabs-v43 button.tab-btn[aria-selected="true"] .tab-btn__label {
      color: #ffffff;
    }

    html body.field-page main {
      max-width: 1180px;
      margin: 0 auto;
      padding: 14px 18px 34px;
    }

    html body.field-page .screen {
      padding-inline: 0;
    }

    html body.field-page .card,
    html body.field-page .ace-card {
      border-color: var(--ace-field-card-border);
      border-radius: 16px;
      background: rgba(255, 255, 255, .96);
      box-shadow: 0 8px 20px rgba(20, 35, 28, .06);
    }

    html body.field-page #screen-painel .screen-head {
      margin: 0 0 12px;
      padding: 11px 14px;
      border-radius: 16px;
      border: 1px solid var(--ace-field-card-border);
      background: rgba(255, 255, 255, .95);
      box-shadow: 0 8px 20px rgba(20, 35, 28, .06);
    }

    html body.field-page #screen-painel .screen-head h2,
    html body.field-page #screen-painel .screen-head .section-title {
      margin: 0;
      font-size: clamp(1rem, 1.6vw, 1.25rem);
      line-height: 1.1;
    }

    html body.field-page #screen-painel .screen-head p {
      margin: 4px 0 0;
      font-size: .78rem;
      line-height: 1.25;
      color: #647067;
    }

    html body.field-page #screen-painel .screen-badge {
      width: 42px;
      height: 42px;
      min-width: 42px;
      border-radius: 12px;
      background: #f5faf7;
      border: 1px solid rgba(15, 111, 61, .14);
      box-shadow: none;
    }

    html body.field-page #screen-painel .hero-grid,
    html body.field-page #screen-painel .metric-grid,
    html body.field-page #syncCenterGrid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 10px;
      margin-bottom: 12px;
    }

    html body.field-page #screen-painel #localMetricGrid.metric-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    html body.field-page #screen-painel .hero-card,
    html body.field-page #screen-painel .metric-card,
    html body.field-page #syncCenterGrid .metric-card {
      min-height: 72px;
      padding: 10px 12px;
      border-radius: 15px;
      background: rgba(255, 255, 255, .96);
      border: 1px solid var(--ace-field-card-border);
      box-shadow: 0 7px 16px rgba(20, 35, 28, .055);
      overflow: hidden;
    }

    html body.field-page #screen-painel .hero-card small,
    html body.field-page #screen-painel .metric-card small,
    html body.field-page #syncCenterGrid .metric-card small {
      margin: 0 0 5px;
      color: #4a5560;
      font-size: .60rem;
      font-weight: 900;
      letter-spacing: .07em;
      line-height: 1.05;
      text-transform: uppercase;
    }

    html body.field-page #screen-painel .hero-card strong,
    html body.field-page #screen-painel .metric-card strong,
    html body.field-page #syncCenterGrid .metric-card strong {
      color: #20784a;
      font-size: clamp(1.34rem, 2vw, 1.86rem);
      font-weight: 900;
      line-height: .98;
      letter-spacing: -.03em;
    }

    html body.field-page #screen-painel .hero-card span,
    html body.field-page #screen-painel .metric-card span,
    html body.field-page #syncCenterGrid .metric-card span {
      display: block;
      margin-top: 5px;
      color: #69756c;
      font-size: .70rem;
      font-weight: 700;
      line-height: 1.15;
    }

    html body.field-page #screen-painel .card,
    html body.field-page #screen-painel .ace-card {
      padding: 13px;
      border-radius: 16px;
    }

    html body.field-page #screen-painel .section-title,
    html body.field-page #screen-painel .ace-section-title {
      margin-bottom: 9px;
      color: #163d2b;
      font-size: 1rem;
      line-height: 1.15;
    }

    html body.field-page #screen-painel .grid,
    html body.field-page #screen-painel .grid.two {
      gap: 12px;
    }

    html body.field-page #screen-painel .grid.two {
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    html body.field-page #screen-painel .btn-row,
    html body.field-page #screen-painel .dashboard-day-actions {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 9px;
    }

    html body.field-page #screen-painel .btn,
    html body.field-page #screen-painel .ace-btn {
      min-height: 38px;
      border-radius: 11px;
      font-weight: 900;
      box-shadow: none;
    }

    html body.field-page #screen-painel .table-wrap,
    html body.field-page #screen-painel .visit-table-wrap {
      border-radius: 14px;
      border-color: var(--ace-field-card-border);
      box-shadow: none;
    }

    @media (max-width: 900px) {
      html body.field-page .topbar-v43 .topbar-row {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 8px 10px 7px;
      }

      html body.field-page .topbar-v43 .brand-copy h1 {
        font-size: .98rem;
      }

      html body.field-page .topbar-v43 .brand-copy p {
        display: block;
        font-size: .64rem;
      }

      html body.field-page .topbar-v43 .chip-row,
      html body.field-page .topbar-v43 .topbar-actions {
        width: 100%;
        grid-auto-flow: initial;
        grid-auto-columns: initial;
        grid-template-columns: minmax(0, .92fr) minmax(0, 1fr) minmax(0, .76fr) minmax(0, .78fr);
        gap: 6px;
        justify-content: stretch;
      }

      html body.field-page .topbar-v43 .topbar-actions > *,
      html body.field-page .topbar-v43 .chip,
      html body.field-page .topbar-v43 .operation-mode-badge,
      html body.field-page .topbar-v43 #syncChip,
      html body.field-page .topbar-v43 #headerSyncBtn,
      html body.field-page .topbar-v43 #logoutBtn {
        width: 100%;
        min-width: 0;
        height: 32px;
        min-height: 32px;
        max-height: 32px;
        padding: 0 5px;
        border-radius: 9px;
        font-size: .64rem;
      }

      html body.field-page .nav-tabs.nav-tabs-v43 {
        gap: 6px;
        padding: 7px 10px 9px;
      }

      html body.field-page .nav-tabs-v43 .tab-btn,
      html body.field-page .nav-tabs-v43 button.tab-btn {
        height: 34px;
        min-height: 34px;
        border-radius: 9px;
        font-size: .78rem;
      }

      html body.field-page main {
        padding: 10px 10px 28px;
      }

      html body.field-page #screen-painel .screen-head {
        padding: 10px 12px;
        border-radius: 15px;
      }

      html body.field-page #screen-painel .screen-badge {
        width: 36px;
        height: 36px;
        min-width: 36px;
      }

      html body.field-page #screen-painel .hero-grid,
      html body.field-page #screen-painel .metric-grid,
      html body.field-page #syncCenterGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
      }

      html body.field-page #screen-painel .hero-card,
      html body.field-page #screen-painel .metric-card,
      html body.field-page #syncCenterGrid .metric-card {
        min-height: 62px;
        padding: 8px 9px;
        border-radius: 13px;
      }

      html body.field-page #screen-painel .hero-card small,
      html body.field-page #screen-painel .metric-card small,
      html body.field-page #syncCenterGrid .metric-card small {
        margin-bottom: 4px;
        font-size: .55rem;
        letter-spacing: .055em;
      }

      html body.field-page #screen-painel .hero-card strong,
      html body.field-page #screen-painel .metric-card strong,
      html body.field-page #syncCenterGrid .metric-card strong {
        font-size: 1.18rem;
      }

      html body.field-page #screen-painel .hero-card span,
      html body.field-page #screen-painel .metric-card span,
      html body.field-page #syncCenterGrid .metric-card span {
        margin-top: 4px;
        font-size: .62rem;
      }

      html body.field-page #screen-painel .card,
      html body.field-page #screen-painel .ace-card {
        padding: 10px;
        border-radius: 14px;
      }

      html body.field-page #screen-painel .section-title,
      html body.field-page #screen-painel .ace-section-title {
        margin-bottom: 8px;
        font-size: .94rem;
      }

      html body.field-page #screen-painel .grid.two {
        grid-template-columns: 1fr;
        gap: 10px;
      }

      html body.field-page #screen-painel .btn-row,
      html body.field-page #screen-painel .dashboard-day-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
      }
    }

    @media (min-width: 700px) and (max-width: 900px) and (orientation: portrait) {
      html body.field-page #screen-painel .hero-grid,
      html body.field-page #screen-painel .metric-grid,
      html body.field-page #syncCenterGrid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      html body.field-page #screen-painel .hero-card,
      html body.field-page #screen-painel .metric-card,
      html body.field-page #syncCenterGrid .metric-card {
        min-height: 56px;
        padding: 8px;
      }

      html body.field-page #screen-painel .hero-card strong,
      html body.field-page #screen-painel .metric-card strong,
      html body.field-page #syncCenterGrid .metric-card strong {
        font-size: 1.12rem;
      }
    }

    @media (max-width: 420px) {
      html body.field-page .topbar-v43 .brand-copy p {
        display: none;
      }

      html body.field-page .topbar-v43 .topbar-actions > *,
      html body.field-page .topbar-v43 .chip,
      html body.field-page .topbar-v43 .operation-mode-badge,
      html body.field-page .topbar-v43 #syncChip,
      html body.field-page .topbar-v43 #headerSyncBtn,
      html body.field-page .topbar-v43 #logoutBtn {
        font-size: .60rem;
      }
    }

    /* Ajustes finais para Galaxy Tab A11 8.7", cards mobile e uso offline. */

html body.field-page {
      --ace-a11-touch: 48px;
      --ace-a11-radius: 8px;
      --ace-a11-border: rgba(24, 78, 50, .16);
      --ace-a11-soft: #f7faf8;
      --ace-a11-ink: #153326;
      --ace-a11-muted: #5f6f66;
      --ace-a11-green: #0f6f3d;
      --ace-a11-warn: #8a5a00;
      --ace-a11-danger: #9b2f2f;
      --ace-a11-blue: #255f9d;
    }

    html body.field-page #screen-painel {
      max-width: 980px;
      margin: 0 auto;
    }

    html body.field-page #screen-painel:not(.active) {
      display: none;
    }

    html body.field-page #screen-painel.active {
      display: block;
    }

    html body.field-page #screen-painel .screen-head {
      border-radius: var(--ace-a11-radius);
    }

    html body.field-page #screen-painel .screen-head-copy span {
      color: var(--ace-a11-muted);
    }

    html body.field-page #screen-painel .screen-badge {
      width: 44px;
      height: 44px;
      min-width: 44px;
      border-radius: var(--ace-a11-radius);
      color: #0f5132;
      font-size: .72rem;
      font-weight: 900;
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .panel-offline-command {
      position: sticky;
      top: calc(98px + env(safe-area-inset-top));
      z-index: 18;
      display: grid;
      grid-template-columns: minmax(0, 1.25fr) minmax(320px, .9fr);
      gap: 10px;
      align-items: stretch;
      margin: 0 0 10px;
      padding: 10px;
      border: 1px solid var(--ace-a11-border);
      border-left: 6px solid var(--ace-a11-green);
      border-radius: var(--ace-a11-radius);
      background: rgba(255, 255, 255, .98);
      box-shadow: 0 8px 18px rgba(20, 35, 28, .10);
    }

    html body.field-page #screen-painel .panel-offline-command.is-warn {
      border-left-color: #c47a00;
    }

    html body.field-page #screen-painel .panel-offline-command.is-danger {
      border-left-color: var(--ace-a11-danger);
    }

    html body.field-page #screen-painel .panel-offline-main {
      display: grid;
      gap: 2px;
      min-width: 0;
    }

    html body.field-page #screen-painel .panel-offline-main small,
    html body.field-page #screen-painel .panel-next-kicker,
    html body.field-page #screen-painel .panel-section-kicker {
      margin: 0;
      color: var(--ace-a11-muted);
      font-size: .68rem;
      font-weight: 900;
      letter-spacing: 0;
      line-height: 1.1;
      text-transform: uppercase;
    }

    html body.field-page #screen-painel .panel-offline-main strong {
      color: var(--ace-a11-ink);
      font-size: 1rem;
      line-height: 1.15;
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .panel-offline-main span {
      color: var(--ace-a11-muted);
      font-size: .82rem;
      font-weight: 700;
      line-height: 1.25;
    }

    html body.field-page #screen-painel .panel-offline-stats {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 6px;
      align-items: stretch;
    }

    html body.field-page #screen-painel .panel-offline-stat {
      display: grid;
      place-items: center;
      min-height: 52px;
      padding: 6px;
      border: 1px solid rgba(24, 78, 50, .12);
      border-radius: var(--ace-a11-radius);
      background: var(--ace-a11-soft);
      text-align: center;
    }

    html body.field-page #screen-painel .panel-offline-stat b {
      color: var(--ace-a11-green);
      font-size: 1.1rem;
      font-weight: 900;
      line-height: 1;
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .panel-offline-stat small {
      display: block;
      margin-top: 3px;
      color: var(--ace-a11-muted);
      font-size: .62rem;
      font-weight: 900;
      letter-spacing: 0;
      line-height: 1.05;
      text-transform: uppercase;
    }

    html body.field-page #screen-painel .offline-ready-card,
    html body.field-page #screen-painel .panel-next-action-card,
    html body.field-page #screen-painel .card,
    html body.field-page #screen-painel .ace-card {
      border-radius: var(--ace-a11-radius);
      border-color: var(--ace-a11-border);
      box-shadow: 0 6px 14px rgba(20, 35, 28, .06);
    }

    html body.field-page #screen-painel .offline-ready-card {
      padding: 10px;
      margin-bottom: 10px;
    }

    html body.field-page #screen-painel .offline-ready-checks {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 6px;
      max-height: 180px;
      overflow: auto;
    }

    html body.field-page #screen-painel .offline-ready-check {
      border-radius: var(--ace-a11-radius);
      min-height: 42px;
      padding: 7px;
    }

    html body.field-page #screen-painel .offline-ready-actions .btn,
    html body.field-page #screen-painel .dashboard-day-actions .btn,
    html body.field-page #screen-painel .panel-next-actions .btn,
    html body.field-page #screen-painel .sync-export-btn {
      min-height: var(--ace-a11-touch);
      border-radius: var(--ace-a11-radius);
      font-size: .86rem;
      font-weight: 900;
      letter-spacing: 0;
      white-space: normal;
      line-height: 1.12;
    }

    html body.field-page #screen-painel .panel-next-action-card {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
      gap: 12px;
      align-items: stretch;
      margin-bottom: 10px;
      background: #ffffff;
    }

    html body.field-page #screen-painel .panel-next-main {
      min-width: 0;
    }

    html body.field-page #screen-painel .panel-next-main strong {
      display: block;
      margin-top: 4px;
      color: var(--ace-a11-ink);
      font-size: 1.08rem;
      line-height: 1.15;
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .panel-next-main p {
      margin: 6px 0 0;
      color: var(--ace-a11-muted);
      font-size: .86rem;
      font-weight: 700;
      line-height: 1.32;
    }

    html body.field-page #screen-painel .panel-next-checklist {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 6px;
      margin-top: 10px;
    }

    html body.field-page #screen-painel .panel-next-check {
      min-height: 38px;
      padding: 7px 8px;
      border: 1px solid rgba(24, 78, 50, .12);
      border-radius: var(--ace-a11-radius);
      background: #f7faf8;
      color: var(--ace-a11-ink);
      font-size: .75rem;
      font-weight: 900;
      line-height: 1.15;
    }

    html body.field-page #screen-painel .panel-next-check.is-warn {
      background: #fff8e8;
      border-color: rgba(196, 122, 0, .28);
      color: var(--ace-a11-warn);
    }

    html body.field-page #screen-painel .panel-next-check.is-danger {
      background: #fff1f1;
      border-color: rgba(155, 47, 47, .26);
      color: var(--ace-a11-danger);
    }

    html body.field-page #screen-painel .panel-next-actions {
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px;
      align-content: center;
    }

    html body.field-page #screen-painel .panel-next-actions .btn-secondary {
      background: #f7faf8;
    }

    html body.field-page #screen-painel .hero-grid {
      margin-bottom: 10px;
    }

    html body.field-page #screen-painel .hero-card,
    html body.field-page #screen-painel .metric-card,
    html body.field-page #syncCenterGrid .metric-card {
      border-radius: var(--ace-a11-radius);
      min-height: 72px;
      padding: 10px;
    }

    html body.field-page #screen-painel .hero-card small,
    html body.field-page #screen-painel .metric-card small,
    html body.field-page #syncCenterGrid .metric-card small {
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .hero-card strong,
    html body.field-page #screen-painel .metric-card strong,
    html body.field-page #syncCenterGrid .metric-card strong {
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .panel-card-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
    }

    html body.field-page #screen-painel .panel-list-card {
      display: grid;
      gap: 7px;
      min-height: 92px;
      padding: 10px;
      border: 1px solid rgba(24, 78, 50, .14);
      border-radius: var(--ace-a11-radius);
      background: #ffffff;
    }

    html body.field-page #screen-painel .panel-list-card strong {
      color: var(--ace-a11-ink);
      font-size: .92rem;
      line-height: 1.15;
      letter-spacing: 0;
    }

    html body.field-page #screen-painel .panel-list-card span,
    html body.field-page #screen-painel .panel-list-card small {
      color: var(--ace-a11-muted);
      font-size: .74rem;
      font-weight: 700;
      line-height: 1.2;
    }

    html body.field-page #screen-painel .panel-list-card .meta-pills {
      margin-top: 0;
    }

    html body.field-page #screen-painel .panel-list-card-actions {
      display: flex;
      gap: 6px;
      align-items: center;
      justify-content: flex-end;
      margin-top: 2px;
    }

    html body.field-page #screen-painel .panel-list-card-actions .btn {
      min-height: 40px;
      padding: 0 12px;
      border-radius: var(--ace-a11-radius);
    }

    html body.field-page #screen-painel .panel-table-fallback {
      margin-top: 8px;
    }

    @media (max-width: 900px) {
      html body.field-page #screen-painel {
        max-width: 100%;
      }

      html body.field-page .topbar-v43 .topbar-actions > *,
      html body.field-page .topbar-v43 .chip,
      html body.field-page .topbar-v43 .operation-mode-badge,
      html body.field-page .topbar-v43 #syncChip,
      html body.field-page .topbar-v43 #headerSyncBtn,
      html body.field-page .topbar-v43 #logoutBtn {
        min-height: 42px;
        height: 42px;
        max-height: none;
        border-radius: var(--ace-a11-radius);
        font-size: .72rem;
        letter-spacing: 0;
      }

      html body.field-page .nav-tabs-v43 .tab-btn,
      html body.field-page .nav-tabs-v43 button.tab-btn {
        min-height: var(--ace-a11-touch);
        height: var(--ace-a11-touch);
        border-radius: var(--ace-a11-radius);
      }

      html body.field-page #screen-painel .panel-offline-command {
        top: calc(114px + env(safe-area-inset-top));
        grid-template-columns: 1fr;
      }

      html body.field-page #screen-painel .panel-next-action-card {
        grid-template-columns: 1fr;
      }

      html body.field-page #screen-painel .panel-next-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      html body.field-page #screen-painel .panel-table-fallback {
        display: none;
      }
    }

    @media (max-width: 700px) {
      html body.field-page #screen-painel .hero-grid,
      html body.field-page #screen-painel .metric-grid,
      html body.field-page #syncCenterGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      html body.field-page #screen-painel .panel-card-list,
      html body.field-page #screen-painel .offline-ready-checks,
      html body.field-page #screen-painel .panel-next-checklist {
        grid-template-columns: 1fr;
      }
    }

    html body.field-page #screen-painel .panel-list-card-empty {
      grid-column: 1 / -1;
      min-height: 64px;
      border-style: dashed;
      background: #f8fbf9;
    }

    html body.field-page #screen-painel .panel-list-card .meta-pills {
      display: flex;
      flex-wrap: wrap;
      gap: 5px;
    }

    html body.field-page #screen-painel .panel-list-card .meta-pills span {
      display: inline-flex;
      align-items: center;
      min-height: 24px;
      padding: 3px 7px;
      border-radius: 999px;
      background: #edf5f0;
      color: #214534;
      font-size: .68rem;
      font-weight: 850;
      line-height: 1.05;
    }

/* Fase 4 | apresentacao sem estilos inline no markup gerado pelo Campo. */
html body.field-page #screen-painel .sync-export-actions,
html body.field-page #screen-painel .sync-queue-list {
  margin-top: 16px;
}

html body.field-page #appShell .insight-card-detail,
html body.field-page #appShell .history-card-meta,
html body.field-page #appShell .history-card-note,
html body.field-page #appShell .panel-table-meta,
html body.field-page #appShell .deposit-report-detail,
html body.field-page #appShell .panel-table-empty {
  color: var(--muted, #66727c);
}

html body.field-page #appShell .insight-card-detail,
html body.field-page #appShell .history-card-meta {
  margin-top: 6px;
}

html body.field-page #appShell .history-card-note {
  margin-top: 10px;
}

html body.field-page #appShell .deposit-report-detail {
  margin-top: 8px;
}

html body.field-page #appShell .property-territory-notice {
  margin-bottom: 8px;
}

html body.field-page #appShell .panel-table-empty {
  text-align: center;
}

/* Estados do aviso operacional: a lógica alterna classes, nunca CSS inline. */
html body.field-page #syncStatus.sync-banner--danger { background: #8e3131; }
html body.field-page #syncStatus.sync-banner--warn { background: #8d6915; }
html body.field-page #syncStatus.sync-banner--accent { background: #355f9f; }
html body.field-page #syncStatus.sync-banner--neutral { background: #203028; }

html body.field-page .ace-install-app-btn {
  width: 100%;
  min-height: 48px;
}

html body.field-page .ace-install-hint {
  margin: 10px 0 0;
  color: #4d5c55;
  font-size: .78rem;
  line-height: 1.35;
}
}
