:root{--brand:#f28c18;--dark:#1b1d20;--muted:#6b7280;--bg:#f6f7f9;--card:#fff;--line:#e7e8eb}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:#202124}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,92%);margin:auto}.top{background:var(--dark);color:#fff}.top .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:20px}.logo{font-size:25px;font-weight:800}.logo b{color:var(--brand)}.search{flex:1;max-width:560px}.search input{width:100%;padding:12px 14px;border-radius:9px;border:0}.cart{background:var(--brand);padding:10px 14px;border-radius:9px;font-weight:700}.nav{background:#fff;border-bottom:1px solid var(--line)}.nav .wrap{display:flex;gap:24px;overflow:auto;padding:13px 0}.hero{padding:34px 0}.heroBox{background:linear-gradient(120deg,#1c1f23,#3a3f45);color:#fff;border-radius:18px;padding:44px;display:grid;grid-template-columns:1.4fr .6fr;align-items:center}.hero h1{font-size:42px;margin:0 0 12px}.hero p{color:#d6d8dc;max-width:650px;font-size:18px}.btn{display:inline-block;background:var(--brand);color:#fff;padding:12px 18px;border-radius:9px;font-weight:700;border:0;cursor:pointer}.sectionTitle{display:flex;align-items:end;justify-content:space-between;margin:25px 0 16px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}.card img{width:100%;height:190px;object-fit:cover}.cardBody{padding:15px}.muted{color:var(--muted);font-size:14px}.price{font-size:22px;font-weight:800;margin:8px 0}.old{text-decoration:line-through;color:var(--muted);font-size:14px;margin-left:6px}.product{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:35px 0}.product img{width:100%;height:500px;object-fit:cover;border-radius:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.cartTable{width:100%;border-collapse:collapse}.cartTable th,.cartTable td{padding:13px;border-bottom:1px solid var(--line);text-align:left}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field input,.field select,.field textarea{padding:11px;border:1px solid #d5d7db;border-radius:8px}.footer{margin-top:45px;background:#111315;color:#ccc;padding:34px 0}.admin{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.side{background:#1a1c1f;color:#fff;padding:22px}.side a{display:block;padding:10px 0;color:#ddd}.main{padding:28px}.statGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.stat strong{font-size:28px;display:block;margin-top:6px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.heroBox,.product{grid-template-columns:1fr}.hero h1{font-size:33px}.admin{grid-template-columns:1fr}.side{display:flex;gap:16px;overflow:auto}.statGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.grid,.formGrid{grid-template-columns:1fr}.top .wrap{flex-wrap:wrap}.search{order:3;flex-basis:100%}.heroBox{padding:28px}.product img{height:340px}.cartTable{font-size:14px}}
.logo img{display:block;max-height:52px;max-width:210px;object-fit:contain}.success{background:#eaf8ee;border:1px solid #b9e4c4;padding:12px 14px;border-radius:9px;margin:0 0 18px}.logoPreview{background:#f4f5f7;border:1px solid var(--line);padding:14px;border-radius:10px;min-height:90px;display:flex;align-items:center}.logoPreview img{max-width:240px;max-height:90px;object-fit:contain}.paymentAdmin{display:grid;gap:10px}.paymentAdmin textarea{width:100%;min-height:70px;padding:11px;border:1px solid #d5d7db;border-radius:8px}.side h2{overflow:hidden;text-overflow:ellipsis}.side a:hover{color:#fff}.side a:nth-last-child(2){margin-top:12px;border-top:1px solid #34373c;padding-top:16px}
.paymentInfo{margin-top:16px;padding:14px;border-radius:10px;background:#f7f7f8;border:1px solid var(--line)}.paymentInfo p{margin-bottom:0;line-height:1.5}
.sideTitle{font-size:11px;font-weight:800;opacity:.55;margin:18px 14px 6px;letter-spacing:.08em}.heroImg{max-width:100%;height:260px;object-fit:cover;border-radius:18px}.categoryPills{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}.categoryPills a{padding:10px 15px;background:#fff;border:1px solid #ddd;border-radius:999px}.contentPage{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;padding:50px 0}.contentPage img{width:100%;border-radius:20px;max-height:480px;object-fit:cover}.pageText{font-size:17px;line-height:1.8}.contactGrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.checkGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.checkGrid label,.payToggle{display:block;padding:12px;border:1px solid #e5e5e5;border-radius:10px;margin-bottom:8px}.payToggle .muted{margin-left:8px;font-size:13px}@media(max-width:800px){.contentPage,.contactGrid{grid-template-columns:1fr}.checkGrid{grid-template-columns:1fr}}

.cartActions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;align-items:center}.cartActionsEmpty{justify-content:flex-start;margin-top:16px}.btnSecondary{background:#fff;color:#222;border:1px solid #d5d7db}.btnSecondary:hover{background:#f3f4f6}.cartActions .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:520px){.cartActions{flex-direction:column;align-items:stretch}.cartActions .btn{width:100%;text-align:center}}

.tableScroll{overflow:auto}.linkButton{background:none;border:0;color:#b91c1c;cursor:pointer;padding:0;font:inherit}
.checkoutTotals{max-width:460px;margin:22px 0 18px auto;border-top:1px solid var(--line);padding-top:12px}
.checkoutTotals>div:not(.muted){display:flex;justify-content:space-between;gap:20px;padding:7px 0}
.checkoutGrand{font-size:22px;border-top:1px solid var(--line);margin-top:8px;padding-top:14px!important}

/* ===== PROTECT - SITE INTEGRADO ===== */
body{font-family:Inter,Segoe UI,Arial,sans-serif}.siteTop{background:var(--dark);color:#cad2db;font-size:12px}.siteTop .wrap{display:flex;justify-content:space-between;gap:18px;padding:8px 0}.siteHeader{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.siteNav{min-height:76px;display:flex;align-items:center;gap:28px;justify-content:space-between}.siteBrand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:900;letter-spacing:-.5px}.siteBrand img{max-width:210px;max-height:58px;object-fit:contain}.siteBrand small{display:block;font-size:10px;letter-spacing:1.8px;color:#737e89}.brandMark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--brand),#ffad64);color:#fff}.siteMenu{display:flex;gap:25px;font-weight:700;font-size:14px}.siteMenu a:hover{color:var(--brand)}.navActions{display:flex;gap:9px;align-items:center}.navCart{padding:11px 13px;border:1px solid var(--line);border-radius:9px}.navCart b{background:var(--brand);color:#fff;border-radius:999px;padding:2px 6px;font-size:11px}.protectHero{min-height:620px;background-position:center;background-size:cover;color:#fff;display:flex;align-items:center}.heroContent{padding:80px 0}.eyebrow{display:inline-block;color:#ffbd88;font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.eyebrow.orange{color:var(--brand)}.protectHero h1,.pageHero h1{font-size:clamp(44px,6vw,72px);line-height:1;margin:15px 0 20px;max-width:820px;letter-spacing:-2px}.protectHero p{max-width:720px;color:#dce3ea;font-size:18px;line-height:1.65}.heroButtons{display:flex;gap:12px;margin-top:28px}.btnOutline{background:transparent;border:1px solid rgba(255,255,255,.55)}.trustBar{display:grid;grid-template-columns:repeat(4,1fr);background:#e6e9ed;gap:1px}.trustBar div{background:#fff;padding:25px;text-align:center}.trustBar b{display:block;font-size:21px}.trustBar span{font-size:12px;color:#77828d}.publicSection{padding:82px 0;background:#fff}.publicSection.soft{background:#f5f7f9}.publicSection.darkSection{background:#0e141b;color:#fff}.publicTitle{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.publicTitle h2,.splitPublic h2,.contactGrid h2{font-size:40px;line-height:1.06;margin:8px 0 15px}.publicTitle p{max-width:570px;color:#697481;line-height:1.65}.darkSection .publicTitle p{color:#aeb8c3}.serviceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.serviceCard{background:#fff;border:1px solid #e5e9ee;border-radius:17px;padding:27px}.serviceCard>span{font-size:29px}.serviceCard h3{font-size:21px}.serviceCard p{color:#687581;line-height:1.65}.splitPublic{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.splitPublic p,.pageText{color:#687581;line-height:1.75}.aboutPhoto{border-radius:20px;overflow:hidden;min-height:400px}.aboutPhoto img{width:100%;height:100%;object-fit:cover}.beforeAfter{display:grid;grid-template-columns:1fr 1fr;gap:16px}.beforeAfter div{position:relative;border-radius:17px;overflow:hidden}.beforeAfter img{width:100%;aspect-ratio:16/8;object-fit:cover}.beforeAfter b{position:absolute;left:14px;top:14px;background:#10151b;color:#fff;padding:7px 10px;border-radius:999px;font-size:11px}.pageHero{background:#111820;color:#fff;padding:80px 0}.pageHero p{max-width:700px;color:#aeb8c3;line-height:1.7}.contactGrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:25px}.contactPanel{background:#111820;color:#fff;border-radius:20px;padding:34px}.contactPanel p{line-height:1.7;color:#d2d9e0}.contactHelp{padding:20px}.contactBoxes{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.contactBoxes>div{border:1px solid var(--line);border-radius:14px;padding:20px}.contactBoxes b,.contactBoxes span,.contactBoxes a{display:block;margin-top:8px}.contactBoxes span{color:#6d7884;font-size:14px}.contactBoxes a{color:var(--brand);font-weight:800}.siteFooter{background:#090d12;color:#b2bdc8;padding:48px 0 20px}.footerGrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}.siteFooter h4{color:#fff}.siteFooter a{display:block;margin:8px 0}.footerBrand{color:#fff}.footerBrand small{max-width:430px;letter-spacing:0;font-size:12px;line-height:1.5}.copyright{border-top:1px solid #202832;margin-top:30px;padding-top:18px;font-size:12px}.grid .card{transition:.2s}.grid .card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(20,30,40,.08)}.sectionTitle h1,.sectionTitle h2{letter-spacing:-.6px}.categoryPills a:hover{border-color:var(--brand);color:var(--brand)}
@media(max-width:950px){.siteMenu{display:none}.siteTop span:first-child{display:none}.serviceGrid{grid-template-columns:1fr 1fr}.splitPublic,.contactGrid{grid-template-columns:1fr}.protectHero{min-height:540px}}
@media(max-width:620px){.siteNav{flex-wrap:wrap;padding:10px 0}.navActions .btn{display:none}.siteBrand{font-size:19px}.protectHero h1,.pageHero h1{font-size:43px}.trustBar,.serviceGrid,.beforeAfter,.contactBoxes{grid-template-columns:1fr 1fr}.publicTitle{display:block}.publicTitle h2,.splitPublic h2,.contactGrid h2{font-size:33px}.heroButtons{flex-direction:column;align-items:flex-start}.publicSection{padding:60px 0}}
@media(max-width:420px){.trustBar,.serviceGrid,.beforeAfter,.contactBoxes{grid-template-columns:1fr}}

/* ===== INSTALAÇÃO PWA ===== */
.installAppBtn{
  display:none;border:0;border-radius:10px;padding:11px 14px;
  background:linear-gradient(135deg,var(--brand),#ff9142);
  color:#fff;font-weight:900;cursor:pointer;white-space:nowrap;
  box-shadow:0 8px 20px rgba(255,107,0,.20)
}
.installAppBtn.showInstall{display:inline-flex;align-items:center;gap:7px}
.installModal{
  position:fixed;inset:0;background:rgba(4,8,12,.72);display:none;
  align-items:flex-end;justify-content:center;z-index:9999;padding:18px
}
.installModal.open{display:flex}
.installModalCard{
  width:min(520px,100%);background:#fff;border-radius:22px;padding:28px;
  box-shadow:0 24px 70px rgba(0,0,0,.35);position:relative;
  animation:installUp .22s ease-out
}
.installModalCard h3{font-size:24px;margin:8px 0 10px}
.installModalCard p{color:#596674;line-height:1.6}
.installIcon{font-size:38px}
.installClose{
  position:absolute;right:14px;top:12px;border:0;background:#f1f3f5;
  width:34px;height:34px;border-radius:999px;font-size:22px;cursor:pointer
}
.iosSteps{display:grid;gap:9px;margin-top:18px}
.iosSteps span{background:#f5f7f9;border-radius:10px;padding:12px;font-weight:700}
@keyframes installUp{from{transform:translateY(25px);opacity:0}to{transform:translateY(0);opacity:1}}

@media(max-width:760px){
  .siteNav{gap:10px}
  .navActions{width:100%;display:grid;grid-template-columns:1fr auto;gap:8px}
  .installAppBtn.showInstall{grid-column:1/-1;justify-content:center;padding:13px 16px;font-size:15px}
  .navCart{justify-self:start}
}


/* ===== MOBILE RESPONSIVO V2 ===== */
.mobileMenuBtn,.mobileMenu{display:none}
.mobileInstallItem{border:0;background:none;font:inherit;color:inherit;text-align:left;width:100%;cursor:pointer}
body.menuOpen{overflow:hidden}

@media(max-width:900px){
  .siteTop{display:none}
  .siteHeader{position:sticky;top:0}
  .siteNav{
    min-height:66px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    padding:8px 0
  }
  .siteBrand{min-width:0;max-width:72vw;font-size:18px}
  .siteBrand img{max-width:180px;max-height:48px}
  .siteBrand>span:last-child{min-width:0}
  .siteBrand small{font-size:8px;letter-spacing:1.2px}
  .siteMenu,.desktopWhatsapp{display:none!important}
  .navActions{display:flex!important;align-items:center;gap:8px;width:auto!important}
  .navCart{font-size:12px;padding:9px 10px;white-space:nowrap}
  .mobileMenuBtn{
    display:inline-flex;
    width:42px;height:42px;align-items:center;justify-content:center;
    border:1px solid var(--line);border-radius:10px;background:#fff;
    font-size:22px;cursor:pointer
  }
  .mobileMenu{
    display:block;
    position:fixed;
    left:0;right:0;
    top:66px;
    background:#fff;
    border-top:1px solid var(--line);
    box-shadow:0 18px 36px rgba(0,0,0,.14);
    transform:translateY(-120%);
    opacity:0;
    visibility:hidden;
    transition:.2s ease;
    z-index:80;
    max-height:calc(100vh - 66px);
    overflow:auto
  }
  .mobileMenu.open{transform:translateY(0);opacity:1;visibility:visible}
  .mobileMenuInner{display:grid;padding:12px 0 18px}
  .mobileMenuInner a,.mobileInstallItem{
    display:flex;align-items:center;justify-content:space-between;
    padding:15px 4px;
    border-bottom:1px solid #edf0f3;
    font-weight:800;
    color:#1b222b
  }
  .mobileMenuInner a span{background:var(--brand);color:#fff;border-radius:999px;padding:2px 7px;font-size:11px}
  .mobileInstallItem{color:var(--brand)}

  .protectHero{min-height:auto;padding:0;background-position:center}
  .heroContent{padding:64px 0}
  .protectHero h1,.pageHero h1{
    font-size:clamp(34px,10vw,46px);
    line-height:1.04;
    letter-spacing:-1.2px
  }
  .protectHero p{font-size:16px}
  .heroButtons{display:grid;grid-template-columns:1fr;gap:10px}
  .heroButtons .btn{width:100%}

  .trustBar{grid-template-columns:1fr 1fr}
  .trustBar div{padding:18px 10px}
  .trustBar b{font-size:17px}

  .publicSection{padding:54px 0}
  .publicTitle{display:block;margin-bottom:24px}
  .publicTitle h2,.splitPublic h2,.contactGrid h2{font-size:31px}
  .serviceGrid,.splitPublic,.contactGrid{grid-template-columns:1fr}
  .serviceGrid{gap:12px}
  .serviceCard{padding:21px}
  .aboutPhoto{min-height:260px}
  .beforeAfter{grid-template-columns:1fr}
  .contactHelp{padding:4px 0}
  .contactBoxes{grid-template-columns:1fr}

  .footerGrid{grid-template-columns:1fr;gap:20px}
  .siteFooter{padding:38px 0 18px}

  /* Loja */
  .shopPage{padding-top:22px}
  .shopTitle{display:block}
  .shopTitle h1{font-size:30px;margin-bottom:6px}
  .shopSearch{display:grid;grid-template-columns:1fr auto;width:100%;min-width:0;margin-top:15px}
  .shopSearch input{width:100%}
  .shopLayout{grid-template-columns:1fr;gap:14px}
  .categorySidebar{display:none}
  .mobileCategorySelect{display:block}
  .shopGrid{grid-template-columns:1fr 1fr!important;gap:10px}
  .shopGrid .card{border-radius:11px;overflow:hidden}
  .shopGrid .cardBody{padding:11px}
  .shopGrid .card h3{font-size:13px;line-height:1.3;margin:6px 0}
  .shopGrid .price{font-size:15px}
  .productImageWrap{aspect-ratio:1/1}
  .productImageWrap img{padding:5px}
  .pagination{gap:5px}
  .pageNum{min-width:36px!important;height:36px!important}
  .pageBtn{width:100%;height:40px!important}

  /* Produto / carrinho / checkout / admin forms */
  .productPage,.productDetail,.checkoutGrid,.cartLayout{grid-template-columns:1fr!important}
  .formGrid{grid-template-columns:1fr!important}
  .panel{overflow:hidden}
  table{min-width:650px}
  .tableScroll,.cartTableWrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
}

@media(max-width:480px){
  .wrap{width:min(94%,1180px)}
  .siteBrand{max-width:56vw}
  .siteBrand img{max-width:145px}
  .navCart{padding:8px;font-size:11px}
  .navCart b{padding:1px 5px}
  .trustBar{grid-template-columns:1fr 1fr}
  .shopSearch{grid-template-columns:1fr}
  .shopSearch .btn{width:100%}
  .shopGrid{grid-template-columns:1fr 1fr!important}
  .pageHero{padding:56px 0}
  .installModal{align-items:flex-end;padding:10px}
  .installModalCard{border-radius:20px 20px 12px 12px;padding:24px 20px}
}


/* ===== MENU ÚNICO ===== */
@media(min-width:901px){
  .mobileMenu,.mobileMenuBtn{display:none!important}
  .siteMenu{display:flex!important}
  .desktopWhatsapp{display:inline-flex!important}
}
@media(max-width:900px){
  .siteMenu,.desktopWhatsapp{display:none!important}
  .mobileMenuBtn{display:inline-flex!important}
}

.loginWrap{min-height:100vh;display:grid;place-items:center;background:#f3f5f7;padding:20px}
.loginCard{width:min(430px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 18px 45px rgba(0,0,0,.10)}
.bulkBar{display:flex;gap:10px;align-items:center;margin:12px 0 16px}.bulkBar select{padding:11px;border:1px solid var(--line);border-radius:9px}
@media(max-width:700px){.bulkBar{flex-direction:column;align-items:stretch}.bulkBar .btn{width:100%}}


/* ===== ADMIN MOBILE GLOBAL ===== */
.admin{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr);background:#f3f5f7}
.adminSide{position:sticky;top:0;height:100vh;overflow:auto;background:#111820;color:#fff;padding:22px 16px}
.adminSide a{display:block;padding:11px 12px;border-radius:9px;color:#d7dee5;text-decoration:none;margin-bottom:4px}
.adminSide a:hover{background:#1b2632;color:#fff}
.main{min-width:0;width:100%;padding:28px}
.tableScroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.adminMobileBar{display:none}
@media(max-width:900px){
 .admin{display:block}
 .adminSide{position:fixed;left:0;top:0;z-index:1001;width:min(82vw,300px);height:100vh;transform:translateX(-105%);transition:.2s ease;box-shadow:12px 0 30px rgba(0,0,0,.18)}
 body.adminMenuOpen .adminSide{transform:translateX(0)}
 body.adminMenuOpen::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1000}
 .adminMobileBar{display:flex;position:sticky;top:0;z-index:999;height:58px;background:#fff;border-bottom:1px solid #e4e8ec;align-items:center;justify-content:space-between;padding:0 14px}
 .adminMenuBtn{width:42px;height:42px;border:1px solid #dfe4e8;border-radius:9px;background:#fff;font-size:22px}
 .main{padding:18px 12px 28px}
 .main h1{font-size:26px;margin-top:8px}
 .formGrid{grid-template-columns:1fr!important;gap:12px!important}
 .field input,.field select,.field textarea{width:100%;min-height:44px;font-size:16px}
 .field textarea{min-height:120px}
 .btn{min-height:44px}
 .panel{padding:14px!important;border-radius:12px!important}
 .bulkBar,.filterActions{flex-direction:column!important;align-items:stretch!important}
 .bulkBar select,.bulkBar .btn,.filterActions .btn{width:100%!important}
 .cartTable{min-width:760px}
 .cartTable th,.cartTable td{white-space:nowrap;padding:10px 8px}
}
@media(max-width:520px){
 .main{padding:14px 9px 24px}
 .panel{padding:11px!important}
 .main h1{font-size:23px}
}


/* =========================================================
   ADMIN RESPONSIVO V2 — REGRAS FINAIS
   Escopadas para .adminPage para não afetar o site público.
   ========================================================= */
.adminPage .admin{
  display:grid!important;
  grid-template-columns:230px minmax(0,1fr)!important;
  min-height:100vh!important;
  align-items:stretch!important;
}
.adminPage .adminSide{
  display:block!important;
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:20px 16px!important;
  background:#1a1c1f!important;
  z-index:20!important;
}
.adminPage .adminSide h2{font-size:18px;margin:0 0 14px;line-height:1.25}
.adminPage .adminSide a{
  display:block!important;
  white-space:normal!important;
  padding:10px 12px!important;
  margin:2px 0!important;
  border-radius:8px!important;
}
.adminPage .main{
  min-width:0!important;
  width:100%!important;
  padding:26px!important;
}
.adminPage .panel{
  max-width:100%!important;
}
.adminPage .adminTableScroll,
.adminPage .tableScroll{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.adminPage .adminMobileBar{display:none!important}

/* Evita herdar o antigo .side{display:flex} do CSS original */
@media(max-width:900px){
  .adminPage .admin{
    display:block!important;
    min-height:100vh!important;
  }

  .adminPage .adminMobileBar{
    display:flex!important;
    position:sticky!important;
    top:0!important;
    z-index:1002!important;
    height:58px!important;
    padding:0 14px!important;
    align-items:center!important;
    justify-content:space-between!important;
    background:#fff!important;
    border-bottom:1px solid #e5e8eb!important;
    box-shadow:0 2px 8px rgba(0,0,0,.04)!important;
  }

  .adminPage .adminMenuBtn{
    display:inline-flex!important;
    width:42px!important;
    height:42px!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid #dce1e5!important;
    border-radius:10px!important;
    background:#fff!important;
    font-size:22px!important;
    cursor:pointer!important;
  }

  .adminPage .adminSide,
  .adminPage .side.adminSide{
    display:block!important;
    position:fixed!important;
    left:0!important;
    top:0!important;
    width:min(84vw,310px)!important;
    max-width:310px!important;
    height:100vh!important;
    transform:translateX(-105%)!important;
    transition:transform .2s ease!important;
    z-index:1004!important;
    padding:20px 15px!important;
    background:#171b20!important;
    overflow-y:auto!important;
    flex-direction:column!important;
    gap:0!important;
  }

  .adminPage.adminMenuOpen .adminSide,
  body.adminMenuOpen.adminPage .adminSide{
    transform:translateX(0)!important;
  }

  body.adminMenuOpen.adminPage::before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    background:rgba(0,0,0,.46)!important;
    z-index:1003!important;
  }

  .adminPage .main{
    padding:16px 12px 28px!important;
    overflow:visible!important;
  }

  .adminPage .main > h1{
    font-size:25px!important;
    line-height:1.15!important;
    margin:8px 0 18px!important;
  }

  .adminPage .panel{
    padding:14px!important;
    border-radius:12px!important;
    overflow:visible!important;
  }

  .adminPage .formGrid,
  .adminPage .checkGrid,
  .adminPage .contactGrid,
  .adminPage .statGrid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .adminPage .field{
    min-width:0!important;
    width:100%!important;
  }

  .adminPage .field input,
  .adminPage .field select,
  .adminPage .field textarea,
  .adminPage select,
  .adminPage textarea{
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    font-size:16px!important;
  }

  .adminPage textarea{min-height:110px!important}

  .adminPage .btn{
    min-height:42px!important;
    white-space:normal!important;
  }

  .adminPage .bulkBar,
  .adminPage .filterActions{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:9px!important;
  }

  .adminPage .bulkBar > *,
  .adminPage .filterActions > *{
    width:100%!important;
    max-width:100%!important;
  }

  .adminPage .cartTable{
    width:max-content!important;
    min-width:720px!important;
    font-size:13px!important;
  }

  .adminPage .cartTable th,
  .adminPage .cartTable td{
    padding:9px 8px!important;
    white-space:nowrap!important;
    vertical-align:middle!important;
  }

  .adminPage .cartTable img{
    max-width:52px!important;
    max-height:52px!important;
  }

  .adminPage .categoryGroup{
    max-width:100%!important;
  }

  .adminPage .categoryGroupTitle{
    width:100%!important;
    min-height:48px!important;
  }

  /* Configurações, pagamentos e páginas */
  .adminPage.page-configuracoes .logoPreview,
  .adminPage.page-home .logoPreview{
    max-width:100%!important;
    overflow:hidden!important;
  }

  .adminPage.page-configuracoes .logoPreview img,
  .adminPage.page-home .logoPreview img{
    max-width:100%!important;
    height:auto!important;
  }

  .adminPage .paymentAdmin{
    width:100%!important;
  }

  /* Pedidos: mantém tabela rolável, não comprime colunas */
  .adminPage.page-pedidos .cartTable{min-width:900px!important}

  /* Frete e categorias */
  .adminPage.page-frete .cartTable,
  .adminPage.page-categorias .cartTable,
  .adminPage.page-usuarios .cartTable,
  .adminPage.page-servicos .cartTable{
    min-width:680px!important;
  }
}

@media(max-width:520px){
  .adminPage .main{padding:12px 9px 24px!important}
  .adminPage .panel{padding:11px!important}
  .adminPage .main > h1{font-size:22px!important}
  .adminPage .categoryGroupTitle{padding:12px!important}
}


/* ===== LOJA - MENU LATERAL DE CATEGORIAS RESTAURADO ===== */
.shopPage{padding:34px 0 10px}
.shopTitle{gap:24px}
.shopSearch{display:flex;gap:9px;align-items:center;min-width:min(430px,100%)}
.shopSearch input{
  width:100%;min-width:0;padding:12px 14px;border:1px solid var(--line);
  border-radius:10px;background:#fff;font:inherit
}
.shopLayout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:24px;
  align-items:start
}
.categorySidebar{
  display:block;
  position:sticky;
  top:96px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(20,30,40,.05)
}
.categorySidebarHead{
  padding:17px 18px;
  background:#151b23;
  color:#fff;
  font-size:15px
}
.categoryMenu{display:grid;padding:8px}
.categoryMenu a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:44px;
  padding:11px 12px;
  border-radius:9px;
  color:#3e4853;
  font-size:14px;
  font-weight:700;
  transition:.16s ease
}
.categoryMenu a:hover{
  background:#f6f7f9;
  color:var(--brand)
}
.categoryMenu a.active{
  background:var(--brand);
  color:#fff
}
.shopResults{min-width:0}
.shopGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.mobileCategorySelect{display:none}
.productImageWrap{
  width:100%;
  aspect-ratio:1/1;
  background:#fff;
  display:grid;
  place-items:center;
  overflow:hidden
}
.productImageWrap img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:10px
}
.noProductImage{
  width:100%;height:100%;display:grid;place-items:center;
  background:#f3f5f7;color:#8a939d;font-size:13px
}
.productMeta{min-height:18px}
.skuLine{margin-top:4px}
.catalogCardLabel{font-weight:800;color:var(--brand);margin-top:10px}
.pagination{
  display:flex;align-items:center;justify-content:center;gap:7px;
  flex-wrap:wrap;margin-top:28px
}
.pageBtn,.pageNum{
  min-height:40px;display:inline-flex;align-items:center;justify-content:center;
  padding:0 13px;background:#fff;border:1px solid var(--line);border-radius:9px;
  font-weight:800;font-size:13px
}
.pageNum{min-width:40px;padding:0}
.pageNum.active,.pageBtn:hover,.pageNum:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.paginationInfo{text-align:center;margin-top:10px;color:var(--muted);font-size:13px}

@media(max-width:900px){
  .shopLayout{grid-template-columns:1fr;gap:14px}
  .categorySidebar{display:none}
  .mobileCategorySelect{
    display:block;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    padding:12px;
    margin:0 0 14px
  }
  .mobileCategorySelect label{
    display:block;font-size:12px;font-weight:800;margin-bottom:6px;color:#59636e
  }
  .mobileCategorySelect select{
    width:100%;padding:12px;border:1px solid #d8dde2;border-radius:9px;
    background:#fff;font-size:16px
  }
  .shopGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:480px){
  .shopGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
