/* ============================================================
   LottaAPP — estilo (identidade Lotta: verde petróleo + bege)
   ============================================================ */
:root{
  --petroleo:#1f5b5b;
  --petroleo-esc:#164545;
  --bege:#f3e2d6;
  --bege-claro:#faf1e9;
  --rosa:#ec4899;
  --texto:#23302f;
  --cinza:#6b7775;
  --linha:#e7ddd4;
  --branco:#fff;
  --sombra:0 6px 22px rgba(0,0,0,.10);
  --raio:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
body{
  font-family:'Segoe UI',system-ui,-apple-system,sans-serif;
  color:var(--texto);
  background:var(--bege-claro);
  line-height:1.45;
}
.container{max-width:1180px;margin:0 auto;padding:0 18px}
a{color:inherit;text-decoration:none}

/* ---- Topbar marquee ---- */
.topbar{background:var(--petroleo-esc);color:#cfe7e3;font-size:.82rem;overflow:hidden;white-space:nowrap}
.topbar__marquee{display:inline-block;padding:6px 0;animation:marquee 22s linear infinite}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- Header ---- */
.header{background:var(--petroleo-esc);color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 2px 12px rgba(0,0,0,.25)}
.header__row{display:flex;align-items:center;gap:16px;padding:12px 18px}
.logo{display:flex;align-items:center;flex-shrink:0}
.logo img{height:42px;width:auto;display:block;border-radius:10px}
.busca{flex:1;max-width:560px;margin:0 auto;position:relative}
.busca input{
  width:100%;border:none;border-radius:30px;padding:11px 18px 11px 44px;font-size:.92rem;
  background:rgba(255,255,255,.12);color:#fff;transition:background .2s
}
.busca input::placeholder{color:rgba(255,255,255,.55)}
.busca input:focus{outline:none;background:rgba(255,255,255,.2)}
.busca::before{content:"🔍";position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:.9rem;pointer-events:none}
.header__acoes{display:flex;align-items:center;gap:20px;flex-shrink:0}
.acao{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;opacity:.9;transition:opacity .15s}
.acao:hover{opacity:1}
.acao__icon{font-size:1.2rem}
.acao--cart{position:relative}
.cart-count{
  background:var(--rosa);color:#fff;border-radius:30px;font-size:.72rem;font-weight:800;
  min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;
  position:absolute;top:-8px;right:-10px
}

/* ---- Hero banner dinâmico ---- */
.hero-banner{position:relative;overflow:hidden;background:#111;width:100%}
.hero-banner__img{width:100%;height:auto;max-height:520px;object-fit:contain;object-position:center;display:block}
.hero-banner__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:linear-gradient(90deg,rgba(0,0,0,.6) 40%,transparent);padding:48px 60px}
.hero-banner__titulo{color:#fff;font-size:2.8rem;font-weight:900;line-height:1.1;margin:0 0 12px;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.hero-banner__sub{color:rgba(255,255,255,.88);font-size:1.1rem;margin:0 0 24px;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.hero-banner__cta{display:inline-block;background:var(--petroleo);color:#fff;font-weight:800;font-size:.95rem;padding:13px 28px;border-radius:8px;letter-spacing:.5px;transition:background .15s}
.hero-banner__cta:hover{background:var(--petroleo-esc)}

/* ---- Hero padrão (sem banner) ---- */
.hero{
  background:linear-gradient(135deg,var(--petroleo-esc) 0%,var(--petroleo) 60%,#2d7a6a 100%);
  min-height:360px;display:flex;align-items:center;position:relative;overflow:hidden
}
.hero::after{content:"";position:absolute;right:-60px;top:-60px;width:420px;height:420px;background:rgba(255,255,255,.04);border-radius:50%}
.hero__overlay{width:100%;padding:56px 0}
.hero__content h1{color:#fff;font-size:3rem;font-weight:900;line-height:1.1;margin-bottom:14px}
.hero__content p{color:rgba(255,255,255,.8);font-size:1.05rem;max-width:460px;margin-bottom:28px}
.hero__cta{display:inline-block;background:#fff;color:var(--petroleo-esc);font-weight:800;font-size:.95rem;padding:13px 30px;border-radius:8px;letter-spacing:.3px;transition:transform .15s,box-shadow .15s}
.hero__cta:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.2)}

/* ---- Diferenciais ---- */
.diferenciais{background:#fff;border-bottom:1px solid var(--linha);padding:14px 0}
.diferenciais__grid{
  display:flex;gap:0;
  overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;
  scrollbar-width:none
}
.diferenciais__grid::-webkit-scrollbar{display:none}
.dif{
  display:flex;align-items:center;gap:10px;padding:8px 20px;
  flex-shrink:0;scroll-snap-align:start;
  border-right:1px solid var(--linha)
}
.dif:last-child{border-right:none}
.dif__icon{font-size:1.6rem;flex-shrink:0}
@media(min-width:640px){
  .diferenciais__grid{justify-content:center}
  .dif{padding:8px 28px}
}
.dif strong{display:block;font-size:.88rem;color:var(--texto)}
.dif small{display:block;font-size:.76rem;color:var(--cinza);margin-top:1px}

/* ---- Vitrine ---- */
.secao-titulo{text-align:center;margin:34px 0 22px;font-size:1.5rem;position:relative}
.secao-titulo::after{content:"";display:block;width:60px;height:3px;background:var(--rosa);margin:10px auto 0;border-radius:3px}
.grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:22px;padding-bottom:50px
}
.card{
  background:var(--branco);border-radius:var(--raio);overflow:hidden;
  box-shadow:var(--sombra);display:flex;flex-direction:column;transition:transform .15s
}
.card:hover{transform:translateY(-4px)}
/* ---- Card destaque ---- */
.card--destaque{border:2px solid #f5c842;box-shadow:0 8px 28px rgba(245,200,66,.28)}
.card--destaque .card__nome{font-weight:700}
.card__ribbon{
  position:absolute;top:0;left:0;z-index:4;
  background:linear-gradient(135deg,#f5c842 60%,#e0a800);
  color:#5a3e00;font-size:.68rem;font-weight:800;letter-spacing:.5px;
  padding:5px 14px 5px 10px;
  clip-path:polygon(0 0,100% 0,85% 100%,0 100%);
  text-transform:uppercase
}
/* ---- Carrossel no card ---- */
.card__img{position:relative;aspect-ratio:1/1;background:var(--bege);display:flex;align-items:center;justify-content:center;overflow:hidden}
.card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .18s}
.card__slide-btn{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  background:rgba(0,0,0,.42);color:#fff;border:none;cursor:pointer;
  width:30px;height:44px;display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;line-height:1;opacity:0;transition:opacity .15s;border-radius:4px
}
.card__slide-btn--prev{left:0;border-radius:0 4px 4px 0}
.card__slide-btn--next{right:0;border-radius:4px 0 0 4px}
.card__img:hover .card__slide-btn{opacity:1}
.card__dots{position:absolute;bottom:7px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:5}
.card__dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.5);transition:background .15s}
.card__dot.ativo{background:#fff}
.badge{position:absolute;top:10px;left:10px;background:var(--petroleo);color:#fff;font-size:.7rem;font-weight:700;padding:4px 10px;border-radius:20px}
.card__body{padding:16px;display:flex;flex-direction:column;gap:6px;flex:1}
.card__nome{font-size:1.05rem}
.card__preco{color:var(--cinza);font-size:.9rem}
.card__preco strong{color:var(--texto);font-size:1.25rem}
.card__atacado{font-size:.78rem;color:var(--petroleo);font-weight:600}
.card .btn{margin-top:auto}

.produto-foto{width:100%;height:auto;object-fit:cover;display:block}

/* placeholder de imagem */
.placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--petroleo)}
.placeholder span{font-size:3.4rem;font-weight:800;opacity:.5}
.placeholder small{letter-spacing:2px;text-transform:uppercase;font-size:.7rem;color:var(--cinza)}

/* ---- Botões ---- */
.btn{
  border:none;cursor:pointer;border-radius:9px;font-weight:700;font-size:.92rem;
  padding:11px 16px;transition:filter .15s
}
.btn:hover{filter:brightness(1.06)}
.btn--primary{background:var(--petroleo);color:#fff}
.btn--grande{width:100%;padding:14px;font-size:1rem;margin-top:6px}

/* ---- Modal ---- */
.modal{
  position:fixed;inset:0;background:rgba(0,0,0,.5);display:none;
  align-items:flex-start;justify-content:center;z-index:50;padding:24px;overflow:auto
}
.modal.aberto{display:flex}
.modal__box{
  background:#fff;border-radius:18px;max-width:880px;width:100%;position:relative;
  box-shadow:var(--sombra);margin:auto
}
.modal__fechar{
  position:absolute;top:12px;right:14px;border:none;background:#f0eae3;border-radius:50%;
  width:38px;height:38px;font-size:1.4rem;cursor:pointer;z-index:2
}
.produto{display:grid;grid-template-columns:1fr 1fr;gap:0}
.produto__foto{background:var(--bege);border-radius:18px 0 0 18px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:340px;padding:16px;gap:0}
.produto__info{padding:30px 28px}
.tag{display:inline-block;background:var(--bege);color:var(--petroleo);font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:20px;margin-bottom:8px}
.produto__info h2{font-size:1.5rem;margin-bottom:10px}
.produto__preco{font-size:1.7rem;font-weight:800;color:var(--petroleo)}
.produto__preco span{font-size:.85rem;font-weight:500;color:var(--cinza)}
.produto__total{color:var(--cinza);font-size:.92rem;margin-bottom:6px}
.produto__dica{color:var(--rosa);font-size:.82rem;font-weight:600;margin-bottom:16px}

.campo{margin-bottom:16px}
.campo>label{display:block;font-weight:700;font-size:.85rem;margin-bottom:7px;color:var(--texto)}

/* chips (tamanho, manga, tecido) */
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{
  border:1.5px solid var(--linha);background:#fff;border-radius:8px;padding:7px 11px;
  font-size:.82rem;cursor:pointer;transition:all .12s
}
.chip em{font-style:normal;color:var(--rosa);font-size:.74rem}
.chip:hover{border-color:var(--petroleo)}
.chip.ativo{background:var(--petroleo);color:#fff;border-color:var(--petroleo)}
.chip.ativo em{color:#ffd}

/* swatches (cor) */
.swatches{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.swatch{
  width:34px;height:34px;border-radius:50%;border:3px solid transparent;cursor:pointer;
  background:var(--c);transition:transform .12s,box-shadow .12s;
  box-shadow:0 0 0 2px #fff,0 0 0 4px transparent;
  flex-shrink:0
}
.swatch--borda{box-shadow:0 0 0 2px #fff,0 0 0 4px transparent,inset 0 0 0 1px #ccc}
.swatch:hover{transform:scale(1.15)}
.swatch.ativo{
  transform:scale(1.18);
  box-shadow:0 0 0 3px #fff,0 0 0 5.5px var(--petroleo);
}
.chip--esg{opacity:.4;cursor:not-allowed;text-decoration:line-through;pointer-events:none}
.swatch--esg{opacity:.25;cursor:not-allowed;pointer-events:none;filter:grayscale(1)}

/* quantidade */
.qtd{display:inline-flex;align-items:center;border:1.5px solid var(--linha);border-radius:9px;overflow:hidden}
.qtd button{border:none;background:#f0eae3;width:40px;height:42px;font-size:1.2rem;cursor:pointer}
.qtd input{width:60px;height:42px;border:none;text-align:center;font-size:1rem}

/* ficha */
.ficha{margin-top:18px;border-top:1px solid var(--linha);padding-top:14px;font-size:.86rem;color:var(--cinza)}
.ficha summary{cursor:pointer;font-weight:700;color:var(--texto);margin-bottom:8px}
.ficha p{margin:6px 0}
.ficha__atacado{background:var(--bege-claro);padding:10px;border-radius:8px;color:var(--petroleo)}
.ficha__atacado a{color:var(--rosa);font-weight:700}

/* ---- Footer ---- */
.footer{background:var(--petroleo-esc);color:#cfe7e3;padding:28px 0;text-align:center;font-size:.88rem;margin-top:30px}
.footer strong{color:#fff}

/* ---- Toast ---- */
#toast{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);
  background:var(--petroleo);color:#fff;padding:13px 22px;border-radius:30px;
  box-shadow:var(--sombra);opacity:0;pointer-events:none;transition:all .25s;z-index:80;font-weight:600
}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---- Conta / Auth ---- */
.conta{max-width:460px;margin:40px auto;padding-bottom:60px}
.auth-card{background:#fff;border-radius:16px;box-shadow:var(--sombra);padding:26px 24px}
.aviso{background:#fff4e5;border:1px solid #f0c98a;color:#8a5a00;padding:12px 14px;border-radius:10px;margin-bottom:16px;font-size:.88rem}
.aviso code{background:#fde9c8;padding:1px 5px;border-radius:4px}
.tabs{display:flex;gap:6px;margin-bottom:20px;background:#f0eae3;border-radius:10px;padding:5px}
.tab{flex:1;border:none;background:transparent;padding:10px;border-radius:8px;font-weight:700;cursor:pointer;color:var(--cinza)}
.tab.ativo{background:#fff;color:var(--petroleo);box-shadow:0 2px 6px rgba(0,0,0,.08)}
.auth-form{display:flex;flex-direction:column;gap:13px}
.auth-form label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:700;color:var(--texto)}
.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text],.auth-form input[type=tel]{
  border:1.5px solid var(--linha);border-radius:9px;padding:11px 12px;font-size:.95rem;font-weight:400
}
.auth-form input:focus{outline:none;border-color:var(--petroleo)}
.auth-form input:disabled{background:#f5f1ec;color:var(--cinza)}
.check{flex-direction:row!important;align-items:flex-start;gap:8px;font-weight:400;font-size:.85rem;background:var(--bege-claro);padding:11px;border-radius:9px}
.check input{margin-top:2px}
.btn--google{background:#fff;border:1.5px solid var(--linha);color:var(--texto);display:flex;align-items:center;justify-content:center;gap:8px}
.btn--google span{font-weight:800;color:#4285f4}
.btn--sair{background:transparent;border:1.5px solid var(--linha);color:var(--cinza);width:100%;margin-top:14px}
.link-pequeno{font-size:.82rem;color:var(--petroleo);text-align:center}
.auth-msg{margin-top:12px;font-size:.88rem;text-align:center;min-height:1em}
/* ---- Modal produto (loja privada) ---- */
.produto-modal-box{max-width:880px;width:100%;max-height:92vh;overflow-y:auto;position:relative}
/* ---- Configurador de Patches ---- */
.patch-modal-box{padding:28px 24px 24px;max-width:560px;width:100%;overflow-y:auto;max-height:90vh}
.patch-titulo{font-size:1.2rem;font-weight:800;color:var(--petroleo);margin:0 0 14px}
.patch-foto{width:100%;max-height:160px;object-fit:cover;border-radius:12px;margin-bottom:18px}
.patch-bloco{margin-bottom:16px}
.patch-label{display:block;font-size:.78rem;font-weight:700;color:var(--petroleo);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}
.patch-chips{display:flex;flex-wrap:wrap;gap:7px}
.patch-chip{border:2px solid var(--linha);background:#fff;border-radius:8px;padding:7px 13px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;color:var(--texto)}
.patch-chip:hover{border-color:var(--petroleo);color:var(--petroleo)}
.patch-chip.ativo{border-color:var(--petroleo);background:var(--petroleo);color:#fff}
.patch-check{display:flex;align-items:center;gap:8px;font-size:.85rem;margin-bottom:16px;cursor:pointer}
.patch-check em{color:var(--cinza);font-style:normal}
.patch-qtd{display:flex;align-items:center;gap:0;border:2px solid var(--linha);border-radius:10px;overflow:hidden;width:fit-content;margin-bottom:8px}
.patch-qtd button{background:#f5f0eb;border:none;width:40px;height:40px;font-size:1.3rem;cursor:pointer;font-weight:700;color:var(--petroleo)}
.patch-qtd input{border:none;width:60px;text-align:center;font-size:1rem;font-weight:700;outline:none}
.patch-faixas{font-size:.75rem;color:var(--cinza);margin-top:4px;line-height:1.6}
.patch-resumo{background:var(--bege-claro);border-radius:12px;padding:14px 16px;margin:16px 0;display:flex;flex-direction:column;gap:4px}
.patch-resumo__tipo{font-weight:700;font-size:.9rem;color:var(--texto)}
.patch-resumo__tipo small{font-weight:400;color:var(--cinza);font-size:.78rem}
.patch-resumo__preco{font-size:.9rem;color:var(--cinza)}
.patch-resumo__total{font-size:1.2rem;font-weight:800;color:var(--petroleo)}
.patch-resumo__aviso{font-size:.74rem;color:#c0392b;margin-top:4px}
.patch-resumo__aviso a{color:#c0392b;font-weight:700}
.patch-resumo__desc{font-size:.74rem;color:#1e8449;margin-top:4px;font-weight:600}
.patch-check--desc{background:#eafaf1;border-radius:8px;padding:8px 10px}
.patch-galeria{margin-bottom:12px}
.patch-foto-main{width:100%;max-height:220px;object-fit:contain;border-radius:10px;display:block;background:var(--bege)}
/* ---- /Configurador de Patches ---- */

/* ---- Gerenciador de Tabela de Patches (admin) ---- */
.pt-row{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--linha)}
.pt-row__info{flex:1;min-width:0}
.pt-row__info strong{font-size:.95rem}
.pt-tiers{font-size:.72rem;color:var(--cinza);margin-top:4px;line-height:1.7;word-break:break-word}
.pt-tier-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;align-items:end;margin-bottom:8px}
.pt-tier-row label{display:flex;flex-direction:column;font-size:.75rem;font-weight:600;color:var(--cinza);gap:3px}
.pt-tier-row input{padding:7px 9px;border:1.5px solid var(--linha);border-radius:8px;font-size:.85rem;width:100%}
.pt-sub-bloco{border:1.5px solid var(--linha);border-radius:10px;padding:12px;margin-bottom:10px}
.pt-sub-top{display:flex;gap:8px;align-items:center;margin-bottom:10px;flex-wrap:wrap}
.pt-sub-top input{flex:1;min-width:120px;padding:7px 9px;border:1.5px solid var(--linha);border-radius:8px;font-size:.85rem}
/* ---- /Gerenciador de Tabela de Patches ---- */

/* ---- Gerenciador de Categorias ---- */
.cat-row{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-bottom:1px solid var(--linha);font-size:.9rem;gap:8px}
.cat-row:last-child{border-bottom:none}
/* ---- /Gerenciador de Categorias ---- */

/* ---- Cards de clientes (admin) ---- */
.cli-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;margin-top:8px}
.cli-card{background:#fff;border-radius:14px;border:1.5px solid var(--linha);padding:16px 18px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:box-shadow .15s,border-color .15s}
.cli-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.09);border-color:var(--petroleo)}
.cli-card__avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:#fff;flex-shrink:0;letter-spacing:.5px}
.av--atacado{background:var(--petroleo)}
.av--pend{background:#e67e22}
.av--bloq{background:#e74c3c}
.av--varejo{background:#7f8c8d}
.cli-card__body{flex:1;min-width:0}
.cli-card__nome{font-weight:700;font-size:.95rem;color:var(--texto);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cli-card__badges{display:flex;gap:5px;margin:4px 0}
.cli-badge{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px}
.cli-badge--atac{background:#d5f0eb;color:#1f5b5b}
.cli-badge--var{background:#f0f0f0;color:#555}
.cli-badge--pend{background:#fef3cd;color:#856404}
.cli-badge--bloq{background:#fde8e8;color:#c0392b}
.cli-card__info{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px}
.cli-card__info span{font-size:.75rem;color:var(--cinza);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.cli-card__btn{flex-shrink:0;background:none;border:1.5px solid var(--linha);border-radius:8px;padding:7px 12px;font-size:.78rem;font-weight:600;color:var(--petroleo);cursor:pointer;white-space:nowrap;transition:all .15s}
.cli-card:hover .cli-card__btn{background:var(--petroleo);color:#fff;border-color:var(--petroleo)}
/* ---- /Cards de clientes ---- */

/* ---- Avatar upload (conta e admin) ---- */
.avatar-upload-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:18px}
.avatar-upload{width:90px;height:90px;border-radius:50%;background:var(--bege);border:2.5px dashed var(--linha);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:border-color .18s;flex-shrink:0}
.avatar-upload:hover{border-color:var(--petroleo)}
.avatar-upload__img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.avatar-upload__icon{font-size:1.8rem;pointer-events:none}
.avatar-upload__label{font-size:.75rem;color:var(--cinza);font-weight:600}
/* ---- /Avatar upload ---- */

/* =============== POS — Frente de Caixa =============== */
.pos-modal-box{max-width:98vw!important;width:98vw!important;height:92vh;display:flex;flex-direction:column;padding:0!important;overflow:hidden}
.pos-modal-box>.modal__fechar{position:absolute;top:12px;right:14px;z-index:2}
.pos-wrap{display:grid;grid-template-columns:1fr 340px;height:100%;overflow:hidden}
.pos-esq{display:flex;flex-direction:column;overflow:hidden;border-right:1.5px solid var(--linha);background:var(--bege-claro)}
.pos-cats{display:flex;flex-wrap:wrap;gap:6px;padding:14px 14px 10px;border-bottom:1px solid var(--linha);background:#fff}
.pos-cat-chip{padding:5px 14px;border-radius:20px;border:1.5px solid var(--linha);background:#fff;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s}
.pos-cat-chip.ativo{background:var(--petroleo);color:#fff;border-color:var(--petroleo)}
.pos-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;padding:12px;overflow-y:auto;flex:1;align-content:start}
.pos-card{background:#fff;border-radius:12px;border:2px solid var(--linha);cursor:pointer;overflow:hidden;transition:all .15s;display:flex;flex-direction:column}
.pos-card:hover{border-color:var(--petroleo);box-shadow:0 4px 12px rgba(0,0,0,.12);transform:translateY(-2px)}
.pos-card.ativo{border-color:var(--petroleo);box-shadow:0 0 0 3px rgba(31,91,91,.18)}
.pos-card__foto{width:100%;aspect-ratio:1;object-fit:cover}
.pos-card__sem-foto{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:2rem;background:var(--bege)}
.pos-card__nome{font-size:.75rem;font-weight:700;padding:6px 8px 2px;color:var(--texto)}
.pos-card__preco{font-size:.8rem;color:var(--petroleo);font-weight:700;padding:0 8px 8px}
.pos-picker{background:#fff;border-top:2px solid var(--petroleo);padding:14px}
.pos-picker__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.pos-picker__head strong{font-size:.95rem}
.pos-picker__close{background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--cinza);line-height:1}
.pos-picker__op{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:.82rem;font-weight:700}
.pos-picker__op select{flex:1;padding:7px 8px;border:1.5px solid var(--linha);border-radius:8px;font-size:.82rem}
.pos-picker__foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.pos-picker__qtd-wrap{display:flex;align-items:center;gap:4px}
.pos-picker__qtd-wrap button{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--linha);background:#fff;font-size:1rem;cursor:pointer;font-weight:700}
.pos-picker__qtd-wrap input{width:44px;text-align:center;border:1.5px solid var(--linha);border-radius:8px;padding:5px;font-size:.9rem}
.pos-picker__preco{font-size:1rem;font-weight:700;color:var(--petroleo);min-width:70px}
.pos-dir{display:flex;flex-direction:column;background:#fff;min-height:0}
.pos-dir__top{padding:14px 14px 10px;border-bottom:1px solid var(--linha)}
.pos-cli-label{font-size:.72rem;font-weight:700;color:var(--cinza);margin-bottom:5px}
.pos-cli-sel{width:100%;padding:9px 10px;border:1.5px solid var(--linha);border-radius:10px;font-size:.85rem;font-weight:600}
.pos-ticket{flex:1;overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:6px}
.pos-item{display:flex;align-items:flex-start;gap:8px;background:var(--bege-claro);border-radius:10px;padding:8px 10px}
.pos-item__info{flex:1;min-width:0}
.pos-item__nome{font-size:.83rem;font-weight:700;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pos-item__sel{color:var(--cinza);font-size:.72rem;display:block;margin-top:1px}
.pos-item__row2{display:flex;align-items:center;gap:6px;margin-top:5px}
.pos-qtd-btn{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--linha);background:#fff;font-size:.95rem;cursor:pointer;font-weight:700;flex-shrink:0}
.pos-item__qtd{font-size:.85rem;font-weight:700;min-width:18px;text-align:center}
.pos-item__subtotal{font-size:.85rem;font-weight:700;color:var(--petroleo);margin-left:auto}
.pos-item__del{background:none;border:none;color:#c33;font-size:1.2rem;cursor:pointer;padding:2px 4px;flex-shrink:0;line-height:1}
.pos-vazio{color:var(--cinza);font-size:.85rem;text-align:center;padding:20px 0}
.pos-rodape{padding:12px 14px;border-top:1.5px solid var(--linha);display:flex;flex-direction:column;gap:8px}
.pos-frete-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.82rem;font-weight:700}
.pos-frete-inp{width:90px;padding:6px 8px;border:1.5px solid var(--linha);border-radius:8px;text-align:right;font-size:.9rem}
.pos-total-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:700;border-top:1px solid var(--linha);padding-top:8px}
.pos-total-row strong{font-size:1.25rem;color:var(--petroleo)}
.pos-cli-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}
.pos-cli-novo{background:none;border:1.5px solid var(--petroleo);color:var(--petroleo);border-radius:20px;padding:3px 10px;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .15s}
.pos-cli-novo:hover{background:var(--petroleo);color:#fff}
.pos-cli-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:200;display:none;align-items:center;justify-content:center}
.pos-cli-overlay.aberto{display:flex}
.pos-cli-box{background:#fff;border-radius:16px;padding:24px;width:100%;max-width:380px;box-shadow:0 8px 32px rgba(0,0,0,.18);display:flex;flex-direction:column;gap:4px}
.pos-cli-box__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.pos-cli-box__head strong{font-size:1rem}
.pos-cli-box label{display:block;font-size:.78rem;font-weight:700;margin-top:8px}
.pos-cli-box input,.pos-cli-box select{width:100%;border:1.5px solid var(--linha);border-radius:8px;padding:8px 10px;font-size:.88rem;margin-top:3px}
@media(max-width:640px){
  .pos-modal-box{height:100vh;border-radius:0!important}
  .pos-wrap{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:100%;overflow:hidden}
  .pos-tab-bar{display:flex!important}
  .pos-esq,.pos-dir{transition:none}
  .pos-esq.pos-oculto,.pos-dir.pos-oculto{display:none!important}
  .pos-dir{border-right:none;border-top:1.5px solid var(--linha)}
  .pos-grade{height:auto;max-height:calc(100vh - 160px)}
}
.pos-tab-bar{
  display:none;grid-column:1/-1;
  border-bottom:1.5px solid var(--linha);background:#fff;
}
.pos-tab-btn{
  flex:1;padding:12px 8px;border:none;background:none;font-size:.88rem;font-weight:700;
  color:var(--cinza);cursor:pointer;border-bottom:3px solid transparent;transition:all .15s
}
.pos-tab-btn.ativo{color:var(--petroleo);border-bottom-color:var(--petroleo)}
.pos-tab-badge{
  display:inline-block;background:var(--rosa);color:#fff;font-size:.65rem;font-weight:800;
  min-width:18px;height:18px;border-radius:30px;padding:0 5px;
  line-height:18px;margin-left:5px;vertical-align:middle
}
/* =============== /POS =============== */

/* =============== Loja Privada — admin =============== */
.lp-link-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px}
.lp-link-inp{flex:1;min-width:0;padding:8px 10px;border:1.5px solid var(--linha);border-radius:8px;font-size:.8rem;color:var(--cinza);background:#fafafa}
.lp-lista-prods{display:flex;flex-direction:column;gap:8px;max-height:45vh;overflow-y:auto}
.lp-prod-row{display:flex;align-items:center;gap:10px;background:var(--bege-claro);border-radius:10px;padding:8px 10px}
.lp-prod-foto{width:48px;height:48px;object-fit:cover;border-radius:8px;flex-shrink:0}
.lp-prod-foto--vazio{width:48px;height:48px;border-radius:8px;background:var(--bege);display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}
.lp-prod-info{flex:1;min-width:0}
.lp-prod-nome{font-weight:700;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-prod-preco{font-size:.8rem;color:var(--petroleo);font-weight:600}
.lp-prod-acoes{display:flex;gap:6px;flex-shrink:0}
.lp-foto-row{display:flex;gap:6px;margin-bottom:6px;align-items:center}
.lp-foto-row input{flex:1;padding:7px 10px;border:1.5px solid var(--linha);border-radius:8px;font-size:.85rem}
.lp-logo-upload-row{display:flex;align-items:center;gap:14px;margin:12px 0 4px;flex-wrap:wrap}
.lp-logo-preview-wrap{display:flex;flex-direction:column;align-items:center;gap:5px}
.lp-logo-preview{width:80px;height:80px;border-radius:10px;border:2px dashed var(--linha);background:var(--bege);display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:1.8rem;transition:border-color .15s}
.lp-logo-preview:hover{border-color:var(--petroleo)}
.lp-logo-img{width:100%;height:100%;object-fit:contain;display:block}
.lp-logo-label{font-size:.72rem;font-weight:700;color:var(--cinza)}
/* =============== /Loja Privada — admin =============== */

/* ---- Círculos de categoria (index) ---- */
.cats-section{background:var(--bege-claro);padding:18px 0 10px;border-bottom:1px solid var(--linha)}
.cats-scroll{display:flex;gap:18px;overflow-x:auto;padding:4px 18px 10px;scrollbar-width:none;max-width:1180px;margin:0 auto}
.cats-scroll::-webkit-scrollbar{display:none}
.cat-circulo{display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:none;cursor:pointer;flex-shrink:0;padding:0}
.cat-circulo__img{width:74px;height:74px;border-radius:50%;overflow:hidden;border:3px solid var(--linha);background:var(--bege);display:flex;align-items:center;justify-content:center;transition:border-color .18s,transform .18s}
.cat-circulo__img img{width:100%;height:100%;object-fit:cover}
.cat-circulo__img span{font-size:1.5rem;font-weight:800;color:var(--petroleo)}
.cat-circulo__nome{font-size:.75rem;font-weight:700;color:var(--cinza);text-align:center;max-width:74px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .18s}
.cat-circulo:hover .cat-circulo__img,.cat-circulo.ativo .cat-circulo__img{border-color:var(--petroleo);transform:scale(1.06)}
.cat-circulo.ativo .cat-circulo__nome{color:var(--petroleo)}
/* ---- /Círculos de categoria ---- */

/* ---- Galeria de fotos no modal ---- */
.galeria-main{width:100%;max-height:340px;object-fit:contain;border-radius:10px;display:block}
.galeria-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;padding:0 4px}
.galeria-thumb{border:2px solid var(--linha);border-radius:8px;padding:0;background:none;cursor:pointer;overflow:hidden;width:58px;height:58px;flex-shrink:0;transition:border-color .15s}
.galeria-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.galeria-thumb.ativo{border-color:var(--petroleo)}
.galeria-thumb:hover{border-color:var(--petroleo)}
/* ---- /Galeria de fotos ---- */

.hist-titulo{margin:28px 0 12px;font-size:1rem;color:var(--petroleo)}
.hist-card{border:1.5px solid var(--linha);border-radius:14px;margin-bottom:14px;overflow:hidden;border-left:4px solid var(--petroleo)}
.hist-card[data-status="novo"]{border-left-color:#3498db}
.hist-card[data-status="impresso"]{border-left-color:#9b59b6}
.hist-card[data-status="em_corte"]{border-left-color:#e67e22}
.hist-card[data-status="tinturado"]{border-left-color:#e91e8c}
.hist-card[data-status="costurado"]{border-left-color:#1abc9c}
.hist-card[data-status="separacao"]{border-left-color:#f39c12}
.hist-card[data-status="enviado"]{border-left-color:#27ae60}
.hist-card[data-status="entregue"]{border-left-color:#bbb;background:#f7f7f7;opacity:.75}
.hist-card[data-status="cancelado"]{border-left-color:#e74c3c;background:#fff8f8;opacity:.65}
.hist-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:14px 16px 10px;border-bottom:1px solid var(--linha)}
.hist-num{font-weight:800;font-size:.88rem;color:var(--petroleo);display:block}
.hist-data{font-size:.76rem;color:var(--cinza);margin-top:2px;display:block}
.hist-status-badge{font-size:.74rem;font-weight:700;padding:4px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0;margin-top:2px}
.hist-itens-lista{padding:12px 16px;display:flex;flex-direction:column;gap:7px}
.hist-item{display:flex;align-items:baseline;gap:6px;font-size:.84rem}
.hist-item-qtd{font-weight:700;color:var(--petroleo);min-width:24px;flex-shrink:0}
.hist-item-nome{flex:1;color:var(--texto)}
.hist-item-nome small{color:var(--cinza);font-size:.76rem;display:block}
.hist-item-sub{font-weight:600;color:var(--texto);font-size:.82rem;white-space:nowrap}
.hist-resumo{background:var(--bege-claro);padding:10px 16px;display:flex;flex-direction:column;gap:5px}
.hist-resumo-linha{display:flex;justify-content:space-between;font-size:.8rem;color:var(--cinza)}
.hist-total{font-size:.92rem;color:var(--texto);font-weight:600;margin-top:3px;padding-top:6px;border-top:1px solid var(--linha)}
.hist-acoes{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:10px}
.hist-pg{font-size:.78rem;font-weight:700;padding:5px 12px;border-radius:20px}
.hist-pg.pago{background:#d4edda;color:#1e8449}
.hist-pg.parcial{background:#fff3cd;color:#856404}
.hist-pg.nao{background:#fee;color:#c0392b}
.hist-btn-pagar{font-size:.82rem;padding:8px 16px}
.end-fieldset{border:1.5px solid var(--linha);border-radius:10px;padding:14px 14px 10px;display:flex;flex-direction:column;gap:11px}
.end-fieldset legend{font-size:.8rem;font-weight:700;color:var(--petroleo);padding:0 6px}
.form-row{display:flex;gap:10px}
.auth-msg.erro{color:#c0392b}
.auth-msg.ok{color:#1e8449}
.badge-tipo{background:var(--bege-claro);padding:12px;border-radius:10px;font-size:.9rem;margin:6px 0 18px}
.conta h2{margin-bottom:6px}

/* header: estado logado */
.acao--logado .acao__txt{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---- Carrinho ---- */
.carrinho-pg{padding-bottom:60px}
.vazio{text-align:center;padding:50px 0;display:flex;flex-direction:column;gap:16px;align-items:center}
.vazio p{font-size:1.1rem;color:var(--cinza)}
.carrinho-grid{display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:start}
.itens-box{background:#fff;border-radius:14px;box-shadow:var(--sombra);padding:8px 18px}
.item-linha{display:grid;grid-template-columns:64px 1fr auto auto auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--linha)}
.item-linha:last-child{border-bottom:none}
.item-foto img{width:64px;height:64px;object-fit:cover;border-radius:8px}
.mini-ph{width:64px;height:64px;border-radius:8px;background:var(--bege);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--petroleo);font-size:1.4rem}
.item-info{display:flex;flex-direction:column;gap:3px}
.item-info small{color:var(--cinza);font-size:.78rem}
.item-unit{font-size:.82rem;color:var(--petroleo);font-weight:600}
.item-qtd{display:inline-flex;align-items:center;border:1.5px solid var(--linha);border-radius:8px;overflow:hidden}
.item-qtd button{border:none;background:#f0eae3;width:30px;height:34px;font-size:1.1rem;cursor:pointer}
.item-qtd input{width:42px;height:34px;border:none;text-align:center;font-size:.92rem}
.item-sub{font-weight:700;min-width:80px;text-align:right}
.item-remover{border:none;background:transparent;cursor:pointer;font-size:1.1rem;opacity:.65}
.item-remover:hover{opacity:1}

.resumo-box{background:#fff;border-radius:14px;box-shadow:var(--sombra);padding:22px;position:sticky;top:90px}
.resumo-box h3{margin-bottom:14px}
.resumo-box h4{margin:16px 0 8px;font-size:.95rem}
.resumo-linha{display:flex;justify-content:space-between;padding:7px 0;font-size:.95rem;color:var(--cinza)}
.resumo-linha strong{color:var(--texto)}
.resumo-total{border-top:1.5px solid var(--linha);margin-top:8px;padding-top:12px;font-size:1.15rem}
.resumo-total strong{color:var(--petroleo);font-size:1.3rem}
.aviso-login{background:var(--bege-claro);padding:12px;border-radius:9px;font-size:.88rem;margin:10px 0}
.aviso-login a{color:var(--rosa);font-weight:700}
.cep-row{display:flex;gap:8px;margin-bottom:10px}
.cupom-row{display:flex;gap:8px;margin:12px 0 4px}
.cupom-row input{flex:1;border:1.5px solid var(--linha);border-radius:8px;padding:10px;font-size:.95rem}
.cupom-row .btn{padding:10px 14px;white-space:nowrap}
.cep-row input{flex:1;border:1.5px solid var(--linha);border-radius:8px;padding:10px;font-size:.95rem}
.cep-row .btn{padding:10px 14px}
.end-grid{display:grid;grid-template-columns:1fr 70px;gap:8px;margin-bottom:10px}
.end-grid input{border:1.5px solid var(--linha);border-radius:8px;padding:9px;font-size:.9rem}
.end-grid input:focus{outline:none;border-color:var(--petroleo)}
#end-logradouro,#end-bairro,#end-cidade{grid-column:1}
.end-numero,.end-uf{grid-column:2}
#end-complemento{grid-column:1 / -1}
.frete-opcoes{margin-top:6px}
.frete-op{display:flex;align-items:center;gap:8px;padding:9px;border:1.5px solid var(--linha);border-radius:8px;margin-bottom:7px;cursor:pointer;font-size:.88rem}
.frete-op:has(input:checked){border-color:var(--petroleo);background:var(--bege-claro)}
.frete-nome{flex:1}
.frete-nome em{color:var(--cinza);font-style:normal;font-size:.8rem}
.frete-preco{font-weight:700;color:var(--petroleo)}
.frete-aviso{font-size:.8rem;color:var(--cinza);padding:6px 2px}

/* ---- Admin ---- */
.admin{padding:24px 18px 60px}
.admin-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px;border-bottom:2px solid var(--linha)}
.admin-tab{border:none;background:transparent;padding:11px 16px;font-weight:700;cursor:pointer;color:var(--cinza);border-bottom:3px solid transparent;margin-bottom:-2px}
.admin-tab.ativo{color:var(--petroleo);border-bottom-color:var(--petroleo)}
.sec-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px;flex-wrap:wrap}
.sec-head h2,.sec-head h4{margin:0}
.admin-lista{display:flex;flex-direction:column;gap:10px}
.admin-card{background:#fff;border-radius:10px;box-shadow:var(--sombra);padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.admin-card .sub{font-size:.8rem;color:var(--cinza);margin-top:3px}
/* grade de produtos — loja privada */
.produto-card{background:#fff;border-radius:14px;box-shadow:var(--sombra);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform .18s,box-shadow .18s}
.produto-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.13)}
.produto-card .produto__foto{position:relative;width:100%;aspect-ratio:1/1;background:var(--bege);overflow:hidden;border-radius:0;min-height:unset;padding:0;display:block}
.produto-card .produto__foto img,.produto-card .produto-foto{width:100%;height:100%;object-fit:cover;transition:transform .3s;display:block}
.produto-card:hover .produto__foto img,.produto-card:hover .produto-foto{transform:scale(1.06)}
.produto-card .produto__foto .placeholder{width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:900;color:var(--petroleo);opacity:.18}
.produto-card .produto__info{padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:3px}

/* grade de produtos — catálogo */
.prod-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.prod-card{background:#fff;border-radius:14px;box-shadow:var(--sombra);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}
.prod-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.13)}
.prod-card--off{opacity:.55}
.prod-card__thumb{position:relative;width:100%;aspect-ratio:1/1;background:var(--bege);overflow:hidden}
.prod-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.prod-card:hover .prod-card__thumb img{transform:scale(1.06)}
.prod-card__ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:900;color:var(--petroleo);opacity:.18}
.prod-card__off-overlay{position:absolute;inset:0;background:rgba(0,0,0,.38);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;letter-spacing:1px}
.prod-card__body{padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:3px}
.prod-card__nome{font-weight:800;font-size:.95rem;color:var(--texto)}
.prod-card__cat{font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--petroleo);letter-spacing:.5px}
.prod-card__preco{font-size:1.05rem;font-weight:800;color:var(--petroleo);margin-top:4px}
.prod-card__preco span{font-size:.72rem;font-weight:400;color:var(--cinza)}
.prod-card__info{font-size:.73rem;color:var(--cinza)}
.prod-card__acoes{display:flex;gap:0;border-top:1px solid var(--linha)}
.prod-card__acoes .btn{flex:1;border-radius:0;border:none;padding:10px;font-size:.82rem}
.prod-card__acoes .btn:first-child{border-right:1px solid var(--linha)}
.admin-acoes{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.tag-mini{display:inline-block;background:var(--bege);color:var(--cinza);font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:20px;text-transform:uppercase}
.tag-mini.ok{background:#d6f0e0;color:#1e7a45}
.tag-mini.pend{background:#fde8c8;color:#9a6500}
.tag-mini.off{background:#f0d6d6;color:#a33}
.vazio-msg{color:var(--cinza);padding:20px;text-align:center}
.btn--ghost{background:#fff;border:1.5px solid var(--linha);color:var(--texto)}
.btn--del{background:#fbeaea;border:1.5px solid #f0caca;color:#b53;font-size:.85rem;padding:8px 12px}
select{border:1.5px solid var(--linha);border-radius:8px;padding:8px 10px;font-size:.88rem;background:#fff}

/* admin modal / forms */
.admin-modal-box{max-width:640px;padding:26px 24px}
.admin-modal-box h2{margin-bottom:16px}
.admin-modal-box label{display:block;font-size:.8rem;font-weight:700;margin:10px 0 4px}
.admin-modal-box input,.admin-modal-box textarea,.admin-modal-box select{width:100%;border:1.5px solid var(--linha);border-radius:8px;padding:9px;font-size:.9rem;font-weight:400}
.admin-modal-box input:focus,.admin-modal-box textarea:focus{outline:none;border-color:var(--petroleo)}
.admin-modal-box code{background:#f0eae3;padding:1px 4px;border-radius:4px;font-size:.85em}
.form2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.form4{display:grid;grid-template-columns:repeat(4,1fr);gap:0 10px}
.admin-modal-box label.inline{display:flex;align-items:center;gap:7px;flex-direction:row;margin-top:18px}
.admin-modal-box label.inline input{width:auto}
.opcoes-edit{margin-top:16px;border-top:1px solid var(--linha);padding-top:12px}
.opcao-bloco,.frete-custom-bloco{background:var(--bege-claro);border-radius:8px;padding:10px;margin-bottom:8px}
.opcao-top{display:flex;gap:8px;margin-bottom:6px}
.frete-custom-bloco{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;gap:6px;align-items:center}
.admin-form-loja{background:#fff;border-radius:12px;box-shadow:var(--sombra);padding:22px;max-width:680px}
.admin-form-loja label{display:block;font-size:.8rem;font-weight:700;margin:10px 0 4px}
.admin-form-loja input{width:100%;border:1.5px solid var(--linha);border-radius:8px;padding:9px;font-weight:400}
.admin-form-loja label.inline{display:flex;align-items:center;gap:7px;flex-direction:row;margin-top:18px}
.admin-form-loja label.inline input{width:auto}

/* fotos do produto (upload da galeria) */
.fotos-grid{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 10px}
.foto-thumb{position:relative;width:84px;height:84px;border-radius:8px;overflow:hidden;border:1.5px solid var(--linha)}
.foto-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.foto-rem{position:absolute;top:2px;right:2px;width:22px;height:22px;border:none;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:1rem;cursor:pointer;line-height:1}

/* faixas em linhas */
.faixas-head{display:grid;grid-template-columns:1fr 1fr 1fr 40px;gap:8px;font-size:.72rem;font-weight:700;color:var(--cinza);padding:0 2px 4px}
.faixa-row{display:grid;grid-template-columns:1fr 1fr 1fr 40px;gap:8px;margin-bottom:7px;align-items:center}
.faixa-row input{margin:0!important}

/* opção: valores em linhas */
.valores-lista{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.valor-row{display:grid;grid-template-columns:1fr 130px 40px;gap:8px;align-items:center}
.valor-row input{margin:0!important}
.add-valor{font-size:.8rem;padding:6px 12px}
.btn--del{cursor:pointer}

/* selo de pagamento no pedido */
.pg-badge{display:inline-block;font-size:.68rem;font-weight:800;padding:3px 9px;border-radius:20px;margin-left:6px;vertical-align:middle}
.pg-pago{background:#1e8449;color:#fff}
.pg-parcial{background:#f6c233;color:#5a4200}
.pg-nao{background:#eadcd0;color:#8a6a52}
.pedido-info{min-width:0}
.pedido .admin-acoes{flex-wrap:wrap;justify-content:flex-end}

/* picker de produto (novo pedido / add item) */
.picker{background:var(--bege-claro);border-radius:10px;padding:12px;margin:8px 0}
.picker-foot{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.np-builder{margin-bottom:10px}
.np-itens{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.np-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--linha);border-radius:8px;padding:7px 10px;font-size:.85rem}

/* lista de pedidos profissional */
.ped-card{background:#fff;border-radius:12px;box-shadow:var(--sombra);padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;border-left:4px solid var(--petroleo);transition:transform .12s,box-shadow .12s}
.ped-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.13)}
/* legenda de status */
.status-legenda{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.sl-item{display:flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;color:var(--texto)}
.sl-item::before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--c)}
/* cores por status */
.ped-card[data-status="novo"]{border-left-color:#3498db}
.ped-card[data-status="impresso"]{border-left-color:#9b59b6}
.ped-card[data-status="em_corte"]{border-left-color:#e67e22}
.ped-card[data-status="tinturado"]{border-left-color:#e91e8c}
.ped-card[data-status="costurado"]{border-left-color:#1abc9c}
.ped-card[data-status="separacao"]{border-left-color:#f39c12}
.ped-card[data-status="enviado"]{border-left-color:#27ae60}
.ped-card[data-status="entregue"]{border-left-color:#bbb;background:#f7f7f7;opacity:.7}
.ped-card[data-status="cancelado"]{border-left-color:#e74c3c;background:#fff8f8;opacity:.6}
.ped-card__l{min-width:0}
.ped-card__top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.ped-num{font-weight:800;color:var(--petroleo)}
.ped-prod{font-size:.68rem;font-weight:700;text-transform:uppercase;background:var(--bege);color:var(--cinza);padding:2px 8px;border-radius:20px}
.ped-card__cli{font-weight:600;font-size:.95rem}
.ped-data{color:var(--cinza);font-weight:400;font-size:.82rem}
.ped-card__itens{font-size:.8rem;color:var(--cinza);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px}
.ped-card__r{text-align:right;flex-shrink:0}
.ped-total{font-size:1.2rem;font-weight:800;color:var(--texto)}
.ped-ver{font-size:.72rem;color:var(--petroleo);font-weight:600}
.ped-card__btns{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:4px}
.btn-wpp-card{background:#25d366;border:none;border-radius:50%;width:34px;height:34px;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s,box-shadow .15s}
.btn-wpp-card:hover{transform:scale(1.15);box-shadow:0 4px 12px rgba(37,211,102,.4)}
.btn-del-ped{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.45;transition:opacity .15s;padding:4px;line-height:1}
.btn-del-ped:hover{opacity:1}
.busca-input{padding:8px 12px;border:1.5px solid var(--linha);border-radius:20px;font-size:.85rem;width:200px;outline:none;transition:border-color .15s}
.busca-input:focus{border-color:var(--petroleo)}

/* detalhe do pedido */
.det-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;border-bottom:2px solid var(--linha);padding-bottom:12px;margin-bottom:14px}
.det-tab-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;margin-bottom:12px}
.det{max-width:100%;overflow-x:hidden}
.det-head h2{margin:0}
.det-data{font-size:.82rem;color:var(--cinza)}
.det-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.pg-prod{background:var(--bege);color:var(--petroleo)}
.det-cli{background:var(--bege-claro);border-radius:10px;padding:12px 14px;margin-bottom:14px}
.det-cli h4{margin:0 0 6px;font-size:.8rem;text-transform:uppercase;color:var(--petroleo)}
.det-cli p{margin:2px 0;font-size:.9rem}
.det-tab{width:100%;border-collapse:collapse;margin-bottom:12px}
.det-tab th,.det-tab td{border-bottom:1px solid var(--linha);padding:8px;font-size:.86rem;text-align:left}
.det-tab th{background:var(--bege);color:var(--cinza);font-size:.72rem;text-transform:uppercase}
.det-tab .c{text-align:center}.det-tab .r{text-align:right}.det-tab .op{color:var(--cinza);font-size:.8rem}
.det-tot{text-align:right;line-height:1.8;font-size:.92rem;border-top:1px solid var(--linha);padding-top:10px}
.det-tot .big{font-size:1.15rem;color:var(--petroleo);margin-top:4px}
.det-acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:16px;border-top:1px solid var(--linha);padding-top:14px}
.btn--envio{background:#1a4f3a;color:#fff;border-color:#1a4f3a}
.btn--envio:hover{background:#163f2e}
.det-rastreio{margin-top:12px;background:#edf7f0;border:1.5px solid #a3d9b3;border-radius:10px;padding:10px 14px;font-size:.88rem;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.det-statlbl{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700}
.det-statlbl select{font-weight:400}

/* ---- Responsivo ---- */
@media (max-width:680px){
  .acao__txt{display:none}
  .produto{grid-template-columns:1fr}
  .produto__foto{border-radius:18px 18px 0 0;min-height:220px}
  .hero h1{font-size:1.45rem}
  /* modais e formulários no celular */
  .modal{padding:8px}
  .modal__box,.admin-modal-box{max-width:100%;width:100%}
  .admin-modal-box{padding:18px 14px}
  .form2,.form4{grid-template-columns:1fr}
  .det-head{flex-direction:column}
  .det-badges{justify-content:flex-start}
  .det-acoes{gap:6px}
  .det-acoes .btn{flex:1 1 auto}
  .frete-custom-bloco{grid-template-columns:1fr 1fr}
  .ped-card{flex-direction:column;align-items:stretch}
  .ped-card__r{text-align:left;display:flex;justify-content:space-between;align-items:center;margin-top:6px}
  .ped-card__itens{white-space:normal;max-width:100%}
  /* carrinho — 2 linhas no mobile */
  .item-linha{
    grid-template-columns:60px 1fr auto;
    grid-template-rows:auto auto;
    grid-template-areas:"foto info preco" "foto qtd rem";
    gap:4px 10px;
    align-items:start;
  }
  .item-foto{grid-area:foto;align-self:center}
  .item-info{grid-area:info}
  .item-sub{grid-area:preco;align-self:center;min-width:unset;font-size:.92rem}
  .item-qtd{grid-area:qtd}
  .item-remover{grid-area:rem;align-self:center}
  /* carrinho — resumo abaixo dos itens */
  .carrinho-grid{grid-template-columns:1fr}
  /* busca no header */
  .busca input{min-width:0;font-size:.8rem}
  /* admin tabs — scroll horizontal */
  .admin-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:4px}
  .admin-tab{white-space:nowrap;font-size:.78rem;padding:7px 11px}
}
