*{box-sizing:border-box}
body{margin:0;font-family:Segoe UI,Arial;background:#f3f5f7;color:#20242a}
header{min-height:78px;background:#111;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:8px 28px;font-size:18px;gap:20px}
header h1{margin:2px 0 0;font-size:21px}
header span{font-size:12px;background:#333;padding:8px 13px;border-radius:20px}
.topo-fg{display:flex;align-items:center;gap:18px}
.logo-fg{width:145px;max-height:80px;object-fit:contain}
.titulo-sistema{display:block;font-size:12px;font-weight:bold;letter-spacing:.5px;background:transparent;padding:0;border-radius:0}
.header-acoes{display:flex;align-items:center;gap:10px}
.btn-header{background:#d71920;font-weight:bold;white-space:nowrap}
main{max-width:1100px;margin:35px auto;padding:0 16px}
.card{background:#fff;border-radius:15px;padding:28px;box-shadow:0 8px 30px #0001}
.titulo-pagina{margin:0;font-size:28px}
.acoes-pagina{display:flex;justify-content:flex-end;margin-top:10px}
.btn-consulta{background:#222;font-weight:bold}
h1{margin-top:0}h3{border-top:1px solid #eee;padding-top:20px;margin-top:24px}
.row{display:flex;gap:10px}
input,textarea{width:100%;padding:11px;border:1px solid #ccd1d6;border-radius:8px;font:inherit}
button{border:0;border-radius:8px;padding:10px 14px;cursor:pointer;background:#222;color:#fff}
.row button{white-space:nowrap}
.item{display:flex;flex-direction:column;text-align:left;width:100%;margin-top:7px;background:#fafafa;border:1px solid #ddd;color:#222}
.item small{color:#6d747b;margin-top:4px}
.selected{margin-top:10px;padding:12px;border:1px solid #ccd1d6;border-radius:9px;background:#fafafa}
.selected span{display:block;color:#6d747b;font-size:12px;margin-top:4px}
.save{background:#d71920;margin-top:15px;font-weight:bold}
.hide{display:none!important}
.modalbox{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;width:min(650px,92%);max-height:90vh;overflow:auto;padding:25px;border-radius:14px;box-shadow:0 20px 80px #0006}
.modalbox label{display:block;font-size:13px;font-weight:bold;margin-top:10px}
.modalbox input{margin-top:5px}

/* CONSULTA DE OS */
.consulta-card{max-width:1100px;margin:auto}
.consulta-topo{display:flex;align-items:center;justify-content:space-between;gap:20px}
.consulta-topo h2{margin:0;font-size:26px}
.consulta-topo p{margin:5px 0 0;color:#70777e}
.btn-voltar{background:#333;white-space:nowrap}
.busca-os{display:flex;gap:10px;margin-top:25px}
.busca-os input{flex:1;font-size:16px}
.btn-pesquisar{background:#d71920;font-weight:bold;min-width:120px}
.filtros{display:flex;gap:8px;margin-top:18px;border-bottom:1px solid #e2e5e8;padding-bottom:12px}
.filtro{background:#e9ecef;color:#333;font-weight:bold;min-width:110px}
.filtro.ativo{background:#d71920;color:#fff}
.status-consulta{margin:18px 0 10px;color:#6d747b;font-size:13px}
.os-item{position:relative;width:100%;display:grid;grid-template-columns:110px 1fr 180px 100px 30px;align-items:center;gap:15px;margin-top:8px;padding:14px 16px;text-align:left;background:#fafafa;color:#20242a;border:1px solid #d7dce0;border-radius:10px;transition:.15s}
.os-item:hover{background:#fff;border-color:#b8c0c7;transform:translateY(-1px);box-shadow:0 4px 15px #0001}
.os-nova{border-left:5px solid #d71920}
.os-antiga{border-left:5px solid #555}
.os-numero{display:flex;flex-direction:column}
.os-numero span{font-size:11px;color:#777;font-weight:bold}
.os-numero strong{font-size:22px}
.os-info{display:flex;flex-direction:column;min-width:0}
.os-cliente{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.os-equipamento{margin-top:4px;font-size:13px;color:#444}
.os-situacao{margin-top:5px;font-size:12px;color:#70777e}
.os-data{display:flex;flex-direction:column;font-size:12px}
.os-data span{color:#777}
.os-data strong{margin-top:3px}
.os-etiqueta{font-size:10px;font-weight:bold;text-align:center;padding:5px 6px;border-radius:12px;background:#e9ecef;color:#555}
.os-nova .os-etiqueta{background:#ffe1e1;color:#b30000}
.os-antiga .os-etiqueta{background:#e5e5e5;color:#555}
.os-seta{font-size:28px;color:#999;text-align:center}
.consulta-vazia,.consulta-erro{padding:35px 20px;text-align:center;border:1px dashed #ccd1d6;border-radius:10px;color:#70777e;margin-top:15px}
.consulta-vazia strong{display:block;color:#333;margin-bottom:5px}

@media(max-width:800px){
.os-item{grid-template-columns:80px 1fr 30px}
.os-data,.os-etiqueta{display:none}
}
@media(max-width:600px){
header{padding:8px 12px}
.consulta-topo{align-items:flex-start;flex-direction:column}
.busca-os{flex-direction:column}
.topo-fg{gap:10px}
.logo-fg{width:100px}
header h1{font-size:16px}
.header-acoes span{display:none}
}

/* =========================================================
   DETALHE DA OS
   ========================================================= */

.detalhe-overlay{
    position:fixed;
    inset:0;
    z-index:1000;
    background:#0008;
    padding:25px;
    overflow:auto;
}

.detalhe-box{
    width:min(1050px,96vw);
    margin:20px auto;
    background:#fff;
    border-radius:16px;
    box-shadow:0 25px 100px #0008;
    overflow:hidden;
}

.detalhe-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    padding:22px 26px;
    background:#111;
    color:#fff;
}

.detalhe-header h2{
    margin:5px 0 2px;
    font-size:28px;
}

.detalhe-tag{
    display:inline-block;
    font-size:10px;
    font-weight:bold;
    letter-spacing:.4px;
    padding:5px 9px;
    border-radius:12px;
    background:#d71920;
}

.detalhe-cliente{
    color:#ddd;
    font-size:14px;
}

.detalhe-fechar{
    background:#333;
    font-size:25px;
    line-height:1;
    padding:7px 13px;
}

#detalhe-conteudo{
    padding:25px;
}

.detalhe-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
}

.info-card{
    border:1px solid #e0e3e6;
    border-radius:10px;
    padding:13px;
    background:#fafafa;
}

.info-card span,
.finance-grid span{
    display:block;
    font-size:10px;
    color:#777;
    font-weight:bold;
    text-transform:uppercase;
}

.info-card strong{
    display:block;
    margin-top:5px;
    font-size:13px;
}

.detalhe-section{
    margin-top:22px;
    border-top:1px solid #eee;
    padding-top:18px;
}

.detalhe-section h3{
    border:0;
    padding:0;
    margin:0 0 10px;
    font-size:17px;
}

.detalhe-texto{
    padding:13px;
    border:1px solid #ddd;
    border-radius:9px;
    background:#fafafa;
}

.detalhe-meta{
    margin-top:6px;
    color:#70777e;
    font-size:12px;
}

.texto-longo{
    white-space:pre-wrap;
    min-height:42px;
    padding:13px;
    border:1px solid #ddd;
    border-radius:9px;
    background:#fafafa;
}

.finance-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}

.finance-grid > div{
    padding:13px;
    border:1px solid #ddd;
    border-radius:9px;
    background:#fafafa;
}

.finance-grid strong{
    display:block;
    margin-top:5px;
    font-size:16px;
}

.tabela-itens{
    border:1px solid #ddd;
    border-radius:9px;
    overflow:hidden;
}

.tabela-cabecalho,
.tabela-linha{
    display:grid;
    grid-template-columns:1fr 90px 130px;
    gap:10px;
    padding:11px 13px;
}

.tabela-cabecalho{
    background:#f0f2f4;
    font-size:11px;
    font-weight:bold;
    text-transform:uppercase;
}

.tabela-linha{
    border-top:1px solid #eee;
    font-size:13px;
}

.tabela-linha strong{
    text-align:right;
}

.historico-lista{
    border:1px solid #ddd;
    border-radius:9px;
    overflow:hidden;
}

.historico-item{
    display:flex;
    justify-content:space-between;
    gap:15px;
    padding:11px 13px;
    border-top:1px solid #eee;
}

.historico-item:first-child{
    border-top:0;
}

.historico-item span{
    color:#777;
    font-size:12px;
}

@media(max-width:800px){

    .detalhe-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .finance-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:600px){

    .detalhe-overlay{
        padding:8px;
    }

    .detalhe-box{
        width:100%;
        margin:5px auto;
    }

    .detalhe-grid,
    .finance-grid{
        grid-template-columns:1fr;
    }

    .tabela-cabecalho,
    .tabela-linha{
        grid-template-columns:1fr 55px 95px;
    }

    .detalhe-header{
        padding:18px;
    }

    #detalhe-conteudo{
        padding:18px;
    }

}

/* =========================================================
   ATENDIMENTO / EDIÇÃO DA OS NOVA
   ========================================================= */
.atendimento-card{max-width:1100px;margin:auto}
.atendimento-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.atendimento-topo h2{margin:5px 0 2px;font-size:21px}
.atendimento-topo p{margin:4px 0;color:#70777e}
.tag-atendimento{display:inline-block;font-size:10px;font-weight:bold;letter-spacing:.5px;padding:5px 9px;border-radius:12px;background:#d71920;color:#fff}
.resumo-grid{display:grid;grid-template-columns:1.7fr 1fr 1.5fr;gap:10px;margin-top:20px}
.resumo-box{padding:13px;border:1px solid #e0e3e6;border-radius:10px;background:#fafafa;min-width:0}
.resumo-box span{display:block;font-size:10px;color:#777;font-weight:bold;text-transform:uppercase}
.resumo-box strong{display:block;margin-top:5px;font-size:14px;font-weight:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.resumo-box small{display:block;margin-top:3px;color:#70777e}
.atendimento-section{margin-top:22px;border-top:1px solid #eee;padding-top:18px}
.atendimento-section h3{border:0;padding:0;margin:0 0 12px;font-size:18px}
.atendimento-section label{display:block;font-size:13px;font-weight:bold;margin-bottom:6px}
.atendimento-section textarea{min-height:90px}
.linha-form{display:grid;grid-template-columns:1fr auto;gap:10px}
.linha-form select{width:100%;padding:9px 12px;border:1px solid #ccd1d6;border-radius:8px;background:#fff;font:inherit;font-size:13.5px}
.btn-salvar{background:#222;font-weight:bold;white-space:nowrap;padding:9px 14px;font-size:13px}
.btn-observacao{margin-top:9px}
.item-form{display:grid;grid-template-columns:1fr 90px 130px auto;gap:8px;margin-top:12px}
.item-form button{white-space:nowrap}
.item-linha{display:grid;grid-template-columns:1fr 130px 35px;gap:10px;align-items:center;margin-top:7px;padding:12px 13px;border:1px solid #ddd;border-radius:9px;background:#fafafa}
.item-linha span{min-width:0}
.item-linha small{color:#70777e}
.item-linha strong{text-align:right}
.item-linha button{padding:5px 9px;background:#eee;color:#555}
.sem-itens{margin-top:8px;padding:12px;border:1px dashed #ccd1d6;border-radius:9px;color:#70777e;font-size:13px}
.resumo-financeiro{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:10px;margin-top:24px;padding-top:18px;border-top:2px solid #222}
.resumo-financeiro>div{padding:9px 11px;border:1px solid #ddd;border-radius:9px;background:#fafafa;display:flex;align-items:center;justify-content:space-between;gap:10px}
.resumo-financeiro span{display:block;font-size:9px;font-weight:bold;color:#777;text-transform:uppercase;white-space:nowrap}
.resumo-financeiro strong{display:block;font-size:14px;font-weight:normal;white-space:nowrap}
.resumo-financeiro .total{background:#111;color:#fff;border-color:#111}
.resumo-financeiro .total span{color:#bbb}
.rodape-atendimento{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}
.btn-finalizar{background:#d71920;font-weight:bold;min-width:190px}
.btn-finalizar:disabled{background:#c9c9c9;color:#777;cursor:not-allowed;opacity:.8}
.os-finalizada-banner{margin-top:18px;padding:12px 14px;border-radius:9px;background:#eef2f4;border:1px solid #cdd4d9;color:#333;font-weight:bold;text-align:center}

/* Aviso flutuante */
.aviso-finalizacao{position:fixed;right:22px;bottom:22px;z-index:2000;display:flex;align-items:flex-start;gap:11px;width:min(420px,calc(100vw - 44px));padding:14px 16px;border:1px solid #f0c36d;border-radius:12px;background:#fff8e7;box-shadow:0 10px 35px #0003;color:#3d321d;transition:.2s}
.aviso-finalizacao.liberado{border-color:#9ed5ad;background:#effaf2;color:#173b20}
.aviso-icone{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f0b323;color:#fff;font-weight:bold;flex:0 0 28px}
.aviso-finalizacao.liberado .aviso-icone{background:#229447}
.aviso-finalizacao strong{display:block;font-size:13px}
.aviso-finalizacao p{margin:4px 0 0;font-size:12px;line-height:1.35}

@media(max-width:800px){
  .resumo-grid{grid-template-columns:1fr}
  .item-form{grid-template-columns:1fr 80px 110px}
  .item-form button{grid-column:1/-1}
  .resumo-financeiro{grid-template-columns:1fr}
  .rodape-atendimento{align-items:stretch;flex-direction:column}
  .rodape-atendimento button{width:100%}
}
@media(max-width:600px){
  .atendimento-topo{flex-direction:column}
  .linha-form{grid-template-columns:1fr}
  .item-form{grid-template-columns:1fr 1fr}
  .item-form input:first-child{grid-column:1/-1}
  .item-form button{grid-column:1/-1}
  .item-linha{grid-template-columns:1fr 95px 30px}
  .aviso-finalizacao{right:10px;bottom:10px;width:calc(100vw - 20px)}
}

.detalhe-acoes{display:flex;align-items:center;gap:8px}
.btn-editar-os{background:#d71920;font-weight:bold;white-space:nowrap}
@media(max-width:600px){.detalhe-acoes{align-items:flex-end;flex-direction:column}.btn-editar-os{font-size:12px}}

.btn-whatsapp{background:#1fa463;font-weight:bold;white-space:nowrap;padding:9px 14px;font-size:13px}
.btn-whatsapp:hover{background:#168653}
.linha-situacao{grid-template-columns:minmax(220px,340px) auto auto;align-items:center}
@media(max-width:900px){.linha-situacao{grid-template-columns:1fr 1fr}.linha-situacao select{grid-column:1 / -1}}
@media(max-width:600px){.linha-situacao{grid-template-columns:1fr}.linha-situacao select{grid-column:auto}.btn-whatsapp,.btn-salvar{width:100%}}

/* ORÇAMENTO */
.section-title-row{display:flex;justify-content:space-between;align-items:center;gap:15px}.section-title-row h3{margin-bottom:4px}.section-title-row small{color:#777}.orcamento-acoes{display:flex;gap:8px;flex-wrap:nowrap}.btn-orcamento{background:#111;color:#fff}.resumo-orcamento{display:flex;justify-content:flex-end;align-items:center;gap:15px;margin-top:12px;padding:13px;background:#f3f4f5;border-radius:9px}.resumo-orcamento span{font-weight:bold;font-size:11px;text-transform:uppercase}.resumo-orcamento strong{font-size:20px;font-weight:normal}.item-orcamento{background:#fff8f0}.pagina-orcamento{background:#eee;margin:0}.orcamento-a4{width:210mm;min-height:297mm;margin:10mm auto;background:#fff;padding:12mm;box-shadow:0 0 20px #0002;font-family:Arial,sans-serif;color:#222}.orc-cabecalho{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:15px;border-bottom:3px solid #111;padding-bottom:10px}.orc-logo{max-width:65px;max-height:65px;object-fit:contain}.orc-cabecalho h1{margin:0;font-size:24px}.orc-data{font-size:11px;color:#666}.orc-linha{display:grid;grid-template-columns:1.4fr 1fr;gap:15px;border-bottom:1px solid #ddd;padding:9px 0}.orc-linha div{display:flex;flex-direction:column;gap:3px}.orc-linha b{font-size:9px;color:#777}.orc-linha span{font-size:12px}.orcamento-a4 section{margin-top:13px}.orcamento-a4 section h2{font-size:12px;text-transform:uppercase;border-bottom:1px solid #222;padding-bottom:4px;margin:0 0 6px}.orc-texto{font-size:11px;white-space:pre-wrap;min-height:28px}.orc-item{display:grid;grid-template-columns:1fr 110px;padding:6px 0;border-bottom:1px solid #eee;font-size:11px}.orc-item strong{text-align:right}.orc-vazio{font-size:11px;color:#777}.orc-total{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding:10px;background:#111;color:#fff}.orc-total span{font-size:11px;font-weight:bold}.orc-total strong{font-size:18px}.orc-observacao{font-size:10px;margin-top:14px}.orc-observacao>div{margin-top:5px;border:1px solid #ddd;padding:8px;min-height:35px;white-space:pre-wrap}.orc-rodape{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:25px;padding-top:15px;border-top:1px solid #bbb;font-size:9px}.orc-botoes{position:fixed;bottom:15px;left:0;right:0;display:flex;justify-content:center;gap:10px}.orc-botoes button{padding:10px 18px}@media print{body.pagina-orcamento{background:#fff}.orcamento-a4{margin:0;width:210mm;min-height:297mm;box-shadow:none;padding:10mm}.orc-botoes{display:none}@page{size:A4;margin:0}}
@media(max-width:700px){.section-title-row{align-items:flex-start;flex-direction:column}.orcamento-acoes{width:100%;overflow-x:auto;padding-bottom:2px}.orcamento-a4{width:100%;min-height:auto;margin:0;padding:20px}.orc-botoes{position:static;margin:10px;justify-content:flex-start}.orc-linha,.orc-rodape{grid-template-columns:1fr}}

/* Fluxo operacional da OS */
.destaque-situacao{border:2px solid #111;background:#fafafa}


/* =========================================================
   FG_WEB — AVISOS DE CORES DAS SITUAÇÕES
   ========================================================= */
.os-item.status-aguardando{border-left-color:#6c757d}
.os-item.status-analise{border-left-color:#0d6efd}
.os-item.status-orcamento{border-left-color:#6f42c1}
.os-item.status-autorizacao{border-left-color:#fd7e14}
.os-item.status-nao-autorizado{border-left-color:#dc3545}
.os-item.status-condenado{border-left-color:#212529}
.os-item.status-reparo{border-left-color:#198754}
.os-item.status-peca{border-left-color:#20c997}
.os-item.status-pronto{border-left-color:#0dcaf0}
.os-item.status-pronto-avisado{border-left-color:#17a2b8}
.os-item.status-entregue{border-left-color:#198754}
.os-item.status-devolvido{border-left-color:#dc3545}
.os-item.status-default{border-left-color:#999}

.os-situacao{
    display:inline-block;
    width:max-content;
    max-width:100%;
    padding:4px 8px;
    border-radius:12px;
    font-weight:700;
}
.os-situacao.status-aguardando{background:#eef0f2;color:#495057}
.os-situacao.status-analise{background:#e7f1ff;color:#0756b5}
.os-situacao.status-orcamento{background:#f0e8ff;color:#5b2aa8}
.os-situacao.status-autorizacao{background:#fff0df;color:#b85c00}
.os-situacao.status-nao-autorizado{background:#fde7ea;color:#b42332}
.os-situacao.status-condenado{background:#e9ecef;color:#212529}
.os-situacao.status-reparo{background:#e5f6ec;color:#126b39}
.os-situacao.status-peca{background:#e2faf4;color:#087b62}
.os-situacao.status-pronto{background:#e3f8fc;color:#08758a}
.os-situacao.status-pronto-avisado{background:#e4f4f7;color:#126b7c}
.os-situacao.status-entregue{background:#e5f6ec;color:#126b39}
.os-situacao.status-devolvido{background:#fde7ea;color:#b42332}
.os-situacao.status-default{background:#f0f0f0;color:#555}

/* Situação dentro do popup */
.situacao-card.status-aguardando{border-left:5px solid #6c757d}
.situacao-card.status-analise{border-left:5px solid #0d6efd}
.situacao-card.status-orcamento{border-left:5px solid #6f42c1}
.situacao-card.status-autorizacao{border-left:5px solid #fd7e14}
.situacao-card.status-nao-autorizado{border-left:5px solid #dc3545}
.situacao-card.status-condenado{border-left:5px solid #212529}
.situacao-card.status-reparo{border-left:5px solid #198754}
.situacao-card.status-peca{border-left:5px solid #20c997}
.situacao-card.status-pronto,
.situacao-card.status-pronto-avisado{border-left:5px solid #0dcaf0}
.situacao-card.status-entregue{border-left:5px solid #198754}
.situacao-card.status-devolvido{border-left:5px solid #dc3545}
.situacao-card.status-default{border-left:5px solid #999}

.btn-reimprimir-a4{
    background:#198754;
    color:#fff;
    font-weight:bold;
    white-space:nowrap;
}
.btn-reimprimir-a4:hover{background:#157347}

.status-atual{
    display:inline-block !important;
    width:max-content;
    max-width:100%;
    padding:5px 9px;
    border-radius:12px;
}
.status-atual.status-aguardando{background:#eef0f2;color:#495057}
.status-atual.status-analise{background:#e7f1ff;color:#0756b5}
.status-atual.status-orcamento{background:#f0e8ff;color:#5b2aa8}
.status-atual.status-autorizacao{background:#fff0df;color:#b85c00}
.status-atual.status-nao-autorizado{background:#fde7ea;color:#b42332}
.status-atual.status-condenado{background:#e9ecef;color:#212529}
.status-atual.status-reparo{background:#e5f6ec;color:#126b39}
.status-atual.status-peca{background:#e2faf4;color:#087b62}
.status-atual.status-pronto,
.status-atual.status-pronto-avisado{background:#e3f8fc;color:#08758a}
.status-atual.status-entregue{background:#e5f6ec;color:#126b39}
.status-atual.status-devolvido{background:#fde7ea;color:#b42332}
.status-atual.status-default{background:#f0f0f0;color:#555}

/* AVISOS VISUAIS FG_WEB */
.fg-alerts{margin-top:18px}
.fg-alerts-head{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #262626;padding-bottom:10px}
.fg-alerts-kicker{color:#ff1b23;font-size:12px;font-weight:900;letter-spacing:3px}
.fg-alerts-head h2{margin:3px 0 2px;font-size:20px}
.fg-alerts-head p{margin:0;color:#9b9b9b;font-size:12px}
.fg-alerts-count{min-width:42px;height:42px;padding:0 12px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#e51b23;color:#fff;font-size:18px;font-weight:900}
.fg-alerts-lista{display:grid;gap:8px;margin-top:10px}
.fg-alert{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;padding:13px 15px;border:1px solid #383838;border-left:5px solid #777;border-radius:10px;background:#151515;color:#fff;cursor:pointer}
.fg-alert.red{border-left-color:#ef233c;background:linear-gradient(90deg,#281116,#151515)}
.fg-alert.orange{border-left-color:#ff8a00;background:linear-gradient(90deg,#291b0d,#151515)}
.fg-alert.yellow{border-left-color:#f0c419;background:linear-gradient(90deg,#29250d,#151515)}
.fg-alert.green{border-left-color:#24c46a;background:linear-gradient(90deg,#10261a,#151515)}
.fg-alert-icon{text-align:center;font-size:22px}
.fg-alert-main{min-width:0;display:flex;flex-direction:column;gap:3px}
.fg-alert-main strong{font-size:13px;font-weight:900}
.fg-alert-main span{font-size:12px;font-weight:800}
.fg-alert-main small{color:#aaa;font-size:11px}
.fg-alert-days{white-space:nowrap;font-size:12px;font-weight:900;color:#ddd}
.fg-alerts-empty{padding:16px;border:1px dashed #333;border-radius:10px;text-align:center;color:#929292;background:#0e0e0e}
.fg-alerts-legenda{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;color:#888;font-size:10px}
.fg-alerts-legenda span{display:inline-flex;align-items:center;gap:5px}
.dot{width:8px;height:8px;display:inline-block;border-radius:50%}
.dot.red{background:#ef233c}.dot.orange{background:#ff8a00}.dot.yellow{background:#f0c419}.dot.green{background:#24c46a}
@media(max-width:700px){.fg-alert{grid-template-columns:36px 1fr}.fg-alert-days{grid-column:2}}

.fg-btn-finance{border-color:#8f6b00 !important}
.fg-btn-finance:hover{border-color:#d9a800 !important;background:#222 !important}


/* =========================================================
   FG_WEB — PADRÃO VISUAL FINAL (TEAL)
   Mantém as funções existentes e padroniza as telas operacionais.
   ========================================================= */
:root{
  --fg-bg:#0b1213;
  --fg-panel:#142021;
  --fg-panel-2:#101b1c;
  --fg-border:#294344;
  --fg-accent:#18a7a7;
  --fg-accent-hover:#20c2c2;
  --fg-text:#eef7f7;
  --fg-muted:#9fb5b5;
  --fg-danger:#d86b6b;
  --fg-danger-bg:#351b1d;
}
body{background:var(--fg-bg);color:var(--fg-text)}
header{background:#0b0f10;color:var(--fg-text);border-bottom:2px solid var(--fg-accent)}
header span{background:#18292a;color:var(--fg-text)}
.titulo-sistema{color:var(--fg-accent)!important}
main{color:var(--fg-text)}
.card{background:var(--fg-panel);border:1px solid var(--fg-border);box-shadow:0 12px 35px #0006}
h1,h2,h3,h4,strong{color:var(--fg-text)}
input,textarea,select,
.linha-form select{background:#0c1819!important;color:var(--fg-text)!important;border-color:#38595a!important}
input::placeholder,textarea::placeholder{color:#7f9999!important}
button{background:#18292a;color:var(--fg-text);border:1px solid #38595a}
button:hover{border-color:var(--fg-accent)}
.btn-header,.btn-consulta,.btn-pesquisar,.btn-salvar,.btn-finalizar{background:var(--fg-accent)!important;border-color:var(--fg-accent)!important;color:#fff!important}
.btn-header:hover,.btn-consulta:hover,.btn-pesquisar:hover,.btn-salvar:hover,.btn-finalizar:hover{background:var(--fg-accent-hover)!important}
.btn-voltar{background:#18292a!important;color:var(--fg-text)!important;border:1px solid #38595a!important}
.selected,.item,.info-card,.finance-grid>div,.detalhe-texto,.texto-longo,.os-item,.consulta-vazia,.consulta-erro,.resumo-box,.resumo-financeiro>div{background:#101b1c;color:var(--fg-text);border-color:var(--fg-border)}
.item small,.selected span,.resumo-box small,.detalhe-meta,.consulta-topo p,.os-equipamento,.os-situacao{color:var(--fg-muted)}
.sem-itens{background:#0c1819;color:var(--fg-muted);border-color:#38595a}
.resumo-financeiro{border-top-color:var(--fg-accent)}
.resumo-financeiro .total{background:#0d1718;color:#fff;border-color:var(--fg-accent)}
.resumo-financeiro .total span{color:var(--fg-muted)}
.save,.btn-editar-os{background:var(--fg-accent)!important}
.btn-whatsapp{background:#1fa463!important}
.btn-orcamento{background:#18292a!important;border-color:#38595a!important;padding:9px 14px!important;font-size:13px!important;white-space:nowrap!important}
.btn-confirmar-orcamento{background:#1fa463!important;padding:9px 14px!important;font-size:13px!important;white-space:nowrap!important}
.resumo-orcamento{background:#101b1c!important;border:1px solid var(--fg-border);color:var(--fg-text)}
.item-orcamento{background:#24302b!important;border-color:#4b5144!important}
.item-execucao{background:#142a33!important;border-color:#294b59!important;color:var(--fg-text)}
.item-execucao .exec-info strong,.item-execucao .exec-total,.item-orcamento .orc-item-info strong,.item-orcamento .orc-item-total{color:#fff!important;font-weight:normal!important}
.item-execucao .exec-info small,.item-orcamento .orc-item-info small{color:#b8caca!important}
.btn-orc-editar,.exec-editar{background:#263338!important;color:#eef7f7!important;border:1px solid #466069!important}
.btn-orc-excluir,.exec-excluir{background:#351b1d!important;color:#ffd1d1!important;border:1px solid #6a3438!important}
.orc-edicao input{background:#0c1819!important;color:#fff!important;border-color:#38595a!important}
.btn-orc-salvar-edicao{background:var(--fg-accent)!important;color:#fff!important}
.btn-orc-cancelar-edicao{background:#18292a!important;color:#fff!important}
.section-title-row small{color:var(--fg-muted)!important}
.os-finalizada-banner{background:#18292a!important;border-color:#38595a!important;color:#eef7f7!important}
.aviso-finalizacao{background:#2b2615;color:#f8e9b0;border-color:#8b7330}
.aviso-finalizacao.liberado{background:#10351f;color:#b9f0c9;border-color:#1fa463}
.aviso-finalizacao.liberado .aviso-icone{background:#1fa463}
/* Consulta */
.os-item{background:#101b1c!important;color:#eef7f7!important}
.os-item:hover{background:#142526!important;border-color:#18a7a7!important}
.os-numero strong,.os-cliente{color:#eef7f7!important}
.os-nova{border-left-color:#18a7a7!important}
.os-nova .os-etiqueta{background:#103535!important;color:#7ee4dd!important}
.os-antiga .os-etiqueta{background:#263536!important;color:#b5c5c5!important}
.filtro{background:#18292a!important;color:#dbe9e9!important}
.filtro.ativo{background:#18a7a7!important;color:#fff!important}

/* Correção: caixa de detalhe da OS (consulta) ficava com fundo
   branco e texto claro por cima — quase ilegível. */
.detalhe-box{background:var(--fg-panel)!important;color:var(--fg-text)!important}
.detalhe-section{border-top-color:var(--fg-border)!important}
.detalhe-section h3{color:var(--fg-text)!important}
.detalhe-fechar{background:#243536!important;color:#fff!important}
.info-card span,.finance-grid span{color:var(--fg-muted)!important}
.historico-lista{border-color:var(--fg-border)!important}
.historico-item{background:#101b1c!important;border-top-color:var(--fg-border)!important}
.historico-item strong{color:var(--fg-text)!important}
.historico-item span{color:var(--fg-muted)!important}
.tabela-itens{border-color:var(--fg-border)!important}
.tabela-cabecalho{background:#18292a!important;color:var(--fg-muted)!important}
.tabela-linha{background:#101b1c!important;border-top-color:var(--fg-border)!important;color:var(--fg-text)!important}
.tabela-linha strong{color:#fff!important}

/* V22 - Ajuste visual da Situação da OS
   Remove o bloco branco que destoava do padrão FG_WEB. */
.destaque-situacao{
    background:var(--fg-panel)!important;
    border:1px solid var(--fg-border)!important;
    border-radius:12px!important;
    padding:18px!important;
}
.destaque-situacao h3{
    color:var(--fg-text)!important;
}
.destaque-situacao .section-title-row small{
    color:var(--fg-muted)!important;
}
#situacao-btn{
    background:#0c1819!important;
    color:var(--fg-text)!important;
    border:1px solid #38595a!important;
}
#situacao-btn:hover{
    border-color:var(--fg-accent)!important;
}
#situacao-menu{
    background:#101b1c!important;
    border:1px solid var(--fg-border)!important;
    box-shadow:0 14px 35px #0008!important;
}
#situacao-menu button{
    background:#101b1c!important;
    color:var(--fg-text)!important;
    border:0!important;
    border-bottom:1px solid #294344!important;
}
#situacao-menu button:hover{
    background:#18292a!important;
    color:#fff!important;
}


/* =========================================================
   FG_WEB V23 — EDITAR EQUIPAMENTO
   ========================================================= */

.equipamento-box{
  position:relative;
}

.equipamento-cabecalho{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:2px;
}

.btn-editar-equipamento{
  border:1px solid #18a7a7;
  background:#102628;
  color:#18d1d1;
  border-radius:8px;
  padding:8px 12px;
  font-weight:800;
  font-size:.78rem;
  cursor:pointer;
  white-space:nowrap;
  transition:.18s ease;
}

.btn-editar-equipamento:hover{
  background:#18a7a7;
  color:#071012;
  transform:translateY(-1px);
}

.modal-equipamento-backdrop{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(4px);
}

.modal-equipamento-backdrop.hide{
  display:none !important;
}

.modal-equipamento{
  width:min(760px, 96vw);
  max-height:90vh;
  overflow:auto;
  background:#101b1c;
  border:1px solid #1d7779;
  border-radius:16px;
  box-shadow:0 24px 70px rgba(0,0,0,.55);
  padding:24px;
  color:#f4f8f8;
}

.modal-equipamento-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
  padding-bottom:15px;
  border-bottom:1px solid #234849;
}

.modal-equipamento-header span{
  display:block;
  color:#18c8c8;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.14em;
  margin-bottom:5px;
}

.modal-equipamento-header h3{
  margin:0;
  color:#fff;
  font-size:1.55rem;
}

.modal-fechar{
  width:38px;
  height:38px;
  border:1px solid #31585a;
  border-radius:9px;
  background:#122223;
  color:#d8eeee;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}

.modal-fechar:hover{
  border-color:#18a7a7;
  color:#18d1d1;
}

.equipamento-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
}

.equipamento-form-grid label{
  display:flex;
  flex-direction:column;
  gap:7px;
  color:#9db8ba;
  font-size:.76rem;
  font-weight:800;
}

.equipamento-form-grid input,
.equipamento-form-grid textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #28585a;
  border-radius:9px;
  background:#081415;
  color:#f4f8f8;
  padding:12px 13px;
  font:inherit;
  outline:none;
}

.equipamento-form-grid input:focus,
.equipamento-form-grid textarea:focus{
  border-color:#18caca;
  box-shadow:0 0 0 2px rgba(24,202,202,.12);
}

.equipamento-form-grid textarea{
  resize:vertical;
  min-height:100px;
}

.equipamento-form-full{
  grid-column:1 / -1;
}

.modal-equipamento-acoes{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:22px;
  padding-top:17px;
  border-top:1px solid #234849;
}

.btn-modal-cancelar,
.btn-modal-salvar{
  border-radius:9px;
  padding:12px 18px;
  font-weight:900;
  cursor:pointer;
}

.btn-modal-cancelar{
  background:#121f20;
  border:1px solid #39585a;
  color:#e9eeee;
}

.btn-modal-salvar{
  background:#1eaf68;
  border:1px solid #32d985;
  color:#fff;
}

.btn-modal-salvar:hover{
  background:#24bf72;
}

body.modal-aberto{
  overflow:hidden;
}

@media (max-width:700px){
  .equipamento-form-grid{
    grid-template-columns:1fr;
  }

  .equipamento-form-full{
    grid-column:auto;
  }

  .equipamento-cabecalho{
    align-items:flex-start;
    flex-direction:column;
  }

  .modal-equipamento-backdrop{
    padding:10px;
  }

  .modal-equipamento{
    padding:18px;
  }

  .modal-equipamento-acoes{
    flex-direction:column-reverse;
  }

  .btn-modal-cancelar,
  .btn-modal-salvar{
    width:100%;
  }
}


/* =========================================================
   FG_WEB — LAYOUT COM MENU LATERAL (SIDEBAR)
   Adicionado na reforma de layout. Não interfere no restante
   do arquivo: usa apenas classes novas (fg-side-*, fg-main).
   ========================================================= */
.fg-sidebar{
  position:fixed;
  top:0; left:0; bottom:0;
  width:236px;
  background:#0d1718;
  border-right:1px solid var(--fg-border);
  display:flex;
  flex-direction:column;
  z-index:1000;
  transition:transform .2s ease;
}
.fg-side-brand{
  display:flex;
  align-items:center;
  gap:12px;
  padding:20px 18px;
  border-bottom:1px solid var(--fg-border);
}
.fg-side-logo{width:40px;height:40px;object-fit:contain;border-radius:8px;background:#142021}
.fg-side-brand strong{display:block;color:#fff;font-size:15px;letter-spacing:.5px}
.fg-side-brand span{display:block;color:var(--fg-muted);font-size:10px;font-weight:700;letter-spacing:.5px}
.fg-side-nav{display:flex;flex-direction:column;padding:14px 10px;gap:3px;overflow-y:auto}
.fg-side-nav a{
  display:flex;
  align-items:center;
  gap:11px;
  padding:11px 12px;
  border-radius:9px;
  color:var(--fg-muted);
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  border:1px solid transparent;
}
.fg-side-nav a:hover{background:#152425;color:#fff}
.fg-side-nav a.active{background:#122425;border-color:var(--fg-accent);color:#fff}
.fg-side-nav .fg-side-icon{width:18px;text-align:center;flex:0 0 18px}
.fg-side-user{margin-top:auto;padding:14px 18px;border-top:1px solid var(--fg-border)}
.fg-side-user-nome{color:#fff;font-size:12.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fg-side-user-papel{color:var(--fg-muted);font-size:10px;margin-top:2px}
.fg-side-sair{display:inline-block;margin-top:8px;color:#ff8f8f;font-size:11px;font-weight:800;text-decoration:none}
.fg-side-sair:hover{text-decoration:underline}
.fg-side-foot{padding:10px 18px 14px;color:var(--fg-muted);font-size:10px}
.fg-main{margin-left:236px;min-height:100vh;box-sizing:border-box}
.fg-menu-toggle{
  display:none;
  position:fixed;
  top:14px; left:14px;
  z-index:1100;
  width:42px;height:42px;
  border-radius:9px;
  border:1px solid var(--fg-border);
  background:#142021;
  color:#fff;
  font-size:18px;
  cursor:pointer;
}
.fg-sidebar-overlay{display:none}

@media(max-width:980px){
  .fg-sidebar{transform:translateX(-100%)}
  body.fg-sidebar-open .fg-sidebar{transform:translateX(0)}
  .fg-main{margin-left:0}
  .fg-menu-toggle{display:flex;align-items:center;justify-content:center}
  body.fg-sidebar-open .fg-sidebar-overlay{
    display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:999;
  }
}

/* =========================================================
   FG_WEB — CAIXA FLUTUANTE DE ALERTA/CONFIRMAÇÃO
   Substitui alert()/confirm() nativos do navegador.
   ========================================================= */
.fg-dialog-overlay{
  position:fixed;
  inset:0;
  z-index:5000;
  background:rgba(0,0,0,.6);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.fg-dialog-box{
  width:min(420px,92vw);
  background:var(--fg-panel);
  border:1px solid var(--fg-border);
  border-top:4px solid var(--fg-accent);
  border-radius:14px;
  padding:24px;
  box-shadow:0 25px 80px rgba(0,0,0,.55);
}
.fg-dialog-mensagem{
  color:var(--fg-text);
  font-size:14.5px;
  line-height:1.5;
  white-space:normal;
}
.fg-dialog-acoes{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:20px;
}
.fg-dialog-btn{
  border:0;
  border-radius:8px;
  padding:10px 16px;
  font-weight:800;
  font-size:13px;
  cursor:pointer;
}
.fg-dialog-ok{background:var(--fg-accent)!important;color:#fff!important}
.fg-dialog-ok:hover{background:var(--fg-accent-hover)!important}
.fg-dialog-cancelar{background:#18292a!important;color:var(--fg-text)!important;border:1px solid #38595a!important}
