:root{--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#667085;--line:#e4e7ec;--brand:#111827;--accent:#ff7a00;--accent2:#ff9f43;--success:#0f9d58;--danger:#d92d20;--shadow:0 12px 34px rgba(16,24,40,.10);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}body.dark-theme{--bg:#0f172a;--card:#172033;--text:#f8fafc;--muted:#aab4c5;--line:#334155;--brand:#020617;--shadow:0 12px 34px rgba(0,0,0,.3)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden,[hidden]{display:none!important}.shell{width:min(1180px,calc(100% - 28px));margin:auto}.topbar{position:sticky;top:0;z-index:50;background:rgba(17,24,39,.97);color:#fff;box-shadow:0 4px 18px rgba(0,0,0,.16)}.topbar-inner{min-height:72px;display:flex;align-items:center;gap:20px}.brand-area,.actions{display:flex;align-items:center;gap:10px}.brand{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:900;letter-spacing:.04em}.brand-mark{background:var(--accent);padding:7px 9px;border-radius:8px;color:#fff}.brand-name{font-size:1.08rem}.menu-toggle,.menu-close,.action-btn,.link-btn,.banner-arrow,.modal-close{border:0;background:transparent;color:inherit}.menu-toggle{font-size:1.3rem}.search-wrap{flex:1;display:grid;grid-template-columns:1fr 210px;gap:10px}.search-field{position:relative}.search-field i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#667085}.field,.form-control,.pickup-search-v6 input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);padding:12px 14px;outline:none}.search-field .field{padding-left:42px}.field:focus,.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,122,0,.14)}.action-btn{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.11);display:inline-flex;align-items:center;gap:8px}.action-btn b,.floating-cart span{background:var(--accent);min-width:22px;height:22px;border-radius:999px;display:grid;place-items:center;font-size:.75rem}.mobile-search-btn{display:none}.hero{margin:22px 0 16px;border-radius:22px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:#111}.banner-track{display:flex}.banner-slide{display:none;min-width:100%}.banner-slide.active{display:block}.banner-slide img{display:block;width:100%;aspect-ratio:16/5;object-fit:cover}.banner-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff}.banner-prev{left:14px}.banner-next{right:14px}.banner-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.banner-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55)}.banner-dots button.active{width:26px;border-radius:99px;background:#fff}.category-strip{display:flex;gap:10px;overflow:auto;padding:6px 2px 14px;scrollbar-width:none}.category-strip button{white-space:nowrap;border:1px solid var(--line);background:var(--card);color:var(--text);padding:10px 15px;border-radius:999px;font-weight:700}.category-strip button.active{background:var(--accent);border-color:var(--accent);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;margin:20px 0 14px}.section-head h2,.section-head .catalog-page-title{margin:3px 0;font-size:1.55rem}.kicker{margin:0;color:var(--accent);font-size:.76rem;font-weight:900;letter-spacing:.12em}.link-btn{color:var(--accent);font-weight:800}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-bottom:34px}.product-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 18px rgba(16,24,40,.05);transition:.2s}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-image{aspect-ratio:1/1;background:#fff;display:grid;place-items:center;padding:14px}.product-image img{width:100%;height:100%;object-fit:contain}.product-info{padding:14px}.product-info h3{font-size:1rem;margin:0 0 7px;line-height:1.3}.product-meta{color:var(--muted);font-size:.85rem;min-height:38px}.product-price{display:flex;align-items:center;gap:8px;margin:12px 0}.product-price strong{font-size:1.25rem}.product-price del{color:var(--muted);font-size:.82rem}.product-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.primary-btn,.secondary-btn,.whatsapp-btn{border:0;border-radius:12px;padding:12px 16px;font-weight:800}.primary-btn{background:var(--accent);color:#fff}.secondary-btn{background:#eef2f6;color:#344054}.whatsapp-btn{background:#17a65b;color:#fff;width:100%}.icon-btn{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:11px 13px;color:var(--text)}.loading,.empty{padding:50px;text-align:center;color:var(--muted)}.loading span{display:inline-block;width:30px;height:30px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.floating-cart{position:fixed;right:22px;bottom:22px;z-index:35;border:0;border-radius:999px;background:#111827;color:#fff;width:58px;height:58px;box-shadow:var(--shadow);font-size:1.2rem}.floating-cart span{position:absolute;right:-3px;top:-5px}.modal{position:fixed;inset:0;background:rgba(15,23,42,.62);z-index:100;display:grid;place-items:center;padding:18px}.modal-card{position:relative;width:min(620px,100%);max-height:92vh;overflow:auto;background:var(--card);border-radius:22px;padding:22px;box-shadow:0 25px 70px rgba(0,0,0,.28)}.product-modal-card{width:min(850px,100%)}.modal-close{position:absolute;right:14px;top:10px;font-size:2rem;color:var(--muted);z-index:2}.modal-title{display:flex;gap:12px;align-items:center;margin-bottom:16px}.modal-title i{font-size:1.45rem;color:var(--accent)}.modal-title h2,.modal-title p{margin:0}.modal-title p{color:var(--muted);font-size:.9rem}.cart-item{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.cart-item img{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:10px}.qty-control{display:flex;align-items:center;gap:8px}.qty-control button{border:1px solid var(--line);background:var(--card);border-radius:8px;width:30px;height:30px;color:var(--text)}.cart-summary{display:flex;justify-content:space-between;font-size:1.2rem;padding:17px 0}.checkout-form{display:grid;gap:14px}.checkout-form label{display:grid;gap:6px;font-weight:700;font-size:.9rem}.checkout-form fieldset{border:1px solid var(--line);border-radius:14px;padding:12px}.checkout-form legend{font-weight:800;padding:0 6px}.receive-options,.payment-options{display:flex;flex-wrap:wrap;gap:8px}.receive-options label,.payment-options label{display:block}.receive-options input,.payment-options input{position:absolute;opacity:0}.receive-options span,.payment-options span{display:block;border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-weight:700}.receive-options input:checked+span,.payment-options input:checked+span{border-color:var(--accent);background:rgba(255,122,0,.1);color:var(--accent)}.coupon-box,.checkout-resume,.machine-calculation{background:rgba(148,163,184,.10);border:1px solid var(--line);border-radius:14px;padding:13px}.coupon-row{display:grid;grid-template-columns:1fr auto;gap:8px}.coupon-message{margin:7px 0 0;font-size:.85rem}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:24px}.product-detail-image{background:#fff;border-radius:18px;padding:18px}.product-detail-image img{width:100%;aspect-ratio:1;object-fit:contain}.side-menu{position:fixed;z-index:90;inset:0 auto 0 0;width:min(350px,88vw);background:var(--card);color:var(--text);transform:translateX(-105%);transition:.25s;box-shadow:var(--shadow);padding:18px;overflow:auto}.side-menu.open{transform:none}.menu-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:80}.side-menu-head,.side-menu-brand{display:flex;align-items:center;justify-content:space-between}.side-menu-brand{justify-content:flex-start;gap:10px}.side-menu-brand small{display:block;color:var(--muted)}.menu-close{font-size:2rem;color:var(--text)}.side-menu-nav{display:grid;gap:7px;margin:22px 0}.side-menu-nav a,.side-menu-nav button{border:0;text-decoration:none;background:transparent;color:var(--text);padding:13px;border-radius:12px;display:flex;gap:12px;align-items:center;text-align:left}.side-menu-nav a:hover,.side-menu-nav button:hover{background:rgba(148,163,184,.12)}.menu-category-list{display:grid;padding-left:32px}.menu-settings{border-top:1px solid var(--line);padding-top:14px}.setting-row{display:flex;justify-content:space-between;padding:11px 0}.setting-row small{display:block;color:var(--muted)}.tracking-main,.pickup-main-v6{padding:38px 0}.tracking-card,.pickup-list-card-v6,.pickup-hero-v6,.pickup-toolbar-v6{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 7px 22px rgba(16,24,40,.06)}.tracking-card{max-width:760px;margin:auto}.tracking-heading{display:flex;gap:16px}.tracking-icon{width:52px;height:52px;border-radius:15px;background:rgba(255,122,0,.12);color:var(--accent);display:grid;place-items:center;font-size:1.35rem}.tracking-form{display:grid;gap:14px;margin-top:20px}.tracking-result{margin-top:18px}.order-track-card{border:1px solid var(--line);border-radius:14px;padding:16px}.status-pill{display:inline-flex;padding:5px 10px;border-radius:99px;background:#eef2f6;color:#344054;font-weight:800;font-size:.78rem}.pickup-hero-v6,.pickup-toolbar-v6{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.pickup-count-v6{text-align:center}.pickup-count-v6 strong{font-size:2.5rem;color:var(--accent);display:block}.pickup-search-v6{position:relative;flex:1}.pickup-search-v6 i{position:absolute;left:14px;top:50%;transform:translateY(-50%)}.pickup-search-v6 input{padding-left:40px}.pickup-toolbar-v6{gap:10px}.pickup-list-head-v6{display:flex;justify-content:space-between;align-items:center}.pickup-queue-v6{display:grid;gap:12px;margin-top:16px}.pickup-order-v6{border:1px solid var(--line);border-radius:14px;padding:15px;display:flex;justify-content:space-between;gap:12px;align-items:center}.pickup-modal-v6,.pickup-chat-modal-v14{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:15px}.pickup-modal-backdrop-v6,.pickup-chat-backdrop-v14{position:absolute;inset:0;background:rgba(0,0,0,.55)}.pickup-modal-card-v6,.pickup-chat-panel-v14{position:relative;background:var(--card);border-radius:20px;padding:20px;width:min(700px,100%);max-height:90vh;overflow:auto}.pickup-modal-close-v6,.pickup-chat-close-v14{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:1.3rem;color:var(--text)}
/* Admin base */.admin-v2-body{background:#eef2f7}.admin-v2-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.admin-v2-sidebar{background:#111827;color:#fff;padding:20px;position:sticky;top:0;height:100vh;overflow:auto}.admin-v2-nav{display:flex;width:100%;border:0;background:transparent;color:#cbd5e1;padding:11px;border-radius:10px;gap:10px;margin:3px 0}.admin-v2-nav.active{background:var(--accent);color:#fff}.admin-v2-content{padding:24px;min-width:0}.admin-v2-panel{display:none}.admin-v2-panel.active{display:block}.admin-card-v2,.admin-form-card,.admin-table-card{background:#fff;border-radius:18px;padding:18px;box-shadow:0 5px 18px rgba(16,24,40,.07);margin-bottom:16px}.admin-grid-v2{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.role-hidden-v7{display:none!important}.admin-simple-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e5e7eb;padding:12px 0}.admin-simple-row>div:nth-child(2){flex:1}.admin-simple-row h3,.admin-simple-row p{margin:0}.row-actions-v2{display:flex;gap:6px}.row-actions-v2 button{border:0;border-radius:8px;padding:8px}.danger{color:var(--danger)}.admin-empty-v2{color:var(--muted);text-align:center;padding:20px}.admin-form-message.success{color:var(--success)}.admin-form-message.error{color:var(--danger)}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(3,1fr)}.admin-grid-v2{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.shell{width:min(100% - 18px,1180px)}.topbar-inner{min-height:62px;gap:8px}.search-wrap{position:absolute;top:64px;left:9px;right:9px;background:#111827;padding:10px;display:none;grid-template-columns:1fr}.search-wrap.open{display:grid}.mobile-search-btn{display:inline-flex}.cart-top span{display:none}.banner-slide img{aspect-ratio:16/7}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-info{padding:11px}.product-info h3{font-size:.9rem}.product-price strong{font-size:1.05rem}.product-meta{font-size:.78rem}.product-detail{grid-template-columns:1fr}.pickup-hero-v6,.pickup-toolbar-v6,.pickup-order-v6{align-items:stretch;flex-direction:column}.admin-v2-shell{display:block}.admin-v2-sidebar{height:auto;position:relative}.admin-v2-content{padding:12px}.admin-grid-v2{grid-template-columns:1fr}.topbar .brand-name{font-size:.9rem}}@media(max-width:400px){.product-grid{gap:7px}.product-card{border-radius:14px}.product-image{padding:8px}.product-info{padding:9px}.product-actions{grid-template-columns:1fr}.icon-btn{display:none}}

/* Mantém o visual compacto original de João Pessoa nas duas lojas. */
.banner-slide>a{display:block;color:inherit;text-decoration:none}
.category-strip{align-items:center;padding:6px 2px 14px}
.category-strip button{display:inline-flex;flex:0 0 auto;min-height:0;align-items:center;justify-content:center;flex-direction:row;gap:7px;padding:10px 15px;border-radius:999px;white-space:nowrap;text-align:center;line-height:1.1}
.category-strip button span{font-size:.77rem}
.category-strip .category-all{min-width:0}
.cat-logo{width:22px;height:22px;object-fit:contain;flex-shrink:0;border-radius:5px;background:#fff;padding:1px;image-rendering:auto}
.category-strip button.active{box-shadow:0 7px 18px rgba(255,122,0,.22)}
.category-strip button.active .cat-logo{filter:none!important;background:#fff}

/* Seletor individual de cor: bolinha e nome permanecem juntos. */
.color-picker-row{margin:12px 0;display:grid;gap:9px}
.color-options{display:flex;flex-wrap:wrap;gap:8px}
.color-opt{display:block}
.color-opt input{position:absolute;opacity:0;pointer-events:none}
.color-swatch{display:flex;align-items:center;gap:7px;border:2px solid var(--line);border-radius:11px;padding:7px 11px;cursor:pointer;transition:.15s;background:var(--card)}
.color-swatch .color-dot{font-style:normal;font-size:1.18rem;line-height:1}
.color-swatch em{font-style:normal;font-size:.9rem;font-weight:800}
.color-opt input:checked+.color-swatch{border-color:var(--accent);background:rgba(255,122,0,.12);box-shadow:0 0 0 2px rgba(255,122,0,.22)}
.modal-meta{color:var(--muted);margin:4px 0 10px}
.modal-price{margin:14px 0 10px;font-size:1.5rem}
.full-btn{width:100%}
.resume-row{display:flex;justify-content:space-between;gap:14px}
.resume-row+.resume-row{margin-top:7px}
.resume-row.discount{color:var(--success)}
.checkout-resume hr{border:0;border-top:1px solid var(--line);margin:11px 0}
.resume-row.total{font-size:1.06rem}

body.compact-products .product-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
body.compact-products .product-info{padding:10px}
body.compact-products .product-image{padding:9px}
@media(max-width:900px){body.compact-products .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.category-strip button{flex-basis:auto;min-height:0;padding:9px 12px}.cat-logo{width:20px;height:20px}.category-strip button span{font-size:.72rem}body.compact-products .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Identidade visual azul original do catalogo CLIP FONES. */
body.clip-blue-theme .topbar{background:#0b3d24}
body.clip-blue-theme .brand-mark{background:#16a34a}
body.clip-blue-theme .menu-toggle{width:36px;height:36px;border:1px solid rgba(255,255,255,.26);border-radius:10px}
body.clip-blue-theme .cart-top{background:#16a34a;color:#fff}
body.clip-blue-theme .cart-top b{background:#fff;color:#16a34a}
body.clip-blue-theme .primary-btn{background:#15803d;color:#fff}
body.clip-blue-theme .link-btn{color:#15803d}
body.clip-blue-theme .category-strip button.active{background:#16a34a;border-color:#16a34a;color:#fff;box-shadow:0 7px 18px rgba(22,163,74,.22)}
body.clip-blue-theme .field:focus,
body.clip-blue-theme .form-control:focus{border-color:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.14)}
body.clip-blue-theme .receive-options input:checked+span,
body.clip-blue-theme .payment-options input:checked+span{border-color:#16a34a;background:rgba(22,163,74,.09);color:#15803d}
body.clip-blue-theme .color-opt input:checked+.color-swatch{border-color:#16a34a;background:rgba(22,163,74,.09);box-shadow:0 0 0 2px rgba(22,163,74,.18)}
body.clip-blue-theme .product-grid{align-items:stretch}
body.clip-blue-theme .product-card{position:relative;border-color:#d7e2f1;display:flex;flex-direction:column;height:100%}
body.clip-blue-theme .product-info{display:flex;flex:1;flex-direction:column}
body.clip-blue-theme .product-category-label{display:block;margin-bottom:5px;color:#15803d;font-size:.64rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
body.clip-blue-theme .product-description{height:49px;min-height:49px;color:#60718a;font-size:.75rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body.clip-blue-theme .product-color-dots{display:flex;gap:3px;min-height:18px;align-items:center;margin-top:5px;font-size:.72rem}
body.clip-blue-theme .product-offer-badge{position:absolute;z-index:3;top:10px;left:10px;padding:4px 7px;border-radius:999px;background:#16b96e;color:#fff;font-size:.58rem;font-weight:950;text-transform:uppercase}
body.clip-blue-theme .product-actions{grid-template-columns:1fr;margin-top:auto}
body.clip-blue-theme .product-actions .primary-btn{width:100%;padding:10px 12px}
body.clip-blue-theme.compact-products .product-info h3{min-height:34px;font-size:.86rem}
body.clip-blue-theme.compact-products .product-price{display:grid;align-content:end;gap:2px;min-height:44px;margin:9px 0}
body.clip-blue-theme.compact-products .product-price strong{font-size:1.08rem}

/* Banner natural: mesma largura do catalogo, centralizado e sem distorcer. */
body.clip-blue-theme .hero{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:auto;
  margin:16px auto 12px;
  min-height:0;
  background:#04170d
}
body.clip-blue-theme .banner-track,
body.clip-blue-theme .banner-slide,
body.clip-blue-theme .banner-slide>a{width:100%;height:auto;min-height:0}
body.clip-blue-theme .banner-slide img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  max-height:none;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center
}
@media(max-width:720px){
  body.clip-blue-theme .hero{height:auto;aspect-ratio:auto;margin:10px auto 8px;border-radius:14px}
  body.clip-blue-theme .banner-slide img{width:100%;height:auto;aspect-ratio:auto}
}

/* Padroniza exclusivamente o tamanho e o enquadramento das fotos dos produtos. */
body.clip-blue-theme .product-image{
  display:grid;
  place-items:center;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  padding:0!important;
  overflow:hidden;
  background:#f1f5fa
}
body.clip-blue-theme .product-image img{
  display:block;
  width:88%;
  height:88%;
  max-width:88%;
  max-height:88%;
  margin:auto;
  object-fit:contain;
  object-position:center
}
body.clip-blue-theme .product-detail-image{
  display:grid;
  place-items:center;
  aspect-ratio:1/1;
  overflow:hidden
}
body.clip-blue-theme .product-detail-image img{
  width:88%;
  height:88%;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center
}

/* Quantidade independente para cada cor no modal do produto. */
.color-quantity-list{display:grid;gap:8px}
.color-quantity-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:48px;
  padding:6px 8px 6px 10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--card)
}
.color-quantity-item .color-swatch{min-width:0;border:0;padding:0;background:transparent;box-shadow:none;cursor:default}
.color-select-button{cursor:pointer!important;text-align:left;color:var(--text)}
.color-quantity-item.selected{border-color:#16a34a;background:#eafbf0;box-shadow:0 0 0 2px rgba(22,163,74,.12)}
.color-quantity-item.selected .color-select-button em{color:#15803d}
.product-color-dot{display:inline-grid;place-items:center;font-size:.9rem;line-height:1}
.color-qty-control{display:grid;grid-template-columns:36px 42px 36px;align-items:center;flex:0 0 auto}
.color-qty-control button{
  width:36px;
  height:36px;
  padding:0;
  border:1px solid #a7dfb8;
  background:#eafbf0;
  color:#15803d;
  font-size:1.15rem;
  font-weight:900
}
.color-qty-control button:first-child{border-radius:9px 0 0 9px}
.color-qty-control button:last-child{border-radius:0 9px 9px 0}
.color-qty-control input{
  width:42px;
  height:36px;
  padding:0;
  border:1px solid #a7dfb8;
  border-left:0;
  border-right:0;
  background:#fff;
  color:#172033;
  text-align:center;
  font-weight:900;
  appearance:textfield
}
.color-qty-control input::-webkit-inner-spin-button,
.color-qty-control input::-webkit-outer-spin-button{margin:0;appearance:none}
.color-quantity-message{min-height:18px;margin:3px 0 0;color:var(--danger);font-size:.78rem;font-weight:700}
@media(max-width:720px){
  body.clip-blue-theme .product-modal-card .product-detail-image{height:190px;aspect-ratio:auto}
  body.clip-blue-theme .product-modal-card .product-detail-image img{width:100%;height:100%;max-width:100%;max-height:100%}
  .color-quantity-item{min-height:46px}
  .color-qty-control{grid-template-columns:38px 42px 38px}
  .color-qty-control button{width:38px;height:38px}
  .color-qty-control input{height:38px}
}
