:root, [data-theme="neonet"]{
  --p:212 100% 48%; --pf:212 100% 42%; --pc:0 0% 100%;
  --s:0 0% 10%;     --sf:0 0% 6%;     --sc:0 0% 100%;
  --a:357 73% 41%;  --af:357 73% 35%; --ac:0 0% 100%;
  --n:0 0% 10%;     --nf:0 0% 6%;     --nc:0 0% 100%;
  --b1:0 0% 100%;   --b2:0 0% 95%;    --b3:0 0% 87%; --bc:0 0% 10%;
  --su:120 100% 25%; --suc:0 0% 100%;
  --wa:38 92% 50%;   --er:357 73% 41%; --erc:0 0% 100%;
  --in:212 100% 48%; --inc:0 0% 100%;
  --rounded-box:4px; --rounded-btn:4px; --rounded-badge:4px;
  --animation-btn:.2s; --btn-text-case:uppercase; --border-btn:1px; --tab-radius:4px;
}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,Helvetica,sans-serif}
.nn-nav{font-size:15px;color:#fff;opacity:.92;white-space:nowrap;transition:.15s;padding:2px 0}
.nn-nav:hover{opacity:1;color:#fff;box-shadow:inset 0 -3px 0 0 #B41C25}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
input:focus,select:focus,textarea:focus{outline:2px solid #0075f7;outline-offset:-2px}
a{transition:color .15s}
::-webkit-scrollbar{height:8px;width:8px}
::-webkit-scrollbar-thumb{background:#c9c9c9;border-radius:4px}

/* ---- product card: equal height in every grid, CTA pinned to the bottom ---- */
.nn-card{height:100%}
.nn-card-img{height:180px}
@media (min-width:1024px){.nn-card-img{height:200px}}

/* ---- cart badge glued to the icon ---- */
.nn-badge{position:absolute;top:-6px;right:-10px;min-width:18px;height:18px;padding:0 4px;
  border-radius:9999px;background:#B41C25;color:#fff;font-size:10px;font-weight:700;line-height:18px;
  text-align:center;box-shadow:0 0 0 2px #1a1a1a}

/* ---- cart quantity stepper ---- */
.nn-qty{display:inline-flex;align-items:stretch;border:1px solid #ddd;border-radius:4px;overflow:hidden;background:#fff}
.nn-qty button{width:32px;height:32px;font-size:16px;font-weight:700;line-height:1;background:#f2f2f2;color:#1a1a1a;
  border:0;cursor:pointer;transition:.15s}
.nn-qty button:hover{background:#1a1a1a;color:#fff}
.nn-qty input{width:46px;height:32px;border:0;border-left:1px solid #ddd;border-right:1px solid #ddd;
  text-align:center;font-size:14px;font-weight:600;background:#fff;color:#1a1a1a}

/* ---- pagination: one horizontal row, never a stacked list ---- */
.nn-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.nn-pager-results{font-size:12px;color:#6e6e6e}
.nn-pager .pagination,.nn-pager ul{display:flex!important;flex-direction:row!important;flex-wrap:wrap;
  align-items:center;gap:6px;margin:0;padding:0;list-style:none}
.nn-pager .pagination li,.nn-pager ul li{display:inline-flex;margin:0;list-style:none}
.nn-pager .pagination li a,.nn-pager .pagination li span,
.nn-pager ul li a,.nn-pager ul li span{display:inline-flex;align-items:center;justify-content:center;
  min-width:36px;height:36px;padding:0 10px;border:1px solid #ddd;border-radius:4px;background:#fff;
  color:#1a1a1a;font-size:14px;font-weight:600;text-decoration:none;transition:.15s}
.nn-pager .pagination li a:hover,.nn-pager ul li a:hover{border-color:#0075f7;color:#0075f7}
.nn-pager .pagination li.active span,.nn-pager .pagination li.active a,
.nn-pager ul li.active span,.nn-pager ul li.active a{background:#B41C25;border-color:#B41C25;color:#fff}
.nn-pager .pagination li.disabled span,.nn-pager ul li.disabled span{opacity:.4}

/* ---- product gallery ---- */
.nn-thumb{width:80px;height:80px;flex:0 0 80px;object-fit:contain;border:1px solid #ddd;border-radius:4px;
  padding:4px;background:#fff;cursor:pointer;transition:border-color .15s}
.nn-thumb:hover{border-color:#0075f7}
.nn-thumb.is-active{border-color:#B41C25;border-width:2px;padding:3px}
.nn-gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:9999px;
  background:rgba(255,255,255,.92);box-shadow:0 2px 10px rgba(0,0,0,.15);display:flex;align-items:center;
  justify-content:center;border:1px solid #ddd;cursor:pointer;z-index:2;transition:.15s}
.nn-gal-nav:hover{background:#fff;color:#0075f7}

/* ---- search autocomplete ---- */
.nn-ac{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:50;background:#fff;border:1px solid #ddd;
  border-radius:4px;box-shadow:0 18px 40px rgba(0,0,0,.18);max-height:420px;overflow-y:auto;color:#1a1a1a}
.nn-ac-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid #f0f0f0;
  text-decoration:none;color:#1a1a1a}
.nn-ac-item img{width:44px;height:44px;object-fit:contain;flex:0 0 44px}
.nn-ac-name{flex:1;font-size:13px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nn-ac-price{font-size:14px;font-weight:800;white-space:nowrap;text-align:right}
.nn-ac-price em{display:block;font-style:normal;font-size:11px;font-weight:400;color:#6e6e6e;text-decoration:line-through}
.nn-ac-item:hover,.nn-ac-item.is-active{background:#f2f8ff}
.nn-ac-more{display:block;padding:10px 12px;text-align:center;font-size:13px;font-weight:700;color:#0075f7;text-decoration:none}
.nn-ac-more:hover,.nn-ac-more.is-active{background:#f2f8ff}
.nn-ac-empty{padding:14px 12px;font-size:13px;color:#6e6e6e;text-align:center}
