/* Acabamento comum: preserva os layouts e a ergonomia de cada módulo. */
html{font-size:16px;scrollbar-color:#7a9c8c #edf4ef;scrollbar-width:thin}
body,button,input,select,textarea,body :is(h1,h2,h3,h4,p,span,strong,small,a,label,div,th,td){font-family:Arial,Helvetica,sans-serif!important}
*,*::before,*::after{box-sizing:border-box}
body{line-height:1.45}
button,input,select,textarea{max-width:100%}
button{touch-action:manipulation}
input,select,textarea{font-size:clamp(1rem,.96rem + .15vw,1.0625rem)!important}
button:focus-visible,a:focus-visible{outline:3px solid #188450;outline-offset:3px}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:#8aa997;border:2px solid #edf4ef;border-radius:8px}
::-webkit-scrollbar-track{background:#edf4ef}
.tabs,.category-rail{scrollbar-width:thin!important;overscroll-behavior-x:contain}
.tabs::-webkit-scrollbar,.category-rail::-webkit-scrollbar{display:block!important;height:7px}
.tab{flex-shrink:0;white-space:normal;min-width:max-content;min-height:44px}
.side-menu-item[disabled],.tab[disabled],.force-card[aria-disabled=true]{opacity:.65;filter:grayscale(1);cursor:not-allowed;transform:none!important}
.institution-label{display:flex;flex-direction:column;gap:2px;text-align:left}
.institution-label small{font-size:.75rem;color:#53645b;font-weight:400;display:block}
.customer-services-intro{background:#e9f6ed;border:1px solid #b9d9c3;border-radius:16px;padding:18px;margin:18px 0}
.customer-services-intro h2{font-size:clamp(1.2rem,1.1rem + .4vw,1.6rem);margin:0 0 8px;color:#0b5134}
.customer-services-intro p{margin:0;line-height:1.6;color:#405f50}
.customer-services-shortcut{display:block;margin:14px 0;padding:14px;border-radius:12px;background:#0b5134;color:#fff;font-weight:700;text-decoration:none}
.customer-service-card{cursor:default;overflow-wrap:anywhere}
.customer-service-card-head{flex-wrap:wrap}
.customer-service-items{padding-left:20px;margin:10px 0}
.customer-service-detail .service-piece{padding:12px 0;border-bottom:1px solid #d7e8dc;line-height:1.65}
.customer-service-detail .service-piece p{margin:4px 0}
.customer-service-detail button,.customer-service-card button{min-height:44px;padding:10px 14px;border:1px solid #a9cbb4;border-radius:10px;color:#0b5134;background:#f5fbf7;cursor:pointer}
.customer-service-card small{line-height:1.65}
.produto-edicao-card,.confirmacao-lista,.sf-service-grid>*{min-width:0}
.chip-tamanho{min-height:44px;min-width:50px;white-space:normal}
.confirmacao-linha{flex-wrap:wrap;gap:8px;overflow-wrap:anywhere}
.price-variant-meta{font-size:.8rem;display:block;font-weight:400}
.price-policy-note{padding:10px 12px;border-radius:10px;background:#fff8dc;color:#694c05;font-size:.875rem}
@media(max-width:600px){
  .sf-module h1{font-size:clamp(1.25rem,5vw,1.7rem)}
  .sf-module h2{font-size:clamp(1.1rem,4.5vw,1.4rem)}
  .modal-content,.modal-conteudo,.produto-edicao-card{max-width:100%;overflow-wrap:anywhere}
  .sf-module :is(.tabs,.tab-bar,.nav-tabs){overflow-x:auto;flex-wrap:nowrap;max-width:100%;gap:8px}
  .sf-module :is(.tabs,.tab-bar,.nav-tabs)>button{flex:0 0 auto;white-space:nowrap}
  .sf-module .table-wrap{max-width:100%;overflow-x:auto}
  .customer-service-card-head{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Correções de interação: sem animação contínua nem bibliotecas adicionais. */
*{scrollbar-width:thin;scrollbar-color:#789f89 #edf4ef}
.sf-store :is(button,a,[role=button]):not([disabled]):not([aria-disabled=true]){cursor:pointer;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;-webkit-tap-highlight-color:#1b824426}
.sf-store :is(button,a,[role=button]):not([disabled]):not([aria-disabled=true]):active{transform:scale(.985)}
.sf-store :is(.product-card,.force-card,.customer-service-card,.service-card){transition:box-shadow .18s ease,transform .18s ease;border-color:#d8e7de}
.sf-store :is(.hero h1,.section-title,.customer-services-intro h2){text-wrap:balance}
@media(hover:hover){
 .sf-store :is(.product-card,.force-card:not([aria-disabled=true]),.service-card):hover{transform:translateY(-2px);box-shadow:0 8px 22px #16452913}
 .sf-store :is(button,.side-menu-item):not([disabled]):hover{box-shadow:0 3px 10px #16452916}
}
.cliente-sugestoes{z-index:80;max-height:280px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #b8d0c0;border-radius:12px;background:#fff;box-shadow:0 8px 24px #13462920}
.cliente-sugestoes button[data-customer-key]{display:flex;flex-direction:column;gap:3px;width:100%;min-height:56px;padding:12px;text-align:left;border:0;border-bottom:1px solid #e4ede7;background:#fff;color:#183e29;cursor:pointer}
.cliente-sugestoes button[data-customer-key] span{color:#526a5c;font-size:.875rem}
.cliente-sugestoes button[data-customer-key]:is(:hover,:focus-visible){background:#eaf5ee;outline:2px solid #218148;outline-offset:-2px}
.cliente-sugestoes .cad-novo{width:100%;padding:12px;border:0;color:#0b5134;background:#f2f8f4;text-align:left;cursor:pointer}
.cliente-chip{gap:12px!important;align-items:center!important;background:#e8f5ed!important;border:1px solid #9cc8ac!important;padding:12px!important;border-radius:12px!important;overflow-wrap:anywhere}
.cliente-chip>span{display:flex;flex-direction:column;min-width:0;gap:3px}
.cliente-chip small{font-size:.75rem;color:#456550}
.cliente-chip button{min-height:44px;flex-shrink:0;cursor:pointer}
@media(prefers-reduced-motion:reduce){.sf-store *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sf-store :is(button,a,.product-card,.force-card,.service-card){transform:none!important}}
