:root{--cor-verde-escuro: #1e3a2b;--cor-verde-escuro-alt: #2f4a37;--cor-verde-oliva: #6b7f4e;--cor-oliva-botao: #607246;--cor-bege-fundo: #f6f4ee;--cor-bege-destaque: #e9e6d8;--cor-terracota: #c47a44;--cor-terracota-texto: #a66739;--cor-marrom: #6a4a31;--fonte-titulo: "Playfair Display", serif;--fonte-corpo: "Montserrat", sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--fonte-corpo);background:var(--cor-bege-fundo);color:var(--cor-verde-escuro)}.cabecalho{display:flex;flex-direction:column;align-items:center;padding:24px;text-align:center}.cabecalho img.logo{height:80px;margin-bottom:12px}.cabecalho h1{font-family:var(--fonte-titulo);color:var(--cor-verde-escuro);margin:0}.menu-categorias{position:sticky;top:0;z-index:1;display:flex;gap:8px;overflow-x:auto;padding:12px 16px;background:var(--cor-bege-fundo);border-bottom:1px solid var(--cor-bege-destaque)}.menu-categorias a{flex:0 0 auto;background:#fff;color:var(--cor-verde-escuro);border:1px solid var(--cor-bege-destaque);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap}.categoria{display:flex;flex-direction:column;margin:0 12px 20px;background:#fff;border-radius:12px;overflow:hidden;scroll-margin-top:60px}.categoria .faixa-categoria{background:var(--cor-verde-escuro);color:var(--cor-bege-destaque);padding:16px 20px;display:flex;flex-direction:column;justify-content:center}.categoria .faixa-categoria h2{font-family:var(--fonte-titulo);margin:0 0 8px}.grade-produtos{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:16px;flex:1}@media (min-width: 640px){.categoria{flex-direction:row;margin:0 16px 24px}.categoria .faixa-categoria{min-width:160px;padding:20px}.grade-produtos{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;padding:20px}}.produto{text-align:left}.produto img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:var(--cor-bege-destaque)}.produto .preco{color:var(--cor-terracota-texto);font-weight:600}.seletor-quantidade{display:flex;align-items:center;gap:8px}.seletor-quantidade button{background:var(--cor-oliva-botao);color:#fff;border:none;border-radius:6px;width:40px;height:40px;font-size:18px;cursor:pointer}.resumo-carrinho{position:sticky;bottom:0;background:var(--cor-verde-escuro);color:#fff;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:4px 12px;flex-wrap:wrap;font-size:14px}.resumo-carrinho p{margin:0}.resumo-carrinho button{background:var(--cor-terracota-texto);color:#fff;border:none;border-radius:8px;padding:12px 20px;min-height:44px;cursor:pointer}.aviso-frete{color:var(--cor-bege-destaque)}#entrada-codigo[hidden]{display:none}#entrada-codigo{max-width:320px;margin:80px auto;padding:24px;background:#fff;border-radius:12px;display:flex;flex-direction:column;gap:12px}#entrada-codigo label{display:flex;flex-direction:column;gap:6px;font-weight:500}#painel-admin{max-width:640px;margin:0 auto;padding:24px 16px 60px}#painel-admin h2{font-family:var(--fonte-titulo);color:var(--cor-verde-escuro);margin:32px 0 16px}#painel-admin h2:first-child{margin-top:0}.form-produto,#form-configuracoes{background:#fff;border-radius:12px;padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.form-produto label,#form-configuracoes label{display:flex;flex-direction:column;gap:4px;font-size:14px}.form-produto label:has(input[type=checkbox]),#form-configuracoes label:has(input[type=checkbox]){flex-direction:row;align-items:center;gap:8px}#entrada-codigo input,.form-produto input,#form-configuracoes input{border:1px solid var(--cor-bege-destaque);border-radius:6px;padding:8px 10px;font-family:var(--fonte-corpo)}#entrada-codigo button,.form-produto button,#form-configuracoes button,#secao-produtos>button{background:var(--cor-oliva-botao);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-family:var(--fonte-corpo);font-weight:500;cursor:pointer;align-self:flex-start}#secao-produtos>button{margin-top:8px}.erro-envio{color:#b3261e;font-size:14px}.aviso-fora-de-area{background:var(--cor-bege-destaque);border-radius:8px;padding:12px;margin:8px 0}.aviso-fora-de-area a{display:inline-block;margin-top:8px;background:var(--cor-oliva-botao);color:#fff;border-radius:8px;padding:10px 16px;text-decoration:none;font-weight:500}#modal-checkout{border:none;border-radius:16px;padding:20px;width:min(400px,calc(100vw - 32px));max-height:85vh;overflow-y:auto;font-family:var(--fonte-corpo);color:var(--cor-verde-escuro)}#modal-checkout::backdrop{background:#1e3a2b80}#etapa-identificacao label{display:flex;flex-direction:column;gap:4px;font-size:14px;margin-bottom:12px}#etapa-identificacao input{border:1px solid var(--cor-bege-destaque);border-radius:6px;padding:8px 10px;font-family:var(--fonte-corpo);font-size:16px}#etapa-identificacao .aviso-pagamento{font-size:14px;background:var(--cor-bege-destaque);padding:8px 12px;border-radius:6px;margin:0 0 12px}#etapa-identificacao button[data-acao=confirmar]{width:100%;background:var(--cor-oliva-botao);color:#fff;border:none;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:500;cursor:pointer}#etapa-identificacao button[data-acao=confirmar]:disabled{opacity:.6;cursor:default}
