:root{--bg:#0d0d12;--surface:#17171f;--surface2:#22222d;--text:#f7f5fb;--muted:#aaa5b7;--line:rgba(255,255,255,.1);--purple:#7b32ff;--purple2:#a27aff;--green:#20c875;--danger:#ff5b67;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 10% 0%,rgba(123,50,255,.16),transparent 30rem),var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{min-height:76px;padding:13px clamp(16px,4vw,54px);display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);background:rgba(13,13,18,.84)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:43px;height:43px;border-radius:14px;background:linear-gradient(135deg,var(--purple),#5014cf);display:grid;place-items:center;font-size:24px;font-weight:900}.brand strong,.brand small{display:block}.brand strong{font-size:.9rem;letter-spacing:.05em}.brand small{font-size:.74rem;color:var(--muted);margin-top:2px}.admin-link{border:1px solid var(--line);padding:9px 12px;border-radius:12px;font-size:.84rem}main{width:min(1240px,calc(100% - 36px));margin:auto}.hero{min-height:355px;padding:68px 0 42px;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.eyebrow{display:inline-block;color:var(--purple2);font-size:.72rem;letter-spacing:.14em;font-weight:900;margin-bottom:8px}.hero h1{font-size:clamp(2.6rem,6vw,5.1rem);line-height:.95;letter-spacing:-.055em;margin:0 0 16px}.hero p{color:var(--muted);line-height:1.65;font-size:1.04rem}.hero-search{padding:25px;border:1px solid var(--line);background:rgba(255,255,255,.035);border-radius:var(--radius)}.hero-search label{display:block;margin-bottom:8px;font-size:.84rem;font-weight:800}.hero-search input{width:100%;height:56px;border:0;border-radius:15px;padding:0 16px;background:#fff;color:#111;outline:0}.section{padding:32px 0 54px}.section-heading,.dashboard-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:23px}.section-heading h2,.dashboard-heading h1{margin:0;font-size:clamp(1.55rem,3vw,2.35rem);letter-spacing:-.03em}.category-grid,.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.category-card{appearance:none;text-align:left;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:23px;min-height:164px;cursor:pointer;transition:.18s}.category-card:hover,.category-card.selected{transform:translateY(-2px);border-color:var(--purple2);background:var(--surface2)}.category-card>span{display:block;font-size:38px;margin-bottom:18px}.category-card strong{display:block;margin-bottom:5px;font-size:1.1rem}.category-card small{color:var(--muted);line-height:1.45}.count-pill{padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);font-size:.76rem;color:#d9d4e2}.product-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.product-image{height:265px;background:#f1f0f4;position:relative;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;padding:14px}.product-placeholder{height:100%;display:grid;place-items:center;font-size:72px}.badge{position:absolute;top:13px;left:13px;background:var(--purple);padding:7px 9px;border-radius:999px;font-size:.7rem;font-weight:900}.product-info{padding:19px}.product-category{color:var(--purple2);font-size:.7rem;letter-spacing:.1em;font-weight:900;text-transform:uppercase}.product-info h3{margin:7px 0 6px;font-size:1.18rem}.measure{font-weight:900;font-size:1.06rem;margin-bottom:14px}.product-meta{display:flex;flex-wrap:wrap;gap:6px;min-height:34px;margin-bottom:16px}.product-meta span{font-size:.74rem;padding:5px 7px;border:1px solid var(--line);border-radius:9px;color:#cbc6d3}.button{appearance:none;border:0;border-radius:12px;padding:10px 15px;font-weight:900;cursor:pointer}.primary{background:linear-gradient(135deg,var(--purple),#5b18dd);color:#fff}.ghost{background:var(--surface2);color:#fff;border:1px solid var(--line)}.danger{background:rgba(255,91,103,.12);color:#ff9ca3;border:1px solid rgba(255,91,103,.24)}.full{width:100%;display:inline-flex;align-items:center;justify-content:center}.status-message,.form-message{margin:10px 0;padding:11px 13px;border-radius:11px;font-size:.84rem}.status-message.info,.form-message.info{background:rgba(123,50,255,.12);color:#ccb8ff}.status-message.error,.form-message.error{background:rgba(255,91,103,.12);color:#ff9ca3}.status-message.success,.form-message.success{background:rgba(32,200,117,.12);color:#8be5b6}.form-message:empty{display:none}.empty-state{grid-column:1/-1;min-height:210px;display:grid;place-items:center;align-content:center;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}.empty-state span{font-size:44px;margin-bottom:9px}.product-dialog{width:min(900px,calc(100% - 28px));max-height:calc(100vh - 28px);overflow:auto;border:1px solid var(--line);border-radius:23px;padding:0;background:var(--surface);color:var(--text)}.product-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.dialog-close{position:sticky;top:10px;z-index:3;margin:10px 10px 0 auto;width:38px;height:38px;border-radius:11px;border:1px solid var(--line);background:rgba(13,13,18,.9);color:#fff;font-size:24px;cursor:pointer}.dialog-product-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:-48px}.dialog-product-grid>div:first-child{min-height:500px;background:#f1f0f4;display:grid;place-items:center}.dialog-product-image{width:100%;height:100%;max-height:500px;object-fit:contain;padding:22px}.dialog-placeholder{font-size:90px}.dialog-product-info{padding:62px 30px 30px}.dialog-product-info h2{font-size:2rem;margin:0 0 4px}.brand-line{color:var(--muted)}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0}.spec{border:1px solid var(--line);background:var(--surface2);padding:11px;border-radius:12px}.spec small{display:block;color:var(--muted);margin-bottom:3px}.dialog-description{color:#c9c4d0;line-height:1.65;white-space:pre-line}.whatsapp-btn{background:var(--green);color:#052414;text-align:center}.floating-whatsapp{position:fixed;right:18px;bottom:18px;z-index:24;background:var(--green);color:#052414;padding:12px 16px;border-radius:999px;font-weight:900}.footer{width:min(1240px,calc(100% - 36px));margin:auto;padding:28px 0 42px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:.8rem}.admin-main{padding:42px 0 60px}.login-shell{min-height:65vh;display:grid;place-items:center}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.login-panel{width:min(460px,100%);padding:28px}.login-panel h1{margin:0 0 8px}.login-panel p{color:var(--muted)}label{display:block;font-weight:800;font-size:.83rem;color:#ded9e6}label input,label select,label textarea,.admin-toolbar input,.admin-toolbar select{width:100%;margin-top:7px;margin-bottom:15px;padding:11px 12px;border-radius:11px;border:1px solid var(--line);background:var(--surface2);color:#fff;outline:0}option{background:#22222d}label small{display:block;color:var(--muted);font-weight:400;margin-top:-9px;margin-bottom:12px}.setup-alert{padding:15px 17px;border-radius:15px;border:1px solid rgba(255,190,80,.3);background:rgba(255,190,80,.09);color:#f6cd88}.setup-alert p{margin:5px 0 0}.top-actions{display:flex;gap:8px;align-items:center}.admin-toolbar{display:grid;grid-template-columns:1fr 230px;gap:12px;padding:13px;margin-bottom:18px}.admin-toolbar input,.admin-toolbar select{margin:0}.admin-product-list{display:grid;gap:11px}.admin-product-card{display:grid;grid-template-columns:92px 1fr auto;gap:14px;align-items:center;padding:11px;border:1px solid var(--line);background:var(--surface);border-radius:17px}.admin-product-thumb{width:92px;height:76px;border-radius:12px;background:#eeeef2;display:grid;place-items:center;overflow:hidden;font-size:31px}.admin-product-thumb img{width:100%;height:100%;object-fit:contain}.admin-product-title{display:flex;justify-content:space-between;gap:10px}.admin-product-title small{display:block;color:var(--purple2)}.admin-product-title strong{display:block}.admin-product-title span{font-size:.82rem;color:var(--muted)}.status-pill{font-size:.68rem;padding:5px 7px;border-radius:999px;white-space:nowrap}.status-pill.active{background:rgba(32,200,117,.12);color:#8be5b6}.status-pill.inactive{background:rgba(255,255,255,.06);color:#bbb5c5}.admin-product-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.admin-product-meta span{font-size:.7rem;color:#bdb8c6;background:var(--surface2);padding:4px 6px;border-radius:7px}.admin-card-actions{display:flex;gap:7px}.admin-dialog{width:min(820px,calc(100% - 28px))}.product-form{padding:0 28px 28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.image-preview-wrap{width:170px;height:170px;border-radius:15px;overflow:hidden;background:#eeeef2;margin-bottom:16px}.image-preview-wrap img{width:100%;height:100%;object-fit:contain}.check-row{display:flex;gap:18px;flex-wrap:wrap;padding:8px 0 18px}.check-row label{display:flex;align-items:center;gap:7px}.check-row input{width:auto;margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:17px}.hidden{display:none!important}@media(max-width:900px){.hero{grid-template-columns:1fr;gap:26px;padding-top:44px}.category-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.dialog-product-grid{grid-template-columns:1fr}.dialog-product-grid>div:first-child{min-height:320px}.dialog-product-info{padding-top:26px}}@media(max-width:640px){main{width:calc(100% - 24px)}.topbar{padding:10px 12px}.brand small{display:none}.brand strong{font-size:.76rem}.brand-mark{width:38px;height:38px}.admin-link{font-size:.74rem;padding:7px 8px}.hero{padding:35px 0 18px;min-height:auto}.hero h1{font-size:2.65rem}.category-grid,.product-grid{grid-template-columns:1fr}.product-image{height:300px}.footer{width:calc(100% - 24px);flex-direction:column}.spec-grid{grid-template-columns:1fr}.dashboard-heading{align-items:stretch;flex-direction:column}.admin-toolbar{grid-template-columns:1fr}.admin-product-card{grid-template-columns:70px 1fr}.admin-product-thumb{width:70px;height:70px}.admin-card-actions{grid-column:1/-1}.admin-card-actions .button{flex:1}.form-grid{grid-template-columns:1fr}.product-form{padding:0 18px 20px}.top-actions .admin-link{display:none}}

/* LOGO SPEEDMAX NO CABEÇALHO */
.brand-logo-link{gap:0;display:flex;align-items:center}
.brand-logo-wrap{display:flex;align-items:center;justify-content:center;height:58px;width:170px;background:#f5f5f5;border-radius:12px;overflow:hidden;padding:2px 8px}
.brand-logo{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:640px){.brand-logo-wrap{height:48px;width:140px;border-radius:10px}}


/* ==========================================================
   FUNDO COM SLIDESHOW - SPEEDMAX v4
   Troca: 6s | Transição: 1,5s | Foto: 25% | Escurecimento: 50%
   ========================================================== */
:root{
  --bg-slide-transition:1500ms;
  --bg-slide-image-opacity:.25;
  --bg-slide-overlay-opacity:.50;
}

/* O fundo fica atrás de todo o conteúdo do site */
.background-slideshow{
  position:fixed;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
  background:#0d0d12;
}

.background-slide{
  position:absolute;
  inset:-3%;
  z-index:1;
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:0;
  transform:scale(1.02);
  transition:
    opacity var(--bg-slide-transition) ease-in-out,
    transform 8s ease-out;
  will-change:opacity,transform;
}

.background-slide.is-active{
  opacity:var(--bg-slide-image-opacity);
  transform:scale(1.06);
}

.background-dark-overlay{
  position:absolute;
  inset:0;
  z-index:2;
  background:#000;
  opacity:var(--bg-slide-overlay-opacity);
}

/* Mantém o conteúdo acima do slideshow */
main,
.footer{
  position:relative;
  z-index:1;
}

/* Um pouco de transparência nos cards para o fundo aparecer sem perder leitura */
.category-card,
.product-card,
.hero-search{
  background:rgba(23,23,31,.88);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

@media (prefers-reduced-motion: reduce){
  .background-slide{
    transition:opacity 300ms linear;
    transform:none!important;
  }
}

/* ==========================================================
   SPEEDMAX v8 - ÁREA DA FOTO DO PRODUTO TRANSPARENTE
   Remove o fundo branco ao redor das fotos no catálogo.
   ========================================================== */
.product-image {
  background: transparent !important;
}

.product-image img {
  background: transparent !important;
  padding: 0 !important;
}

/* Também remove o fundo branco da foto na tela de detalhes */
.dialog-product-grid > div:first-child {
  background: transparent !important;
}

.dialog-product-image {
  background: transparent !important;
  padding: 0 !important;
}


/* ==========================================================
   v9 - CAMPOS TÉCNICOS ADICIONAIS
   ========================================================== */
.field-span-2{
  grid-column:1 / -1;
}

.spec-wide{
  grid-column:1 / -1;
}

.spec-wide strong{
  line-height:1.45;
}

.brand-logo-link{
  display:flex;
  align-items:center;
}

.brand-logo-link .site-logo{
  display:block;
  width:auto;
  height:52px;
  max-width:min(260px,42vw);
  object-fit:contain;
}

@media (max-width:640px){
  .field-span-2{
    grid-column:auto;
  }

  .brand-logo-link .site-logo{
    height:40px;
    max-width:190px;
  }
}

/* ==========================================================
   v10 - SELETOR DOS CINCO MODELOS PANGEA
   ========================================================== */
.pangea-card{
  cursor:pointer;
  border-color:rgba(162,122,255,.34);
  box-shadow:0 18px 55px rgba(0,0,0,.22);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

.pangea-card:focus-visible{
  outline:3px solid rgba(162,122,255,.7);
  outline-offset:3px;
}

.pangea-card:hover{
  transform:translateY(-4px);
  border-color:var(--purple2);
  box-shadow:0 22px 60px rgba(0,0,0,.34);
}

.pangea-card-image{
  height:310px;
  background:radial-gradient(circle at 50% 43%,#fff 0,#f4f2f8 58%,#ded9e8 100%)!important;
}

.pangea-card .pangea-card-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:15px!important;
  transition:transform .25s ease;
}

.pangea-card:hover .pangea-card-image img{
  transform:scale(1.035);
}

.pangea-badge{
  background:linear-gradient(135deg,var(--purple),#4e13c4);
  box-shadow:0 8px 20px rgba(71,23,173,.28);
}

.pangea-subtitle{
  min-height:22px;
  margin:0 0 10px;
  color:var(--muted);
  font-size:.84rem;
  font-weight:700;
}

.pangea-measure-preview{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-height:63px;
  margin:0 0 16px;
  align-content:flex-start;
}

.pangea-measure-preview span{
  align-self:flex-start;
  padding:5px 7px;
  border:1px solid rgba(162,122,255,.25);
  border-radius:9px;
  background:rgba(123,50,255,.08);
  color:#d9cdf7;
  font-size:.7rem;
  font-weight:800;
}

.pangea-dialog-grid>div:first-child{
  background:radial-gradient(circle at 50% 43%,#fff 0,#f4f2f8 58%,#ded9e8 100%)!important;
}

.pangea-dialog-image{
  padding:20px!important;
}

.pangea-dialog-info{
  padding-bottom:34px;
}

.pangea-description{
  margin-bottom:18px;
}

.pangea-measures-panel{
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface2);
}

.pangea-measures-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.pangea-measures-heading span{
  min-width:30px;
  padding:5px 8px;
  border-radius:999px;
  background:var(--purple);
  color:#fff;
  text-align:center;
  font-size:.72rem;
  font-weight:900;
}

.pangea-measures-panel>p{
  margin:6px 0 13px;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.45;
}

.measure-groups{
  display:grid;
  gap:13px;
  max-height:285px;
  overflow:auto;
  padding-right:4px;
}

.measure-rim-group{
  padding:11px;
  border:1px solid var(--line);
  border-radius:13px;
  background:rgba(10,10,15,.28);
}

.measure-rim-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
}

.measure-rim-heading strong{
  color:var(--purple2);
  font-size:.82rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.measure-rim-heading span{
  min-width:25px;
  padding:3px 6px;
  border-radius:999px;
  background:rgba(123,50,255,.17);
  color:#e9e0ff;
  font-size:.67rem;
  font-weight:900;
  text-align:center;
}

.measure-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}

.measure-option{
  appearance:none;
  min-height:38px;
  padding:7px 9px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#191923;
  color:#eeeaf5;
  cursor:pointer;
  font-size:.76rem;
  font-weight:850;
  text-align:center;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
}

.measure-option:hover,
.measure-option.selected{
  border-color:var(--purple2);
  background:rgba(123,50,255,.2);
  color:#fff;
}

.availability-note{
  margin:12px 0 15px;
  color:var(--muted);
  font-size:.74rem;
  line-height:1.45;
}

@media(max-width:640px){
  .pangea-card-image{
    height:310px;
  }

  .pangea-measure-preview{
    min-height:auto;
  }

  .pangea-dialog-image{
    max-height:350px;
  }

  .measure-options{
    grid-template-columns:1fr;
  }

  .measure-groups{
    max-height:260px;
  }
}

/* ==========================================================
   v37 - HERO COMPACTO, CPK, HOMOLOGAÇÃO E GARANTIA
   ========================================================== */
.hero{
  grid-template-columns:minmax(0,1fr) 168px 190px;
  gap:12px;
  padding:18px 0 13px;
  align-items:stretch;
}

.hero-copy{
  grid-template-columns:max-content minmax(230px,1fr);
  column-gap:12px;
  align-content:center;
}

.hero-title-line{
  font-size:clamp(2rem,3.15vw,3.15rem);
  line-height:.93;
}

.hero-search-inline{
  width:min(100%,340px);
}

.hero-search-inline input{
  height:46px;
}

.hero-description{
  margin-top:5px!important;
  font-size:.82rem!important;
}

.hero-actions-panel,
.hero-credentials{
  display:grid;
  grid-template-rows:1fr 1fr;
  gap:7px;
  min-width:0;
}

.cpk-launch-button{
  appearance:none;
  min-height:58px;
  padding:8px 10px;
  border:1px solid rgba(162,122,255,.65);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(79,28,170,.95),rgba(33,22,56,.95));
  color:#fff;
  display:grid;
  place-items:center;
  align-content:center;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(44,13,103,.3);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.cpk-launch-button:hover,
.cpk-launch-button:focus-visible{
  transform:translateY(-1px);
  border-color:#c9adff;
  box-shadow:0 14px 32px rgba(87,37,179,.42);
}

.cpk-launch-button span,
.cpk-launch-button small{
  font-size:.57rem;
  line-height:1.15;
  letter-spacing:.1em;
  color:#cbb7f6;
}

.cpk-launch-button strong{
  margin:2px 0;
  font-size:.8rem;
  line-height:1;
}

.hero-actions-panel>.promotional-filter-button{
  width:100%;
  min-height:46px;
  padding:7px 9px;
  font-size:.65rem;
}

.credential-card{
  min-height:58px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:14px;
  background:rgba(20,20,28,.88);
  display:grid;
  place-items:center;
  align-content:center;
  text-align:center;
  box-shadow:0 12px 28px rgba(0,0,0,.2);
}

.credential-card small{
  color:#d4cfdb;
  font-size:.58rem;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.credential-card strong{
  margin:3px 0 1px;
  font-size:1rem;
  line-height:1;
  letter-spacing:.04em;
}

.credential-card span{
  font-size:.62rem;
  line-height:1;
  font-weight:800;
}

.vipal-card{
  border-color:rgba(33,181,255,.55);
  background:linear-gradient(145deg,rgba(0,93,143,.28),rgba(18,21,31,.94));
}

.vipal-card strong,
.vipal-card span{
  color:#31c7ff;
}

.vipal-card:not(.is-disabled){
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease;
}

.vipal-card:not(.is-disabled):hover,
.vipal-card:not(.is-disabled):focus-visible{
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(0,143,211,.28);
}

.vipal-card.is-disabled{
  cursor:default;
}

.infinity-card{
  border-color:rgba(162,122,255,.5);
  background:linear-gradient(145deg,rgba(80,36,150,.26),rgba(18,21,31,.94));
}

.infinity-card strong,
.infinity-card span{
  color:#c8aaff;
}

.cpk-dialog{
  width:min(980px,calc(100% - 28px));
  max-height:calc(100dvh - 28px);
  padding:0;
  border:1px solid rgba(162,122,255,.38);
  border-radius:22px;
  overflow:auto;
  background:#15151d;
  color:var(--text);
  box-shadow:0 34px 100px rgba(0,0,0,.75);
}

.cpk-dialog::backdrop{
  background:rgba(0,0,0,.82);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}

.cpk-form{
  padding:24px;
}

.cpk-dialog-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.cpk-dialog-header .eyebrow{
  margin-bottom:5px;
}

.cpk-dialog-header h2{
  margin:0;
  font-size:clamp(1.7rem,3vw,2.35rem);
  letter-spacing:-.035em;
}

.cpk-close-button{
  appearance:none;
  flex:0 0 auto;
  width:40px;
  height:40px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#24242e;
  color:#fff;
  font-size:1.55rem;
  line-height:1;
  cursor:pointer;
}

.cpk-intro{
  margin:9px 0 20px;
  color:var(--muted);
  font-size:.92rem;
}

.cpk-stage-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.cpk-stage{
  min-width:0;
  margin:0;
  padding:14px 14px 3px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#1b1b24;
}

.cpk-stage-required{
  border-color:rgba(162,122,255,.48);
  background:linear-gradient(145deg,rgba(85,39,168,.17),#1b1b24 58%);
}

.cpk-stage legend{
  padding:0 6px;
  font-size:.78rem;
  font-weight:900;
}

.cpk-stage legend span{
  margin-right:5px;
  color:var(--purple2);
  font-size:.62rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.cpk-stage label{
  margin-top:7px;
  color:#d9d5df;
  font-size:.75rem;
}

.cpk-stage input{
  width:100%;
  height:44px;
  margin:6px 0 10px;
  padding:0 11px;
  border:1px solid var(--line);
  border-radius:10px;
  outline:0;
  background:#24242e;
  color:#fff;
  font-size:16px;
}

.cpk-stage input:focus{
  border-color:var(--purple2);
  box-shadow:0 0 0 3px rgba(162,122,255,.14);
}

.cpk-error{
  margin:14px 0 0;
  padding:11px 13px;
  border:1px solid rgba(255,91,103,.28);
  border-radius:11px;
  background:rgba(255,91,103,.11);
  color:#ffadb3;
  font-size:.85rem;
  font-weight:800;
}

.cpk-result{
  margin-top:14px;
  padding:17px;
  border:1px solid rgba(32,200,117,.3);
  border-radius:15px;
  background:linear-gradient(135deg,rgba(32,200,117,.14),rgba(32,200,117,.035));
  text-align:center;
}

.cpk-result>span{
  display:block;
  color:#a9dfc2;
  font-size:.75rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.cpk-result>strong{
  display:block;
  margin:4px 0 12px;
  color:#7ee7ac;
  font-size:clamp(2rem,5vw,3.25rem);
  line-height:1;
}

.cpk-breakdown{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:7px;
}

.cpk-breakdown span{
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:9px;
  background:rgba(0,0,0,.18);
  font-size:.7rem;
}

.cpk-breakdown b{
  margin-right:5px;
  text-transform:capitalize;
}

.cpk-breakdown em{
  color:#a9dfc2;
  font-style:normal;
}

.cpk-formula{
  margin:12px 0 0;
  color:var(--muted);
  text-align:center;
  font-size:.7rem;
}

.cpk-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:15px;
  padding-top:15px;
  border-top:1px solid var(--line);
}

@media(max-width:1050px){
  .hero{
    grid-template-columns:minmax(0,1fr) 150px 170px;
  }

  .hero-title-line{
    font-size:clamp(1.9rem,3.5vw,2.75rem);
  }
}

@media(max-width:900px){
  .hero{
    grid-template-columns:minmax(0,1fr) minmax(290px,.72fr);
    gap:9px;
  }

  .hero-copy{
    grid-column:1/-1;
  }

  .hero-actions-panel,
  .hero-credentials{
    grid-template-columns:1fr 1fr;
    grid-template-rows:none;
  }

  .cpk-stage-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .hero{
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
    padding:7px 0 6px;
  }

  .hero-copy{
    grid-template-columns:max-content minmax(0,1fr);
    column-gap:7px;
  }

  .hero-copy>.eyebrow{
    padding-right:0;
  }

  .hero-title-line{
    font-size:clamp(1.34rem,6.25vw,1.67rem);
  }

  .hero-search-inline input{
    height:36px;
  }

  .hero-actions-panel,
  .hero-credentials{
    grid-template-columns:1fr 1fr;
    gap:6px;
  }

  .cpk-launch-button,
  .credential-card{
    min-height:43px;
    padding:5px 7px;
    border-radius:10px;
  }

  .cpk-launch-button span,
  .cpk-launch-button small,
  .credential-card span{
    display:none;
  }

  .cpk-launch-button strong,
  .credential-card strong{
    margin:0;
    font-size:.72rem;
  }

  .credential-card small{
    margin-bottom:2px;
    font-size:.52rem;
  }

  .hero-actions-panel>.promotional-filter-button{
    min-height:43px;
    font-size:.6rem;
  }

  .cpk-form{
    padding:17px;
  }

  .cpk-intro{
    font-size:.82rem;
  }

  .cpk-actions .button{
    flex:1;
  }
}

/* ==========================================================
   v32 - AMPLIAÇÃO DAS FOTOS DOS PRODUTOS
   ========================================================== */
.dialog-image-zoom-trigger{
  appearance:none;
  position:relative;
  width:100%;
  height:100%;
  min-height:500px;
  padding:0;
  border:0;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:transparent;
  color:#fff;
  cursor:zoom-in;
}

.dialog-image-zoom-trigger .dialog-product-image{
  pointer-events:none;
  transition:transform .2s ease;
}

.dialog-image-zoom-trigger:hover .dialog-product-image{
  transform:scale(1.025);
}

.dialog-image-zoom-trigger:focus-visible{
  outline:3px solid var(--purple2);
  outline-offset:-4px;
}

.dialog-image-zoom-hint{
  position:absolute;
  left:50%;
  bottom:16px;
  z-index:2;
  transform:translateX(-50%);
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(13,13,18,.78);
  color:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.28);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  font-size:.76rem;
  font-weight:850;
  white-space:nowrap;
  pointer-events:none;
}

.dialog-image-zoom-hint>span{
  font-size:1rem;
  line-height:1;
}

.image-zoom-dialog{
  width:min(1180px,calc(100% - 20px));
  height:min(94vh,900px);
  height:min(94dvh,900px);
  max-width:none;
  max-height:none;
  position:fixed;
  padding:0;
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;
  overflow:hidden;
  background:#0b0b0f;
  color:#fff;
  box-shadow:0 35px 100px rgba(0,0,0,.72);
}

.image-zoom-dialog::backdrop{
  background:rgba(0,0,0,.88);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

.image-zoom-shell{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.image-zoom-toolbar{
  flex:0 0 auto;
  min-height:64px;
  padding:10px 12px 10px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border-bottom:1px solid rgba(255,255,255,.1);
  background:rgba(23,23,31,.94);
}

.image-zoom-toolbar>strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.92rem;
}

.image-zoom-controls{
  display:flex;
  align-items:center;
  gap:6px;
}

.image-zoom-controls button,
.image-zoom-controls output{
  min-width:40px;
  height:40px;
  margin:0;
  border:1px solid rgba(255,255,255,.13);
  border-radius:10px;
  display:grid;
  place-items:center;
  background:#252530;
  color:#fff;
  font-size:1.15rem;
  font-weight:900;
}

.image-zoom-controls button{
  cursor:pointer;
}

.image-zoom-controls button:hover:not(:disabled){
  border-color:var(--purple2);
  background:#302840;
}

.image-zoom-controls button:disabled{
  opacity:.38;
  cursor:not-allowed;
}

.image-zoom-controls output{
  min-width:64px;
  padding:0 8px;
  font-size:.76rem;
}

.image-zoom-controls .image-zoom-reset{
  width:auto;
  padding:0 12px;
  font-size:.74rem;
}

.image-zoom-controls .image-zoom-close{
  margin-left:4px;
  background:#17171f;
  font-size:1.55rem;
}

.image-zoom-viewport{
  flex:1 1 0;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  position:relative;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 50% 45%,#25252d 0,#111116 62%,#09090c 100%);
  cursor:zoom-in;
  touch-action:none;
  overscroll-behavior:contain;
  user-select:none;
  -webkit-user-select:none;
  outline:0;
}

.image-zoom-viewport:focus-visible{
  box-shadow:inset 0 0 0 3px rgba(162,122,255,.75);
}

.image-zoom-viewport.is-zoomed{
  cursor:grab;
}

.image-zoom-viewport.is-dragging{
  cursor:grabbing;
}

.image-zoom-image{
  position:absolute;
  left:50%;
  top:50%;
  display:block;
  width:auto;
  height:auto;
  max-width:none;
  max-height:none;
  padding:0;
  object-fit:contain;
  image-orientation:from-image;
  transform-origin:center;
  will-change:transform;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}

.image-zoom-help{
  flex:0 0 auto;
  min-height:34px;
  margin:0;
  padding:7px 14px;
  border-top:1px solid rgba(255,255,255,.08);
  background:#17171f;
  color:#aaa5b7;
  text-align:center;
  font-size:.72rem;
}

.zoom-help-mobile{
  display:none;
}

@media(max-width:900px){
  .dialog-image-zoom-trigger{
    min-height:320px;
  }
}

@media(max-width:640px){
  .image-zoom-dialog{
    width:calc(100% - 10px);
    height:calc(100vh - 10px);
    height:calc(100dvh - 10px);
    border-radius:15px;
  }

  .image-zoom-toolbar{
    min-height:58px;
    padding:8px;
  }

  .image-zoom-image{
    max-width:none;
    max-height:none;
  }

  .image-zoom-toolbar>strong{
    display:none;
  }

  .image-zoom-controls{
    width:100%;
    justify-content:center;
  }

  .image-zoom-controls button,
  .image-zoom-controls output{
    min-width:38px;
    height:38px;
  }

  .image-zoom-controls output{
    min-width:58px;
  }

  .image-zoom-controls .image-zoom-reset{
    padding:0 9px;
    font-size:.68rem;
  }

  .image-zoom-controls .image-zoom-close{
    margin-left:auto;
  }

  .zoom-help-desktop{
    display:none;
  }

  .zoom-help-mobile{
    display:inline;
  }
}

/* ==========================================================
   v22 - PRODUTOS PROMOCIONAIS EM DOURADO
   ========================================================== */
.product-card-promotional{
  border-color:rgba(226,184,65,.62);
  box-shadow:0 16px 44px rgba(176,126,16,.12);
}

.badge.promotional-badge{
  overflow:hidden;
  padding:8px 12px;
  border:1px solid #ffe594;
  background:linear-gradient(135deg,#fff0a6 0%,#e7b934 32%,#a96e08 62%,#f4cf59 100%);
  color:#211400;
  box-shadow:0 7px 22px rgba(209,158,29,.38),inset 0 1px 0 rgba(255,255,255,.68);
  letter-spacing:.055em;
  text-shadow:0 1px 0 rgba(255,255,255,.38);
}

.promotional-check{
  color:#f3d36e;
}

.admin-product-meta .admin-promotional-pill{
  border:1px solid rgba(255,222,111,.72);
  background:linear-gradient(135deg,rgba(255,226,122,.22),rgba(168,108,8,.25));
  color:#ffdd70;
  font-weight:950;
  letter-spacing:.045em;
}

/* ==========================================================
   v20 - CATEGORIA PRINCIPAL VISÍVEL NO CADASTRO
   ========================================================== */
.product-category-picker{
  margin:18px 0 22px;
  padding:18px;
  border:1px solid rgba(162,122,255,.35);
  border-radius:17px;
  background:linear-gradient(145deg,rgba(123,50,255,.10),rgba(255,255,255,.025));
}

.product-category-picker-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}

.product-category-picker-heading h3{
  margin:0;
  font-size:1.12rem;
}

.product-category-picker-heading small{
  max-width:300px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.45;
  text-align:right;
}

.product-category-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}

.product-category-options button{
  min-height:82px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--surface2);
  color:var(--text);
  cursor:pointer;
  text-align:left;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}

.product-category-options button:hover,
.product-category-options button.selected{
  transform:translateY(-1px);
  border-color:var(--purple2);
  background:rgba(123,50,255,.18);
}

.product-category-options button.selected{
  box-shadow:0 0 0 2px rgba(162,122,255,.14) inset;
}

.product-category-options button span{
  font-size:1.7rem;
}

.product-category-options button strong{
  font-size:.82rem;
  line-height:1.25;
}

.product-category-confirm{
  margin-top:14px;
}

.product-category-confirm select{
  margin-bottom:7px;
}

.product-category-help{
  margin:0;
  color:#c9c1d8;
  font-size:.78rem;
  line-height:1.45;
}

@media(max-width:640px){
  .product-category-picker{
    padding:13px;
  }

  .product-category-picker-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }

  .product-category-picker-heading small{
    text-align:left;
  }

  .product-category-options{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .product-category-options button{
    min-height:75px;
  }
}

/* Administração das medidas PANGEA */
.pangea-admin-panel{
  margin-bottom:20px;
  padding:20px;
}

.pangea-admin-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}

.pangea-admin-heading h2{
  margin:0;
  font-size:1.35rem;
}

.pangea-admin-heading p{
  max-width:520px;
  margin:0;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.5;
}

.pangea-admin-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.pangea-admin-card{
  padding:15px;
  border:1px solid var(--line);
  border-radius:15px;
  background:rgba(255,255,255,.025);
}

.pangea-admin-card:last-child:nth-child(odd){
  grid-column:1/-1;
}

.pangea-admin-card-title strong,
.pangea-admin-card-title small{
  display:block;
}

.pangea-admin-card-title small{
  margin-top:3px;
  color:var(--muted);
  font-size:.72rem;
}

.pangea-admin-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-height:43px;
  margin:13px 0;
}

.pangea-admin-chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  height:31px;
  padding:0 5px 0 9px;
  border:1px solid rgba(162,122,255,.3);
  border-radius:999px;
  background:rgba(123,50,255,.11);
  color:#eee9fa;
  font-size:.72rem;
  font-weight:800;
}

.pangea-measure-remove{
  width:21px;
  height:21px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,91,103,.17);
  color:#ffabb1;
  cursor:pointer;
  font-size:16px;
  line-height:1;
}

.pangea-measure-form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:7px;
}

.pangea-measure-form input{
  min-width:0;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:10px;
  outline:0;
  background:var(--surface2);
  color:#fff;
}

.pangea-measure-form input:focus{
  border-color:var(--purple2);
}

.pangea-no-measures{
  align-self:center;
  color:var(--muted);
  font-size:.76rem;
}

.pangea-admin-setup{
  grid-column:1/-1;
  display:grid;
  gap:5px;
  padding:18px;
  border:1px dashed rgba(255,190,80,.35);
  border-radius:14px;
  color:#f6cd88;
}

.pangea-admin-setup span{
  font-size:.82rem;
  color:#d9c399;
}

button:disabled{
  cursor:not-allowed;
  opacity:.55;
}

@media(max-width:800px){
  .pangea-admin-heading{
    align-items:flex-start;
    flex-direction:column;
  }

  .pangea-admin-grid{
    grid-template-columns:1fr;
  }

  .pangea-admin-card:last-child:nth-child(odd){
    grid-column:auto;
  }
}

@media(max-width:480px){
  .pangea-admin-panel{
    padding:14px;
  }

  .pangea-measure-form{
    grid-template-columns:1fr;
  }
}

/* Categorias de pneus para caminhões */
.results-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  flex-wrap:wrap;
}

.truck-category-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.truck-category-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface);
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease;
}

.truck-category-card:hover,
.truck-category-card:focus-visible{
  transform:translateY(-3px);
  border-color:var(--purple2);
  outline:0;
}

.truck-category-cover{
  position:relative;
  height:240px;
  overflow:hidden;
  background:linear-gradient(135deg,#292333,#14131a);
}

.truck-category-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}

.truck-category-card:hover .truck-category-cover img{
  transform:scale(1.035);
}

.truck-category-placeholder{
  height:100%;
  display:grid;
  place-items:center;
  align-content:center;
  gap:7px;
}

.truck-category-placeholder span{
  font-size:70px;
}

.truck-category-placeholder strong{
  font-size:.8rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.truck-category-cover-rodoviario{background:linear-gradient(135deg,#253446,#141922)}
.truck-category-cover-misto{background:linear-gradient(135deg,#55412b,#1d1813)}
.truck-category-cover-urbano{background:linear-gradient(135deg,#31303d,#17171e)}
.truck-category-cover-otr{background:linear-gradient(135deg,#3f322d,#151311)}

.truck-category-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.68));
  pointer-events:none;
}

.truck-category-count{
  position:absolute;
  right:13px;
  bottom:13px;
  z-index:1;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:rgba(13,13,18,.78);
  color:#fff;
  font-size:.72rem;
  font-weight:850;
  backdrop-filter:blur(8px);
}

.truck-category-info{
  padding:19px;
}

.truck-category-info h3{
  margin:7px 0 5px;
  font-size:1.3rem;
}

.truck-category-info p{
  min-height:42px;
  margin:0 0 16px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.5;
}

/* Administração das capas de caminhões */
.truck-covers-panel{
  margin-bottom:20px;
  padding:20px;
}

.truck-covers-admin-groups{
  display:grid;
  gap:18px;
}

.truck-cover-admin-group{
  padding:15px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.022);
}

.truck-cover-admin-group-title{
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:13px;
}

.truck-cover-admin-group-title>span{
  font-size:30px;
}

.truck-cover-admin-group-title h3,
.truck-cover-admin-group-title p{
  margin:0;
}

.truck-cover-admin-group-title p{
  margin-top:3px;
  color:var(--muted);
  font-size:.75rem;
}

.truck-covers-admin-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.truck-cover-admin-card{
  overflow:hidden;
  padding:12px;
  border:1px solid var(--line);
  border-radius:15px;
  background:rgba(255,255,255,.025);
}

.truck-cover-admin-preview{
  height:145px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:11px;
  background:linear-gradient(135deg,#2c2440,#17151e);
  font-size:46px;
}

.truck-cover-admin-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.truck-cover-admin-copy{
  min-height:67px;
  padding:11px 2px 7px;
}

.truck-cover-admin-copy strong,
.truck-cover-admin-copy small{
  display:block;
}

.truck-cover-admin-copy small{
  margin-top:4px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.4;
}

.truck-cover-file{
  margin:0 0 8px;
  padding:9px 10px;
  border:1px dashed rgba(162,122,255,.45);
  border-radius:10px;
  color:#d9caff;
  cursor:pointer;
  text-align:center;
}

.truck-cover-file input{
  width:1px;
  height:1px;
  position:absolute;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}

.truck-cover-save{
  width:100%;
}

@media(max-width:900px){
  .truck-category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .truck-covers-admin-grid{
    grid-template-columns:1fr;
  }

  .truck-cover-admin-card{
    display:grid;
    grid-template-columns:180px 1fr auto;
    align-items:center;
    gap:12px;
  }

  .truck-cover-admin-preview{
    height:110px;
  }

  .truck-cover-admin-copy{
    min-height:auto;
  }

  .truck-cover-file,
  .truck-cover-save{
    grid-column:3;
    min-width:128px;
  }
}

/* ==========================================================
   v30 - MARCAÇÃO PROMOCIONAL RÁPIDA NO PAINEL
   ========================================================== */
.admin-product-card{
  grid-template-columns:92px minmax(0,1fr) auto;
}

.admin-card-controls,
.admin-product-state{
  display:flex;
  align-items:center;
}

.admin-card-controls{
  gap:12px;
}

.admin-product-state{
  gap:8px;
}

.admin-promotional-toggle{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  margin:0;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:#cbc6d3;
  font-size:.72rem;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,color .16s ease,opacity .16s ease;
}

.admin-promotional-toggle:hover{
  border-color:rgba(255,222,111,.48);
}

.admin-promotional-toggle input{
  -webkit-appearance:checkbox;
  appearance:auto;
  width:18px;
  height:18px;
  margin:0;
  padding:0;
  border-radius:3px;
  flex:0 0 18px;
  accent-color:#e7b934;
  cursor:pointer;
}

.admin-promotional-toggle.is-promotional{
  border-color:rgba(255,222,111,.72);
  background:linear-gradient(135deg,rgba(255,226,122,.20),rgba(168,108,8,.22));
  color:#ffdd70;
  box-shadow:0 6px 20px rgba(209,158,29,.12);
}

.admin-promotional-toggle.is-saving{
  opacity:.62;
  cursor:wait;
}

.admin-promotional-toggle input:focus-visible{
  outline:2px solid #ffdd70;
  outline-offset:3px;
}

@media(max-width:1000px) and (min-width:641px){
  .admin-card-controls{
    flex-direction:column;
    align-items:flex-end;
    gap:7px;
  }
}

@media(max-width:640px){
  .admin-card-controls{
    grid-column:1/-1;
    width:100%;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:9px;
  }

  .admin-card-controls .admin-card-actions{
    grid-column:auto;
    flex:1 1 170px;
  }

  .admin-product-state{
    flex:1 1 auto;
  }
}

@media(max-width:700px){
  .truck-category-grid{
    grid-template-columns:1fr;
  }

  .truck-category-cover{
    height:260px;
  }

  .results-actions{
    justify-content:flex-start;
  }

  .truck-covers-panel{
    padding:14px;
  }

  .truck-cover-admin-group{
    padding:10px;
  }

  .truck-cover-admin-card{
    display:block;
  }

  .truck-cover-admin-preview{
    height:175px;
  }
}

/* Primeiro nível dos pneus para caminhões: medidas */
.truck-measure-grid{
  display:block;
}

.truck-measure-buttons{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.truck-measure-button{
  appearance:none;
  min-width:0;
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(123,50,255,.11),rgba(23,23,31,.98) 52%);
  color:#fff;
  text-align:left;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.truck-measure-button:hover,
.truck-measure-button:focus-visible{
  transform:translateY(-3px);
  border-color:var(--purple2);
  background:linear-gradient(145deg,rgba(123,50,255,.2),rgba(23,23,31,.98) 58%);
  outline:0;
}

.truck-measure-button>strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:.96rem;
  letter-spacing:-.02em;
  white-space:nowrap;
}

.truck-measure-count{
  flex:0 0 auto;
  min-width:42px;
  padding:5px 7px;
  border:1px solid rgba(162,122,255,.28);
  border-radius:10px;
  display:grid;
  place-items:center;
  background:rgba(123,50,255,.13);
  line-height:1;
}

.truck-measure-count b{
  font-size:.82rem;
}

.truck-measure-count small{
  margin-top:3px;
  color:var(--muted);
  font-size:.75rem;
}

/* Segundo nível dos pneus para caminhões: aplicação */
.truck-segment-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.truck-segment-card{
  min-height:315px;
  display:flex;
  flex-direction:column;
  padding:25px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(145deg,rgba(123,50,255,.12),rgba(23,23,31,.97) 48%);
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease;
}

.truck-segment-card:hover,
.truck-segment-card:focus-visible{
  transform:translateY(-3px);
  border-color:var(--purple2);
  outline:0;
}

.truck-segment-icon{
  display:block;
  margin-bottom:25px;
  font-size:52px;
}

.truck-segment-card h3{
  margin:7px 0 7px;
  font-size:1.45rem;
}

.truck-segment-card>p{
  min-height:48px;
  margin:0 0 18px;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.5;
}

.truck-segment-footer{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin:auto 0 15px;
  color:var(--muted);
}

.truck-segment-footer strong{
  color:#fff;
  font-size:1.4rem;
}

/* Posicionamento comercial dos produtos */
.positioning-section{
  grid-column:1/-1;
  min-height:76px;
  display:grid;
  grid-template-columns:48px 1fr auto;
  align-items:center;
  gap:13px;
  margin-top:22px;
  padding:13px 17px;
  border:1px solid var(--line);
  border-left:4px solid var(--purple2);
  border-radius:15px;
  background:linear-gradient(90deg,rgba(123,50,255,.15),rgba(23,23,31,.78));
}

.positioning-section:first-child{
  margin-top:0;
}

.positioning-section>span{
  display:grid;
  place-items:center;
  width:43px;
  height:43px;
  border-radius:12px;
  background:rgba(255,255,255,.07);
  color:var(--purple2);
  font-weight:950;
}

.positioning-section small,
.positioning-section strong{
  display:block;
}

.positioning-section small{
  color:var(--muted);
  font-size:.64rem;
  letter-spacing:.12em;
}

.positioning-section strong{
  margin-top:2px;
  font-size:1.15rem;
}

.positioning-section em{
  color:var(--muted);
  font-size:.76rem;
  font-style:normal;
}

.positioning-section-super_premium{border-left-color:#c39b35}
.positioning-section-premium{border-left-color:#8e6cff}
.positioning-section-performance{border-left-color:#25b8a1}
.positioning-section-combate{border-left-color:#dc6670}
.positioning-section-unclassified{border-left-color:#77717e}

.positioning-pill{
  display:inline-flex;
  width:max-content;
  margin:8px 0 0;
  padding:4px 7px;
  border:1px solid var(--line);
  border-radius:999px;
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.positioning-super_premium{color:#e4bd59;background:rgba(195,155,53,.11)}
.positioning-premium{color:#b9a5ff;background:rgba(142,108,255,.11)}
.positioning-performance{color:#71ddcc;background:rgba(37,184,161,.11)}
.positioning-combate{color:#ff9ba3;background:rgba(220,102,112,.11)}

@media(max-width:1180px){
  .truck-measure-buttons{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:900px){
  .truck-segment-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .truck-measure-buttons{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  .truck-measure-button{
    min-height:58px;
    padding:8px 9px;
  }

  .truck-measure-button>strong{
    font-size:.9rem;
  }

  .truck-measure-count{
    min-width:30px;
    padding:4px 5px;
  }

  .truck-measure-count small{
    display:none;
  }

  .truck-segment-grid{
    grid-template-columns:1fr;
  }

  .truck-segment-card{
    min-height:285px;
  }

  .positioning-section{
    grid-template-columns:43px 1fr;
  }

  .positioning-section em{
    grid-column:2;
  }
}

/* ==========================================================
   v23 - BUSCA IMEDIATA E CATEGORIAS COMPACTAS
   ========================================================== */
.hero{
  min-height:auto;
  padding:38px 0 24px;
  grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);
  gap:36px;
}

.hero h1{
  font-size:clamp(2.45rem,4.4vw,4.2rem);
  margin-bottom:10px;
}

.hero p{
  margin:0;
  font-size:.95rem;
}

.hero-search{
  padding:18px;
  border-radius:16px;
}

.hero-search input{
  height:52px;
}

.search-feedback{
  margin:10px 2px 0!important;
  color:#d9c8ff!important;
  font-size:.8rem!important;
  font-weight:800;
  line-height:1.35!important;
}

.category-section{
  padding:12px 0 20px;
}

.category-section .section-heading{
  align-items:center;
  margin-bottom:10px;
}

.category-section .section-heading .eyebrow{
  display:none;
}

.category-section .section-heading h2{
  font-size:1rem;
  letter-spacing:0;
}

.category-section .category-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
}

.category-section .category-card{
  min-height:72px;
  padding:12px 10px;
  border-radius:14px;
  display:grid;
  grid-template-columns:55px minmax(0,1fr);
  align-items:center;
  column-gap:9px;
}

.category-icon{
  display:block;
  width:52px;
  height:40px;
  object-fit:contain;
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.3));
}

.category-icon-wheel{
  width:40px;
  height:40px;
  justify-self:center;
}

.category-section .category-card>span{
  margin:0;
  font-size:26px;
}

.category-section .category-card strong{
  margin:0;
  font-size:.84rem;
  line-height:1.15;
}

.category-section .category-card small{
  display:none;
}

.products-section{
  padding-top:18px;
}

.catalog-searching .category-section{
  display:none;
}

.catalog-searching .products-section{
  padding-top:20px;
}

@media(max-width:900px){
  .hero{
    grid-template-columns:1fr;
    gap:16px;
    padding:26px 0 14px;
  }

  .hero h1{
    font-size:clamp(2.35rem,8vw,3.8rem);
  }

  .category-section .category-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .hero{
    padding:22px 0 12px;
  }

  .hero h1{
    font-size:2.35rem;
  }

  .hero-search{
    padding:14px;
  }

  .category-section{
    padding:9px 0 16px;
  }

  .category-section .category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .category-section .category-card{
    min-height:62px;
    padding:9px;
    grid-template-columns:45px minmax(0,1fr);
    column-gap:7px;
  }

  .category-icon{
    width:43px;
    height:34px;
  }

  .category-icon-wheel{
    width:34px;
    height:34px;
  }

  .category-section .category-card>span{
    font-size:22px;
  }

  .category-section .category-card strong{
    font-size:.78rem;
  }
}

/* ==========================================================
   v25 - MOBILE COMPACTO, CARROSSEL E FILTRO PROMOCIONAL
   ========================================================== */
.catalog-quick-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  padding:0 0 7px;
}

.promotional-filter-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  padding:9px 16px;
  border:1px solid #ffe28a;
  border-radius:999px;
  background:linear-gradient(135deg,#fff0a6 0%,#e7b934 34%,#a96e08 68%,#f4cf59 100%);
  color:#211400;
  box-shadow:0 8px 24px rgba(209,158,29,.25),inset 0 1px 0 rgba(255,255,255,.7);
  font-size:.76rem;
  font-weight:950;
  letter-spacing:.055em;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}

.promotional-filter-button:hover,
.promotional-filter-button.active{
  transform:translateY(-1px);
  box-shadow:0 10px 30px rgba(225,171,29,.42),0 0 0 3px rgba(255,219,100,.12);
  filter:saturate(1.12) brightness(1.04);
}

.promotional-filter-button.active::after{
  content:'✓';
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#211400;
  color:#ffe17c;
  font-size:.68rem;
}

.quick-action-hint{
  color:var(--muted);
  font-size:.72rem;
}

.product-carousel-shell{
  position:relative;
}

.carousel-controls{
  position:absolute;
  inset:0;
  z-index:8;
  display:block;
  pointer-events:none;
}

.carousel-controls button{
  position:absolute;
  top:44%;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  padding:0 0 3px;
  border:1px solid rgba(183,151,255,.62);
  border-radius:50%;
  background:rgba(21,19,31,.88);
  color:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.04) inset;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
  opacity:.8;
  pointer-events:auto;
  transform:translateY(-50%);
  transition:opacity .18s ease,transform .18s ease,background .18s ease,border-color .18s ease;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

.carousel-arrow-prev{
  left:8px;
}

.carousel-arrow-next{
  right:8px;
}

.carousel-controls button:hover,
.carousel-controls button:focus-visible{
  opacity:1;
  background:rgba(36,28,58,.96);
  border-color:rgba(190,157,255,.9);
  transform:translateY(-50%) scale(1.06);
}

.product-grid.product-carousel{
  display:flex;
  gap:16px;
  padding:0 0 14px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
}

.product-grid.product-carousel .product-image{
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
}

.product-grid.product-carousel .product-image img{
  -webkit-user-drag:none;
  user-select:none;
}

.product-grid.product-carousel.is-dragging{
  scroll-snap-type:none;
  scroll-behavior:auto;
}

.product-grid.product-carousel.is-dragging .product-image,
.product-grid.product-carousel.is-dragging .product-image *{
  cursor:grabbing!important;
}

.product-grid.product-carousel::-webkit-scrollbar{
  display:none;
}

.product-grid.product-carousel>.product-card{
  flex:0 0 calc((100% - 32px)/3);
  scroll-snap-align:start;
  scroll-snap-stop:always;
}

.product-grid.product-carousel>.empty-state{
  flex:0 0 100%;
}

@media(min-width:641px) and (max-width:900px){
  .product-grid.product-carousel>.product-card{
    flex-basis:calc((100% - 16px)/2);
  }
}

@media(max-width:640px){
  .topbar{
    min-height:52px;
    padding:5px 10px;
  }

  .brand-logo-wrap{
    width:108px;
    height:38px;
    padding:1px 5px;
    border-radius:9px;
  }

  .admin-link{
    padding:6px 9px;
    border-radius:10px;
    font-size:0;
  }

  .admin-link::after{
    content:'Admin';
    font-size:.68rem;
    font-weight:800;
  }

  main{
    width:calc(100% - 24px);
  }

  .hero{
    gap:7px;
    padding:10px 0 7px;
  }

  .hero-copy .eyebrow{
    margin-bottom:3px;
    font-size:.56rem;
  }

  .hero h1{
    margin:0;
    font-size:1.72rem;
    line-height:1;
    letter-spacing:-.045em;
  }

  .hero-copy p{
    display:none;
  }

  .hero-search{
    padding:7px;
    border-radius:12px;
  }

  .hero-search label{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
  }

  .hero-search input{
    height:40px;
    padding:0 12px;
    border-radius:10px;
    font-size:16px;
  }

  .search-feedback{
    margin:6px 4px 1px!important;
    font-size:.68rem!important;
  }

  .catalog-quick-actions{
    justify-content:center;
    padding:0 0 5px;
  }

  .promotional-filter-button{
    width:100%;
    min-height:35px;
    padding:7px 12px;
    font-size:.66rem;
  }

  .quick-action-hint{
    display:none;
  }

  .category-section{
    padding:3px 0 8px;
  }

  .category-section .section-heading{
    margin-bottom:5px;
  }

  .category-section .section-heading h2{
    font-size:.82rem;
  }

  .category-section .category-grid{
    display:flex;
    gap:7px;
    margin-inline:-12px;
    padding:0 12px 5px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }

  .category-section .category-grid::-webkit-scrollbar{
    display:none;
  }

  .category-section .category-card{
    flex:0 0 132px;
    min-height:53px;
    padding:7px;
    grid-template-columns:39px minmax(0,1fr);
    column-gap:6px;
    border-radius:12px;
    scroll-snap-align:start;
  }

  .category-icon{
    width:38px;
    height:29px;
  }

  .category-icon-wheel{
    width:29px;
    height:29px;
  }

  .category-section .category-card>span{
    font-size:19px;
  }

  .category-section .category-card strong{
    font-size:.67rem;
    line-height:1.12;
  }

  .products-section{
    padding-top:7px;
  }

  .products-section .section-heading{
    align-items:center;
    margin-bottom:9px;
  }

  .products-section .section-heading h2{
    font-size:1.28rem;
    line-height:1.05;
  }

  .products-section .eyebrow{
    margin-bottom:4px;
    font-size:.58rem;
  }

  .results-actions{
    gap:5px;
  }

  .count-pill{
    padding:5px 7px;
    font-size:.62rem;
  }

  .carousel-controls button{
    top:42%;
    width:40px;
    height:40px;
    font-size:1.4rem;
  }

  .carousel-arrow-prev{
    left:3px;
  }

  .carousel-arrow-next{
    right:3px;
  }

  .product-grid.product-carousel{
    display:flex;
    gap:11px;
    margin-inline:-12px;
    padding:0 12px 12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:12px;
    scrollbar-width:none;
    touch-action:pan-x;
  }

  .product-grid.product-carousel::-webkit-scrollbar{
    display:none;
  }

  .product-grid.product-carousel>.product-card{
    flex:0 0 min(82vw,320px);
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }

  .product-grid.product-carousel>.empty-state{
    flex:0 0 100%;
  }

  .product-grid.product-carousel .product-image,
  .product-grid.product-carousel .pangea-card-image{
    height:220px;
  }

  .product-grid.product-carousel .product-info{
    padding:14px;
  }

  .product-grid.product-carousel .product-info h3{
    margin:6px 0 4px;
    font-size:1.02rem;
  }

  .product-grid.product-carousel .measure{
    margin-bottom:10px;
    font-size:.94rem;
  }

  .product-grid.product-carousel .product-meta{
    margin-bottom:11px;
  }

  .floating-whatsapp{
    right:11px;
    bottom:11px;
    padding:9px 12px;
    font-size:.72rem;
  }
}

/* ==========================================================
   v29 - BUSCA AO LADO DO TÍTULO E PROMOCIONAIS NO TOPO
   ========================================================== */
.visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.hero{
  grid-template-columns:minmax(0,1fr) minmax(300px,360px);
  gap:32px;
  padding:24px 0 16px;
}

.hero-copy{
  display:grid;
  grid-template-columns:max-content minmax(260px,1fr);
  grid-template-areas:
    "eyebrow eyebrow"
    "title-one title-one"
    "title-two search"
    "description description";
  column-gap:18px;
  row-gap:0;
  align-items:center;
  min-width:0;
}

.hero-copy>.eyebrow{
  grid-area:eyebrow;
  margin-bottom:7px;
}

.hero-title-line{
  display:block;
  color:var(--text);
  font-size:clamp(2.45rem,4.4vw,4.2rem);
  font-weight:800;
  line-height:.95;
  letter-spacing:-.055em;
}

.hero-title-line-one{
  grid-area:title-one;
}

.hero-title-line-two{
  grid-area:title-two;
}

.hero-search-inline{
  grid-area:search;
  position:relative;
  width:min(100%,390px);
  min-width:0;
  padding:5px;
  border-radius:14px;
  align-self:center;
}

.hero-search-inline input{
  height:52px;
  border-radius:11px;
  font-size:16px;
}

.hero-search-inline .search-feedback:not(.hidden){
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px!important;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.hero-description{
  grid-area:description;
  margin:7px 0 0!important;
}

.hero-promo-panel{
  min-height:124px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(23,23,31,.88);
  box-shadow:0 16px 42px rgba(0,0,0,.2);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  display:grid;
  align-content:center;
  gap:9px;
}

.hero-promo-panel>.eyebrow{
  margin:0;
}

.hero-promo-panel .promotional-filter-button{
  width:100%;
  min-height:52px;
  font-size:.82rem;
}

.hero-promo-panel .quick-action-hint{
  text-align:center;
}

@media(max-width:900px){
  .hero{
    grid-template-columns:1fr;
    gap:9px;
    padding:18px 0 11px;
  }

  .hero-promo-panel{
    min-height:0;
    padding:7px;
    display:flex;
    align-items:center;
    justify-content:flex-end;
  }

  .hero-promo-panel>.eyebrow,
  .hero-promo-panel .quick-action-hint{
    display:none;
  }

  .hero-promo-panel .promotional-filter-button{
    width:auto;
    min-height:38px;
  }
}

@media(max-width:640px){
  .hero{
    position:relative;
    display:block;
    padding:8px 0 6px;
  }

  .hero-copy{
    grid-template-columns:max-content minmax(0,1fr);
    column-gap:8px;
  }

  .hero-copy>.eyebrow{
    padding-right:122px;
    margin-bottom:3px;
  }

  .hero-title-line{
    font-size:clamp(1.52rem,7.2vw,1.82rem);
    line-height:1;
  }

  .hero-search-inline{
    width:100%;
    padding:3px;
    border-radius:10px;
  }

  .hero-search-inline input{
    height:38px;
    padding:0 10px;
    border-radius:8px;
    font-size:16px;
  }

  .hero-description{
    display:none;
  }

  .hero-promo-panel{
    position:absolute;
    top:5px;
    right:0;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }

  .hero-promo-panel .promotional-filter-button{
    width:auto;
    min-height:29px;
    padding:5px 9px;
    font-size:.58rem;
  }
}

/* v37: estas regras ficam por último para prevalecer sobre os ajustes antigos do hero. */
.hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 168px 190px;
  gap:12px;
  padding:18px 0 13px;
  align-items:stretch;
}

.hero-copy{
  display:grid;
  grid-template-columns:max-content minmax(230px,1fr);
  grid-template-areas:
    "eyebrow eyebrow"
    "title-one title-one"
    "title-two search"
    "description description";
  column-gap:12px;
  row-gap:0;
  align-items:center;
  align-content:center;
  min-width:0;
}

.hero-copy>.eyebrow{grid-area:eyebrow;margin-bottom:5px}
.hero-title-line{font-size:clamp(2rem,3.15vw,3.15rem);line-height:.93}
.hero-title-line-one{grid-area:title-one}
.hero-title-line-two{grid-area:title-two}
.hero-search-inline{grid-area:search;width:min(100%,340px);padding:5px}
.hero-search-inline input{height:46px}
.hero-description{grid-area:description;margin:5px 0 0!important;font-size:.82rem!important}

@media(max-width:1050px){
  .hero{grid-template-columns:minmax(0,1fr) 150px 170px}
  .hero-title-line{font-size:clamp(1.9rem,3.5vw,2.75rem)}
}

@media(max-width:900px){
  .hero{grid-template-columns:minmax(0,1fr) minmax(290px,.72fr);gap:9px;padding:14px 0 10px}
  .hero-copy{grid-column:1/-1}
}

@media(max-width:640px){
  .hero{display:grid;grid-template-columns:1fr;gap:6px;padding:7px 0 6px}
  .hero-copy{grid-template-columns:max-content minmax(0,1fr);column-gap:7px}
  .hero-copy>.eyebrow{padding-right:0;margin-bottom:3px}
  .hero-title-line{font-size:clamp(1.34rem,6.25vw,1.67rem);line-height:1}
  .hero-search-inline{width:100%;padding:3px;border-radius:10px}
  .hero-search-inline input{height:36px;padding:0 9px;border-radius:8px;font-size:16px}
  .hero-description{display:none}
}

/* ==========================================================
   v38 - ATALHOS DISTRIBUÍDOS SEM COMPRIMIR A BUSCA
   ========================================================== */
.hero{
  grid-template-columns:minmax(0,560px) 150px minmax(24px,1fr) 176px;
  gap:12px;
}

.hero-copy{
  grid-column:1;
  grid-row:1;
  grid-template-columns:195px minmax(230px,1fr);
}

.hero-actions-panel{
  grid-column:2;
  grid-row:1;
}

.hero-credentials{
  grid-column:4;
  grid-row:1;
}

.hero-title-line{
  font-size:clamp(1.65rem,2.35vw,2.35rem);
  line-height:.96;
}

.hero-search-inline{
  width:min(100%,340px);
}

.cpk-launch-button{
  min-height:44px;
  padding:6px 8px;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:7px;
}

.cpk-launch-button .quick-action-icon{
  flex:0 0 auto;
  width:25px;
  height:25px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:7px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1rem;
  line-height:1;
  letter-spacing:0;
}

.cpk-launch-button strong{
  margin:0;
  font-size:.68rem;
  line-height:1.08;
}

.hero-actions-panel>.promotional-filter-button{
  min-height:44px;
  padding:6px 8px;
  font-size:.6rem;
}

.credential-card{
  min-height:44px;
  padding:6px 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:left;
}

.credential-card>.credential-icon{
  flex:0 0 auto;
  width:26px;
  height:26px;
  border:1px solid currentColor;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#31c7ff;
  font-size:.8rem;
  font-weight:950;
  line-height:1;
}

.credential-card>.infinity-icon{
  color:#c8aaff;
}

.credential-copy{
  min-width:0;
  display:grid;
  gap:1px;
}

.credential-card .credential-copy small{
  font-size:.5rem;
  line-height:1;
  white-space:nowrap;
}

.credential-card .credential-copy strong{
  margin:0;
  font-size:.76rem;
  line-height:1;
  white-space:nowrap;
}

.credential-card .credential-detail{
  color:#c8aaff;
  font-size:.55rem;
  line-height:1;
  font-weight:850;
}

@media(max-width:1050px){
  .hero{
    grid-template-columns:minmax(0,1fr) 140px minmax(16px,.25fr) 160px;
  }
}

@media(max-width:900px){
  .hero{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }

  .hero-copy{
    grid-column:1/-1;
    grid-row:1;
    grid-template-columns:max-content minmax(0,1fr);
  }

  .hero-actions-panel{
    grid-column:1;
    grid-row:2;
  }

  .hero-credentials{
    grid-column:2;
    grid-row:2;
  }
}

@media(max-width:640px){
  .hero{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
  }

  .hero-copy{
    grid-column:1/-1;
    grid-row:1;
  }

  .hero-actions-panel,
  .hero-credentials{
    display:contents;
  }

  .cpk-launch-button,
  .credential-card,
  .hero-actions-panel>.promotional-filter-button{
    min-width:0;
    min-height:44px;
    padding:4px;
    border-radius:9px;
    display:grid;
    place-items:center;
    align-content:center;
    gap:2px;
    text-align:center;
  }

  .cpk-launch-button .quick-action-icon,
  .credential-card>.credential-icon{
    width:20px;
    height:20px;
    font-size:.7rem;
  }

  .cpk-launch-button strong,
  .credential-card .credential-copy strong{
    font-size:.5rem;
    line-height:1;
    white-space:normal;
  }

  .credential-copy{
    display:block;
    text-align:center;
  }

  .credential-card .credential-copy small,
  .credential-card .credential-detail{
    display:none;
  }

  .hero-actions-panel>.promotional-filter-button{
    font-size:.48rem;
    line-height:1;
  }

  .hero-title-line{
    font-size:clamp(1.15rem,5.7vw,1.5rem);
  }
}

/* ==========================================================
   v39 - ATALHOS COM ESPAÇO REAL + LOGOS OFICIAIS
   Mantém título e busca juntos; distribui as quatro ações na
   área restante sem apertar os selos VIPAL e Infinity.
   ========================================================== */
.hero{
  grid-template-columns:minmax(0,560px) minmax(0,1fr);
  gap:26px;
  padding:18px 0 13px;
  align-items:center;
}

.hero-copy{
  grid-column:1;
  grid-row:1;
  grid-template-columns:195px minmax(230px,1fr);
}

.hero-utility-strip{
  grid-column:2;
  grid-row:1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
  min-width:0;
}

.hero-utility-strip>.cpk-launch-button,
.hero-utility-strip>.promotional-filter-button,
.hero-utility-strip>.credential-card{
  width:100%;
  height:70px;
  min-height:70px;
  margin:0;
  padding:8px 10px;
  border-radius:14px;
}

.hero-utility-strip>.cpk-launch-button{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
}

.hero-utility-strip>.cpk-launch-button .quick-action-icon{
  width:25px;
  height:25px;
}

.hero-utility-strip>.cpk-launch-button strong{
  font-size:.62rem;
  line-height:1;
  white-space:nowrap;
}

.hero-utility-strip>.promotional-filter-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  font-size:.61rem;
  line-height:1;
  white-space:nowrap;
}

.hero-utility-strip>.credential-card{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  overflow:hidden;
  text-align:center;
}

.credential-logo{
  display:block;
  width:100%;
  max-width:138px;
  height:50px;
  object-fit:contain;
}

.credential-logo-vipal{
  height:42px;
}

.credential-logo-infinity{
  height:44px;
}

.infinity-years{
  position:absolute;
  right:6px;
  bottom:5px;
  padding:2px 5px;
  border-radius:999px;
  background:rgba(13,13,18,.9);
  color:#fff;
  font-size:.48rem!important;
  font-weight:900;
  line-height:1!important;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.infinity-card .infinity-years{
  color:#fff;
}

@media(max-width:1100px){
  .hero{
    grid-template-columns:minmax(0,520px) minmax(0,1fr);
    gap:16px;
  }

  .hero-copy{
    grid-template-columns:175px minmax(210px,1fr);
  }

  .hero-utility-strip{
    gap:7px;
  }

  .hero-utility-strip>.cpk-launch-button strong,
  .hero-utility-strip>.promotional-filter-button{
    font-size:.54rem;
  }
}

@media(max-width:900px){
  .hero{
    grid-template-columns:1fr;
    gap:9px;
  }

  .hero-copy{
    grid-column:1;
    grid-row:1;
    grid-template-columns:195px minmax(230px,1fr);
  }

  .hero-utility-strip{
    grid-column:1;
    grid-row:2;
    gap:8px;
  }

  .hero-utility-strip>.cpk-launch-button,
  .hero-utility-strip>.promotional-filter-button,
  .hero-utility-strip>.credential-card{
    height:58px;
    min-height:58px;
  }

  .credential-logo{
    max-width:150px;
    height:43px;
  }

  .credential-logo-vipal{
    height:36px;
  }
}

@media(max-width:640px){
  .hero{
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
    padding:7px 0 6px;
  }

  .hero-copy{
    grid-template-columns:max-content minmax(0,1fr);
    column-gap:7px;
  }

  .hero-utility-strip{
    grid-template-columns:repeat(4,minmax(112px,1fr));
    gap:6px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding:1px 0 3px;
  }

  .hero-utility-strip::-webkit-scrollbar{
    display:none;
  }

  .hero-utility-strip>.cpk-launch-button,
  .hero-utility-strip>.promotional-filter-button,
  .hero-utility-strip>.credential-card{
    height:50px;
    min-height:50px;
    padding:5px 7px;
    border-radius:10px;
  }

  .hero-utility-strip>.cpk-launch-button{
    flex-direction:row;
    gap:5px;
  }

  .hero-utility-strip>.cpk-launch-button .quick-action-icon{
    width:20px;
    height:20px;
    font-size:.68rem;
  }

  .hero-utility-strip>.cpk-launch-button strong,
  .hero-utility-strip>.promotional-filter-button{
    font-size:.5rem;
  }

  .credential-logo{
    max-width:104px;
    height:39px;
  }

  .credential-logo-vipal{
    height:29px;
  }

  .infinity-years{
    right:3px;
    bottom:3px;
    padding:1px 3px;
    font-size:.4rem!important;
  }
}

/* ==========================================================
   v41 - TRÊS AÇÕES CLICÁVEIS NO TOPO
   CPK, Promocionais e VIPAL dividem igualmente o espaço.
   ========================================================== */
.hero-utility-strip{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.hero-utility-strip>.credential-card{
  cursor:pointer;
}

.hero-utility-strip .credential-logo-vipal{
  max-width:175px;
}

@media(max-width:640px){
  .hero-utility-strip{
    grid-template-columns:repeat(3,minmax(100px,1fr));
  }
}

/* ==========================================================
   v44 - VENDA DA CARCAÇA NA CALCULADORA DE CPK
   ========================================================== */
.cpk-carcass-stage{
  margin-top:10px;
  padding:12px 14px 10px;
  border-color:rgba(255,194,71,.34);
  background:linear-gradient(135deg,rgba(255,190,60,.07),rgba(255,255,255,.018));
}

.cpk-carcass-stage legend span{
  color:#f5ca67;
}

.cpk-carcass-content{
  display:grid;
  grid-template-columns:minmax(230px,340px) minmax(0,1fr);
  gap:16px;
  align-items:center;
}

.cpk-carcass-content label,
.cpk-carcass-content input{
  margin-bottom:0;
}

.cpk-carcass-content p{
  margin:0;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.5;
}

.cpk-breakdown .cpk-carcass-discount em{
  color:#ffd36a;
}

@media(max-width:640px){
  .cpk-carcass-content{
    grid-template-columns:1fr;
    gap:5px;
  }

  .cpk-carcass-content p{
    padding-bottom:3px;
  }
}

/* ==========================================================
   v45 - RELATÓRIO COMPACTO DE MEDIDAS NO PAINEL
   ========================================================== */
.dashboard-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
}

.measure-report-open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid rgba(162,122,255,.42);
  background:rgba(123,50,255,.11);
  color:#e8ddff;
}

.measure-report-open:hover{
  border-color:var(--purple2);
  background:rgba(123,50,255,.2);
}

.measure-report-open>span{
  font-size:1rem;
  color:var(--purple2);
}

.measure-report-dialog{
  width:min(1080px,calc(100% - 28px));
  max-height:calc(100vh - 28px);
  margin:auto;
  padding:0;
  overflow:auto;
  border:1px solid rgba(162,122,255,.26);
  border-radius:22px;
  background:#121219;
  color:var(--text);
  box-shadow:0 28px 90px rgba(0,0,0,.58);
}

.measure-report-dialog::backdrop{
  background:rgba(0,0,0,.76);
  backdrop-filter:blur(5px);
}

.measure-report-shell{
  padding:24px;
}

.measure-report-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding-bottom:17px;
  border-bottom:1px solid var(--line);
}

.measure-report-header h2{
  margin:0;
  font-size:clamp(1.55rem,3vw,2.15rem);
  letter-spacing:-.035em;
}

.measure-report-header p{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.5;
}

.measure-report-close{
  flex:0 0 39px;
  width:39px;
  height:39px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface2);
  color:#fff;
  font-size:1.45rem;
  line-height:1;
  cursor:pointer;
}

.measure-report-close:hover{
  border-color:var(--purple2);
}

.measure-report-controls{
  display:grid;
  grid-template-columns:210px 235px minmax(220px,1fr);
  gap:11px;
  padding:17px 0 4px;
}

.measure-report-controls label{
  margin:0;
  color:#d9d3e4;
  font-size:.74rem;
}

.measure-report-controls input,
.measure-report-controls select{
  width:100%;
  height:43px;
  margin:6px 0 0;
  padding:0 11px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface2);
  color:#fff;
  outline:0;
}

.measure-report-controls input:focus,
.measure-report-controls select:focus{
  border-color:var(--purple2);
  box-shadow:0 0 0 3px rgba(123,50,255,.12);
}

.measure-report-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(105px,150px)) minmax(180px,1fr);
  gap:9px;
  align-items:stretch;
  margin:11px 0 4px;
}

.measure-report-summary>div{
  display:flex;
  align-items:baseline;
  gap:7px;
  min-height:48px;
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.032);
}

.measure-report-summary strong{
  font-size:1.1rem;
}

.measure-report-summary span{
  color:var(--muted);
  font-size:.69rem;
  font-weight:750;
}

.measure-report-summary .measure-report-promotional-summary{
  border-color:rgba(255,213,87,.28);
  background:rgba(205,147,17,.08);
}

.measure-report-promotional-summary strong,
.measure-report-promotional-summary span{
  color:#f4cf61;
}

.measure-report-summary>.button{
  justify-self:end;
  min-width:190px;
}

.measure-report-summary>.button:disabled{
  opacity:.42;
  cursor:not-allowed;
}

.measure-report-content{
  display:grid;
  gap:13px;
  margin-top:13px;
}

.measure-report-category{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
}

.measure-report-category-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(90deg,rgba(123,50,255,.14),rgba(255,255,255,.018));
}

.measure-report-category-heading>div{
  display:flex;
  align-items:baseline;
  gap:10px;
}

.measure-report-category-heading span{
  color:#f5f1fb;
  font-size:.9rem;
  font-weight:950;
}

.measure-report-category-heading strong,
.measure-report-category-heading small{
  color:var(--muted);
  font-size:.69rem;
}

.measure-report-groups{
  display:grid;
}

.measure-report-group{
  border-bottom:1px solid rgba(255,255,255,.075);
}

.measure-report-group:last-child{
  border-bottom:0;
}

.measure-report-group>summary{
  display:grid;
  grid-template-columns:minmax(145px,1fr) 100px 135px 22px;
  gap:10px;
  align-items:center;
  min-height:49px;
  padding:8px 13px;
  list-style:none;
  cursor:pointer;
  transition:background .15s ease;
}

.measure-report-group>summary::-webkit-details-marker{
  display:none;
}

.measure-report-group>summary:hover{
  background:rgba(255,255,255,.035);
}

.measure-report-group>summary>strong{
  color:#fff;
  font-size:.9rem;
}

.measure-report-group>summary>span{
  color:var(--muted);
  font-size:.7rem;
}

.measure-report-group>summary>i{
  color:var(--purple2);
  font-size:1rem;
  font-style:normal;
  text-align:center;
  transition:transform .16s ease;
}

.measure-report-group[open]>summary>i{
  transform:rotate(180deg);
}

.measure-report-group>summary .measure-report-promo-count{
  justify-self:start;
  padding:4px 7px;
  border:1px solid var(--line);
  border-radius:999px;
  white-space:nowrap;
}

.measure-report-group>summary .measure-report-promo-count.has-promotional{
  border-color:rgba(255,221,112,.5);
  background:rgba(195,137,16,.13);
  color:#ffdd70;
}

.measure-report-products{
  padding:0 13px 10px;
}

.measure-report-product{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  min-height:46px;
  padding:7px 10px;
  border-top:1px solid rgba(255,255,255,.055);
  background:rgba(0,0,0,.12);
}

.measure-report-product:first-child{
  border-radius:10px 10px 0 0;
}

.measure-report-product:last-child{
  border-radius:0 0 10px 10px;
}

.measure-report-product:only-child{
  border-radius:10px;
}

.measure-report-product strong,
.measure-report-product small{
  display:block;
}

.measure-report-product strong{
  overflow:hidden;
  color:#eeeaf4;
  font-size:.8rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.measure-report-product small{
  margin-top:3px;
  color:var(--muted);
  font-size:.66rem;
}

.measure-report-product-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
}

.measure-report-copy-product{
  min-height:27px;
  padding:4px 8px;
  border:1px solid rgba(162,122,255,.3);
  border-radius:8px;
  background:rgba(123,50,255,.09);
  color:#d8c8ff;
  font-size:.62rem;
  font-weight:850;
  cursor:pointer;
}

.measure-report-copy-product:hover{
  border-color:var(--purple2);
  background:rgba(123,50,255,.18);
}

.measure-report-promo-toggle{
  min-height:27px;
  padding:5px 9px;
  border:1px solid rgba(255,221,112,.26);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:#c5becf;
  font-size:.59rem;
  font-weight:950;
  letter-spacing:.025em;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,color .16s ease,opacity .16s ease;
}

.measure-report-promo-toggle:hover,
.measure-report-promo-toggle:focus-visible{
  border-color:#ffdd70;
  color:#ffdd70;
  outline:0;
}

.measure-report-promo-toggle.is-promotional{
  border-color:rgba(255,222,111,.66);
  background:linear-gradient(135deg,rgba(255,226,122,.19),rgba(168,108,8,.21));
  color:#ffdd70;
}

.measure-report-promo-toggle.is-saving,
.measure-report-promo-toggle:disabled{
  opacity:.55;
  cursor:wait;
}

.measure-report-empty{
  min-height:230px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:7px;
  border:1px dashed var(--line);
  border-radius:16px;
  color:var(--muted);
  text-align:center;
}

.measure-report-empty>span{
  color:var(--purple2);
  font-size:2rem;
}

.measure-report-empty small{
  font-size:.74rem;
}

@media(max-width:760px){
  .dashboard-actions{
    width:100%;
  }

  .dashboard-actions>.button{
    flex:1;
  }

  .measure-report-shell{
    padding:16px;
  }

  .measure-report-controls{
    grid-template-columns:1fr 1fr;
  }

  .measure-report-search{
    grid-column:1/-1;
  }

  .measure-report-summary{
    grid-template-columns:repeat(3,1fr);
  }

  .measure-report-summary>.button{
    grid-column:1/-1;
    width:100%;
    justify-self:stretch;
  }
}

@media(max-width:520px){
  .dashboard-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .dashboard-actions>.button{
    min-height:44px;
    padding:9px 10px;
    font-size:.72rem;
  }

  .measure-report-dialog{
    width:calc(100% - 14px);
    max-height:calc(100vh - 14px);
    border-radius:17px;
  }

  .measure-report-header p{
    font-size:.76rem;
  }

  .measure-report-controls{
    grid-template-columns:1fr;
  }

  .measure-report-search{
    grid-column:auto;
  }

  .measure-report-summary{
    grid-template-columns:repeat(3,1fr);
    gap:6px;
  }

  .measure-report-summary>div{
    display:block;
    min-width:0;
    min-height:52px;
    padding:7px;
    text-align:center;
  }

  .measure-report-summary strong,
  .measure-report-summary span{
    display:block;
  }

  .measure-report-summary span{
    margin-top:2px;
    font-size:.57rem;
  }

  .measure-report-group>summary{
    grid-template-columns:minmax(0,1fr) 105px 19px;
    gap:6px;
    padding:8px 10px;
  }

  .measure-report-group>summary>span:not(.measure-report-promo-count){
    display:none;
  }

  .measure-report-group>summary .measure-report-promo-count{
    justify-self:end;
    font-size:.61rem;
  }

  .measure-report-products{
    padding:0 8px 8px;
  }

  .measure-report-product{
    grid-template-columns:1fr;
    gap:6px;
    padding:8px;
  }

  .measure-report-product-actions{
    justify-content:space-between;
  }

  .measure-report-promo-toggle{
    justify-self:start;
  }
}

/* v47: disponibilidade de estoque */
.stock-badge{position:absolute;right:10px;bottom:10px;padding:7px 10px;border:1px solid #ff9393;border-radius:999px;background:#51262e;color:#ffdddd;font-size:.7rem;font-weight:900}
.stock-notice{padding:10px 12px;border:1px solid #a05060;border-radius:10px;background:#45232c;color:#ffced6;font-size:.82rem}
.stock-check{color:#ffb0b9}
.stock-toggle{display:inline-flex;gap:6px;align-items:center;white-space:nowrap;font-size:.7rem;margin:0;padding:7px;border:1px solid var(--line);border-radius:12px}
.stock-toggle input{width:16px;height:16px;margin:0;accent-color:#f37886}
.stock-toggle.is-out{color:#ffb0b9;border-color:#a05060;background:#45232c}
.report-stock-toggle{min-height:27px;padding:5px 8px;font-size:.59rem;font-weight:850;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--muted);cursor:pointer}
.report-stock-toggle.is-out{color:#ffb0b9;border-color:#a05060;background:#45232c}
.report-stock-toggle:disabled{opacity:.5;cursor:wait}
.measure-report-product-actions{flex-wrap:wrap}
@media(max-width:1000px){.admin-product-state{flex-wrap:wrap}}

/* v48: catálogos Speedmax e Rocel */
.catalog-brands{display:flex;gap:12px;align-items:center;min-width:0}
.catalog-brand{appearance:none;display:grid;gap:2px;justify-items:center;padding:4px;border:1px solid transparent;border-radius:15px;background:transparent;color:var(--muted);cursor:pointer;min-width:0}
.catalog-brand.selected{border-color:var(--purple2);background:rgba(123,50,255,.09);color:#fff}
.catalog-brand:focus-visible{outline:2px solid var(--purple2);outline-offset:3px}
.catalog-brand .brand-logo-wrap,.rocel-logo-wrap{width:178px;height:62px;display:block;overflow:hidden;border-radius:11px}
.catalog-brand .brand-logo{width:100%;height:100%;object-fit:contain}
.rocel-logo-wrap{background:#000}
.rocel-logo-wrap img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.catalog-brand-label{font-size:.65rem;font-weight:850;line-height:1.3}
.catalog-accessories .hero-utility-strip{grid-template-columns:1fr;max-width:240px;justify-self:end;width:100%}
.catalog-accessories .hero-utility-strip>.promotional-filter-button{width:100%}
@media(max-width:640px){
.catalog-brands{gap:5px;flex:1}
.catalog-brand{padding:3px;flex:0 1 133px}
.catalog-brand .brand-logo-wrap,.rocel-logo-wrap{width:100%;height:48px}
.catalog-brand-label{font-size:.56rem}
.topbar>.admin-link{font-size:.63rem;padding:7px;max-width:90px;text-align:center}
.catalog-accessories .hero-utility-strip{max-width:none;justify-self:stretch}
}

/* v49: cadastro Rocel simplificado */
.rocel-admin-panel{padding:20px;margin:0 0 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:rgba(162,122,255,.4)}
.rocel-admin-panel h2{margin:0;font-size:1.3rem}
.rocel-admin-panel p{margin:7px 0 0;color:var(--muted);font-size:.8rem;max-width:550px;line-height:1.5}
.rocel-admin-actions{display:flex;flex-wrap:wrap;gap:8px}
.rocel-form-intro{display:none;padding:12px;border:1px solid var(--line);border-radius:12px;color:#d9c8ff;font-size:.8rem;line-height:1.5}
.rocel-simple-form .rocel-form-intro{display:block}
.rocel-simple-form .product-category-picker,.rocel-simple-form .form-grid>label:not(.rocel-name-field):not(.rocel-order-field){display:none}
.rocel-simple-form .form-grid{grid-template-columns:1fr}
.rocel-whatsapp{margin-top:9px;font-size:.8rem}
.catalog-accessories .product-meta:empty{display:none}
@media(max-width:760px){.rocel-admin-panel{display:block}.rocel-admin-actions{margin-top:14px}.rocel-admin-actions .button{flex:1;font-size:.76rem}}

/* v50: administração por marca */
.admin-main .dashboard-heading{flex-wrap:wrap}
.admin-main .admin-toolbar:has(select.hidden){grid-template-columns:1fr}
@media(max-width:640px){.topbar .catalog-brand-label{font-size:.53rem}.topbar .top-actions{gap:5px}.topbar .top-actions .button{padding:8px;font-size:.7rem}}

/* v53: amplia a arte Rocel, retirando somente as margens pretas externas.
   Arte original: limites x=27..1231, y=356..1072 em 1254x1254.
   Janela de exibição y=334..1082: todo o desenho permanece visível. */
.catalog-brand-rocel .rocel-logo-wrap{position:relative;width:178px;height:auto;aspect-ratio:1254 / 748;overflow:hidden;background:#000}
.catalog-brand-rocel .rocel-logo-wrap img{position:absolute;top:0;left:0;display:block;width:100%;height:auto;max-height:none;object-fit:contain;transform:translateY(-26.63477%)}
@media(max-width:640px){.catalog-brand-rocel .rocel-logo-wrap{width:100%;height:auto;aspect-ratio:1254 / 748}}

/* v54: textos maiores nas ações, preservando os espaços existentes. */
.hero-utility-strip>.cpk-launch-button strong{
  font-size:clamp(.9rem,1.2vw,1.15rem);
  line-height:1.15;
  white-space:normal;
}
.hero-utility-strip>.promotional-filter-button{
  font-size:clamp(.85rem,1.15vw,1.1rem);
  line-height:1.15;
  letter-spacing:0;
  white-space:normal;
}
@media(max-width:640px){
  .hero-utility-strip>.cpk-launch-button strong{font-size:.9rem;line-height:1.1}
  .hero-utility-strip>.cpk-launch-button .quick-action-icon{display:none}
  .hero-utility-strip>.promotional-filter-button{font-size:.75rem;padding-inline:4px}
  .hero-utility-strip>.promotional-filter-button>span{display:none}
}

/* v55: promocionais sem estrela, com texto maior e centralizado no celular. */
#promotionalFilterBtn{
  position:relative;
  display:grid;
  place-items:center;
  gap:0;
  text-align:center;
}
#promotionalFilterBtn>.promotional-filter-label{
  display:block;
  margin:0;
  padding:0;
  line-height:1.15;
  white-space:nowrap;
}
#promotionalFilterBtn.active::after{
  position:absolute;
  right:4px;
  bottom:3px;
  width:13px;
  height:13px;
  font-size:.55rem;
}
@media(max-width:640px){
  .hero-utility-strip{
    grid-template-columns:minmax(82px,1fr) minmax(120px,1.35fr) minmax(82px,1fr);
  }
  #promotionalFilterBtn{
    font-size:.875rem;
    padding:5px 4px;
    letter-spacing:0;
  }
  .catalog-accessories .hero-utility-strip{grid-template-columns:1fr}
}

/* v57: ordem manual dos acessórios Rocel. */
.rocel-order-help{display:none}
.rocel-simple-form .rocel-order-field{display:block}
.rocel-simple-form .rocel-order-help{display:block;margin-top:-7px;margin-bottom:12px;line-height:1.5}
.admin-product-meta .admin-order-pill{color:#ded0ff;border:1px solid rgba(162,122,255,.35)}
