/* nh-extras: سبد کناری، مدال جستجو، پیشنهاد هوشمند، رفتار دکمه دستیار */
:root{--nhx-acc:var(--nh-accent,var(--brand-primary,#0d7377));--nhx-bg:#fff;--nhx-soft:#f4f6f9;--nhx-line:#e6e8ef;--nhx-txt:#1d2433;--nhx-mut:#6b7289}
html[theme-color="dark"]{--nhx-bg:#161a22;--nhx-soft:#1f242e;--nhx-line:#2a303c;--nhx-txt:#eef0f5;--nhx-mut:#9aa1b5}
.nhx-scrim{position:fixed;inset:0;background:rgba(10,12,20,.45);backdrop-filter:blur(2px);z-index:1990;opacity:0;transition:opacity .25s}
.nhx-scrim.is-on{opacity:1}
.nhx-drawer{position:fixed;top:0;bottom:0;right:0;width:min(400px,92vw);z-index:2000;background:var(--nhx-bg);color:var(--nhx-txt);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .3s cubic-bezier(.2,.8,.2,1);box-shadow:-12px 0 40px rgba(0,0,0,.18);border-radius:20px 0 0 20px;font-feature-settings:"tnum"}
.nhx-drawer.is-open{transform:none}
.nhx-dh{display:flex;justify-content:space-between;align-items:center;padding:1rem 1rem .75rem;border-bottom:1px solid var(--nhx-line)}
.nhx-dh strong{font-size:1rem}.nhx-dh span{color:var(--nhx-mut);font-weight:400;font-size:.8rem}
.nhx-x{border:0;background:var(--nhx-soft);color:var(--nhx-txt);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex:none}
.nhx-db{flex:1;overflow:auto;padding:.5rem 1rem;overscroll-behavior:contain}
.nhx-it{display:flex;gap:.7rem;padding:.7rem 0;border-bottom:1px dashed var(--nhx-line);align-items:center;transition:opacity .2s}
.nhx-it.is-busy{opacity:.5;pointer-events:none}
.nhx-it img,.nhx-ph{width:64px;height:64px;border-radius:12px;object-fit:cover;background:var(--nhx-soft);flex:none}
.nhx-ib{flex:1;min-width:0}
.nhx-ib a{display:block;color:inherit;font-size:.85rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
.nhx-ib small{color:var(--nhx-mut);font-size:.72rem}
.nhx-row{display:flex;justify-content:space-between;align-items:center;margin-top:.35rem}
.nhx-qty{display:inline-flex;align-items:center;border:1px solid var(--nhx-line);border-radius:10px;overflow:hidden}
.nhx-qty button{border:0;background:none;width:30px;height:30px;color:var(--nhx-txt)}
.nhx-qty span{min-width:24px;text-align:center;font-size:.85rem;font-weight:700}
.nhx-price{font-weight:700;font-size:.85rem}
.nhx-rm{border:0;background:none;color:var(--nhx-mut);padding:.25rem;font-size:.8rem}
.nhx-rm:hover{color:#dc2626}
.nhx-empty{text-align:center;padding:2.5rem 1rem;color:var(--nhx-mut)}
.nhx-empty i{font-size:2.4rem;opacity:.4;display:block;margin-bottom:.6rem}
.nhx-df{padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom));border-top:1px solid var(--nhx-line);display:grid;gap:.5rem}
.nhx-sum{display:flex;justify-content:space-between;font-size:.9rem}.nhx-sum strong{font-size:1.05rem}
.nhx-btn{display:block;text-align:center;padding:.8rem;border-radius:14px;background:var(--nhx-acc);color:#fff!important;font-weight:700;text-decoration:none}
.nhx-btn.is-ghost{background:var(--nhx-soft);color:var(--nhx-txt)!important;font-weight:600}
.nhx-skel{height:64px;border-radius:12px;margin:.7rem 0;background:linear-gradient(90deg,var(--nhx-soft),var(--nhx-line),var(--nhx-soft));background-size:200% 100%;animation:nhxsk 1.2s infinite}
@keyframes nhxsk{to{background-position:-200% 0}}
.nhx-dsug{padding:.6rem 1rem;border-top:1px solid var(--nhx-line)}
.nhx-dsug h6{font-size:.78rem;color:var(--nhx-mut);margin:0 0 .5rem}
/* کارت‌های پیشنهاد (اسکرول افقی) */
.nhx-rail{display:flex;gap:.6rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.3rem;scrollbar-width:none}
.nhx-rail::-webkit-scrollbar{display:none}
.nhx-card{flex:0 0 140px;scroll-snap-align:start;background:var(--nhx-bg);border:1px solid var(--nhx-line);border-radius:14px;padding:.5rem;display:flex;flex-direction:column;gap:.3rem}
.nhx-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;background:var(--nhx-soft)}
.nhx-card a.n{color:inherit;font-size:.76rem;line-height:1.5;height:2.3rem;overflow:hidden;text-decoration:none}
.nhx-card b{font-size:.8rem}
.nhx-card form{margin:0}
.nhx-add{width:100%;border:1px solid var(--nhx-acc);color:var(--nhx-acc);background:transparent;border-radius:10px;padding:.35rem;font-size:.75rem;font-weight:700}
.nhx-add:hover{background:var(--nhx-acc);color:#fff}
.nh-suggest{margin:1.5rem 0 1rem}
.nh-suggest h5{font-size:1rem;font-weight:800;margin:0 0 .75rem;display:flex;align-items:center;gap:.4rem}
.nh-suggest h5 i{color:var(--nhx-acc)}
@media(min-width:768px){.nh-suggest .nhx-card{flex-basis:170px}}
/* مدال جستجو */
.nhx-sm{position:fixed;inset:0;z-index:2010;background:rgba(10,12,20,.5);backdrop-filter:blur(3px);display:none;align-items:flex-start;justify-content:center;padding:0}
.nhx-sm.is-open{display:flex;animation:nhxf .18s}
@keyframes nhxf{from{opacity:0}}
.nhx-sm-box{background:var(--nhx-bg);color:var(--nhx-txt);width:100%;height:100%;display:flex;flex-direction:column}
@media(min-width:768px){.nhx-sm{padding-top:8vh}.nhx-sm-box{width:min(640px,92vw);height:auto;max-height:76vh;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.3);overflow:hidden}}
.nhx-sm-bar{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;border-bottom:1px solid var(--nhx-line);margin:0}
.nhx-sm-bar i{color:var(--nhx-mut)}
.nhx-sm-bar input{flex:1;border:0;outline:0;background:transparent;color:inherit;font-size:1rem;padding:.4rem 0;min-width:0}
.nhx-sm-res{overflow:auto;padding:.4rem .5rem 1rem;flex:1}
.nhx-r{display:flex;gap:.75rem;align-items:center;padding:.55rem .6rem;border-radius:12px;color:inherit;text-decoration:none}
.nhx-r:hover,.nhx-r.is-active{background:var(--nhx-soft)}
.nhx-r img{width:52px;height:52px;border-radius:10px;object-fit:cover;flex:none;background:var(--nhx-soft)}
.nhx-r div{flex:1;min-width:0}
.nhx-r strong{display:block;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nhx-r small{color:var(--nhx-mut);font-size:.72rem}
.nhx-r em{font-style:normal;font-weight:700;font-size:.82rem;white-space:nowrap;color:var(--nhx-acc)}
.nhx-r mark{background:none;color:var(--nhx-acc);padding:0}
.nhx-all{display:block;text-align:center;margin:.5rem;padding:.7rem;border-radius:12px;background:var(--nhx-soft);color:var(--nhx-txt);font-size:.82rem;font-weight:600;text-decoration:none}
.nhx-hint{padding:1.5rem 1rem;text-align:center;color:var(--nhx-mut);font-size:.85rem}
.nhx-chips{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-top:.75rem}
.nhx-chips button{border:1px solid var(--nhx-line);background:var(--nhx-bg);color:var(--nhx-txt);border-radius:99px;padding:.3rem .8rem;font-size:.78rem}
html.nhx-lock,html.nhx-lock body{overflow:hidden}
/* دکمه دستیار: هنگام اسکرول جمع می‌شود و به کنار می‌رود، بعد از توقف برمی‌گردد */
html .nc-launcher.pa-fab{transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .3s,padding .3s,gap .3s,box-shadow .2s}
html .nc-launcher.pa-fab .pa-fab-l{display:inline-block;max-width:8rem;overflow:hidden;white-space:nowrap;transition:max-width .3s,opacity .2s}
html .nc-launcher.pa-fab.nhx-tuck:not(.is-open){padding:0 .95rem;gap:0;transform:translateX(42%) scale(.88);opacity:.6}
html .nc-launcher.pa-fab.nhx-tuck .pa-fab-l{max-width:0;opacity:0}
@media(prefers-reduced-motion:reduce){.nhx-drawer,.nc-launcher.pa-fab{transition:none}}
/* صیقل دستیار */
.nc-starters{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}
.nc-starters button{border-radius:99px!important;transition:transform .15s,background .15s}
.nc-starters button:active{transform:scale(.96)}
.nc-messages .nc-bubble{line-height:1.85}
.nc-messages .nc-bubble a{text-decoration:underline;text-underline-offset:3px}
/* ارقام لاتین در اجزای جدید (فونت اصلی سایت FaNum است) */
.nhx-price,.nhx-sum strong,.nhx-card b,.nhx-r em,.nhx-r small,.nhx-qty span,[data-cd-count],.tgl-code,.tgl-me small{font-family:Vazirmatn,system-ui,sans-serif}

/* ai9: دکمهٔ دستیار در موبایل — فقط آیکن، گرد و جمع‌وجور + جمع‌شدن هنگام اسکرول */
@media (max-width: 768px){
  html .nc-launcher.pa-fab, html .nc-launcher.pa-fab:not(.is-open){width:2.9rem!important;min-width:2.9rem!important;height:2.9rem!important;padding:0!important;gap:0!important;justify-content:center;border-radius:50%!important}
  html .nc-launcher.pa-fab .pa-fab-l{display:none!important}
  html .nc-launcher.pa-fab .nc-launcher-ic{font-size:1.15rem}
  html .nc-launcher.pa-fab.nhx-tuck:not(.is-open){transform:translateX(55%) scale(.82)!important;opacity:.55!important;padding:0!important}
}
