/* GARAGEM88 — Formulário compartilhado MOBILE: Venda, Orçamento e Agenda.
   Todos reutilizam #moduleArea, campos, serviços, adicionais e subcadastros.
   Apenas apresentação até 600px; desktop, validação e persistência intocados. */
@media (max-width:600px){
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .demo-wrap,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-launch{
   box-sizing:border-box!important;min-width:0!important;max-width:100%!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .demo-wrap{
   width:100%!important;margin:0!important;padding:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-launch{
   width:100%!important;margin:0!important;
   padding:13px 11px!important;background:#fff!important;
   border:1px solid #d9e6f4!important;border-radius:14px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-launch h2{
   margin:0 0 13px!important;font:750 19px/1.3 Inter,'Segoe UI',Arial,sans-serif!important;
   letter-spacing:-.3px;color:#132e4d;
 }
 /* A mesma grade é usada nas três origens; o campo Hora existe só na Agenda. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top{
   display:grid!important;width:100%!important;min-width:0!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:10px!important;align-items:end!important;
   margin:0 0 14px!important;padding:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top > *{
   box-sizing:border-box!important;grid-column:1/-1!important;grid-row:auto!important;
   min-width:0!important;max-width:100%!important;width:100%!important;
   margin:0!important;
 }
 /* Datas nativas do iPhone têm rótulos longos. Não cortar ano nem horário. */
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea .g88-row-top:has(#agendaModuleTimeField)>:first-child{
   grid-column:1/-1!important;grid-row:1!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea .g88-row-top #agendaModuleTimeField{
   grid-column:1/-1!important;grid-row:2!important;
   max-width:100%!important;min-width:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top .g88-field{
   width:100%!important;min-width:0!important;max-width:100%!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top .g88-field label{
   display:block!important;margin:0 0 5px!important;
   font:700 12px/1.25 Inter,'Segoe UI',Arial,sans-serif!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-input,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-select{
   box-sizing:border-box!important;display:block!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   min-height:44px!important;height:44px!important;
   padding:0 10px!important;border-radius:9px!important;
   font-size:16px!important;line-height:1.3!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top > .g88-btn{
   display:flex!important;align-items:center!important;justify-content:center!important;
   gap:8px!important;min-height:44px!important;height:auto!important;
   padding:9px 10px!important;white-space:normal!important;
   font:700 13px/1.25 Inter,'Segoe UI',Arial,sans-serif!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top > .g88-btn .g88-btn-icon{
   flex:0 0 20px!important;width:20px!important;min-width:20px!important;
 }
 /* Cada serviço: pesquisa | valor | excluir; ações completas abaixo.
    Linhas extras geradas por Adicionar seguem exatamente a mesma grade. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-services{
   box-sizing:border-box!important;width:100%!important;min-width:0!important;
   margin:0!important;padding:11px 8px!important;
   background:#f5f9ff!important;border:1px solid #e0eaf6!important;border-radius:12px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading{
   display:flex!important;align-items:center;gap:9px;
   margin:0 0 12px!important;min-width:0;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading strong{
   font-size:14px!important;line-height:1.25;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading small{
   font-size:11px!important;line-height:1.35;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-head,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line{
   box-sizing:border-box!important;display:grid!important;
   grid-template-columns:minmax(0,1fr) 82px 42px!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   gap:7px!important;align-items:center!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-head{
   margin:0 0 6px!important;
   font-size:11px!important;line-height:1.25!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-head > *{
   min-width:0;white-space:normal!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line{
   margin:0 0 9px!important;
   grid-auto-rows:minmax(44px,auto);align-items:stretch!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > *{
   box-sizing:border-box!important;min-width:0!important;max-width:100%!important;
   margin:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > .g88-field:first-child{
   grid-column:1;grid-row:1;min-width:0!important;width:100%!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > :is(#value,.g88-service-value){
   grid-column:2;grid-row:1;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > .g88-trash{
   grid-column:3;grid-row:1;
   width:42px!important;min-width:42px!important;
   min-height:44px!important;height:44px!important;
   padding:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > #addService{
   grid-column:1/-1!important;grid-row:2!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > #newServiceBtn{
   grid-column:1/-1!important;grid-row:3!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > .g88-inline-action{
   box-sizing:border-box!important;display:flex!important;
   align-items:center!important;justify-content:center!important;gap:8px!important;
   width:100%!important;max-width:none!important;min-width:0!important;
   min-height:44px!important;height:44px!important;margin:0!important;
   padding:7px 9px!important;
   font:700 12px/1.2 Inter,'Segoe UI',Arial,sans-serif!important;
   white-space:normal!important;text-align:center!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line .g88-btn-icon{
   flex:0 0 18px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line .g88-list{
   max-width:calc(100vw - 85px);overflow-x:hidden;
 }
 /* Mesma tabela e totais reais do motor compartilhado, sem tabelas gigantes. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table{
   display:block!important;min-width:0!important;width:100%!important;
   max-width:100%!important;overflow:hidden!important;
   margin:10px 0 0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v99-table-scroll{
   display:block;max-width:100%!important;overflow-x:auto!important;
   -webkit-overflow-scrolling:touch;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table table{
   box-sizing:border-box!important;table-layout:fixed!important;
   width:100%!important;min-width:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table th,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table td{
   box-sizing:border-box!important;padding:8px 6px!important;
   font-size:11px!important;overflow-wrap:anywhere;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table th:nth-child(2),
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table td:nth-child(2){
   width:79px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table th:nth-child(3),
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table td:nth-child(3){
   width:91px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-row-btn{
   width:38px!important;min-width:38px!important;height:40px!important;
   margin:1px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-subtotal{
   display:flex;align-items:center;justify-content:flex-end;
   flex-wrap:wrap;gap:8px;font-size:12px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .main-action{
   display:flex;flex-wrap:wrap;gap:8px;margin-top:12px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .main-action button{
   width:100%!important;min-height:44px!important;margin:0!important;
   white-space:normal!important;
 }
 /* Os diálogos de cadastro de cliente/veículo/serviço continuam os mesmos,
    apenas passam a caber na tela pequena. */
 body:is(.g88-v95-vendas,.g88-v99-shared) .g88-modal{
   padding:8px!important;max-width:100vw!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) .g88-modal-card{
   box-sizing:border-box!important;width:min(100%,470px)!important;
   max-width:100%!important;max-height:calc(100dvh - 16px)!important;
   overflow:hidden!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) .g88-modal-body{
   min-width:0!important;overflow-x:hidden!important;overflow-y:auto!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) .g88-modal-actions button{
   min-height:44px!important;
 }
 /* Modal Agenda: apresenta o MESMO #moduleArea numa coluna rolável,
    sem copiar nenhuma funcionalidade de Vendas ou Orçamentos. */
 body.g88-v99-shared #agendaNewOverlay.open{
   box-sizing:border-box!important;align-items:stretch!important;
   padding:max(7px,env(safe-area-inset-top)) 7px max(7px,env(safe-area-inset-bottom))!important;
   overflow:hidden!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-modal{
   box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
   width:100%!important;max-width:470px!important;
   height:100%!important;max-height:100%!important;
   margin:0 auto!important;border-radius:14px!important;
   overflow:hidden!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-head{
   box-sizing:border-box!important;flex:0 0 54px!important;
   height:54px!important;min-height:54px!important;
   padding:7px 14px!important;z-index:5;gap:8px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-head strong{
   min-width:0!important;font-size:17px!important;line-height:1.2;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaNewClose{
   display:grid;place-items:center;min-width:44px!important;
   width:44px!important;height:44px!important;min-height:44px!important;
   padding:0!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-body{
   box-sizing:border-box!important;flex:1 1 auto!important;
   min-height:0!important;min-width:0!important;max-height:none!important;
   overflow-x:hidden!important;overflow-y:auto!important;
   overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
   padding:12px 11px 0!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost{
   box-sizing:border-box!important;margin:0!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea{
   box-sizing:border-box!important;width:100%!important;
   max-width:100%!important;min-width:0!important;margin:0!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-obs{
   margin:12px 0!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-obs textarea{
   box-sizing:border-box;width:100%!important;max-width:100%!important;
   min-height:78px!important;max-height:160px!important;
   font:14px/1.5 Inter,'Segoe UI',Arial,sans-serif!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-actions{
   display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
   gap:8px!important;margin:0 0 12px!important;padding-top:10px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-actions > span{
   grid-column:1/-1;margin:0!important;min-width:0;
   overflow-wrap:anywhere;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-actions button{
   width:100%!important;min-width:0!important;
   min-height:44px!important;height:44px!important;padding:5px!important;
 }
}

/* Prioridade correta para o lançador que foi movido para #agendaModuleHost.
   V8.99 define 5 colunas com 2 IDs e !important no desktop: a regra
   compartilhada acima (1 ID) não era suficiente dentro da Agenda.
   Vendas e Orçamentos continuam usando as regras responsivas comuns. */
@media (max-width:600px) {
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-head,
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line{
   display:grid!important;box-sizing:border-box!important;
   grid-template-columns:minmax(0,1fr) 84px 44px!important;
   gap:7px!important;align-items:center!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   margin-left:0!important;margin-right:0!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line{
   grid-auto-flow:row!important;grid-auto-rows:minmax(44px,auto)!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line > *{
   min-width:0!important;max-width:100%!important;
   box-sizing:border-box!important;margin:0!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line > .g88-field:first-child{
   grid-column:1!important;grid-row:1!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line > :is(#value,.g88-service-value){
   grid-column:2!important;grid-row:1!important;
   min-width:0!important;width:100%!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line > .g88-trash{
   grid-column:3!important;grid-row:1!important;
   width:44px!important;min-width:44px!important;max-width:44px!important;
   height:44px!important;min-height:44px!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > #addService{
   grid-column:1/-1!important;grid-row:2!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > #newServiceBtn{
   grid-column:1/-1!important;grid-row:3!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line > .g88-inline-action{
   display:flex!important;align-items:center!important;justify-content:center!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   height:44px!important;min-height:44px!important;
   padding:7px 10px!important;white-space:normal!important;
   margin:0!important;font-size:12px!important;line-height:1.25!important;
 }
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-services,
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-v95-service-table{
   min-width:0!important;max-width:100%!important;width:100%!important;
 }
 /* O input pode ocupar toda a coluna do serviço, sem largura de desktop. */
 body.g88-v99-shared #agendaModuleHost #moduleArea .g88-service-line .g88-field > .g88-input{
   min-width:0!important;max-width:100%!important;width:100%!important;
 }
}

/* Formulário mobile aprovado visualmente em 25/10/2026.
   A estrutura e os handlers são os mesmos em Agenda, Vendas e Orçamentos.
   Sem barra visual no estado vazio; rolagem acessível somente se a tela,
   serviços extras ou teclado não couberem (nunca cortar dados/ações). */
@media (max-width:600px){
 /* Modal de Agenda: ocupar a altura útil sem sobrepor botões do Safari. */
 body.g88-v99-shared #agendaNewOverlay.open{
   padding:max(5px,env(safe-area-inset-top)) 5px max(5px,env(safe-area-inset-bottom))!important;
   align-items:stretch!important;overflow:hidden!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-modal{
   display:flex!important;flex-direction:column!important;
   width:100%!important;max-width:450px!important;max-height:100%!important;
   height:100%!important;min-height:0!important;overflow:hidden!important;
   margin:0 auto!important;border-radius:14px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-head{
   flex:0 0 48px!important;height:48px!important;min-height:48px!important;
   padding:3px 12px!important;gap:8px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-head strong{
   font-size:17px!important;font-weight:800!important;line-height:1.25!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaNewClose{
   display:grid!important;place-items:center!important;
   width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;
   font-size:26px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-body{
   display:flex!important;flex-direction:column!important;
   flex:1 1 auto!important;min-height:0!important;max-height:none!important;
   overflow-x:hidden!important;overflow-y:auto!important;
   overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
   scrollbar-width:none!important;padding:8px 10px 0!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-body::-webkit-scrollbar,
 body.g88-v99-shared #agendaNewOverlay.open .g88-v99-table-scroll::-webkit-scrollbar{
   display:none!important;width:0!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost,
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea,
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea .demo-wrap{
   width:100%!important;min-width:0!important;max-width:100%!important;
   margin:0!important;padding:0!important;overflow:visible!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-launch{
   padding:0!important;margin:0!important;border:0!important;
   border-radius:0!important;background:transparent!important;
   box-shadow:none!important;
 }
 /* Barra de título azul-clara aprovada no desenho. */
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-launch h2{
   margin:0 0 8px!important;padding:7px 10px!important;
   color:#0b2949!important;font:800 15px/1.25 Inter,'Segoe UI',Arial,sans-serif!important;
   border-radius:10px!important;
   background:linear-gradient(90deg,#e0efff,#ecf5ff)!important;
 }
 /* Em todos os módulos, campos em linha com os atalhos de cadastro. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top{
   display:grid!important;
   grid-template-columns:minmax(0,1fr) minmax(118px,34%)!important;
   gap:7px 8px!important;
   align-items:end!important;min-width:0!important;width:100%!important;
   margin:0 0 8px!important;padding:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top > *{
   min-width:0!important;max-width:100%!important;width:100%!important;
   margin:0!important;box-sizing:border-box!important;
 }
 /* Vendas/Orçamento têm Data, Cliente, Novo cliente, Veículo, Novo veículo. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top:not(:has(#agendaModuleTimeField)) > :first-child{
   grid-column:1/-1!important;grid-row:1!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top:not(:has(#agendaModuleTimeField)) > .g88-field:has(#client){
   grid-column:1!important;grid-row:2!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top:not(:has(#agendaModuleTimeField)) > #newClientBtn{
   grid-column:2!important;grid-row:2!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top:not(:has(#agendaModuleTimeField)) > .g88-field:has(#vehicle){
   grid-column:1!important;grid-row:3!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top:not(:has(#agendaModuleTimeField)) > #newVehicleBtn{
   grid-column:2!important;grid-row:3!important;
 }
 /* Na Agenda a Hora é inserida ao lado da Data, sem clonar os inputs. */
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top:has(#agendaModuleTimeField){
   grid-template-columns:minmax(0,1fr) minmax(110px,34%)!important;
   grid-template-rows:repeat(3,auto)!important;
   gap:7px 8px!important;margin:0 0 8px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top > .g88-field:first-child{
   grid-column:1!important;grid-row:1!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top > #agendaModuleTimeField{
   grid-column:2!important;grid-row:1!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top > .g88-field:has(#client){
   grid-column:1!important;grid-row:2!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top > #newClientBtn{
   grid-column:2!important;grid-row:2!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top > .g88-field:has(#vehicle){
   grid-column:1!important;grid-row:3!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top > #newVehicleBtn{
   grid-column:2!important;grid-row:3!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top .g88-field label{
   display:block!important;margin:0 0 3px!important;
   color:#132a44!important;font-size:11px!important;line-height:1.25!important;
   font-weight:750!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top :is(.g88-input,.g88-select){
   box-sizing:border-box!important;min-width:0!important;width:100%!important;max-width:100%!important;
   height:42px!important;min-height:42px!important;
   border-radius:9px!important;padding:0 8px!important;
   font-size:16px!important;line-height:1.2!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea .g88-row-top input[type="date"],
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea .g88-row-top input[type="time"]{
   padding:0 4px!important;font-size:14px!important;
   text-align:center!important;font-variant-numeric:tabular-nums!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea #vehicle{
   padding:0 20px 0 4px!important;font-size:11px!important;text-overflow:ellipsis!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top > :is(#newClientBtn,#newVehicleBtn){
   display:flex!important;align-items:center!important;justify-content:center!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   height:42px!important;min-height:42px!important;
   margin:0!important;padding:3px 5px!important;gap:4px!important;
   border:1px solid #bcd9ff!important;border-radius:9px!important;
   background:#e9f3ff!important;color:#1568cd!important;
   font:750 11.5px/1.2 Inter,'Segoe UI',Arial,sans-serif!important;
   white-space:nowrap!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-row-top > :is(#newClientBtn,#newVehicleBtn) .g88-btn-icon{
   display:grid!important;place-items:center!important;
   width:16px!important;height:16px!important;min-width:16px!important;flex:0 0 16px!important;
 }
 /* Serviços: o mesmo motor, linha de entrada e os dois botões LADO A LADO. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-services{
   width:100%!important;min-width:0!important;max-width:100%!important;
   padding:7px 7px 6px!important;border-radius:11px!important;
   background:#f5f9ff!important;border:1px solid #dce9f7!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading{
   display:flex!important;align-items:center!important;gap:7px!important;
   min-height:25px!important;margin:0 0 6px!important;
   padding:4px 7px!important;border-radius:8px!important;
   background:#e2efff!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading .g88-v95-icon{
   width:25px!important;height:25px!important;min-width:25px!important;
   font-size:18px!important;background:#d7e9ff!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading strong{
   font-size:13px!important;line-height:1.2!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #moduleArea .g88-v95-services-heading small{
   display:none!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-head,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line{
   display:grid!important;
   grid-template-columns:minmax(0,1fr) 80px 42px!important;
   gap:6px!important;align-items:center!important;
   box-sizing:border-box!important;width:100%!important;min-width:0!important;
 }
 /* O módulo Agenda tinha uma regra legada de 5 colunas com !important. */
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-head,
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line{
   display:grid!important;
   grid-template-columns:minmax(0,1fr) 80px 42px!important;
   gap:6px!important;
   min-width:0!important;max-width:100%!important;width:100%!important;
   grid-auto-flow:row!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-head{
   font-size:11px!important;line-height:1.15!important;margin:0 0 4px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line{
   grid-auto-rows:42px!important;grid-template-rows:42px 44px!important;
   margin:0 0 6px!important;align-items:stretch!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra){
   grid-template-rows:42px 44px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > *{
   box-sizing:border-box!important;min-width:0!important;
   max-width:100%!important;margin:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > .g88-field:first-child{
   grid-column:1!important;grid-row:1!important;width:100%!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > :is(#value,.g88-service-value){
   grid-column:2!important;grid-row:1!important;width:100%!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line > .g88-trash{
   grid-column:3!important;grid-row:1!important;
   width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;
   padding:0!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line .g88-input{
   min-width:0!important;height:42px!important;min-height:42px!important;
   width:100%!important;padding:0 6px!important;
   font-size:15px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > :is(#addService,#newServiceBtn){
   display:flex!important;align-items:center!important;justify-content:center!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   height:44px!important;min-height:44px!important;
   margin:0!important;padding:4px!important;gap:4px!important;
   border-radius:9px!important;
   font:750 11px/1.12 Inter,'Segoe UI',Arial,sans-serif!important;
   white-space:normal!important;text-align:center!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > #addService{
   grid-column:1!important;grid-row:2!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > #newServiceBtn{
   grid-column:2/4!important;grid-row:2!important;
 }
 /* Contra as regras históricas de 2/3 linhas que vinham depois da grade. */
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > #addService{
   grid-column:1!important;grid-row:2!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > #newServiceBtn{
   grid-column:2/4!important;grid-row:2!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > :is(#addService,#newServiceBtn) .g88-btn-icon{
   flex:0 0 14px!important;width:14px!important;height:14px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea :is(#client,#service,.g88-service-input)::placeholder{
   font-size:12px!important;color:#8191a5!important;opacity:1;
 }
 /* A tabela real é preservada; na primeira abertura sem itens ocupa menos altura. */
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table{
   width:100%!important;max-width:100%!important;min-width:0!important;
   margin:7px 0 0!important;overflow:hidden!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-table-title{
   display:flex!important;align-items:center!important;gap:6px!important;
   min-height:26px!important;padding:5px 7px!important;
   font-size:12px!important;line-height:1.15!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-table-title span{
   margin-left:auto;white-space:nowrap;font-size:11px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table th,
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table td{
   padding:5px 5px!important;font-size:10px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-subtotal{
   padding:6px 7px!important;min-height:30px!important;font-size:11px!important;
 }
 body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-subtotal strong{
   font-size:15px!important;
 }
 /* Interno nunca é enviado ao WhatsApp. */
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-obs{
   flex:0 0 auto!important;margin:8px 0 5px!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-obs label{
   display:block!important;margin:0 0 4px!important;
   font-size:11px!important;line-height:1.25!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-obs label span{
   font-size:10px!important;color:#657d92!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaNewObs{
   display:block!important;width:100%!important;max-width:100%!important;
   box-sizing:border-box!important;height:50px!important;min-height:50px!important;
   max-height:75px!important;padding:8px 10px!important;
   font-size:14px!important;line-height:1.3!important;resize:none!important;
   border-radius:9px!important;background:#fff!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-actions{
   display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr)!important;
   gap:8px!important;flex:0 0 auto!important;
   margin:auto 0 0!important;padding:8px 0 8px!important;
   border-top:1px solid #dfeaf7!important;
   background:#f8fbff!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agenda-new-actions > span,
 body.g88-v99-shared #agendaNewOverlay.open #agendaNewError{
   grid-column:1/-1!important;min-width:0!important;
   font-size:11px!important;overflow-wrap:anywhere!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-actions :is(#agendaNewCancel,#agendaNewSave){
   box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
   width:100%!important;min-width:0!important;
   height:44px!important;min-height:44px!important;
   margin:0!important;border-radius:9px!important;
   padding:4px 7px!important;font:750 12px/1.2 Inter,'Segoe UI',Arial,sans-serif!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaNewSave{
   background:#0869df!important;color:white!important;
 }
 /* Mesmo formulário também serve em Venda/Orçamento, mantendo seus próprios finais. */
}
/* Uma tela pequena, acessibilidade/teclado e múltiplos serviços precisam rolar,
   mas sem barra visual e sem esconder a confirmação. */
@media (max-width:360px), (max-height:700px) {
 body.g88-v99-shared #agendaNewOverlay.open .agenda-new-body{
   overflow-y:auto!important;
 }
 body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-row-top:has(#agendaModuleTimeField){
   grid-template-columns:minmax(0,1fr) 108px!important;
 }
}


/* GARAGEM88 — bloco único de Serviços aprovado em 25/10/2026. */
/* Só muda a apresentação do #moduleArea compartilhado.
   O botão #addService continua com a validação já existente no v95.
   A remoção e a edição seguem na tabela #g88V95ServiceRows.
   DOM, IDs, cálculo, validação e integração online permanecem intactos. */
@media (max-width:600px) {
  /* A janela já diz Novo agendamento: dispensa "Dados do agendamento". */
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-launch > h2 {
    display:none!important;
  }
  /* Um só cartão "Serviços" para entrada, lista, ações e subtotal. */
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-services {
    border-radius:12px 12px 0 0!important;
    border-bottom:0!important;
    padding:9px 9px 5px!important;
    margin:0!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading {
    background:transparent!important;
    min-height:23px!important;
    padding:0!important;
    margin:0 0 7px!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading .g88-v95-icon {
    display:none!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading strong{
    display:block!important;
    font-size:0!important;
    line-height:1!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading strong::after {
    content:"Serviços";
    display:block;
    font:800 14px/1.2 Inter,'Segoe UI',Arial,sans-serif!important;
    color:#122d4c;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-services-heading small {
    display:none!important;
  }
  /* Serviço + Valor + botão +; sem segunda linha para Adicionar. */
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) {
    grid-template-rows:42px 42px!important;
    gap:6px!important;
  }
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) {
    grid-template-columns:minmax(0,1fr) 80px 42px!important;
    grid-template-rows:42px 42px!important;
    grid-auto-flow:row!important;
    gap:6px!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > .g88-trash {
    display:none!important;
  }
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > .g88-trash {
    display:none!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > #addService,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > #addService {
    grid-column:3!important;
    grid-row:1!important;
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    margin:0!important;
    background:#1679f3!important;
    color:white!important;
    border:1px solid #1679f3!important;
    border-radius:9px!important;
    font-size:0!important;
    line-height:0!important;
    box-shadow:none!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea #addService > .g88-btn-icon {
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    flex:0 0 22px!important;
    color:white!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea #addService > .g88-btn-icon svg {
    width:22px!important;
    height:22px!important;
    stroke:currentColor!important;
  }
  /* O cadastro de novo serviço continua à disposição sem duplicar "Adicionar". */
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-service-line:not(.g88-service-extra) > #newServiceBtn,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-service-line:not(.g88-service-extra) > #newServiceBtn {
    grid-column:1/-1!important;
    grid-row:2!important;
    justify-self:stretch!important;
    width:100%!important;
    max-width:100%!important;
    min-height:42px!important;
    height:42px!important;
    padding:4px 9px!important;
    font-size:12px!important;
  }
  /* Lista existente sem segundo cabeçalho; subtotal logo após os serviços. */
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-v95-service-table {
    display:block!important;
    margin:0!important;
    width:100%!important;
    max-width:100%!important;
    border:1px solid #dce9f7!important;
    border-top:0!important;
    border-radius:0 0 12px 12px!important;
    overflow:hidden!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-table-title {
    display:none!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v99-table-scroll {
    max-height:140px!important;
    overflow-y:auto!important;
    scrollbar-width:none!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v99-table-scroll::-webkit-scrollbar{
    display:none!important;
    width:0!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table thead th {
    padding:5px 7px!important;
    line-height:1.2!important;
    font-size:10px!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table tbody td {
    padding:6px 7px!important;
    line-height:1.25!important;
    font-size:11px!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-subtotal {
    margin:0!important;
    padding:7px 9px!important;
    border-top:1px solid #dce9f7!important;
    min-height:33px!important;
  }
  /* O foco de teclado no + continua visível e acessível. */
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea #addService:focus-visible{
    outline:3px solid #0a3f9a!important;
    outline-offset:2px!important;
  }
}


/* GARAGEM88 — serviços mobile sem duplicação visual (25/10/2026). */
/* As linhas extras são o armazenamento editável dos serviços: NÃO removê-las do DOM.
   O próprio #g88V95ServiceRows já é a representação visual de cada serviço.
   Em telas estreitas, regras legadas de display:grid!important estavam tornando
   essas linhas visíveis duas vezes (e criando um espaço vazio sob o formulário). */
@media (max-width:600px) {
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-services .g88-service-line.g88-service-extra,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-services .g88-service-line.g88-service-extra {
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-services {
    height:auto!important;
    min-height:0!important;
    align-content:start!important;
  }
  /* Edição e exclusão permanecem na LISTA, lado a lado, sem duplicar os inputs. */
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table table {
    table-layout:fixed!important;
    width:100%!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table th:nth-child(2),
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table td:nth-child(2) {
    width:85px!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table th:nth-child(3),
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table td:nth-child(3) {
    width:85px!important;
    padding:4px 2px!important;
    white-space:nowrap!important;
    text-align:center!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table .g88-v95-row-btn {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0!important;
    margin:0 2px!important;
    font-size:15px!important;
    vertical-align:middle!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table tbody td {
    height:42px!important;
    vertical-align:middle!important;
  }
  body:is(.g88-v95-vendas,.g88-v99-shared) #moduleArea .g88-v95-service-table .g88-v99-table-scroll{
    min-height:0!important;
    height:auto!important;
    max-height:140px!important;
  }
}


/* Alinhamento pontual do + — Agenda e Orçamento mobile; demais componentes intactos. */
@media (max-width:600px) {
  body.g88-v99-shared #moduleArea .g88-services .g88-service-line:not(.g88-service-extra) > #addService,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-services .g88-service-line:not(.g88-service-extra) > #addService {
    position:relative!important;display:block!important;
    box-sizing:border-box!important;
    grid-column:3!important;grid-row:1!important;
    width:42px!important;min-width:42px!important;max-width:42px!important;
    height:42px!important;min-height:42px!important;max-height:42px!important;
    padding:0!important;margin:0!important;
    transform:none!important;align-self:center!important;justify-self:center!important;
    font-size:0!important;line-height:0!important;
  }
  body.g88-v99-shared #moduleArea .g88-services #addService > .g88-btn-icon,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-services #addService > .g88-btn-icon {
    display:none!important;
  }
  body.g88-v99-shared #moduleArea .g88-services #addService::before,
  body.g88-v99-shared #agendaNewOverlay.open #agendaModuleHost #moduleArea .g88-services #addService::before {
    content:""!important;display:block!important;position:absolute!important;
    top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;
    width:21px!important;height:21px!important;margin:0!important;padding:0!important;
    background:linear-gradient(#fff,#fff) center/2px 21px no-repeat,
      linear-gradient(#fff,#fff) center/21px 2px no-repeat!important;
    pointer-events:none!important;
  }
}
