
/* ─── RESET / BASE ─────────────────────────────────────────────────────────── */
@font-face { font-family:'Poppins'; font-style:normal; font-weight:300; font-display:swap; src:url('/assets/fonts/poppins-300.ttf') format('truetype'); }
@font-face { font-family:'Poppins'; font-style:normal; font-weight:400; font-display:swap; src:url('/assets/fonts/poppins-400.ttf') format('truetype'); }
@font-face { font-family:'Poppins'; font-style:normal; font-weight:500; font-display:swap; src:url('/assets/fonts/poppins-500.ttf') format('truetype'); }
@font-face { font-family:'Poppins'; font-style:normal; font-weight:600; font-display:swap; src:url('/assets/fonts/poppins-600.ttf') format('truetype'); }
@font-face { font-family:'Poppins'; font-style:normal; font-weight:700; font-display:swap; src:url('/assets/fonts/poppins-700.ttf') format('truetype'); }

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Poppins', 'Segoe UI', system-ui, sans-serif; font-size: 13px; background: #f5f8fa; color: #181c32; }
a { text-decoration: none; color: inherit; cursor: pointer; }
input, select, textarea, button { font: inherit; }
input, select, textarea {
  width: 100%; padding: 8px 12px; border: 1px solid #e4e6ef; border-radius: 6px;
  background: #fff; transition: border .15s; color: #181c32;
}

/* Orçamentos — rodapé da tabela no mesmo bloco do Lizy.
   Antes o paginador herdava margem externa e o primeiro grupo encostava na
   borda/cortava o texto. O rodapé agora tem uma faixa própria, com o grupo
   inteiro alinhado à direita e a exportação separada logo abaixo. */
#content.orc-v2-host .orc-v2-card > #pager-orc-v2,
#content.orc-legacy-host .orc-data-card > #pager-orc {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  width:100%;
  min-height:78px;
  margin:0;
  padding:14px 28px;
  gap:20px;
  border-top:1px solid #eff2f5;
  color:#7e8299;
  font-size:12px;
  overflow:visible;
}
#content.orc-v2-host .orc-v2-card > #pager-orc-v2 .pager-left,
#content.orc-legacy-host .orc-data-card > #pager-orc .pager-left {
  flex:0 0 auto;
  flex-direction:row;
  align-items:center;
  gap:10px;
  margin-left:auto;
  white-space:nowrap;
}
#content.orc-v2-host .orc-v2-card > #pager-orc-v2 .pager-left select,
#content.orc-legacy-host .orc-data-card > #pager-orc .pager-left select {
  box-sizing:border-box;
  width:72px;
  min-width:72px;
  height:42px;
  padding:6px 25px 6px 12px;
  border:1px solid #dfe3e9;
  border-radius:6px;
  background:#fff;
  color:#3f4254;
}
#content.orc-v2-host .orc-v2-card > #pager-orc-v2 .pager-buttons,
#content.orc-legacy-host .orc-data-card > #pager-orc .pager-buttons {
  flex:0 0 auto;
  align-items:center;
  gap:10px;
  white-space:nowrap;
}
#content.orc-v2-host .orc-v2-card > #pager-orc-v2 .pager-buttons > span,
#content.orc-legacy-host .orc-data-card > #pager-orc .pager-buttons > span {
  margin-right:4px;
  white-space:nowrap;
}
#content.orc-v2-host .orc-v2-export,
#content.orc-legacy-host .orc-data-card > .btn-link {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  min-height:64px;
  margin:0;
  padding:16px 28px 22px;
  border-top:1px solid #eff2f5;
}
#content.orc-v2-host .orc-v2-export .btn,
#content.orc-legacy-host .orc-data-card > .btn-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#009ef7;
  font:600 14px/20px Poppins,sans-serif;
  text-decoration:none;
}
#content.orc-v2-host .orc-v2-export .btn:hover,
#content.orc-legacy-host .orc-data-card > .btn-link:hover { color:#007dc8; background:transparent; }

@media (max-width:760px) {
  #content.orc-v2-host .orc-v2-card > #pager-orc-v2,
  #content.orc-legacy-host .orc-data-card > #pager-orc {
    align-items:stretch;
    flex-direction:column;
    gap:12px;
    min-height:0;
    padding:14px 16px;
  }
  #content.orc-v2-host .orc-v2-card > #pager-orc-v2 .pager-left,
  #content.orc-legacy-host .orc-data-card > #pager-orc .pager-left {
    width:100%;
    justify-content:space-between;
    margin-left:0;
  }
  #content.orc-v2-host .orc-v2-card > #pager-orc-v2 .pager-buttons,
  #content.orc-legacy-host .orc-data-card > #pager-orc .pager-buttons {
    width:100%;
    justify-content:flex-end;
  }
  #content.orc-v2-host .orc-v2-export,
  #content.orc-legacy-host .orc-data-card > .btn-link {
    min-height:56px;
    padding:14px 16px 18px;
  }
}

/* Serviços > Análise no shell desktop médio (1280px): o Lizy reduz o iframe
   para 955px após a sidebar e a tabela esconde Funções no detalhe responsivo. */
.analise-table .dtr-functions { display:none; }
@media (min-width:1200px) and (max-width:1399px) {
  #content.fila-analise-host > .section-card {
    box-sizing:border-box; height:91.6px; margin-bottom:18.1px!important;
    padding:20px 13.6px 20px 24px;
  }
  #content.fila-analise-host > .section-card > div:first-child { gap:30px!important; }
  #content.fila-analise-host .section-card-icon {
    box-sizing:border-box; width:63px; height:63px; flex:0 0 63px; margin-left:3.8px;
    position:relative; top:-20.7px; border-radius:3px; font-size:24px;
    box-shadow:0 4px 20px rgba(0,0,0,.14),0 7px 10px -5px rgba(0,158,247,.4);
  }
  #content.fila-analise-host .section-card-title {
    position:relative; top:-4.6px; color:#3c4858; font:300 18px/25.2px Poppins,sans-serif;
  }
  #content.fila-analise-host > .section-card > div:last-child { gap:17px!important; margin-right:0; }
  #content.fila-analise-host > .section-card > div:last-child .btn {
    box-sizing:border-box; height:41.14px; padding:12px 30px; border-radius:3.2px;
    font:500 12px/17.14px Poppins,sans-serif; position:relative; top:-6.625px; white-space:nowrap;
  }
  #content.fila-analise-host > .section-card > div:last-child > .btn { width:141.05px; }
  #content.fila-analise-host > .section-card > div:last-child > .dropdown-fn > .btn { width:134.31px; }
  #content.fila-analise-host > .section-card > div:last-child .btn > i { display:none; }
  #content.fila-analise-host > .cards-grid {
    box-sizing:border-box; width:calc(100% - 67.2px); margin:0 0 40px 33.6px!important; gap:0;
  }
  #content.fila-analise-host > .cards-grid > .card {
    box-sizing:border-box; position:relative; width:270.925px; min-width:270.925px; max-width:270.925px;
    height:157px; min-height:157px; padding:12px; gap:0; align-items:flex-start;
    border:1.6px solid #e7edf5; border-radius:6px;
  }
  #content.fila-analise-host > .cards-grid > .card .card-side-panel {
    box-sizing:border-box; width:86px; height:86px; flex:0 0 86px; margin:0 0 0 15.7px;
    border-radius:3px; font-size:26px; position:relative; top:-19px;
    box-shadow:1px 1px 20px 1px rgba(0,0,0,.14);
  }
  #content.fila-analise-host > .cards-grid > .card .card-body {
    position:absolute; top:13.6px; left:27.7px; right:27.7px; width:auto; text-align:right;
  }
  #content.fila-analise-host > .cards-grid > .card .card-label {
    margin:0; padding:10px 0 0; color:#999; font:400 14px/24px Poppins,sans-serif;
  }
  #content.fila-analise-host > .cards-grid > .card .card-value {
    margin:0; color:#3c4858; font:300 25px/35px Poppins,sans-serif;
  }
  #content.fila-analise-host > .view-toolbar {
    box-sizing:border-box; width:calc(100% - 67.8px); height:36px;
    margin:0 0 8px 34.6px!important; gap:29px!important; align-items:flex-end;
  }
  #content.fila-analise-host > .view-toolbar #analise-cat-menu,
  #content.fila-analise-host > .view-toolbar #analise-cat-menu > button {
    box-sizing:border-box; width:270.925px; height:34px;
  }
  #content.fila-analise-host > .view-toolbar #analise-cat-menu > button {
    padding:8px 0; border:0; border-bottom:1px solid #d9dce4; border-radius:0;
    background:transparent; color:#333; font:400 14px/24px Poppins,sans-serif; text-align:left;
  }
  #content.fila-analise-host > .view-toolbar #busca-os {
    box-sizing:border-box; width:auto; height:36px; padding:7px 2px;
    color:#333; font:400 14px/15.4px Poppins,sans-serif;
  }
  #content.fila-analise-host > div:nth-of-type(4) {
    box-sizing:border-box; width:calc(100% - 68.2px); margin:39px 0 15.2px 34.6px!important;
  }
  #content.fila-analise-host > div:nth-of-type(4) .btn {
    box-sizing:border-box; width:89.6px; height:41.14px; padding:12px 30px;
    border-radius:3.2px; font:500 12px/17.14px Poppins,sans-serif;
  }
  #content.fila-analise-host > div:nth-of-type(4) .btn > i { display:none; }
  #content.fila-analise-host > .table-wrap {
    box-sizing:border-box; width:calc(100% - 67.2px); margin-left:33.6px; overflow-x:hidden;
  }
  #content.fila-analise-host .analise-table {
    box-sizing:border-box; position:relative; left:-.8px; width:872.8px; min-width:872.8px; table-layout:fixed;
  }
  #content.fila-analise-host .analise-table th {
    box-sizing:border-box; height:72.8px; padding:12px 30px 12px 8px;
    color:#333; font:300 17px/24px Poppins,sans-serif;
  }
  #content.fila-analise-host .analise-table td {
    box-sizing:border-box; padding:12px 8px; color:#333;
    font:400 16px/24px Poppins,sans-serif; vertical-align:middle;
  }
  #content.fila-analise-host .analise-table th:nth-child(1), #content.fila-analise-host .analise-table td:nth-child(1) { width:198.725px; }
  #content.fila-analise-host .analise-table th:nth-child(2), #content.fila-analise-host .analise-table td:nth-child(2) { width:158.475px; }
  #content.fila-analise-host .analise-table th:nth-child(4), #content.fila-analise-host .analise-table td:nth-child(4) { width:127.6125px; }
  #content.fila-analise-host .analise-table th:nth-child(5), #content.fila-analise-host .analise-table td:nth-child(5) { width:109.9375px; }
  #content.fila-analise-host .analise-table th:nth-child(6), #content.fila-analise-host .analise-table td:nth-child(6) { width:158.5625px; }
  #content.fila-analise-host .analise-table th:nth-child(7), #content.fila-analise-host .analise-table td:nth-child(7) { width:119.4875px; }
  #content.fila-analise-host .analise-table th:nth-child(3), #content.fila-analise-host .analise-table td:nth-child(3),
  #content.fila-analise-host .analise-table th:nth-child(8), #content.fila-analise-host .analise-table td:nth-child(8),
  #content.fila-analise-host .analise-table th:nth-child(9), #content.fila-analise-host .analise-table td:nth-child(9),
  #content.fila-analise-host .analise-table th:nth-child(10), #content.fila-analise-host .analise-table td:nth-child(10) { display:none; }
  #content.fila-analise-host .analise-table .dtr-functions { display:list-item; }
  #content.fila-analise-host .tr-urgente td,
  #content.fila-analise-host .tr-urgente td * { color:#ffc700!important; font-weight:700; }
  #content.fila-analise-host .red-row td,
  #content.fila-analise-host .red-row td * { color:#f1416c!important; font-weight:700; }
}

/* Correção de precedência: os estilos base históricos usam !important nas
   abas de Serviços; estas regras finais mantêm a geometria medida do iframe
   original na largura de auditoria. */
@media (min-width: 769px) and (max-width: 1199px) {
  #content.fila-processo-host > .servicos-processo-tabs {
    width: calc(100% - 40px) !important;
    height: 48px !important;
    margin: 0 0 42px 20px !important;
    padding: 8px 15px 0 !important;
    gap: 5px !important;
    align-items: flex-start !important;
    overflow: hidden !important;
  }
  #content.fila-processo-host > .servicos-processo-tabs .tab {
    height: 40px !important;
    min-height: 40px !important;
    padding: 10px 8px !important;
    border-radius: 0 !important;
    font: 400 11px/16.5px Poppins, sans-serif !important;
    font-weight: 400 !important;
  }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(1) { width: 53.6px !important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(2) { width: 151.8px !important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(3) { width: 129.3px !important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(4) { width: 130.3px !important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(5) { width: 99.9px !important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(6) { width: 80px !important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(7) { width: 96.3px !important; }
  #content.fila-processo-host > .section-card { margin-top: 42px !important; margin-bottom: 10.2px !important; }
  #content.fila-processo-host > .section-card { padding-left: 28.6px !important; column-gap: 30px !important; border: 0 !important; }
  #content.fila-processo-host > .section-card .section-card-icon {
    box-sizing: border-box;
    width: 63px !important;
    height: 63px !important;
    flex: 0 0 63px !important;
    position: relative;
    top: -20.7px;
    border-radius: 3px;
    box-shadow: 0 4px 20px rgba(0,0,0,.14), 0 7px 10px -5px rgba(0,158,247,.4);
    font-size: 24px;
  }
  #content.fila-processo-host > .section-card .section-card-title {
    position: relative;
    top: -3.7px;
    color: #3c4858;
    font: 300 18px/25.2px Poppins, sans-serif;
  }
  #content.fila-processo-host > .cards-grid > .card {
    position: relative;
    padding: 12px !important;
    overflow: visible;
    border: 0 !important;
    border-radius: 6px;
  }
  #content.fila-processo-host > .cards-grid > .card .card-side-panel {
    box-sizing: border-box;
    width: 86px !important;
    height: 86px !important;
    flex: 0 0 86px !important;
    position: absolute;
    top: -6.4px;
    left: 28.6px;
    margin: 0 !important;
    border-radius: 3px;
    font-size: 26px;
    box-shadow: 1px 1px 20px 1px rgba(0,0,0,.14);
  }
  #content.fila-processo-host > .cards-grid > .card .card-body {
    position: absolute;
    top: 13.6px;
    left: 28.6px;
    right: 28.6px;
    width: auto;
    height: 69px;
    text-align: right;
  }
  #content.fila-processo-host > .cards-grid > .card .card-label {
    margin: 0;
    padding: 10px 0 0;
    color: #999;
    font: 400 14px/24px Poppins, sans-serif;
  }
  #content.fila-processo-host > .cards-grid > .card .card-value {
    margin: 0;
    color: #3c4858;
    font: 300 25px/35px Poppins, sans-serif;
  }
  #content.fila-processo-host > .table-wrap { border: 0 !important; }
  #content.fila-processo-host > .table-wrap .table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed;
  }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs {
    height: 88px !important;
    flex-wrap: wrap !important;
    align-content: flex-start !important;
    row-gap: 0 !important;
    column-gap: 5px !important;
  }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(1) { width: 53.6px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(2) { width: 151.8px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(3) { width: 122px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(4) { width: 114.6px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(5) { width: 199.2px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(6) { width: 99.9px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(7) { width: 158.1px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(8) { width: 80px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(9) { width: 96.3px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .servicos-processo-tabs .tab:nth-child(8) { margin-left: 5px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .cards-grid { margin-bottom: 27px !important; }
  #content.fila-processo-host.fila-processo-eletronicos > .fila-processo-toolbar { margin-bottom: 24px !important; }

  #content.fila-finalizados-host {
    box-sizing: border-box;
    overflow-y: scroll !important;
    padding: 16px 15px 30px !important;
  }
  #content.fila-finalizados-host > .section-card {
    box-sizing: border-box;
    width: 100%;
    height: 91.6px;
    margin: 0 0 10.2px !important;
    padding-left: 28.6px !important;
    column-gap: 30px !important;
    border: 0 !important;
  }
  #content.fila-finalizados-host > .section-card .section-card-icon {
    box-sizing: border-box;
    width: 63px !important;
    height: 63px !important;
    flex: 0 0 63px !important;
    position: relative;
    top: -20.7px;
    background: #999 !important;
    border-radius: 3px;
    box-shadow: 0 4px 20px rgba(0,0,0,.14), 0 7px 10px -5px rgba(233,30,99,.4);
    font-size: 24px;
  }
  #content.fila-finalizados-host > .section-card .section-card-title {
    position: relative;
    top: -3.7px;
    color: #3c4858;
    font: 300 18px/25.2px Poppins, sans-serif;
  }
  #content.fila-finalizados-host > .cards-grid {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    margin: 0 0 30px 33.6px !important;
    gap: 30px;
  }
  #content.fila-finalizados-host > .cards-grid > .card {
    box-sizing: border-box;
    position: relative;
    width: 225.325px;
    min-width: 225.325px;
    max-width: 225.325px;
    height: 265px;
    min-height: 265px;
    padding: 12px !important;
    overflow: visible;
    border: 0 !important;
    border-radius: 6px;
  }
  #content.fila-finalizados-host > .cards-grid > .card .card-side-panel {
    box-sizing: border-box;
    width: 86px !important;
    height: 86px !important;
    flex: 0 0 86px !important;
    position: absolute;
    top: -6.4px;
    left: 28.6px;
    margin: 0 !important;
    background: #999 !important;
    border-radius: 3px;
    font-size: 26px;
    box-shadow: 1px 1px 20px 1px rgba(0,0,0,.14);
  }
  #content.fila-finalizados-host > .cards-grid > .card:first-child .card-side-panel { box-shadow: 0 4px 20px rgba(0,0,0,.14), 0 7px 10px -5px rgba(255,152,0,.4); }
  #content.fila-finalizados-host > .cards-grid > .card:last-child .card-side-panel { box-shadow: 0 4px 20px rgba(0,0,0,.14), 0 7px 10px -5px rgba(244,67,54,.4); }
  #content.fila-finalizados-host > .cards-grid > .card .card-body {
    position: absolute;
    top: 13.6px;
    left: 28.6px;
    right: 28.6px;
    width: auto;
    text-align: right;
  }
  #content.fila-finalizados-host > .cards-grid > .card .card-label {
    box-sizing: border-box;
    height: 106px;
    margin: 0;
    padding: 0;
    color: #999;
    font: 400 14px/24px Poppins, sans-serif;
  }
  #content.fila-finalizados-host > .cards-grid > .card .card-value {
    margin: 0;
    color: #3c4858;
    font: 300 25px/35px Poppins, sans-serif;
  }
  #content.fila-finalizados-host > .cards-grid > .card .card-body > div:last-child { margin-top: 30.8px !important; text-align: left; }
  #content.fila-finalizados-host > .cards-grid > .card .finalizados-periodo {
    width:168.125px;
    height:36px;
    display:flex;
    align-items:center;
    gap:11px;
  }
  #content.fila-finalizados-host > .cards-grid > .card .finalizados-periodo > i {
    width:14px;
    flex:0 0 14px;
    color:#999;
    font-size:16px;
    text-align:center;
  }
  #content.fila-finalizados-host > .cards-grid > .card input[type="month"],
  #content.fila-finalizados-host > .cards-grid > .card input[type="number"] {
    box-sizing: border-box;
    width: 143.125px !important;
    height: 36px;
    margin-left: 0;
    padding: 6px 8px;
    border: 0;
    border-bottom: 1px solid #d9dce4;
    border-radius: 0;
    background: transparent;
    color: #3f4254;
    font: 400 14px/15.4px Poppins, sans-serif;
    text-align: center;
  }
  #content.fila-finalizados-host > .cards-grid > .card input[type="month"]::-webkit-calendar-picker-indicator { opacity:0; width:0; margin:0; }
  #content.fila-finalizados-host > .view-toolbar {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    height: 36px;
    margin: 0 0 31px 33.6px !important;
    align-items: flex-end;
  }
  #content.fila-finalizados-host > .view-toolbar .search-input {
    box-sizing: border-box;
    width: 100%;
    height: 36px;
    padding: 7px 2px;
    border: 0;
    border-bottom: 1px solid #d9dce4;
    border-radius: 0;
    background: transparent;
    color: #333;
    font: 400 14px/15.4px Poppins, sans-serif;
  }
  #content.fila-finalizados-host > .finalizados-toolbar #fin-tipo { display: none; }
  #content.fila-finalizados-host > .table-wrap {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    margin-left: 33.6px;
    border: 0 !important;
    overflow-x: hidden;
  }
  #content.fila-finalizados-host > .table-wrap .table { width: 100% !important; min-width: 0 !important; table-layout: fixed; }
  #content.fila-finalizados-host .finalizados-table th {
    box-sizing: border-box;
    height: 72.8px;
    padding: 12px 30px 12px 8px;
    color: #333;
    font: 300 17.008px/24px Poppins, sans-serif;
    vertical-align: middle;
  }
  #content.fila-finalizados-host .finalizados-table td {
    box-sizing: border-box;
    padding: 12px 8px;
    color: #333;
    font: 400 16px/24px Poppins, sans-serif;
    vertical-align: middle;
  }
  #content.fila-finalizados-host .finalizados-table th:nth-child(1),
  #content.fila-finalizados-host .finalizados-table td:nth-child(1) { width: 13.8264%; }
  #content.fila-finalizados-host .finalizados-table th:nth-child(2),
  #content.fila-finalizados-host .finalizados-table td:nth-child(2) { width: 21.7374%; }
  #content.fila-finalizados-host .finalizados-table th:nth-child(3),
  #content.fila-finalizados-host .finalizados-table td:nth-child(3) { width: 15.2582%; }
  #content.fila-finalizados-host .finalizados-table th:nth-child(4),
  #content.fila-finalizados-host .finalizados-table td:nth-child(4) { width: 33.6396%; }
  #content.fila-finalizados-host .finalizados-table th:nth-child(5),
  #content.fila-finalizados-host .finalizados-table td:nth-child(5) { width: 15.5384%; }
}

.finalizados-table .fila-sort { position:relative; display:block; width:100%; padding:0; text-align:left; line-height:24px; }
.finalizados-table .sort-arrow { position:absolute; right:-20px; top:0; color:#d5d7de; font-size:14px; font-weight:400; }
.finalizados-table .finalizado-control { text-align:center; }
.finalizados-table .finalizado-control::before { content:'+'; display:inline-block; margin-right:7px; color:#009ef7; font-weight:600; }
.finalizados-table tr.expanded .finalizado-control::before { content:'−'; }
.finalizados-table .finalizado-foto { display:block; width:220px; height:165px; max-width:100%; object-fit:contain; cursor:zoom-in; }
.finalizados-table .finalizado-foto-placeholder {
  width:220px;
  height:165px;
  max-width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #eff2f5;
  background:#f8f9fb;
  color:#c4c8d0;
  font-size:38px;
}

/* Orçamentos legados: o Lizy usa cartões em duas linhas, ícone inline e um
   cabeçalho/filtros separados. A classe fica isolada para não alterar o novo
   layout V2. */
.orc-legacy-host .orc-legacy-card {
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  min-width:0;
  max-width:none;
  padding:0!important;
  border:0;
  border-radius:6.175px;
  background:#fff;
  box-shadow:0 0 20px rgba(76,87,125,.02);
  overflow:hidden;
  gap:0!important;
}
.orc-legacy-host .orc-legacy-card.card-active { box-shadow:3px 3px 6px rgba(0,0,0,.2); }
.orc-legacy-card-header { box-sizing:border-box; display:flex; flex:0 0 61.75px; width:100%; height:61.75px; padding:29.25px 26px 0; }
.orc-legacy-card-title { box-sizing:border-box; display:flex; align-items:center; width:max-content; height:32.5px; min-width:0; }
.orc-legacy-icon { box-sizing:border-box; display:block; flex:0 0 32.5px; width:32.5px; height:32.5px; margin-right:9.75px; color:#181c32; }
.orc-legacy-icon svg { display:block; width:32.5px; height:32.5px; vertical-align:middle; }
.orc-icon-primary { color:#009ef7; }.orc-icon-warning { color:#ffc700; }.orc-icon-success { color:#50cd89; }.orc-icon-danger { color:#f1416c; }
.orc-legacy-title { display:block; margin-top:12.5px; color:#181c32; font:600 16.25px/20px Poppins,sans-serif; letter-spacing:.232143px; white-space:nowrap; cursor:pointer; }
.orc-legacy-card.card-active .orc-legacy-title { color:#009ef7; }
.orc-legacy-card-body { box-sizing:border-box; display:flex; flex:1 1 auto; flex-direction:column; width:100%; height:95.25px; padding:19.5px 29.25px 26px; }
.orc-legacy-count,.orc-legacy-total { display:block; color:#3f4254; font:500 14.95px/20px Poppins,sans-serif; }
.orc-legacy-count { margin-bottom:9.75px; }
.orc-legacy-ref,.orc-legacy-client,.orc-legacy-status-main { display:block; color:#3f4254; font:500 13.975px/20px Poppins,sans-serif; }
.orc-legacy-muted,.orc-legacy-status-date { display:block; color:#a1a5b7; font:400 12.35px/20px Poppins,sans-serif; }
.orc-legacy-observation { color:#a1a5b7; cursor:pointer; }
.orc-legacy-status-task { display:flex; align-items:center; min-height:34.3375px; margin-top:0; font:400 14px/20px Roboto,sans-serif; }
.orc-legacy-status-task .badge { display:block; height:22.1px; padding:5.525px 9.75px; border-radius:4px; font:600 11.05px/11.05px Poppins,sans-serif; }
.orc-legacy-status-task .fa-calendar { margin-left:4px; color:#0090ff; cursor:pointer; }
.orc-legacy-value { display:inline-block; color:#3f4254; font:500 13.975px/20px Poppins,sans-serif; }

@media (min-width:769px) and (max-width:1199px) {
  /* Medidas do Lizy no viewport de referência (1074 CSS px). Percentuais
     mantêm a composição proporcional quando a janela é redimensionada. */
  #content.orc-legacy-host .orc-legacy-actions { height:47px; transform:translateY(-30px); }
  #content.orc-legacy-host .orc-legacy-actions > .btn-secondary {
    box-sizing:border-box;
    width:111.5625px;
    height:34.3375px;
    margin:0;
    padding:8.15px 7.5px;
    transform:translateY(13px);
    border:0;
    border-radius:6.175px;
    background:#f1faff;
    color:#009ef7;
    font:500 12.025px/18.0375px Poppins,sans-serif;
    white-space:nowrap;
  }
  #content.orc-legacy-host .orc-summary-grid {
    box-sizing:border-box;
    width:calc(100% + 19.5px);
    margin-left:-9.75px;
    margin-bottom:6.8125px!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:0;
    row-gap:20.475px;
    transform:translateY(-.6625px);
  }
  #content.orc-legacy-host .orc-summary-grid .orc-legacy-card {
    width:auto;
    height:157px;
    min-height:157px;
    margin:0 12.2125px;
  }
  #content.orc-legacy-host .orc-summary-grid .orc-legacy-card { box-shadow:0 0 20px rgba(76,87,125,.02)!important; }
  #content.orc-legacy-host .orc-summary-grid .orc-legacy-card.card-active { box-shadow:3px 3px 6px rgba(0,0,0,.2)!important; }
  #content.orc-legacy-host .orc-tabs {
    box-sizing:border-box;
    display:flex;
    flex-wrap:nowrap;
    align-items:flex-start;
    gap:19.5px;
    width:100%;
    height:95.15px;
    padding:30px 0 0;
    margin:0 0 30px;
    overflow-x:auto;
    background:transparent;
    border:0;
    border-radius:0;
  }
  #content.orc-legacy-host .orc-tabs .tab {
    box-sizing:border-box;
    flex:0 0 205px;
    width:205px;
    min-width:205px;
    height:45px;
    padding:16.25px 13px 6.5px;
    border:1px dashed #e4e6ef;
    border-radius:12px;
    background:#fff;
    color:#a1a5b7;
    font:500 14.3px/21.45px Poppins,sans-serif;
    white-space:nowrap;
  }
  #content.orc-legacy-host .orc-tabs .tab.active {
    border:1px solid #e4e6ef;
    border-bottom:1px solid #e4e6ef;
    border-radius:12px;
    color:#009ef7;
    background:#fff;
  }
  #content.orc-legacy-host .orc-data-card {
    box-sizing:border-box;
    width:100%;
    margin-left:0;
    padding:0;
    border-radius:6.175px;
    box-shadow:0 0 20px rgba(76,87,125,.02);
  }
  #content.orc-legacy-host .orc-data-card > .section-card {
    box-sizing:border-box;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:calc(100% - 32.5px);
    height:80.475px;
    margin:0 auto;
    padding:0;
    align-items:start;
    justify-content:normal!important;
    gap:0!important;
  }
  #content.orc-legacy-host .orc-data-card > .section-card .section-card-title {
    box-sizing:border-box;
    align-self:start;
    width:auto;
    height:24px;
    margin:32.999px 0 16px 12.2125px;
    color:#181c32;
    font:600 17.6693px/24px Poppins,sans-serif;
  }
  #content.orc-legacy-host .orc-data-card > .section-card .btn-primary {
    box-sizing:border-box;
    grid-column:2;
    width:calc(100% - 24.425px);
    height:42.95px;
    margin:13px 0 0 12.2125px;
    padding:10.75px 20.5px;
    border-radius:5px;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content.orc-legacy-host .orc-data-card .view-toolbar {
    box-sizing:border-box;
    display:grid!important;
    grid-template-columns:minmax(0,547.85px) 140px 235.575px;
    grid-template-rows:45px 42.55px;
    column-gap:24.425px;
    gap:20.475px 24.425px!important;
    row-gap:20.475px;
    width:calc(100% - 32.5px);
    height:128.5px;
    margin:0 auto!important;
    padding:13px 12.2125px 0;
    align-items:start;
    justify-content:normal;
    flex-wrap:nowrap!important;
  }
  #content.orc-legacy-host .orc-data-card .view-toolbar > input,
  #content.orc-legacy-host .orc-data-card .view-toolbar > select {
    box-sizing:border-box;
    max-width:none!important;
    margin:0;
    min-height:0!important;
    border:0;
    border-radius:6.175px;
    background:#f2f2f2;
    color:#3f4254;
  }
  #content.orc-legacy-host #busca-orc { grid-column:1; grid-row:1; width:547.85px; height:42.55px; padding:9.75px 13px; font:500 14.3px/21.45px Poppins,sans-serif; }
  #content.orc-legacy-host #orc-tipo { grid-column:2; grid-row:1; width:140px; height:45px; padding:10.725px 8px 10.725px 19.5px; font:500 14.95px/22.425px Poppins,sans-serif; }
  #content.orc-legacy-host #orc-vend { grid-column:3; grid-row:1; width:235.575px; height:45px; padding:10.725px 8px 10.725px 19.5px; font:500 14.95px/22.425px Poppins,sans-serif; }
  #content.orc-legacy-host #orc-de { grid-column:1; grid-row:2; width:473.6375px; height:42.55px; padding:9.75px 13px; font:500 14.3px/21.45px Poppins,sans-serif; }
  #content.orc-legacy-host #orc-ate { grid-column:2; grid-row:2; width:473.6375px; height:42.55px; margin-left:-73.6375px; padding:9.75px 13px; font:500 14.3px/21.45px Poppins,sans-serif; }
  #content.orc-legacy-host .orc-data-card .view-toolbar + .table-wrap {
    box-sizing:border-box;
    width:calc(100% - 52px);
    margin:0 26px;
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow-x:hidden;
  }
  #content.orc-legacy-host .orc-data-card .table-wrap .table { width:100%; min-width:0; table-layout:fixed; }
  #content.orc-legacy-host .orc-data-card .table th { box-sizing:border-box; height:48.4px; padding:13px 8px; border-bottom:1px solid #eff2f5; background:#fff; color:#b5b5c3; font:600 15px/22px Roboto,sans-serif; vertical-align:bottom; }
  #content.orc-legacy-host .orc-data-card .table td { box-sizing:border-box; padding:13px 8px; border-bottom:1px dashed #eff2f5; color:#181c32; font:400 14px/20px Roboto,sans-serif; vertical-align:middle; }
  #content.orc-legacy-host .orc-data-card .table th:nth-child(1), #content.orc-legacy-host .orc-data-card .table td:nth-child(1) { width:17.15%; padding-left:10px; }
  #content.orc-legacy-host .orc-data-card .table th:nth-child(2), #content.orc-legacy-host .orc-data-card .table td:nth-child(2) { width:19.41%; padding-left:5px; }
  #content.orc-legacy-host .orc-data-card .table th:nth-child(3), #content.orc-legacy-host .orc-data-card .table td:nth-child(3) { width:30.7%; padding-left:5px; }
  #content.orc-legacy-host .orc-data-card .table th:nth-child(4), #content.orc-legacy-host .orc-data-card .table td:nth-child(4) { width:17.4%; padding-left:0; }
  #content.orc-legacy-host .orc-data-card .table th:nth-child(5), #content.orc-legacy-host .orc-data-card .table td:nth-child(5) { width:15.34%; padding-left:0; }
  #content.orc-legacy-host .orc-data-card .table td.td-fns { text-align:left; }
  #content.orc-legacy-host .orc-data-card .table td.td-fns .btn-icon { box-sizing:border-box; width:34.3375px; height:34.3375px; }
  #content.orc-legacy-host .orc-data-card .table td.td-fns .btn-icon i { font-size:14.95px; }
}

/* Mobile: a barra superior não pode usar as larguras medidas para tablet.
   Antes deste bloco, empresa + sino + avatar conservavam 254px e o breadcrumb
   empurrava a página para 450–508px em um aparelho de 390px. */
@media (max-width:768px) {
  html,body,.app,#page-app,.main { width:100%; max-width:100%; min-width:0; overflow-x:hidden; }
  .topbar {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
    min-height:60px;
    height:60px;
    padding:0 10px;
    gap:6px;
    overflow:hidden;
  }
  .topbar-left {
    flex:1 1 auto;
    min-width:0;
    max-width:100%;
    gap:4px;
    overflow:hidden;
  }
  .sidebar-toggle {
    box-sizing:border-box;
    width:34px;
    height:40px;
    flex:0 0 34px;
    padding:7px;
  }
  .breadcrumb {
    flex:1 1 auto;
    min-width:0;
    max-width:100%;
    gap:4px;
    overflow:hidden;
    white-space:nowrap;
  }
  .breadcrumb a,.breadcrumb span {
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .breadcrumb i { flex:0 0 auto; }
  .topbar-right {
    box-sizing:border-box;
    width:auto;
    min-width:0;
    max-width:132px;
    flex:0 0 auto;
    gap:4px;
    overflow:hidden;
  }
  .topbar-company {
    box-sizing:border-box;
    width:92px;
    min-width:0;
    max-width:92px;
    height:34px;
    min-height:34px;
    padding:7px 22px 7px 8px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .topbar-notif { display:none; }
  .topbar-avatar {
    width:34px;
    min-width:34px;
    height:34px;
    flex:0 0 34px;
  }

  .content {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    max-width:100%;
    padding:16px 12px!important;
    overflow-x:hidden;
  }
  #content .card,#content .data-card,#content .section-card,#content .cfg-panel {
    box-sizing:border-box;
    min-width:0;
    max-width:100%;
  }
  #content input,#content select,#content textarea { box-sizing:border-box; max-width:100%; }
  #content .table-wrap,
  #content .orc-v2-table-wrap {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    overflow-x:auto!important;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
  }

  /* As fichas de ensaio mantêm a tabela técnica fixa do Lizy, mas no
     celular ela deve rolar dentro da ficha em vez de ser cortada pelo card. */
  #content .an-pane {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
  }
  #content #an-eletrica>table { min-width:620px; }

  /* Recebimento possui duas ações longas. No desktop ficam lado a lado;
     no telefone viram linhas de toque completas, sem sair do cartão. */
  #content.logistica-host .section-card-head {
    width:100%;
    min-width:0;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px;
    flex-wrap:wrap!important;
  }
  #content.logistica-host .section-card-head .section-card-title { width:100%; min-width:0; }
  #content.logistica-host .section-card-head .page-actions {
    width:100%;
    min-width:0;
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  #content.logistica-host .section-card-head .page-actions .btn {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    min-height:44px;
    justify-content:center;
    white-space:normal;
  }
  #content.logistica-host .logistica-lista-card { padding:18px 14px; }
  #content.logistica-host .logistica-filtros { grid-template-columns:1fr; gap:10px; }

  /* Perfil/configurações: os botões de alteração e 2FA não podem
     ocupar uma coluna invisível à direita da tela. */
  #content .cfg-info-row { flex-wrap:wrap; }
  #content .cfg-info-row>div { min-width:0; }
  #content .cfg-info-row strong { overflow-wrap:anywhere; }
  #content .cfg-info-row>.btn,
  #content .cfg-protect>.btn { width:100%; justify-content:center; }
  #content .cfg-protect { align-items:stretch; }
  #content .cfg-panel-head { align-items:stretch; flex-direction:column; }
  #content .cfg-panel-head .btn { width:100%; justify-content:center; }

  /* Rodapé fixo das fichas: preserva ação e não invade a largura. */
  .orc-form-footer {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    padding:8px 10px;
    gap:8px;
  }
  .orc-form-footer .btn { min-height:44px; }
}

/* Ajustes finais do cartão e da tabela clássica de Faturamento, medidos
   contra a composição atual do Lizy. O alerta de homologação continua
   separado e não altera a malha do cartão original. */
@media (min-width:769px) and (max-width:1199px) {
  #content.fat-classic-host .fat-waiting-card {
    display:block !important;
    box-sizing:border-box;
    width:1024.3px !important;
    min-height:129.5px !important;
    height:129.5px !important;
    margin:0 0 19.475px 2.5px !important;
    padding:0 !important;
    overflow:hidden;
  }
  #content.fat-classic-host .fat-waiting-header {
    box-sizing:border-box;
    width:1024.3px;
    height:54.3px;
    padding:29.2px 26px 0;
  }
  #content.fat-classic-host .fat-waiting-title {
    display:flex;
    align-items:center;
    width:261.8px;
    height:25px;
  }
  #content.fat-classic-host .fat-waiting-symbol {
    display:flex;
    align-items:center;
    justify-content:flex-start;
    box-sizing:border-box;
    width:25px;
    height:25px;
    margin-right:16.2px;
  }
  #content.fat-classic-host .fat-waiting-symbol i {
    color:#009ef7;
    font-size:13px;
    line-height:13px;
  }
  #content.fat-classic-host .fat-waiting-title a {
    color:#7e8299;
    font:500 16.25px/20px Poppins,sans-serif;
    letter-spacing:.232143px;
    white-space:nowrap;
    text-decoration:none;
  }
  #content.fat-classic-host .fat-waiting-body {
    box-sizing:border-box;
    width:1024.3px;
    height:75.3px;
    padding:19.5px 29.2px 0;
  }
  #content.fat-classic-host .fat-waiting-body > div {
    box-sizing:border-box;
    width:965.8px;
    height:20px;
    margin:0 0 9.75px;
    color:#181c32;
    font:600 23px/20px Poppins,sans-serif;
    letter-spacing:.232143px;
    white-space:nowrap;
  }
  #content.fat-classic-host .fat-aguardando-card .table-wrap {
    box-sizing:border-box;
    width:977.2px;
    margin-left:0;
    overflow-x:hidden;
  }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table {
    box-sizing:border-box;
    width:977.2px;
    min-width:977.2px;
    table-layout:fixed;
    transform:translate(-.8px,-.8px);
  }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th,
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table td {
    box-sizing:border-box;
  }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th { height:48.4px; }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th:nth-child(1),
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table td:nth-child(1) { width:106.7px; }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th:nth-child(2),
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table td:nth-child(2) { width:350.5px; }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th:nth-child(3),
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table td:nth-child(3) { width:220px; }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th:nth-child(4),
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table td:nth-child(4) { width:150px; }
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table th:nth-child(5),
  #content.fat-classic-host .fat-aguardando-card .fat-classic-table td:nth-child(5) { width:150px; }
}

/* Faturamento clássico: referência observada no Lizy em 1074×698. O aviso
   de homologação permanece visível, mas não deve empurrar a fila nem criar
   uma segunda composição diferente da tela original. */
@media (min-width:769px) and (max-width:1199px) {
  #content.fat-classic-host {
    position: relative;
    padding-top: 0 !important;
  }
  #content.fat-classic-host .fat-classic-top {
    box-sizing: border-box;
    height: 84.75px;
    margin: 0;
    align-items: flex-start;
  }
  #content.fat-classic-host .fat-classic-top .tabs {
    box-sizing: border-box;
    width: 359px;
    min-width: 359px;
    height: 84.75px;
    flex: 0 0 359px;
    gap: 19.5px;
    padding-top: 29px;
    margin: 0;
    overflow: visible;
  }
  #content.fat-classic-host .fat-classic-top .tabs .tab {
    box-sizing: border-box;
    width: 160px;
    min-width: 160px;
    height: 45px;
    flex: 0 0 160px;
    padding: 10px 18px;
    border-radius: 7px;
    font: 600 14px/21px Poppins, sans-serif;
  }
  #content.fat-classic-host .fat-classic-top .fat-new-version {
    box-sizing: border-box;
    width: 111.56px;
    height: 34.34px;
    flex: 0 0 111.56px;
    margin: 24.2px 22.75px 0 0;
    padding: 8.15px 7.5px;
    font: 500 12.025px/18.0375px Poppins, sans-serif;
  }
  #content.fat-classic-host .fat-classic-safety {
    position: absolute;
    z-index: 2;
    top: 2px;
    right: 15px;
    box-sizing: border-box;
    width: 390px;
    max-width: 390px;
    height: 29px;
    margin: 0;
    padding: 4px 9px;
    overflow: hidden;
    white-space: nowrap;
    border-left-width: 3px;
    border-radius: 4px;
  }
  #content.fat-classic-host .fat-classic-safety > div { font: 700 10px/18px Poppins, sans-serif; }
  #content.fat-classic-host .fat-classic-safety small { display: none; }
  #content.fat-classic-host #fat-classic-body {
    width: 100%;
    margin-top: 25px;
  }
  #content.fat-classic-host .fat-waiting-card {
    box-sizing: border-box;
    width: 100%;
    min-height: 129.5px;
    height: 129.5px;
    margin: 0 0 19.475px;
    padding: 24px 28px;
  }
  #content.fat-classic-host .fat-classic-card {
    box-sizing: border-box;
    width: 100%;
    padding: 30.225px 26px 20px;
  }
  #content.fat-classic-host .fat-classic-title h4 {
    font: 600 17.6693px/24px Poppins, sans-serif;
    transform: translate(2.4625px, 2.525px);
  }
  #content.fat-classic-host .fat-classic-search {
    margin-bottom: 24.275px;
  }
  #content.fat-classic-host .fat-classic-title .btn {
    box-sizing: border-box;
    width: 138.44px;
    height: 44.5px;
    margin-right: 20px;
    transform: translate(-1.9625px, 1.15px);
    justify-content: center;
    padding: 8px 10px;
    font: 700 13px/19.5px Poppins, sans-serif;
  }
}

@media (max-width:768px) {
  #content.orc-legacy-host .orc-summary-grid { margin-left:0; width:100%; transform:none; }
  #content.orc-legacy-host .orc-legacy-card { min-height:157px; height:157px; }
  #content.orc-legacy-host .orc-tabs { width:100%; }
  #content.orc-legacy-host .orc-data-card { width:100%; margin-left:0; padding:0 16px 20px; }
  #content.orc-legacy-host .orc-data-card > .section-card { width:100%; height:auto; display:flex; flex-direction:column; }
  #content.orc-legacy-host .orc-data-card > .section-card .section-card-title { margin:22px 0 14px; }
  #content.orc-legacy-host .orc-data-card > .section-card .btn-primary { width:100%; margin:0 0 16px; }
  #content.orc-legacy-host .orc-data-card .view-toolbar { width:100%; height:auto; display:flex!important; flex-wrap:wrap!important; gap:10px!important; padding:0; }
  #content.orc-legacy-host .orc-data-card .view-toolbar > input,
  #content.orc-legacy-host .orc-data-card .view-toolbar > select { flex:1 1 100%; width:100%!important; margin:0!important; }
  #content.orc-legacy-host .orc-data-card .view-toolbar + .table-wrap { width:100%; margin:16px 0 0; overflow-x:auto; }
}

/* Breakpoint tablet/desktop do Lizy (janela entre 769 e 1199 CSS px). */
@media (min-width:769px) and (max-width:1199px) {
  .topbar { min-height:55px; height:55px; padding:0 5.25px; }
  .topbar-left { gap:9.5px; }
  .sidebar-toggle { box-sizing:border-box; width:40px; height:40px; flex:0 0 40px; padding:8px; }
  .topbar-right { box-sizing:border-box; width:353.6px; flex:0 0 353.6px; gap:10px; }
  .topbar-company { width:243.15px; max-width:243.15px; min-height:33.9375px; height:33.9375px; }
  .topbar-avatar { width:42.95px; min-width:42.95px; height:42.95px; flex-basis:42.95px; border-radius:50%; background:#00a3ff; }
  .content { padding:16px 15px 30px !important; }
  #content .prospect-tabs { display:flex; align-items:stretch; width:298.625px; height:55px; margin:0 0 13px; padding:0; }
  #content .prospect-tab { box-sizing:border-box; height:55.4px; flex:0 0 auto; padding:6.5px 20px 6.5px 15px; border:0; border-bottom:1.6px solid #ccc; border-radius:0; background:transparent; color:#a1a5b7; font:600 14.95px/20px Poppins,sans-serif; white-space:nowrap; cursor:pointer; }
  #content .prospect-tab.active { border-bottom-color:#009ef7; color:#009ef7; }
  #content .prospect-list-card { box-sizing:border-box; width:100%; min-height:336.55px; padding:0 28.4625px; border-radius:6px; }
  #content .prospect-list-head { box-sizing:border-box; display:grid; grid-template-columns:397.2px 312.875px 228.55px; gap:24.425px; width:987.475px; height:91.575px; margin:0; padding:21.75px 0 23.725px; align-items:start; }
  #content .prospect-list-head h3 { margin:1px 0 0; font:600 18px/28px Poppins,sans-serif; color:#181c32; }
  #content .prospect-list-head .page-actions { display:contents; }
  #content .prospect-list-head .page-actions .btn { box-sizing:border-box; width:100%; height:44.5px; justify-content:center; border-radius:5px; font:700 13px/19.5px Poppins,sans-serif; }
  #content .prospect-list-head .page-actions .btn-secondary { height:46.1px; }
  #content .prospect-toolbar { display:block; width:987.475px; height:42.55px; margin:0 0 7.475px; }
  #content .prospect-toolbar .search-input { box-sizing:border-box; width:987.475px!important; max-width:none!important; height:42.55px; margin:0; padding:10px 12px; background:#f2f2f2; border:0; border-radius:5px; font:500 14.3px/21.45px Poppins,sans-serif; }
  #content .prospect-list-card .table-wrap { width:992.4px; margin-left:-2.4625px; overflow-x:hidden; }
  #content .prospect-table { width:992.4px; min-width:992.4px; table-layout:fixed; }
  #content .prospect-table th { box-sizing:border-box; height:48.4px; padding:0 12px; background:#fff; color:#a1a5b7; font:600 15px/22px Roboto,sans-serif; }
  #content .prospect-table th:nth-child(1), #content .prospect-table td:nth-child(1) { width:81.7375px; }
  #content .prospect-table th:nth-child(2), #content .prospect-table td:nth-child(2) { width:590.6625px; }
  #content .prospect-table th:nth-child(3), #content .prospect-table td:nth-child(3) { width:170px; }
  #content .prospect-table th:nth-child(4), #content .prospect-table td:nth-child(4) { width:150px; }
  #content .prospect-table td { height:76.75px; }
  #content .prospect-pager { box-sizing:border-box; width:992.4px; height:56.8px; margin-left:-2.4625px; padding:0; justify-content:flex-end; }
  #content .prospect-tab:nth-child(1) { min-width:142.35px; }
  #content .prospect-tab:nth-child(2) { min-width:156.275px; }
}

#content .prospect-tab:nth-child(1) { min-width:142.35px; }
#content .prospect-tab:nth-child(2) { min-width:156.275px; }
#content .prospect-list-card { padding-bottom:13px; }
#content .prospect-table .td-empty { padding:26.175px 12px!important; }
#content .prospect-table .td-empty h4 { margin:0; }

/* Auditoria Lizy — listas e assistentes de Logística */
.logistica-lista-card{display:block;padding:26px;border-radius:10px;background:#fff}
.section-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.section-card-head .section-card-title{margin:0;font-size:18px;font-weight:700;color:#181c32}
.logistica-filtros{display:grid;grid-template-columns:minmax(260px,1fr) 165px 165px 180px;gap:16px;margin-bottom:12px}
.logistica-filtros input,.logistica-filtros select{min-height:44px;background:#f5f6f8;border:0;border-radius:6px;color:#3f4254;padding:0 14px}
.logistica-acoes{white-space:nowrap}
.logistica-acoes .btn-icon,.acao-devolucao{border:0;background:transparent;width:34px;height:34px;border-radius:7px}
.logistica-acoes .doc-pdf{color:#009ef7}.logistica-acoes .doc-xml{color:#ffc700}.logistica-acoes .acao-ok,.acao-devolucao{color:#50cd89}.logistica-acoes .acao-nao{color:#f1416c}
.table-pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;color:#7e8299;font-size:12px;margin-top:12px}
.wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 22px;padding:4px 0 18px;border-bottom:1px solid #eff2f5}
.wizard-step{border:0;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;color:#a1a5b7;padding:8px;cursor:pointer}
.wizard-step span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f1f3f6;color:#7e8299;font-weight:700}
.wizard-step.active,.wizard-step.done{color:#181c32}.wizard-step.active span{background:#009ef7;color:#fff}.wizard-step.done span{background:#50cd89;color:#fff}
.check-line{display:flex;align-items:center;gap:8px;color:#3f4254;font-size:13px}
.et-entrada-item,.etd-volume{align-items:flex-end}.et-entrada-item>.btn-icon,.etd-volume>.btn-icon{margin-bottom:16px;flex:0 0 34px}
@media(max-width:980px){.logistica-filtros{grid-template-columns:1fr 1fr}.wizard-steps{grid-template-columns:1fr}.section-card-head{align-items:flex-start;flex-direction:column}}
input:focus, select:focus, textarea:focus { outline: none; border-color: #009ef7; box-shadow: 0 0 0 3px rgba(0,158,247,.15); }
label { display: block; font-size: 12px; font-weight: 600; color: #a1a5b7; margin-bottom: 4px; text-transform: uppercase; letter-spacing: .3px; }
textarea { resize: vertical; }
/* ─── LOGIN ────────────────────────────────────────────────────────────────── */
.page-login { min-height: 100vh; display: flex; }
.login-brand {
  flex: 1; background: #000; display: flex; align-items: center; justify-content: center;
}
.login-logo { display: flex; align-items: center; gap: 16px; color: #fff; }
.login-logo i { color: #009ef7; font-size: 56px; }
.login-logo span { font-size: 64px; font-weight: 700; letter-spacing: -1px; }
.login-logo sup { font-size: 20px; font-weight: 400; }
.login-panel {
  flex: 1; display: flex; align-items: center; justify-content: center; background: #f5f8fa;
}
.login-box {
  background: #fff; border-radius: 16px; padding: 48px 44px; width: 420px;
  box-shadow: 0 10px 40px rgba(0,0,0,.06);
}
.login-title { font-size: 26px; font-weight: 700; color: #181c32; text-align: center; margin-bottom: 32px; }
.login-box .form-group input {
  background: #f1f4f9; border: 1px solid #f1f4f9; border-radius: 8px; padding: 14px 16px; font-size: 15px;
}
.login-forgot { text-align: right; margin: 6px 0 22px; }
.login-forgot a { color: #009ef7; font-size: 13px; text-decoration: none; }
.login-erro { color: #f1416c; font-size: 13px; margin-top: 8px; min-height: 18px; text-align: center; }
.login-lang { margin-top: 28px; color: #a1a5b7; font-size: 14px; display: flex; align-items: center; gap: 8px; }
.btn-full { width: 100%; padding: 14px; font-size: 15px; }
@media (max-width: 768px) { .login-brand { display: none; } }

/* ─── APP LAYOUT ───────────────────────────────────────────────────────────── */
.app { display: flex; height: 100vh; overflow: hidden; }

/* ─── SIDEBAR ──────────────────────────────────────────────────────────────── */
.sidebar {
  width: 260px; background: #1e1e2d; color: #9899ac; display: flex; flex-direction: column;
  flex-shrink: 0; overflow: hidden; transition: width .25s;
}
.sidebar.collapsed { width: 70px; }

.sidebar-logo {
  display: flex; align-items: center; gap: 10px; padding: 20px 22px;
  font-weight: 700; font-size: 18px; color: #fff; min-height: 65px;
}
.logo-icon { font-size: 22px; color: #009ef7; flex-shrink: 0; }
.logo-text { white-space: nowrap; overflow: hidden; }
.sidebar.collapsed .logo-text { display: none; }

.sidebar-nav { flex: 1; overflow-y: auto; padding: 8px 0; }
.sidebar-nav::-webkit-scrollbar { width: 4px; }
.sidebar-nav::-webkit-scrollbar-thumb { background: #2b2b40; border-radius: 4px; }

/* Section labels */
.nav-section-label {
  font-size: 11px; font-weight: 700; letter-spacing: 1px; color: #4b5675;
  padding: 18px 22px 6px; white-space: nowrap; overflow: hidden; text-transform: uppercase;
}
.sidebar.collapsed .nav-section-label { visibility: hidden; height: 16px; padding: 8px 0 0; }

/* Nav items */
.nav-item {
  display: flex; align-items: center; gap: 11px; padding: 11px 22px;
  color: #9899ac; transition: all .15s; cursor: pointer; white-space: nowrap;
  font-size: 14.3px; font-weight: 500; position: relative;
}
.nav-item:hover { color: #fff; }
.nav-item-disabled { cursor: not-allowed; opacity: .55; }
.nav-item-disabled:hover { color: inherit; background: transparent; }
.nav-item.active { color: #fff; background: #009ef7; border-radius: 6px; margin: 2px 12px; padding: 9px 10px; }
.nav-item i { width: 20px; text-align: center; flex-shrink: 0; font-size: 14px; }

/* Accordion parent (Financeiro, Comercial, etc.) */
.nav-accordion {
  display: flex; align-items: center; gap: 10px; padding: 9px 22px;
  color: #9899ac; cursor: pointer; white-space: nowrap; font-size: 13px; font-weight: 500;
  transition: color .15s; user-select: none;
}
.nav-accordion:hover { color: #fff; }
.nav-accordion i.menu-icon { width: 20px; text-align: center; flex-shrink: 0; font-size: 14px; }
.nav-accordion .chevron {
  margin-left: auto; font-size: 10px; transition: transform .2s; color: #4b5675;
}
.nav-accordion.open { color: #fff; }
.nav-accordion.open .chevron { transform: rotate(90deg); color: #009ef7; }

/* Accordion children */
.nav-sub { display: none; padding-left: 20px; }
.nav-sub.open { display: block; }
.nav-sub .nav-item { padding: 7px 22px; font-size: 13px; }
.nav-sub .nav-item::before {
  content: ''; width: 6px; height: 6px; border-radius: 50%; background: #4b5675;
  flex-shrink: 0; transition: background .15s;
}
.nav-sub .nav-item:hover::before { background: #009ef7; }
.nav-sub .nav-item.active::before { background: #fff; }
.nav-sub .nav-item.active { background: #009ef7; }

/* Fila items (in Serviços) */
.fila-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.fila-badge {
  margin-left: auto; background: #2b2b40; color: #9899ac;
  font-size: 10px; padding: 2px 8px; border-radius: 20px; font-weight: 600;
}
.nav-item.active .fila-badge { background: rgba(255,255,255,.2); color: #fff; }

/* Sidebar user */
.sidebar-user {
  display: flex; align-items: center; gap: 8px; padding: 14px 16px;
  border-top: 1px solid #2b2b40;
}
.user-info { display: flex; align-items: center; gap: 8px; overflow: hidden; flex: 1; }
.user-avatar {
  width: 36px; height: 36px; border-radius: 8px; background: #009ef7;
  color: #fff; display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 14px; flex-shrink: 0;
}
.user-name { font-size: 13px; color: #fff; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.user-cargo { font-size: 11px; color: #4b5675; }
.sidebar.collapsed .user-info > :not(.user-avatar) { display: none; }
.sidebar.collapsed .nav-item span:not(.fila-dot):not(.fila-badge),
.sidebar.collapsed .nav-accordion span { display: none; }
.sidebar.collapsed .nav-accordion .chevron { display: none; }

/* ─── MAIN ─────────────────────────────────────────────────────────────────── */
.main { flex: 1; min-width: 0; display: flex; flex-direction: column; overflow: hidden; background: #f5f8fa; }

/* ─── TOPBAR ───────────────────────────────────────────────────────────────── */
.topbar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 24px; background: #fff; border-bottom: 1px solid #eff2f5;
  min-height: 55px; flex-shrink: 0;
}
.topbar-left { display: flex; align-items: center; gap: 12px; }
.topbar-right { display: flex; align-items: center; gap: 14px; }

.breadcrumb { display: flex; align-items: center; gap: 6px; font-size: 13px; color: #a1a5b7; }
.breadcrumb a { color: #009ef7; font-weight: 500; }
.breadcrumb a:hover { text-decoration: underline; }
.breadcrumb i { font-size: 8px; color: #b5b5c3; }
.bc-active { color: #181c32; font-weight: 600; }

.sidebar-toggle { display: none; background: none; border: none; cursor: pointer; padding: 6px 8px; border-radius: 6px; color: #a1a5b7; font-size: 16px; }
.sidebar-toggle:hover { background: #f5f8fa; color: #181c32; }

.topbar-company { padding: 6px 12px; border: 1px solid #e4e6ef; border-radius: 6px; font-size: 12px; color: #5e6278; background: #fff; max-width: 240px; }
.topbar-notif { position: relative; background: none; border: none; cursor: pointer; font-size: 16px; color: #a1a5b7; padding: 6px; }
.topbar-notif:hover { color: #009ef7; }
.topbar-avatar {
  width: 36px; height: 36px; border-radius: 8px; background: #009ef7;
  color: #fff; display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 13px; cursor: pointer;
}

/* ─── CONTENT ──────────────────────────────────────────────────────────────── */
.content { flex: 1; width: 100%; min-width: 0; max-width: 100%; overflow-y: auto; padding: 24px; }

.empty-state { display: flex; flex-direction: column; align-items: center; justify-content: center;
  height: 60%; color: #a1a5b7; gap: 12px; }

/* ─── BUTTONS ──────────────────────────────────────────────────────────────── */
.btn {
  display: inline-flex; align-items: center; gap: 8px; padding: 13px 20px;
  border: none; border-radius: 6px; cursor: pointer; font-weight: 600;
  font-size: 14px; transition: all .15s;
}
.btn:active { transform: scale(0.97); }
.btn-primary { background: #009ef7; color: #fff; }
.btn-primary:hover { background: #0095e8; }
.btn-secondary { background: #f5f8fa; color: #5e6278; }
.btn-secondary:hover { background: #eff2f5; }
.btn-success { background: #50cd89; color: #fff; }
.btn-success:hover { background: #47be7d; }
.btn-danger { background: #f1416c; color: #fff; }
.btn-danger:hover { background: #d9214e; }
.btn-sm { padding: 9px 15px; font-size: 13.5px; }
.btn-icon {
  background: none; border: none; cursor: pointer; padding: 5px 8px; border-radius: 6px;
  color: #a1a5b7; font-size: 14px; transition: all .15s;
}
.btn-icon:hover { background: #f5f8fa; color: #009ef7; }

/* ─── FORM ─────────────────────────────────────────────────────────────────── */
.form-group { flex: 1; min-width: 0; margin-bottom: 16px; }
.form-group label { font-size: 13.5px; }
.form-group input, .form-group select, .form-group textarea { font-size: 14px; }
.form-row { display: flex; gap: 14px; flex-wrap: wrap; }

/* ─── PAGE HEAD ────────────────────────────────────────────────────────────── */
.page-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-bottom: 20px; flex-wrap: wrap;
}
.page-title { font-size: 24px; font-weight: 700; color: #181c32; }
.page-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* ─── TABS (status tabs like PCP, DESMONTAGEM etc) ─────────────────────────── */
.tabs {
  display: flex; gap: 0; background: #fff; border-radius: 8px; padding: 4px;
  margin-bottom: 20px; flex-wrap: wrap; border: 1px solid #eff2f5;
}
.tab {
  background: none; border: none; padding: 13px 20px; font-size: 14px; font-weight: 600;
  color: #a1a5b7; cursor: pointer; border-radius: 6px; transition: all .15s;
  letter-spacing: 0; white-space: nowrap;
}
.tab:hover { color: #181c32; background: #f5f8fa; }
.tab.active { color: #fff; background: #009ef7; }

/* ─── STAT CARDS ───────────────────────────────────────────────────────────── */
.cards-grid { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 20px; }
.card {
  background: #fff; border-radius: 12px; display: flex; align-items: center;
  border: 1px solid #eff2f5; transition: box-shadow .2s;
  min-width: 260px; max-width: 380px; flex: 1; padding: 18px 20px; gap: 18px;
}
.card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.06); }
.card-side-panel {
  width: 108px; height: 108px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 30px; flex-shrink: 0; color: #fff;
}
.card-blue .card-side-panel   { background: #009ef7; }
.card-orange .card-side-panel { background: #ffc700; }
.card-green .card-side-panel  { background: #50cd89; }
.card-red .card-side-panel    { background: #f1416c; }
.card-body { display: flex; flex-direction: column; justify-content: center; }
.card-label { font-size: 14px; font-weight: 600; color: #a1a5b7; margin-bottom: 5px; }
.card-value { font-size: 28px; font-weight: 700; color: #181c32; }
.card-sub   { font-size: 12px; color: #b5b5c3; margin-top: 2px; }

/* Configurações da empresa. A classe .card genérica representa um indicador
   estreito; nesta tela os cartões são formulários e ocupam a largura útil. */
.fiscal-config-page {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}
.fiscal-config-subtitle {
  margin-top: 2px;
  color: #a1a5b7;
  font-size: 13px;
}
.fiscal-config-steps {
  display: grid;
  grid-template-columns: repeat(6, minmax(110px, 1fr));
  margin-bottom: 16px;
  overflow-x: auto;
  background: #fff;
  border: 1px solid #eff2f5;
  border-radius: 6px;
}
.fiscal-config-steps span {
  min-width: 110px;
  padding: 13px 10px;
  color: #a1a5b7;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  white-space: nowrap;
  border-bottom: 3px solid transparent;
}
.fiscal-config-steps span.active {
  color: #009ef7;
  border-bottom-color: #009ef7;
}

/* ─── ASSISTENTE DE NF — STEPPER NUMERADO (igual ao mat-horizontal-stepper
   do Lizy: círculo com o número + rótulo ao lado, ligados por um traço).
   Classes próprias nfse-wiz-*: NÃO herdam nada de .fiscal-config-steps, que é
   a faixa de abas da tela de Configuração Fiscal. */
.nfse-wiz-steps {
  display: flex;
  align-items: center;
  margin: -24px -24px 20px;      /* sangra os 24px de padding do .modal-body */
  padding: 14px 22px;
  overflow-x: auto;
  border-bottom: 1px solid #eff2f5;
  background: #fff;
}
.nfse-wiz-step {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  padding: 4px 0;
  color: #a1a5b7;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}
/* o traço de ligação é o ::before do passo seguinte; ele é que estica */
.nfse-wiz-step + .nfse-wiz-step { flex: 1 1 auto; }
.nfse-wiz-step + .nfse-wiz-step::before {
  flex: 1 1 18px;
  min-width: 14px;
  height: 1px;
  margin: 0 12px;
  background: #e4e6ef;
  content: "";
}
.nfse-wiz-step-num {
  display: inline-grid;
  place-items: center;
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  margin-right: 9px;
  border-radius: 50%;
  background: #e4e6ef;
  color: #7e8299;
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  line-height: 1;
}
.nfse-wiz-step-lab { font-style: normal; }
.nfse-wiz-step.is-atual { color: var(--lizy-ink); font-weight: 600; }
.nfse-wiz-step.is-atual .nfse-wiz-step-num {
  background: var(--lizy-primary);
  color: #fff;
  box-shadow: 0 0 0 4px rgba(0, 163, 255, .15);
}
/* concluídos: bolinha azul com ✓ no lugar do número (Font Awesome 6 Free) */
.nfse-wiz-step.is-feito { color: #3f4254; }
.nfse-wiz-step.is-feito .nfse-wiz-step-num {
  background: var(--lizy-primary);
  color: #fff;
  font-size: 0;
}
.nfse-wiz-step.is-feito .nfse-wiz-step-num::after {
  font-family: "Font Awesome 6 Free";
  font-size: 11px;
  font-weight: 900;
  content: "\f00c";
}
.nfse-wiz-step.is-feito::before,
.nfse-wiz-step.is-atual::before { background: var(--lizy-primary); }
@media (max-width: 760px) {
  .nfse-wiz-steps { padding: 12px 14px; }
  .nfse-wiz-step .nfse-wiz-step-lab { display: none; }
  .nfse-wiz-step.is-atual .nfse-wiz-step-lab { display: inline; }
}
.fiscal-config-card {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: none;
  padding: 20px 22px;
  margin-bottom: 14px;
  box-sizing: border-box;
}
.fiscal-config-card .form-row { align-items: flex-end; }
.fiscal-config-card .form-group { min-width: 150px; }
.fiscal-config-card .form-group > label {
  display: block;
  margin-bottom: 6px;
  color: #5e6278;
  font-weight: 600;
  line-height: 1.3;
}
.fiscal-config-card input,
.fiscal-config-card select,
.fiscal-config-card textarea {
  width: 100%;
  box-sizing: border-box;
}
.fiscal-config-alert { background: #fffdf5; }

@media (max-width: 900px) {
  .fiscal-config-steps { grid-template-columns: repeat(6, 135px); }
  .fiscal-config-card .form-row { flex-direction: column; gap: 0; }
  .fiscal-config-card .form-group { width: 100%; max-width: none !important; }
}

/* Menu ⋯ dos Orçamentos (flutuante, fixed p/ não ser cortado pela tabela) */
.orc-menu { position: fixed; z-index: 3000; box-sizing:border-box; width:210px; min-width:210px; background:#fff; border-radius:6.175px;
  box-shadow:0 0 50px rgba(82,63,105,.15); padding:13px 9.75px; border:0; }
.orc-menu a { box-sizing:border-box; display:flex; width:164.5px; min-height:40.9625px; margin:8.45px 13px; padding:10px 9.75px; align-items:flex-start; font:500 13.975px/20.9625px Roboto,sans-serif; color:#7e8299; cursor:pointer; white-space:normal; }
.orc-menu a:hover { background: #f5f8fa; color: #009ef7; }
.orc-menu a.ok { color: #50cd89; }  .orc-menu a.ok:hover { background: #e8fff3; }
.orc-menu a.danger { color: #f1416c; } .orc-menu a.danger:hover { background: #fff5f8; }

/* Rodapé fixo do form de Orçamento (totais + Salvar), igual ao original */
.orc-form-footer { position: fixed; bottom: 0; left: 260px; right: 0; z-index: 900;
  background: #fff; border-top: 1px solid #eff2f5; box-shadow: 0 -4px 20px rgba(0,0,0,.06);
  padding: 14px 28px; display: flex; align-items: center; justify-content: space-between;
  gap: 14px; flex-wrap: wrap; }
.orc-form-footer-linked { justify-content: flex-end; padding-right: 34px; }
.lizy-os-header {
  position: relative;
  display: block;
  max-width: none;
  margin-bottom: 16px;
  padding: 28px 30px 26px;
  overflow: visible;
}
.lizy-os-title-row { min-height: 42px; display: flex; align-items: center; margin: 0 0 4px 96px; }
.lizy-os-title-row h2 { margin: 0; color: #3f4254; font-size: 22px; font-weight: 400; }
.lizy-os-title-icon {
  position: absolute; left: 28px; top: -8px; width: 64px; height: 64px;
  display: grid; place-items: center; border-radius: 2px; background: #009ef7; color: #fff;
  box-shadow: 0 8px 18px rgba(0,158,247,.24); font-size: 19px;
}
.lizy-os-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0 28px; align-items: end; }
.lizy-os-grid-top { grid-template-columns: 1fr 1fr 1fr .8fr; }
.lizy-os-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.lizy-os-grid-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }
.lizy-os-span-2 { grid-column: span 2; }
.lizy-os-header .form-group { margin: 0 0 14px; }
.lizy-os-header .form-group label {
  display: block; margin: 0; color: #a1a5b7; font-size: 11.5px; font-weight: 400;
  letter-spacing: 0; text-transform: none;
}
.lizy-os-header .form-group input,
.lizy-os-header .form-group select {
  width: 100%; min-height: 34px; padding: 6px 0 5px; border: 0; border-bottom: 1px solid #dfe2e8;
  border-radius: 0; background: transparent; color: #3f4254; font-size: 13.5px; box-shadow: none;
}
.lizy-os-header .form-group input:focus,
.lizy-os-header .form-group select:focus { border-bottom-color: #009ef7; outline: 0; }
.lizy-os-header .form-group input:disabled { color: #3f4254; opacity: 1; }
.lizy-os-line { width: 100%; }
.lizy-os-check {
  display: flex; align-items: center; gap: 8px; min-height: 34px; margin: 0 0 14px;
  color: #a1a5b7; font-size: 13.5px; font-weight: 400; text-transform: none; letter-spacing: 0;
}
.lizy-os-check input { width: 18px; height: 18px; accent-color: #009ef7; }
.lizy-os-equipment-set {
  margin: 4px 0 16px;
  padding: 16px 0 14px;
  border-top: 1px solid #eff2f5;
  border-bottom: 1px solid #eff2f5;
}
.lizy-os-equipment-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.lizy-os-equipment-head h3 { margin: 0; color: #3f4254; font-size: 16px; font-weight: 500; }
.lizy-os-equipment-set .table { margin: 0; }
.lizy-arrival-block { margin-top: 16px; padding-top: 16px; border-top: 1px solid #eff2f5; }
.lizy-arrival-block > div:first-child { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.lizy-arrival-block h3 { margin: 0; color: #3f4254; font-size: 20px; font-weight: 400; }
.lizy-arrival-block > span { display: block; margin-top: 10px; color: #a1a5b7; font-size: 12px; }
.lizy-arrival-photos { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 12px; }
.lizy-arrival-photos img { width: 112px; height: 78px; object-fit: cover; border-radius: 4px; border: 1px solid #e4e6ef; cursor: zoom-in; }
@media (max-width: 980px) {
  .lizy-os-grid,.lizy-os-grid-top,.lizy-os-grid-3,.lizy-os-grid-4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .lizy-os-span-2 { grid-column: span 2; }
}
@media (max-width: 620px) {
  .lizy-os-header { padding: 24px 18px; }
  .lizy-os-title-row { margin-left: 70px; }
  .lizy-os-title-icon { left: 18px; width: 52px; height: 52px; }
  .lizy-os-grid,.lizy-os-grid-top,.lizy-os-grid-3,.lizy-os-grid-4 { grid-template-columns: 1fr; }
  .lizy-os-span-2 { grid-column: span 1; }
}
.of-item { gap: 8px; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; }
.of-item .form-group { flex: 0 0 auto !important; }
.of-item .form-group label { display: block; white-space: nowrap; line-height: 1.15; font-size: 10px !important; }
.of-item .form-group:nth-child(2) { flex: 1 1 150px !important; min-width: 150px !important; }
.of-item .form-group:nth-child(7) { flex: 1 1 120px !important; min-width: 110px !important; }
#of-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  width: 100%;
}
#of-tabs .tab {
  flex: 1 1 100px;
  width: auto;
  min-width: 96px;
  min-height: 66px;
  padding: 10px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
}
#of-tabs .tab i { font-size: 18px; }
@media (max-width: 768px) { .orc-form-footer { left: 0; } }
@media (max-width: 560px) {
  #of-tabs { gap: 6px; }
  #of-tabs .tab { flex: 1 1 92px; min-width: 88px; min-height: 60px; font-size: 12px; }
}

/* Criação de O.S.: composição visual observada no formulário Motor A.C. do Lizy. */
.os-form-title-row {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-bottom: 18px;
}
.os-form-title-row h2 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
}
.os-form-title-icon {
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  margin-top: -36px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #009ef7;
  box-shadow: 0 8px 18px rgba(0, 158, 247, .25);
  font-size: 20px;
}
.os-form-create {
  border-radius: 0;
  border-left: 2px solid #009ef7;
  padding-top: 24px !important;
}
.os-form-create .os-form-title-row h2 {
  color: #5e6278;
  font-size: 18px;
  font-weight: 400;
}
.os-form-create .form-row,
.os-form-entry-create .form-row {
  gap: 22px;
}
.os-form-create .os-tipo-group { max-width: 180px; }
.os-form-create .os-prazo-group { max-width: 175px; }
.os-form-create .os-urgente-group { max-width: 90px; }
.os-form-create .form-group,
.os-form-entry-create .form-group {
  margin-bottom: 13px;
}
.os-form-create .form-group label,
.os-form-entry-create .form-group label {
  margin-bottom: 0;
  color: #7e8299;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}
.os-form-create input,
.os-form-create select,
.os-form-create textarea,
.os-form-entry-create input,
.os-form-entry-create select,
.os-form-entry-create textarea {
  width: 100%;
  padding: 7px 0;
  border: 0;
  border-bottom: 1px solid #e4e6ef;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.os-form-create input:focus,
.os-form-create select:focus,
.os-form-create textarea:focus,
.os-form-entry-create input:focus,
.os-form-entry-create select:focus,
.os-form-entry-create textarea:focus {
  border-bottom-color: #009ef7;
  box-shadow: none;
  outline: 0;
}
.os-form-create textarea {
  min-height: 38px;
  height: 38px;
}
.os-form-entry-create,
.os-form-photo-create {
  border-radius: 0;
}
.os-form-entry-create h3 {
  color: #3f4254;
}
.orc-form-footer.os-form-create-footer {
  position: static;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: auto;
  margin-top: 0;
  padding: 14px 0;
  background: transparent;
  border-top: 0;
  box-shadow: none;
}
@media (max-width: 760px) {
  .os-form-title-row { gap: 14px; }
  .os-form-title-icon { width: 48px; height: 48px; flex-basis: 48px; margin-top: -24px; }
  .os-form-create .form-row,
  .os-form-entry-create .form-row { gap: 0; }
}

/* ─── CADASTROS FOLDER CARDS (igual ao Lizy original) ─────────────────────── */
.cad-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px;
}
.cad-folder {
  background: #fff; border-radius: 12px; border: 1px solid #eff2f5;
  padding: 32px 16px; display: flex; flex-direction: column; align-items: center;
  text-decoration: none; transition: box-shadow .15s; min-height: 180px; justify-content: center;
}
.cad-folder:hover { box-shadow: 0 6px 20px rgba(0,0,0,.08); }
.cad-folder-icon { font-size: 58px; color: #b5bcd0; margin-bottom: 14px; transition: color .15s; }
.cad-folder:hover .cad-folder-icon { color: #009ef7; }
.cad-folder-title { font-size: 20px; font-weight: 600; color: #3f4254; text-align: center; transition: color .15s; }
.cad-folder:hover .cad-folder-title { color: #009ef7; }
.cad-folder-sub { font-size: 13px; color: #a1a5b7; margin-top: 6px; text-align: center; }
.cad-folder-hidden { display: none !important; }

/* ─── CALENDÁRIO (Agenda) ─────────────────────────────────────────────────── */
.cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; background: #e4e6ef; border: 1px solid #e4e6ef; border-radius: 8px; overflow: hidden; }
.cal-head { background: #f5f8fa; padding: 10px 8px; text-align: center; font-weight: 600; font-size: 13px; color: #3f4254; }
.cal-cell { background: #fff; min-height: 92px; padding: 6px; cursor: pointer; transition: background .1s; overflow: hidden; }
.cal-cell:hover { background: #f9fbff; }
.cal-fora { background: #fafafa; }
.cal-fora .cal-num { color: #c4c9d4; }
.cal-hoje { background: #fff8dd; }
.cal-num { font-size: 13px; color: #3f4254; margin-bottom: 4px; }
.cal-ev { color: #fff; font-size: 11px; padding: 2px 6px; border-radius: 4px; margin-bottom: 2px; cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ─── SECTION CARD (like the PCP header in fila) ──────────────────────────── */
.section-card {
  background: #fff; border-radius: 12px; padding: 20px 24px; margin-bottom: 20px;
  border: 1px solid #eff2f5; display: flex; align-items: center; gap: 16px;
}
.section-card-icon {
  width: 50px; height: 50px; border-radius: 10px; background: #009ef7; color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0;
}
.section-card-title { font-size: 18px; font-weight: 700; color: #181c32; }

/* ─── SEARCH BAR ───────────────────────────────────────────────────────────── */
.view-toolbar {
  display: flex; align-items: center; gap: 10px; margin-bottom: 16px; flex-wrap: wrap;
}
.search-input {
  max-width: 400px; padding: 10px 14px; border-radius: 8px; border: 1px solid #e4e6ef;
  font-size: 13px; background: #fff;
}
.search-input::placeholder { color: #b5b5c3; }

/* ─── TABLE ────────────────────────────────────────────────────────────────── */
.table-wrap { background: #fff; border-radius: 12px; border: 1px solid #eff2f5; overflow: hidden; }
.table { width: 100%; border-collapse: collapse; }
.table thead { background: #fafafa; }
.table th {
  padding: 14px 16px; text-align: left; font-size: 15px; font-weight: 700; color: #3f4254;
  letter-spacing: 0; border-bottom: 1px solid #eff2f5;
  white-space: nowrap;
}
.table td { padding: 14px 16px; border-bottom: 1px solid #f5f8fa; vertical-align: middle; font-size: 14px; }
.table tbody tr:last-child td { border-bottom: none; }
.table tbody tr:hover { background: #f9fbfc; }
.td-empty { text-align: center; color: #a1a5b7; padding: 40px !important; }
small.text-muted { color: #b5b5c3; }

/* ─── BADGES ───────────────────────────────────────────────────────────────── */
.badge { display: inline-block; padding: 4px 10px; border-radius: 6px; font-size: 11px; font-weight: 700; }
.badge-green { background: #e8fff3; color: #50cd89; }
.badge-red   { background: #fff5f8; color: #f1416c; }
.badge-orange { background: #fff8dd; color: #ffc700; }
.badge-blue  { background: #e8f4ff; color: #009ef7; }
.badge-count { background: #f5f8fa; color: #5e6278; padding: 2px 10px; border-radius: 20px; font-size: 12px; }
.badge-gray  { background: #f5f8fa; color: #7e8299; }
.text-danger, .text-red { color: #f1416c !important; }

/* ─── DROPDOWN FUNÇÕES (PCP ⋯ menu) ────────────────────────────────────────── */
.dropdown-fn { position: relative; display: inline-block; }
.dropdown-fn-menu {
  display: none; position: absolute; right: 0; top: 100%; z-index: 200;
  background: #fff; border: 1px solid #e4e6ef; border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0,0,0,.12); min-width: 180px; padding: 4px 0;
}
.dropdown-fn-menu.open { display: block; }
.dropdown-fn-menu.up { top: auto; bottom: 100%; }
.dropdown-fn-menu button {
  display: block; width: 100%; text-align: left; padding: 8px 16px;
  background: none; border: none; font-size: 13px; color: #3f4254;
  cursor: pointer; transition: background .1s;
}
.dropdown-fn-menu button:hover { background: #f5f8ff; color: #009ef7; }
/* Submenu de COMPONENTE do equipamento (⋯ do PCP) */
.dropdown-fn-menu .fn-sub { display: none; background: #f9fbfe; border-top: 1px solid #eff2f5; border-bottom: 1px solid #eff2f5; }
.dropdown-fn-menu .fn-sub.open { display: block; }
.dropdown-fn-menu .fn-sub button { padding: 6px 16px 6px 28px; font-size: 12.5px; }
.orc-combo { position: relative; }
.orc-combo-hidden { display: none !important; }
.orc-combo-input { width: 100%; box-sizing: border-box; }
.orc-combo-options { display: none; position: absolute; z-index: 30; top: calc(100% + 3px); left: 0; right: 0; max-height: 250px; overflow: auto; padding: 4px 0; background: #fff; border: 1px solid #e4e6ef; border-radius: 4px; box-shadow: 0 8px 20px rgba(0,0,0,.12); }
.orc-combo-options.open { display: block; }
.orc-combo-option { display: block; width: 100%; padding: 8px 12px; border: 0; background: transparent; color: #3f4254; text-align: left; font-size: 13px; cursor: pointer; }
.orc-combo-option:hover { background: #f5f8ff; color: #009ef7; }
.orc-combo-empty { padding: 9px 12px; color: #a1a5b7; font-size: 12px; }
.ofi-table-scroll { width: 100%; overflow-x: auto; margin-bottom: 8px; }
.ofi-table-head, .ofi-table-body .of-item { min-width: 1040px; display: grid; grid-template-columns: 82px minmax(170px, 2fr) 66px 100px 105px minmax(120px, 1.2fr) 64px 64px 100px 36px; gap: 6px; align-items: end; }
.ofi-table-head { padding: 0 4px 6px; color: #a1a5b7; font-size: 10px; font-weight: 700; white-space: nowrap; text-transform: uppercase; }
.ofi-table-body .of-item { padding: 7px 4px; border-top: 1px solid #eff2f5; }
.ofi-table-body .of-item .form-group { min-width: 0 !important; max-width: none !important; width: auto !important; }
.ofi-table-body .of-item .form-group label { display: none; }
.ofi-table-body .of-item .btn-icon { align-self: center; }
@media (max-width: 760px) {
  .ofi-table-head { display: none; }
  .ofi-table-body .of-item { min-width: 0; display: flex; flex-wrap: wrap; }
  .ofi-table-body .of-item .form-group label { display: block; }
}
.text-green { color: #50cd89 !important; }
.text-muted { color: #b5b5c3; }

/* ─── MODALS ───────────────────────────────────────────────────────────────── */
.modal-overlay {
  position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 1000;
  display: flex; align-items: center; justify-content: center; padding: 20px;
}
.modal-box {
  background: #fff; border-radius: 12px; width: 100%; max-width: 560px;
  max-height: 90vh; display: flex; flex-direction: column; box-shadow: 0 20px 60px rgba(0,0,0,.15);
}
.modal-lg { max-width: 780px; }
.modal-xl { max-width: 1120px; }
.modal-sm { max-width: 400px; }
.modal-vincular-nota { max-width: 1000px; }
.modal-vincular-nota .btn-success { color:#4caf50; background:transparent; border:0; font-size:21px; }
.modal-vincular-nota .modal-footer { display:none; }
.modal-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 24px; border-bottom: 1px solid #eff2f5; flex-shrink: 0;
}
.modal-header h2 { font-size: 16px; font-weight: 700; color: #181c32; }
.modal-body { padding: 24px; overflow-y: auto; flex: 1; }
.modal-footer {
  display: flex; gap: 8px; justify-content: flex-end;
  padding: 14px 24px; border-top: 1px solid #eff2f5; flex-shrink: 0;
}

/* ─── STUB AREA ────────────────────────────────────────────────────────────── */
.stub-area {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  background: #fff; border: 1px dashed #e4e6ef; border-radius: 12px;
  padding: 60px 20px; color: #a1a5b7; gap: 12px; text-align: center;
}
.nav-empty { padding: 8px 22px; font-size: 12px; color: #4b5675; font-style: italic; }

/* ─── TOAST ────────────────────────────────────────────────────────────────── */
.toast {
  position: fixed; bottom: 24px; right: 24px; z-index: 9999;
  padding: 12px 20px; border-radius: 8px; font-weight: 600; font-size: 13px;
  box-shadow: 0 4px 20px rgba(0,0,0,.15); animation: slideUp .25s ease;
  background: #181c32; color: #fff;
}
.toast-ok  { background: #50cd89; }
.toast-err { background: #f1416c; }
@keyframes slideUp { from { opacity:0; transform:translateY(12px) } to { opacity:1; transform:none } }

/* ─── FOOTER ───────────────────────────────────────────────────────────────── */
.app-footer {
  padding: 12px 24px; text-align: center; font-size: 12px; color: #a1a5b7;
  border-top: 1px solid #eff2f5; background: #fff; flex-shrink: 0;
}

/* ─── KANBAN (Dashboard Serviços) ───────────────────────────────────────────── */
.kanban-wrap { display:flex; gap:16px; overflow-x:auto; padding-bottom:16px; align-items:flex-start; }
.kanban-col { min-width:240px; max-width:280px; background:#f8f9fa; border-radius:8px; flex-shrink:0; }
.kanban-col-header { padding:10px 14px; font-weight:700; font-size:13px; color:#181c32; background:#e4e6ef; border-radius:8px 8px 0 0; display:flex; align-items:center; gap:8px; }
.kanban-col-body { padding:8px; display:flex; flex-direction:column; gap:6px; max-height:calc(100vh - 260px); overflow-y:auto; }
.kanban-card { background:#fff; border-radius:6px; padding:10px 12px; border:1px solid #eff2f5; cursor:pointer; transition:box-shadow .15s; }
.kanban-card:hover { box-shadow:0 2px 8px rgba(0,0,0,.1); }
.kanban-card.kanban-urg { border-left:3px solid #f1416c; }
.kanban-num { font-weight:700; font-size:13px; color:#181c32; }
.kanban-cli { font-size:12px; color:#5e6278; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.kanban-cat { font-size:11px; color:#a1a5b7; margin-top:2px; }
.kanban-dias { font-size:11px; font-weight:600; margin-top:4px; }
.kanban-more { text-align:center; font-size:12px; color:#a1a5b7; padding:8px 0; }

/* ─── CATEGORY PILLS (Análise) ──────────────────────────────────────────────── */
.cat-pills { display:flex; gap:6px; flex-wrap:wrap; }
.cat-pill { padding:4px 12px; border-radius:20px; border:1px solid #e4e6ef; background:#fff; font-size:12px; font-weight:500; cursor:pointer; color:#5e6278; transition:all .15s; }
.cat-pill:hover { background:#f5f8ff; border-color:#009ef7; color:#009ef7; }
.cat-pill.active { background:#009ef7; border-color:#009ef7; color:#fff; }

/* ─── FINANCEIRO VISÃO GERAL ─────────────────────────────────────────────────── */
.fin-section-label { font-size:13px; font-weight:700; color:#181c32; margin:20px 0 8px; text-transform:uppercase; letter-spacing:.5px; }
.fin-chart-placeholder { background:#f8f9fa; border:1px dashed #e4e6ef; border-radius:8px; height:160px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:#a1a5b7; font-size:13px; margin-bottom:4px; }
.fin-chart { background:#fff; border:1px solid #eff2f5; border-radius:8px; padding:16px; margin-bottom:4px; }
.fin-top-list { display:flex; flex-direction:column; gap:6px; }
.fin-top-item { display:flex; justify-content:space-between; align-items:center; padding:8px 12px; background:#fff; border:1px solid #eff2f5; border-radius:6px; font-size:13px; }
.fin-relatorios-grid { display:flex; flex-wrap:wrap; gap:8px; }
.card-sub { font-size:11px; color:#a1a5b7; margin-top:2px; }

/* ─── BTN SMALL ─────────────────────────────────────────────────────────────── */
.btn-sm { padding:9px 15px; font-size:13.5px; }

/* ─── OS DETALHE ────────────────────────────────────────────────────────────── */
.os-detalhe-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; }
@media (max-width:900px) { .os-detalhe-grid { grid-template-columns:1fr; } }

/* ─── RESPONSIVO DO MENU (o Lizy transforma o aside em drawer até o breakpoint xl) ── */
@media (max-width: 1199px) {
  /* O layout original oculta o menu lateral abaixo de 1200px e o abre pelo
     hamburger; manter o aside ocupando largura fixa deixava a tela estreita
     diferente da referência. */
  .sidebar {
    position: fixed; top: 0; left: 0; bottom: 0; z-index: 1000;
    width: 260px !important; transform: translateX(-100%); transition: transform .25s;
    box-shadow: 4px 0 24px rgba(0,0,0,.35);
  }
  .sidebar.mobile-open { transform: translateX(0); }
  .sidebar-toggle { display: inline-flex !important; font-size: 20px; }
}

/* ─── RESPONSIVO MOBILE ───────────────────────────────────────────────────── */
@media (max-width: 768px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
  .app { height: auto; min-height: 100vh; overflow: visible; }
  .main { overflow: visible; }
  /* Conteúdo ocupa tela toda */
  .content { padding: 12px !important; }
  .topbar { padding: 10px 12px; gap: 8px; }
  .topbar-company { max-width: 130px; font-size: 12px; }
  .topbar-right { gap: 8px; }
  /* Tabelas rolam horizontalmente */
  .table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .table { min-width: 560px; }
  /* Cards/section em coluna */
  .cards-grid { flex-direction: column; }
  .card { max-width: none; }
  .section-card { flex-direction: column; align-items: flex-start; gap: 10px; }
  .section-card .btn, .page-actions .btn { font-size: 13px; padding: 8px 12px; }
  .page-head, .page-actions { flex-wrap: wrap; gap: 8px; }
  /* Modal full-width */
  .modal-box { width: 95vw !important; max-width: 95vw !important; max-height: 90vh; }
  .form-row { flex-direction: column; gap: 0; }
  /* Tabs roláveis */
  .tabs { overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; }
  .tabs .tab { white-space: nowrap; }
  /* Calendário compacto */
  .cal-cell { min-height: 60px; font-size: 11px; }
  .cad-grid { grid-template-columns: 1fr 1fr; }
}

.os-info-table { width:100%; border-collapse:collapse; }
.os-info-table tr { border-bottom:1px solid #eff2f5; }
.os-info-table tr:last-child { border-bottom:none; }
.os-info-table th { font-size:11px; font-weight:700; color:#a1a5b7; padding:6px 0; text-align:left; width:40%; }
.os-info-table td { font-size:13px; color:#181c32; padding:6px 0; }

.section-title { font-size:13px; font-weight:700; color:#5e6278; text-transform:uppercase; letter-spacing:.5px; margin-bottom:10px; }

/* Fotos grid */
.os-fotos-grid { display:flex; flex-wrap:wrap; gap:10px; margin-top:4px; }
.os-foto-item { position:relative; text-align:center; }
.os-foto-item img { width:110px; height:82px; object-fit:cover; border-radius:6px; border:1px solid #e4e6ef; display:block; transition:transform .15s; }
.os-foto-item img:hover { transform:scale(1.04); }
.os-foto-leg { font-size:10px; color:#a1a5b7; margin-top:3px; }
.os-foto-item .btn-icon-red { position:absolute; top:2px; right:2px; background:rgba(241,65,108,.8); color:#fff; border-radius:50%; width:20px; height:20px; padding:0; display:flex; align-items:center; justify-content:center; font-size:10px; opacity:0; transition:opacity .15s; }
.os-foto-item:hover .btn-icon-red { opacity:1; }

/* Arquivos da O.S.: mesma composição da aba "Relatórios da Ordem" do Lizy. */
.an-arq-form { display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; margin:4px 0 14px; }
.an-arq-form #an-arq-file { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.an-arq-file-label { cursor:pointer; margin:0; }
.an-arq-name { min-width:220px; flex:1 1 240px; height:34px; padding:7px 10px; border:1px solid #e4e6ef; border-radius:6px; color:#3f4254; font-size:13px; }
.an-arq-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin:4px 0 10px; color:#7e8299; font-size:12px; }
.an-arq-toolbar label { display:flex; align-items:center; gap:6px; }
.an-arq-toolbar select, .an-arq-toolbar input { height:30px; padding:4px 8px; border:1px solid #e4e6ef; border-radius:5px; color:#3f4254; background:#fff; }
.an-arq-toolbar input { min-width:170px; }
.an-arq-table { width:100%; border-collapse:collapse; }
.an-arq-table th { font-weight:700; color:#5e6278; background:#f5f8fa; }
.an-arq-table td, .an-arq-table th { padding:9px 10px; border-bottom:1px solid #eff2f5; }
.an-arq-table th:nth-child(2), .an-arq-table td:nth-child(2) { width:190px; text-align:center; }
.an-arq-table th:nth-child(3), .an-arq-table td:nth-child(3) { width:90px; text-align:center; }
.an-arq-table a { color:#009ef7; }
.an-arq-pager { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:10px; color:#7e8299; font-size:12px; }
.an-arq-pager > div { display:flex; gap:6px; }
.an-arq-pager button[disabled] { opacity:.45; cursor:not-allowed; }

/* Row urgente */
.tr-urgente td, .red-row td { color: #f1416c !important; font-weight: 500; }
.tr-urgente td strong, .red-row td strong { color: #f1416c !important; }

/* td-fns botões */
.td-fns { white-space:nowrap; }

/* Botão expandir linha ⊕ */
.btn-expand {
  background: none; border: none; cursor: pointer; padding: 0;
  color: #009ef7; font-size: 18px; line-height: 1; transition: color .15s;
}
.btn-expand:hover { color: #0081d5; }

/* Seta de ordenação nos headers */
.sort-arrow { color: #c4c9d4; font-size: 10px; margin-left: 3px; }
.fila-sort { display:block; width:100%; appearance:none; border:0; background:transparent; padding:0; margin:0; color:inherit; font:inherit; cursor:pointer; text-align:inherit; white-space:normal; }
.fila-sort span { color:#c4c9d4; font-size:10px; margin-left:3px; }

/* DataTables do Lizy mantém as duas setas visíveis mesmo sem ordenação. */
.analise-table th.sorting { position:relative; }
.analise-table th.sorting::before,
.analise-table th.sorting::after {
  position:absolute; bottom:15.3px; color:#333; font:400 17px/1 Poppins,sans-serif;
  opacity:.3; pointer-events:none;
}
.analise-table th.sorting::before { content:'↑'; right:17px; }
.analise-table th.sorting::after { content:'↓'; right:8.5px; }
.analise-table th.sorting_asc::before,
.analise-table th.sorting_desc::after { opacity:1; }

/* Controle responsivo e detalhe nos mesmos três campos ocultos da fila. */
.analise-table td.analise-control { position:relative; }
.analise-table td.analise-control::before {
  content:'+'; position:absolute; top:12px; left:4px; display:block;
  box-sizing:content-box; width:14px; height:14px; border:1.6px solid #fff;
  border-radius:14px; background:#0275d8; box-shadow:0 0 3px #444;
  color:#fff; font:700 12px/14px Arial,sans-serif; text-align:center;
}
.analise-table tr.parent td.analise-control::before { content:'-'; background:#d33333; }
.analise-table tr.child td.child { width:auto!important; padding:0 8px 8px!important; background:#fff; }
.analise-table ul.dtr-details { display:inline-block; margin:0; padding:0; list-style:none; }
.analise-table ul.dtr-details > li { padding:.5em 0; border-bottom:1px solid #efefef; }
.analise-table ul.dtr-details > li:last-child { border-bottom:0; }
.analise-table .dtr-title { display:inline-block; min-width:130px; font-weight:700; }
.analise-table .dtr-data { display:inline-block; }

/* Linha expandida com detalhes da OS */
.analise-detail-row { background: #f9fbff; padding: 12px 20px; border-bottom: 2px solid #e8f4ff; }
.analise-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 8px; font-size: 13px; }
.analise-detail-grid .detail-label { color: #a1a5b7; display: block; font-size: 11px; margin-bottom: 2px; }


/* ─── BOTÃO DE IMPRESSORA FIXO (igual ao do Lizy: azul, canto inferior esquerdo) ── */
.btn-print-fixo {
  /* fica na área de conteúdo (depois da sidebar), como no Lizy — não por cima do menu */
  position: fixed; left: 278px; bottom: 18px; z-index: 900;
  width: 56px; height: 56px; border-radius: 8px; border: none; cursor: pointer;
  background: #009ef7; color: #fff; font-size: 22px;
  box-shadow: 0 6px 18px rgba(0,158,247,.35);
  display: flex; align-items: center; justify-content: center;
  transition: background .15s, transform .1s;
}
.btn-print-fixo:hover { background: #0095e8; }
.btn-print-fixo:active { transform: scale(.95); }
body:has(.sidebar.collapsed) .btn-print-fixo { left: 88px; }
@media (max-width: 1199px) { .btn-print-fixo { left: 18px; } }
@media print { #print-fixo-wrap { display: none !important; } }
/* menu que abre acima do botão de impressora — os 3 documentos do Lizy */
.print-fixo-menu {
  position: fixed; left: 278px; bottom: 84px; z-index: 901;
  background: #fff; border-radius: 8px; min-width: 210px; padding: 6px 0;
  box-shadow: 0 8px 28px rgba(0,0,0,.18); border: 1px solid #eff2f5;
}
body:has(.sidebar.collapsed) .print-fixo-menu { left: 88px; }
.print-fixo-menu button {
  display: block; width: 100%; text-align: left; background: none; border: none;
  padding: 12px 18px; font-size: 14px; color: #3f4254; cursor: pointer; white-space: nowrap;
}
.print-fixo-menu button:hover { background: #f5f8fa; color: #009ef7; }
@media (max-width: 1199px) { .print-fixo-menu { left: 18px; } }

/* ─── WORKSPACE DE ANÁLISE / ORÇAMENTO — o Lizy usa tudo em tamanho grande ───── */
.an-pane h3 { font-size: 26px !important; font-weight: 400 !important; margin-bottom: 18px !important; }
.an-pane h4 { font-size: 17px !important; }
.an-pane .table th { font-size: 14px; text-transform: none; letter-spacing: 0; color: #3f4254; padding: 16px 14px; }
.an-pane .table td { font-size: 14px; padding: 16px 14px; }
.an-pane .form-group label { font-size: 13.5px; }
.an-pane .form-group input, .an-pane .form-group select, .an-pane .form-group textarea { font-size: 14px; padding: 9px 4px; }
.an-pane table.tab-analise th, .an-pane table.tab-analise td { font-size: 13.5px; padding: 10px 8px; }
.an-pane .btn { font-size: 14px; padding: 10px 18px; }
.an-pane .btn-sm { font-size: 13.5px; padding: 9px 16px; }
/* faixa de abas do workspace maior, como no original (id=an-tabs) */
#an-tabs .tab { font-size: 14px !important; padding: 13px 20px !important; }
/* tabelas de ensaio dentro dos painéis (elétrica/mecânica/laboratório) */
.an-pane table td, .an-pane table th { font-size: 13.5px; }
.an-pane input, .an-pane select, .an-pane textarea { font-size: 13.5px; }

/* ─── LIZY: FIDELIDADE VISUAL DO APP ORIGINAL ─────────────────────────────── */
:root {
  --lizy-primary: #00a3ff;
  --lizy-ink: #181c32;
  --lizy-muted: #a1a5b7;
  --lizy-canvas: #f7f7f7;
  --lizy-aside: #0b0c10;
  --lizy-aside-active: #2a2a3c;
}

html { font-size: 13px; }
body {
  background: var(--lizy-canvas);
  color: var(--lizy-ink);
  line-height: 1.5;
}

.main { background: var(--lizy-canvas); }
.sidebar {
  width: 265px;
  background: var(--lizy-aside);
  color: #c5c5d8;
}
.sidebar.collapsed { width: 75px; }
.sidebar-logo {
  height: 70px;
  min-height: 70px;
  padding: 0 25px;
  background: var(--lizy-aside);
  gap: 0;
}
.sidebar-brand-full {
  display: inline-flex;
  width: auto;
  height: 35px;
}
.sidebar-brand-mark {
  display: none;
  width: 34px;
  height: 35px;
}
.sidebar.collapsed .sidebar-brand-full { display: none; }
.sidebar.collapsed .sidebar-brand-mark { display: inline-grid; }

.sidebar-nav { padding: 20px 0 8px; }
.nav-item,
.nav-accordion {
  width: calc(100% - 26px);
  min-height: 40px;
  margin: 8.45px 13px;
  padding: 10px;
  gap: 10px;
  border-radius: 10px;
  color: #c5c5d8;
  font-size: 13px;
  font-weight: 400;
}
.nav-item:hover,
.nav-accordion:hover,
.nav-accordion.open { color: #fff; }
.nav-accordion.active-group {
  color: #fff;
  background: var(--lizy-aside-active);
}
.nav-accordion.active-group i.menu-icon { color: var(--lizy-primary); }
.nav-item.active {
  width: calc(100% - 26px);
  margin: 8.45px 13px;
  padding: 10px;
  background: var(--lizy-aside-active);
  border-radius: 10px;
  color: #fff;
}
.nav-item i,
.nav-accordion i.menu-icon {
  width: 20px;
  color: #8f90a6;
  font-size: 16px;
}
.nav-item.active i { color: var(--lizy-primary); }
.nav-accordion .chevron { color: #8f90a6; }
.nav-section-label {
  height: auto;
  padding: 10px 25px 2px;
  color: #838390;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
}
.nav-sub { padding-left: 0; }
.nav-sub .nav-item {
  width: calc(100% - 26px);
  margin: 8.45px 13px;
  padding: 10px 10px 10px 34.75px;
  font-size: 13px;
}
.nav-sub .nav-item::before {
  width: 5px;
  height: 5px;
  background: #838390;
}
.nav-sub .nav-item.active { background: var(--lizy-aside-active); }
.sidebar-user { display: none; }

/* Medidas do menu observadas no Lizy: cada seção ocupa uma linha de 40px e
   o submenu preserva as margens dos links, em vez de colapsá-las. */
.nav-section-label { width: 100%; height: 40px; box-sizing: border-box; padding: 10px 0 10px 25px; }
.nav-accordion { margin: 8.45px 13px; }
.nav-sub.open { display: flex; flex-direction: column; }

.topbar {
  min-height: 70px;
  height: 70px;
  padding: 0 30px;
  background: var(--lizy-canvas);
  border: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .03);
}
.topbar-left { gap: 14px; }
.breadcrumb {
  color: var(--lizy-ink);
  font-size: 14px;
  font-weight: 600;
}
.breadcrumb a { color: var(--lizy-ink); font-weight: 600; }
.breadcrumb a:hover { color: var(--lizy-primary); text-decoration: none; }
.breadcrumb i { color: #b5b5c3; font-size: 9px; }
.bc-active { color: var(--lizy-primary); font-weight: 600; }
.sidebar-toggle {
  color: #a1a5b7;
  font-size: 16px;
  padding: 6px 8px;
}
.topbar-right { gap: 10px; }
.topbar-company {
  width: 243px;
  max-width: 243px;
  min-height: 34px;
  padding: 7px 39px 7px 10px;
  border: 0;
  border-radius: 6px;
  background: #f2f2f2;
  color: #5e6278;
  font-size: 12px;
  font-weight: 500;
}
.topbar-notif {
  width: 35px;
  height: 35px;
  padding: 0;
  color: #a1a5b7;
}
.topbar-avatar {
  width: 35px;
  min-width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 6px;
  background: #2a2a3c;
  font-size: 12px;
}
.topbar-avatar img,.user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}

.content {
  /* O Lizy usa o container interno com 30 px laterais nessa largura; os
     57 px anteriores deslocavam todas as telas e deixavam Cadastros estreito. */
  padding: 30px;
  /* O contêiner externo do Lizy não cria uma segunda barra horizontal. As
     abas continuam roláveis pelo próprio .tabs, mas a composição da página
     nunca deve empurrar a viewport alguns pixels para os lados. */
  overflow-x: hidden;
}
.page-title {
  color: var(--lizy-ink);
  font-size: 20px;
  font-weight: 500;
  line-height: 32px;
}
.app-footer {
  min-height: 46px;
  padding: 13px 30px;
  background: transparent;
  color: #a1a5b7;
  font-size: 13px;
}

.cad-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 24px;
  row-gap: 13px;
}
.cad-folder {
  min-height: 195px;
  padding: 26px;
  border: 0;
  border-radius: 6px;
  box-shadow: 0 0 20px rgba(76, 87, 125, .02);
}
.cad-folder:hover { box-shadow: 0 0 20px rgba(76, 87, 125, .08); }
.cad-folder-icon {
  width: 75px;
  height: 80px;
  margin: 0 0 16.25px;
  opacity: .72;
}
.cad-folder-icon img {
  display: block;
  width: 75px;
  height: 75px;
  filter: invert(69%) sepia(8%) saturate(591%) hue-rotate(199deg) brightness(93%);
}
.cad-folder:hover .cad-folder-icon {
  color: inherit;
  opacity: 1;
}
.cad-folder:hover .cad-folder-icon img {
  filter: invert(49%) sepia(98%) saturate(3043%) hue-rotate(169deg) brightness(101%) contrast(101%);
}
.cad-folder-title {
  color: #a1a5b7;
  font-size: 16.25px;
  font-weight: 600;
  line-height: 20px;
  margin: 0 0 6.5px;
}
.cad-folder-sub {
  margin-top: 0;
  color: #b5b5c3;
  font-size: 12.35px;
  line-height: 20px;
}
.cad-folder:hover .cad-folder-title { color: var(--lizy-primary); }

.card,
.section-card,
.table-wrap {
  border-color: transparent;
  border-radius: 6px;
  box-shadow: 0 0 20px rgba(76, 87, 125, .02);
}
.btn { border-radius: 6px; }
.btn-primary { background: var(--lizy-primary); }
.btn-primary:hover { background: #0095e8; }
.search-input {
  background: #f2f2f2;
  border: 0;
  border-radius: 6px;
}
.table thead { background: #fff; }
.table th {
  color: #333;
  font-size: 17px;
  font-weight: 300;
  text-transform: none;
  background: transparent;
}
.table td {
  color: #3f4254;
  font-size: 16px;
}

.login-brand { background: var(--lizy-aside); }
.fluitec-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 27px;
  font-weight: 700;
  letter-spacing: .9px;
  line-height: 1;
  white-space: nowrap;
}
.fluitec-brand-mark {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  color: #fff;
  background: linear-gradient(145deg, #00a3ff, #0bb7af);
  border-radius: 10px 10px 10px 3px;
  box-shadow: 0 6px 18px rgba(0, 163, 255, .25);
  font-size: 20px;
  font-weight: 700;
}
.sidebar-logo > .sidebar-brand-mark { display: none; }
.sidebar.collapsed .sidebar-logo > .sidebar-brand-mark { display: inline-grid; }
.fluitec-wordmark-login {
  gap: 18px;
  font-size: 62px;
  letter-spacing: 3px;
}
.fluitec-wordmark-login .fluitec-brand-mark {
  width: 74px;
  height: 74px;
  flex-basis: 74px;
  border-radius: 21px 21px 21px 6px;
  font-size: 43px;
}

@media (max-width: 1199px) {
  .cad-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .content { padding: 30px; }
}
@media (max-width: 991px) {
  .sidebar { width: 265px; }
  .cad-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .topbar { min-height: 70px; height: 70px; padding: 0 12px; }
  .topbar-company { width: 190px; max-width: 42vw; }
  .content { padding: 24px 16px; }
  .cad-grid { grid-template-columns: 1fr; gap: 13px; }
  .cad-folder { min-height: 195px; }
}

/* Cadastros e listagens observados lado a lado com o original. */
.sidebar-logo {
  align-items: flex-start;
  padding: 27.5px 25px 7.5px;
}
.nav-accordion { margin-top: 10.15px; margin-bottom: 10.15px; }
#content > .page-title { margin-bottom: 0 !important; }
.cad-grid {
  /* O LIZY usa a largura interna completa do container (medida em 18/08/2026:
     1.162px de linha, cartões de aproximadamente 266px e 25px entre colunas). */
  width: calc(100% + 4px);
  margin-left: -2px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: auto;
  align-items: start;
  column-gap: 24px;
  row-gap: 20px;
}
.cad-folder {
  width: auto;
  /* Não esticar uma linha inteira pela maior descrição. No Lizy cada cartão
     mantém a altura natural do seu próprio conteúdo (aprox. 195 px). */
  height: auto;
  min-height: 195px;
}

.tabs {
  gap: 20px;
  padding: 0;
  margin-bottom: 28px;
  background: transparent;
  border: 0;
  border-radius: 0;
  scrollbar-width: thin;
  scrollbar-color: #f1f0f0 transparent;
}
.tabs::-webkit-scrollbar { height: 6px; }
.tabs::-webkit-scrollbar-track { background: transparent; }
.tabs::-webkit-scrollbar-thumb { background: #f1f0f0; border-radius: 6px; }
.tab {
  min-width: 275px;
  padding: 15px 30px 14px;
  background: #fff;
  border: 1px dashed #e4e6ef;
  border-radius: 10px;
  color: #3f4254;
  font-size: 16px;
  font-weight: 500;
}
.tab:hover { background: #fff; color: var(--lizy-primary); }
.tab.active {
  background: #fff;
  color: #3f4254;
  border: 1px solid #e4e6ef;
  border-bottom: 4px solid var(--lizy-primary);
}
/* Abas de fila (PCP | SERVIÇOS EXTERNOS | LIMPEZA / CORTE | ...) são CAIXA ALTA no Lizy.
   Via CSS de propósito: text-transform não altera o textContent, do qual
   linhaServicosPlano() e planoSetoresCampos() dependem em caixa mista. */
.tab[data-sid] { text-transform: uppercase; }

.data-card {
  padding: 26px 28px 20px;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 0 20px rgba(76, 87, 125, .02);
}
.data-card .page-head { margin-bottom: 28px; }
.data-card .page-title {
  font-size: 18px;
  font-weight: 600;
}
.data-card .view-toolbar { margin-bottom: 16px; }
.data-card .search-wide {
  width: 100%;
  max-width: none;
  min-height: 52px;
  padding: 12px 16px;
  background: #f2f2f2;
  color: #3f4254;
  font-weight: 500;
  text-transform: uppercase;
}
.data-card .table-wrap {
  border: 0;
  box-shadow: none;
  overflow-x: auto;
}
.data-card .table th { padding: 14px 8px; }
.data-card .table td { padding: 15px 8px; }
.data-card .table td:first-child,
.data-card .table th:first-child { width: 90px; }
.data-card .table td:nth-child(3),
.data-card .table th:nth-child(3) { width: 210px; }
.data-card .table td:last-child,
.data-card .table th:last-child {
  width: 90px;
  text-align: center;
}
.data-card .table tbody td:nth-child(2) strong {
  font-weight: 400;
  text-transform: capitalize;
}
.table-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 14px;
  color: #7e8299;
  font-size: 12px;
}
.pager-left,
.pager-buttons {
  display: flex;
  align-items: center;
  gap: 10px;
}
.pager-left select {
  width: 60px;
  padding: 6px 24px 6px 8px;
  border: 0;
  background: #f2f2f2;
}
.pager-buttons button {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #7e8299;
  cursor: pointer;
}
.pager-buttons button:hover:not(:disabled) {
  background: #f2f2f2;
  color: var(--lizy-primary);
}
.pager-buttons button:disabled {
  color: #d8d8e5;
  cursor: default;
}

/* Comercial / Orçamentos */
.orc-v2-host { overflow-x:hidden !important; }
.orc-legacy-actions { display:flex; justify-content:flex-end; margin-bottom:14px; }
.orc-v2-head { width:calc(100% + 54px); margin-left:-27px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:16px; }
.orc-v2-head h2 { margin:0; color:#181c32; font-size:22px; font-weight:700; }
.orc-v2-head-actions { display:flex; gap:10px; flex-wrap:wrap; }
.orc-v2-tabs { width:calc(100% + 54px); margin-left:-27px; display:flex; gap:4px; overflow-x:auto; padding:4px; margin-bottom:18px; background:#fff; border:1px solid #eff2f5; border-radius:10px; box-shadow:0 0 20px rgba(76,87,125,.03); }
.orc-v2-tab { flex:1 1 0; min-width:0; min-height:43px; padding:9px 8px; border:0; border-radius:7px; background:transparent; color:#a1a5b7; font-size:13px; font-weight:600; white-space:nowrap; cursor:pointer; }
.orc-v2-tab:hover { color:#009ef7; background:#f5f8fa; }
.orc-v2-tab.active { color:#fff; background:#009ef7; box-shadow:0 3px 8px rgba(0,158,247,.2); }
.orc-v2-tab span { display:inline-grid; place-items:center; min-width:22px; height:22px; margin-left:5px; padding:0 5px; border-radius:12px; background:#eef1f5; color:#a1a5b7; font-size:11px; }
.orc-v2-tab.active span { background:rgba(255,255,255,.24); color:#fff; }
.orc-v2-kpis { width:calc(100% + 54px); margin-left:-27px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:#fff; border:1px solid #eff2f5; border-radius:10px 10px 0 0; box-shadow:0 0 20px rgba(76,87,125,.03); }
.orc-v2-kpis > div { min-height:118px; padding:20px 22px; border-right:1px solid #eff2f5; }
.orc-v2-kpis > div:last-child { border-right:0; }
.orc-v2-kpis span,.orc-v2-kpis strong,.orc-v2-kpis small { display:block; }
.orc-v2-kpis span { color:#7e8299; font-size:12px; }
.orc-v2-kpis span i { color:#a1a5b7; font-size:10px; }
.orc-v2-kpis strong { margin-top:10px; color:#181c32; font-size:24px; line-height:1; }
.orc-v2-kpis strong.money { color:#009ef7; }
.orc-v2-kpis strong.yellow { color:#d69e00; }
.orc-v2-kpis strong.red { color:#f1416c; }
.orc-v2-kpis small { margin-top:7px; color:#a1a5b7; font-size:11px; }
.orc-v2-queue { width:calc(100% + 54px); margin-left:-27px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; min-height:60px; padding:15px 22px; background:#fff; border-top:1px solid #eff2f5; border-bottom:1px solid #eff2f5; }
.orc-v2-queue > span { color:#7e8299; font-size:12px; white-space:nowrap; }
.orc-v2-progress { display:flex; flex:1 1 250px; min-width:180px; height:8px; overflow:hidden; border-radius:8px; background:#eef1f5; }
.orc-v2-progress i { display:block; height:100%; min-width:0; }
.orc-v2-progress i:nth-child(1) { background:#16a765; }
.orc-v2-progress i:nth-child(2) { background:#f5c400; }
.orc-v2-progress i:nth-child(3) { background:#e17b00; }
.orc-v2-progress i:nth-child(4) { background:#f1416c; }
.orc-v2-legend { display:flex; gap:14px; flex-wrap:wrap; color:#7e8299; font-size:11px; }
.orc-v2-legend b { font-weight:500; white-space:nowrap; }
.orc-v2-legend i { display:inline-block; width:8px; height:8px; margin-right:4px; border-radius:2px; background:#16a765; }
.orc-v2-legend i.b { background:#f5c400; }.orc-v2-legend i.c { background:#e17b00; }.orc-v2-legend i.d { background:#f1416c; }
.orc-v2-legend span { margin-left:3px; font-weight:700; color:#3f4254; }
.orc-v2-toolbar { width:calc(100% + 54px); margin-left:-27px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:22px; background:#fff; }
.orc-v2-toolbar input,.orc-v2-toolbar select { height:44px; min-width:0; padding:0 14px; border:1px solid #eff2f5; border-radius:8px; background:#fff; color:#3f4254; font-size:13px; }
.orc-v2-toolbar input:first-child { flex:1 1 180px; }
.orc-v2-toolbar select { flex:0 1 180px; }
.orc-v2-toolbar input[type=date] { flex:0 1 145px; }
.orc-v2-toolbar .btn { margin-left:auto; }
.orc-v2-table-wrap { width:calc(100% + 54px); margin-left:-27px; background:#fff; border:1px solid #eff2f5; border-radius:0 0 10px 10px; box-shadow:0 0 20px rgba(76,87,125,.03); }
.orc-v2-table { min-width:900px; }
.orc-v2-table th { padding:14px 16px; color:#7e8299; font-size:10px; font-weight:700; letter-spacing:.03em; }
.orc-v2-table td { padding:15px 16px; vertical-align:middle; }
.orc-v2-ref-kicker { color:#a1a5b7; font-size:10px; letter-spacing:.04em; }
.orc-v2-ref { display:block; margin-top:4px; color:#181c32; font-size:14px; }
.orc-v2-muted { margin-top:4px; color:#a1a5b7; font-size:11px; }
.orc-v2-obs { margin-top:5px; color:#3699ff; font-size:11px; cursor:pointer; }
.orc-v2-status { display:inline-flex; align-items:center; gap:6px; padding:6px 9px; border-radius:13px; background:#eef8ff; color:#009ef7; font-size:11px; font-weight:600; white-space:nowrap; }
.orc-v2-status i { width:6px; height:6px; border-radius:50%; background:currentColor; }
.orc-v2-status.ok { background:#e8fff3; color:#1bc5bd; }.orc-v2-status.danger { background:#fff5f8; color:#f1416c; }
.orc-v2-activity { display:block; color:#3f4254; font-size:12px; white-space:nowrap; }.orc-v2-activity.muted { color:#7e8299; }
.orc-v2-activity i { margin-right:5px; color:#a1a5b7; }.orc-v2-table td a { display:block; margin-top:4px; color:#3699ff; font-size:11px; cursor:pointer; }
.orc-v2-funcs { display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.orc-v2-quick { width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:7px; background:#f1faff; color:#009ef7; cursor:pointer; }
.orc-v2-quick:hover { background:#e1f3ff; color:#007dc8; }
.orc-summary-grid {
  width: calc(100% + 50px);
  margin-left: -25px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 25px;
}
.orc-summary-grid .card {
  width: auto;
  min-width: 0;
  max-width: none;
  min-height: 165px;
  padding: 26px;
  align-items: flex-start;
  gap: 14px;
  background: #fff;
  border: 0;
  border-radius: 6px;
  box-shadow: 0 0 20px rgba(76, 87, 125, .03);
}
.orc-summary-grid .card-side-panel {
  width: 36px;
  min-width: 36px;
  height: 36px;
  padding: 0;
  background: transparent !important;
  border-radius: 0;
  font-size: 27px;
  line-height: 36px;
}
.orc-summary-grid .card-blue .card-side-panel { color: #00a3ff; }
.orc-summary-grid .card-orange .card-side-panel { color: #ffc700; }
.orc-summary-grid .card-green .card-side-panel { color: #50cd89; }
.orc-summary-grid .card-red .card-side-panel { color: #f1416c; }
.orc-summary-grid .card-label {
  margin: 3px 0 11px;
  color: #181c32;
  font-size: 14px;
  font-weight: 600;
}
.orc-summary-grid .card-value,
.orc-summary-grid .card-sub {
  color: #3f4254;
  font-size: 13px;
  font-weight: 400;
}
.orc-summary-grid .card-value {
  margin-bottom: 6px;
}
.orc-summary-grid .card.card-active {
  box-shadow: 0 5px 15px rgba(0, 0, 0, .12);
}
.orc-summary-grid .card.card-active .card-label { color: #00a3ff; }
.orc-summary-grid .card-value span {
  font-size: inherit;
  font-weight: 600;
}
.orc-tabs {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  overflow-x: auto;
  padding-bottom: 3px;
}
.orc-data-card {
  width: calc(100% + 54px);
  margin-left: -27px;
}
.orc-tabs .tab {
  flex: 0 0 205px;
  min-width: 205px;
  padding: 14px 10px 13px;
  font-size: 13px;
  text-align: center;
}
.orc-data-card .section-card {
  margin: 0 0 28px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.orc-data-card .view-toolbar {
  align-items: stretch;
}
.orc-data-card .view-toolbar .search-input {
  min-height: 44px;
}
.orc-data-card .view-toolbar input.search-input {
  text-transform: uppercase;
}
/* Dimensões observadas na barra do Lizy: os cinco filtros permanecem na
   mesma linha no viewport desktop e a data final não cai para baixo. */
.orc-data-card .view-toolbar {
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 0;
}
.orc-data-card #busca-orc { flex: 0 0 156px; width: 156px; max-width: 156px; }
.orc-data-card #orc-tipo { flex: 0 0 121px; width: 121px; max-width: 121px; }
.orc-data-card #orc-vend { flex: 0 0 216px; width: 216px; max-width: 216px; }
.orc-data-card #orc-de,
.orc-data-card #orc-ate { flex: 0 0 127px; width: 127px; max-width: 127px; }

@media (max-width: 1199px) {
  .cad-grid {
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: auto;
  }
  .cad-folder { width: auto; }
  .orc-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .tabs { gap: 10px; }
  .tab { min-width: 0; flex: 1; padding: 13px 12px; font-size: 13px; }
  .data-card { padding: 20px 16px; }
  .table-pager,
  .pager-left { align-items: flex-start; flex-direction: column; }
  .orc-summary-grid,
  .orc-data-card { width: 100%; margin-left: 0; }
  .orc-summary-grid { grid-template-columns: 1fr; }
  .orc-summary-grid .card { min-height: 148px; }
  .orc-tabs { width: 100%; }
  .orc-data-card .view-toolbar { flex-wrap: wrap; gap: 10px; }
  .orc-data-card #busca-orc,
  .orc-data-card #orc-tipo,
  .orc-data-card #orc-vend,
  .orc-data-card #orc-de,
  .orc-data-card #orc-ate { flex: 1 1 100%; width: 100%; max-width: none; }
  .orc-v2-kpis { grid-template-columns:1fr; }
  .orc-v2-kpis > div { border-right:0; border-bottom:1px solid #eff2f5; }
  .orc-v2-kpis > div:last-child { border-bottom:0; }
  .orc-v2-toolbar input,.orc-v2-toolbar select,.orc-v2-toolbar input[type=date] { flex:1 1 100%; width:100%; }
  .orc-v2-head,.orc-v2-tabs,.orc-v2-kpis,.orc-v2-queue,.orc-v2-toolbar,.orc-v2-table-wrap { width:100%; margin-left:0; }
}
@media (max-width: 900px) and (min-width: 761px) {
  .orc-v2-tab { flex:0 0 145px; min-width:145px; }
}

/* ─── FILA (#tab-table-wrap): tipografia medida no Lizy original ────────────
   th: 17px / weight 300 / #333 / padding 12px 30px 12px 8px / tt none / bg transparente
   td: 16px / padding 12px 8px 12px 30px  →  linha de 49px (16*1.5 + 12 + 12 + 1px border)
   Especificidade (1,1,1): ganha de .an-pane .table th e de .data-card .table th. */
#tab-table-wrap .table th {
  padding: 12px 30px 12px 8px;
  color: #333;
  font-size: 17px;
  font-weight: 300;
  letter-spacing: 0;
  text-transform: none;
  background: transparent;
}
#tab-table-wrap .table td {
  padding: 12px 8px 12px 30px;
  font-size: 16px;
}
/* Linha de serviços por setor — no original é tr.group.group-end: 14px, #333.
   !important porque o app.js ainda manda font-size/color inline nesse <td>. */
#tab-table-wrap .table tr.group > td,
#tab-table-wrap .table tr.tr-servicos > td {
  font-size: 14px !important;
  color: #333 !important;
}

/* ─── FATURAMENTO CLÁSSICO (mesma hierarquia visual do Lizy) ────────────── */
.fat-classic-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}
.fat-classic-top .tabs {
  width: 345px;
  min-width: 345px;
  flex: 0 0 345px;
  margin: 0;
  flex-wrap: nowrap;
}
.fat-classic-top .tabs .tab { width: 160px; min-width: 160px; flex: 0 0 160px; }
.fat-new-version {
  padding: 9px 12px;
  border: 0;
  background: transparent;
  color: #00a9f4;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
}
.fat-classic-safety {
  max-width: 930px;
  margin-top: -13px;
  padding: 9px 13px;
  box-shadow: none;
}
.fat-waiting-card {
  display: flex;
  align-items: center;
  gap: 24px;
  width: 295px;
  min-height: 145px;
  margin: 0 0 28px;
  padding: 24px 28px;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(76, 87, 125, .07);
  color: #7e8299;
}
.fat-waiting-card > i { color: #00a9f4; font-size: 15px; }
.fat-waiting-card span { display: block; font-size: 17px; font-weight: 600; line-height: 1.1; }
.fat-waiting-card strong { display: block; margin-top: 17px; color: #181c32; font-size: 20px; letter-spacing: 7px; }
.fat-classic-card {
  padding: 26px 27px 20px;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(76, 87, 125, .07);
}
.fat-classic-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
}
.fat-classic-title h4 { margin: 0; color: #181c32; font-size: 17px; }
.fat-classic-search {
  width: 100%;
  height: 42px;
  margin-bottom: 22px;
  padding: 0 14px;
  border: 0;
  border-radius: 5px;
  background: #f5f8fa;
  color: #3f4254;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
.fat-classic-search:focus { box-shadow: 0 0 0 2px rgba(0,158,247,.14); }
.fat-classic-filters {
  display: grid;
  grid-template-columns: minmax(240px, 2fr) minmax(145px, 1fr) 130px 130px;
  gap: 14px;
  align-items: start;
  margin-bottom: 20px;
}
.fat-classic-filters .fat-classic-search { margin: 0; }
.fat-classic-filters select,
.fat-classic-filters input[type="date"] {
  height: 42px;
  border: 1px solid #eff2f5;
  border-radius: 5px;
  background: #fff;
  color: #3f4254;
  font-size: 12px;
}
.fat-classic-table th { color: #a1a5b7; font-size: 12px; }
.fat-classic-table td { color: #3f4254; font-size: 12px; line-height: 1.55; vertical-align: top; }
.fat-classic-table h5 { margin: 0; font-size: 13px; }
.fat-classic-ref {
  display: inline-block;
  padding: 3px 7px;
  border-radius: 4px;
  background: #eef8ff;
  color: #00a9f4;
  font-weight: 700;
  white-space: nowrap;
}
.fat-classic-value { color: #555; font-size: 13px; }
.fat-classic-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 14px;
  color: #7e8299;
  font-size: 11px;
}
.fat-classic-footer button {
  margin-left: 12px;
  padding: 5px 0;
  border: 0;
  background: transparent;
  color: #00a9f4;
  cursor: pointer;
  font-size: 11px;
  font-weight: 600;
}

/* ─── FATURAMENTO V2 ─────────────────────────────────────────────────────── */
.fiscal-test-strip {
  margin-bottom: 16px;
  padding: 12px 16px;
  border-left: 4px solid #ffa800;
  border-radius: 6px;
  background: #fff8dd;
  color: #7e6a00;
  box-shadow: 0 1px 4px rgba(0, 0, 0, .04);
}
.fiscal-test-strip > div { font-weight: 700; font-size: 13px; }
.fiscal-test-strip small { display: block; margin-top: 3px; color: #7e8299; }
.nfa-dropzone { min-height: 86px; border: 2px dashed #d9e2ec; border-radius: 8px; background: #f5faff; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; cursor:pointer; color:#009ef7; }
.nfa-dropzone i { font-size:24px; }
.nfa-dropzone span { color:#7e8299; font-size:12px; }
.link-button { border:0; background:transparent; color:#009ef7; padding:5px 0 0; font-size:12px; cursor:pointer; }
.link-button.success { color:#50cd89; }
.mdfe-layout h3 { margin: 0 0 14px; font-size: 18px; color:#181c32; }
.mdfe-layout h4 { margin: 18px 0 8px; font-size: 14px; color:#181c32; }
.mdfe-steps { grid-template-columns: repeat(7, minmax(90px, 1fr)); margin-bottom: 16px; }

.fat-v2-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid #eff2f5;
  border-radius: 9px;
  background: #fff;
}
.fat-v2-top { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.fat-v2-top .tabs { width:auto; min-width:335px; margin:0; }
.fat-v2-metrics-wrap { position:relative; margin-bottom:16px; }
.fat-eye { position:absolute; z-index:2; top:8px; right:8px; width:30px; height:30px; display:grid; place-items:center; border:1px solid #eff2f5; border-radius:7px; background:#fff; color:#009ef7; cursor:pointer; }
.fat-v2-metrics-four { grid-template-columns: repeat(4, minmax(170px, 1fr)); }
.fat-v2-card {
  position: relative;
  min-height: 104px;
  padding: 17px 20px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  text-align: center;
}
.fat-v2-card + .fat-v2-card { border-left:1px solid #eff2f5; }
.fat-v2-card::before {
  display:none;
}
.fat-v2-card span { display:block; min-height:27px; color:#7e8299; font-size:11px; font-weight:500; }
.fat-v2-card strong { display:block; margin-top:2px; color:#181c32; font-size:17px; line-height:1.2; letter-spacing:.02em; }
.fat-v2-card.fat-blue strong { color:#009ef7; }
.fat-v2-card.fat-red strong { color:#f1416c; }
.fat-v2-card.fat-green strong { color:#50cd89; }
.fat-v2-card.fat-orange strong { color:#ffa800; }
.fat-v2-card strong.fat-hidden-value { letter-spacing:5px; }
.fat-v2-card small { display: block; margin-top: 7px; color: #a1a5b7; font-size: 11px; }
.fat-v2-card.fat-red::before { background: #f1416c; }
.fat-v2-card.fat-gray::before { background: #7e8299; }
.fat-v2-card.fat-green::before { background: #50cd89; }
.fat-v2-card.fat-orange::before { background: #ffa800; }

/* A composição do Lizy usa um único cartão para os indicadores, filtros e
   tabela. O aviso fiscal continua no DOM e o bloqueio permanece no backend;
   ele não ocupa espaço visual para não deslocar a geometria da referência. */
@media (min-width: 1200px) {
  /* A grade de Cadastros ocupa a largura interna completa do Lizy; o ajuste
     de 4px usado para alinhar os cartões não deve criar uma barra horizontal
     no contêiner da página. Tabelas continuam rolando dentro de .table-wrap. */
  .content { overflow-x: hidden; }
  /* Na conta do Lizy os painéis do perfil seguem em uma coluna; as abas
     continuam navegáveis, mas a barra do navegador não aparece na referência. */
  .cfg-profile-grid { grid-template-columns: 1fr; }
  .cfg-profile-grid .cfg-company-list { grid-column: auto; }
  .cfg-main-tabs { scrollbar-width: none; }
  .cfg-main-tabs::-webkit-scrollbar { height: 0; }
  #content.fat-v2-host {
    position: relative;
    padding: 13px 30px 30px !important;
  }
  #content.fat-v2-host .fiscal-test-strip { display: none; }
  #content.fat-v2-host .fat-v2-top { margin-bottom: 13px; }
  #content.fat-v2-host .fat-v2-card-shell {
    width: 100%;
    overflow: hidden;
    border: .8px solid #edeff2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 4px 16px rgba(16,24,40,.05);
  }
  #content.fat-v2-host .fat-v2-metrics-wrap {
    height: 127px;
    margin: 0;
  }
  #content.fat-v2-host .fat-v2-metrics {
    height: 127px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  #content.fat-v2-host .fat-v2-card {
    min-height: 127px;
    padding: 18px 22px 20px;
  }
  #content.fat-v2-host .fat-v2-toolbar {
    height: 138px;
    margin: 0;
    padding: 16px 20px;
    border: 0;
    border-radius: 0;
    background: transparent;
  }
  #content.fat-v2-host .fat-v2-card-shell > .table-wrap {
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
}

.fat-v2-toolbar {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:14px;
  padding: 15px 16px;
  border: 1px solid #eff2f5;
  border-radius: 9px;
  background: #fff;
}
.fat-v2-search {
  display: flex;
  align-items: center;
  flex:0 1 330px;
  max-width:330px;
  margin-bottom:0;
  border: 1px solid #e4e6ef;
  border-radius: 7px;
  background: #fff;
}
.fat-v2-search:focus-within { border-color: #009ef7; box-shadow: 0 0 0 3px rgba(0,158,247,.12); }
.fat-v2-search i { margin-left: 13px; color: #a1a5b7; }
.fat-v2-search input { height: 42px; border: 0; box-shadow: none; }
.fat-v2-search input { color: #1f2430; text-transform: uppercase; }
.fat-v2-search input:focus { border: 0; box-shadow: none; }
.fat-v2-search button {
  align-self: stretch;
  padding: 0 18px;
  border: 0;
  border-radius: 0 6px 6px 0;
  background: #009ef7;
  color: #fff;
  cursor: pointer;
  font-weight: 600;
}
.fat-v2-pills { display:flex; flex-wrap:wrap; gap:6px; }
.fat-v2-pills button {
  padding:6px 10px;
  border: 1px solid #e4e6ef;
  border-radius: 18px;
  background: #fff;
  color: #7e8299;
  cursor:pointer;
  font-size:11px;
}
.fat-v2-pills button:hover,
.fat-v2-pills button.active { border-color:#181c32; background:#181c32; color:#fff; }
.fat-v2-pills button:hover { border-color:#009ef7; color:#009ef7; }
.fat-v2-pills button span {
  display: inline-block;
  min-width: 19px;
  margin-left: 5px;
  padding: 1px 5px;
  border-radius: 10px;
  background: #f1f4f9;
  color: inherit;
  font-size: 10px;
  text-align: center;
}
.fat-v2-actions { display:flex; gap:8px; margin-left:auto; }
.fat-notas-toolbar { display:grid; grid-template-columns:minmax(220px,1.4fr) minmax(145px,.8fr) 155px 155px auto; gap:10px; margin-bottom:14px; padding:15px 16px; border:1px solid #eff2f5; border-radius:9px; background:#fff; }
.fat-notas-toolbar .fat-v2-search { width:100%; max-width:none; }
.fat-notas-toolbar > select,.fat-notas-toolbar > input { min-width:0; border:0; border-radius:7px; background:#f5f8fa; padding:11px 13px; color:#3f4254; }
.fat-notas-row { grid-column:1 / -1; display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.fat-notas-row .fat-v2-pills { flex:1; }
@media (max-width:1100px) { .fat-notas-toolbar { grid-template-columns:1fr 1fr; } .fat-notas-row { grid-column:1 / -1; } }
.fat-ref, .fat-doc-type { color:#009ef7; font-weight:700; }
.fat-ref { padding-left:10px; border-left:2px solid #f1416c; }
.fat-ref.fat-ref-red { border-left-color:#f1416c; }
.fat-ref.fat-ref-amber { border-left-color:#ffa800; }
.fat-ref-link { color:inherit; text-decoration:none; }
.fat-ref-link:hover { text-decoration:underline; }
.fat-due-cell { cursor:pointer; }
.fat-inline-date { width:140px; min-height:31px; padding:6px 8px; border:1px solid #009ef7; border-radius:5px; color:#3f4254; background:#fff; }
.fat-doc-ref { display:inline-flex; flex-direction:column; gap:1px; min-width:74px; padding-left:9px; border-left:3px solid #ffa800; line-height:1.1; }
.fat-doc-ref-green { border-left-color:#50cd89; }
.fat-doc-ref-red { border-left-color:#f1416c; }
.fat-doc-kind { color:#7e8299; font-size:10px; font-weight:700; text-transform:uppercase; }
.fat-doc-num { color:#181c32; font-size:13px; font-weight:700; }
.fat-doc-status { color:#7e8299; font-size:10px; white-space:nowrap; }
.fat-doc-ref-sub { font-size:11px; color:#a1a5b7; }
.fat-sub { margin-top: 3px; color: #a1a5b7; font-size: 11px; font-weight: 400; }
.fat-value { white-space:nowrap; color:#50cd89; font-weight:700; }
.fat-due { display: block; margin-top: 3px; color: #7e8299; font-size: 10px; font-weight: 600; }
.fat-due.vencida { color: #f1416c; }
.fat-due.proxima { color: #ffa800; }
.fat-due.paga { color: #50cd89; }
.fat-status {
  display: inline-block;
  padding: 5px 9px;
  border-radius: 13px;
  background: #e8fff3;
  color: #1bc5bd;
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}
.fat-status.bloqueada { background: #f1f4f9; color: #7e8299; }
.fat-block-switch { display: inline-flex; margin: 0; cursor: pointer; }
.fat-block-switch input { position:absolute; width:0; height:0; opacity:0; pointer-events:none; }
.fat-block-switch span {
  position: relative;
  width: 35px;
  height: 19px;
  border-radius: 12px;
  background: #dfe3ea;
  transition: .18s;
}
.fat-block-switch span::after {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
  content: "";
  transition: .18s;
}
.fat-block-switch input:checked + span { background: #7e8299; }
.fat-block-switch input:checked + span::after { transform: translateX(16px); }

@media (max-width: 1300px) {
  /* O Lizy mantém os cinco indicadores em uma única linha em desktop;
     só reduzimos a grade quando a janela realmente não comporta o painel. */
  .fat-v2-metrics { grid-template-columns: repeat(5, minmax(130px, 1fr)); }
}
@media (max-width: 900px) {
  .fat-v2-metrics { grid-template-columns: repeat(3, minmax(160px, 1fr)); }
}
@media (max-width: 760px) {
  .fat-classic-top { align-items: stretch; flex-direction: column; }
  .fat-classic-top .tabs { width: auto; min-width: 0; flex-basis: auto; }
  .fat-classic-top .tabs .tab { width: auto; min-width: 0; flex: 1 1 0; }
  .fat-classic-filters { grid-template-columns: 1fr; }
  .fat-waiting-card { width: 100%; }
  .fat-classic-title, .fat-classic-footer { align-items: flex-start; flex-direction: column; }
  .fat-v2-metrics,
  .fat-v2-metrics-four { grid-template-columns: 1fr; }
  .fat-v2-search { max-width: none; }
}

/* ─── ASSISTENTE DE NF — CORPO DO MODAL (#nw-body) ─────────────────────────
   Escopo por ID (1,0,x) de proposito: nao alcanca nenhuma outra tela.
   NAO mexo em .table th/td aqui: style.css:869-885 ja entrega 17px/300/#333
   no th e 16px no td, que sao exatamente as medidas do Lizy
   (scratchpad/original-filaaprovados.md, "Tipografia medida"). */
#nw-body .form-row { align-items: flex-end; }
#nw-body .form-group { min-width: 150px; margin-bottom: 14px; }
#nw-body .form-group > label {
  display: block;
  margin-bottom: 6px;
  color: #5e6278;
  line-height: 1.3;
}
/* style.css:7 manda width:100% em TODO input — sem esta excecao a checkbox
   "Servico foi prestado na cidade do cliente" (app.js:6533), "Nota e
   substituicao" (6543) e "Retem ISS" (6575) nascem esticadas. O resto do app
   resolve com style="width:auto" inline; no assistente nao tem. */
#nw-body input[type="checkbox"] {
  width: auto;
  min-width: 0;
  height: auto;
  margin: 0 6px 0 0;
  padding: 0;
  vertical-align: -2px;
  accent-color: var(--lizy-primary);
}
#nw-body .table td input[type="date"] { min-width: 140px; }

/* ── VISÃO GERAL — layout do Lizy ────────────────────────────────────────────
   No original o topo tem DUAS colunas: os 4 cards em 2x2 à esquerda e o gráfico
   "Receita x Despesa" ocupando a direita inteira. Antes o nosso empilhava tudo
   numa coluna só, e era essa a diferença visual que saltava aos olhos. */
.fin-topo { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);
  gap:16px; align-items:stretch; margin-bottom:16px; }
.fin-cards-2x2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.fin-meio { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.view-fin-grid, .fin-topo, .fin-cards-2x2, .fin-meio { min-width:0; }
.fin-topo > .card, .fin-cards-2x2 > .card, .fin-meio > .card {
  width:auto; min-width:0; max-width:none;
}
/* O Lizy mantém o mosaico 2x2 + gráfico no desktop de 1280 px. Só empilhamos
   quando a janela realmente entra na faixa de tablet. */
@media (max-width:1100px){
  .fin-topo, .fin-meio { grid-template-columns:1fr; }
}
@media (max-width:640px){
  .fin-cards-2x2 { grid-template-columns:1fr; }
}

/* Card alto, com ícone e título na mesma linha no topo e o valor grande embaixo */
.fin-card { display:flex; flex-direction:column; gap:14px; padding:24px;
  min-height:190px; }
.fin-card-topo { display:flex; align-items:flex-start; gap:12px; }
.fin-card-icone { flex:0 0 auto; font-size:22px; line-height:1; margin-top:2px; }
.fin-card-icone.ic-azul     { color:#3699ff; }
.fin-card-icone.ic-verde    { color:#50cd89; }
.fin-card-icone.ic-vermelho { color:#f1416c; }
.fin-card-nome { font-size:19px; font-weight:600; color:#181c32; line-height:1.25; }
.fin-card-valor { font-size:26px; font-weight:700; color:#181c32;
  font-variant-numeric:tabular-nums; }
.fin-card-sub { font-size:12.5px; color:#a1a5b7; margin-top:-6px; }
.fin-card-btn { align-self:flex-start; margin-top:auto; }

/* Card do gráfico e dos blocos de baixo */
.fin-card-grafico, .fin-card-bloco {
  display:block; align-items:stretch; gap:0; padding:22px;
}
.fin-card-titulo { font-size:19px; font-weight:600; color:#181c32; margin-bottom:14px; }
.fin-filtro-periodo { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
.fin-filtro-periodo input[type="date"] { flex:1 1 150px; min-width:140px; }
.fin-check { display:flex; align-items:center; gap:8px; font-size:13.5px;
  color:#3f4254; margin-bottom:14px; cursor:pointer; }
.fin-check input { width:auto; margin:0; accent-color:#3699ff; }

/* dentro dos cards novos o gráfico não repete moldura */
.fin-card-grafico .fin-chart, .fin-card-bloco .fin-chart {
  background:transparent; border:0; padding:0; margin:0; }

/* ══ LANÇAMENTOS — layout do print do Lizy ══════════════════════════════════ */
/* Abas de empresa como CARDS acima do conteúdo, não tabs sublinhadas */
.lanc-abas-emp { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:18px; }
.lanc-aba-emp { display:inline-flex; align-items:center; gap:10px; background:#fff;
  border:1px solid #eff2f5; border-radius:8px; padding:14px 22px; font-size:15px;
  color:#3f4254; cursor:pointer; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.lanc-aba-emp i { color:#a1a5b7; }
.lanc-aba-emp.ativa { color:#181c32; font-weight:600; box-shadow:0 0 0 1px #e4e6ef;
  border-bottom:3px solid #009ef7; }
.lanc-aba-emp.ativa i { color:#009ef7; }

.lanc-card { padding:26px; }
.lanc-linha1 { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:22px; }
.lanc-titulo { font-size:24px; font-weight:650; color:#181c32; margin:0; }
.lanc-busca { flex:1 1 200px; min-width:160px; background:#f5f8fa; border:0;
  border-radius:7px; padding:13px 16px; font-size:14px; }
.lanc-data { background:#f5f8fa; border:0; border-radius:7px; padding:12px 14px;
  font-size:14px; max-width:190px; }
.lanc-novo { white-space:nowrap; }

/* 8 filtros em 2 linhas de 4 */
.lanc-filtros { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:22px; }
@media (max-width:1100px){ .lanc-filtros { grid-template-columns:repeat(2,1fr); } }
@media (max-width:620px){ .lanc-filtros { grid-template-columns:1fr; } }
.lanc-filtro select { width:100%; background:#f5f8fa; border:0; border-radius:7px;
  padding:14px 16px; font-size:14px; color:#3f4254; cursor:pointer; }

/* Navegador de mês centralizado */
.lanc-mes-nav { display:flex; align-items:center; justify-content:center; gap:14px;
  margin:8px 0 18px; }
.lanc-mes-btn { background:none; border:0; color:#009ef7; font-size:20px; cursor:pointer;
  padding:4px 8px; }
.lanc-mes-txt { font-size:21px; font-weight:600; color:#181c32; min-width:150px;
  text-align:center; }
.lanc-mes-input { position:absolute; opacity:0; width:0; height:0; pointer-events:none; }

/* Duas caixas de atraso divididas por linha vertical */
.lanc-atraso { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #eff2f5;
  border-bottom:1px solid #eff2f5; }
@media (max-width:700px){ .lanc-atraso { grid-template-columns:1fr; } }
.lanc-atraso-box { padding:18px 10px; text-align:center; }
.lanc-atraso-box + .lanc-atraso-box { border-left:1px solid #eff2f5; }
.lanc-atraso-lbl { font-size:13.5px; color:#7e8299; margin-bottom:4px; }
.lanc-atraso-val { font-size:19px; font-weight:600; font-variant-numeric:tabular-nums; }
.lanc-atraso-val.verde { color:#50cd89; }
.lanc-atraso-val.vermelho { color:#f1416c; }

/* Linha: dia grande com barrinha colorida, tag de categoria */
.lanc-dia { font-size:19px; font-weight:600; color:#7e8299; white-space:nowrap;
  position:relative; padding-left:16px; }
.lanc-barra { position:absolute; left:2px; top:50%; transform:translateY(-50%);
  width:4px; height:26px; border-radius:2px; }
.lanc-barra.verde { background:#50cd89; }
.lanc-barra.vermelha { background:#f1416c; }
.lanc-sub { font-size:11.5px; color:#a1a5b7; }
.lanc-tag { display:inline-flex; align-items:center; gap:6px; font-size:13px; color:#3f4254; }
.lanc-tag i { color:#50cd89; }
.lanc-acum { color:#a1a5b7; font-weight:600; margin-left:10px; }

/* Rodapé com 5 totais divididos */
.lanc-totais { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid #eff2f5;
  margin-top:6px; }
@media (max-width:900px){ .lanc-totais { grid-template-columns:repeat(2,1fr); } }
.lanc-tot-box { padding:16px 8px; text-align:center; }
.lanc-tot-box + .lanc-tot-box { border-left:1px solid #eff2f5; }
.lanc-tot-lbl { font-size:12.5px; color:#7e8299; margin-bottom:4px; }
.lanc-tot-val { font-size:17px; font-weight:600; font-variant-numeric:tabular-nums; color:#181c32; }
.lanc-tot-val.verde { color:#50cd89; }
.lanc-tot-val.vermelho { color:#f1416c; }
.lanc-tot-val.azul { color:#009ef7; }

.lanc-rodape { display:flex; gap:30px; justify-content:center; border-top:1px solid #eff2f5;
  padding-top:16px; margin-top:4px; }
.lanc-link { background:none; border:0; color:#3f4254; font-size:14px; cursor:pointer;
  display:inline-flex; align-items:center; gap:8px; }
.lanc-link:hover { color:#009ef7; }

/* Layout clássico de Lançamentos (rota sem -v2), espelhando o Lizy:
   título/busca na mesma linha, novo lançamento abaixo e oito filtros em 2x4. */
.lanc-legacy-card { display:block; width:100%; min-width:0; max-width:none; padding:26px; }
.lanc-legacy-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:16px; }
.lanc-legacy-title-row { display:flex; align-items:center; gap:12px; min-width:235px; }
.lanc-new-version { border:0; background:transparent; color:#009ef7; padding:7px 0; font-size:12px; font-weight:600; cursor:pointer; white-space:nowrap; }
.lanc-legacy-head-filters { display:flex; align-items:center; justify-content:flex-end; gap:14px; flex:1 1 auto; }
.lanc-legacy-head-filters .lanc-v2-search { flex:0 1 230px; max-width:230px; }
.lanc-legacy-head-filters .lanc-data { width:165px; max-width:none; }
.lanc-legacy-new { margin-bottom:28px; }
.lanc-legacy-filtros { margin-bottom:22px; }
.lanc-legacy-card #lanc-totais { margin-top:6px; }
.lanc-legacy-card .lanc-v2-tabs,
.lanc-legacy-card .lanc-v2-modes { display:none !important; }
@media (max-width:900px) {
  .lanc-legacy-head { align-items:stretch; flex-direction:column; }
  .lanc-legacy-head-filters { justify-content:stretch; flex-wrap:wrap; }
  .lanc-legacy-head-filters .lanc-v2-search { flex:1 1 100%; max-width:none; }
  .lanc-legacy-head-filters .lanc-data { flex:1 1 160px; width:auto; }
}

/* Lançamentos V2 — versão atual do Lizy */
.lanc-v2-card { display:block; width:100%; min-width:0; max-width:none; padding:24px; }

/* ── Configurações: mesma hierarquia visual e navegação do Lizy ─────────── */
.cfg-profile-hero{min-height:255px;border-radius:8px;background:#fff;box-shadow:0 0 20px rgba(76,87,125,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:22px;position:relative;overflow:hidden}
.cfg-profile-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 34%,rgba(0,158,247,.08),transparent 33%),radial-gradient(circle at 22% 22%,rgba(126,130,153,.05),transparent 20%);pointer-events:none}
.cfg-avatar-wrap{position:relative;z-index:1;width:132px;height:132px;display:grid;place-items:center}
.cfg-avatar{width:116px;height:116px;border:4px solid #50cd89;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#e9edf2;color:#7e8299;font-size:36px;font-weight:700;position:relative;overflow:hidden}
.cfg-avatar>img{width:100%;height:100%;object-fit:cover}.cfg-avatar>i{font-size:48px;color:#a1a5b7}
.cfg-avatar-action{position:absolute;width:23px;height:23px;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;cursor:pointer;z-index:2;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.cfg-avatar-action i{font-size:10px}.cfg-avatar-action input{display:none}.cfg-avatar-edit{right:6px;bottom:18px;background:#fff;color:#7e8299}.cfg-avatar-remove{left:6px;bottom:18px;background:#fff;color:#7e8299;padding:0}
.cfg-profile-name{font-size:21px;font-weight:700;color:#181c32;margin-top:14px;position:relative}.cfg-profile-name span{font-size:11px;color:#50cd89;background:#e8fff3;border-radius:5px;padding:5px 9px;margin-left:7px;vertical-align:middle}
.cfg-profile-email{font-size:13px;color:#a1a5b7;margin-top:7px}.cfg-profile-email i{margin-right:5px}
.cfg-main-tabs{display:grid;grid-template-columns:repeat(8,minmax(125px,1fr));gap:20px;overflow-x:auto;padding:0 2px 16px;border-bottom:1px solid #eff2f5;margin-bottom:22px}
.cfg-main-tabs button{height:48px;border:1px dashed #e4e6ef;border-radius:10px;background:#fff;color:#5e6278;font-weight:600;white-space:nowrap;position:relative;padding:0 16px}
.cfg-main-tabs button.active{color:#181c32;box-shadow:0 5px 18px rgba(76,87,125,.06)}.cfg-main-tabs button.active:after{content:"";height:4px;background:#009ef7;border-radius:8px 8px 0 0;position:absolute;left:0;right:0;bottom:-1px}
.cfg-content{min-width:0}.cfg-panel{display:block;width:100%;max-width:none;background:#fff;border-radius:8px;padding:26px 28px;box-shadow:0 0 20px rgba(76,87,125,.06);margin-bottom:18px}.cfg-panel h3{font-size:17px;color:#181c32;margin:0 0 22px}.cfg-panel h4{grid-column:1/-1;margin:16px 0 0;font-size:15px;color:#3f4254}
.cfg-profile-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.cfg-profile-grid .cfg-company-list{grid-column:1/-1}.cfg-info-row{display:flex;justify-content:space-between;align-items:center;min-height:74px;border-bottom:1px solid #eff2f5}.cfg-info-row:last-child{border-bottom:0}.cfg-info-row div{display:flex;flex-direction:column;gap:7px}.cfg-info-row small{color:#a1a5b7;font-size:12px}.cfg-info-row strong{color:#3f4254;font-size:14px}
.cfg-protect{display:flex;align-items:flex-start;gap:17px}.cfg-protect>i{font-size:28px;color:#ffc700;background:#fff8dd;border-radius:9px;padding:13px}.cfg-protect div{flex:1}.cfg-protect h3{margin:2px 0 8px}.cfg-protect p{font-size:13px;color:#7e8299;line-height:1.55;margin:0}.cfg-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.cfg-panel-head h3{margin:0}
.cfg-subtabs{display:flex;gap:16px;align-items:stretch;flex-wrap:wrap;margin:0 0 22px}.cfg-subtabs button{width:118px;min-height:86px;border:0;border-radius:9px;background:#fff;color:#a1a5b7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-weight:700;padding:10px;box-shadow:0 0 15px rgba(76,87,125,.04);position:relative}.cfg-subtabs button i{font-size:24px}.cfg-subtabs button span{font-size:12px;line-height:1.05}.cfg-subtabs button.active{color:#009ef7}.cfg-subtabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;border-radius:8px 8px 0 0;background:#009ef7}
.cfg-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.cfg-fields .form-group{min-width:0}.cfg-fields .cfg-wide{grid-column:span 1}.cfg-fields textarea,.cfg-editors textarea{min-height:105px;resize:vertical}.cfg-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 26px;margin:10px 0 22px}.cfg-check{display:flex;align-items:center;gap:10px;min-height:44px;color:#5e6278;font-size:13px}.cfg-check input{width:18px!important;height:18px;flex:0 0 18px;accent-color:#009ef7}.cfg-check span{line-height:1.3}
.cfg-editors{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cfg-editors .form-group{min-width:0}.cfg-savebar{display:flex;justify-content:flex-end;border-top:1px solid #eff2f5;margin-top:24px;padding-top:18px}.cfg-select-line{max-width:640px}.cfg-select-line select{width:100%}.cfg-modal-tabs{display:flex;gap:17px;border-bottom:1px solid #eff2f5;margin-bottom:20px;overflow-x:auto}.cfg-modal-tabs span,.cfg-modal-tabs button{padding:11px 4px;color:#7e8299;white-space:nowrap;border:0;background:transparent;font:inherit;cursor:pointer}.cfg-modal-tabs span.active,.cfg-modal-tabs button.active{color:#009ef7;border-bottom:3px solid #009ef7}.cfg-empresa-panel{padding-bottom:4px}.cfg-empresa-panel .form-row{align-items:flex-start}.modal-box-wide{width:min(920px,calc(100vw - 48px));max-width:920px}.fiscal-safety{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid #fff1bf;background:#fff8dd;border-radius:8px;font-size:12px;color:#7e8299}
.cfg-rich-group{display:block}.cfg-rich-toolbar{display:flex;align-items:center;gap:2px;min-height:42px;padding:5px 7px;border:1px solid #e4e6ef;border-bottom:0;border-radius:7px 7px 0 0;background:#f9fafb;overflow-x:auto}.cfg-rich-toolbar select{width:116px;min-width:116px;height:31px;border:1px solid #e4e6ef;border-radius:5px;background:#fff;padding:0 8px;color:#3f4254}.cfg-rich-toolbar button{width:32px;height:31px;flex:0 0 32px;border:0;border-radius:4px;background:transparent;color:#5e6278;cursor:pointer}.cfg-rich-toolbar button:hover{background:#eef6ff;color:#009ef7}.cfg-rich-editor{min-height:150px;max-height:330px;overflow:auto;padding:13px 15px;border:1px solid #e4e6ef;border-radius:0 0 7px 7px;background:#fff;color:#3f4254;font-size:13px;line-height:1.5;outline:0}.cfg-rich-editor:focus{border-color:#009ef7;box-shadow:0 0 0 2px rgba(0,158,247,.08)}.cfg-rich-editor p{margin:0 0 8px}.cfg-rich-editor h1{font-size:24px}.cfg-rich-editor h2{font-size:20px}.cfg-rich-editor h3{font-size:16px}.cfg-rich-editor ol,.cfg-rich-editor ul{padding-left:24px}
@media(max-width:1200px){.cfg-main-tabs{grid-template-columns:repeat(8,150px)}.cfg-profile-grid{grid-template-columns:1fr}.cfg-profile-grid .cfg-company-list{grid-column:auto}}
@media(max-width:760px){.cfg-profile-hero{min-height:215px}.cfg-avatar{width:90px;height:90px}.cfg-panel{padding:20px 17px}.cfg-fields,.cfg-check-grid,.cfg-editors{grid-template-columns:1fr}.cfg-subtabs button{width:104px}.cfg-info-row{align-items:flex-start;gap:12px;padding:12px 0}.cfg-protect{flex-wrap:wrap}}

/* Suprimentos > Compras */
.compras-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.compras-toolbar{display:flex;justify-content:space-between;align-items:center}.compras-toolbar .search-input{max-width:470px}.compras-pager{display:flex;justify-content:flex-end;align-items:center;gap:10px;color:#7e8299;font-size:12px;padding:14px 4px}.compras-pager select{width:70px;padding:7px 9px}.compra-head-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}.compra-head-grid .compra-obs{grid-column:1/-1}.compra-item-tabs{display:flex;gap:12px;border-bottom:1px solid #eff2f5;margin:18px 0}.compra-item-tabs button{border:0;background:transparent;color:#a1a5b7;font-weight:700;padding:13px 18px;position:relative}.compra-item-tabs button.active{color:#009ef7}.compra-item-tabs button.active:after{content:"";position:absolute;height:3px;left:0;right:0;bottom:-1px;background:#009ef7}.compra-item-tabs i{margin-right:7px}.compra-add-grid{display:grid;grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(220px,2fr) auto;align-items:end;gap:12px;margin-bottom:22px}.compra-add-grid.produto{grid-template-columns:minmax(220px,2fr) 120px 120px minmax(200px,1.6fr) auto}.compra-add-grid>.btn{margin-bottom:0;height:43px}.compra-anexos-list>div{display:flex;align-items:center;gap:10px;border:1px solid #eff2f5;border-radius:8px;padding:11px 13px;margin-bottom:8px}.compra-anexos-list span{flex:1}.compra-anexos-list i{color:#009ef7}

/* Cadastros > Produtos/Kits/Grupos/Tabela de Preço — topologia real do Lizy. */
.catalogo-tabs{display:flex;align-items:center;gap:34px;overflow-x:auto;margin:0 0 26px;padding:0 16px;border-bottom:1px solid #eff2f5;background:#fff}
.catalogo-tabs a{flex:0 0 auto;padding:17px 4px 14px;color:#5e6278;font-size:14px;font-weight:600;border-bottom:3px solid transparent}
.catalogo-tabs a.active{color:#009ef7;border-bottom-color:#009ef7}.catalogo-card{max-width:none}.catalogo-table{min-width:1120px}
.catalogo-table th,.catalogo-table td{white-space:nowrap}.catalogo-table th:nth-child(2),.catalogo-table td:nth-child(2){min-width:250px;white-space:normal}
.modal-xxl{width:min(1380px,96vw);max-width:1380px}.produto-modal .modal-body{max-height:72vh;overflow:auto;padding:22px 26px}
.produto-identificacao{display:grid;grid-template-columns:155px minmax(0,1fr);gap:24px;align-items:start}
.produto-foto{height:155px;border:1px dashed #d7dbe7;border-radius:8px;background:#f8fafc;cursor:pointer;overflow:hidden;display:flex!important;align-items:center;justify-content:center;text-align:center;color:#a1a5b7}
.produto-foto input{display:none}.produto-foto span{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px}.produto-foto i{font-size:35px}.produto-foto img{width:100%;height:100%;object-fit:contain}
.produto-main-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}.produto-main-grid .span-2{grid-column:span 2}.produto-main-grid .span-3{grid-column:1/-1}
.produto-form-tabs{display:flex;gap:10px;margin:24px 0 18px;border-bottom:1px solid #eff2f5}.produto-form-tabs button{border:0;background:transparent;padding:13px 24px;color:#a1a5b7;font-weight:700;border-bottom:3px solid transparent}.produto-form-tabs button.active{color:#009ef7;border-bottom-color:#009ef7}
.produto-form-panel{display:none;min-height:190px}.produto-form-panel.active{display:block}.produto-form-panel h4{font-size:14px;margin:0 0 15px}.produto-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}
.imposto-grid{display:grid;gap:10px}.imposto-row{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:end;gap:18px;border:1px solid #eff2f5;border-radius:7px;padding:11px 14px}.imposto-row .form-group{margin:0}
.produto-editor-page{max-width:none;padding:28px 32px}.produto-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.produto-page-head h2{margin:0 0 5px;font-size:24px;color:#181c32}.produto-page-head small{color:#a1a5b7;font-size:12px}.produto-page-actions{display:flex;gap:9px;flex-wrap:wrap}.produto-editor-page-body{background:#fff;border-top:1px solid #eff2f5;padding-top:24px}.produto-editor-page .produto-identificacao{grid-template-columns:155px minmax(0,1fr)}.produto-editor-page .produto-form-tabs{overflow-x:auto}.produto-history-panel{min-height:220px}.produto-history-empty{min-height:110px;border:1px solid #eff2f5;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#a1a5b7;background:#fff}.produto-history-pager{display:flex;justify-content:flex-end;gap:12px;align-items:center;color:#7e8299;font-size:12px;padding-top:14px}.produto-history-pager b{font-weight:600;color:#5e6278}
.modal-action-list{display:grid;gap:10px}.modal-action-list .btn{justify-content:flex-start}.catalogo-hero{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:22px;align-items:center;padding:25px}.catalogo-hero>i{font-size:50px;color:#009ef7}.catalogo-hero h2{margin:0 0 4px;font-size:22px}.catalogo-hero p{margin:8px 0 0;color:#7e8299}.catalogo-hero>div:last-child{display:flex;gap:9px;flex-wrap:wrap}
.catalogo-tree{border-top:1px solid #eff2f5}.catalogo-tree-row{display:flex;align-items:center;gap:10px;min-height:52px;border-bottom:1px solid #eff2f5}.catalogo-tree-row>i{color:#a1a5b7}.catalogo-tree-row>span{flex:1}
@media(max-width:850px){.produto-identificacao{grid-template-columns:1fr}.produto-foto{width:155px}.produto-main-grid,.produto-panel-grid{grid-template-columns:1fr 1fr}.produto-main-grid .span-3{grid-column:span 2}.catalogo-hero{grid-template-columns:58px 1fr}.catalogo-hero>div:last-child{grid-column:1/-1}}
@media(max-width:560px){.produto-main-grid,.produto-panel-grid{grid-template-columns:1fr}.produto-main-grid .span-2,.produto-main-grid .span-3{grid-column:auto}.imposto-row{grid-template-columns:1fr}.catalogo-tabs{gap:22px}.produto-form-tabs{overflow-x:auto}.produto-form-tabs button{padding:11px 14px}.catalogo-hero{grid-template-columns:1fr}.catalogo-hero>div:last-child{grid-column:auto}}

/* Cadastros > Clientes/Fornecedores — assistente de seis etapas do Lizy. */
.cadastro-status-tabs{margin-bottom:22px}.parceiro-lista-card{display:block;padding:26px;max-width:none}.parceiro-lista-card>.btn-link{margin-top:14px}.parceiro-tabs{display:flex;gap:20px;flex-wrap:nowrap;margin:0 0 20px}.parceiro-tab{box-sizing:border-box;width:220px;height:45px;padding:16.25px 13px 6.5px;border:1px dashed #e4e6ef;border-radius:12px;background:#fff;color:#a1a5b7;font-size:14.3px;font-weight:500;line-height:20px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;letter-spacing:.23px}.parceiro-tab.active{border-style:solid;color:#009ef7}.parceiro-tab:hover{color:#009ef7;border-color:#009ef7}.parceiro-modal .modal-body{max-height:74vh;overflow:auto;padding:0}.parceiro-wizard{display:grid;grid-template-columns:255px minmax(0,1fr);min-height:560px}.parceiro-stepper{background:#f8f9fb;border-right:1px solid #eff2f5;padding:26px 18px;display:flex;flex-direction:column;gap:4px}.parceiro-step{border:0;background:transparent;color:#a1a5b7;display:grid;grid-template-columns:34px 1fr;align-items:center;gap:12px;text-align:left;padding:11px;border-radius:8px}.parceiro-step span{width:34px;height:34px;border-radius:50%;background:#e9ecf2;display:grid;place-items:center;font-weight:700}.parceiro-step b{font-size:12px}.parceiro-step.active{background:#fff;color:#009ef7;box-shadow:0 4px 18px rgba(76,87,125,.08)}.parceiro-step.active span{background:#009ef7;color:#fff}.parceiro-step.done{color:#50cd89}.parceiro-step.done span{background:#50cd89;color:#fff}.parceiro-panel{padding:28px 32px;min-width:0}.parceiro-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}.parceiro-panel-head small{color:#a1a5b7}.parceiro-panel-head h3{font-size:20px;margin:4px 0 0}.parceiro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 22px}.parceiro-grid .span-2{grid-column:1/-1}.parceiro-grid .form-group{margin:0;min-width:0}.parceiro-check{display:flex;align-items:center;gap:10px;align-self:end;min-height:43px;color:#5e6278;text-transform:none;letter-spacing:0}.parceiro-check input{width:18px!important;height:18px;accent-color:#009ef7}.parceiro-checks{grid-column:1/-1;display:flex;gap:24px;flex-wrap:wrap;padding:10px 0}.parceiro-contatos .contato-novo{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;margin-bottom:24px}.parceiro-contatos .contato-novo>.btn{height:42px}.parceiro-contatos .table{min-width:820px}
.prospect-list-card{display:block;padding:28px;max-width:none}.prospect-list-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.prospect-list-head h3{margin:0;font-size:24px;color:#181c32}.prospect-list-head .page-actions{display:flex;gap:10px;flex-wrap:wrap}.prospect-toolbar{display:flex;justify-content:flex-start;margin-bottom:20px}.prospect-toolbar .search-input{width:min(360px,100%);background:#f5f8fa;border:0}.prospect-table{min-width:760px}.prospect-table th{color:#a1a5b7;font-weight:700}.prospect-table td{height:66px}.table-sort{border:0;background:transparent;color:#a1a5b7;font:inherit;font-weight:700;padding:0;cursor:pointer}.prospect-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#7e8299;font-size:12px;padding-top:18px}.prospect-pager select{width:70px;padding:7px 9px}.prospect-import-drop{min-height:190px;border:1px dashed #b9dff8;background:#f1faff;border-radius:8px;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.prospect-import-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.prospect-import-drop i{color:#009ef7;font-size:36px;margin-bottom:10px}.prospect-import-drop h3{margin:0 0 5px;font-size:16px;color:#181c32}.prospect-import-drop span{font-size:12px;color:#a1a5b7}.prospect-import-system{margin-top:20px}.prospect-import-system select{width:100%}.parceiro-step small{display:block;font-size:10px;font-weight:400;color:#a1a5b7;line-height:1.35;margin-top:3px}
.cadastro-empty{min-height:430px;background:#fff;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;box-shadow:0 0 20px rgba(76,87,125,.06)}.cadastro-empty-icon{width:76px;height:76px;border-radius:50%;background:#effaff;color:#009ef7;display:grid;place-items:center;font-size:28px;margin-bottom:20px}.cadastro-empty h2{font-size:22px;margin:0 0 9px}.cadastro-empty p{color:#a1a5b7;margin:0 0 22px}
.cadastro-simple-card,.cadastro-tree-card{display:block;padding:26px;max-width:none}.cadastro-tree{border-top:1px solid #eff2f5}.cadastro-tree-row{display:flex;align-items:center;gap:10px;min-height:54px;padding-left:calc(10px + var(--nivel,0)*30px);border-bottom:1px solid #eff2f5}.cadastro-tree-row .tree-toggle{color:#a1a5b7;width:18px}.cadastro-tree-row>strong{flex:1}.tree-actions{display:flex;gap:3px}.tree-color{width:11px;height:11px;border-radius:50%}.categorias-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.categorias-grid h2{font-size:18px}.categorias-grid .page-head{align-items:center}.categorias-grid .page-actions{flex-wrap:wrap}
@media(max-width:1000px){.categorias-grid{grid-template-columns:1fr}}
.content:has(.contas-data-bar){padding-top:0}.contas-data-bar{display:block;width:calc(100% + 19.5px);margin-left:-9.75px;background:transparent;border-radius:0;padding:13px 0 8.6px;margin-bottom:43px;box-shadow:none}.contas-data-bar span{display:block;flex:none;margin:0 0 0 12.22px;color:#000;font-size:13px;line-height:18.4px}.contas-data-bar input{display:block;width:min(454.25px,100%);height:43px;margin:0 0 0 12.22px;background:#f2f2f2;border:0;padding:9.75px 13px}.contas-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:calc(100% + 19.5px);margin-left:-9.75px}.conta-card{box-sizing:border-box;min-height:237px;margin:0 12.2125px;padding:13px;background:#fff;border:0;border-radius:6.175px;box-shadow:0 0 20px rgba(76,87,125,.02);overflow:visible}.conta-card-new{border:2.4px dashed #b2adbd;box-shadow:none;min-height:237px;display:grid;place-items:center;cursor:pointer;color:#5e6278}.conta-card-new:hover{border-color:#009ef7;color:#009ef7;background:#fbfdff}.conta-new-label{font-weight:700;font-size:16px}.conta-card-funcoes{display:flex;justify-content:flex-end;align-items:center;height:38.725px;padding:0;margin-bottom:20px;border-bottom:0;color:#a1a5b7;font-size:11px}.conta-funcoes-btn{box-sizing:border-box;min-width:98.94px;height:38.725px;border:0;background:#f9f9f9;color:#7e8299;border-radius:6.175px;padding:8.15px 7.5px;font:600 14.95px/22.425px Poppins,sans-serif;cursor:pointer}.conta-funcoes-btn:hover{color:#009ef7;background:#f5f8ff}.conta-card-body{display:flex;align-items:flex-start;justify-content:center;padding:0}.conta-card-center{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}.conta-bank-logo{width:50px;height:50px;border-radius:0;background:transparent;display:grid;place-items:center;color:#009ef7;font-size:27px;margin:0 0 18.4px}.conta-bank-logo img{width:50px;height:50px;object-fit:contain}.conta-card-center h3{max-width:165.375px;font-size:18px;line-height:21.6px;font-weight:700;color:#181c32;margin:0;padding:0}.conta-card-center strong{font-size:18px;line-height:22.4px;font-weight:700;color:#181c32;margin:0;padding:0}.conta-card-center span{font-size:16px;line-height:19.2px;font-weight:700;color:#181c32;margin:0;padding:0}.conta-modal{width:min(1050px,95vw)}.conta-modal .modal-body{max-height:72vh;overflow:auto}.conta-steps{grid-template-columns:repeat(3,1fr)}.conta-steps .wizard-step{cursor:default}.conta-steps .wizard-step div{display:flex;flex-direction:column;gap:4px}.conta-steps small{font-weight:400;color:#a1a5b7}.conta-wizard-panel{min-height:330px;padding:8px 5px;position:relative}.conta-wizard-panel>h3{font-size:18px;margin-bottom:18px}.conta-tipos{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:18px 0 28px}.conta-tipos button{min-height:105px;border:1px solid #eff2f5;border-radius:8px;background:#fff;color:#5e6278;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;font-weight:600}.conta-tipos button i{font-size:27px}.conta-tipos button.active{border-color:#009ef7;background:#effaff;color:#009ef7}.conta-dados-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}.conta-dados-grid .span-2{grid-column:span 2}.conta-dados-grid small{display:block;color:#a1a5b7;margin-top:5px}.conta-voltar{margin-top:20px}
@media(max-width:800px){.contas-cards{grid-template-columns:1fr}.contas-data-bar{align-items:stretch;flex-direction:column}.contas-data-bar input{width:100%}.conta-dados-grid{grid-template-columns:1fr 1fr}.conta-tipos{grid-template-columns:1fr}.conta-steps{grid-template-columns:1fr}}
@media(max-width:850px){.parceiro-wizard{grid-template-columns:1fr}.parceiro-stepper{border-right:0;border-bottom:1px solid #eff2f5;display:grid;grid-template-columns:repeat(3,1fr);padding:14px}.parceiro-step{grid-template-columns:28px 1fr;padding:8px}.parceiro-step span{width:28px;height:28px}.parceiro-contatos .contato-novo{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.parceiro-grid,.parceiro-contatos .contato-novo{grid-template-columns:1fr}.parceiro-grid .span-2{grid-column:auto}.parceiro-stepper{grid-template-columns:1fr 1fr}.parceiro-panel{padding:20px 16px}}
/* O modal de parceiros do Lizy só mostra o stepper lateral no breakpoint xl.
   Abaixo de 1200px o stepper some, mas o diálogo continua largo: é o
   formulário responsivo do próprio Lizy (não um modal estreito de coluna).
   As dimensões largas são importantes para preservar a leitura dos campos. */
@media(max-width:1199px){
  .parceiro-modal.modal-box{width:min(1380px,95vw);max-width:1380px;max-height:calc(100vh - 12px)}
  .parceiro-modal .parceiro-wizard{grid-template-columns:1fr;min-height:560px}
  .parceiro-modal .parceiro-stepper{display:none}
  .parceiro-modal .parceiro-panel-head{display:none}
  .parceiro-modal .parceiro-grid{grid-template-columns:1fr}
  .parceiro-modal .parceiro-grid .span-2{grid-column:auto}
  .parceiro-modal .parceiro-panel label:not(.parceiro-check){font-size:12.9px;line-height:20px;font-weight:500;color:#a1a5b7;text-transform:none;letter-spacing:0}
  .parceiro-modal .parceiro-panel input:not([type=checkbox]),
  .parceiro-modal .parceiro-panel textarea,
  .parceiro-modal .parceiro-panel select{box-sizing:border-box;background:#f2f2f2;border:0.8px solid #f2f2f2;border-radius:5.7px;color:#5e6278;font:500 13.2px/19.8px Poppins,sans-serif;padding:9px 12px}
  .parceiro-modal .parceiro-panel input:not([type=checkbox]){min-height:42.55px}
  .parceiro-modal .parceiro-panel select{height:45px;padding:9px 18px}

  /* Geometria do diálogo largo do Lizy nesta janela responsiva. */
  .parceiro-modal.modal-box{transform:translateY(-7px)}
  .parceiro-modal .modal-header{box-sizing:border-box;height:45.14px;padding:0 24px}
  .parceiro-modal .modal-body{box-sizing:border-box;height:calc(100vh - 163px);max-height:calc(100vh - 163px);flex:0 0 auto}
  .parceiro-modal .modal-footer{box-sizing:border-box;height:90.47px;padding:11.68px 27.46px 34.26px;align-items:flex-start}
  .parceiro-modal .modal-footer #modal-ok{box-sizing:border-box;min-width:144.5px;height:45px}
  .parceiro-modal .parceiro-panel{box-sizing:border-box;width:76%;padding:28px 30.6px 28px 33.4px}
  .parceiro-modal .parceiro-check input{width:19.5px!important;height:19.5px}
  #lead-wizard .parceiro-grid{grid-template-columns:156.76px minmax(0,1fr);gap:17px 24.43px}

  /* Cadastro de lead: no Lizy, Código/estrangeiro ocupam a coluna curta,
     CNPJ/CPF fica na coluna longa e os demais dados seguem em largura total. */
  #lead-wizard .parceiro-grid{grid-template-columns:156.76px minmax(0,1fr);gap:17px 24.43px}
  #lead-wizard .parceiro-grid>.parceiro-check:nth-child(2){grid-column:1;grid-row:2}
  #lead-wizard .parceiro-grid>.form-group:nth-child(3){grid-column:2;grid-row:1}
  #lead-wizard .parceiro-grid>.form-group:nth-child(4),
  #lead-wizard .parceiro-grid>.form-group:nth-child(5),
  #lead-wizard .parceiro-grid>.form-group:nth-child(6),
  #lead-wizard .parceiro-grid>.parceiro-check:last-child{grid-column:1/-1}
  /* O template Angular reserva linhas internas diferentes para o primeiro
     bloco; estes deslocamentos preservam as mesmas linhas visíveis do Lizy. */
  #lead-wizard .parceiro-grid>.parceiro-check:nth-child(2){transform:translateY(-21.38px)}
  #lead-wizard .parceiro-grid>.form-group:nth-child(4){transform:translateY(-24.08px)}
  #lead-wizard .parceiro-grid>.form-group:nth-child(5){transform:translateY(-18.10px)}
  #lead-wizard .parceiro-grid>.form-group:nth-child(6){transform:translateY(-12.13px)}
  #lead-wizard .parceiro-grid>.parceiro-check:last-child{transform:translate(12.2px,-0.33px)}

  /* O assistente de Clientes/Fornecedores usa a mesma primeira grade no
     Lizy; reaplicamos a coluna curta e a coluna longa no FLUITEC. */
  #parceiro-wizard .parceiro-gerais-grid{grid-template-columns:156.76px minmax(0,1fr);gap:17px 24.43px}
  #parceiro-wizard .parceiro-gerais-grid>.parceiro-check:nth-child(2){grid-column:1;grid-row:2;transform:translateY(-21.38px)}
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(3){grid-column:2;grid-row:1}
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(4),
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(5),
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(6),
  #parceiro-wizard .parceiro-gerais-grid>.parceiro-check:last-child{grid-column:1/-1}
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(4){transform:translateY(-24.08px)}
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(5){transform:translateY(-18.10px)}
  #parceiro-wizard .parceiro-gerais-grid>.form-group:nth-child(6){transform:translateY(-12.13px)}
  #parceiro-wizard .parceiro-gerais-grid>.parceiro-check:last-child{transform:translate(12.2px,-0.33px)}
}
@media(max-width:900px){.compra-head-grid{grid-template-columns:1fr 1fr}.compra-add-grid,.compra-add-grid.produto{grid-template-columns:1fr 1fr}.compra-add-grid>.btn{grid-column:1/-1}.compras-actions{justify-content:flex-start}}
@media(max-width:600px){.compra-head-grid,.compra-add-grid,.compra-add-grid.produto{grid-template-columns:1fr}.compra-head-grid .compra-obs{grid-column:auto}}

/* Contas Bancárias — pequenos ajustes de tipografia medidos na referência Lizy. */
.contas-data-bar input{transform:translateY(1.6px)}
.conta-card-center h3{box-sizing:border-box;max-width:193.2px;min-height:41.6px;font:600 16.25px/20px Poppins,sans-serif}
.conta-card-center strong{font:600 16.25px/22.4px Poppins,sans-serif}
.conta-card-center span{font:600 13.975px/19.2px Poppins,sans-serif}

/* Última cascata da grade V2 de Orçamentos, após as regras históricas. */
@media (min-width:1200px) {
  #content.orc-v2-host .orc-v2-toolbar { grid-template-columns:165.8px 190px 190px 152.2px 152.2px; }
  #content.orc-v2-host .orc-v2-toolbar input:first-child { width:165.8px; }
  #content.orc-v2-host .orc-v2-toolbar input[type="date"] { width:152.2px; }
  #content.orc-v2-host .orc-v2-table { min-width:1203.6px; width:1203.6px; table-layout:fixed; }
  #content.orc-v2-host .orc-v2-table th:nth-child(1), #content.orc-v2-host .orc-v2-table td:nth-child(1) { width:189.55px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(2), #content.orc-v2-host .orc-v2-table td:nth-child(2) { width:411.7625px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(3), #content.orc-v2-host .orc-v2-table td:nth-child(3) { width:179.125px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(4), #content.orc-v2-host .orc-v2-table td:nth-child(4) { width:200.375px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(5), #content.orc-v2-host .orc-v2-table td:nth-child(5) { width:114.7875px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(6), #content.orc-v2-host .orc-v2-table td:nth-child(6) { width:108px; }
}

/* Fila de Análise: a tabela incorporada do Lizy usa uma grade larga e a
   primeira coluna reserva espaço para a foto vertical do equipamento. */
@media (min-width:1200px) {
  .analise-table { min-width:1197.6px; width:1197.6px; table-layout:fixed; }
  .analise-table th { height:72.8px; }
  .analise-table th:nth-child(1), .analise-table td:nth-child(1) { width:225.6px; }
  .analise-table th:nth-child(2), .analise-table td:nth-child(2) { width:199.2px; }
  .analise-table th:nth-child(4), .analise-table td:nth-child(4) { width:194.4px; }
  .analise-table th:nth-child(5), .analise-table td:nth-child(5) { width:127.15px; }
  .analise-table th:nth-child(6), .analise-table td:nth-child(6) { width:180px; }
  .analise-table th:nth-child(8), .analise-table td:nth-child(8) { width:135.6px; }
  .analise-table th:nth-child(9), .analise-table td:nth-child(9) { width:135.65px; }
  .analise-ordem-cell img { width:150px !important; height:auto !important; object-fit:contain !important; }
}

/* Fila de Análise: a tabela incorporada do Lizy usa uma grade larga e a
   primeira coluna reserva espaço para a foto vertical do equipamento. */
@media (min-width:1200px) {
  .analise-table {
    min-width:1197.6px;
    width:1197.6px;
    table-layout:fixed;
  }
  .analise-table th { height:72.8px; }
  .analise-table th:nth-child(1), .analise-table td:nth-child(1) { width:225.6px; }
  .analise-table th:nth-child(2), .analise-table td:nth-child(2) { width:199.2px; }
  .analise-table th:nth-child(4), .analise-table td:nth-child(4) { width:194.4px; }
  .analise-table th:nth-child(5), .analise-table td:nth-child(5) { width:127.15px; }
  .analise-table th:nth-child(6), .analise-table td:nth-child(6) { width:180px; }
  .analise-table th:nth-child(8), .analise-table td:nth-child(8) { width:135.6px; }
  .analise-table th:nth-child(9), .analise-table td:nth-child(9) { width:135.65px; }
  .analise-ordem-cell img { width:150px !important; height:auto !important; object-fit:contain !important; }
}

/* ── VISÃO GERAL FINANCEIRA — paridade medida com o Lizy (desktop) ──────────
   O Lizy usa a malha Bootstrap de 12 colunas, com as gutters da linha
   escapando alguns pixels do container. Mantemos a marcação e os handlers do
   FLUITEC, mas reproduzimos essa mesma geometria no desktop. */
@media (min-width:1200px) {
  .view-fin-grid { overflow:visible; }
  .view-fin-grid .fin-topo {
    width:calc(100% + 13px);
    margin-left:-6.5px;
    margin-bottom:13px;
    height:557.25px;
    grid-template-columns:50% 50%;
    gap:0;
    align-items:stretch;
  }
  .view-fin-grid .fin-cards-2x2 {
    box-sizing:border-box;
    width:calc(100% - 11.425px);
    height:557.25px;
    margin-left:5.7125px;
    padding:13px 12.2125px 7.475px;
    grid-template-columns:1fr 1fr;
    grid-template-rows:241.9px 274.4px;
    column-gap:24.425px;
    row-gap:20.5px;
  }
  .view-fin-grid .fin-cards-2x2 > .fin-card {
    box-sizing:border-box;
    min-height:0;
    height:100%;
    padding:0;
    border:0;
    gap:0;
    align-items:stretch;
  }
  .view-fin-grid .fin-topo > .fin-card-grafico {
    box-sizing:border-box;
    width:calc(100% - 24.425px);
    height:536.775px;
    margin:13px 12.2125px 7.475px;
    padding:0;
    border:0;
  }
  .view-fin-grid .fin-card-topo {
    box-sizing:border-box;
    height:40px;
    margin:29.25px 26px 0;
    gap:9.75px;
    align-items:center;
  }
  .view-fin-grid .fin-card-icone {
    box-sizing:border-box;
    flex:0 0 32.5px;
    width:32.5px;
    height:32.5px;
    margin:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    line-height:16.575px;
  }
  .view-fin-grid .fin-card-nome {
    font:600 16.25px/20px Poppins,sans-serif;
    color:#181c32;
  }
  .view-fin-grid .fin-card-valor {
    box-sizing:border-box;
    height:20px;
    margin:19.5px 29.25px 0;
    font:600 24px/20px Poppins,sans-serif;
    font-variant-numeric:tabular-nums;
  }
  .view-fin-grid .fin-card-sub {
    box-sizing:border-box;
    height:20px;
    margin:13px 29.25px 0;
    font:400 13.975px/20px Poppins,sans-serif;
    color:#a1a5b7;
  }
  .view-fin-grid .fin-card-acao {
    box-sizing:border-box;
    width:auto;
    min-height:42.95px;
    margin: auto 29.25px 26px;
    padding:10.75px 20.5px;
    border-radius:6.175px;
    font:500 14.3px/21.45px Poppins,sans-serif;
    white-space:normal;
  }
  .view-fin-grid .fin-cards-2x2 .fin-card-acao.azul { min-height:64.4px; }
  .view-fin-grid .fin-card-grafico,
  .view-fin-grid .fin-card-bloco {
    box-sizing:border-box;
    padding:0;
    border:0;
  }
  .view-fin-grid .fin-card-titulo {
    box-sizing:border-box;
    margin:29.25px 26px 0;
    font:600 17.55px/24px Poppins,sans-serif;
    color:#181c32;
  }
  .view-fin-grid .fin-filtro-periodo {
    margin:16px 28.4625px 0;
    gap:0;
    flex-wrap:nowrap;
  }
  .view-fin-grid .fin-filtro-periodo input[type="date"] {
    box-sizing:border-box;
    flex:1 1 0;
    min-width:0;
    height:42.55px;
    padding:9.75px 13px;
    border:0.8px solid #f2f2f2;
    border-radius:0;
    background:#f2f2f2;
    font:500 14.3px/21.45px Poppins,sans-serif;
    color:#5e6278;
  }
  .view-fin-grid .fin-filtro-periodo input[type="date"] + input[type="date"] {
    margin-left:56.2125px;
  }
  .view-fin-grid .fin-check {
    margin:12.6px 28.4625px 0;
    gap:9.75px;
    font:400 13px/20px Poppins,sans-serif;
  }
  .view-fin-grid .fin-check input {
    width:22.75px;
    height:22.75px;
    flex:0 0 22.75px;
  }
  .view-fin-grid .fin-topo .fin-chart { margin:15px 28.4625px 0; }
  .view-fin-grid .fin-topo .fin-filtro-periodo input[type="date"] {
    flex:0 0 145.9375px;
    width:145.9375px;
  }
  .view-fin-grid .fin-topo .fin-check {
    height:33px;
    margin-top:7.475px;
  }
  .view-fin-grid .fin-meio {
    width:calc(100% + 13px);
    margin-left:-6.5px;
    gap:0;
    margin-bottom:13px;
  }
  .view-fin-grid .fin-meio-top {
    height:584.6125px;
    grid-template-columns:33.333333% 66.666667%;
    margin-bottom:0;
  }
  .view-fin-grid .fin-meio-bottom {
    width:calc(100% + 19.5px);
    margin-left:-9.75px;
    height:757.55px;
    grid-template-columns:33.333333% 66.666667%;
  }
  .view-fin-grid .fin-meio > .fin-card-bloco {
    box-sizing:border-box;
    height:calc(100% - 20.5px);
    margin:13px 12.2125px 7.475px;
    padding:0;
  }
  .view-fin-grid .fin-meio-top > .fin-card-bloco { height:564.1375px; }
  .view-fin-grid .fin-meio-bottom > .fin-card-bloco { height:737.075px; }
  .view-fin-grid .fin-meio .fin-card-bloco > .fin-filtro-periodo {
    margin-top:16px;
  }
  .view-fin-grid .fin-meio-top .fin-filtro-periodo input[type="date"] {
    flex:0 0 66.5375px;
    width:66.5375px;
  }
  .view-fin-grid .fin-meio-top .fin-check {
    height:53.65px;
    margin-top:9.75px;
  }
  .view-fin-grid .fin-meio-bottom .fin-filtro-periodo input[type="date"] {
    flex:0 0 231.5875px;
    width:231.5875px;
  }
  .view-fin-grid .fin-meio-bottom .fin-filtro-periodo {
    margin-left:29.25px;
    margin-right:29.25px;
  }
  .view-fin-grid .fin-rel-busca {
    box-sizing:border-box;
    height:42.55px;
    margin:13px 26px 0;
    width:calc(100% - 52px);
    padding:9.75px 13px;
    border:0.8px solid #f2f2f2;
    border-radius:0;
    background:#f2f2f2;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  .view-fin-grid .fin-rel-lista {
    margin:16px 26px 0;
    width:calc(100% - 52px);
    max-height:588px;
  }
  .view-fin-grid .fin-rel-item {
    min-height:42.95px;
    padding:10.75px 0;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
}

/* A grade V2 de Orçamentos do Lizy mantém a tabela maior que o cartão e a
   deixa rolar horizontalmente. O FLUITEC usava a grade da versão clássica;
   estas larguras são exclusivas da rota V2. */
@media (min-width:1200px) {
  #content.orc-v2-host .orc-v2-toolbar {
    grid-template-columns:165.8px 190px 190px 152.2px 152.2px;
  }
  #content.orc-v2-host .orc-v2-toolbar input:first-child { width:165.8px; }
  #content.orc-v2-host .orc-v2-toolbar input[type="date"] { width:152.2px; }
  #content.orc-v2-host .orc-v2-table {
    min-width:1203.6px;
    width:1203.6px;
    table-layout:fixed;
  }
  #content.orc-v2-host .orc-v2-table th:nth-child(1),
  #content.orc-v2-host .orc-v2-table td:nth-child(1) { width:189.55px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(2),
  #content.orc-v2-host .orc-v2-table td:nth-child(2) { width:411.7625px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(3),
  #content.orc-v2-host .orc-v2-table td:nth-child(3) { width:179.125px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(4),
  #content.orc-v2-host .orc-v2-table td:nth-child(4) { width:200.375px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(5),
  #content.orc-v2-host .orc-v2-table td:nth-child(5) { width:114.7875px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(6),
  #content.orc-v2-host .orc-v2-table td:nth-child(6) { width:108px; }
}

/* Ajuste final do aside, confrontado com o DOM do Lizy em 1280px. O scrollbar
   interno reduz 4px do content-box no FLUITEC; compensamos essa faixa para que
   os itens mantenham 239px, e preservamos o espaçamento de início/fim dos
   submenus que o navegador original mantém no wrapper do menu. */
.sidebar-nav .nav-item,
.sidebar-nav .nav-accordion { width: calc(100% - 22px); margin: 8.45px 13px; }
.sidebar-nav .nav-sub .nav-item { width: calc(100% - 22px); }
.sidebar-nav .nav-sub .nav-item:first-child { margin-top: 8.45px; }
.sidebar-nav .nav-sub .nav-item:last-child { margin-bottom: 8.45px; }
.sidebar-nav .nav-section-label { width: calc(100% + 4px); }

/* Cabeçalho desktop medido no Lizy (aside de 265px): o breadcrumb começa
   54,75px dentro do header e o avatar é o círculo azul de 35px. */
@media (min-width: 1200px) {
  .topbar { padding-left: 54.75px; }
  .topbar-avatar { border-radius: 50%; background: #009ef7; font-size: 14px; }

  /* Orçamentos V2: geometria medida no .v2-page do Lizy em 1280×720. */
  #content.orc-v2-host { padding: 4px 30px 30px !important; }
  #content.orc-v2-host .orc-v2-head,
  #content.orc-v2-host .orc-v2-tabs,
  #content.orc-v2-host .orc-v2-kpis,
  #content.orc-v2-host .orc-v2-queue,
  #content.orc-v2-host .orc-v2-toolbar,
  #content.orc-v2-host .orc-v2-table-wrap { width: 100%; margin-left: 0; }
  #content.orc-v2-host .orc-v2-head { height: 44px; margin-bottom: 16px; }
  #content.orc-v2-host .orc-v2-head h2 { font: 700 20px/32px Poppins, sans-serif; letter-spacing: -.25px; }
  #content.orc-v2-host .orc-v2-head-actions { gap: 12px; align-items: center; }
  #content.orc-v2-host .orc-v2-head-actions button:first-child { width: 129.5px; height: 34.34px; padding: 8.15px 7.5px; border-radius: 6.175px; background: #f1faff; color: #009ef7; font: 500 12.025px/18.0375px Poppins, sans-serif; }
  #content.orc-v2-host .orc-v2-head-actions button:last-child { width: 191.3px; height: 44px; padding: 10.75px 20.5px; border-radius: 12px; background: #009ef7; color: #fff; font: 500 14.3px/21.45px Poppins, sans-serif; }
  #content.orc-v2-host .orc-v2-tabs { height: 47.2px; padding: 4px; border-color: #e4e7eb; border-radius: 10px; }
  #content.orc-v2-host .orc-v2-tab { flex: 0 0 auto; min-height: 0; height: 37.6px; padding: 8px 9px; border-radius: 10px; font-size: 12.5px; line-height: 20px; }
  #content.orc-v2-host .orc-v2-tab span { min-width: auto; height: 21.6px; margin-left: 0; padding: 2px 6px; }
  #content.orc-v2-host .orc-v2-card { width: 100%; overflow: hidden; background: #fff; border: .8px solid #edeff2; border-radius: 16px; box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 4px 16px rgba(16,24,40,.05); }
  #content.orc-v2-host .orc-v2-kpis { height: 112.8px; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
  #content.orc-v2-host .orc-v2-kpis > div { min-height: 112px; padding: 18px 22px 20px; }
  #content.orc-v2-host .orc-v2-kpis span { color: #4b5563; font-size: 12px; line-height: 20px; }
  #content.orc-v2-host .orc-v2-kpis strong { margin-top: 10px; font-size: 21px; line-height: 20px; font-weight: 600; }
  #content.orc-v2-host .orc-v2-kpis small { margin-top: 4px; color: #98a1ad; font-size: 11.5px; line-height: 20px; }
  #content.orc-v2-host .orc-v2-queue { height: 46.8px; min-height: 46.8px; padding: 13px 20px; background: #fcfcfd; border: 0; }
  #content.orc-v2-host .orc-v2-toolbar { height: 122.4px; padding: 12px 20px; display: grid; grid-template-columns: 169px 190px 190px 150.6px 150.6px; grid-template-rows: 46px 39.6px; column-gap: 12px; row-gap: 12px; background: transparent; }
  #content.orc-v2-host .orc-v2-toolbar input,
  #content.orc-v2-host .orc-v2-toolbar select { width: auto; min-width: 0; height: 44px; border-color: #e4e7eb; border-radius: 12px; background: #fff; }
  #content.orc-v2-host .orc-v2-toolbar select { height: 46px; padding: 0 40px 0 16px; }
  #content.orc-v2-host .orc-v2-toolbar input:first-child { width: 169px; padding: 0 14px 0 40px; }
  #content.orc-v2-host .orc-v2-toolbar input[type=date] { width: 150.6px; padding: 0 12px; }
  #content.orc-v2-host .orc-v2-toolbar .btn { grid-column: 5; grid-row: 2; justify-self: end; width: 148.4px; height: 39.6px; margin: 0; padding: 9px 16px; border-radius: 7px; font-size: 12px; }
  #content.orc-v2-host .orc-v2-table-wrap { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
  #content.orc-v2-host .orc-v2-table { min-width: 1122.5px; width: 1122.5px; table-layout: fixed; }
  #content.orc-v2-host .orc-v2-table th { padding: 14px 16px; background: #fbfbfc; color: #4b5563; font: 500 10.5px/22px Roboto, sans-serif; letter-spacing: .9px; text-transform: uppercase; }
  #content.orc-v2-host .orc-v2-table th:nth-child(1), #content.orc-v2-host .orc-v2-table td:nth-child(1) { width: 111.8px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(2), #content.orc-v2-host .orc-v2-table td:nth-child(2) { width: 411.8px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(3), #content.orc-v2-host .orc-v2-table td:nth-child(3) { width: 179.1px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(4), #content.orc-v2-host .orc-v2-table td:nth-child(4) { width: 200.4px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(5), #content.orc-v2-host .orc-v2-table td:nth-child(5) { width: 111.3px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(6), #content.orc-v2-host .orc-v2-table td:nth-child(6) { width: 108px; }
}
.conta-new-label{font:600 14.95px/20px Poppins,sans-serif}

/* Override final das Configurações: esta regra fica depois da folha-base para
   prevalecer também sobre a grade genérica do perfil. */
@media (min-width: 1200px) {
  .cfg-profile-grid { grid-template-columns: 1fr; }
  .cfg-profile-grid .cfg-company-list { grid-column: auto; }
  .cfg-main-tabs { scrollbar-width: none; }
  .cfg-main-tabs::-webkit-scrollbar { height: 0; }
}

/* Faturamento V2 — abas e alternador medidos na tela autenticada do Lizy. */
.fat-v2-top{align-items:flex-start;min-height:84.75px;margin-bottom:16px}
.fat-v2-top .tabs{box-sizing:border-box;display:flex;flex:0 0 359px;width:359px;min-width:359px;height:84.75px;gap:19.5px;padding:30px 0 9.75px;margin:0;background:transparent;border:0;border-radius:0;flex-wrap:nowrap}
.fat-v2-top .tabs .tab{box-sizing:border-box;position:relative;display:inline-flex;flex:0 0 160px;width:160px;min-width:160px;height:45px;align-items:center;justify-content:center;padding:16.25px 13px 6.5px;border:.8px solid #e4e6ef;border-radius:12px;background:#fff;color:#7e8299;font-size:13.975px;font-weight:500;line-height:13.975px;letter-spacing:.232px;white-space:nowrap}
.fat-v2-top .tabs .tab:hover{color:#009ef7;background:#fff}
.fat-v2-top .tabs .tab.active{color:#009ef7;background:#fff;border-color:#e4e6ef}
.fat-v2-top .tabs .tab.active::after{position:absolute;right:0;bottom:0;left:0;height:4px;border-radius:0 0 12px 12px;background:#009ef7;content:""}
.fat-v2-top .fat-new-version{height:34.3375px;padding:8.15px 7.5px;border:0;border-radius:6.175px;background:#f1faff;color:#009ef7;font:500 12.025px/18.0375px Poppins,sans-serif}
.faturamento-v2-table th .fat-sort{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:#a1a5b7;font:700 12px/18px Poppins,sans-serif;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.faturamento-v2-table th .fat-sort:hover,.faturamento-v2-table th .fat-sort:focus{color:#009ef7}
.faturamento-v2-table th .fat-sort span{color:#009ef7;font-size:13px}
.orc-v2-table th .orc-sort{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:#a1a5b7;font:700 12px/18px Poppins,sans-serif;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.orc-v2-table th .orc-sort:hover,.orc-v2-table th .orc-sort:focus{color:#009ef7}
.orc-v2-table th .orc-sort span{color:#009ef7;font-size:13px}

/* Comercial / Orçamentos V2 — malha responsiva confrontada com o Lizy em
   viewport 1074×698 (client width 1059px quando a página possui rolagem).
   O HTML do FLUITEC mantém seus próprios dados e handlers; estas regras
   alinham somente a composição, espaçamento e tipografia da tela. */
@media (min-width: 769px) and (max-width: 1199px) {
  #content.orc-v2-host {
    box-sizing: border-box;
    width: 100%;
    margin-top: -14px;
    padding: 4px 15px 30px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
  #content.orc-v2-host .orc-v2-head,
  #content.orc-v2-host .orc-v2-tabs,
  #content.orc-v2-host .orc-v2-kpis,
  #content.orc-v2-host .orc-v2-queue,
  #content.orc-v2-host .orc-v2-toolbar,
  #content.orc-v2-host .orc-v2-table-wrap {
    width: 100%;
    margin-left: 0;
  }
  #content.orc-v2-host .orc-v2-head {
    height: 44px;
    margin-bottom: 16px;
    flex-wrap: nowrap;
  }
  #content.orc-v2-host .orc-v2-head h2 {
    font: 700 20px/32px Poppins, sans-serif;
    letter-spacing: -.25px;
  }
  #content.orc-v2-host .orc-v2-head-actions {
    gap: 12px;
    align-items: center;
    flex-wrap: nowrap;
  }
  #content.orc-v2-host .orc-v2-head-actions button:first-child {
    box-sizing: border-box;
    width: 129.5px;
    height: 34.34px;
    padding: 8.15px 7.5px;
    border-radius: 6.175px;
    background: #f1faff;
    color: #009ef7;
    font: 500 12.025px/18.0375px Poppins, sans-serif;
    white-space: nowrap;
  }
  #content.orc-v2-host .orc-v2-head-actions button:last-child {
    box-sizing: border-box;
    width: 191.3px;
    height: 44px;
    padding: 10.75px 20.5px;
    border-radius: 12px;
    background: #009ef7;
    color: #fff;
    font: 500 14.3px/21.45px Poppins, sans-serif;
    white-space: nowrap;
  }
  #content.orc-v2-host .orc-v2-tabs {
    box-sizing: border-box;
    height: 47.2px;
    padding: 4px;
    gap: 2px;
    overflow: hidden;
    border-color: #e4e7eb;
    border-radius: 10px;
    margin-bottom: 18px;
  }
  #content.orc-v2-host .orc-v2-tab {
    box-sizing: border-box;
    flex: 0 0 auto;
    min-height: 0;
    height: 37.6px;
    padding: 8px 9px;
    border-radius: 10px;
    font-size: 12.5px;
    line-height: 20px;
  }
  #content.orc-v2-host .orc-v2-tab:nth-child(1) { width: 182.85px; }
  #content.orc-v2-host .orc-v2-tab:nth-child(2) { width: 222.15px; }
  #content.orc-v2-host .orc-v2-tab:nth-child(3) { width: 137.98px; }
  #content.orc-v2-host .orc-v2-tab:nth-child(4) { width: 166.01px; }
  #content.orc-v2-host .orc-v2-tab:nth-child(5) { width: 138.49px; }
  #content.orc-v2-host .orc-v2-tab:nth-child(6) { width: 162.13px; }
  #content.orc-v2-host .orc-v2-tab span {
    min-width: auto;
    height: 21.6px;
    margin-left: 0;
    padding: 2px 6px;
  }
  #content.orc-v2-host .orc-v2-card {
    width: 100%;
    overflow: hidden;
    background: #fff;
    border: .8px solid #edeff2;
    border-radius: 16px;
    box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 4px 16px rgba(16,24,40,.05);
  }
  #content.orc-v2-host .orc-v2-kpis {
    box-sizing: border-box;
    height: 225.6px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: 112px 112.8px;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  #content.orc-v2-host .orc-v2-kpis > div {
    box-sizing: border-box;
    min-height: 0;
    height: auto;
    padding: 18px 22px 20px;
    border-right: 1px solid #eff2f5;
    border-bottom: 1px solid #eff2f5;
  }
  #content.orc-v2-host .orc-v2-kpis > div:nth-child(2n) { border-right: 0; }
  #content.orc-v2-host .orc-v2-kpis > div:nth-last-child(-n+2) { border-bottom: 0; }
  #content.orc-v2-host .orc-v2-kpis span { color: #4b5563; font-size: 12px; line-height: 20px; }
  #content.orc-v2-host .orc-v2-kpis strong { margin-top: 10px; font-size: 21px; line-height: 20px; font-weight: 600; }
  #content.orc-v2-host .orc-v2-kpis small { margin-top: 4px; color: #98a1ad; font-size: 11.5px; line-height: 20px; }
  #content.orc-v2-host .orc-v2-queue {
    box-sizing: border-box;
    height: 46.8px;
    min-height: 46.8px;
    padding: 13px 20px;
    background: #fcfcfd;
    border: 0;
    flex-wrap: nowrap;
  }
  #content.orc-v2-host .orc-v2-queue > span { font-size: 12px; }
  #content.orc-v2-host .orc-v2-progress { flex: 1 1 auto; min-width: 0; }
  #content.orc-v2-host .orc-v2-legend { flex: 0 0 auto; gap: 14px; font-size: 11px; }
  #content.orc-v2-host .orc-v2-toolbar {
    box-sizing: border-box;
    height: 122.4px;
    padding: 12px 20px;
    display: grid;
    grid-template-columns: 211.725px 211.7375px 211.7375px 152.2px 152.2px;
    grid-template-rows: 46px 39.6px;
    column-gap: 12px;
    row-gap: 12px;
    background: transparent;
  }
  #content.orc-v2-host .orc-v2-toolbar input,
  #content.orc-v2-host .orc-v2-toolbar select {
    box-sizing: border-box;
    width: auto;
    min-width: 0;
    height: 44px;
    border-color: #e4e7eb;
    border-radius: 12px;
    background: #fff;
  }
  #content.orc-v2-host .orc-v2-toolbar select { height: 46px; padding: 0 40px 0 16px; }
  #content.orc-v2-host .orc-v2-toolbar input:first-child { width: 211.725px; padding: 0 14px 0 40px; }
  #content.orc-v2-host .orc-v2-toolbar input[type=date] { width: 152.2px; padding: 0 12px; }
  #content.orc-v2-host .orc-v2-toolbar .btn {
    grid-column: 5;
    grid-row: 2;
    justify-self: end;
    width: 148.45px;
    height: 39.6px;
    margin: 0;
    padding: 9px 16px;
    border-radius: 7px;
    font-size: 12px;
  }
  #content.orc-v2-host .orc-v2-table-wrap {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow-x: auto;
  }
  #content.orc-v2-host .orc-v2-table {
    min-width: 1203.6px;
    width: 1203.6px;
    table-layout: fixed;
  }
  #content.orc-v2-host .orc-v2-table th {
    box-sizing: border-box;
    height: 50.4px;
    padding: 14px 16px;
    background: #fbfbfc;
    color: #4b5563;
    font: 500 10.5px/22px Roboto, sans-serif;
    letter-spacing: .9px;
    text-transform: uppercase;
  }
  #content.orc-v2-host .orc-v2-table th:nth-child(1), #content.orc-v2-host .orc-v2-table td:nth-child(1) { width: 189.55px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(2), #content.orc-v2-host .orc-v2-table td:nth-child(2) { width: 411.7625px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(3), #content.orc-v2-host .orc-v2-table td:nth-child(3) { width: 179.125px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(4), #content.orc-v2-host .orc-v2-table td:nth-child(4) { width: 200.375px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(5), #content.orc-v2-host .orc-v2-table td:nth-child(5) { width: 114.7875px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(6), #content.orc-v2-host .orc-v2-table td:nth-child(6) { width: 108px; }
  #content.orc-v2-host .orc-v2-table td {
    box-sizing: border-box;
    height: 92.8px;
    min-height: 92.8px;
    padding: 0;
    vertical-align: middle;
    color: rgba(0,0,0,.87);
    font: 400 14px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-ref-kicker {
    color: #98a1ad;
    font: 400 10px/20px Poppins, sans-serif;
    letter-spacing: 0;
  }
  #content.orc-v2-host .orc-v2-ref {
    display: block;
    margin-top: 2px;
    color: rgba(0,0,0,.87);
    font: 600 14.5px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-muted {
    margin-top: 0;
    color: #98a1ad;
    font: 400 12px/18px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-table td:nth-child(1) .orc-v2-ref-kicker,
  #content.orc-v2-host .orc-v2-table td:nth-child(1) .orc-v2-ref,
  #content.orc-v2-host .orc-v2-table td:nth-child(1) .orc-v2-muted { margin-left: 4px; }
  #content.orc-v2-host .orc-v2-table td:nth-child(2) > strong {
    display: block;
    color: rgba(0,0,0,.87);
    font: 600 14px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-table td:nth-child(2) .orc-v2-obs {
    margin-top: 2px;
    color: #98a1ad;
    font: 400 12px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-status {
    padding: 5px 12px;
    border-radius: 13px;
    color: #009ef7;
    font: 500 11.5px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-table td:nth-child(3) .orc-v2-muted { margin-top: 0; font-size: 11px; line-height: 20px; }
  #content.orc-v2-host .orc-v2-activity {
    color: rgba(0,0,0,.87);
    font: 400 14px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-activity.muted { color: rgba(0,0,0,.87); }
  #content.orc-v2-host .orc-v2-table td:nth-child(4) a {
    color: #009ef7;
    font: 400 11px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host .orc-v2-table td:nth-child(5) > strong {
    color: rgba(0,0,0,.87);
    font: 500 14.5px/20px Poppins, sans-serif;
  }
  #content.orc-v2-host #pager-orc-v2 {
    box-sizing: border-box;
    min-height: 78.6px;
    margin: 0;
    padding: 20px;
    align-items: center;
    color: #7e8299;
    font-size: 12px;
  }
}

/* Serviços > Análise — a página do Lizy é um módulo incorporado. As medidas
   abaixo reproduzem o enquadramento que ele ocupa dentro do mesmo shell
   responsivo (1074×698), sem alterar a fonte local de OSs nem seus handlers. */
@media (min-width: 769px) and (max-width: 1199px) {
  #content.fila-analise-host > .section-card {
    box-sizing: border-box;
    height: 91.6px;
    margin-bottom: 18.1px !important;
    padding: 20px 24px;
  }
  #content.fila-analise-host > .section-card > div:first-child {
    gap: 30px !important;
  }
  #content.fila-analise-host .section-card-icon {
    box-sizing: border-box;
    width: 63px;
    height: 63px;
    flex: 0 0 63px;
    margin-left: 3.8px;
    position: relative;
    top: -20.7px;
    border-radius: 3px;
    box-shadow: 0 4px 20px rgba(0,0,0,.14), 0 7px 10px -5px rgba(0,158,247,.4);
    font-size: 24px;
  }
  #content.fila-analise-host .section-card-title {
    position: relative;
    top: -4.6px;
    color: #3c4858;
    font: 300 18px/25.2px Poppins, sans-serif;
  }
  #content.fila-analise-host > .section-card > div:last-child {
    gap: 17px !important;
    margin-right: 0;
  }
  #content.fila-analise-host > .section-card > div:last-child .btn {
    box-sizing: border-box;
    height: 41.14px;
    padding: 12px 30px;
    border-radius: 3.2px;
    font: 500 12px/17.14px Poppins, sans-serif;
    position: relative;
    top: -6.625px;
    white-space: nowrap;
  }
  #content.fila-analise-host > .section-card > div:last-child > .btn { width: 141.05px; }
  #content.fila-analise-host > .section-card > div:last-child > .dropdown-fn > .btn { width: 134.31px; }
  #content.fila-analise-host > .section-card > div:last-child .btn > i { display: none; }
  #content.fila-analise-host > .cards-grid {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    margin: 0 0 40px 33.6px !important;
    gap: 0;
  }
  #content.fila-analise-host > .cards-grid > .card {
    box-sizing: border-box;
    position: relative;
    width: 338.4px;
    min-width: 338.4px;
    max-width: 338.4px;
    height: 157px;
    min-height: 157px;
    padding: 12px;
    gap: 0;
    align-items: flex-start;
    border: 1.6px solid #e7edf5;
    border-radius: 6px;
  }
  #content.fila-analise-host > .cards-grid > .card .card-side-panel {
    box-sizing: border-box;
    width: 86px;
    height: 86px;
    flex: 0 0 86px;
    margin: 0 0 0 15.7px;
    border-radius: 3px;
    font-size: 26px;
    position: relative;
    top: -19px;
    box-shadow: 1px 1px 20px 1px rgba(0,0,0,.14);
  }
  #content.fila-analise-host > .cards-grid > .card .card-body {
    position: absolute;
    top: 13.6px;
    left: 27.7px;
    right: 27.7px;
    width: auto;
    text-align: right;
  }
  #content.fila-analise-host > .cards-grid > .card .card-label {
    margin: 0;
    padding: 10px 0 0;
    color: #999;
    font: 400 14px/24px Poppins, sans-serif;
  }
  #content.fila-analise-host > .cards-grid > .card .card-value {
    margin: 0;
    color: #3c4858;
    font: 300 25px/35px Poppins, sans-serif;
  }
  #content.fila-analise-host > .view-toolbar {
    box-sizing: border-box;
    width: calc(100% - 67px);
    height: 36px;
    margin: 0 0 8px 34.6px !important;
    gap: 29px !important;
    align-items: flex-end;
  }
  #content.fila-analise-host > .view-toolbar #analise-cat-menu,
  #content.fila-analise-host > .view-toolbar #analise-cat-menu > button {
    box-sizing: border-box;
    width: 338.4px;
    height: 34px;
  }
  #content.fila-analise-host > .view-toolbar #analise-cat-menu > button {
    padding: 8px 0;
    border: 0;
    border-bottom: 1px solid #d9dce4;
    border-radius: 0;
    background: transparent;
    color: #333;
    font: 400 14px/24px Poppins, sans-serif;
    text-align: left;
  }
  #content.fila-analise-host > .view-toolbar #busca-os {
    box-sizing: border-box;
    width: auto;
    height: 36px;
    padding: 7px 2px;
    color: #333;
    font: 400 14px/15.4px Poppins, sans-serif;
  }
  #content.fila-analise-host > div:nth-of-type(4) {
    box-sizing: border-box;
    width: calc(100% - 68.2px);
    margin: 39px 0 15.2px 34.6px !important;
  }
  #content.fila-analise-host > div:nth-of-type(4) .btn {
    box-sizing: border-box;
    width: 89.6px;
    height: 41.14px;
    padding: 12px 30px;
    border-radius: 3.2px;
    font: 500 12px/17.14px Poppins, sans-serif;
  }
  #content.fila-analise-host > div:nth-of-type(4) .btn > i { display:none; }
  #content.fila-analise-host > .table-wrap {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    margin-left: 33.6px;
    overflow-x: hidden;
  }
  #content.fila-analise-host .analise-table {
    box-sizing: border-box;
    position: relative;
    left: -.8px;
    width: calc(100% + 2.8px);
    min-width: 0;
    table-layout: fixed;
  }
  #content.fila-analise-host .analise-table th {
    box-sizing: border-box;
    height: 72.8px;
    padding: 12px 30px 12px 8px;
    color: #333;
    font: 300 17px/24px Poppins, sans-serif;
  }
  #content.fila-analise-host .analise-table td {
    box-sizing: border-box;
    padding: 12px 8px;
    color: #333;
    font: 400 16px/24px Poppins, sans-serif;
    vertical-align: middle;
  }
  #content.fila-analise-host .analise-table th:nth-child(1), #content.fila-analise-host .analise-table td:nth-child(1) { width: 193.5px; padding-left: 8px; }
  #content.fila-analise-host .analise-table th:nth-child(2), #content.fila-analise-host .analise-table td:nth-child(2) { width: 154.3px; }
  #content.fila-analise-host .analise-table th:nth-child(4), #content.fila-analise-host .analise-table td:nth-child(4) { width: 124.25px; }
  #content.fila-analise-host .analise-table th:nth-child(5), #content.fila-analise-host .analise-table td:nth-child(5) { width: 107.05px; }
  #content.fila-analise-host .analise-table th:nth-child(6), #content.fila-analise-host .analise-table td:nth-child(6) { width: 154.4px; }
  #content.fila-analise-host .analise-table th:nth-child(7), #content.fila-analise-host .analise-table td:nth-child(7) { width: 116.3px; }
  #content.fila-analise-host .analise-table th:nth-child(9), #content.fila-analise-host .analise-table td:nth-child(9) { width: 113.3px; }
  #content.fila-analise-host .analise-table th:nth-child(3), #content.fila-analise-host .analise-table td:nth-child(3),
  #content.fila-analise-host .analise-table th:nth-child(8), #content.fila-analise-host .analise-table td:nth-child(8),
  #content.fila-analise-host .analise-table th:nth-child(10), #content.fila-analise-host .analise-table td:nth-child(10) { display: none; }
  #content.fila-analise-host .tr-urgente td,
  #content.fila-analise-host .tr-urgente td * { color: #ffc700 !important; font-weight: 700; }
  #content.fila-analise-host .red-row td,
  #content.fila-analise-host .red-row td * { color:#f1416c!important; font-weight:700; }
  #content.fila-analise-host .analise-urgente { color: #ffc700; font-size: 12.8px; font-weight: 400; }
}

/* Serviços > Motores/Eletrônicos — o módulo original ocupa o iframe com
   um cabeçalho de abas de 48px e mantém os cartões/tabela em uma malha
   interna de 962px. O FLUITEC continua usando seus próprios dados e ações;
   este ajuste só reproduz o enquadramento e a hierarquia visual. */
@media (min-width: 769px) and (max-width: 1199px) {
  #content.fila-processo-host {
    box-sizing: border-box;
    margin-top: -18px;
    padding: 16px 15px 30px !important;
    overflow-x: hidden !important;
  }
  #content.fila-processo-host > .servicos-processo-tabs {
    box-sizing: border-box;
    width: calc(100% - 40px);
    height: 48px;
    margin: 0 0 42px 20px;
    padding: 8px 15px 0;
    gap: 5px;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
  }
  #content.fila-processo-host > .servicos-processo-tabs .tab {
    box-sizing: border-box;
    flex: 0 0 auto;
    height: 40px;
    min-height: 40px;
    padding: 10px 8px;
    border-radius: 0;
    color: #3f4254;
    font: 400 11px/16.5px Poppins, sans-serif;
    white-space: nowrap;
  }
  #content.fila-processo-host > .servicos-processo-tabs .tab.active {
    background: #009ef7;
    color: #fff;
  }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(1) { width: 53.6px; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(2) { width: 151.8px; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(3) { width: 129.3px; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(4) { width: 130.3px; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(5) { width: 99.9px; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(6) { width: 80px; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:nth-child(7) { width: 96.3px; }

  #content.fila-processo-host > .section-card {
    box-sizing: border-box;
    width: 100%;
    height: 91.6px;
    margin: 0 0 10.2px !important;
    padding: 20px 24px;
  }
  #content.fila-processo-host > .cards-grid {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    margin: 0 0 30px 33.6px !important;
    gap: 30px;
  }
  #content.fila-processo-host > .cards-grid > .card {
    box-sizing: border-box;
    width: 301.1px;
    min-width: 301.1px;
    max-width: 301.1px;
    height: 157px;
    min-height: 157px;
  }
  #content.fila-processo-host > .fila-processo-toolbar {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    height: 36px;
    margin: 0 0 31px 33.6px !important;
    gap: 0;
    align-items: flex-end;
  }
  #content.fila-processo-host > .fila-processo-toolbar #fila-cat-menu { display: none; }
  #content.fila-processo-host > .fila-processo-toolbar #busca-os {
    box-sizing: border-box;
    width: 100%;
    height: 36px;
    padding: 7px 2px;
    border: 0;
    border-bottom: 1px solid #d9dce4;
    border-radius: 0;
    background: transparent;
    color: #333;
    font: 400 14px/15.4px Poppins, sans-serif;
  }
  #content.fila-processo-host > .fila-processo-toolbar > .btn-icon { display: none; }
  #content.fila-processo-host > .table-wrap {
    box-sizing: border-box;
    width: calc(100% - 67.2px);
    margin-left: 33.6px;
    overflow-x: hidden;
  }
}

/* A ficha de edição separa os dados da entrada do equipamento do cabeçalho.
   Os IDs permanecem os mesmos para preservar salvarOSForm/calcMotor. */
.os-arrival-slots {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}
.os-arrival-slot {
  min-width: 0;
  padding: 10px;
  border: 1px solid #e4e6ef;
  border-radius: 8px;
  background: #fff;
}
.os-arrival-preview {
  height: 116px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;
  overflow: hidden;
  border-radius: 6px;
  background: #f5f8fa;
  color: #a1a5b7;
  font-size: 12px;
}
.os-arrival-preview img { width: 100%; height: 100%; object-fit: cover; cursor: zoom-in; }
.os-arrival-actions { display: flex; gap: 6px; align-items: center; margin-top: 8px; flex-wrap: wrap; }
.os-arrival-actions .btn { flex: 1 1 auto; justify-content: center; white-space: nowrap; }
.os-arrival-actions .btn[disabled] { opacity: .45; cursor: not-allowed; }
.os-arrival-more { display: flex; gap: 8px; align-items: center; margin-bottom: 12px; flex-wrap: wrap; }
@media (max-width: 900px) { .os-arrival-slots { grid-template-columns: repeat(2, minmax(140px, 1fr)); } }
@media (max-width: 520px) { .os-arrival-slots { grid-template-columns: 1fr; } }

/* A ficha da OS usa o componente visual .card, mas precisa ocupar a largura
   inteira. Sem esta neutralização, o max-width global de .card comprime todos
   os rótulos da Entrada do Equipamento em telas largas e estreitas. */
#content .lizy-os-entry {
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-width: 0;
  max-width: none;
  flex: 0 0 100%;
  overflow: visible;
}
#content .lizy-os-entry > h3,
#content .lizy-os-entry .lizy-os-grid { width: 100%; min-width: 0; }
#content .lizy-os-entry .form-group { min-width: 0; }
#content .lizy-os-entry .form-group input,
#content .lizy-os-entry .form-group select { width: 100%; min-width: 0; }

@media (max-width: 768px) {
  #content .lizy-os-entry {
    margin: 0 0 14px;
    padding: 18px 16px;
    border: 1px solid #eff2f5;
    border-radius: 8px;
  }
  #content .lizy-os-entry h3 { margin: 0 0 14px; font-size: 19px; line-height: 1.3; }
  #content .lizy-os-entry .lizy-os-grid,
  #content .lizy-os-entry .lizy-os-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; }
  #content .lizy-os-entry .lizy-os-check { align-self: end; min-height: 42px; }
}
@media (max-width: 520px) {
  #content .lizy-os-entry { padding: 16px 13px; }
  #content .lizy-os-entry .lizy-os-grid,
  #content .lizy-os-entry .lizy-os-grid-4 { grid-template-columns: minmax(0, 1fr); }
  #content .lizy-os-entry .form-group label { white-space: normal; line-height: 1.25; }
}
@media (min-width: 769px) and (max-width: 1199px) {
  #content .lizy-os-header {
    padding-right: 33.6px;
    padding-left: 33.6px;
  }
  #content .lizy-os-title-row { margin-left: 88px; }
  #content .lizy-os-grid-top { grid-template-columns: repeat(4,minmax(0,1fr)); }
  #content .lizy-os-grid:not(.lizy-os-grid-top):not(.lizy-os-grid-3) .form-group { margin-bottom: 8px; }
  #content .lizy-os-grid-3 .form-group,
  #content .lizy-os-line { margin-bottom: 5px; }
  #content .lizy-os-entry {
    box-sizing: border-box;
    display: block !important;
    width: 100%;
    max-width: none;
    margin-top: -28.9px;
    margin-bottom: 16px;
    padding: 0 33.6px 5px;
    border: 0 !important;
    overflow: visible;
  }
  #content .lizy-os-entry h3 {
    width: 310.225px;
    margin: 0 0 16px;
    color: #3f4254;
    font-size: 20px;
    font-weight: 400;
    line-height: 35px;
  }
  #content .lizy-arrival-card {
    border: 0 !important;
    padding: 23.7px 33.6px !important;
  }
  #content .lizy-os-entry .form-group { margin: 0 0 14px; }
  #content .lizy-os-entry .form-group label {
    display: block;
    margin: 0;
    color: #a1a5b7;
    font-size: 11.5px;
    font-weight: 400;
  }
  #content .lizy-os-entry .form-group input {
    width: 100%;
    min-height: 34px;
    padding: 6px 0 5px;
    border: 0;
    border-bottom: 1px solid #dfe2e8;
    border-radius: 0;
    background: transparent;
    color: #3f4254;
    font-size: 13.5px;
    box-shadow: none;
  }
  #content .lizy-os-entry .lizy-os-check { margin-bottom: 14px; }
}

/* Suprimentos > Estoque */
.estoque-top-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:760px;margin-bottom:24px}.estoque-kpi{min-height:144px;background:#fff;border-radius:8px;display:flex;align-items:flex-start;gap:20px;padding:30px;box-shadow:0 0 20px rgba(76,87,125,.06)}.estoque-kpi>i{font-size:28px}.estoque-kpi .est-blue{color:#009ef7}.estoque-kpi .est-red{color:#f1416c}.estoque-kpi div{display:flex;flex-direction:column;gap:18px}.estoque-kpi span{font-size:15px;color:#7e8299;font-weight:600}.estoque-kpi strong{font-size:30px;color:#181c32}.estoque-dashboard{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(460px,1.4fr);gap:22px;margin-bottom:24px}.estoque-dashboard .cfg-panel{margin:0;min-height:280px}.estoque-niveis-content{display:flex;align-items:center;justify-content:center;gap:34px}.estoque-donut{width:160px;height:160px;border-radius:50%;background:conic-gradient(#50cd89 0 calc(var(--p1)*1%),#009ef7 calc(var(--p1)*1%) calc(var(--p2)*1%),#ffc700 calc(var(--p2)*1%) calc(var(--p3)*1%),#f1416c calc(var(--p3)*1%) 100%);position:relative;display:flex;align-items:center;justify-content:center}.estoque-donut:after{content:"";position:absolute;width:104px;height:104px;border-radius:50%;background:#fff}.estoque-donut span{position:relative;z-index:1;font-weight:700;font-size:24px;color:#181c32}.estoque-level-list{display:flex;flex-direction:column;gap:5px;min-width:150px}.estoque-level-list button{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:9px;border:0;background:transparent;border-radius:7px;padding:8px 10px;color:#7e8299;text-align:left}.estoque-level-list button.active{background:#f1faff;color:#009ef7}.estoque-level-list i{width:9px;height:9px;border-radius:50%}.nivel-alto{background:#50cd89}.nivel-ideal{background:#009ef7}.nivel-baixo{background:#ffc700}.nivel-zero{background:#f1416c}.estoque-produtos-panel>input{width:100%;border:0;background:#f5f8fa;border-radius:7px;padding:13px 14px;margin-bottom:14px}.estoque-attention{display:flex;gap:15px;align-items:flex-start;border:1px dashed #70c7f5;background:#effaff;border-radius:8px;padding:22px;margin:0 0 14px}.estoque-attention>i{width:32px;height:32px;border-radius:50%;background:#b9e6ff;color:#009ef7;display:flex;align-items:center;justify-content:center}.estoque-attention div{display:flex;flex-direction:column;gap:4px}.estoque-attention span{color:#7e8299;font-size:13px}.estoque-prod-preview{max-height:145px;overflow:auto}.estoque-prod-preview>div{display:flex;justify-content:space-between;gap:12px;padding:7px 4px;border-bottom:1px solid #eff2f5;font-size:12px}.estoque-prod-preview strong{color:#009ef7}.estoque-section-head{justify-content:space-between;margin-top:4px}
@media(max-width:1000px){.estoque-dashboard{grid-template-columns:1fr}.estoque-top-cards{max-width:none}.estoque-dashboard .cfg-panel{min-height:0}}
@media(max-width:650px){.estoque-top-cards{grid-template-columns:1fr}.estoque-niveis-content{flex-direction:column}}

/* Suprimentos auditado contra Compras/Estoque do Lizy */
.suprimentos-host{max-width:1440px;margin:0 auto}.suprimentos-host .section-card{background:#fff;border-radius:10px;padding:22px 28px;box-shadow:0 0 20px rgba(76,87,125,.04)}
.suprimentos-host .table-wrap{background:#fff;border-radius:10px;box-shadow:0 0 20px rgba(76,87,125,.04)}
.suprimentos-host .table th{color:#a1a5b7;text-transform:none;font-size:13px}.suprimentos-host .table td{padding-top:17px;padding-bottom:17px}
.supply-status,.supply-stock{display:inline-flex;align-items:center;font-weight:700;font-size:12px;padding:5px 9px;border-radius:6px;background:#fff4de;color:#ffa800;white-space:nowrap}
.supply-status.finalizada,.supply-status.finalizado,.supply-stock.ideal{background:#e8fff3;color:#50cd89}.supply-status.cancelada,.supply-stock.zero{background:#fff5f8;color:#f1416c}.supply-status.solicitado-cotação,.supply-status.disponível,.supply-stock.alta{background:#eef8ff;color:#009ef7}.supply-stock.baixa{background:#fff4de;color:#ffa800}
.supply-report-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.supply-entry{position:relative}.supply-entry .dropdown-fn-menu{min-width:190px}.supply-entry .dropdown-fn-menu a,.supply-entry .dropdown-fn-menu button{display:block;width:100%;padding:10px 14px;border:0;background:#fff;text-align:left;color:#5e6278;text-decoration:none}.supply-entry .dropdown-fn-menu a:hover,.supply-entry .dropdown-fn-menu button:hover{background:#f5f8fa;color:#009ef7}
.supply-quote-grid{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;margin-bottom:20px}.supply-conditions{display:flex;flex-direction:column;gap:14px}.supply-purchase-item-grid{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-bottom:20px}.supply-purchase-item-grid .form-group{width:115px;margin:0}.supply-purchase-item-grid .supply-grow{flex:1 1 230px}.supply-purchase-item-grid .btn{height:43px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px 18px}.estoque-section-head{margin-top:18px}.suprimentos-estoque-host .estoque-kpi{border:1px solid #eff2f5}.suprimentos-estoque-host .table small{display:block;color:#a1a5b7;margin-top:3px}
@media(max-width:1000px){.supply-quote-grid,.filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.supply-quote-grid,.filter-grid{grid-template-columns:1fr}.supply-purchase-item-grid .form-group,.supply-purchase-item-grid .supply-grow{width:100%;flex-basis:100%}}
.lanc-v2-head { display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; margin-bottom:18px; }
.lanc-v2-title { margin:0; font-size:26px; line-height:1.2; font-weight:650; color:#181c32; }
.lanc-v2-head-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex:1 1 720px; flex-wrap:wrap; }
.lanc-v2-search { display:flex; align-items:center; flex:1 1 220px; max-width:340px; background:#f5f8fa; border-radius:7px; }
.lanc-v2-search i { margin-left:13px; color:#a1a5b7; }
.lanc-v2-search input { border:0; background:transparent; box-shadow:none; padding:12px; }
.lanc-v2-search input:focus { box-shadow:none; }
.lanc-v2-head .lanc-v2-search { flex:0 1 170px; max-width:170px; }
.lanc-v2-head .lanc-data { flex:0 0 150px; width:150px; min-width:150px; }
.lanc-v2-head-actions .btn { padding:12px 14px; font-size:12px; }
.lanc-v2-filters { display:grid; grid-template-columns:repeat(5,minmax(145px,1fr)); gap:10px; margin-bottom:12px; }
.lanc-v2-filters select { border:0; background:#f5f8fa; color:#3f4254; padding:12px 14px; }
.lanc-status-row { margin-bottom:18px; }
.lanc-status-row select { width:100%; border:0; background:#f5f8fa; color:#3f4254; padding:12px 14px; }
.lanc-v2-tabrow { display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; margin:8px 0 18px; }
.lanc-v2-tabs,.lanc-v2-modes { display:inline-flex; gap:2px; flex-wrap:wrap; padding:4px; margin:0; border-radius:8px; background:#fff; box-shadow:0 2px 10px rgba(76,87,125,.08); }
.lanc-v2-tabs button,.lanc-v2-modes button { border:0; border-radius:7px; background:#fff; color:#a1a5b7; padding:10px 16px; cursor:pointer; font-size:12px; font-weight:600; }
.lanc-v2-tabs button.active,.lanc-v2-modes button.active { background:#009ef7; color:#fff; font-weight:600; }
.lanc-v2-tabs span { display:inline-block; min-width:20px; margin-left:6px; padding:1px 5px; border-radius:10px; background:#f1f4f9; font-size:10px; text-align:center; }
.lanc-v2-tabs button.active span { background:rgba(255,255,255,.2); color:#fff; }
.lanc-day-row td { padding:11px 14px !important; background:#f5f8fa; color:#181c32; }
.lanc-day-row span { margin-left:12px; color:#a1a5b7; font-size:11px; }
.lanc-v2-totais { order:0; margin:0 0 16px; border:1px solid #eff2f5; border-radius:8px; background:#fafcff; }
.lanc-v2-table th { white-space:nowrap; text-transform:uppercase; font-size:11px; font-weight:700; color:#a1a5b7; letter-spacing:.25px; }
.lanc-v2-table td { vertical-align:middle; }
.lanc-v2-ref { display:inline-flex; padding:5px 9px; border-radius:5px; background:#eef8ff; color:#009ef7; font-size:11px; font-weight:700; white-space:nowrap; }
.lanc-ref-original { display:inline-flex; flex-direction:column; gap:1px; min-width:62px; padding-left:9px; border-left:3px solid #50cd89; line-height:1.1; white-space:nowrap; }
.lanc-ref-type { color:#7e8299; font-size:10px; font-weight:700; text-transform:uppercase; }
.lanc-ref-num { color:#181c32; font-size:13px; font-weight:700; }
.lanc-conta-nome { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.lanc-banco-logo { width:22px; height:22px; object-fit:contain; border-radius:3px; }
.lanc-v2-status { display:inline-block; padding:5px 9px; border-radius:13px; font-size:10px; font-weight:700; white-space:nowrap; }
.lanc-v2-status.pago { background:#e8fff3; color:#1bc5bd; }
.lanc-v2-status.pendente { background:#fff8dd; color:#b58a00; }
.lanc-v2-status.atraso { background:#fff5f8; color:#f1416c; }
@media (max-width:1350px){ .lanc-v2-filters { grid-template-columns:repeat(3,1fr); } }
@media (max-width:760px){
  .lanc-v2-head-actions { justify-content:stretch; }
  .lanc-v2-search { max-width:none; flex-basis:100%; }
  .lanc-v2-filters { grid-template-columns:1fr; }
}

/* Lançamentos V2: composição desktop medida no Lizy em 1280×720. A tela
   mantém a marcação/handlers do FLUITEC, mas usa a mesma linha de controles,
   duas linhas de filtros e o mesmo cartão apenas para resumo/tabela. */
@media (min-width: 1200px) {
  #content.lanc-v2-host { padding: 0 30px 30px !important; }
  #content.lanc-v2-host .lanc-abas-emp {
    box-sizing: border-box;
    width: 100%;
    height: 84.8px;
    margin: 0;
    padding-top: 30px;
    gap: 19.4px;
    flex-wrap: nowrap;
    overflow: hidden;
  }
  #content.lanc-v2-host .lanc-aba-emp {
    box-sizing: border-box;
    height: 45px;
    padding: 16.25px 13px 6.5px;
    border: .8px solid #e4e6eb;
    border-radius: 12px;
    font-size: 13.975px;
    line-height: 13.975px;
    font-weight: 500;
    white-space: nowrap;
  }
  #content.lanc-v2-host .lanc-aba-emp.ativa {
    border-bottom: 4px solid #009ef7;
    box-shadow: none;
  }
  #content.lanc-v2-host .lanc-v2-card {
    width: 100%;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  #content.lanc-v2-host .lanc-v2-head {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    width: 100%;
    height: 99px;
    margin: 4px 0 16px;
  }
  #content.lanc-v2-host .lanc-v2-title {
    flex: 0 0 138px;
    width: 138px;
    margin: 6px 0 0;
    font-size: 20px;
    line-height: 32px;
    font-weight: 700;
  }
  #content.lanc-v2-host .lanc-v2-head-actions {
    display: grid;
    flex: 0 0 783.8px;
    width: 783.8px;
    height: 99px;
    grid-template-columns: 185.2px 313.2px 129.5px 120px;
    grid-template-rows: 44px 43px;
    column-gap: 12px;
    row-gap: 12px;
    align-items: start;
  }
  #content.lanc-v2-host .lanc-v2-head-actions > .lanc-v2-search {
    grid-column: 1;
    grid-row: 1;
    width: 185.2px;
    max-width: none;
    height: 44px;
    flex: none;
  }
  #content.lanc-v2-host .lanc-v2-head-actions > .lanc-datas {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    gap: 12px;
    width: 313.2px;
    height: 44px;
  }
  #content.lanc-v2-host .lanc-datas .lanc-data {
    box-sizing: border-box;
    flex: 0 0 150.6px;
    width: 150.6px;
    height: 44px;
    padding: 0 12px;
    border: .8px solid #e4e7eb;
    border-radius: 12px;
    background: #fff;
  }
  #content.lanc-v2-host .lanc-v2-head-actions > .btn-secondary {
    grid-column: 3;
    grid-row: 1;
    width: 129.5px;
    height: 34.3px;
    margin: 4px 0 0;
    padding: 8.15px 7.5px;
    border: 0;
    border-radius: 6.175px;
    background: #f1faff;
    color: #009ef7;
    font-size: 12.025px;
    line-height: 18.0375px;
  }
  #content.lanc-v2-host .lanc-v2-head-actions > .lanc-export-menu {
    grid-column: 4;
    grid-row: 1;
    width: 120px;
    height: 44px;
  }
  #content.lanc-v2-host .lanc-v2-head-actions > .lanc-novo {
    position: absolute;
    left: 0;
    top: 56px;
    width: 196.1px;
    height: 43px;
    margin: 0;
    padding: 10.75px 20.5px;
    border-radius: 6.175px;
    font-size: 13px;
  }
  #content.lanc-v2-host .lanc-v2-head { position: relative; }
  #content.lanc-v2-host .lanc-v2-filters {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: 46px 46px;
    column-gap: 12px;
    row-gap: 12px;
    width: 100%;
    height: 104px;
    margin: 0 0 20px;
  }
  #content.lanc-v2-host .lanc-v2-filters > select {
    box-sizing: border-box;
    width: 100%;
    height: 46px;
    min-width: 0;
    padding: 0 16px;
    border: 0;
    border-radius: 12px;
    background: #f5f8fa;
  }
  #content.lanc-v2-host .lanc-v2-filters > select:nth-child(5) { grid-column: 1 / span 2; }
  #content.lanc-v2-host .lanc-v2-filters > select:nth-child(6) { grid-column: 3 / span 2; }
  #content.lanc-v2-host .lanc-status-row { display: none; }
  #content.lanc-v2-host .lanc-v2-tabrow {
    display: block;
    width: 100%;
    height: 113.6px;
    margin: 0 0 18px;
  }
  #content.lanc-v2-host .lanc-v2-tabs,
  #content.lanc-v2-host .lanc-v2-modes {
    box-sizing: border-box;
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
    background: #fff;
  }
  #content.lanc-v2-host .lanc-v2-tabs { width: 627.5px; height: 52px; }
  #content.lanc-v2-host .lanc-v2-modes { width: 403.7px; height: 49.6px; margin-top: 12px; }
  #content.lanc-v2-host .lanc-mes-nav {
    width: 100%;
    height: 32px;
    margin: 0 0 16px;
  }
  #content.lanc-v2-host .lanc-v2-totais {
    width: 100%;
    height: 82.1px;
    margin: 0;
  }
  #content.lanc-v2-host > .lanc-v2-card > .table-wrap {
    width: 100%;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: #fff;
  }
}

/* ══ CONCILIAÇÃO ═══════════════════════════════════════════════════════════ */
.conc-card { display:block; width:100%; min-width:0; max-width:none; padding:0; overflow:hidden; }
.conc-legacy-card { padding:0; }
.conc-legacy-top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; border-bottom:1px solid #eff2f5; }
.conc-legacy-title-row { display:flex; align-items:center; gap:12px; min-width:0; }
.conc-legacy-title-row .conc-titulo { white-space:nowrap; }
.conc-legacy-version { border:0; background:transparent; color:#009ef7; padding:7px 0; font-size:12px; font-weight:600; cursor:pointer; white-space:nowrap; }
.conc-legacy-actions { display:flex; align-items:center; gap:14px; }
.conc-legacy-actions .btn { min-width:213px; justify-content:center; }
.conc-legacy-attention { margin:22px 38px 20px; border-style:dashed; }
.conc-topo { display:flex; align-items:center; justify-content:space-between;
  gap:14px; flex-wrap:wrap; margin-bottom:24px; }
.conc-titulo { font-size:22px; font-weight:650; color:#181c32; margin:0; }
.conc-acoes { display:flex; gap:12px; flex-wrap:wrap; }
.conc-atencao { display:flex; gap:16px; background:#f1faff; border:1px solid #d7f0ff;
  border-radius:8px; padding:22px 24px; }
.conc-atencao-ic { flex:0 0 auto; width:34px; height:34px; border-radius:50%;
  background:#d7f0ff; color:#009ef7; display:flex; align-items:center;
  justify-content:center; font-size:15px; }
.conc-atencao-tit { font-size:17px; font-weight:650; color:#181c32; margin-bottom:6px; }
.conc-atencao-txt { margin:0; font-size:14.5px; color:#3f4254; line-height:1.6; }
.conc-empty-head { padding:42px 24px 30px; text-align:center; }
.conc-empty-head h3 { margin:0 0 10px; color:#181c32; font-size:20px; font-weight:650; }
.conc-empty-head p { max-width:700px; margin:0 auto; color:#7e8299; font-size:14px; line-height:1.65; }
.conc-steps { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #eff2f5; border-bottom:1px solid #eff2f5; }
.conc-steps > div { min-height:128px; padding:22px 24px; }
.conc-steps > div + div { border-left:1px solid #eff2f5; }
.conc-steps b { display:flex; align-items:center; gap:12px; color:#181c32; font-size:13px; }
.conc-steps b span { display:inline-grid; place-items:center; flex:0 0 27px; width:27px; height:27px; border-radius:7px; background:#f1f4f9; color:#a1a5b7; }
.conc-steps > div:first-child b span { background:#009ef7; color:#fff; }
.conc-steps p { margin:7px 0 0 39px; color:#7e8299; font-size:12px; line-height:1.55; }
.conc-import-grid { display:grid; grid-template-columns:1.1fr .9fr; }
.conc-import-grid section { padding:28px 30px; }
.conc-import-grid section + section { border-left:1px solid #eff2f5; }
.conc-kicker { margin-bottom:18px; color:#7e8299; font-size:10px; font-weight:700; letter-spacing:.08em; }
.conc-kicker span { margin-left:9px; padding:5px 8px; border-radius:12px; background:#f1f4f9; color:#a1a5b7; font-size:9px; }
.conc-drop { width:100%; min-height:145px; padding:24px; border:1px dashed #cfd4df; border-radius:8px; background:#fff; color:#181c32; cursor:pointer; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; }
.conc-drop:hover { border-color:#009ef7; background:#f9fdff; }
.conc-drop i { color:#009ef7; font-size:30px; }
.conc-drop strong { font-size:13px; }
.conc-drop small { color:#a1a5b7; font-size:11px; }
.conc-bank { display:flex; align-items:center; gap:12px; min-height:64px; margin-bottom:10px; padding:12px 14px; border:1px solid #eff2f5; border-radius:8px; color:#3f4254; }
.conc-bank > i { width:30px; height:30px; display:grid; place-items:center; border-radius:6px; background:#f5f8fa; color:#5e6278; }
.conc-bank div { min-width:0; flex:1; }
.conc-bank strong,.conc-bank small { display:block; }
.conc-bank strong { font-size:12px; }
.conc-bank small { margin-top:2px; color:#b5b5c3; font-size:10px; }
.conc-bank em { color:#b5b5c3; font-size:10px; font-style:normal; }
.conc-complemento { margin-top:18px; color:#7e8299; font-size:12px; }
.conc-complemento p { margin:0 0 14px; }
.conc-pdf-help { display:flex; align-items:center; gap:8px; flex-wrap:wrap; border:0; background:transparent; padding:0; color:#009ef7; cursor:pointer; text-align:left; }
.conc-pdf-help i { font-size:16px; }
.conc-pdf-help span { font-weight:600; }
.conc-pdf-help small { flex-basis:100%; margin-left:24px; color:#7e8299; }
.conc-open-note { margin-top:18px !important; line-height:1.55; }
.conc-pdf-bancos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.conc-pdf-bancos div { display:flex; align-items:center; justify-content:space-between; padding:11px 13px; border:1px solid #eff2f5; border-radius:7px; background:#fff; }
.conc-pdf-bancos span { color:#009ef7; font-weight:700; }
@media (max-width:900px) {
  .conc-legacy-top { align-items:stretch; flex-direction:column; }
  .conc-legacy-actions { flex-wrap:wrap; }
  .conc-legacy-actions .btn { flex:1 1 180px; min-width:0; }
  .conc-legacy-attention { margin:18px; }
  .conc-steps,.conc-import-grid { grid-template-columns:1fr; }
  .conc-steps > div + div,.conc-import-grid section + section { border-left:0; border-top:1px solid #eff2f5; }
}

/* ══ COBRANÇA ══════════════════════════════════════════════════════════════ */
.cob-card { display:block; width:100%; min-width:0; max-width:none; padding:26px; }
.cob-topo { display:flex; align-items:center; justify-content:space-between;
  gap:14px; flex-wrap:wrap; margin-bottom:24px; }
.cob-titulo { font-size:22px; font-weight:650; color:#181c32; margin:0; }
.cob-filtros { display:grid; grid-template-columns:minmax(0,1fr) 154px 165px 165px;
  gap:14px; margin-bottom:20px; align-items:center; }
.cob-busca { width:100%; min-width:0; background:#f5f8fa; border:0; border-radius:7px;
  padding:13px 16px; font-size:14px; }
.cob-sel { width:154px; background:#f5f8fa; border:0; border-radius:7px; padding:13px 16px;
  font-size:14px; color:#3f4254; min-width:0; cursor:pointer; }
.cob-data { width:165px; background:#f5f8fa; border:0; border-radius:7px; padding:12px 14px;
  font-size:14px; min-width:0; }
.cob-vazio { display:flex; align-items:center; gap:14px; background:#fff8dd;
  border-radius:8px; padding:22px 24px; font-size:17px; font-weight:600; color:#7e6a00; }
.cob-vazio-ic { flex:0 0 auto; width:30px; height:30px; border-radius:50%;
  background:#ffc700; color:#fff; display:flex; align-items:center;
  justify-content:center; font-size:15px; }
.cob-paginacao { display:flex; align-items:center; justify-content:flex-end; gap:12px;
  font-size:13.5px; color:#7e8299; border-top:1px solid #eff2f5; margin-top:18px;
  padding-top:16px; }
.cob-sel-pag { width:84px; flex:0 0 84px; background:#fff; border:1px solid #e4e6ef; border-radius:6px;
  padding:5px 10px; font-size:13.5px; }
.cob-page-btn { width:36px; height:36px; padding:0; }
.cob-page-btn:disabled { opacity:.45; cursor:default; }

@media (max-width:900px) {
  .cob-filtros { grid-template-columns:minmax(0,1fr) minmax(145px, 1fr); }
  .cob-sel,.cob-data { width:100%; }
}

/* Boletos/Cobrança — composição desktop conferida no Lizy (viewport 1280). */
@media (min-width:1200px) {
  .cob-card {
    padding:26px 26px 40.4px;
  }
  .cob-card .cob-topo {
    height:44.5px;
    margin-top:4.7px;
    margin-bottom:51.4px;
  }
  .cob-card .cob-titulo {
    font-size:17.67px;
    line-height:24px;
    font-weight:600;
  }
  .cob-card .cob-topo .btn-primary {
    box-sizing:border-box;
    width:213.5px;
    height:44.5px;
    padding:10px 12px;
    font-size:13px;
    font-weight:600;
  }
  .cob-card .cob-filtros {
    display:flex;
    align-items:center;
    gap:0;
    height:42.5px;
    margin-bottom:31.1px;
  }
  .cob-card .cob-busca {
    box-sizing:border-box;
    flex:0 0 357.8px;
    width:357.8px;
    height:42.5px;
    padding:9.75px 13px;
    font-size:14.3px;
    line-height:21.45px;
  }
  .cob-card .cob-sel {
    box-sizing:border-box;
    flex:0 0 154.5px;
    width:154.5px;
    height:42.5px;
    margin-left:12.2px;
    padding:9.75px 13px;
    font-size:14.3px;
    line-height:21.45px;
  }
  .cob-card .cob-data {
    box-sizing:border-box;
    flex:0 0 165px;
    width:165px;
    height:42.5px;
    padding:9.75px 13px;
    font-size:14.3px;
    line-height:21.45px;
  }
  .cob-card .cob-data:nth-of-type(2) { margin-left:27.7px; }
  .cob-card .cob-data:nth-of-type(3) { margin-left:20px; }
  .cob-card .table-wrap { border:0; }
  .cob-card .table { border-spacing:0; }
  .cob-card .table th {
    box-sizing:border-box;
    padding:13px 8px;
    font-size:15px;
    line-height:22px;
    font-weight:600;
    color:#a1a5b7;
  }
  .cob-card .table td {
    font-size:14px;
    line-height:20px;
  }
  .cob-card .cob-vazio {
    min-height:76.3px;
    box-sizing:border-box;
    font-size:16px;
    line-height:24px;
  }
}

/* ══ FATURAMENTO ═══════════════════════════════════════════════════════════ */
.fat-ref-badge { display:inline-block; background:#f1faff; color:#009ef7;
  font-weight:600; font-size:14px; border-radius:6px; padding:7px 14px; white-space:nowrap; }
.fat-desc { font-size:14px; line-height:1.7; color:#3f4254; }
.fat-obs { font-size:14px; color:#3f4254; }

/* Botão colorido de largura cheia no rodapé do card (print 31/07) */
.fin-card-acao { width:100%; margin-top:auto; border:0; border-radius:7px;
  padding:15px 18px; font-size:15px; font-weight:600; color:#fff; cursor:pointer;
  display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.fin-card-acao.azul     { background:#009ef7; }
.fin-card-acao.verde    { background:#50cd89; }
.fin-card-acao.vermelho { background:#f1416c; }
.fin-card-acao:hover    { filter:brightness(.94); }
.fin-card { min-height:250px; }
.fin-card-valor { font-size:30px; }

/* Link de ação no rodapé dos blocos (Baixar Excel / Gerar Relatório) */
.fin-link-acao { background:none; border:0; color:#009ef7; font-size:15px;
  font-weight:600; cursor:pointer; padding:14px 0 0; display:block; }

/* Vazio amarelo dos blocos */
.fin-top-list:empty::after { content:""; }
.fin-vazio-amarelo { background:#fff8dd; border-radius:8px; padding:44px 20px;
  text-align:center; color:#7e6a00; font-size:16px; font-weight:600; }
.fin-vazio-amarelo i { display:block; font-size:26px; margin-bottom:12px; opacity:.7; }

/* Lista de relatórios com busca; cada relatório em PDF e Excel */
.fin-rel-busca { width:100%; background:#f5f8fa; border:0; border-radius:7px;
  padding:13px 16px; font-size:14px; margin-bottom:12px; }
.fin-rel-lista { max-height:330px; overflow-y:auto; display:flex;
  flex-direction:column; }
.fin-rel-item { display:flex; align-items:center; gap:12px; background:none;
  border:0; border-bottom:1px solid #f4f6f9; padding:14px 4px; font-size:15px;
  color:#181c32; cursor:pointer; text-align:left; }
.fin-rel-item:hover { background:#f9fafc; }
.fin-rel-item i.pdf { color:#f1416c; font-size:17px; }
.fin-rel-item i.xls { color:#50cd89; font-size:17px; }

/* ── VISÃO GERAL FINANCEIRA — faixa 769–1199px (geometria observada no Lizy) ─
   Nesta largura o original usa as colunas Bootstrap `col-12`: os quatro
   cartões ficam empilhados e os blocos seguintes também. Os valores continuam
   vindo do banco local de homologação; este bloco trata apenas apresentação e
   preserva os handlers já existentes. */
@media (min-width:769px) and (max-width:1199px) {
  #content .view-fin-grid { display:block; min-width:0; overflow:visible; }
  #content .view-fin-grid .fin-topo {
    display:block;
    width:calc(100% + 1.575px);
    margin-left:-0.7875px;
    margin-bottom:33.475px;
  }
  #content .view-fin-grid #fin-cards-top {
    box-sizing:border-box;
    display:grid;
    grid-template-columns:1fr;
    gap:20.475px;
    width:100%;
    margin:0;
    padding:13px 12.2125px 7.475px;
  }
  #content .view-fin-grid #fin-cards-top > .fin-card {
    box-sizing:border-box;
    width:100%;
    min-height:0;
    height:179.95px;
    padding:0;
    border-radius:6.175px;
    border:0;
    box-shadow:rgba(76,87,125,.02) 0 0 20px 0;
    display:flex;
    flex-direction:column;
    gap:0;
  }
  #content .view-fin-grid #fin-cards-top > .fin-card:nth-child(1),
  #content .view-fin-grid #fin-cards-top > .fin-card:nth-child(4) { height:212.95px; }
  #content .view-fin-grid .fin-card-topo {
    box-sizing:border-box;
    flex:0 0 61.75px;
    width:100%;
    align-self:stretch;
    height:61.75px;
    margin:0;
    padding:29.25px 26px 0;
    gap:9.75px;
    align-items:flex-start;
    display:flex;
    border:0;
    background:transparent;
  }
  #content .view-fin-grid .fin-card-icone {
    box-sizing:border-box;
    flex:0 0 32.5px;
    width:32.5px;
    height:32.5px;
    margin:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:0;
    line-height:16.575px;
  }
  #content .view-fin-grid .fin-card-icone svg { width:32.5px; height:32.5px; display:block; }
  #content .view-fin-grid .fin-card-icone.ic-azul { color:#3699ff; }
  #content .view-fin-grid .fin-card-icone.ic-verde { color:#50cd89; }
  #content .view-fin-grid .fin-card-icone.ic-vermelho { color:#f1416c; }
  #content .view-fin-grid .fin-card-nome {
    display:block;
    margin:12.5px 0 0;
    color:#181c32;
    font:600 16.25px/20px Poppins,sans-serif;
    letter-spacing:.232143px;
    text-decoration:none;
  }
  #content .view-fin-grid .fin-card-body {
    box-sizing:border-box;
    display:flex;
    flex:1 1 auto;
    width:100%;
    align-self:stretch;
    align-items:stretch;
    min-height:0;
    flex-direction:column;
    padding:19.5px 29.25px 26px;
    margin:0;
  }
  #content .view-fin-grid .fin-card-valor {
    box-sizing:border-box;
    height:20px;
    margin:0;
    color:#181c32;
    font:600 23px/20px Poppins,sans-serif;
    font-variant-numeric:tabular-nums;
  }
  #content .view-fin-grid #fin-cards-top > .fin-card:nth-child(1) .fin-card-valor,
  #content .view-fin-grid #fin-cards-top > .fin-card:nth-child(4) .fin-card-valor { margin-bottom:13px; }
  #content .view-fin-grid .fin-card-sub {
    box-sizing:border-box;
    height:20px;
    margin:0 0 9.75px;
    color:#a1a5b7;
    font:700 13.975px/20px Poppins,sans-serif;
  }
  #content .view-fin-grid .fin-card-acao {
    box-sizing:border-box;
    width:100%;
    min-height:42.95px;
    height:42.95px;
    margin:auto 0 0;
    padding:10.75px 20.5px;
    border:0;
    border-radius:6.175px;
    font:500 14.3px/21.45px Poppins,sans-serif;
    white-space:normal;
  }
  #content .view-fin-grid .fin-card-grafico {
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    width:calc(100% - 13px);
    height:524.75px;
    margin:13px 0 0 6.5px;
    padding:0;
    border:0;
    border-radius:6.175px;
    box-shadow:rgba(76,87,125,.02) 0 0 20px 0;
  }
  #content .view-fin-grid .fin-card-titulo {
    box-sizing:border-box;
    flex:0 0 auto;
    height:24px;
    margin:29.25px 26px 0;
    color:#181c32;
    font:600 17.6693px/24px Poppins,sans-serif;
  }
  #content .view-fin-grid .fin-filtro-periodo {
    display:flex;
    box-sizing:border-box;
    flex-wrap:nowrap;
    gap:0;
    height:42.55px;
    margin:16px 28.4625px 0;
  }
  #content .view-fin-grid .fin-filtro-periodo input[type="date"] {
    box-sizing:border-box;
    flex:0 0 44.6313%;
    width:44.6313%;
    min-width:0;
    height:42.55px;
    padding:9.75px 13px;
    border:.8px solid #f2f2f2;
    border-radius:0;
    background:#f2f2f2;
    color:#5e6278;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content .view-fin-grid .fin-filtro-periodo input[type="date"] + input[type="date"] { margin-left:5.8503%; }
  #content .view-fin-grid .fin-check {
    box-sizing:border-box;
    display:flex;
    align-items:center;
    gap:9.75px;
    height:22.75px;
    margin:12.6px 28.4625px 0;
    color:#3f4254;
    font:400 13px/20px Poppins,sans-serif;
  }
  #content .view-fin-grid .fin-check input {
    box-sizing:border-box;
    flex:0 0 22.75px;
    width:22.75px;
    height:22.75px;
    margin:0;
  }
  #content .view-fin-grid .fin-card-grafico .fin-chart {
    box-sizing:border-box;
    flex:0 0 350px;
    height:350px;
    margin:12.6px 26px 0;
    padding:0;
    background:transparent;
    border:0;
    overflow:hidden;
  }
  #content .view-fin-grid .fin-card-grafico .fin-chart > p { margin:0; padding:0 !important; }
  #content .view-fin-grid .fin-meio,
  #content .view-fin-grid .fin-meio-top,
  #content .view-fin-grid .fin-meio-bottom {
    display:block;
    min-width:0;
    gap:0;
  }
  #content .view-fin-grid .fin-meio-top {
    width:calc(100% - 11.425px);
    margin:0 0 0 5.7125px;
  }
  #content .view-fin-grid .fin-meio-top > .fin-card-bloco {
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    width:100%;
    height:493.7375px;
    margin:0;
    padding:0;
    border:0;
    border-radius:6.175px;
  }
  #content .view-fin-grid .fin-meio-top > .fin-card-bloco + .fin-card-bloco {
    height:517.275px;
    margin-top:20.475px;
  }
  #content .view-fin-grid .fin-meio-bottom {
    width:calc(100% - 4.925px);
    margin:20.475px 0 0 2.4625px;
  }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco {
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    width:100%;
    height:638.775px;
    margin:0;
    padding:0;
    border:0;
    border-radius:6.175px;
  }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco + .fin-card-bloco {
    height:716.275px;
    margin-top:20.475px;
  }
  #content .view-fin-grid .fin-meio .fin-card-bloco > .fin-card-titulo,
  #content .view-fin-grid .fin-meio .fin-atr-topo {
    margin-top:29.25px;
  }
  #content .view-fin-grid .fin-meio .fin-card-bloco > .fin-filtro-periodo { margin-top:16px; }
  #content .view-fin-grid .fin-meio-top .fin-check { margin-top:15.2px; }
  #content .view-fin-grid .fin-meio-top > .fin-card-bloco + .fin-card-bloco .fin-chart { margin-top:7.475px; }
  #content .view-fin-grid .fin-meio .fin-card-bloco > .fin-chart {
    box-sizing:border-box;
    height:350px;
    margin:12.6px 26px 0;
    padding:0;
    overflow:hidden;
  }
  #content .view-fin-grid .fin-meio .fin-card-bloco > .fin-chart > p { margin:0; padding:0 !important; }
  #content .view-fin-grid .fin-top-list {
    box-sizing:border-box;
    min-height:207.86px;
    margin:12.6px 26px 0;
  }
  #content .view-fin-grid .fin-link-acao { height:33px; box-sizing:border-box; margin:auto 26px 0; padding:0 0 13px; }
  #content .view-fin-grid .fin-rel-busca {
    box-sizing:border-box;
    height:42.55px;
    width:calc(100% - 52px);
    margin:13px 26px 0;
    padding:9.75px 13px;
    border:.8px solid #f2f2f2;
    border-radius:0;
    background:#f2f2f2;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content .view-fin-grid .fin-rel-lista {
    box-sizing:border-box;
    width:calc(100% - 52px);
    height:470px;
    max-height:none;
    margin:27.475px 26px 0;
    overflow:hidden;
  }
  #content .view-fin-grid .fin-rel-item {
    min-height:42.95px;
    padding:10.75px 0;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco + .fin-card-bloco .fin-atr-topo {
    box-sizing:border-box;
    height:65.47px;
    margin:29.25px 26px 0;
    align-items:center;
  }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco + .fin-card-bloco .fin-atr-topo .fin-card-titulo { margin:0; }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco + .fin-card-bloco .fin-filtro-periodo {
    margin:0 29.25px;
  }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco + .fin-card-bloco .fin-filtro-periodo input[type="date"] {
    flex-basis:45.1635%;
    width:45.1635%;
  }
  #content .view-fin-grid .fin-meio-bottom > .fin-card-bloco + .fin-card-bloco .fin-filtro-periodo input[type="date"] + input[type="date"] { margin-left:5.8204%; }
  #content .view-fin-grid #fin-atrasados { margin:9.75px 26px 0; }
}

/* Cadastros na mesma largura responsiva do Lizy atual. A rota de Prospecção
   continua disponível diretamente, mas não é um cartão da grade principal
   nesta sessão observada. */
@media (min-width:769px) and (max-width:1199px) {
  #content .cadastros-page-title {
    margin:0 0 9.5px 4px !important;
    width:calc(100% - 4px);
  }
  #content .cad-grid {
    box-sizing:border-box;
    width:calc(100% - 4.925px);
    margin-left:2.4625px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    column-gap:24.425px;
    row-gap:20.475px;
    transform:none;
  }
  #content .cad-folder {
    box-sizing:border-box;
    width:auto;
    height:194.75px;
    min-height:194.75px;
    padding:26px;
  }
  #content .cad-folder-icon {
    box-sizing:border-box;
    padding-top:5px;
  }
}

/* Cabeçalho de Lançamentos Atrasados com o seletor à direita */
.fin-atr-topo { display:flex; align-items:center; justify-content:space-between;
  gap:12px; margin-bottom:14px; }
.fin-atr-sel { background:#f5f8fa; border:0; border-radius:7px; padding:12px 16px;
  font-size:14px; color:#3f4254; min-width:170px; cursor:pointer; }

/* ══ AUDITORIA LIZY 18/08/2026 — WORKSPACES COMERCIAL E TÉCNICO ════════════
   Seletores próprios para não deixar as abas grandes de fila vazarem para os
   formulários internos. As medidas seguem a sessão autenticada de referência. */
#of-tabs,
#an-tabs {
  display: flex;
  width: 100%;
  gap: 8px;
  padding: 8px 14px 10px !important;
  margin: 0 !important;
  overflow-x: auto;
  flex-wrap: wrap !important;
  align-items: center;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #eff2f5 !important;
  border-radius: 0;
}
#of-tabs { flex-wrap: nowrap !important; }
#of-tabs .tab,
#an-tabs .tab {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  min-height: 46px;
  padding: 12px 18px !important;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 7px;
  background: transparent;
  border: 0;
  border-radius: 24px;
  color: #3f4254;
  font-size: 12px !important;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}
#of-tabs .tab i { font-size: 14px; }
#of-tabs .tab:hover,
#an-tabs .tab:hover { color: #009ef7; background: #f1faff; }
#of-tabs .tab.active,
#an-tabs .tab.active {
  color: #fff;
  background: #009ef7;
  border: 0;
  box-shadow: 0 5px 14px rgba(0, 158, 247, .22);
}
#an-tabs .tab { text-transform: uppercase; }
#an-tabs .tab:focus { outline: 0; }

/* A ficha autenticada do Lizy usa linhas pretas nas tabelas técnicas. */
.an-pane table th,
.an-pane table td,
.an-tech-band,
.an-tech-cell,
.an-tech-heading { border-color: #000 !important; }

/* Chegada do equipamento na edição: um único seletor e galeria contínua. */
.lizy-arrival-card { min-height: 230px; }
.lizy-arrival-upload { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.lizy-add-image-btn {
  box-sizing:border-box;
  min-width:190px;
  min-height:48px;
  padding:10px 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:2px dotted #009ef7;
  border-radius:3px;
  background:#fff;
  color:#252f4a;
  font-size:16px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 7px 18px rgba(0,0,0,.13);
}
.lizy-add-image-btn:hover { color:#009ef7; background:#f8fcff; }
.lizy-arrival-upload #os-fotos-ilimitadas-nome,
.lizy-arrival-loading { color:#a1a5b7; font-size:13px; }
.lizy-arrival-existing { margin-top:22px; }
.lizy-arrival-existing .os-fotos-grid { gap:22px; }
.lizy-arrival-existing .os-foto-item { width:150px; }
.lizy-arrival-existing .os-foto-item img { width:150px; height:110px; border-radius:3px; }
.lizy-arrival-existing .os-foto-leg,
.lizy-arrival-existing .os-foto-legenda { display:none; }
.lizy-arrival-existing .os-foto-item .btn-icon-red {
  position:static;
  width:34px;
  height:34px;
  margin:7px auto 0;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  background:transparent;
  color:#f1416c;
  font-size:23px;
  opacity:1;
}

/* Edição da O.S. conforme a ficha contínua observada no Lizy. Os cartões
   continuam separados nas demais telas; aqui formam uma única superfície. */
#content.os-edit-host > .card {
  margin-bottom: 0 !important;
  border: 0 !important;
  border-radius: 0;
  box-shadow: none;
}
#content.os-edit-host > .lizy-os-header { border-radius: 8px 8px 0 0; padding-bottom: 18px; }
#content.os-edit-host > .lizy-os-entry { padding-top: 18px; }
#content.os-edit-host > .lizy-arrival-card { min-height: 300px; padding-top: 18px !important; }
#content.os-edit-host .lizy-arrival-existing .os-fotos-grid { align-items: flex-start; }
#content.os-edit-host .lizy-arrival-existing .os-foto-item { width: 170px; }
#content.os-edit-host .lizy-arrival-existing .os-foto-item img {
  width: 170px;
  height: 220px;
  object-fit: contain;
  background: #f9fbfc;
}
#content.os-edit-host > .orc-form-footer-linked {
  position: static;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: auto;
  margin: 0 0 82px;
  padding: 24px 28px 34px;
  border: 0;
  border-radius: 0 0 8px 8px;
  box-shadow: none;
  background: #fff;
}

/* Inspeção Mecânica Inicial: tabelas fechadas e proporções do formulário Lizy. */
.an-mechanical-title { margin:0 0 14px; color:#3f4254; font-size:24px; line-height:1.25; font-weight:400; }
.an-mechanical-scroll { width:100%; overflow-x:auto; padding-bottom:2px; }
.an-me-keyway,
.an-mechanical-table {
  width:100%;
  min-width:780px;
  border-collapse:collapse;
  table-layout:fixed;
  color:#3f4254;
  font-size:13px;
}
.an-me-keyway { margin-bottom:18px; }
.an-me-keyway th,
.an-me-keyway td,
.an-mechanical-table th,
.an-mechanical-table td { border:1px solid #000 !important; }
.an-me-keyway th {
  height:48px;
  padding:8px 12px;
  background:#f3f4f6;
  font-weight:600;
  text-align:center;
}
.an-me-keyway td { height:66px; padding:9px 14px; background:#fff; }
.an-me-keyway label { display:block; margin:0 0 5px; color:#a1a5b7; font-size:11px; font-weight:400; }
.an-me-keyway input,
.an-mechanical-table .an-me-med {
  display:block;
  width:100%;
  min-height:28px;
  padding:4px 2px;
  border:0 !important;
  border-bottom:1px solid #e4e6ef !important;
  border-radius:0;
  background:transparent;
  color:#3f4254;
  outline:0;
  box-shadow:none;
}
.an-mechanical-table .an-me-desc-col { width:17%; }
.an-mechanical-table .an-me-obs-col { width:17%; }
.an-mechanical-table th {
  height:48px;
  padding:8px 10px !important;
  background:#f3f4f6 !important;
  color:#3f4254 !important;
  font-weight:500 !important;
  text-align:center !important;
  white-space:normal !important;
}
.an-mechanical-table tbody td { height:66px; padding:10px 14px !important; background:#fff; vertical-align:middle; }
.an-mechanical-table tbody td:first-child { text-align:center; }
.an-mechanical-table tbody td:first-child b { font-weight:600; }
.an-mechanical-table tbody tr:nth-child(n+4) td:first-child { text-align:left; }
@media (max-width:620px) {
  .an-mechanical-title { font-size:21px; }
  .an-mechanical-scroll { touch-action:pan-x; }
}

/* Laboratório: grade técnica do Lizy, sem cartões vazios de upload. */
.an-lab-title { margin:0 0 14px; color:#3f4254; font-size:24px; line-height:1.25; font-weight:400; }
.an-lab-scroll { width:100%; overflow-x:auto; padding-bottom:2px; }
.an-lab-table {
  width:100%;
  min-width:780px;
  border-collapse:collapse;
  table-layout:fixed;
  color:#3f4254;
  font-size:12px;
}
.an-lab-table th,
.an-lab-table td { border:1px solid #000 !important; background:#fff; }
.an-lab-table td { height:58px; padding:8px 14px; vertical-align:middle; }
.an-lab-table label { display:block; margin:0 0 4px; color:#a1a5b7; font-size:10.5px; font-weight:400; }
.an-lab-table input:not([type="checkbox"]),
.an-lab-table textarea {
  display:block;
  width:100%;
  min-height:27px;
  padding:4px 2px;
  border:0 !important;
  border-bottom:1px solid #e4e6ef !important;
  border-radius:0;
  background:transparent;
  color:#3f4254;
  font:inherit;
  outline:0;
  box-shadow:none;
  resize:vertical;
}
.an-lab-identification { margin-bottom:14px; }
.an-lab-section-title { margin:16px 0 10px; color:#3f4254; font-size:19px; line-height:1.25; font-weight:400; }
.an-lab-checklist { margin-bottom:16px; }
.an-lab-checklist .an-lab-check-head th {
  height:48px;
  padding:8px 10px;
  background:#f3f4f6;
  font-size:13px;
  font-weight:500;
  text-align:center;
}
.an-lab-checklist .an-lab-check-options td { height:38px; padding:6px 10px; }
.an-lab-checklist .an-lab-check-options label { display:flex; align-items:center; gap:7px; margin:0; white-space:nowrap; }
.an-lab-checklist input[type="checkbox"] { width:17px; height:17px; margin:0; accent-color:#009ef7; }
.an-lab-measures td { height:58px; }
.an-lab-details { margin-bottom:14px; }
.an-lab-observations textarea { min-height:36px; }
.an-lab-photo-section { margin-top:28px; }
.an-lab-photo-section > h4 { margin:0 0 12px; color:#3f4254; font-size:19px; font-weight:400; }
.an-lab-add-image { min-width:190px; width:max-content; }
.an-lab-photo-gallery { display:flex; align-items:flex-start; gap:18px; flex-wrap:wrap; margin-top:18px; }
.an-lab-photo-gallery:empty { display:none; }
.an-lab-photo-gallery .lab-foto { position:relative; width:170px; padding-bottom:34px; }
.an-lab-photo-gallery .lab-foto-img {
  display:block;
  width:170px;
  height:190px;
  border:1px solid #e4e6ef;
  border-radius:3px;
  background:#f9fbfc;
  object-fit:contain;
  cursor:zoom-in;
}
.an-lab-photo-gallery .lab-foto-leg { width:100%; margin-top:7px; padding:5px 3px; border:0; border-bottom:1px solid #e4e6ef; font-size:11px; }
.an-lab-photo-gallery .btn-icon-red { position:absolute; left:50%; bottom:0; transform:translateX(-50%); color:#f1416c; font-size:21px; }
@media (max-width:620px) {
  .an-lab-title { font-size:21px; }
  .an-lab-scroll { touch-action:pan-x; }
  .an-lab-photo-gallery .lab-foto,
  .an-lab-photo-gallery .lab-foto-img { width:140px; }
  .an-lab-photo-gallery .lab-foto-img { height:165px; }
}

/* Serviços do Orçamento da Ordem na fila Análise: formulário compacto do Lizy. */
.an-service-title { margin:0 0 10px; color:#3f4254; font-size:24px; line-height:1.3; font-weight:400; }
.an-service-scope-link {
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 0 18px;
  padding:0;
  border:0;
  background:transparent;
  color:#009ef7;
  font-size:13px;
  cursor:pointer;
}
.an-service-scope-link:hover { color:#007fca; text-decoration:underline; }
.an-service-compact-form {
  display:grid;
  grid-template-columns:58px minmax(260px,1fr) 185px 92px 92px;
  gap:16px 22px;
  align-items:end;
  margin-bottom:16px;
}
.an-service-compact-form .form-group { min-width:0; margin:0; }
.an-service-compact-form .form-group label { display:block; margin:0; color:#a1a5b7; font-size:10px; font-weight:400; }
.an-service-compact-form input,
.an-service-compact-form select {
  width:100%;
  min-height:34px;
  padding:6px 0 5px;
  border:0;
  border-bottom:1px solid #dfe2e8;
  border-radius:0;
  background:transparent;
  color:#3f4254;
  font-size:13px;
  box-shadow:none;
}
.an-service-compact-form input:focus,
.an-service-compact-form select:focus { border-bottom-color:#009ef7; outline:0; }
.an-service-compact-form .an-service-obs { grid-column:1 / 5; }
.an-service-compact-form .an-service-add { grid-column:5; min-height:42px; }
.an-service-table-scroll { width:100%; overflow-x:auto; }
.an-service-table { min-width:860px; margin-top:8px; }
.an-service-table th { font-weight:400; text-transform:none; }
@media (max-width:1000px) {
  .an-service-compact-form { grid-template-columns:70px minmax(210px,1fr) 170px 100px 100px; gap:12px; }
}
@media (max-width:760px) {
  .an-service-compact-form { grid-template-columns:1fr 1fr; }
  .an-service-compact-form .an-service-qtd,
  .an-service-compact-form .an-service-unit,
  .an-service-compact-form .an-service-total { grid-column:auto; }
  .an-service-compact-form .an-service-desc,
  .an-service-compact-form .an-service-sector,
  .an-service-compact-form .an-service-obs { grid-column:1 / -1; }
  .an-service-compact-form .an-service-add { grid-column:2; }
}

/* Peças Ordem na Análise: entrada e tabela compactas observadas no Lizy. */
.an-piece-title { margin:0 0 18px; color:#3f4254; font-size:24px; line-height:1.3; font-weight:400; }
.an-piece-compact-form {
  display:grid;
  grid-template-columns:58px minmax(220px,1fr) 130px 140px 140px 140px;
  gap:16px 22px;
  align-items:start;
  margin-bottom:14px;
}
.an-piece-compact-form .form-group { min-width:0; margin:0; }
.an-piece-compact-form .form-group label { display:block; margin:0; color:#a1a5b7; font-size:10px; font-weight:400; }
.an-piece-compact-form input,
.an-piece-compact-form select {
  width:100%;
  min-height:34px;
  padding:6px 0 5px;
  border:0;
  border-bottom:1px solid #dfe2e8;
  border-radius:0;
  background:transparent;
  color:#3f4254;
  font-size:13px;
  box-shadow:none;
}
.an-piece-compact-form input:focus,
.an-piece-compact-form select:focus { border-bottom-color:#009ef7; outline:0; }
.an-piece-register-link {
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:8px;
  padding:0;
  border:0;
  background:transparent;
  color:#009ef7;
  font-size:12px;
  cursor:pointer;
}
.an-piece-register-link:hover { text-decoration:underline; }
.an-piece-add { align-self:end; min-height:42px; margin-top:11px; }
.an-piece-table-scroll { width:100%; overflow-x:auto; }
.an-piece-table { min-width:920px; margin-top:8px; }
.an-piece-table th { font-weight:400; text-transform:none; }
.an-piece-check { text-align:center; }
.an-piece-check input { width:17px; height:17px; accent-color:#009ef7; }
.an-piece-totals { margin-top:28px; color:#a1a5b7; font-size:17px; line-height:1.9; font-weight:600; text-align:right; }
.an-piece-totals div:last-child { font-size:18px; }
@media (max-width:1100px) {
  .an-piece-compact-form { grid-template-columns:58px minmax(190px,1fr) 110px 120px 120px 120px; gap:12px; }
}
@media (max-width:760px) {
  .an-piece-compact-form { grid-template-columns:1fr 1fr; }
  .an-piece-compact-form .an-piece-select { grid-column:1 / -1; }
  .an-piece-compact-form .an-piece-add { grid-column:2; }
}

/* Aba Fotos da Análise: somente equipamentos desmontados, como no Lizy. */
.an-disassembled-title { margin:0 0 16px; color:#3f4254; font-size:24px; line-height:1.3; font-weight:400; }
.an-disassembled-add { min-width:190px; width:max-content; }
#an-fotos-list .os-fotos-grid { align-items:flex-start; gap:22px; margin-top:22px; }
#an-fotos-list .os-foto-item { width:170px; }
#an-fotos-list .os-foto-item img { width:170px; height:220px; object-fit:contain; background:#f9fbfc; }
#an-fotos-list .os-foto-leg { margin-top:5px; text-align:center; }
@media (max-width:620px) {
  .an-disassembled-title { font-size:21px; }
  #an-fotos-list .os-foto-item,
  #an-fotos-list .os-foto-item img { width:140px; }
  #an-fotos-list .os-foto-item img { height:180px; }
}

/* Serviços Externos da Ordem na Análise: formulário compacto do Lizy. */
.an-external-title { margin:0 0 18px; color:#3f4254; font-size:24px; line-height:1.3; font-weight:400; }
.an-external-compact-form {
  display:grid;
  grid-template-columns:minmax(210px,1.35fr) minmax(210px,1.35fr) 120px 140px 140px;
  gap:18px 24px;
  align-items:end;
  margin-bottom:18px;
}
.an-external-compact-form .form-group { min-width:0; margin:0; }
.an-external-compact-form .form-group label { display:block; margin:0; color:#a1a5b7; font-size:10px; font-weight:400; }
.an-external-compact-form input {
  width:100%;
  min-height:34px;
  padding:6px 0 5px;
  border:0;
  border-bottom:1px solid #dfe2e8;
  border-radius:0;
  background:transparent;
  color:#3f4254;
  font-size:13px;
  box-shadow:none;
}
.an-external-compact-form input:focus { border-bottom-color:#009ef7; outline:0; }
.an-external-add { min-height:42px; }
.an-external-table-scroll { width:100%; overflow-x:auto; }
.an-external-table { min-width:760px; margin-top:8px; }
.an-external-table th { font-weight:400; text-transform:none; }
@media (max-width:760px) {
  .an-external-compact-form { grid-template-columns:1fr 1fr; gap:12px; }
  .an-external-compact-form .form-group:nth-child(-n+2) { grid-column:1 / -1; }
  .an-external-add { grid-column:2; }
}

/* Arquivos da O.S. na Análise: composição compacta da referência Lizy. */
.an-files-title { margin:0 0 24px; color:#3f4254; font-size:28px; line-height:1.3; font-weight:400; }
.an-files-compact .an-arq-form {
  display:grid;
  grid-template-columns:220px minmax(260px,1fr) 145px;
  gap:16px 18px;
  align-items:center;
  margin:0 55px 30px;
}
.an-files-compact .an-files-choose {
  min-height:45px;
  justify-content:center;
  border:0;
  border-radius:4px;
  background:#3699df;
  color:#fff;
  font-size:15px;
  font-weight:500;
}
.an-files-compact .an-files-choose:hover { background:#168bd4; color:#fff; }
.an-files-compact .an-files-name {
  width:100%;
  min-width:0;
  height:38px;
  padding:7px 0;
  border:0;
  border-bottom:1px solid #dfe2e8;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.an-files-compact .an-files-name:focus { border-bottom-color:#009ef7; outline:0; }
.an-files-compact .an-files-add { min-height:45px; }
.an-files-compact .an-arq-table { margin-top:0; }
.an-files-compact .an-arq-table th { height:52px; background:#fff; color:#3f4254; font-size:15px; font-weight:400; }
.an-files-compact .an-arq-table td { height:58px; }
.an-files-compact .an-arq-pager.compact { margin-top:20px; color:#3f4254; font-size:13px; }
.an-files-page-link { padding:4px 6px; border:0; background:transparent; color:#7e8299; font-size:12px; text-transform:uppercase; cursor:pointer; }
.an-files-page-link:not([disabled]):hover { color:#009ef7; }
.an-files-page-link[disabled] { opacity:.55; cursor:not-allowed; }
@media (max-width:760px) {
  .an-files-compact .an-arq-form { grid-template-columns:1fr; margin:0 0 22px; }
  .an-files-compact .an-files-choose,
  .an-files-compact .an-files-add { width:100%; }
}
@media (max-width: 620px) {
  #content.os-edit-host .lizy-arrival-existing .os-foto-item { width: 140px; }
  #content.os-edit-host .lizy-arrival-existing .os-foto-item img { width: 140px; height: 180px; }
  #content.os-edit-host > .orc-form-footer-linked { margin-bottom: 70px; padding: 20px 16px 28px; }
}

.an-tech-table {
  width: 100%;
  margin: 0 0 18px;
  border-collapse: collapse;
  table-layout: fixed;
  color: #3f4254;
  font-size: 12px;
}
.an-tech-table th,
.an-tech-table td {
  min-width: 74px;
  padding: 8px 9px !important;
  border: 1px solid #d8dbe5;
  background: #fff;
  vertical-align: middle;
}
.an-tech-table th {
  background: #f3f4f6;
  color: #181c32;
  font-weight: 600;
  text-align: center;
}
.an-tech-band {
  padding: 10px 12px;
  border: 1px solid #d8dbe5;
  background: #f3f4f6;
  color: #181c32;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
}
.an-tech-cell { padding: 8px 10px; border: 1px solid #d8dbe5; }
.an-tech-label { color: #3f4254; font-size: 12px; font-weight: 600; }
.an-tech-heading {
  margin: 22px 0 0 !important;
  padding: 10px 12px;
  border: 1px solid #d8dbe5;
  background: #f3f4f6;
  color: #181c32;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center;
}
.an-empty-test { display: block; overflow-x: auto; table-layout: auto; }
.an-empty-test thead,
.an-empty-test tbody { width: 100%; }
.an-empty-test th,
.an-empty-test td { min-width: 92px; white-space: nowrap; }
.an-rewind-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(140px, 1fr));
  gap: 0 14px;
}
.an-inline-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 24px;
  color: #3f4254;
  font-size: 13px;
  font-weight: 500;
}
.an-inline-check input { width: auto; margin: 0; }

@media (max-width: 1100px) {
  .an-rewind-grid { grid-template-columns: repeat(3, minmax(140px, 1fr)); }
}
@media (max-width: 700px) {
  #of-tabs,
  #an-tabs { flex-wrap: nowrap !important; }
  #of-tabs .tab,
  #an-tabs .tab { flex: 0 0 auto; }
  .an-rewind-grid { grid-template-columns: 1fr; }
}

/* As regras gerais de .section-card/.view-toolbar são anteriores a outras
   telas; estes seletores compostos preservam a grade observada na Logística. */
.section-card.logistica-lista-card { display:block; align-items:stretch; padding:26px; }
.view-toolbar.logistica-filtros { display:grid; grid-template-columns:minmax(260px,1fr) 165px 165px 180px; flex-wrap:nowrap; }
.logistica-lista-card .table-wrap { width:100%; }
@media (max-width:980px) {
  .view-toolbar.logistica-filtros { grid-template-columns:1fr 1fr; }
}

/* Auditoria 298 — Logística autenticada. O Lizy mantém as três abas de
   Recebimento com 160 px, cabeçalhos em uma linha e grades diferentes em cada
   subárea. As classes host impedem que estas medidas vazem para outros módulos. */
.logistica-host > .tabs {
  display:flex; flex-wrap:nowrap; width:auto; gap:9.75px; margin:30px 0 20px;
  padding:0; overflow-x:auto; background:transparent; border:0;
}
.logistica-host > .tabs .tab {
  box-sizing:border-box; position:relative; display:inline-flex; align-items:center;
  justify-content:center; flex:0 0 160px; width:160px; min-width:160px; height:45px;
  min-height:45px; padding:8px 12px; border:1px solid #e4e6ef; border-radius:12px;
  background:#fff; color:#5e6278; font:500 14px/20px Poppins,sans-serif;
}
.logistica-host > .tabs .tab.active { color:#3f4254; background:#fff; border-bottom:4px solid #009ef7; }
.logistica-host .section-card-head { flex-direction:row; align-items:center; justify-content:space-between; flex-wrap:nowrap; }
.logistica-host .section-card-head .page-actions { display:flex; flex-wrap:nowrap; gap:0; }
.logistica-host .logistica-lista-card .table th { height:48.4px; padding-top:0; padding-bottom:0; }
.logistica-host .logistica-lista-card .search-input { text-transform:none; }

@media (min-width:761px) and (max-width:980px) {
  .logistica-host .logistica-lista-card { margin-left:-.8px; }
  .logistica-host .section-card-head { flex-direction:row!important; align-items:center!important; }

  .logistica-recebimento-host > .tabs { margin-bottom:28.45px; }
  .logistica-recebimento-host .section-card-head { min-width:750.8px; gap:0; margin-bottom:22.75px; }
  .logistica-recebimento-host .section-card-head .section-card-title { line-height:31.475px; }
  .logistica-recebimento-host .section-card-head .section-card-title { flex:0 0 375.4px; width:375.4px; }
  .logistica-recebimento-host .section-card-head .page-actions { flex:0 0 375.4px; width:375.4px; }
  .logistica-recebimento-host .section-card-head .page-actions .btn {
    box-sizing:border-box; flex:0 0 187.7px; width:187.7px; height:54.225px;
    padding:8px 10px; border-radius:5px; white-space:nowrap; overflow:hidden;
  }
  .logistica-recebimento-host .view-toolbar.logistica-filtros {
    display:grid!important; grid-template-columns:384.55px 16.25px 165px 20px 165px!important;
    grid-template-rows:42.55px 45px; column-gap:0; row-gap:26px;
    width:870.7px; margin-bottom:6.5px;
  }
  .logistica-recebimento-host .view-toolbar.logistica-filtros > * { box-sizing:border-box; min-height:42.55px; height:42.55px; margin:0; }
  .logistica-recebimento-host #rec-status { grid-column:1; grid-row:2; width:185px; height:45px; }
  .logistica-recebimento-host #rec-ini { grid-column:3; grid-row:1; }
  .logistica-recebimento-host #rec-fim { grid-column:5; grid-row:1; }
  .logistica-recebimento-host .table-wrap { width:870.7px; overflow-x:visible; }
  .logistica-recebimento-host .table { width:870.6875px; min-width:870.6875px; margin-left:-.8px; transform:translateY(-.8px); table-layout:fixed; }
  .logistica-recebimento-host .table th:nth-child(1),.logistica-recebimento-host .table td:nth-child(1){width:395.925px}
  .logistica-recebimento-host .table th:nth-child(2),.logistica-recebimento-host .table td:nth-child(2){width:124.7625px}
  .logistica-recebimento-host .table th:nth-child(3),.logistica-recebimento-host .table td:nth-child(3){width:150px}
  .logistica-recebimento-host .table th:nth-child(4),.logistica-recebimento-host .table td:nth-child(4){width:200px}

  .logistica-expedicao-host .logistica-lista-card { margin-top:.425px; }
  .logistica-expedicao-host .section-card-head { margin-bottom:17px; }
  .logistica-expedicao-host .view-toolbar { width:745.875px; margin:0 0 7.475px 2.4625px; }
  .logistica-expedicao-host .view-toolbar .search-input { box-sizing:border-box; width:745.875px; max-width:none; height:42.55px; }
  .logistica-expedicao-host .table-wrap { width:804.7px; overflow-x:visible; }
  .logistica-expedicao-host .table { width:804.7px; min-width:804.7px; margin-left:-.8px; transform:translateY(-.8px); table-layout:fixed; }
  .logistica-expedicao-host .table th:nth-child(1),.logistica-expedicao-host .table td:nth-child(1){width:250px}
  .logistica-expedicao-host .table th:nth-child(2),.logistica-expedicao-host .table td:nth-child(2){width:200px}
  .logistica-expedicao-host .table th:nth-child(3),.logistica-expedicao-host .table td:nth-child(3){width:116.35px}
  .logistica-expedicao-host .table th:nth-child(4),.logistica-expedicao-host .table td:nth-child(4){width:88.35px}
  .logistica-expedicao-host .table th:nth-child(5),.logistica-expedicao-host .table td:nth-child(5){width:150px}

  .logistica-estoque-host .logistica-lista-card { margin-top:4.7px; }
  .logistica-estoque-host .section-card-head { width:738.575px; margin-bottom:43.225px; }
  .logistica-estoque-host .section-card-head .section-card-title { line-height:24px; transform:translateY(2.125px); }
  .logistica-estoque-host .section-card-head .btn { box-sizing:border-box; flex:0 0 225.8375px; width:225.8375px; height:44.5px; }
  .logistica-estoque-host .view-toolbar.logistica-filtros {
    display:grid!important; grid-template-columns:225.8375px 225.8375px 225.8375px!important;
    grid-template-rows:42.55px 45px; column-gap:24.4375px; row-gap:21.7px;
    width:726.375px; margin:0 0 18.45px 12.2125px;
  }
  .logistica-estoque-host .view-toolbar.logistica-filtros > * { box-sizing:border-box; min-height:42.55px; height:42.55px; margin:0; }
  .logistica-estoque-host #busca-et { grid-column:1 / span 3; width:726.375px; max-width:none; }
  .logistica-estoque-host #et-ini,.logistica-estoque-host #et-fim,.logistica-estoque-host #et-status { transform:translateY(-1.225px); }
  .logistica-estoque-host #et-status { height:45px; }
  .logistica-estoque-host .table-wrap { width:797.2625px; overflow-x:visible; }
  .logistica-estoque-host .table { width:797.2625px; min-width:797.2625px; margin-left:-.8px; transform:translateY(-3.225px); table-layout:fixed; }
  .logistica-estoque-host .table th:nth-child(1),.logistica-estoque-host .table td:nth-child(1){width:32.95px!important}
  .logistica-estoque-host .table th:nth-child(1),.logistica-estoque-host .table td:nth-child(1){padding-left:0;padding-right:0}
  .logistica-estoque-host .table td:nth-child(1) .btn-icon{width:24px;height:24px}
  .logistica-estoque-host .table th:nth-child(2),.logistica-estoque-host .table td:nth-child(2){width:384.325px}
  .logistica-estoque-host .table th:nth-child(3),.logistica-estoque-host .table td:nth-child(3){width:137.25px}
  .logistica-estoque-host .table th:nth-child(4),.logistica-estoque-host .table td:nth-child(4){width:92.7375px}
  .logistica-estoque-host .table th:nth-child(5),.logistica-estoque-host .table td:nth-child(5){width:150px}
}

/* Dashboard Comercial — estrutura observada na sessão Lizy autenticada. */
.cd-periodo { display:grid; grid-template-columns:220px 220px; gap:18px; margin-bottom:18px; }
.cd-periodo .form-group, .cd-abc-filtros .form-group { margin:0; }
.cd-clientes-card, .cd-relatorios-card, .cd-abc-card { margin-bottom:18px; padding:24px; }
.cd-faturado-chart { height:350px; min-height:280px; display:flex; position:relative; padding:20px 24px 42px 42px; box-sizing:border-box; }
.cd-chart-y { width:32px; position:relative; color:#5e6278; font:12px/1 Arial,sans-serif; flex-shrink:0; }
.cd-chart-y span { position:absolute; right:8px; transform:translateY(50%); }
.cd-chart-plot { flex:1; position:relative; border-left:1px solid #e4e6ef; border-bottom:1px solid #e4e6ef; min-width:0; }
.cd-chart-grid { position:absolute; inset:0; }
.cd-chart-grid i { position:absolute; left:0; right:0; border-top:1px solid #edf0f3; }
.cd-chart-bar-wrap { position:absolute; left:8%; width:84%; bottom:0; height:100%; display:flex; align-items:center; flex-direction:column; justify-content:flex-end; }
.cd-chart-bar { width:82%; max-width:260px; min-height:0; background:rgba(0,143,251,.85); display:flex; align-items:flex-start; justify-content:center; color:#fff; transition:height .2s ease; }
.cd-chart-bar b { padding-top:8px; font:600 13px Arial,sans-serif; }
.cd-chart-bar-wrap small { position:absolute; bottom:-28px; color:#5e6278; font-size:12px; }
.cd-chart-legend { position:absolute; bottom:4px; left:50%; transform:translateX(-50%); color:#3f4254; font-size:12px; white-space:nowrap; }
.cd-chart-legend i { display:inline-block; width:12px; height:12px; margin-right:6px; vertical-align:-2px; border-radius:2px; background:#008ffb; }
.cd-relatorios-card h4 { margin:0 0 16px; font-size:16px; }
.cd-relatorios-grid { display:grid; grid-template-columns:repeat(3,minmax(190px,1fr)); gap:12px; }
.cd-relatorios-grid button { display:flex; align-items:center; gap:11px; min-height:58px; padding:12px 16px; border:1px solid #eff2f5; border-radius:8px; background:#fff; color:#3f4254; font:inherit; font-size:13px; text-align:left; cursor:pointer; }
.cd-relatorios-grid button:hover { border-color:#009ef7; color:#009ef7; background:#f5faff; }
.cd-relatorios-grid i { color:#f1416c; font-size:22px; }
.cd-abc-filtros { display:grid; grid-template-columns:minmax(250px,1fr) 190px 190px; gap:16px; margin:18px 0; }
.cd-abc-resumo { display:flex; flex-wrap:wrap; gap:22px; margin:8px 0 16px; color:#5e6278; font-size:13px; }
.cd-abc-resumo span { display:flex; align-items:center; gap:7px; }
.cd-abc-resumo i { width:10px; height:10px; border-radius:50%; }
.curva-a { background:#50cd89; }.curva-b { background:#ffa800; }.curva-c { background:#f1416c; }
.curva-tag { display:inline-flex; width:28px; height:28px; align-items:center; justify-content:center; border-radius:50%; color:#fff; }
.curva-tag.curva-a { background:#50cd89; }.curva-tag.curva-b { background:#ffa800; }.curva-tag.curva-c { background:#f1416c; }
.cd-abc-explica { margin-top:26px; color:#5e6278; font-size:13px; line-height:1.6; }
.cd-abc-explica h4 { color:#181c32; font-size:17px; margin:0 0 10px; }
.cd-abc-explica p { margin:5px 0; }
@media (max-width:900px) {
  .cd-periodo, .cd-abc-filtros { grid-template-columns:1fr; }
  .cd-relatorios-grid { grid-template-columns:1fr; }
  .cd-faturado-chart { height:300px; }
}

/* Fila Análise: primeira coluna compacta observada no Lizy (ordem, urgência e foto). */
.analise-ordem-cell { display:block; min-width:0; text-align:center; }
.analise-ordem-cell img { display:inline; width:150px; height:auto; margin:0; vertical-align:middle; cursor:zoom-in; }
.analise-urgente { color:#f1416c; font-size:11px; font-weight:600; white-space:nowrap; }
.fila-processo-host .analise-ordem-cell { min-width:150px; }
.fila-processo-host .analise-ordem-cell img { display:inline-block; width:150px; height:auto; max-height:220px; object-fit:contain; margin-top:6px; }
.analise-table { min-width:1060px; table-layout:fixed; }
.analise-table th:nth-child(1) { width:190px; }
.analise-table th:nth-child(2) { width:230px; }
.analise-table th:nth-child(3) { width:155px; }
.analise-table th:nth-child(4) { width:135px; }
.analise-table th:nth-child(5) { width:170px; }
.analise-table th:nth-child(6) { width:120px; }
.analise-table th:nth-child(7) { width:80px; }

/* Etapas da produção: faixa compacta de pills, não os cards das abas gerais. */
.servicos-processo-tabs { display:flex!important; flex-wrap:nowrap!important; align-items:center; gap:8px; overflow-x:auto; padding:0 0 16px!important; margin:0!important; border:0!important; background:transparent!important; }
.servicos-processo-tabs .tab { flex:0 0 auto!important; width:auto!important; min-width:0!important; min-height:42px!important; padding:10px 18px!important; border:0!important; border-radius:22px!important; background:transparent!important; color:#3f4254!important; font-size:11px!important; font-weight:600!important; text-transform:uppercase; white-space:nowrap; box-shadow:none!important; }
.servicos-processo-tabs .tab:hover { color:#009ef7!important; background:#f1faff!important; }
.servicos-processo-tabs .tab.active { color:#fff!important; background:#009ef7!important; box-shadow:0 5px 14px rgba(0,158,247,.22)!important; }
.servicos-processo-tabs .tab:focus { outline:0!important; }
.fila-processo-toolbar #busca-os { flex:1 1 auto; width:100%; max-width:none; border:0; border-bottom:1px solid #d9dce4; border-radius:0; background:transparent; }
.fila-finalizados-host .view-toolbar #busca-os { flex:1 1 auto; width:auto; max-width:none; }
.table-wrap.servicos-externos-wrap { overflow-x:auto!important; }
.tabela-servicos-externos { min-width:1420px!important; table-layout:auto!important; }
@media (min-width:769px) and (max-width:1199px) {
  #content.fila-processo-host > .servicos-processo-tabs .tab { border-radius:22px!important; }
  #content.fila-processo-host > .servicos-processo-tabs .tab:focus,
  #content.fila-processo-host > .servicos-processo-tabs .tab:focus-visible { outline:none!important; }
}

/* Dashboard de Serviços: composição observada no /servicos/fila/.../Dashboard. */
.dash-top-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:18px; }
.dash-panel, .dash-insight-card, .dash-kpi-card { border:1px solid #e4e6ef; border-radius:7px; background:#fff; }
.dash-panel { min-height:132px; padding:22px; }
.dash-panel h2, .dash-reports h2 { margin:0 0 22px; color:#181c32; font-size:21px; font-weight:500; }
.dash-return-controls { display:grid; grid-template-columns:1.1fr 1fr 1fr 42px; gap:12px; align-items:end; }
.dash-search-controls { display:grid; grid-template-columns:1.2fr 1fr 42px; gap:16px; align-items:end; }
.dash-mestre-filters { display:grid; grid-template-columns:repeat(3,minmax(160px,1fr)); gap:12px; margin:6px 0 14px; padding:14px 16px; border:1px solid #e4e6ef; border-radius:7px; background:#fff; }
.dash-mestre-filters .search-input { width:100%; min-width:0; }
.dash-return-controls select, .dash-search-controls select, .dash-search-controls input {
  width:100%; height:38px; padding:7px 2px; border:0; border-bottom:1px solid #d9dce4; border-radius:0; background:#fff; color:#5e6278; font:inherit; font-size:12px;
}
.dash-return-controls button, .dash-search-controls button { width:42px; height:42px; border:0; border-radius:50%; background:#fff; color:#a1a5b7; box-shadow:0 4px 14px rgba(0,0,0,.1); cursor:pointer; }
.dash-return-controls button:hover, .dash-search-controls button:hover { color:#009ef7; }
.dash-overview-grid { display:grid; grid-template-columns:minmax(430px,.82fr) minmax(500px,1.18fr); gap:22px; margin-bottom:26px; }
.dash-kpi-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px 22px; }
.dash-kpi-card { min-height:120px; padding:24px 18px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.dash-kpi-label { color:#181c32; font-size:21px; font-weight:500; }
.dash-kpi-value { margin-top:7px; color:#181c32; font-size:15px; }
.dash-kpi-card.dash-blue { background:#1687f8; border-color:#1687f8; }
.dash-kpi-card.dash-green { background:#6fd275; border-color:#6fd275; }
.dash-kpi-card.dash-red { background:#f45d7c; border-color:#f45d7c; }
.dash-kpi-card.dash-blue .dash-kpi-label, .dash-kpi-card.dash-blue .dash-kpi-value,
.dash-kpi-card.dash-green .dash-kpi-label, .dash-kpi-card.dash-green .dash-kpi-value,
.dash-kpi-card.dash-red .dash-kpi-label, .dash-kpi-card.dash-red .dash-kpi-value { color:#101321; }
.dash-insights { display:grid; gap:16px; }
.dash-insight-card { min-height:176px; padding:20px 22px; }
.dash-insight-card h3 { margin:0 0 18px; color:#181c32; font-size:20px; font-weight:500; }
.dash-date-range { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-bottom:18px; }
.dash-date-range input { width:100%; padding:6px 2px; border:0; border-bottom:1px solid #d9dce4; color:#5e6278; text-align:center; }
.dash-tech-list > div { display:flex; justify-content:space-between; padding:5px 0; color:#3f4254; font-size:13px; }
.dash-tech-list p, .dash-bars p { color:#3f4254; font-size:13px; }
.dash-bar-row { display:grid; grid-template-columns:130px 1fr 38px; gap:10px; align-items:center; margin:7px 0; color:#5e6278; font-size:12px; }
.dash-bar-row > div { height:9px; overflow:hidden; border-radius:5px; background:#eff2f5; }
.dash-bar-row i { display:block; height:100%; border-radius:5px; background:#1687f8; }
.dash-reports { margin:6px 0 14px; }
.dash-reports h2 { margin-bottom:12px; }
.dash-reports h3 { margin:20px 0 12px; color:#181c32; font-size:18px; font-weight:500; }
.dash-report-link { display:flex; align-items:center; gap:12px; min-width:235px; padding:14px 18px; border:1px solid #e4e6ef; border-radius:7px; background:#fff; color:#3f4254; font:inherit; cursor:pointer; }
.dash-report-link i { color:#009ef7; font-size:20px; }
.dash-report-link:hover { border-color:#009ef7; color:#009ef7; }
.dash-table-summary { margin-top:10px; color:#7e8299; font-size:12px; }
.dash-excel { margin-top:12px; background:#50cd89!important; border-color:#50cd89!important; color:#fff!important; }
@media (max-width:1180px) {
  .dash-overview-grid { grid-template-columns:1fr; }
}
@media (max-width:860px) {
  .dash-top-grid { grid-template-columns:1fr; }
  .dash-return-controls { grid-template-columns:1fr 1fr; }
  .dash-search-controls { grid-template-columns:1fr; }
  .dash-mestre-filters { grid-template-columns:1fr; }
  .dash-kpi-grid { grid-template-columns:1fr; }
}

/* Dashboard: o Lizy usa a grade Bootstrap de duas colunas de indicadores
   estreitas e uma coluna de análises larga. O layout genérico acima caía em
   uma coluna no viewport de trabalho (1074px), deixando a tela visualmente
   diferente; estas regras são exclusivas da Dashboard e mantêm os handlers. */
#content.fila-dashboard-host { padding-top:6px!important; }
#content.fila-dashboard-host .dash-top-grid {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:30px!important;
  margin-bottom:16px!important;
}
#content.fila-dashboard-host .dash-panel {
  height:130px!important;
  min-height:130px!important;
  padding:20px!important;
  overflow:hidden;
  position:relative;
}
#content.fila-dashboard-host .dash-panel h2,
#content.fila-dashboard-host .dash-reports h2 {
  margin:0 0 8px!important;
  color:#181c32;
  font:500 21.6px/30.24px Poppins,sans-serif;
}
#content.fila-dashboard-host .dash-return-controls {
  grid-template-columns:92.2px 132.9px 132.9px 41px!important;
  gap:14px!important;
  position:static;
}
#content.fila-dashboard-host .dash-search-controls {
  grid-template-columns:214.3px 173.6px 41px!important;
  gap:14px!important;
  position:static;
}
#content.fila-dashboard-host .dash-return-controls select,
#content.fila-dashboard-host .dash-search-controls select,
#content.fila-dashboard-host .dash-search-controls input { height:36px; font-size:14px; }
#content.fila-dashboard-host .dash-return-controls select { height:34px; }
#content.fila-dashboard-host .dash-return-controls button,
#content.fila-dashboard-host .dash-search-controls button {
  position:static;
  justify-self:end;
  width:41px!important;
  height:41px!important;
}
#content.fila-dashboard-host .dash-overview-grid {
  grid-template-columns:235.1px 235.1px minmax(0,1fr)!important;
  column-gap:30px!important;
  row-gap:0!important;
  margin-bottom:16px!important;
}
#content.fila-dashboard-host .dash-kpi-grid {
  grid-column:1 / span 2!important;
  grid-template-columns:235.1px 235.1px!important;
  grid-template-rows:repeat(3,120px)!important;
  gap:16px 30px!important;
  width:500.2px!important;
  height:392px!important;
}
#content.fila-dashboard-host .dash-kpi-card {
  width:235.1px!important;
  height:120px!important;
  min-height:120px!important;
  padding:20px!important;
  border-radius:8px!important;
  box-sizing:border-box;
}
#content.fila-dashboard-host .dash-kpi-label { font:500 21.6px/30.24px Poppins,sans-serif; }
#content.fila-dashboard-host .dash-kpi-value { margin-top:8px; font:400 16px/24px Poppins,sans-serif; }
#content.fila-dashboard-host .dash-insights {
  grid-column:3!important;
  display:block!important;
  width:100%!important;
  height:392px!important;
}
#content.fila-dashboard-host .dash-insights > .dash-insight-card {
  width:100%!important;
  height:392px!important;
  min-height:392px!important;
  margin:0!important;
  padding:16px!important;
  box-sizing:border-box;
  border-radius:6px!important;
}
#content.fila-dashboard-host .dash-insight-card h3 {
  margin:0 0 16px;
  font:500 21.6px/30.24px Poppins,sans-serif;
}
#content.fila-dashboard-host .dash-lower-grid {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:30px!important;
  margin-bottom:16px!important;
}
#content.fila-dashboard-host .dash-lower-grid > .dash-insight-card,
#content.fila-dashboard-host .dash-lower-grid > .dash-reports {
  height:392px!important;
  min-height:392px!important;
  margin:0!important;
  padding:16px!important;
  box-sizing:border-box;
  border-radius:6px!important;
}
#content.fila-dashboard-host .dash-reports h3 { margin:20px 0 12px; }
@media (max-width:860px) {
  #content.fila-dashboard-host .dash-overview-grid,
  #content.fila-dashboard-host .dash-lower-grid { grid-template-columns:1fr!important; }
  #content.fila-dashboard-host .dash-kpi-grid { width:100%!important; grid-column:auto!important; grid-template-columns:1fr 1fr!important; }
  #content.fila-dashboard-host .dash-insights { grid-column:auto!important; margin-top:16px; }
}

/* Lançamentos legado: medidas observadas na tela /financeiro/lancamentos do
   Lizy em 1074×698. O tenant local pode ter menos empresas, mas a grade e os
   controles seguem a mesma malha; nenhuma aba/empresa é criada artificialmente. */
@media (min-width:769px) and (max-width:1199px) {
  #content:not(.lanc-v2-host) .lanc-abas-emp {
    flex-wrap:nowrap!important;
    gap:19.5px!important;
    height:45px!important;
    margin-bottom:9.8px!important;
    overflow:hidden;
  }
  #content:not(.lanc-v2-host) .lanc-aba-emp {
    box-sizing:border-box;
    flex:0 0 auto;
    height:45px;
    padding:16.25px 13px 6.5px;
    border:1px solid #e4e6ef;
    border-radius:12px;
    font:500 14.3px/21.45px Poppins,sans-serif;
    white-space:nowrap;
  }
  #content:not(.lanc-v2-host) .lanc-aba-emp:nth-child(1) { width:148.2px; }
  #content:not(.lanc-v2-host) .lanc-aba-emp:nth-child(2) { width:285px; }
  #content:not(.lanc-v2-host) .lanc-aba-emp:nth-child(3) { width:202.4px; }
  #content:not(.lanc-v2-host) .lanc-aba-emp.ativa { border-bottom:3px solid #009ef7; }
  #content:not(.lanc-v2-host) .lanc-legacy-card { padding:26px; }
  #content:not(.lanc-v2-host) .lanc-legacy-head {
    position:relative;
    display:block;
    width:975.6px;
    height:47px;
    margin:0 0 16px;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-title-row {
    position:absolute;
    left:.5px;
    top:3.7px;
    display:block;
    width:240px;
    height:28px;
  }
  #content:not(.lanc-v2-host) .lanc-titulo {
    width:124.2px;
    height:28px;
    margin:0;
    color:#181c32;
    font:600 17.55px/28px Roboto,sans-serif;
    white-space:nowrap;
  }
  #content:not(.lanc-v2-host) .lanc-new-version {
    position:absolute;
    left:134px;
    top:-3.2px;
    box-sizing:border-box;
    width:111.6px;
    height:34.3px;
    padding:8.15px 7.5px;
    border:0;
    border-radius:6.175px;
    background:#f1faff;
    color:#009ef7;
    font:500 12.025px/18.0375px Poppins,sans-serif;
    white-space:nowrap;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-head-filters {
    position:absolute;
    left:250.3px;
    top:-3.6px;
    display:grid;
    grid-template-columns:225.3px 225.3px 225.3px;
    column-gap:24.4px;
    width:724.9px;
    height:42.5px;
    margin:0;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-head-filters .lanc-v2-search {
    width:225.3px;
    max-width:none;
    height:42.5px;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-head-filters .lanc-v2-search input {
    box-sizing:border-box;
    width:100%;
    height:42.5px;
    padding:9.75px 13px;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-head-filters .lanc-data {
    box-sizing:border-box;
    width:225.3px;
    max-width:none;
    height:42.5px;
    padding:9.75px 13px;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-new { margin-bottom:49.9px; }
  #content:not(.lanc-v2-host) .lanc-legacy-new .lanc-novo {
    box-sizing:border-box;
    width:196.1px;
    height:43px;
    margin:0;
    padding:10.75px 20.5px;
    font:500 14.3px/21.45px Poppins,sans-serif;
    transform:translateY(-3.6px);
  }
  #content:not(.lanc-v2-host) .lanc-legacy-filtros {
    width:965.8px;
    height:241.4px;
    margin:0 0 27.5px 4.9px;
    grid-template-columns:470.7px 470.7px;
    column-gap:24.4px;
    row-gap:20.475px;
  }
  #content:not(.lanc-v2-host) .lanc-legacy-filtros .lanc-filtro select {
    box-sizing:border-box;
    width:470.7px;
    height:45px;
    padding:10.725px 19.5px;
    border-radius:6.175px;
    font:500 14.95px/22.425px Poppins,sans-serif;
  }
  #content:not(.lanc-v2-host) .lanc-mes-nav {
    box-sizing:border-box;
    width:975.6px;
    height:55.3px;
    margin:0 0 18px;
  }
  #content:not(.lanc-v2-host) .lanc-mes-txt {
    min-width:159.1px;
    height:34.4px;
    margin:0 15px;
    font:600 24px/20px Poppins,sans-serif;
  }
  #content:not(.lanc-v2-host) #lanc-totais {
    box-sizing:border-box;
    width:989.2px;
    height:66.8px;
    margin-left:-6.8px;
    padding-top:13px;
    transform:translateY(-64.7px);
    margin-bottom:-18px;
    grid-template-columns:repeat(5,198px);
  }
  #content:not(.lanc-v2-host) #lanc-totais .lanc-tot-box {
    box-sizing:border-box;
    height:53px;
    padding:6.5px;
  }
  #content:not(.lanc-v2-host) #lanc-totais .lanc-tot-lbl {
    height:20px;
    margin:0;
    font:500 12.35px/20px Poppins,sans-serif;
  }
  #content:not(.lanc-v2-host) #lanc-totais .lanc-tot-val {
    height:20px;
    margin:0;
    font:500 14.95px/20px Poppins,sans-serif;
  }
}

/* A comparação mensal aparece no cartão de Receitas do Lizy; manter a
   indicação no mesmo alinhamento e reservar a altura adicional do cartão. */
@media (min-width:769px) and (max-width:1199px) {
  #content .view-fin-grid #fin-cards-top > .fin-card:nth-child(2) { height:199.95px; }
  #content .view-fin-grid .fin-card-sub { display:flex; align-items:center; gap:4px; }
  #content .view-fin-grid .fin-card-sub .fin-var { display:inline-flex; align-items:center; gap:3px; font-weight:700; }
  #content .view-fin-grid .fin-card-sub .fin-var.negativa { color:#f1416c; }
  #content .view-fin-grid .fin-card-sub .fin-var.positiva { color:#50cd89; }
  #content .view-fin-grid .fin-card-sub .fin-var-label { color:#a1a5b7; font-weight:600; }
}

/* Ajuste final de tipografia medido na referência Lizy. */
.contas-data-bar input{transform:translateY(1.6px)}
.conta-card-center h3{box-sizing:border-box;max-width:165.375px;min-height:41.6px;font:600 16.25px/20px Poppins,sans-serif}
.conta-card-center strong{font:600 16.25px/22.4px Poppins,sans-serif}
.conta-card-center span{font:600 13.975px/19.2px Poppins,sans-serif}

/* Última cascata da grade V2 de Orçamentos, após as regras históricas. */
@media (min-width:1200px) {
  #content.orc-v2-host .orc-v2-toolbar { grid-template-columns:165.8px 190px 190px 152.2px 152.2px; }
  #content.orc-v2-host .orc-v2-toolbar input:first-child { width:165.8px; }
  #content.orc-v2-host .orc-v2-toolbar input[type="date"] { width:152.2px; }
  #content.orc-v2-host .orc-v2-table { min-width:1203.6px; width:1203.6px; table-layout:fixed; }
  #content.orc-v2-host .orc-v2-table th:nth-child(1), #content.orc-v2-host .orc-v2-table td:nth-child(1) { width:189.55px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(2), #content.orc-v2-host .orc-v2-table td:nth-child(2) { width:411.7625px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(3), #content.orc-v2-host .orc-v2-table td:nth-child(3) { width:179.125px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(4), #content.orc-v2-host .orc-v2-table td:nth-child(4) { width:200.375px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(5), #content.orc-v2-host .orc-v2-table td:nth-child(5) { width:114.7875px; }
  #content.orc-v2-host .orc-v2-table th:nth-child(6), #content.orc-v2-host .orc-v2-table td:nth-child(6) { width:108px; }
  /* Fila de Análise: medidas observadas na tabela do iframe Lizy (1280px). */
  #content .analise-table { min-width:1197.6px; width:1197.6px; table-layout:fixed; }
  #content .analise-table th { height:72.8px; }
  #content .analise-table th:nth-child(1), #content .analise-table td:nth-child(1) { width:225.6px; }
  #content .analise-table th:nth-child(2), #content .analise-table td:nth-child(2) { width:199.2px; }
  #content .analise-table th:nth-child(4), #content .analise-table td:nth-child(4) { width:194.4px; }
  #content .analise-table th:nth-child(5), #content .analise-table td:nth-child(5) { width:127.15px; }
  #content .analise-table th:nth-child(6), #content .analise-table td:nth-child(6) { width:180px; }
  #content .analise-table th:nth-child(7), #content .analise-table td:nth-child(7) { width:135.6px; }
  #content .analise-table th:nth-child(9), #content .analise-table td:nth-child(9) { width:135.65px; }
  #content .analise-ordem-cell img { width:150px!important; height:auto!important; object-fit:contain!important; }
  #content .cadastros-page-title { margin-top:0!important; margin-left:4px; width:calc(100% - 4px); }
  #content .cad-grid { width:calc(100% + 4.825px); margin-left:-2.4125px; column-gap:24.425px; transform:translateY(-0.25px); }
  #content .prospect-tabs { display:flex; align-items:stretch; width:298.625px; height:55px; margin:0 0 13px; padding:0; overflow:visible; }
  #content .prospect-tab { box-sizing:border-box; height:55.4px; flex:0 0 auto; padding:6.5px 20px 6.5px 15px; border:0; border-bottom:1.6px solid #ccc; border-radius:0; background:transparent; color:#a1a5b7; font:600 14.95px/20px Poppins,sans-serif; white-space:nowrap; cursor:pointer; }
  #content .prospect-tab.active { border-bottom-color:#009ef7; color:#009ef7; }
  #content .prospect-list-card { box-sizing:border-box; width:955px; min-height:336.55px; padding:0 28.4625px; border-radius:6px; }
  #content .prospect-list-head { box-sizing:border-box; display:grid; grid-template-columns:436.825px 206.2px 206.2px; gap:24.425px; width:898.075px; height:91.575px; margin:0; padding:21.75px 0 23.725px; align-items:start; }
  #content .prospect-list-head h3 { margin:1px 0 0; font:600 18px/28px Poppins,sans-serif; color:#181c32; }
  #content .prospect-list-head .page-actions { display:contents; }
  #content .prospect-list-head .page-actions .btn { box-sizing:border-box; width:206.2px; height:44.5px; justify-content:center; border-radius:5px; font:700 13px/19.5px Poppins,sans-serif; }
  #content .prospect-list-head .page-actions .btn-secondary { height:46.1px; }
  #content .prospect-toolbar { display:block; width:898.075px; height:42.55px; margin:0 0 7.475px; }
  #content .prospect-toolbar .search-input { box-sizing:border-box; width:898.075px; height:42.55px; margin:0; padding:10px 12px; background:#f2f2f2; border:0; border-radius:5px; font:500 14.3px/21.45px Poppins,sans-serif; }
  #content .prospect-list-card .table-wrap { width:903px; margin-left:-2.4625px; overflow-x:hidden; }
  #content .prospect-table { width:903px; min-width:903px; table-layout:fixed; }
  #content .prospect-table th { box-sizing:border-box; height:48.4px; padding:0 12px; background:#fff; color:#a1a5b7; font:600 15px/22px Roboto,sans-serif; }
  #content .prospect-table th:nth-child(1), #content .prospect-table td:nth-child(1) { width:81.7375px; }
  #content .prospect-table th:nth-child(2), #content .prospect-table td:nth-child(2) { width:501.2625px; }
  #content .prospect-table th:nth-child(3), #content .prospect-table td:nth-child(3) { width:170px; }
  #content .prospect-table th:nth-child(4), #content .prospect-table td:nth-child(4) { width:150px; }
  #content .prospect-table td { height:76.75px; }
  #content .prospect-pager { box-sizing:border-box; width:903px; height:56.8px; margin-left:-2.4625px; padding:0; justify-content:flex-end; }
}

/* Breakpoint tablet/desktop do Lizy (janela entre 769 e 1199 CSS px). */
@media (min-width:769px) and (max-width:1199px) {
  .topbar { min-height:55px; height:55px; padding:0 5.25px; }
  .topbar-left { gap:9.5px; }
  .sidebar-toggle { box-sizing:border-box; width:40px; height:40px; flex:0 0 40px; padding:8px; }
  .topbar-right { box-sizing:border-box; width:353.6px; flex:0 0 353.6px; gap:10px; }
  .topbar-company { width:243.15px; max-width:243.15px; min-height:33.9375px; height:33.9375px; }
  .topbar-avatar { width:42.95px; min-width:42.95px; height:42.95px; flex-basis:42.95px; border-radius:50%; background:#00a3ff; }
  .content { padding:16px 15px 30px !important; }
  #content .prospect-tabs { display:flex; align-items:stretch; width:298.625px; height:55px; margin:0 0 13px; padding:0; }
  #content .prospect-tab { box-sizing:border-box; height:55.4px; flex:0 0 auto; padding:6.5px 20px 6.5px 15px; border:0; border-bottom:1.6px solid #ccc; border-radius:0; background:transparent; color:#a1a5b7; font:600 14.95px/20px Poppins,sans-serif; white-space:nowrap; cursor:pointer; }
  #content .prospect-tab.active { border-bottom-color:#009ef7; color:#009ef7; }
  #content .prospect-list-card { box-sizing:border-box; width:100%; min-height:336.55px; padding:0 28.4625px; border-radius:6px; }
  #content .prospect-list-head { box-sizing:border-box; display:grid; grid-template-columns:397.2px 312.875px 228.55px; gap:24.425px; width:987.475px; height:91.575px; margin:0; padding:21.75px 0 23.725px; align-items:start; }
  #content .prospect-list-head h3 { margin:1px 0 0; font:600 18px/28px Poppins,sans-serif; color:#181c32; }
  #content .prospect-list-head .page-actions { display:contents; }
  #content .prospect-list-head .page-actions .btn { box-sizing:border-box; width:100%; height:44.5px; justify-content:center; border-radius:5px; font:700 13px/19.5px Poppins,sans-serif; }
  #content .prospect-list-head .page-actions .btn-secondary { height:46.1px; }
  #content .prospect-toolbar { display:block; width:987.475px; height:42.55px; margin:0 0 7.475px; }
  #content .prospect-toolbar .search-input { box-sizing:border-box; width:987.475px!important; max-width:none!important; height:42.55px; margin:0; padding:10px 12px; background:#f2f2f2; border:0; border-radius:5px; font:500 14.3px/21.45px Poppins,sans-serif; }
  #content .prospect-list-card .table-wrap { width:992.4px; margin-left:-2.4625px; overflow-x:hidden; }
  #content .prospect-table { width:992.4px; min-width:992.4px; table-layout:fixed; }
  #content .prospect-table th { box-sizing:border-box; height:48.4px; padding:0 12px; background:#fff; color:#a1a5b7; font:600 15px/22px Roboto,sans-serif; }
  #content .prospect-table th:nth-child(1), #content .prospect-table td:nth-child(1) { width:81.7375px; }
  #content .prospect-table th:nth-child(2), #content .prospect-table td:nth-child(2) { width:590.6625px; }
  #content .prospect-table th:nth-child(3), #content .prospect-table td:nth-child(3) { width:170px; }
  #content .prospect-table th:nth-child(4), #content .prospect-table td:nth-child(4) { width:150px; }
  #content .prospect-table td { height:76.75px; }
  #content .prospect-pager { box-sizing:border-box; width:992.4px; height:56.8px; margin-left:-2.4625px; padding:0; justify-content:flex-end; }
}

/* Notas Fiscais/Faturados: composição de sete colunas e filtro de período
   observados no Lizy. A busca textual continua disponível no código/handler,
   mas fica recolhida porque a tela original expõe somente tipo e período. */
@media (min-width:769px) and (max-width:1199px) {
  html.fat-force-scroll { overflow-y:scroll; }
  #content.fat-classic-host .fat-faturados-card {
    box-sizing:border-box;
    width:1029.2px;
    margin-top:4px;
    padding:0 26px 20px;
    transform:translateY(4px);
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-title {
    position:relative;
    box-sizing:border-box;
    width:977.2px;
    height:99.7px;
    margin:0;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-title h4 {
    position:absolute;
    left:12.2px;
    top:47.1px;
    margin:0;
    transform:none;
    font:600 17.6693px/24px Poppins,sans-serif;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-title .btn {
    position:absolute;
    left:745.1px;
    top:31.5px;
    box-sizing:border-box;
    width:219.9px !important;
    height:51px !important;
    margin:0 !important;
    transform:none !important;
    justify-content:center;
    padding:12.75px 10px;
    font:700 13px/19.5px Poppins,sans-serif;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-filters {
    box-sizing:border-box;
    display:grid;
    grid-template-columns:272.4px 126.2px 126.2px;
    column-gap:16.2px;
    width:977.2px;
    height:71px;
    margin:0;
    padding:19.5px 0 0 416.3px;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-filters .fat-classic-search { display:none; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-filters select {
    box-sizing:border-box;
    width:272.4px;
    height:45px;
    margin:0;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-filters input[type="date"] {
    box-sizing:border-box;
    width:126.2px;
    height:42.5px;
    margin:1.2px 0 0;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-filters input[type="date"]:last-child { transform:translateX(3.7px); }
  #content.fat-classic-host .fat-faturados-card .table-wrap {
    box-sizing:border-box;
    width:977.2px;
    margin:0;
    overflow-x:hidden;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table {
    box-sizing:border-box;
    width:988.7px;
    min-width:988.7px;
    table-layout:fixed;
    transform:translate(-.8px,-.8px);
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th,
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td {
    box-sizing:border-box;
  }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th { height:48.4px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(1),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(1) { width:87.8px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(2),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(2) { width:204.9px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(3),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(3) { width:200px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(4),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(4) { width:117.7px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(5),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(5) { width:88.4px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(6),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(6) { width:90px; }
  #content.fat-classic-host .fat-faturados-card .fat-classic-table th:nth-child(7),
  #content.fat-classic-host .fat-faturados-card .fat-classic-table td:nth-child(7) { width:200px; }
}

/* Cobrança/Boletos: a versão visível no Lizy usa dois cabeçalhos largos,
   uma faixa amarela de vazio e o paginador Material. */
@media (min-width:769px) and (max-width:1199px) {
  #content .cob-card {
    box-sizing:border-box;
    display:flow-root;
    width:1044.4px;
    height:428.4px;
    min-height:428.4px;
    margin:0;
    padding:0;
    border:0;
  }
  #content .cob-card .cob-topo {
    box-sizing:border-box;
    display:flex;
    width:1044.4px;
    height:73.7px;
    margin:16.3px 0 16.2px;
    padding:0 26px;
    align-items:center;
    gap:0;
  }
  #content .cob-card .cob-titulo {
    margin:0;
    font:600 17.6693px/24px Poppins,sans-serif;
    letter-spacing:.552165px;
  }
  #content .cob-card .cob-topo .btn-primary {
    box-sizing:border-box;
    width:235.9px;
    height:44.5px;
    margin-left:auto;
    padding:12.5px 10px;
    transform:translateY(.6px);
    font:700 13px/19.5px Poppins,sans-serif;
    justify-content:center;
  }
  #content .cob-card .cob-filtros {
    box-sizing:border-box;
    display:grid;
    grid-template-columns:184.3px 165px 165px;
    column-gap:28.5px;
    width:1044.4px;
    height:85px;
    margin:0;
    padding:19.5px 0 0 455.6px;
    align-items:start;
  }
  #content .cob-card .cob-busca { display:none; }
  #content .cob-card .cob-sel {
    box-sizing:border-box;
    width:184.3px;
    height:45px;
    margin:0;
    padding:10.75px 19.5px;
    font:700 14.95px/22.425px Poppins,sans-serif;
  }
  #content .cob-card .cob-data {
    box-sizing:border-box;
    width:165px;
    height:42.5px;
    margin:1.7px 0 0;
    padding:9.75px 13px;
    font:500 14.3px/21.45px Poppins,sans-serif;
  }
  #content .cob-card .cob-data:last-child { transform:translateX(-8.5px); }
  #content .cob-card .table-wrap {
    box-sizing:border-box;
    width:992.4px;
    height:48.8px;
    margin:9.8px 0 0 26px;
    border:0;
    overflow:hidden;
  }
  #content .cob-card .table {
    box-sizing:border-box;
    width:992.4px;
    min-width:992.4px;
    table-layout:fixed;
    border-spacing:0;
    transform:none;
  }
  #content .cob-card .table th { box-sizing:border-box; height:48.4px; padding:13px 8px; font:600 15px/22px Roboto,sans-serif; }
  #content .cob-card .table th:nth-child(1), #content .cob-card .table td:nth-child(1) { width:81.7px; }
  #content .cob-card .table th:nth-child(2), #content .cob-card .table td:nth-child(2) { width:309.2px; }
  #content .cob-card .table th:nth-child(3), #content .cob-card .table td:nth-child(3) { width:111.3px; }
  #content .cob-card .table th:nth-child(4), #content .cob-card .table td:nth-child(4) { width:103.1px; }
  #content .cob-card .table th:nth-child(5), #content .cob-card .table td:nth-child(5) { width:131.9px; }
  #content .cob-card .table th:nth-child(6), #content .cob-card .table td:nth-child(6) { width:105.2px; }
  #content .cob-card .table th:nth-child(7), #content .cob-card .table td:nth-child(7) { width:150px; }
  #content .cob-card .cob-vazio {
    box-sizing:border-box;
    width:992.4px;
    height:76.3px;
    min-height:76.3px;
    margin:0 0 0 26px;
    padding:19.5px;
    gap:13px;
    border:.8px dashed #ffc700;
    border-radius:6.175px;
    background:#fff8dd;
    color:#181c32;
    font:700 14px/20px Roboto,sans-serif;
  }
  #content .cob-card .cob-vazio-ic {
    box-sizing:border-box;
    width:35.8px;
    height:35.8px;
    border-radius:50%;
    background:#ffc700;
    font-size:15px;
  }
  #content .cob-card .cob-vazio-ic i { width:auto; font-size:15px; }
  #content .cob-card .cob-paginacao {
    position:relative;
    display:block;
    box-sizing:border-box;
    width:992.4px;
    height:56.8px;
    margin:16.3px 0 0 26px;
    padding:0;
    border-top:0;
    font:400 13.975px/20px Poppins,sans-serif;
  }
  #content .cob-card .cob-paginacao > span:first-child { position:absolute; left:510.9px; top:19.9px; }
  #content .cob-card .cob-paginacao > span:nth-of-type(2) { position:absolute; left:727.5px; top:18.7px; }
  #content .cob-card .cob-paginacao .cob-sel-pag {
    position:absolute;
    left:607.5px;
    top:7.9px;
    width:84px;
    height:41.8px;
    padding:8px 10px;
  }
  #content .cob-card .cob-paginacao .cob-page-btn { position:absolute; top:6.2px; width:48px; height:45px; }
  #content .cob-card .cob-paginacao .cob-page-btn:nth-of-type(1) { left:792.4px; }
  #content .cob-card .cob-paginacao .cob-page-btn:nth-of-type(2) { left:840.4px; }
  #content .cob-card .cob-paginacao .cob-page-btn:nth-of-type(3) { left:888.4px; }
  #content .cob-card .cob-paginacao .cob-page-btn:nth-of-type(4) { left:936.4px; }
}

/* Cascata final mobile: deve permanecer no fim do arquivo para neutralizar
   todas as medidas históricas de desktop/tablet declaradas acima. */
@media (max-width:768px) {
  html,body,.app,#page-app,.main { width:100%;max-width:100%;min-width:0;overflow-x:hidden; }
  .topbar { box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:60px;height:60px;padding:0 10px;gap:6px;overflow:hidden; }
  .topbar-left { flex:1 1 auto;min-width:0;max-width:100%;gap:4px;overflow:hidden; }
  .sidebar-toggle { box-sizing:border-box;width:34px;height:40px;flex:0 0 34px;padding:7px; }
  .breadcrumb { flex:1 1 auto;min-width:0;max-width:100%;gap:4px;overflow:hidden;white-space:nowrap; }
  .breadcrumb a,.breadcrumb span { min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  .breadcrumb i { flex:0 0 auto; }
  .topbar-right { box-sizing:border-box;width:auto;min-width:0;max-width:132px;flex:0 0 auto;gap:4px;overflow:hidden; }
  .topbar-company { box-sizing:border-box;width:92px;min-width:0;max-width:92px;height:34px;min-height:34px;padding:7px 22px 7px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  .topbar-notif { display:none; }
  .topbar-avatar { width:34px;min-width:34px;height:34px;flex:0 0 34px; }
  .content { box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:16px 12px!important;overflow-x:hidden; }
  #content .cad-grid { box-sizing:border-box;width:100%;max-width:100%;margin-left:0;transform:none; }
  #content .cad-folder,#content .cad-folder-title { min-width:0;max-width:100%; }
  #content .cad-folder-title { overflow-wrap:anywhere; }
  /* Faturamento: as abas medidas no desktop tinham 359px fixos e ainda
     dividiam a linha com o alternador de versão. Em telas estreitas isso
     aumentava o scrollWidth do conteúdo para 450px e recortava a página. */
  #content.fat-v2-host .fat-v2-top {
    box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:0;
    margin-bottom:16px;gap:8px;overflow:hidden;
  }
  #content.fat-v2-host .fat-v2-top .tabs {
    box-sizing:border-box;display:flex;width:100%;min-width:0;max-width:100%;
    height:auto;flex:1 1 auto;gap:8px;padding:0;margin:0;overflow:visible;
  }
  #content.fat-v2-host .fat-v2-top .tabs .tab {
    width:auto;min-width:0;height:45px;flex:1 1 0;padding:10px 8px;
  }
  #content.fat-v2-host .fat-new-version { display:none; }
}

/* Dashboard de Serviços no celular: as medidas fixas de desktop declaradas
   acima não podem cortar Retornar Ordem, Busca Global nem os KPIs. */
@media (max-width:860px) {
  #content.fila-dashboard-host .dash-top-grid { grid-template-columns:1fr!important; gap:12px!important; }
  #content.fila-dashboard-host .dash-panel { height:auto!important; min-height:0!important; padding:16px!important; overflow:visible!important; }
  #content.fila-dashboard-host .dash-return-controls,
  #content.fila-dashboard-host .dash-search-controls { grid-template-columns:1fr!important; gap:10px!important; }
  #content.fila-dashboard-host .dash-return-controls button,
  #content.fila-dashboard-host .dash-search-controls button { position:static!important; justify-self:end; }
  #content.fila-dashboard-host .dash-overview-grid,
  #content.fila-dashboard-host .dash-lower-grid { grid-template-columns:1fr!important; gap:12px!important; }
  #content.fila-dashboard-host .dash-kpi-grid {
    grid-column:auto!important; grid-template-columns:1fr!important; grid-template-rows:none!important;
    width:100%!important; height:auto!important; gap:12px!important;
  }
  #content.fila-dashboard-host .dash-kpi-card { width:100%!important; height:auto!important; min-height:104px!important; }
  #content.fila-dashboard-host .dash-insights,
  #content.fila-dashboard-host .dash-insights > .dash-insight-card,
  #content.fila-dashboard-host .dash-lower-grid > .dash-insight-card,
  #content.fila-dashboard-host .dash-lower-grid > .dash-reports {
    width:100%!important; height:auto!important; min-height:0!important;
  }
}

