/* Scoped to the approved cart component. Catalogue and checkout styling stay native. */
#mnz-quote-concepts .mnz .mnz-specials {
 --mnz-specials-red: #ec162b;
 min-width: 0;
 padding: 20px;
 border: 1px solid #e2e2e7;
 border-radius: 10px;
 background: #fff;
 box-shadow: 0 8px 26px rgba(25, 25, 40, .045);
 container-type: inline-size;
}
#mnz-quote-concepts .mnz-stack > .woocommerce-cart-form { order: 1; }
#mnz-quote-concepts .mnz-stack > .mnz-specials { order: 2; }
#mnz-quote-concepts .mnz-stack > form:not(.woocommerce-cart-form) { order: 3; }
#mnz-quote-concepts .mnz .mnz-specials-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
#mnz-quote-concepts .mnz .mnz-specials-header h2 { margin: 0 0 4px; font-size: 20px; line-height: 1.25; font-weight: 750; }
#mnz-quote-concepts .mnz .mnz-specials-header p { margin: 0; font-size: 12px; line-height: 1.5; color: #8b8b96; }
#mnz-quote-concepts .mnz .mnz-specials-controls { display: flex; flex-shrink: 0; gap: 8px; }
#mnz-quote-concepts .mnz .mnz-specials-controls button { display: inline-flex; justify-content: center; align-items: center; width: 38px; min-width: 38px; height: 38px; padding: 0; border: 1px solid #dddde3; border-radius: 50%; background: #fff; color: #16161a; cursor: pointer; box-shadow: none; }
#mnz-quote-concepts .mnz .mnz-specials-controls .mnz-specials-next { background: var(--mnz-specials-red); border-color: var(--mnz-specials-red); color: #fff; }
#mnz-quote-concepts .mnz .mnz-specials-controls button:disabled { opacity: .4; cursor: default; }
#mnz-quote-concepts .mnz .mnz-specials-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 42px) / 4); gap: 14px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 2px 1px; outline-offset: 3px; }
#mnz-quote-concepts .mnz .mnz-specials-track::-webkit-scrollbar { display: none; }
#mnz-quote-concepts .mnz .mnz-specials-card { position: relative; min-width: 0; margin: 0; aspect-ratio: 4 / 5; min-height: 258px; display: grid; grid-template-rows: minmax(100px, 1fr) 156px; overflow: hidden; border: 1px solid #dcdfe6; border-radius: 6px; background: #fff; scroll-snap-align: start; }
#mnz-quote-concepts .mnz .mnz-specials-photo { display: flex; align-items: center; justify-content: center; min-height: 0; position: relative; background: #f5f6f8; padding: 5px; }
#mnz-quote-concepts .mnz .mnz-specials-photo img { display: block; width: 100%; height: 100%; max-height: 100%; margin: 0; object-fit: contain; mix-blend-mode: multiply; }
#mnz-quote-concepts .mnz .mnz-specials-badge { position: absolute; top: 7px; left: 7px; padding: 7px 8px; border-radius: 4px; background: var(--mnz-specials-red); color: #fff; font-size: 14px; font-weight: 800; line-height: 1; }
#mnz-quote-concepts .mnz .mnz-specials-info { min-width: 0; display: flex; flex-direction: column; padding: 8px 7px 7px; }
#mnz-quote-concepts .mnz .mnz-specials-category { display: block; flex-shrink: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--mnz-specials-red); text-transform: uppercase; font-size: 9px; font-weight: 750; line-height: 12px; margin-bottom: 3px; }
#mnz-quote-concepts .mnz .mnz-specials-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 28px; max-height: 28px; margin: 0; font-size: 11px; line-height: 14px; font-weight: 800; text-transform: uppercase; }
#mnz-quote-concepts .mnz .mnz-specials-title a { color: #0c0c10; text-decoration: none; }
#mnz-quote-concepts .mnz .mnz-specials-description { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-height: 13px; margin: 3px 0 5px; font-size: 10px; line-height: 13px; color: #696975; }
#mnz-quote-concepts .mnz .mnz-specials-prices { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 7px; min-height: 32px; margin-top: auto; margin-bottom: 6px; line-height: 16px; }
#mnz-quote-concepts .mnz .mnz-specials-prices del { white-space: nowrap; font-size: 10px; font-weight: 600; color: #999; }
#mnz-quote-concepts .mnz .mnz-specials-prices strong { white-space: nowrap; font-size: 14px; font-weight: 800; color: #08080a; }
#mnz-quote-concepts .mnz .mnz-specials-prices small { white-space: nowrap; font-size: 8px; font-weight: 600; color: #15151a; }
#mnz-quote-concepts .mnz .mnz-specials-add { display: flex; align-items: center; justify-content: center; gap: 6px; flex-shrink: 0; width: 100%; min-height: 34px; padding: 6px 4px; margin: 0; border: 1px solid var(--mnz-specials-red); border-radius: 4px; background: var(--mnz-specials-red); color: #fff; font-size: 11px; line-height: 20px; font-weight: 750; text-decoration: none; position: relative; }
#mnz-quote-concepts .mnz .mnz-specials-add:hover { background: #ca1024; border-color: #ca1024; color: #fff; }
#mnz-quote-concepts .mnz .mnz-specials-add[aria-disabled="true"] { opacity: .65; cursor: wait; }
#mnz-quote-concepts .mnz .mnz-specials-add.loading svg { animation: mnz-specials-pulse .65s ease-in-out infinite alternate; }
#mnz-quote-concepts .mnz .mnz-specials-add::before, #mnz-quote-concepts .mnz .mnz-specials-add::after { content: none !important; }
#mnz-quote-concepts .mnz .mnz-specials-info > .added_to_cart { display: none; }
#mnz-quote-concepts .mnz .mnz-specials-dots { display: flex; justify-content: center; align-items: center; gap: 8px; min-height: 15px; margin-top: 10px; }
#mnz-quote-concepts .mnz .mnz-specials-dots button { display: block; padding: 0; width: 8px; min-width: 8px; height: 8px; min-height: 8px; border: 0; border-radius: 50%; background: #d0d2da; cursor: pointer; box-shadow: none; }
#mnz-quote-concepts .mnz .mnz-specials-dots button[aria-current="true"] { background: var(--mnz-specials-red); }
#mnz-quote-concepts .mnz .mnz-specials button:focus-visible, #mnz-quote-concepts .mnz .mnz-specials a:focus-visible { outline: 2px solid #131318; outline-offset: 3px; }
@container (max-width: 660px) { #mnz-quote-concepts .mnz .mnz-specials-track { grid-auto-columns: calc((100% - 28px) / 3); } }
@container (max-width: 480px) { #mnz-quote-concepts .mnz .mnz-specials-track { grid-auto-columns: calc((100% - 14px) / 2); } }
@container (max-width: 340px) { #mnz-quote-concepts .mnz .mnz-specials-track { grid-auto-columns: 84%; } #mnz-quote-concepts .mnz .mnz-specials-title { font-size: 12px; } }
@media (max-width: 500px) { #mnz-quote-concepts .mnz .mnz-specials { padding: 15px; } #mnz-quote-concepts .mnz .mnz-specials-header { gap: 8px; } #mnz-quote-concepts .mnz .mnz-specials-header h2 { font-size: 18px; } #mnz-quote-concepts .mnz .mnz-specials-header p { font-size: 11px; } #mnz-quote-concepts .mnz .mnz-specials-controls { gap: 6px; } #mnz-quote-concepts .mnz .mnz-specials-controls button { width: 34px; min-width: 34px; height: 34px; } }
@keyframes mnz-specials-pulse { to { opacity: .35; } }
@media (prefers-reduced-motion: reduce) { #mnz-quote-concepts .mnz .mnz-specials-add.loading svg { animation: none; } }
