:root{--fundo: #f7f7f5;--texto: #1c1917;--fraco: #78716c;--linha: #e7e5e4;--verde: #14532d;--atencao: #b45309;--atraso: #b91c1c;--cinza: #6b7280}*{box-sizing:border-box}body{margin:0;background:var(--fundo);color:var(--texto);font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:560px;margin:0 auto;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}.topo{position:sticky;top:0;z-index:1;padding:1rem 1rem .5rem;background:var(--fundo);border-bottom:1px solid var(--linha)}h1{margin:0;font-size:1.25rem;letter-spacing:-.01em}.topo p{margin:.15rem 0 .75rem;color:var(--fraco);font-size:.85rem}input,textarea{width:100%;padding:.65rem .75rem;border:1px solid var(--linha);border-radius:.6rem;background:#fff;font:inherit;font-size:1rem;color:inherit}input:not([type=checkbox]),textarea,select,button,.filtros button,.sair,.instalar{min-height:2.75rem}select{font-size:1rem}input:focus,textarea:focus{outline:2px solid var(--verde);outline-offset:1px}.filtros{display:flex;gap:.4rem;overflow-x:auto;padding:.6rem 0;scrollbar-width:none}.filtros.cidades{flex-wrap:wrap;overflow:visible}.filtros button{flex:none;padding:.35rem .7rem;border:1px solid var(--linha);border-radius:999px;background:#fff;color:var(--fraco);font:inherit;font-size:.8rem}.filtros button.ativo{background:var(--verde);border-color:var(--verde);color:#fff}.filtros label{display:flex;align-items:center;gap:.25rem;font:.75rem/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--fraco);margin:0}.filtros select{padding:.35rem .5rem;border:1px solid var(--linha);border-radius:.4rem;background:#fff;font:inherit;color:inherit}.filtros select:focus{outline:2px solid var(--verde);outline-offset:1px}.textos{display:grid;grid-template-columns:1fr;gap:.5rem;margin:1rem 0}.textos label{font:.85rem/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--texto);font-weight:700}.textos input{width:100%;padding:.4rem .5rem;border:1px solid var(--linha);border-radius:.4rem;font:inherit;font-size:1rem;min-height:2.75rem;margin-top:.2rem}.textos input:focus{outline:2px solid var(--verde);outline-offset:1px}.lista{list-style:none;margin:0;padding:.5rem}.lista li+li{margin-top:.4rem}.card{display:flex;align-items:stretch;width:100%;border:1px solid var(--linha);border-radius:.75rem;background:#fff;overflow:hidden}.card-corpo{display:flex;gap:.75rem;align-items:center;flex:1;min-width:0;padding:.7rem;border:0;background:transparent;text-align:left;font:inherit;color:inherit}.card-corpo:active{background:#fafaf9}.acao-rota{flex:none;min-width:4.6rem;padding:.4rem .55rem;border:0;border-left:1px solid var(--linha);background:#fff;color:var(--verde);font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.acao-rota.ativa{background:#dcfce7}.acao-rota:disabled{color:var(--fraco);background:#f5f5f4;cursor:default}.texto{display:flex;flex-direction:column;min-width:0;gap:.1rem}.texto strong{font-weight:600;font-size:.95rem}.texto small{color:var(--fraco);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selo{flex:none;min-width:2.6rem;padding:.2rem .4rem;border-radius:.4rem;font-size:.75rem;font-weight:600;text-align:center;background:#f5f5f4;color:var(--cinza)}.selo.atrasado{background:#fee2e2;color:var(--atraso)}.selo.atencao{background:#fef3c7;color:var(--atencao)}.selo.em-dia,.selo.concluido{background:#dcfce7;color:var(--verde)}.selo.inativo{background:#e7e5e4;color:#57534e}.erro{margin:.5rem 1rem;color:var(--atraso);font-size:.85rem}.aviso-rede{margin:.5rem 1rem;padding:.45rem .7rem;border-radius:.5rem;font-size:.8rem;font-weight:600}.aviso-rede.offline{background:#fef3c7;color:var(--atencao)}.aviso-rede.sincronizando{background:#dcfce7;color:var(--verde)}.aviso-ficha{margin:.75rem 0 0;padding:.55rem .75rem;border-radius:.5rem;font-size:.82rem;font-weight:600}.aviso-ficha.salvo{background:#dcfce7;color:var(--verde)}.aviso-ficha.offline{background:#fef3c7;color:var(--atencao)}.aviso-ficha.falhou{background:#fee2e2;color:var(--atraso)}.ficha{position:fixed;inset:0;z-index:5;max-width:560px;margin:0 auto;background:var(--fundo)}.ficha-shell{display:flex;flex-direction:column;height:100%}.ficha-topo{display:flex;align-items:center;gap:.5rem;padding:max(.4rem,env(safe-area-inset-top)) .75rem .4rem;border-bottom:1px solid var(--linha);background:var(--fundo)}.voltar{flex:none;min-height:2.75rem;padding:0 .75rem 0 .25rem;border:0;background:transparent;color:var(--verde);font:inherit;font-weight:700;cursor:pointer}.ficha-titulo{flex:1;min-width:0;font-weight:700;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ficha-corpo{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1rem 1rem 1.5rem}.ficha-identificacao{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.ficha-sub{margin:0;color:var(--fraco);font-size:.85rem}.toggle-ativo{display:flex;align-items:center;gap:.75rem;min-height:3.25rem;margin:1rem 0;padding:.5rem .75rem;border:1px solid var(--linha);border-radius:.75rem;background:#fff;font-weight:700;cursor:pointer}.toggle-ativo span{flex:1}.toggle-ativo input{flex:none;appearance:none;width:3rem;height:1.75rem;border-radius:999px;background:#d6d3d1;position:relative;cursor:pointer;transition:background .15s}.toggle-ativo input:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.35rem;height:1.35rem;border-radius:50%;background:#fff;transition:transform .15s}.toggle-ativo input:checked{background:var(--verde)}.toggle-ativo input:checked:after{transform:translate(1.25rem)}.bloco{margin:1rem 0;border:1px solid var(--linha);border-radius:.75rem;background:#fff}.bloco>summary{display:flex;align-items:center;justify-content:space-between;min-height:3rem;padding:0 .75rem;font-weight:700;cursor:pointer;list-style:none}.bloco>summary:after{content:"▸";color:var(--fraco)}.bloco[open]>summary:after{content:"▾"}.bloco>:not(summary){margin:0 .75rem 1rem}.fechar{width:2.75rem;height:2.75rem;border:0;border-radius:999px;background:var(--verde);color:#fff;font-size:1.25rem;line-height:1;cursor:pointer}.datas{display:grid;grid-template-columns:1fr;gap:.6rem;margin:1rem 0}.datas label,.observacao{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--texto);font-weight:700}.gps{display:flex;flex-direction:column;gap:.35rem;margin:1rem 0;font-size:.78rem;font-weight:700}.gps-topo{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.btn-add-gps{display:inline-flex;align-items:center;padding:.2rem .55rem;border:1px dashed var(--verde);border-radius:.4rem;background:transparent;color:var(--verde);font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.btn-add-gps:hover{background:#2e7d3214}.gps-extra{display:flex;flex-direction:column;gap:.35rem;margin-top:.4rem;padding:.5rem;background:#f7faf7;border:1px solid var(--linha);border-radius:.5rem}.gps-extra-topo{display:flex;gap:.4rem}.gps-extra-topo input{flex:1;min-width:0;font-size:.82rem;font-weight:600}.gps-extra-topo .remover-gps{flex:none;min-height:2.4rem;padding:0 .6rem;border:1px solid #e0e0e0;border-radius:.4rem;background:#fff;color:#c62828;font-size:.85rem;font-weight:700;cursor:pointer}.gps-linha{display:flex;gap:.4rem}.gps-linha input{flex:1;min-width:0}.gps-linha button{flex:none;min-height:2.75rem;padding:.45rem .6rem;border:1px solid var(--verde);border-radius:.5rem;background:#fff;color:var(--verde);font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.gps-linha button:disabled{opacity:.6;cursor:default}.calculado{display:flex;flex-direction:column;margin:1rem 0;padding:.25rem .75rem;border:1px solid var(--linha);border-radius:.75rem;background:#fff}.calculado div{display:flex;justify-content:space-between;gap:.75rem;padding:.45rem 0;border-bottom:1px solid var(--linha)}.calculado div:last-child{border-bottom:0}.calculado dt{color:var(--texto);font-size:.72rem;font-weight:700}.calculado dd{margin:0;font-size:.9rem;font-weight:600;text-align:right;overflow-wrap:anywhere}.salvar{width:100%;padding:.85rem;border:0;border-radius:.75rem;background:var(--verde);color:#fff;font:inherit;font-weight:600}.salvar:disabled{opacity:.6}.acoes-ficha{padding:.6rem .75rem max(.75rem,env(safe-area-inset-bottom));border-top:1px solid var(--linha);background:var(--fundo)}.acoes-ficha .salvar{width:100%;min-height:2.75rem}.login{max-width:22rem;margin:12vh auto;padding:1.5rem}.login h1{margin:0 0 .15rem;font-size:1.3rem}.login p{margin:0 0 1.2rem;color:var(--fraco);font-size:.85rem}.login form{display:flex;flex-direction:column;gap:.8rem}.login label{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--fraco)}.login input{padding:.6rem .7rem;border:1px solid var(--borda, #d6d3d1);border-radius:.6rem;font:inherit;color:inherit}.login input:focus{outline:2px solid var(--verde);outline-offset:1px}.acoes-topo{position:absolute;top:.75rem;right:1rem;display:flex;gap:.35rem;align-items:center}.acoes-topo .sair,.acoes-topo .atualizar,.acoes-topo .instalar{position:static}.sair,.atualizar{padding:.35rem .65rem;border:1px solid var(--borda, #d6d3d1);border-radius:.5rem;background:transparent;color:inherit;font:inherit;font-size:.78rem;cursor:pointer}.atualizar:hover,.sair:hover{background:#0000000a}.atualizar:disabled{opacity:.6;cursor:wait}.aviso-sync{margin:.4rem 1rem 0;padding:.45rem .7rem;border-radius:.45rem;background:#dcfce7;color:#14532d;font-size:.8rem;text-align:center}.instalar{padding:.35rem .7rem;border:0;border-radius:.5rem;background:var(--verde);color:#fff;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.atalhos-login{display:flex;justify-content:flex-end;gap:.35rem;padding:.75rem 1rem 0}.atalhos-login button{padding:.35rem .7rem;border:1px solid var(--borda, #d6d3d1);border-radius:.5rem;background:transparent;color:inherit;font:inherit;font-size:.85rem;cursor:pointer}.atalhos-login .instalar{position:static}main.com-rota{padding-bottom:calc(8.5rem + env(safe-area-inset-bottom))}.aviso-rota{margin:.6rem 0;padding:.55rem .7rem;border-radius:.5rem;background:#fef9c3;color:#713f12;font-size:.8rem}.rota-barra{position:fixed;left:0;right:0;bottom:calc(46px + env(safe-area-inset-bottom));z-index:3;display:flex;align-items:center;gap:.45rem;width:100%;max-width:560px;margin:0 auto;padding:.55rem .7rem;border-top:1px solid var(--linha, #e7e5e4);background:#fff;box-shadow:0 -2px 12px #0000000f}.rota-barra span{flex:1;min-width:0;font-size:.8rem;font-weight:700;text-align:right;padding-right:.25rem}.rota-barra button{min-height:2.6rem;padding:.45rem .65rem;border:1px solid var(--linha, #e7e5e4);border-radius:.6rem;background:#fff;color:inherit;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap}.rota-barra button.maps{border-color:var(--verde, #14532d);background:var(--verde, #14532d);color:#fff}.gaveta-fundo{position:fixed;inset:0;z-index:4;display:flex;align-items:flex-end;background:#00000059}.gaveta{width:100%;max-width:560px;max-height:90vh;margin:0 auto;padding:1rem 1rem max(1rem,env(safe-area-inset-bottom));overflow-y:auto;border-radius:1rem 1rem 0 0;background:var(--fundo, #f7f7f5)}.gaveta-topo{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.gaveta-topo h2{margin:0;font-size:1.1rem}.gaveta-topo .fechar{position:static}.gaveta-lista{margin:.75rem 0;padding:0;list-style:none}.gaveta-lista li{display:flex;align-items:center;gap:.5rem;padding:.55rem 0;border-bottom:1px solid var(--linha, #e7e5e4)}.gaveta-lista li.sem-gps{opacity:.7}.gaveta-nome{flex:1;min-width:0;font-size:.85rem}.gaveta-nome small{color:var(--atraso, #b45309)}.gaveta-acoes{display:flex;gap:.3rem}.gaveta-acoes button{min-width:2.75rem;min-height:2.75rem;border:1px solid var(--linha, #e7e5e4);border-radius:.5rem;background:#fff;color:inherit;font:inherit;cursor:pointer}.gaveta-acoes button:disabled{opacity:.35;cursor:default}.gaveta-acoes .remover{color:var(--atraso, #b45309)}.gaveta-historico{margin:1rem 0}.gaveta-historico h3{margin:.5rem 0;font-size:.9rem}.gaveta-historico ul{display:flex;flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none}.gaveta-historico button{width:100%;padding:.6rem .7rem;border:1px solid var(--linha, #e7e5e4);border-radius:.6rem;background:#fff;color:inherit;font:inherit;font-size:.82rem;text-align:left;cursor:pointer}.gaveta .vazio{margin:.25rem 0;color:var(--fraco, #78716c);font-size:.8rem}.gaveta .limpar{width:100%;margin-top:.5rem;padding:.7rem;border:1px solid var(--atraso, #b45309);border-radius:.6rem;background:#fff;color:var(--atraso, #b45309);font:inherit;font-weight:700;cursor:pointer}.gaveta .whatsapp{width:100%;margin-top:.5rem;padding:.7rem;border:0;border-radius:.6rem;background:#128c7e;color:#fff;font:inherit;font-weight:700;cursor:pointer}.gaveta-msg{margin:.5rem 0 0;color:var(--verde, #14532d);font-size:.8rem;text-align:center}.rodape{position:fixed;bottom:0;left:0;right:0;height:calc(46px + env(safe-area-inset-bottom));padding:0 1rem env(safe-area-inset-bottom);display:flex;align-items:center;font-size:.7rem;color:var(--fraco);background:var(--fundo);border-top:1px solid var(--borda);text-align:left;z-index:1}.commit{font-family:monospace;font-size:.7rem;color:var(--verde);font-weight:600}
