

.pm-consulta-grid > [class*="col-"] {
  display: flex;
  flex-direction: column;
}
.pm-consulta-grid .form-select,
.pm-consulta-grid .form-control,
.pm-consulta-grid .btn {
  min-height: 46px;
}
.pm-consulta-grid .form-text {
  min-height: 20px;
}
.pm-consultar-btn {
  align-items: center;
  justify-content: center;
}
@media (min-width: 992px) {
  .pm-consultar-btn {
    margin-top: 31px;
  }
}


/* MOBILE_COMPARTILHAMENTO_V193 */
html, body { max-width: 100%; overflow-x: hidden; }
.page, .page-wrapper, .page-body, .container-xl, .card, .row { min-width: 0; max-width: 100%; }
.fm-acoes-rapidas { display: inline-flex; flex-wrap: nowrap; gap: .35rem; }
.fm-acoes-rapidas .btn-icon { width: 2.15rem; height: 2.15rem; padding: 0; }
@media (max-width: 767.98px) {
  .page-body .container-xl { padding-left: .65rem; padding-right: .65rem; }
  .fm-emissao-mobile .card-body { padding: .85rem; overflow-x: hidden; }
  .fm-emissao-mobile .row { margin-left: 0; margin-right: 0; }
  .fm-emissao-mobile [class*="col-"] { width: 100%; padding-left: 0; padding-right: 0; }
  .fm-emissao-mobile .form-select, .fm-emissao-mobile .form-control { width: 100%; max-width: 100%; }
  .fm-emissao-mobile #botao-emissao-nfse { width: 100%; min-height: 46px; }
  .fm-emissao-mobile .btn-link { display: block; width: 100%; margin-top: .5rem; text-align: center; }
  .fm-sucesso-nfse { align-items: flex-start !important; }
  .table-responsive { -webkit-overflow-scrolling: touch; }
}


/* v1.9.4 - padronizacao dos titulos dos formularios */
.page-wrapper > .navbar .container-xl {
  justify-content: flex-start;
}

.fm-page-title-wrap {
  flex: 1 1 auto;
  min-width: 0;
  margin-right: auto;
  text-align: left;
}

.page-title,
.card-title,
.card-header > h1,
.card-header > h2,
.card-header > h3,
.card-header > h4,
.page-body form h1,
.page-body form h2,
.page-body form h3,
.page-body form h4 {
  text-align: left !important;
}

.card-header {
  text-align: left;
}

@media (max-width: 767.98px) {
  .page-wrapper > .navbar .container-xl {
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }

  .fm-page-title-wrap {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .page-title {
    width: 100%;
    margin: 0;
    text-align: left !important;
  }
}

/* v1.9.5 - alinhamento padrao no smartphone */
@media (max-width: 991.98px) {
  .navbar-vertical > .container-fluid {
    display: flex;
    align-items: center;
    justify-content: flex-start !important;
    gap: .65rem;
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .navbar-vertical .navbar-toggler {
    order: 1;
    flex: 0 0 auto;
    margin: 0;
  }

  .navbar-vertical .navbar-brand {
    order: 2;
    flex: 1 1 auto;
    width: auto;
    margin: 0 !important;
    padding: .55rem 0;
    text-align: left !important;
  }

  .navbar-vertical .navbar-brand > a {
    justify-content: flex-start !important;
    width: 100%;
    text-align: left !important;
  }

  .navbar-vertical .navbar-collapse {
    order: 3;
    flex-basis: 100%;
    width: 100%;
  }

  .page-wrapper > header.navbar .container-xl {
    display: flex;
    justify-content: flex-start !important;
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .fm-page-title-wrap,
  .page-title,
  .page-header,
  .page-header .row,
  .page-header .col,
  .card-header,
  .card-title {
    text-align: left !important;
    justify-content: flex-start !important;
  }
}

/* Fiscal Manager 3.12.9 - padronizacao global de alinhamento */
.page-body > .container-xl,
.footer > .container-xl,
.navbar > .container-xl {
  width: 100%;
}

/* Templates antigos que criavam uma segunda margem interna */
.page-body .container-xl > .container-fluid {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
}

/* Cards de atalhos: mesma altura, texto e botoes alinhados */
.fm-action-grid .card-body,
.page-body .card.fm-action-card .card-body {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.fm-action-grid .card-body .btn,
.page-body .card.fm-action-card .card-body .btn {
  margin-top: auto;
  align-self: flex-start;
}

/* Um unico ponto de retorno, sempre alinhado com o conteudo principal */
.fm-global-back {
  margin-top: 1rem;
  margin-bottom: .5rem;
}
.fm-global-back .btn {
  min-width: 136px;
  justify-content: center;
}

/* Rodape alinhado pela mesma grade da tela */
.fm-footer-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  text-align: left;
}
.fm-footer-version {
  margin-left: auto;
  text-align: right;
}

@media (max-width: 767.98px) {
  .fm-footer-row {
    align-items: flex-start;
    flex-direction: column;
  }
  .fm-footer-version {
    margin-left: 0;
    text-align: left;
  }
  .fm-global-back .btn {
    width: auto;
  }
}


/* Fiscal Manager 3.13.3 - alinhamento dos cards do Dashboard e rodape */
.fm-dashboard-grid > .fm-dashboard-main-col,
.fm-dashboard-grid > .fm-dashboard-side-col {
  display: flex;
  flex-direction: column;
}

.fm-dashboard-main-col > .card {
  flex: 1 1 auto;
}

.fm-dashboard-side-col {
  gap: 1rem;
}

.fm-dashboard-side-col > .card {
  margin-bottom: 0 !important;
}

.fm-dashboard-side-card {
  flex: 0 0 auto;
}

.fm-dashboard-events-card {
  flex: 1 1 auto;
}

.fm-dashboard-events-card .list-group {
  height: 100%;
}

.page-wrapper > .footer {
  margin-top: 0;
  padding-top: .5rem;
}

.page-wrapper > .footer .container-xl {
  padding-top: 0;
}

@media (min-width: 992px) {
  .fm-dashboard-grid > .fm-dashboard-main-col,
  .fm-dashboard-grid > .fm-dashboard-side-col {
    align-self: stretch;
  }
}


/* Fiscal Manager 3.14.19 - rodape alinhado ao limite dos cards */
.page-wrapper > .footer > .container-xl {
  padding-left: var(--tblr-gutter-x, 1.5rem);
  padding-right: var(--tblr-gutter-x, 1.5rem);
}
.fm-footer-version {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (min-width: 992px) {
  .fm-footer-version {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
}
@media (max-width: 991.98px) {
  .fm-footer-version {
    max-width: 100%;
    justify-content: flex-start;
  }
}


/* Fiscal Manager 3.16.2 - alinhamento global, margens e dashboard com cinco cards */
:root {
  --fm-content-gap: 1rem;
  --fm-card-radius: var(--tblr-border-radius, .375rem);
}

/* Mantem a mesma margem lateral em todas as telas e evita blocos deslocados. */
.page-body > .container-xl {
  width: 100%;
  padding-left: var(--fm-content-gap) !important;
  padding-right: var(--fm-content-gap) !important;
}
.page-body > .container-xl > * {
  max-width: 100%;
}
.page-body .row {
  --tblr-gutter-x: var(--fm-content-gap);
}
.page-body .card,
.page-body .alert,
.page-body .empty,
.page-body .table-responsive {
  min-width: 0;
}
.page-body .card {
  border-radius: var(--fm-card-radius);
}

/* Noticias Fiscais: cards superiores e progresso seguem exatamente a mesma grade. */
.fm-news-filter-row {
  align-items: stretch;
}
.fm-news-filter-row > [class*="col-"] {
  display: flex;
}
.fm-news-filter-row > [class*="col-"] > .card {
  width: 100%;
  margin-bottom: 0;
}
.fm-news-filter-row .card-body {
  width: 100%;
}
.fm-news-progress-card {
  width: 100%;
}

/* Os cinco indicadores do Dashboard ficam na mesma linha em telas largas. */
@media (min-width: 1200px) {
  .fm-dashboard-grid > .fm-dashboard-metric {
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%;
  }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .fm-dashboard-grid > .fm-dashboard-metric {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
  }
}
@media (max-width: 767.98px) {
  :root { --fm-content-gap: .75rem; }
  .fm-dashboard-grid > .fm-dashboard-metric {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
  }
  .fm-news-filter-row > [class*="col-"] {
    width: 100%;
  }
}


/* Fiscal Manager 3.16.4 - alinhamento integral dos containers */
.fm-news-page,
.fm-support-page {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.fm-news-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
  margin: 0;
  padding: 0;
}
.fm-news-item,
.fm-news-item > .card,
.fm-news-item > .empty {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-left: 0;
  margin-right: 0;
}

.fm-support-main-card {
  width: 100%;
  max-width: 100%;
}
.fm-support-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  width: 100%;
}
.fm-support-metric {
  width: 100%;
  min-width: 0;
  margin: 0;
}

@media (max-width: 767.98px) {
  .fm-support-metrics { grid-template-columns: 1fr; }
}


/* Fiscal Manager 3.17.2 - alinhamento global do rodape com o conteudo */
.page-wrapper > .footer > .container-xl {
  width: 100%;
  padding-left: var(--fm-content-gap, 1rem) !important;
  padding-right: var(--fm-content-gap, 1rem) !important;
}
.fm-footer-module {
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
}


/* Fiscal Manager 3.17.3 - rodapes alinhados a esquerda em todas as telas */
.page-wrapper > .footer > .container-xl {
  width: 100%;
  max-width: 100%;
  padding-left: var(--fm-content-gap, 1rem) !important;
  padding-right: var(--fm-content-gap, 1rem) !important;
}
.fm-footer-row {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: .25rem !important;
  width: 100%;
  text-align: left !important;
}
.fm-footer-module,
.fm-footer-version {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

/* Centro de Ajuda - v3.17.4 */
.fm-help-submenu > .dropdown-menu {
  min-width: 15rem;
}
.fm-help-hero {
  border-left: 4px solid var(--tblr-green);
}
.fm-help-search-wrap {
  width: min(100%, 420px);
}
.fm-help-nav-card {
  position: sticky;
  top: 1rem;
  max-height: calc(100vh - 2rem);
  overflow: hidden;
}
.fm-help-nav {
  overflow-y: auto;
}
.fm-help-nav .list-group-item.active {
  color: var(--tblr-green);
  background: rgba(21, 128, 61, .08);
  border-color: rgba(21, 128, 61, .18);
  font-weight: 600;
}
.fm-help-steps {
  padding-left: 1.35rem;
}
.fm-help-steps li {
  padding: .35rem 0 .35rem .25rem;
}
#fm-help-footer {
  cursor: help;
  user-select: none;
  -webkit-user-select: none;
}
@media (max-width: 991.98px) {
  .fm-help-nav-card { position: static; max-height: none; }
  .fm-help-nav { max-height: 320px; }
}
@media (min-width: 992px) {
  .fm-help-submenu:hover > .dropdown-menu {
    display: block;
    top: 0;
    left: 100%;
    margin-top: -.25rem;
  }
}

/* Manual operacional detalhado - v3.17.5 */
.fm-help-detailed-body { font-size: 0.98rem; line-height: 1.62; }
.fm-help-detailed-body .fm-help-section > p { max-width: 980px; }
.fm-help-detailed-body .fm-help-steps { padding-left: 1.35rem; }
.fm-help-detailed-body .fm-help-steps li { padding: .24rem 0 .24rem .25rem; }
.fm-help-nav-card { position: sticky; top: 1rem; max-height: calc(100vh - 2rem); overflow: auto; }
@media (max-width: 991.98px) { .fm-help-nav-card { position: static; max-height: none; } }

/* Validação clara de formulários - v3.17.7 */
.fm-validation-summary {
  border-left: 4px solid var(--tblr-danger);
  margin-bottom: 1.25rem;
}
.fm-validation-summary ul { padding-left: 1.25rem; }
.fm-validation-feedback { font-weight: 500; }
.form-control.is-invalid,
.form-select.is-invalid { box-shadow: 0 0 0 .12rem rgba(214, 57, 57, .12); }
.nav-link:has(+ .tab-pane .is-invalid),
.nav-link.fm-tab-invalid { color: var(--tblr-danger); }

/* Fiscal Manager 3.22.1 - identidade visual aprovada */
:root{--fm-deep:#06151a;--fm-deep2:#09251d;--fm-green:#22a83f;--fm-lime:#82da00;--fm-border:#dfe6e9;--fm-surface:#f5f7f8;}
body.fm-modern-shell{background:#edf1f3;color:#111827;}
.fm-modern-shell .navbar-vertical{background:linear-gradient(180deg,#07141a 0%,#08241d 100%)!important;border-right:1px solid rgba(60,220,90,.18);}
.fm-modern-shell .navbar-vertical .nav-link{border-radius:8px;margin:.15rem .65rem;color:#e8f0ed;}
.fm-modern-shell .navbar-vertical .nav-link:hover,.fm-modern-shell .navbar-vertical .nav-item.active>.nav-link{background:linear-gradient(90deg,#13822f,#25ad41);color:#fff;}
.fm-sidebar-brand{padding:1rem .8rem!important;}.fm-sidebar-brand img{filter:drop-shadow(0 4px 12px rgba(30,210,70,.25));}.fm-sidebar-brand span{font-size:1.05rem;line-height:1.05;}
.fm-top-brand{background:radial-gradient(circle at 65% 50%,rgba(36,173,65,.25),transparent 30%),linear-gradient(115deg,#020609,#071a15);color:#fff;border-bottom:1px solid rgba(90,220,110,.25);}
.fm-top-brand-inner{min-height:142px;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.fm-top-identity{display:flex;align-items:center;gap:20px}.fm-top-logo{width:104px;height:104px}.fm-top-title{font-size:2.7rem;font-weight:800;line-height:1}.fm-top-title span,.fm-top-subtitle span,.fm-footer-slogan span{color:var(--fm-lime)}.fm-top-subtitle{font-size:1.2rem;font-weight:700;margin-top:.55rem}.fm-top-tagline{font-size:1.05rem;margin-top:.25rem}.fm-top-tagline b{color:var(--fm-lime);margin:0 .35rem}.fm-top-meta{display:flex;align-items:center;gap:24px;font-size:.95rem}.fm-top-meta i{font-size:1.25rem;margin-right:.3rem}
.fm-modern-shell .page-body{padding:1.4rem 0 1.6rem}.fm-modern-shell .page-body>.container-xl{max-width:none;padding:0 2rem}.fm-dashboard-modern{display:flex;flex-direction:column;gap:1rem}.fm-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.fm-kpi-card,.fm-quick-card,.fm-panel{background:linear-gradient(145deg,#fff,#f8fafb);border:1px solid var(--fm-border);border-radius:12px;box-shadow:0 4px 14px rgba(15,40,30,.06)}.fm-kpi-card{padding:1.15rem 1.3rem;text-decoration:none;color:#111827;display:flex;flex-direction:column;gap:.35rem}.fm-kpi-card span{font-weight:700;color:#0d7f2d}.fm-kpi-card strong{font-size:2rem}.fm-kpi-card small{color:#63707a}.fm-kpi-card small i{color:#178f36}.fm-kpi-danger span,.fm-kpi-danger small i{color:#d92216}.fm-quick-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}.fm-quick-card{padding:1rem;text-align:center;text-decoration:none;color:#111827;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:135px}.fm-quick-card i{font-size:2.7rem;color:#0b6828}.fm-quick-card strong{margin-top:.4rem}.fm-quick-card small{color:#63707a}.fm-quick-card:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(18,110,45,.12)}
.fm-dashboard-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.fm-panel{padding:1rem}.fm-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.fm-panel-head h3,.fm-info-panel h3{margin:0;font-size:1rem}.fm-panel-head a,.fm-info-panel a{color:#087c2b;text-decoration:none}.fm-modern-table{margin:0}.fm-system-ring{--p:0;width:150px;height:150px;border-radius:50%;margin:.25rem auto 1rem;background:conic-gradient(#22a83f 0 calc(var(--p)*1%),#cfeecf calc(var(--p)*1%) 100%);box-shadow:0 8px 22px rgba(24,145,58,.12);display:grid;place-items:center}.fm-system-ring:before{content:"";width:92px;height:92px;border-radius:50%;background:#fff;grid-area:1/1}.fm-system-ring>div{grid-area:1/1;z-index:1;text-align:center}.fm-system-ring strong{font-size:1.55rem;display:block}.fm-system-ring small{color:#6b7280}.fm-summary-list{display:flex;flex-direction:column;gap:.5rem}.fm-summary-list span{display:flex;align-items:center;gap:.5rem}.fm-summary-list strong{margin-left:auto}.dot{width:10px;height:10px;border-radius:2px}.dot.green{background:#0e742d}.dot.yellow{background:#d9a300}.dot.gray{background:#89969e}.fm-bottom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.fm-info-panel p{min-height:48px;margin:.8rem 0}.fm-info-panel h3 i{color:#128133}
.fm-modern-footer{background:linear-gradient(90deg,#062118,#03110f);color:#fff;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 1.15fr;border-top:1px solid #16913a}.fm-footer-item,.fm-footer-slogan{padding:1rem 1.3rem;display:flex;align-items:center;justify-content:center;gap:.8rem;border-right:1px solid rgba(255,255,255,.15);text-align:left}.fm-footer-item>i{font-size:2.2rem;color:var(--fm-lime)}.fm-footer-item>span:not(.fm-growth-circle),.fm-footer-slogan{display:flex;flex-direction:column}.fm-footer-item small,.fm-footer-slogan small{color:#f0f5f2}.fm-footer-slogan{justify-content:center;border-right:0}.fm-footer-slogan strong{font-size:1.05rem}.fm-footer-brand{border-right:0}.fm-footer-brand strong{font-size:1rem}.fm-growth-circle{width:2.55rem;height:2.55rem;min-width:2.55rem;border:2px solid var(--fm-lime);border-radius:50%;display:inline-flex!important;align-items:center;justify-content:center;box-shadow:0 0 14px rgba(118,217,0,.28)}.fm-growth-circle i{font-size:1.55rem;color:var(--fm-lime)}
@media(max-width:1100px){.fm-top-brand-inner{min-height:110px}.fm-top-logo{width:76px;height:76px}.fm-top-title{font-size:2rem}.fm-top-meta{display:none}.fm-kpi-grid{grid-template-columns:repeat(2,1fr)}.fm-quick-grid{grid-template-columns:repeat(3,1fr)}.fm-modern-footer{grid-template-columns:repeat(2,1fr)}.fm-footer-slogan{grid-column:span 2}.fm-dashboard-content-grid{grid-template-columns:1fr}.fm-bottom-grid{grid-template-columns:1fr}}
@media(max-width:700px){.fm-top-brand-inner{padding:14px}.fm-top-logo{width:58px;height:58px}.fm-top-title{font-size:1.45rem}.fm-top-subtitle{font-size:.92rem}.fm-top-tagline{font-size:.82rem}.fm-modern-shell .page-body>.container-xl{padding:0 .75rem}.fm-kpi-grid,.fm-quick-grid{grid-template-columns:1fr}.fm-modern-footer{grid-template-columns:1fr}.fm-footer-slogan{grid-column:auto}.fm-footer-item,.fm-footer-slogan{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}}


/* Fiscal Manager 3.24.0 - tema escuro consolidado */
:root{--fm-bg:#06100f;--fm-panel:#0b1b1a;--fm-panel-2:#102523;--fm-line:#1c3b35;--fm-text:#edf7f2;--fm-muted:#9fb4ab;--fm-accent:#50d12f;--fm-accent2:#86ef35;}
body.fm-modern-shell{background:radial-gradient(circle at 72% 6%,rgba(45,180,66,.11),transparent 28%),#06100f!important;color:var(--fm-text)!important;}
.fm-modern-shell .page-wrapper,.fm-modern-shell .page-body{background:transparent!important;}
.fm-modern-shell .navbar-vertical{background:linear-gradient(180deg,#06110f,#071b18 62%,#06110f)!important;border-right:1px solid var(--fm-line)!important;box-shadow:12px 0 40px rgba(0,0,0,.22)}
.fm-modern-shell .navbar-vertical .nav-link{color:#dbe9e2!important}.fm-modern-shell .navbar-vertical .dropdown-menu{background:#0b1d1a;border:1px solid #21443b}.fm-modern-shell .navbar-vertical .dropdown-item{color:#dcebe4}.fm-modern-shell .navbar-vertical .dropdown-item:hover{background:#14352d;color:#fff}
.fm-top-brand{background:radial-gradient(circle at 65% 50%,rgba(67,210,70,.18),transparent 31%),linear-gradient(115deg,#030909,#071b16)!important;border-bottom:1px solid #1c4a3a!important;box-shadow:0 15px 40px rgba(0,0,0,.23)}
.fm-modern-shell .page-body>.container-xl{padding-top:.4rem!important}.fm-dashboard-modern{color:var(--fm-text)}
.fm-kpi-card,.fm-quick-card,.fm-panel,.fm-modern-shell .card,.fm-modern-shell .alert,.fm-modern-shell .modal-content{background:linear-gradient(145deg,#0d201d,#091715)!important;border:1px solid var(--fm-line)!important;color:var(--fm-text)!important;box-shadow:0 8px 22px rgba(0,0,0,.22)!important}
.fm-kpi-card{position:relative;overflow:hidden}.fm-kpi-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--fm-accent),transparent)}
.fm-kpi-card span,.fm-panel-head a,.fm-info-panel a{color:var(--fm-accent2)!important}.fm-kpi-card small,.fm-quick-card small,.text-secondary,.text-muted{color:var(--fm-muted)!important}
.fm-quick-card{color:var(--fm-text)!important}.fm-quick-card i{color:var(--fm-accent)!important}.fm-quick-card:hover{border-color:#3b8d52!important;background:#102a24!important;transform:translateY(-2px)}
.fm-system-ring:before{background:#0b1b1a!important}.fm-system-ring{background:conic-gradient(#32d04f 0 calc(var(--p)*1%),#173a2b calc(var(--p)*1%) 100%);box-shadow:0 8px 24px rgba(0,0,0,.28)}.fm-modern-shell .table{--tblr-table-color:var(--fm-text);--tblr-table-bg:transparent;--tblr-table-border-color:#203b36}.fm-modern-shell .table thead th{color:#b9ccc4;background:#0b1b1a}.fm-modern-shell .table tbody tr:hover{background:#102923}
.fm-modern-shell .form-control,.fm-modern-shell .form-select,.fm-modern-shell textarea{background:#091714!important;border-color:#28463f!important;color:#eef8f3!important}.fm-modern-shell .form-control:focus,.fm-modern-shell .form-select:focus{border-color:var(--fm-accent)!important;box-shadow:0 0 0 .2rem rgba(80,209,47,.13)!important}.fm-modern-shell .form-label,.fm-modern-shell .card-title,.fm-modern-shell h1,.fm-modern-shell h2,.fm-modern-shell h3,.fm-modern-shell h4{color:#f3faf6!important}
.fm-modern-shell .card-header{background:#0b1b1a!important;border-color:var(--fm-line)!important}.fm-modern-shell .list-group-item{background:#0b1b1a;color:var(--fm-text);border-color:var(--fm-line)}
.fm-modern-footer{background:linear-gradient(90deg,#061b16,#04100e)!important;border-top:1px solid #287b42!important}.fm-footer-item{min-height:82px}.fm-footer-item>i,.fm-growth-circle i{color:var(--fm-accent2)!important}.fm-growth-circle{border-color:var(--fm-accent2)!important}.fm-footer-item strong{font-weight:700}.fm-footer-item small{color:#dce9e2!important}
@media(max-width:700px){.fm-top-title{font-size:1.4rem}.fm-top-brand-inner{min-height:92px}.fm-top-subtitle,.fm-top-tagline{display:none}}


/* Fiscal Manager 3.24.1 - alternancia claro/escuro e formularios uniformes */
.fm-theme-switch{display:inline-flex;align-items:center;gap:.4rem;margin:0 .15rem;cursor:pointer;user-select:none;color:#dcebe4}
.fm-theme-switch input{position:absolute;opacity:0;pointer-events:none}
.fm-theme-slider{width:46px;height:24px;border-radius:999px;background:#d5ddd9;border:1px solid rgba(255,255,255,.22);position:relative;transition:.2s ease;box-shadow:inset 0 1px 3px rgba(0,0,0,.25)}
.fm-theme-slider:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;left:2px;top:2px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:.2s ease}
.fm-theme-switch input:checked + .fm-theme-slider{background:linear-gradient(90deg,#1b8b37,#50d12f)}
.fm-theme-switch input:checked + .fm-theme-slider:before{transform:translateX(22px)}
.fm-theme-switch i{font-size:1.05rem}

/* Todas as linhas usam a mesma cor; somente divisorias discretas. */
.fm-modern-shell .table tbody tr,
.fm-modern-shell .table-striped>tbody>tr:nth-of-type(odd)>*,
.fm-modern-shell .table-striped>tbody>tr:nth-of-type(even)>*{background:var(--fm-panel)!important;color:var(--fm-text)!important;box-shadow:none!important}
.fm-modern-shell .table tbody td{border-bottom:1px solid var(--fm-line)!important}
.fm-modern-shell .table tbody tr:hover>*{background:#102923!important}

/* Remove faixas claras dos rodapes de formularios e modais. */
.fm-modern-shell .card-footer,
.fm-modern-shell .modal-footer,
.fm-modern-shell form .bg-white,
.fm-modern-shell .form-footer,
.fm-modern-shell .card-actions-footer{background:var(--fm-panel)!important;border-color:var(--fm-line)!important;color:var(--fm-text)!important}
.fm-modern-shell .card-footer .btn-outline-secondary,
.fm-modern-shell .modal-footer .btn-outline-secondary{color:var(--fm-text)!important;border-color:#49635b!important;background:transparent!important}

html[data-fm-theme="light"]{
  --fm-bg:#eef3f1;--fm-panel:#ffffff;--fm-panel-2:#f6f9f8;--fm-line:#d8e2de;--fm-text:#12211b;--fm-muted:#617069;--fm-accent:#198f38;--fm-accent2:#2caa45;
}
html[data-fm-theme="light"] body.fm-modern-shell{background:#eef3f1!important;color:var(--fm-text)!important}
html[data-fm-theme="light"] .fm-modern-shell .page-wrapper,
html[data-fm-theme="light"] .fm-modern-shell .page-body{background:#eef3f1!important}
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical{background:linear-gradient(180deg,#f8fbfa,#e8f2ed)!important;border-right:1px solid #d6e3dd!important;box-shadow:8px 0 24px rgba(13,55,37,.08)}
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .nav-link{color:#18352a!important}
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .dropdown-menu{background:#fff!important;border-color:#d4e1db!important}
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .dropdown-item{color:#18352a!important}
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .dropdown-item:hover{background:#e8f5ed!important;color:#0a5e25!important}
html[data-fm-theme="light"] .fm-sidebar-brand a{color:#17342a!important}
html[data-fm-theme="light"] .fm-top-brand{background:linear-gradient(115deg,#ffffff,#e8f4ed)!important;color:#10231a!important;border-bottom-color:#cbded4!important;box-shadow:0 8px 28px rgba(10,70,40,.08)!important}
html[data-fm-theme="light"] .fm-top-title,html[data-fm-theme="light"] .fm-top-subtitle,html[data-fm-theme="light"] .fm-top-tagline,html[data-fm-theme="light"] .fm-top-meta{color:#10231a!important}
html[data-fm-theme="light"] .fm-theme-switch{color:#17342a!important}
html[data-fm-theme="light"] .fm-kpi-card,html[data-fm-theme="light"] .fm-quick-card,html[data-fm-theme="light"] .fm-panel,html[data-fm-theme="light"] .fm-modern-shell .card,html[data-fm-theme="light"] .fm-modern-shell .alert,html[data-fm-theme="light"] .fm-modern-shell .modal-content{background:#fff!important;border-color:#d7e2dd!important;color:#15251e!important;box-shadow:0 6px 18px rgba(16,70,44,.07)!important}
html[data-fm-theme="light"] .fm-modern-shell .form-control,html[data-fm-theme="light"] .fm-modern-shell .form-select,html[data-fm-theme="light"] .fm-modern-shell textarea{background:#fff!important;border-color:#cbd9d2!important;color:#15251e!important}
html[data-fm-theme="light"] .fm-modern-shell .card-header,html[data-fm-theme="light"] .fm-modern-shell .card-footer,html[data-fm-theme="light"] .fm-modern-shell .modal-footer,html[data-fm-theme="light"] .fm-modern-shell form .bg-white{background:#fff!important;border-color:#d7e2dd!important;color:#15251e!important}
html[data-fm-theme="light"] .fm-modern-shell .table{--tblr-table-color:#15251e;--tblr-table-bg:#fff;--tblr-table-border-color:#dce5e1}
html[data-fm-theme="light"] .fm-modern-shell .table thead th{background:#edf4f0!important;color:#28453a!important}
html[data-fm-theme="light"] .fm-modern-shell .table tbody tr,html[data-fm-theme="light"] .fm-modern-shell .table-striped>tbody>tr:nth-of-type(odd)>*,html[data-fm-theme="light"] .fm-modern-shell .table-striped>tbody>tr:nth-of-type(even)>*{background:#fff!important;color:#15251e!important}
html[data-fm-theme="light"] .fm-modern-shell .table tbody tr:hover>*{background:#edf7f1!important}
html[data-fm-theme="light"] .text-secondary,html[data-fm-theme="light"] .text-muted{color:#66766f!important}
html[data-fm-theme="light"] .fm-modern-footer{background:linear-gradient(90deg,#e5f1eb,#f5faf7)!important;color:#17342a!important;border-top-color:#b8d4c5!important}
html[data-fm-theme="light"] .fm-footer-item small{color:#52685e!important}

/* Fiscal Manager 3.24.2 - contraste completo do tema claro */
html[data-fm-theme="light"] .fm-modern-shell,
html[data-fm-theme="light"] .fm-modern-shell .page,
html[data-fm-theme="light"] .fm-modern-shell .page-wrapper,
html[data-fm-theme="light"] .fm-modern-shell .page-body,
html[data-fm-theme="light"] .fm-modern-shell .container-xl,
html[data-fm-theme="light"] .fm-modern-shell .container-fluid { color:#16251f!important; }

html[data-fm-theme="light"] .fm-modern-shell h1,
html[data-fm-theme="light"] .fm-modern-shell h2,
html[data-fm-theme="light"] .fm-modern-shell h3,
html[data-fm-theme="light"] .fm-modern-shell h4,
html[data-fm-theme="light"] .fm-modern-shell h5,
html[data-fm-theme="light"] .fm-modern-shell h6,
html[data-fm-theme="light"] .fm-modern-shell .card-title,
html[data-fm-theme="light"] .fm-modern-shell .card-header,
html[data-fm-theme="light"] .fm-modern-shell .form-label,
html[data-fm-theme="light"] .fm-modern-shell label,
html[data-fm-theme="light"] .fm-modern-shell legend,
html[data-fm-theme="light"] .fm-modern-shell .section-title,
html[data-fm-theme="light"] .fm-modern-shell .page-title,
html[data-fm-theme="light"] .fm-modern-shell .modal-title,
html[data-fm-theme="light"] .fm-modern-shell .fm-panel-head h3,
html[data-fm-theme="light"] .fm-modern-shell .fm-info-panel h3 { color:#17352a!important; opacity:1!important; }

html[data-fm-theme="light"] .fm-modern-shell .nav-tabs .nav-link,
html[data-fm-theme="light"] .fm-modern-shell .nav-pills .nav-link { color:#49675b!important; }
html[data-fm-theme="light"] .fm-modern-shell .nav-tabs .nav-link.active,
html[data-fm-theme="light"] .fm-modern-shell .nav-pills .nav-link.active { color:#0d6d2a!important; background:#fff!important; border-color:#cbd9d2 #cbd9d2 #fff!important; font-weight:600; }

html[data-fm-theme="light"] .fm-modern-shell .form-text,
html[data-fm-theme="light"] .fm-modern-shell small,
html[data-fm-theme="light"] .fm-modern-shell .text-secondary,
html[data-fm-theme="light"] .fm-modern-shell .text-muted { color:#5d7067!important; opacity:1!important; }

html[data-fm-theme="light"] .fm-modern-shell .table td,
html[data-fm-theme="light"] .fm-modern-shell .table th,
html[data-fm-theme="light"] .fm-modern-shell .table a,
html[data-fm-theme="light"] .fm-modern-shell .list-group-item,
html[data-fm-theme="light"] .fm-modern-shell .list-group-item a { color:#15251e!important; }
html[data-fm-theme="light"] .fm-modern-shell .table tbody tr,
html[data-fm-theme="light"] .fm-modern-shell .table-striped>tbody>tr:nth-of-type(odd)>*,
html[data-fm-theme="light"] .fm-modern-shell .table-striped>tbody>tr:nth-of-type(even)>* { background:#fff!important; color:#15251e!important; }
html[data-fm-theme="light"] .fm-modern-shell .table tbody td { border-bottom-color:#dce5e1!important; }

html[data-fm-theme="light"] .fm-modern-shell .card-footer,
html[data-fm-theme="light"] .fm-modern-shell .modal-footer,
html[data-fm-theme="light"] .fm-modern-shell form .bg-white,
html[data-fm-theme="light"] .fm-modern-shell .form-footer,
html[data-fm-theme="light"] .fm-modern-shell .card-actions-footer { background:#fff!important; color:#15251e!important; border-color:#d7e2dd!important; }

html[data-fm-theme="light"] .fm-modern-shell input::placeholder,
html[data-fm-theme="light"] .fm-modern-shell textarea::placeholder { color:#809087!important; opacity:1!important; }

html[data-fm-theme="light"] .fm-system-ring{background:conic-gradient(#21a63d 0 calc(var(--p)*1%),#d6f1d8 calc(var(--p)*1%) 100%)!important;box-shadow:0 8px 22px rgba(24,145,58,.12)!important}
html[data-fm-theme="light"] .fm-system-ring:before{background:#ffffff!important}
html[data-fm-theme="light"] .fm-system-ring strong{color:#176f2d!important}
html[data-fm-theme="light"] .fm-system-ring small{color:#607168!important}


/* Fiscal Manager 3.24.4 - tela de login preparatoria */
.fm-login-page{margin:0;min-height:100vh;background:radial-gradient(circle at 8% 10%,rgba(34,197,94,.15),transparent 28%),radial-gradient(circle at 92% 90%,rgba(21,128,61,.18),transparent 30%),linear-gradient(135deg,#071019 0%,#0b1520 55%,#11182a 100%);color:#f8fafc;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;box-sizing:border-box}
.fm-login-shell{width:min(950px,94vw);min-height:570px;display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(148,163,184,.22);border-radius:28px;overflow:hidden;background:rgba(8,17,26,.9);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.fm-login-brand,.fm-login-form-panel{padding:52px 48px;display:flex;flex-direction:column;justify-content:center}
.fm-login-brand{background:linear-gradient(160deg,rgba(4,12,18,.96),rgba(12,22,31,.94))}
.fm-login-logo{width:118px;height:118px;object-fit:contain;margin-bottom:28px;filter:drop-shadow(0 12px 24px rgba(34,197,94,.18))}
.fm-login-brand h1{font-size:42px;line-height:1.05;margin:0 0 22px;font-weight:800}.fm-login-brand h1 strong{color:#4ade2c}.fm-login-brand p{color:#cbd5e1;font-size:16px;line-height:1.7;max-width:390px}
.fm-login-security{margin-top:auto;border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:18px;display:flex;align-items:center;gap:14px;background:rgba(30,41,59,.45)}.fm-login-security i{font-size:32px;color:#4ade2c}.fm-login-security b,.fm-login-security span{display:block}.fm-login-security span{color:#aab7c7;margin-top:4px}
.fm-login-form-panel{background:linear-gradient(160deg,rgba(24,34,45,.98),rgba(13,23,33,.98))}.fm-login-symbol{width:58px;height:58px;border-radius:16px;background:rgba(74,222,44,.14);color:#4ade2c;display:grid;place-items:center;font-size:28px;margin-bottom:24px}.fm-login-form-panel h2{font-size:32px;margin:0 0 8px}.fm-login-form-panel>p{color:#aab7c7;margin:0 0 34px}
.fm-login-form-panel label{font-weight:700;display:block;margin:18px 0 8px}.fm-login-input{height:54px;border:1px solid #3a4858;border-radius:10px;display:flex;align-items:center;padding:0 14px;gap:10px;background:#0b141e}.fm-login-input i{color:#4ade2c;font-size:21px}.fm-login-input input{flex:1;border:0;outline:0;background:transparent;color:#f8fafc;font-size:16px}.fm-login-input input::placeholder{color:#718096}.fm-login-input button{border:0;background:transparent;color:#94a3b8;font-size:20px;cursor:pointer}
.fm-login-submit{margin-top:28px;width:100%;height:56px;border:0;border-radius:10px;background:linear-gradient(90deg,#22a83d,#48d22e);color:#fff;font-size:17px;font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(34,168,61,.25)}.fm-login-submit:hover{filter:brightness(1.06)}
.fm-login-note{margin-top:24px;padding-top:20px;border-top:1px solid rgba(148,163,184,.2);color:#94a3b8;font-size:13px;line-height:1.5}.fm-login-note i{color:#4ade2c;margin-right:5px}.fm-login-footer{margin-top:24px;color:#94a3b8;font-size:13px}
@media(max-width:800px){.fm-login-page{padding:16px}.fm-login-shell{grid-template-columns:1fr}.fm-login-brand{display:none}.fm-login-form-panel{padding:36px 24px}.fm-login-shell{min-height:auto}.fm-login-footer{text-align:center}}


/* FISCAL_MANAGER_V32418_ALIGNMENT_ACCENT */
:root { --fm-accent:#19a63b; --fm-accent-dark:#0b5d25; --fm-accent-soft:#eaf6ed; }
html[data-fm-accent="blue"] { --fm-accent:#206bc4; --fm-accent-dark:#174f92; --fm-accent-soft:#eaf2fc; }
.fm-accent-toggle{display:inline-flex;align-items:center;gap:.35rem;border:1px solid color-mix(in srgb,var(--fm-accent) 40%,transparent);background:var(--fm-accent-soft);color:var(--fm-accent-dark);border-radius:999px;padding:.38rem .7rem;font-weight:700;font-size:.78rem;white-space:nowrap}
.fm-version-label{color:#111!important;font-weight:700;display:inline-flex;align-items:center;gap:.28rem;white-space:nowrap}.fm-version-dot{color:var(--fm-accent);font-size:1.25rem;line-height:.5}
.fm-top-meta{display:flex;align-items:center;justify-content:flex-end;gap:1.15rem;flex-wrap:nowrap}.fm-top-meta>span{display:inline-flex;align-items:center;gap:.42rem;white-space:nowrap}
.fm-top-brand-inner{align-items:center}.fm-top-identity{min-width:0}.fm-top-meta{margin-left:auto;padding-top:0!important}
.fm-modern-footer{align-items:stretch}.fm-footer-item{display:flex;align-items:center;justify-content:center;min-height:86px}.fm-footer-item>span:last-child{display:flex;flex-direction:column;justify-content:center}.fm-footer-item strong,.fm-footer-item small{line-height:1.25}
.fm-system-message-content{border:1px solid color-mix(in srgb,var(--fm-accent) 45%,#d7e2dd);border-radius:14px;overflow:hidden}.fm-message-icon{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:1.55rem;background:var(--fm-accent-soft);color:var(--fm-accent-dark)}.fm-message-warning{background:#fff3cd;color:#8a5a00}.fm-message-error{background:#fde8e8;color:#b42318}.fm-message-success{background:#e8f7ec;color:#157a32}.fm-message-text{font-size:1rem;line-height:1.55;white-space:pre-line}
html[data-fm-accent="blue"] .btn-primary,html[data-fm-accent="blue"] .bg-green,html[data-fm-accent="blue"] .navbar .nav-item.active>.nav-link,html[data-fm-accent="blue"] .navbar .nav-link.active{background-color:var(--fm-accent)!important;border-color:var(--fm-accent)!important}
html[data-fm-accent="blue"] .text-green{color:var(--fm-accent)!important}html[data-fm-accent="blue"] .bg-green-lt{background:var(--fm-accent-soft)!important;color:var(--fm-accent-dark)!important}
html[data-fm-accent="blue"] .fm-top-title span,html[data-fm-accent="blue"] .fm-top-subtitle span,html[data-fm-accent="blue"] .fm-top-tagline b,html[data-fm-accent="blue"] .fm-footer-item>i,html[data-fm-accent="blue"] .fm-growth-circle{color:var(--fm-accent)!important;border-color:var(--fm-accent)!important}
html[data-fm-accent="blue"] .fm-sidebar-brand img,html[data-fm-accent="blue"] .fm-top-logo{filter:hue-rotate(80deg) saturate(1.2)}
#lista-servicos .card-body{align-items:start!important}#lista-servicos .form-label{min-height:2.5rem;display:flex;align-items:flex-end;margin-bottom:.4rem}#lista-servicos .form-control,#lista-servicos .form-select{min-height:42px}#lista-servicos [class*="col-md-"]{display:flex;flex-direction:column}#lista-servicos .d-flex.align-items-end{justify-content:flex-end;padding-bottom:.1rem}
.fm-emission-progress{position:fixed;inset:0;background:rgba(3,18,13,.72);z-index:1090;display:none;align-items:center;justify-content:center;padding:1rem}.fm-emission-progress.show{display:flex}.fm-emission-progress-card{width:min(620px,94vw);background:var(--tblr-bg-surface);border:1px solid color-mix(in srgb,var(--fm-accent) 45%,#888);border-radius:16px;padding:1.6rem;box-shadow:0 24px 70px rgba(0,0,0,.35)}.fm-emission-progress .progress-bar{background:var(--fm-accent)!important;transition:width .5s ease}
@media(max-width:900px){.fm-top-meta{gap:.55rem;flex-wrap:wrap}.fm-accent-toggle span{display:none}.fm-version-label{font-size:.8rem}}


/* FISCAL_MANAGER_V32419_BLUE_COMPLETENESS_AND_EMISSION_FIX */
html[data-fm-accent="blue"]{--fm-accent:#206bc4;--fm-accent2:#206bc4;--fm-accent-dark:#174f92;--fm-accent-soft:#eaf2fc;--fm-green:#206bc4;--fm-lime:#206bc4;}
html[data-fm-accent="blue"] .fm-kpi-card span,
html[data-fm-accent="blue"] .fm-panel-head a,
html[data-fm-accent="blue"] .fm-info-panel a,
html[data-fm-accent="blue"] .fm-info-panel h3 i,
html[data-fm-accent="blue"] .fm-quick-card i,
html[data-fm-accent="blue"] .fm-footer-item>i,
html[data-fm-accent="blue"] .fm-growth-circle i,
html[data-fm-accent="blue"] .fm-system-ring strong{color:var(--fm-accent)!important;}
html[data-fm-accent="blue"] .fm-kpi-card:after{background:linear-gradient(90deg,var(--fm-accent),transparent)!important;}
html[data-fm-accent="blue"] .fm-system-ring{background:conic-gradient(var(--fm-accent) 0 calc(var(--p)*1%),#dbeafe calc(var(--p)*1%) 100%)!important;box-shadow:0 8px 22px rgba(32,107,196,.15)!important;}
html[data-fm-accent="blue"] .dot.green{background:var(--fm-accent)!important;}
html[data-fm-accent="blue"] .navbar .nav-item.active>.nav-link,
html[data-fm-accent="blue"] .navbar .nav-link.active,
html[data-fm-accent="blue"] .fm-sidebar .nav-link.active{background:var(--fm-accent)!important;color:#fff!important;}
html[data-fm-accent="blue"] .fm-theme-switch input:checked + .fm-theme-slider{background:linear-gradient(90deg,var(--fm-accent-dark),var(--fm-accent))!important;}
.fm-emission-inline-progress{min-width:320px;max-width:520px;flex:1;color:var(--tblr-body-color);}
.fm-emission-inline-progress .progress-bar{background:var(--fm-accent)!important;}
@media(max-width:767px){.fm-emission-inline-progress{min-width:100%;max-width:100%;}}

/* v3.24.20 - O estado hover do menu acompanha a cor de identidade selecionada. */
.fm-modern-shell .navbar-vertical .nav-link:hover,
.fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link,
.fm-modern-shell .navbar-vertical .nav-item.show > .nav-link,
.fm-modern-shell .navbar-vertical .nav-link:focus-visible {
  background: var(--fm-accent) !important;
  color: #fff !important;
}
.fm-modern-shell .navbar-vertical .nav-link:hover i,
.fm-modern-shell .navbar-vertical .nav-link:hover svg,
.fm-modern-shell .navbar-vertical .nav-link:hover .nav-link-icon,
.fm-modern-shell .navbar-vertical .nav-link:hover .nav-link-title,
.fm-modern-shell .navbar-vertical .nav-link:hover .nav-link-toggle,
.fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link i,
.fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link svg,
.fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link .nav-link-icon,
.fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link .nav-link-title,
.fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link .nav-link-toggle,
.fm-modern-shell .navbar-vertical .nav-item.show > .nav-link i,
.fm-modern-shell .navbar-vertical .nav-item.show > .nav-link svg,
.fm-modern-shell .navbar-vertical .nav-item.show > .nav-link .nav-link-icon,
.fm-modern-shell .navbar-vertical .nav-item.show > .nav-link .nav-link-title,
.fm-modern-shell .navbar-vertical .nav-item.show > .nav-link .nav-link-toggle {
  color: #fff !important;
  stroke: currentColor !important;
}
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .nav-link:hover,
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .nav-item:hover > .nav-link,
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .nav-item.show > .nav-link {
  background: var(--fm-accent) !important;
  color: #fff !important;
}


/* v3.24.21 - contraste da versao no tema escuro. */
html[data-fm-theme="dark"] .fm-version-label,
body[data-fm-theme="dark"] .fm-version-label {
  color: #fff !important;
}
html[data-fm-theme="light"] .fm-version-label,
body[data-fm-theme="light"] .fm-version-label {
  color: #111 !important;
}
.fm-version-dot { color: var(--fm-accent) !important; }

/* Fiscal Manager 3.24.27 - botao Sair do Sistema */
.fm-logout-item {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(148, 163, 184, .22);
}
.fm-logout-link {
  border: 1px solid color-mix(in srgb, var(--fm-accent, #16a34a) 70%, transparent);
  border-radius: .65rem;
  color: var(--fm-accent, #16a34a) !important;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}
.fm-logout-link:hover, .fm-logout-link:focus {
  background: var(--fm-accent, #16a34a) !important;
  border-color: var(--fm-accent, #16a34a) !important;
  color: #fff !important;
}
.fm-logout-link:hover .nav-link-icon,
.fm-logout-link:hover .nav-link-title,
.fm-logout-link:focus .nav-link-icon,
.fm-logout-link:focus .nav-link-title { color: #fff !important; }

/* Fiscal Manager 3.24.28 - usuario logado e autenticacao */
.fm-user-dropdown { position: relative; }
.fm-user-button {
  display: inline-flex; align-items: center; gap: .45rem; border: 1px solid var(--fm-border, #d7e0e7);
  background: var(--fm-surface, rgba(255,255,255,.75)); color: inherit; border-radius: 999px;
  padding: .28rem .6rem .28rem .28rem; font-weight: 700; cursor: pointer;
}
.fm-user-button:hover { border-color: var(--fm-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--fm-accent) 14%, transparent); }
.fm-user-avatar { width: 30px; height: 30px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: color-mix(in srgb, var(--fm-accent) 18%, transparent); color: var(--fm-accent); font-size: 1.15rem; }
.fm-user-name { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fm-user-menu { min-width: 230px; padding: .5rem; border-radius: .8rem; }
.fm-user-menu-head { display:flex; flex-direction:column; padding:.45rem .65rem; }
.fm-user-menu-head small { color: var(--tblr-secondary); margin-top:.15rem; }
.fm-login-error { display:flex; gap:.6rem; align-items:flex-start; padding:.75rem; margin-bottom:1rem; border:1px solid rgba(220,38,38,.35); background:rgba(220,38,38,.12); color:#111827; border-radius:.65rem; }
@media (max-width: 991px) { .fm-user-name { display:none; } .fm-user-button { padding-right:.35rem; } }


/* Fiscal Manager 3.24.29 - contraste do Centro de Ajuda no tema claro */
html[data-fm-theme="light"] .fm-help-nav-card,
html[data-fm-theme="light"] .fm-help-nav { background:#fff!important; }
html[data-fm-theme="light"] .fm-help-nav .list-group-item {
  background:#fff!important; color:#17352a!important; border-color:#d7e2dd!important; opacity:1!important;
}
html[data-fm-theme="light"] .fm-help-nav .list-group-item:hover {
  background:color-mix(in srgb, var(--fm-brand-color, #198f38) 10%, white)!important;
  color:var(--fm-brand-color, #198f38)!important;
}
html[data-fm-theme="light"] .fm-help-nav .list-group-item.active {
  background:color-mix(in srgb, var(--fm-brand-color, #198f38) 14%, white)!important;
  color:var(--fm-brand-color, #198f38)!important;
  border-color:color-mix(in srgb, var(--fm-brand-color, #198f38) 35%, white)!important;
}

/* Fiscal Manager 3.25.6 - ajustes completos para smartphone */
@media (max-width: 767.98px) {
  /* Cabecalho organizado: identidade acima e controles abaixo, sem sobreposicao. */
  .fm-top-brand-inner {
    min-height: auto !important;
    padding: 14px 16px 16px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    align-items: stretch !important;
  }
  .fm-top-identity {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    width: 100% !important;
  }
  .fm-top-logo { width: 64px !important; height: 64px !important; }
  .fm-top-title { font-size: 1.55rem !important; line-height: 1.05 !important; }
  .fm-top-subtitle, .fm-top-tagline { display: none !important; }
  .fm-top-meta {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    gap: 8px 10px !important;
    width: 100% !important;
    align-items: center !important;
    font-size: .84rem !important;
  }
  .fm-top-meta > span:first-child {
    grid-column: 1 / -1 !important;
    white-space: normal !important;
    text-align: left !important;
  }
  .fm-top-meta > span:nth-child(2) { white-space: nowrap !important; }
  .fm-accent-toggle { min-width: 44px !important; justify-content: center !important; }
  .fm-theme-switch { margin: 0 !important; }
  .fm-user-dropdown { justify-self: start !important; }
  .fm-version-label {
    justify-self: end !important;
    white-space: nowrap !important;
    font-size: .82rem !important;
  }

  /* Rodape institucional visivel e alinhado no smartphone. */
  .fm-modern-footer {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
  .fm-modern-footer .fm-footer-item {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 14px !important;
    width: 100% !important;
    min-height: 88px !important;
    padding: 16px 22px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    text-align: left !important;
  }
  .fm-modern-footer .fm-footer-item > i,
  .fm-modern-footer .fm-growth-circle {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: center !important;
  }
  .fm-modern-footer .fm-footer-item > i { font-size: 2rem !important; }
  .fm-modern-footer .fm-footer-item > span:last-child {
    min-width: 0 !important;
    width: 100% !important;
    align-items: flex-start !important;
    text-align: left !important;
  }
  .fm-modern-footer .fm-footer-item strong,
  .fm-modern-footer .fm-footer-item small {
    display: block !important;
    width: 100% !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }
  .fm-modern-footer .fm-footer-item strong { font-size: 1rem !important; }
  .fm-modern-footer .fm-footer-item small { margin-top: 2px !important; font-size: .86rem !important; }
  .fm-modern-footer .fm-footer-brand { border-bottom: 0 !important; }

  /* Eventos recentes passam a ser cards legiveis no mobile. */
  .fm-dashboard-content-grid .fm-modern-table thead { display: none !important; }
  .fm-dashboard-content-grid .fm-modern-table,
  .fm-dashboard-content-grid .fm-modern-table tbody,
  .fm-dashboard-content-grid .fm-modern-table tr,
  .fm-dashboard-content-grid .fm-modern-table td {
    display: block !important;
    width: 100% !important;
  }
  .fm-dashboard-content-grid .fm-modern-table tr {
    border: 1px solid var(--fm-line, rgba(148,163,184,.24)) !important;
    border-radius: 10px !important;
    margin-bottom: .75rem !important;
    padding: .8rem !important;
    overflow: hidden !important;
  }
  .fm-dashboard-content-grid .fm-modern-table td {
    border: 0 !important;
    padding: .25rem 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    text-align: left !important;
  }
  .fm-dashboard-content-grid .fm-modern-table td:first-child {
    font-weight: 800 !important;
    color: var(--fm-accent) !important;
  }
  .fm-dashboard-content-grid .fm-modern-table td:last-child { padding-top: .5rem !important; }

  /* Tabelas de logs permanecem usaveis e os botoes nao saem da tela. */
  #corpo-logs tr { min-width: 720px; }
  #corpo-logs td { white-space: normal; overflow-wrap: anywhere; }
  #corpo-logs td:last-child { min-width: 160px; }

  /* Progresso de emissao/backup sempre centralizado e estavel no smartphone. */
  .fm-emission-progress,
  .modal.show .modal-dialog {
    align-items: center !important;
    justify-content: center !important;
  }
  .fm-emission-progress-card {
    width: calc(100vw - 24px) !important;
    max-width: 520px !important;
    margin: 0 auto !important;
    padding: 1rem !important;
    text-align: center !important;
  }
  .fm-emission-inline-progress {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: .75rem auto 0 !important;
    text-align: center !important;
  }
  .fm-emission-inline-progress .progress,
  .fm-emission-progress .progress,
  #modal-progresso-backup .progress {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: hidden !important;
  }
  .progress-bar.progress-bar-animated,
  .progress-bar-indeterminate {
    animation-play-state: running !important;
    will-change: transform, width !important;
  }

  /* O menu lateral usa toda a largura e evita submenus fora da viewport. */
  .navbar-vertical .dropdown-menu {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: .25rem 0 !important;
  }
  .fm-help-submenu > .dropdown-menu { display: none !important; }
}


/* v3.25.11 - icone hamburger com contraste correto por tema */
.fm-modern-shell .navbar-vertical .navbar-toggler {
  min-width: 44px;
  min-height: 44px;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

/* Tema claro: tres barras escuras. */
html[data-fm-theme="light"] .fm-modern-shell .navbar-vertical .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath stroke='%232b2b2b' stroke-linecap='round' stroke-miterlimit='10' stroke-width='3' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Tema escuro: tres barras claras. */
html[data-fm-theme="dark"] .fm-modern-shell .navbar-vertical .navbar-toggler-icon,
html:not([data-fm-theme="light"]) .fm-modern-shell .navbar-vertical .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath stroke='%23ffffff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='3' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
  filter: none !important;
  opacity: 1 !important;
}

html[data-fm-theme="light"] .fm-modern-shell .page-wrapper > header.navbar .btn-icon,
html[data-fm-theme="light"] .fm-modern-shell .page-wrapper > header.navbar .nav-link,
html[data-fm-theme="light"] .fm-modern-shell .page-wrapper > header.navbar .ti {
  color: #2b2b2b !important;
}
html[data-fm-theme="dark"] .fm-modern-shell .page-wrapper > header.navbar .btn-icon,
html[data-fm-theme="dark"] .fm-modern-shell .page-wrapper > header.navbar .nav-link,
html[data-fm-theme="dark"] .fm-modern-shell .page-wrapper > header.navbar .ti {
  color: #fff !important;
}
@media (max-width: 991.98px) {
  .fm-modern-shell .navbar-vertical .navbar-toggler-icon {
    width: 1.7rem;
    height: 1.7rem;
    background-size: 1.7rem 1.7rem;
  }
}

/* v3.25.12 - contraste fixo do usuario logado no cabecalho */
.fm-modern-shell .fm-user-button {
  background: #ffffff !important;
  color: #212529 !important;
  border-color: #d6dee3 !important;
  opacity: 1 !important;
}
.fm-modern-shell .fm-user-button .fm-user-name,
.fm-modern-shell .fm-user-button > .ti-chevron-down {
  color: #212529 !important;
  opacity: 1 !important;
}
.fm-modern-shell .fm-user-button .fm-user-avatar {
  color: var(--fm-accent) !important;
  background: color-mix(in srgb, var(--fm-accent) 18%, #ffffff) !important;
}
.fm-modern-shell .fm-user-button:hover,
.fm-modern-shell .fm-user-button:focus,
.fm-modern-shell .fm-user-button[aria-expanded="true"] {
  background: #ffffff !important;
  color: #111827 !important;
  border-color: var(--fm-accent) !important;
}
.fm-modern-shell .fm-user-button:hover .fm-user-name,
.fm-modern-shell .fm-user-button:focus .fm-user-name,
.fm-modern-shell .fm-user-button[aria-expanded="true"] .fm-user-name,
.fm-modern-shell .fm-user-button:hover > .ti-chevron-down,
.fm-modern-shell .fm-user-button:focus > .ti-chevron-down,
.fm-modern-shell .fm-user-button[aria-expanded="true"] > .ti-chevron-down {
  color: #111827 !important;
}

/* Fiscal Manager 3.25.13 - login usa tema e cor gravados no banco. */
.fm-login-brand h1 strong,
.fm-login-security i,
.fm-login-symbol,
.fm-login-input i,
.fm-login-note i { color:var(--fm-accent)!important; }
.fm-login-logo { filter:drop-shadow(0 12px 24px color-mix(in srgb,var(--fm-accent) 28%,transparent))!important; }
.fm-login-symbol { background:color-mix(in srgb,var(--fm-accent) 14%,transparent)!important; }
.fm-login-submit {
  background:linear-gradient(90deg,var(--fm-accent-dark),var(--fm-accent))!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--fm-accent) 25%,transparent)!important;
}
html[data-fm-theme="light"] .fm-login-page {
  background:radial-gradient(circle at 8% 10%,color-mix(in srgb,var(--fm-accent) 12%,transparent),transparent 30%),radial-gradient(circle at 92% 90%,color-mix(in srgb,var(--fm-accent) 10%,transparent),transparent 32%),linear-gradient(135deg,#f5f9f7 0%,#eaf2ee 55%,#f7faf8 100%)!important;
  color:#17231e!important;
}
html[data-fm-theme="light"] .fm-login-shell {
  background:#fff!important;border-color:#d4e1db!important;box-shadow:0 30px 70px rgba(20,60,42,.16)!important;
}
html[data-fm-theme="light"] .fm-login-brand { background:linear-gradient(160deg,#f9fcfa,#eaf3ee)!important; }
html[data-fm-theme="light"] .fm-login-form-panel { background:linear-gradient(160deg,#ffffff,#f2f7f4)!important; }
html[data-fm-theme="light"] .fm-login-brand p,
html[data-fm-theme="light"] .fm-login-security span,
html[data-fm-theme="light"] .fm-login-form-panel>p,
html[data-fm-theme="light"] .fm-login-note,
html[data-fm-theme="light"] .fm-login-footer { color:#5e7067!important; }
html[data-fm-theme="light"] .fm-login-security { background:#fff!important;border-color:#d8e4de!important; }
html[data-fm-theme="light"] .fm-login-input { background:#fff!important;border-color:#c9d8d0!important; }
html[data-fm-theme="light"] .fm-login-input input { color:#17231e!important; }
html[data-fm-theme="light"] .fm-login-input input::placeholder { color:#7b8c84!important; }
html[data-fm-theme="light"] .fm-login-input button { color:#53665d!important; }
html[data-fm-theme="light"] .fm-login-note { border-top-color:#d8e4de!important; }

/* Ordenação de tabelas por usuário */
.fm-user-sortable-header {
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: color .15s ease, background-color .15s ease;
}
.fm-user-sortable-header:hover,
.fm-user-sortable-header:focus-visible {
  color: var(--fm-accent, #198754);
  background: color-mix(in srgb, var(--fm-accent, #198754) 8%, transparent);
  outline: none;
}
.fm-sort-indicator {
  display: inline-flex;
  min-width: 1rem;
  margin-left: .35rem;
  justify-content: center;
  font-size: .85em;
  opacity: .52;
}
.fm-sort-active .fm-sort-indicator {
  opacity: 1;
  color: var(--fm-accent, #198754);
  font-weight: 700;
}


/* Fiscal Manager 3.25.22 - cabecalho alinhado e versao no rodape da barra lateral */
.fm-modern-shell .navbar-vertical > .container-fluid {
  min-height: 100vh;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding-bottom: 18px;
}
.fm-modern-shell .navbar-vertical .navbar-collapse {
  flex: 1 1 auto;
  align-items: stretch;
}
.fm-modern-shell .navbar-vertical .navbar-nav {
  width: 100%;
}
.fm-sidebar-build-card {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  margin: auto 12px 0;
  padding: 14px 16px;
  border: 1px solid rgba(148, 163, 184, .26);
  border-radius: 13px;
  background: rgba(255, 255, 255, .06);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .08);
}
.fm-sidebar-build-download {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.fm-sidebar-build-download:hover {
  color: inherit;
  text-decoration: none;
  border-color: color-mix(in srgb, var(--fm-accent) 45%, transparent);
  transform: translateY(-1px);
}
.fm-sidebar-build-download:focus-visible {
  outline: 2px solid var(--fm-accent);
  outline-offset: 2px;
}
.fm-sidebar-build-icon {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: var(--fm-accent);
  background: color-mix(in srgb, var(--fm-accent) 10%, transparent);
  font-size: 1.45rem;
}
.fm-sidebar-build-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  line-height: 1.18;
}
.fm-sidebar-build-copy small {
  color: inherit;
  opacity: .82;
  font-size: .78rem;
}
.fm-sidebar-build-copy strong {
  margin-top: 5px;
  color: var(--fm-accent);
  font-size: .72rem;
  letter-spacing: -.015em;
  white-space: nowrap;
}
.fm-top-brand-inner {
  padding-inline: 28px;
}
.fm-top-identity {
  flex: 1 1 auto;
}
.fm-top-meta {
  flex: 0 0 auto;
  align-self: center;
}
html[data-fm-theme="light"] .fm-sidebar-build-card {
  background: rgba(255, 255, 255, .82);
  border-color: #d7e2dd;
  color: #15251e;
  box-shadow: 0 8px 20px rgba(15, 40, 30, .05);
}
html[data-fm-theme="dark"] .fm-sidebar-build-card {
  color: #f8fafc;
}
@media (max-width: 991.98px) {
  .fm-modern-shell .navbar-vertical > .container-fluid {
    min-height: auto;
    height: auto;
    padding-bottom: 0;
  }
  .fm-sidebar-build-card {
    display: none;
  }
}
@media (min-width: 992px) and (max-width: 1300px) {
  .fm-top-brand-inner {
    padding-inline: 22px;
  }
  .fm-top-meta {
    gap: .75rem;
  }
}

/* Fiscal Manager 3.25.25 - alinhamento definitivo do botao hamburger no mobile */
@media (max-width: 991.98px) {
  .fm-modern-shell .navbar-vertical > .container-fluid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .75rem !important;
    min-height: 84px !important;
    padding: .75rem !important;
  }

  .fm-modern-shell .navbar-vertical .navbar-toggler {
    order: 1 !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    line-height: 1 !important;
  }

  .fm-modern-shell .navbar-vertical .navbar-toggler-icon {
    display: block !important;
    width: 30px !important;
    height: 30px !important;
    margin: 0 !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 30px 30px !important;
    transform: none !important;
  }

  .fm-modern-shell .navbar-vertical .navbar-brand {
    order: 2 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
  }

  .fm-modern-shell .navbar-vertical .navbar-brand > a {
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .fm-modern-shell .navbar-vertical .navbar-collapse {
    order: 3 !important;
    flex: 0 0 100% !important;
    width: 100% !important;
  }
}
/* Fiscal Manager 3.25.26 - card de build no dashboard mobile */
.fm-mobile-build-card {
  display: none;
}
@media (max-width: 700px) {
  .fm-mobile-build-card {
    position: relative;
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    align-items: center;
    gap: 16px;
    min-height: 132px;
    padding: 20px;
    overflow: hidden;
    border: 1px solid var(--fm-line);
    border-radius: 18px;
    background: linear-gradient(145deg, var(--fm-panel), var(--fm-panel-2));
    color: var(--fm-text);
    box-shadow: 0 8px 24px rgba(15, 40, 30, .10);
  }
  .fm-mobile-build-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--fm-accent), transparent);
  }
  .fm-mobile-build-icon {
    width: 78px;
    height: 78px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    color: var(--fm-accent);
    background: color-mix(in srgb, var(--fm-accent) 12%, transparent);
    font-size: 2.7rem;
  }
  .fm-mobile-build-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.2;
  }
  .fm-mobile-build-copy small {
    color: var(--fm-accent);
    font-size: 1rem;
    font-weight: 800;
  }
  .fm-mobile-build-copy strong {
    margin-top: 7px;
    color: var(--fm-text);
    font-size: clamp(1.55rem, 8vw, 2.15rem);
    font-weight: 800;
    letter-spacing: -.02em;
    white-space: nowrap;
  }
  .fm-mobile-build-copy span {
    margin-top: 7px;
    color: var(--fm-muted);
    font-size: .95rem;
  }
}


/* Dashboard e certificados - revisao 3.25.37 */
.fm-dashboard-content-single{grid-template-columns:1fr!important}
.fm-system-summary-body{display:grid;grid-template-columns:190px minmax(0,1fr);gap:1.5rem;align-items:center;max-width:720px;margin:0 auto}
.fm-system-summary-panel{min-height:230px}
.fm-cert-page{max-width:100%;overflow:hidden}
.fm-cert-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.fm-cert-kpi{background:var(--fm-card,#fff);border:1px solid var(--fm-border,rgba(148,163,184,.25));border-radius:12px;padding:.9rem 1rem;min-width:0}
.fm-cert-kpi span{display:block;color:var(--fm-muted,#6b7280);font-size:.82rem;font-weight:700;white-space:normal}
.fm-cert-kpi strong{display:block;font-size:1.65rem;margin-top:.15rem}
.fm-cert-kpi-warning strong{color:#d99a00}.fm-cert-kpi-danger strong{color:#d63939}
.fm-cert-actions{white-space:nowrap}.fm-cert-actions form+form{margin-left:.35rem}
.fm-cert-form-card{max-width:980px;margin:0 auto}
.fm-cert-filter .form-label{white-space:nowrap}
@media(max-width:900px){
  .fm-cert-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fm-system-summary-body{grid-template-columns:1fr;gap:.5rem}.fm-system-ring{margin:.25rem auto .5rem}
}
@media(max-width:700px){
  .fm-cert-kpis{grid-template-columns:1fr 1fr;gap:.5rem}.fm-cert-kpi{padding:.7rem}.fm-cert-kpi strong{font-size:1.35rem}
  .fm-cert-toolbar .card-body{padding:.9rem}.fm-cert-toolbar .btn{width:100%}
  .fm-cert-main-table thead{display:none}
  .fm-cert-main-table table,.fm-cert-main-table tbody,.fm-cert-main-table tr,.fm-cert-main-table td{display:block;width:100%}
  .fm-cert-main-table tr{padding:.75rem;border-bottom:1px solid var(--fm-border,rgba(148,163,184,.25))}
  .fm-cert-main-table td{border:0!important;padding:.35rem 0!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}
  .fm-cert-main-table td[data-label]::before{content:attr(data-label);display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;color:var(--fm-muted,#6b7280);margin-bottom:.1rem}
  .fm-cert-actions{display:flex!important;gap:.5rem;flex-wrap:wrap}.fm-cert-actions form{flex:1;margin:0!important}.fm-cert-actions button{width:100%}
  .fm-cert-report-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.fm-cert-report-table table{min-width:720px}
  .fm-system-summary-panel{padding:.85rem}.fm-system-summary-body{max-width:100%}.fm-summary-list span{font-size:.9rem}
}
@media print{
  .navbar,.fm-top-brand,.fm-modern-footer,.fm-cert-toolbar,.fm-cert-main-table,.fm-global-back,.card-actions,.fm-cert-filter,.d-print-none{display:none!important}
  .fm-cert-page .card{box-shadow:none!important;border:0!important}.fm-cert-report-table{overflow:visible!important}.fm-cert-report-table table{min-width:0!important;font-size:10pt}
}

/* Dashboard - card de certificados como acao com modal */
.fm-kpi-card-button{appearance:none;-webkit-appearance:none;width:100%;font:inherit;text-align:left;cursor:pointer;background:var(--fm-card,#fff);color:inherit}
.fm-kpi-card-button:focus-visible{outline:3px solid color-mix(in srgb,var(--fm-accent,#16a34a) 35%,transparent);outline-offset:2px}
.fm-cert-dashboard-modal-actions{gap:.5rem}
@media(max-width:700px){.fm-cert-dashboard-modal-actions{display:grid!important;grid-template-columns:1fr;width:100%}.fm-cert-dashboard-modal-actions .btn{width:100%}}

.fm-bottom-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){.fm-bottom-grid-two{grid-template-columns:1fr}}

/* Dashboard v3.26.43: três gráficos em pizza no mesmo espaço. */
.fm-dashboard-pie-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.fm-dashboard-pie-card{min-width:0}
.fm-donut-layout{display:grid;grid-template-columns:145px minmax(0,1fr);gap:1rem;align-items:center;min-height:175px}
.fm-data-donut{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 22px rgba(24,145,58,.10)}
.fm-data-donut:before{content:"";width:84px;height:84px;border-radius:50%;background:var(--tblr-bg-surface,#fff);grid-area:1/1}
.fm-data-donut>div{grid-area:1/1;z-index:1;text-align:center}.fm-data-donut strong{display:block;font-size:1.35rem}.fm-data-donut small{color:#6b7280}
.fm-donut-legend{display:flex;flex-direction:column;gap:.55rem;min-width:0}.fm-donut-legend span{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:.45rem;align-items:center;min-width:0}.fm-donut-legend b{width:10px;height:10px;border-radius:50%}.fm-donut-legend em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-donut-legend strong{font-size:.78rem;white-space:nowrap;color:#56616a}
@media(max-width:1350px){.fm-dashboard-pie-grid{grid-template-columns:1fr}.fm-donut-layout{grid-template-columns:145px minmax(0,1fr)}}
@media(max-width:600px){.fm-donut-layout{grid-template-columns:1fr}.fm-data-donut{margin:0 auto}}

/* Dashboard v3.26.55: quantidade de rascunhos alinhada com os demais indicadores. */
.fm-summary-list .fm-summary-action{flex:1 1 auto;display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0;text-align:left}
.fm-summary-list .fm-summary-action strong{margin-left:auto}

/* Fiscal Manager v3.26.72 - revisão geral de alinhamento dos formulários */
.fm-form-align .form-label{
  min-height:1.35rem;
  margin-bottom:.4rem;
  display:flex;
  align-items:flex-end;
  line-height:1.2;
}
.fm-form-align .form-control,
.fm-form-align .form-select,
.fm-form-align .input-group > .form-control,
.fm-form-align .input-group > .form-select{
  min-height:42px;
}
.fm-form-align .input-group > .btn{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.fm-form-align .row > [class*="col-"]{
  min-width:0;
}
.fm-form-align .form-hint,
.fm-form-align .form-text{
  margin-top:.35rem;
  line-height:1.25;
}
.fm-form-align .form-check{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin-bottom:0!important;
}
.fm-form-align .form-check-input{
  flex:0 0 auto;
  margin-top:0;
}
.fm-form-align .btn{
  min-height:38px;
  align-items:center;
  justify-content:center;
}
.fm-emissao-form-align > .row,
.fm-servico-form-align .tab-pane > .row,
.fm-integra-form-align > .row,
.fm-email-form-align .row,
.fm-usuarios-form-align .row,
.fm-oauth-form-align,
.fm-planejamento-import-align{
  align-items:start;
}
.fm-emissao-form-align .fm-campos-conferencia{
  align-items:start;
}
.fm-emissao-form-align .fm-campo-conferencia{
  display:flex;
  flex-direction:column;
}
.fm-servico-form-align .col-md-4.d-flex.align-items-end,
.fm-servico-form-align .col-md-3.d-flex.align-items-end,
.fm-usuarios-form-align .col-md-1.d-flex.align-items-end{
  padding-top:1.75rem;
  align-items:center!important;
}
.fm-usuarios-form-align #usuario_ativo + .form-check-label{
  white-space:nowrap;
}
.fm-clonar-usuario-align .modal-body .row > [class*="col-"]{
  display:flex;
  flex-direction:column;
}
.fm-integra-form-align input[type="file"]{
  padding-top:.45rem;
  padding-bottom:.45rem;
}
.fm-integra-form-align .form-hint{
  min-height:1.25rem;
}
.fm-email-test-align .col-auto{
  padding-top:1.75rem;
}
.fm-update-dev-align .row > [class*="col-"],
.fm-update-config-align .row > [class*="col-"]{
  display:flex;
  flex-direction:column;
}
.fm-planejamento-import-align > [class*="col-"]{
  display:flex;
  flex-direction:column;
}
@media (max-width:767.98px){
  .fm-servico-form-align .col-md-4.d-flex.align-items-end,
  .fm-servico-form-align .col-md-3.d-flex.align-items-end,
  .fm-usuarios-form-align .col-md-1.d-flex.align-items-end,
  .fm-email-test-align .col-auto{
    padding-top:0;
  }
}

/* Baseline global: todos os formulários do shell moderno herdam controles e ações consistentes. */
.fm-modern-shell .page-body form .form-control,
.fm-modern-shell .page-body form .form-select,
.fm-modern-shell .modal-content form .form-control,
.fm-modern-shell .modal-content form .form-select{
  min-height:42px;
}
.fm-modern-shell .page-body form .input-group > .btn,
.fm-modern-shell .modal-content form .input-group > .btn{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.fm-modern-shell .page-body form .form-label,
.fm-modern-shell .modal-content form .form-label{
  margin-bottom:.4rem;
  line-height:1.2;
}

/* v3.26.75 - centralizacao precisa do bloco de Build ao lado do icone */
.fm-sidebar-build-copy {
  align-self: center;
  justify-content: center;
  height: 38px;
  gap: 2px;
  line-height: 1.05;
}
.fm-sidebar-build-copy small {
  display: block;
  line-height: 1.05;
}
.fm-sidebar-build-copy strong {
  display: block;
  margin-top: 0;
  line-height: 1.05;
}

/* v3.26.76 - ajuste fino: bloco Build/versao centralizado no cubo */
.fm-sidebar-build-copy {
  transform: translateY(-2px);
}


/* v3.26.77 - alinhamento definitivo do card Build conforme referencia aprovada */
.fm-sidebar-build-card {
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  padding-top: 10px;
  padding-bottom: 10px;
}
.fm-sidebar-build-icon {
  align-self: center;
}
.fm-sidebar-build-copy {
  height: auto;
  align-self: center;
  justify-content: center;
  gap: 1px;
  line-height: 1.1;
  transform: none;
}
.fm-sidebar-build-copy small,
.fm-sidebar-build-copy strong {
  margin: 0;
  line-height: 1.1;
}


/* v3.26.78 - alinhamento final do card Build conforme referencia do usuario */
.fm-sidebar-build-card {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 58px;
  padding: 9px 10px;
}
.fm-sidebar-build-icon {
  flex: 0 0 38px;
  align-self: center;
}
.fm-sidebar-build-copy {
  flex: 1 1 auto;
  min-width: 0;
  height: 38px;
  display: grid;
  grid-template-rows: auto auto;
  align-content: center;
  justify-items: start;
  row-gap: 2px;
  transform: none;
  line-height: 1;
}
.fm-sidebar-build-copy small,
.fm-sidebar-build-copy strong {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1;
}
.fm-sidebar-build-copy small { font-size: .76rem; }
.fm-sidebar-build-copy strong { font-size: .69rem; letter-spacing: -.02em; white-space: nowrap; }

/* v3.26.79 - permissoes compactas e expansivas */
.fm-permission-card { height:auto !important; }
.fm-permission-card .card-body { min-height:0; }
.fm-permission-inline { display:flex; flex-wrap:wrap; gap:.45rem .8rem; align-items:center; }
.fm-permission-folder { display:inline-block; position:relative; }
.fm-permission-folder > summary { list-style:none; cursor:pointer; user-select:none; border:1px solid var(--tblr-border-color); border-radius:.4rem; padding:.35rem .65rem; color:var(--tblr-primary); background:var(--tblr-bg-surface); font-weight:600; }
.fm-permission-folder > summary::-webkit-details-marker { display:none; }
.fm-permission-folder > summary::before { content:'+'; margin-right:.4rem; font-weight:700; }
.fm-permission-folder[open] > summary::before { content:'−'; }
.fm-permission-folder .fm-permission-children { margin-top:.5rem; padding:.65rem .75rem .15rem; border:1px solid var(--tblr-border-color); border-radius:.45rem; background:var(--tblr-bg-surface); min-width:290px; }
.fm-permission-folder .form-check { margin-bottom:.55rem !important; }

/* PERMISSOES_HIERARQUICAS_V380 */
.fm-permission-list{display:flex;flex-direction:column;gap:.55rem;align-items:stretch}.fm-permission-list>.form-check{display:block;width:100%;margin:0}.fm-permission-folder{display:block!important;width:100%;position:relative}.fm-permission-folder>summary{display:flex;align-items:center;width:100%}.fm-permission-folder>summary .form-check{flex:1}.fm-permission-folder .fm-permission-children{min-width:0!important;width:100%;display:flex;flex-direction:column;gap:.35rem}.fm-permission-folder .fm-permission-children .form-check{display:block;width:100%;margin:0!important}

/* v3.26.81 - cabecalho mobile unificado conforme referencia aprovada */
@media (max-width: 991.98px) {
  .fm-modern-shell .navbar-vertical {
    min-height: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    position: relative !important;
    z-index: 1040 !important;
  }
  .fm-modern-shell .navbar-vertical > .container-fluid {
    min-height: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .fm-modern-shell .navbar-vertical .navbar-brand { display: none !important; }
  .fm-modern-shell .navbar-vertical .navbar-toggler {
    position: absolute !important;
    top: 24px !important;
    left: 18px !important;
    z-index: 1060 !important;
    background: transparent !important;
    border: 0 !important;
  }
  .fm-modern-shell .navbar-vertical .navbar-collapse {
    position: fixed !important;
    top: 84px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: calc(100vh - 100px) !important;
    overflow-y: auto !important;
    padding: .75rem !important;
    border-radius: 14px !important;
    background: var(--tblr-body-bg, #fff) !important;
    box-shadow: 0 14px 36px rgba(15, 23, 42, .18) !important;
  }
  .fm-modern-shell .navbar-vertical .navbar-collapse:not(.show) { display: none !important; }
  .fm-modern-shell .fm-top-brand { margin-top: 0 !important; }
  .fm-modern-shell .fm-top-brand-inner {
    padding: 20px 18px 18px 76px !important;
  }
  .fm-modern-shell .fm-top-identity { margin: 0 !important; }
}

/* v3.26.82 - cabecalho mobile fiel a referencia aprovada: uma unica faixa, sem Build lateral */
@media (max-width: 767.98px) {
  /* A Build pequena pertence ao menu lateral desktop e nunca aparece no cabecalho mobile. */
  .fm-modern-shell .fm-sidebar-build-card {
    display: none !important;
  }

  /* Hamburger ocupa somente a primeira linha do cabecalho, a esquerda. */
  .fm-modern-shell .navbar-vertical .navbar-toggler {
    position: absolute !important;
    top: 22px !important;
    left: 18px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    z-index: 1060 !important;
  }

  /* Uma unica area: identidade na primeira linha e controles logo abaixo. */
  .fm-modern-shell .fm-top-brand-inner {
    min-height: 0 !important;
    padding: 16px 16px 18px !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  /* Primeira linha: [hamburger] [logo] Fiscal Manager. */
  .fm-modern-shell .fm-top-identity {
    width: calc(100% - 58px) !important;
    min-width: 0 !important;
    min-height: 58px !important;
    margin: 0 0 0 58px !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
  }
  .fm-modern-shell .fm-top-logo {
    width: 58px !important;
    height: 58px !important;
  }
  .fm-modern-shell .fm-top-title {
    font-size: 1.48rem !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
  }
  .fm-modern-shell .fm-top-subtitle,
  .fm-modern-shell .fm-top-tagline {
    display: none !important;
  }

  /* Segunda linha: data a esquerda / hora a direita.
     Terceira linha: aparencia a esquerda / usuario a direita. */
  .fm-modern-shell .fm-top-meta {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: auto auto minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 10px !important;
    row-gap: 10px !important;
    align-items: center !important;
    font-size: .84rem !important;
  }
  .fm-modern-shell .fm-top-meta > span:first-child {
    grid-column: 1 / 4 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    text-align: left !important;
  }
  .fm-modern-shell .fm-top-meta > span:nth-child(2) {
    grid-column: 4 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    white-space: nowrap !important;
  }
  .fm-modern-shell .fm-accent-toggle {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    min-width: 44px !important;
    margin: 0 !important;
  }
  .fm-modern-shell .fm-theme-switch {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    margin: 0 !important;
  }
  .fm-modern-shell .fm-user-dropdown {
    grid-column: 4 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    margin: 0 !important;
  }

  /* Menu aberto permanece flutuante, mas abaixo da primeira linha visual. */
  .fm-modern-shell .navbar-vertical .navbar-collapse {
    top: 78px !important;
  }
}

@media (max-width: 390px) {
  .fm-modern-shell .fm-top-brand-inner {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .fm-modern-shell .fm-top-meta {
    column-gap: 7px !important;
    font-size: .77rem !important;
  }
  .fm-modern-shell .fm-top-title {
    font-size: 1.34rem !important;
  }
}

/* v3.26.84 - usuarios: formulario compacto e permissoes em colunas dinamicas */
.fm-users-list-card{margin-bottom:1rem!important}
.fm-user-fields-row{
  display:grid!important;
  grid-template-columns:minmax(0,4fr) minmax(0,3fr) minmax(0,4.5fr) max-content;
  gap:1rem!important;
  align-items:end!important;
  margin-left:0!important;
  margin-right:0!important;
}
.fm-user-fields-row > [class*="col-"]{
  width:auto!important;
  max-width:none!important;
  flex:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
.fm-user-active-col{
  padding-top:0!important;
  align-items:end!important;
  justify-content:flex-start!important;
  min-width:105px;
  padding-bottom:.05rem;
}
.fm-user-active-col .form-check{min-height:42px!important;margin:0!important}
.fm-user-fields-row > :nth-child(5){grid-column:1}
.fm-user-fields-row > :nth-child(6){grid-column:2}
.fm-user-actions-col{
  grid-column:3 / 5;
  padding-top:0!important;
  min-height:42px!important;
  align-items:end!important;
  justify-content:flex-end!important;
  margin-left:0!important;
}
.fm-user-actions-col .btn{min-width:150px}
.fm-permissions-heading{border-top:1px solid var(--tblr-border-color);padding-top:1rem;margin-top:1rem!important}
.fm-permissions-grid{
  display:block!important;
  column-count:3;
  column-gap:1rem;
  margin-left:0!important;
  margin-right:0!important;
}
.fm-permission-grid-item{
  display:inline-block!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
  margin:0 0 1rem!important;
  break-inside:avoid;
  page-break-inside:avoid;
  vertical-align:top;
}
.fm-permission-card{height:auto!important;min-height:0!important;margin-bottom:0}
.fm-permission-card .card-body{min-height:0!important}
.fm-permission-list{gap:.35rem}
.fm-permission-list>.form-check,.fm-permission-children .form-check{min-height:32px!important;padding-top:.15rem;padding-bottom:.15rem}
.fm-permission-folder>summary{min-height:40px;padding:.3rem .55rem}
.fm-permission-folder .fm-permission-children{margin-top:.35rem;padding:.45rem .65rem .25rem}
@media (max-width:1199.98px){
  .fm-user-fields-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .fm-user-fields-row > :nth-child(3){grid-column:1 / 2}
  .fm-user-active-col{grid-column:2;align-self:end}
  .fm-user-fields-row > :nth-child(5){grid-column:1}
  .fm-user-fields-row > :nth-child(6){grid-column:2}
  .fm-user-actions-col{grid-column:1 / 3}
  .fm-permissions-grid{column-count:2}
}
@media (max-width:767.98px){
  .fm-user-fields-row{display:flex!important;flex-direction:column;gap:.75rem!important}
  .fm-user-fields-row > [class*="col-"]{width:100%!important}
  .fm-user-active-col,.fm-user-actions-col{padding-top:0!important;min-height:0!important}
  .fm-user-actions-col{justify-content:flex-start!important}
  .fm-permissions-grid{column-count:1}
}



/* v3.26.85 - permissoes em arvore com area fixa e rolagem interna */
.fm-permission-card .card-body{height:310px!important;max-height:310px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable;}
.fm-permission-folder .fm-permission-children{border-left:1px dotted var(--tblr-border-color);border-top:0;border-right:0;border-bottom:0;border-radius:0;margin:.25rem 0 .2rem .65rem;padding:.25rem 0 .15rem 1rem;background:transparent;}
.fm-permission-folder>summary{border:0!important;border-radius:0!important;background:transparent!important;padding:.2rem 0!important;}
.fm-permission-folder>summary::before{content:none!important;}
.fm-permission-folder>summary::after{content:'+';margin-left:auto;width:1rem;text-align:center;font-weight:700;color:var(--tblr-primary);}
.fm-permission-folder[open]>summary::after{content:'−';}
.fm-sidebar-qr-card{display:flex;align-items:center;gap:.55rem;width:calc(100% - 1.25rem);margin:.45rem auto .55rem;padding:.45rem .55rem;border:1px solid var(--tblr-border-color);border-radius:12px;background:var(--tblr-bg-surface);}
.fm-sidebar-qr-card img{width:54px;height:54px;border-radius:6px;background:#fff;padding:2px;flex:0 0 54px;}
.fm-sidebar-qr-card span{display:flex;flex-direction:column;min-width:0;line-height:1.15}.fm-sidebar-qr-card strong{font-size:.78rem}.fm-sidebar-qr-card small{font-size:.65rem;opacity:.72;margin-top:.2rem}
@media(max-width:767.98px){.fm-sidebar-qr-card{display:none!important}}


/* v3.26.86 - QR publico maior e formulario de usuarios alinhado */
.fm-sidebar-qr-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.45rem!important;
  width:calc(100% - 1.25rem)!important;
  margin:.5rem auto .65rem!important;
  padding:.65rem .55rem!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
.fm-sidebar-qr-title{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;line-height:1.15!important}
.fm-sidebar-qr-title strong{font-size:.82rem!important}.fm-sidebar-qr-title small{font-size:.68rem!important;opacity:.78!important;margin-top:.15rem!important}
.fm-sidebar-qr-card img{
  width:164px!important;
  height:164px!important;
  max-width:100%!important;
  flex:0 0 164px!important;
  padding:4px!important;
  border-radius:7px!important;
  object-fit:contain!important;
}
.fm-sidebar-qr-url{font-size:.67rem!important;font-weight:700!important;letter-spacing:.01em!important;text-align:center!important;white-space:nowrap!important}

@media (min-width:1200px){
  .fm-user-fields-row{
    grid-template-columns:minmax(0,4fr) minmax(0,3fr) minmax(0,4.5fr) minmax(290px,2.6fr)!important;
    align-items:end!important;
  }
  .fm-user-fields-row > :nth-child(1){grid-column:1;grid-row:1}
  .fm-user-fields-row > :nth-child(2){grid-column:2;grid-row:1}
  .fm-user-fields-row > :nth-child(3){grid-column:3;grid-row:1}
  .fm-user-fields-row > :nth-child(4){grid-column:4;grid-row:1;align-self:end!important}
  .fm-user-fields-row > :nth-child(5){grid-column:1;grid-row:2}
  .fm-user-fields-row > :nth-child(6){grid-column:2;grid-row:2}
  .fm-user-fields-row > :nth-child(7){grid-column:3;grid-row:2}
  .fm-user-fields-row > :nth-child(8){grid-column:4;grid-row:2;align-self:end!important}
  .fm-user-actions-col{justify-content:flex-end!important;flex-wrap:wrap!important;gap:.45rem!important}
  .fm-user-actions-col .btn{min-width:0!important;white-space:nowrap!important}
  .fm-user-active-col{min-width:0!important;padding-bottom:0!important}
}
@media(max-width:767.98px){.fm-sidebar-qr-card{display:none!important}}

/* v3.26.87 - usuario por Prestadores e QR limpo */
.fm-sidebar-qr-card{
  background:#fff!important;
  border:1px solid var(--tblr-border-color)!important;
  padding:.55rem!important;
  width:calc(100% - 1.25rem)!important;
  box-shadow:none!important;
}
.fm-sidebar-qr-card img{
  width:176px!important;
  height:176px!important;
  max-width:100%!important;
  flex:0 0 176px!important;
  padding:0!important;
  margin:0!important;
  border-radius:4px!important;
  background:#fff!important;
}
.fm-user-fields-row{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(240px,.9fr) max-content!important;
}
.fm-user-fields-row > :nth-child(1){grid-column:1;grid-row:1}
.fm-user-fields-row > :nth-child(2){grid-column:2;grid-row:1}
.fm-user-fields-row > :nth-child(3){grid-column:3;grid-row:1}
.fm-user-fields-row > :nth-child(4){grid-column:4;grid-row:1}
.fm-user-fields-row > :nth-child(5){grid-column:1;grid-row:2}
.fm-user-fields-row > :nth-child(6){grid-column:2;grid-row:2}
.fm-user-fields-row > :nth-child(7){grid-column:3 / 5;grid-row:2;justify-self:end!important}
.fm-user-actions-col{grid-column:3 / 5!important;grid-row:2!important;align-self:end!important;margin:0!important;padding:0!important}
.fm-user-actions-col .btn{min-width:150px!important}
.fm-user-providers-section{border-top:1px solid var(--tblr-border-color);padding-top:1rem}
.fm-user-providers-list{max-height:255px;overflow-y:auto;border:1px solid var(--tblr-border-color);border-radius:8px;scrollbar-gutter:stable}
.fm-user-providers-list thead{position:sticky;top:0;z-index:2;background:var(--tblr-bg-surface)}
.fm-user-providers-list .table>tbody>tr>td{vertical-align:middle}
.fm-user-providers-summary{max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1199.98px){
  .fm-user-fields-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .fm-user-fields-row > :nth-child(1),.fm-user-fields-row > :nth-child(2),.fm-user-fields-row > :nth-child(3),.fm-user-fields-row > :nth-child(4),.fm-user-fields-row > :nth-child(5),.fm-user-fields-row > :nth-child(6),.fm-user-fields-row > :nth-child(7){grid-column:auto!important;grid-row:auto!important}
  .fm-user-actions-col{grid-column:1 / 3!important;grid-row:auto!important}
}
.fm-sidebar-qr-card{border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}


/* v3.26.92 - interacoes touch em Usuarios e Permissoes */
.fm-user-row{touch-action:manipulation;}
.fm-permission-card .form-check,.fm-permission-card .form-check-input,.fm-permission-card .form-check-label{touch-action:manipulation;}
@media(max-width:767.98px){
  .fm-user-row{cursor:pointer;}
  .fm-permission-card .form-check{min-height:38px!important;display:flex!important;align-items:center!important;}
  .fm-permission-card .form-check-input{width:1.2rem!important;height:1.2rem!important;flex:0 0 1.2rem!important;margin-top:0!important;}
  .fm-permission-card .form-check-label{padding:.35rem .15rem .35rem .2rem!important;line-height:1.2!important;}
}
.fm-login-biometric{width:100%;margin-top:.65rem;border:1px solid var(--tblr-primary);background:transparent;color:var(--tblr-primary);border-radius:.55rem;padding:.72rem 1rem;font-weight:600}.fm-login-biometric:hover{background:rgba(var(--tblr-primary-rgb),.06)}

/* v3.26.98 - permissoes compactas: checkboxes quase colados verticalmente */
.fm-permission-list{gap:.05rem!important;}
.fm-permission-list>.form-check,.fm-permission-children .form-check{min-height:24px!important;padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important;}
.fm-permission-folder>summary{min-height:24px!important;padding:.02rem 0!important;}
.fm-permission-folder .fm-permission-children{gap:.05rem!important;margin-top:.08rem!important;margin-bottom:.08rem!important;padding-top:.05rem!important;padding-bottom:.05rem!important;}

.fm-login-passkey-notice{display:flex;flex-direction:column;gap:.25rem;padding:.8rem;margin-bottom:1rem;border:1px solid #f0b429;background:#fff7d6;color:#111827;border-radius:.65rem;line-height:1.35}.fm-login-passkey-notice strong,.fm-login-passkey-notice span{color:#111827!important}
