/* ===== Loja de Peças (parts) — estilos específicos ===== */
.test-banner{background:#fff4e5;border-bottom:1px solid #f3c988;color:#7a4a04;font-size:.88rem;font-weight:800;text-align:center;padding:9px 16px}
.test-banner strong{color:#a5460d}

.parts-hero{background:linear-gradient(135deg,var(--navy-2),var(--navy));color:#fff;padding:56px 0 42px}
.parts-hero h1{font-size:clamp(2.1rem,4vw,3rem);margin:10px 0 12px;letter-spacing:-.03em}
.parts-hero p{max-width:680px;color:#dce8f4;margin:0}

.parts-toolbar{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:78px;z-index:50}
.parts-toolbar .container{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:16px 0}
.parts-search{flex:1;min-width:220px;position:relative}
.parts-search input{width:100%;border:1px solid #cfd8e1;border-radius:12px;padding:11px 14px 11px 40px;outline:none}
.parts-search input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(244,125,43,.12)}
.parts-search i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted)}
.parts-count{color:var(--muted);font-size:.9rem;white-space:nowrap}

.parts-layout{display:grid;grid-template-columns:240px 1fr;gap:30px;padding:34px 0 80px;align-items:start}
.parts-filters{position:sticky;top:150px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px}
.parts-filters h3{margin:0 0 12px;color:var(--navy);font-size:1rem}
.filter-cat{display:block;width:100%;text-align:left;background:none;border:0;padding:9px 10px;border-radius:10px;cursor:pointer;color:var(--ink);font-weight:700;font-size:.92rem;display:flex;justify-content:space-between;gap:8px}
.filter-cat:hover{background:var(--light)}
.filter-cat.active{background:#fff1e8;color:var(--primary-text)}
.filter-cat span.count{color:var(--muted);font-weight:600}

.parts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}
.part-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 8px 22px rgba(16,44,76,.05);transition:.2s}
.part-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.part-icon{width:52px;height:52px;border-radius:14px;background:#fff1e8;color:var(--primary-text);display:grid;place-items:center;font-size:1.5rem}
.part-image{width:100%;height:150px;object-fit:contain;border-radius:14px;background:#fff1e8;border:1px solid var(--border)}
.cart-item-thumb{width:52px;height:52px;object-fit:contain;border-radius:10px;background:#fff1e8;border:1px solid var(--border);margin-right:10px;vertical-align:middle}
.cart-item-cell{display:flex;align-items:center}
.order-summary li img{width:34px;height:34px;object-fit:contain;border-radius:8px;background:#fff1e8;border:1px solid var(--border);margin-right:8px;vertical-align:middle}
.part-cat-tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}
.part-card h3{margin:0;font-size:1rem;color:var(--navy);line-height:1.35}
.part-code{font-size:.8rem;color:var(--muted)}
.part-price{margin-top:auto;font-size:1.35rem;font-weight:900;color:var(--navy)}
.part-stock{font-size:.8rem;font-weight:800}
.part-stock.ok{color:var(--green)}
.part-stock.out{color:#c0392b}
.part-actions{display:flex;gap:8px;align-items:center}
.qty-stepper{display:flex;align-items:center;border:1px solid #cfd8e1;border-radius:10px;overflow:hidden}
.qty-stepper button{width:32px;height:36px;border:0;background:#f5f7fa;font-size:1.1rem;cursor:pointer}
.qty-stepper input{width:38px;border:0;text-align:center;font-weight:800;padding:0}
.part-add{flex:1;border:0;border-radius:10px;background:var(--primary);color:#fff;font-weight:800;padding:9px 10px;cursor:pointer;transition:.2s}
.part-add:hover{background:var(--primary-dark)}
.part-add:disabled{background:#cfd8e1;cursor:not-allowed}
.parts-empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:60px 0}
.parts-loadmore{display:block;margin:34px auto 0;padding:12px 28px}

.cart-float{position:fixed;right:22px;bottom:92px;z-index:999;background:var(--navy);color:#fff;border:0;border-radius:999px;padding:12px 18px;display:flex;align-items:center;gap:10px;font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,.24);cursor:pointer;text-decoration:none}
.cart-float .cart-badge{background:var(--primary);color:#fff;border-radius:999px;min-width:22px;height:22px;display:inline-grid;place-items:center;font-size:.78rem;padding:0 6px}
body.cookie-banner-visible .cart-float{bottom:calc(92px + var(--cookie-banner-height,110px))}
@media(max-width:680px){.cart-float{right:14px;bottom:84px;padding:10px 14px}}

.cart-page{padding:52px 0 90px}
.cart-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden}
.cart-table th{text-align:left;background:var(--light);color:var(--navy);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;padding:14px 16px}
.cart-table td{padding:16px;border-top:1px solid var(--border);vertical-align:middle}
.cart-item-name{font-weight:800;color:var(--navy)}
.cart-item-code{color:var(--muted);font-size:.82rem}
.cart-remove{background:none;border:0;color:#c0392b;cursor:pointer;font-weight:800;font-size:.85rem}
.cart-summary{max-width:380px;margin-left:auto;margin-top:26px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:24px}
.cart-summary-row{display:flex;justify-content:space-between;margin-bottom:10px;color:var(--muted)}
.frete-box{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.frete-box label{display:block;font-size:.82rem;font-weight:800;color:var(--navy);margin-bottom:6px}
.frete-form{display:flex;gap:8px}
.frete-form input{flex:1;border:1px solid #cfd8e1;border-radius:10px;padding:8px 10px;min-width:0}
.frete-form button{border:0;border-radius:10px;padding:8px 14px;background:var(--navy);color:#fff;font-weight:800;cursor:pointer;white-space:nowrap}
.frete-form button:disabled{background:#cfd8e1;cursor:not-allowed}
.frete-resultado{margin-top:10px;font-size:.86rem;font-weight:700}
.frete-resultado.ok{color:var(--green)}
.frete-resultado.erro{color:#c0392b}
.cart-summary-total{display:flex;justify-content:space-between;font-weight:900;font-size:1.25rem;color:var(--navy);border-top:1px solid var(--border);padding-top:12px;margin-top:6px}
.cart-empty{text-align:center;padding:80px 0;color:var(--muted)}
.cart-empty i{font-size:2.6rem;color:var(--border);margin-bottom:16px;display:block}

.checkout-layout{display:grid;grid-template-columns:1.3fr .9fr;gap:32px;padding:44px 0 90px;align-items:start}
.checkout-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:30px;box-shadow:var(--shadow)}
.checkout-card h2{margin:0 0 18px;color:var(--navy);font-size:1.25rem}
.pay-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:1px solid var(--border)}
.pay-tab{background:none;border:0;padding:12px 6px;font-weight:800;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;display:flex;align-items:center;gap:8px}
.pay-tab.active{color:var(--primary-text);border-color:var(--primary)}
.pay-panel{display:none}
.pay-panel.active{display:block}
.pix-box{border:1px dashed #cfd8e1;border-radius:16px;padding:22px;text-align:center;background:var(--light)}
.pix-qr{width:180px;height:180px;margin:0 auto 16px;background:#fff;border:1px solid var(--border);border-radius:12px;display:grid;place-items:center}
.pix-copy{display:flex;gap:8px;margin-top:16px}
.pix-copy input{flex:1;border:1px solid #cfd8e1;border-radius:10px;padding:9px 12px;font-size:.82rem;background:#fff}
.pix-copy button{border:0;border-radius:10px;padding:9px 16px;background:var(--navy);color:#fff;font-weight:800;cursor:pointer}
.order-summary{background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px;position:sticky;top:100px}
.order-summary h3{margin:0 0 14px;color:var(--navy)}
.order-summary ul{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px;max-height:260px;overflow:auto}
.order-summary li{display:flex;justify-content:space-between;font-size:.9rem;color:var(--muted)}
.security-note{margin-top:18px;padding:16px;background:#eef7ee;border:1px solid #cfe8cf;border-radius:14px;font-size:.85rem;color:#1e5c2f;display:flex;gap:10px;align-items:flex-start}
.security-note i{margin-top:2px}
.checkout-confirm{text-align:center;padding:70px 20px}
.checkout-confirm i{font-size:3.4rem;color:var(--green);margin-bottom:18px;display:block}
.checkout-confirm h2{color:var(--navy);margin:0 0 10px}
.checkout-confirm p{color:var(--muted);max-width:520px;margin:0 auto 22px}
.order-code{display:inline-block;background:var(--light);border:1px solid var(--border);border-radius:12px;padding:10px 18px;font-weight:900;color:var(--navy);letter-spacing:.04em;margin-bottom:22px}

@media(max-width:980px){
  .parts-layout{grid-template-columns:1fr}
  .parts-filters{position:static}
  .checkout-layout{grid-template-columns:1fr}
  .order-summary{position:static}
}
@media(max-width:680px){
  .parts-toolbar{top:0}
  .cart-table thead{display:none}
  .cart-table tr{display:grid;grid-template-columns:1fr;padding:10px 0}
  .cart-table td{border-top:0;padding:6px 16px}
}
