/* =========================================================
   NotBad – custom Tebex theme (Exo override)
   Load AFTER shared.css / theme css (see head.twig)
   ========================================================= */

:root {
  --nb-bg: #0d1014;
  --nb-bg-2: #11161c;
  --nb-card: #141a21;
  --nb-card-2: #1a2129;
  --nb-line: rgba(255, 255, 255, 0.07);
  --nb-line-2: rgba(255, 255, 255, 0.12);
  --nb-text: #eef1f5;
  --nb-muted: #8a95a3;
  --nb-accent: #38bdf8;
  --nb-accent-2: #67cdfa;
  --nb-accent-soft: rgba(56, 189, 248, 0.12);
  --nb-accent-ring: rgba(56, 189, 248, 0.28);
  --nb-radius: 16px;
  --nb-radius-sm: 10px;
  --nb-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.04);
  --nb-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  /* Exo variables */
  --color-primary: var(--nb-accent);
  --color-primary-hover: var(--nb-accent-2);
  --color-primary-text: #0d1014;
  --color-primary-text-hover: #0d1014;
}

/* ---------- base ---------- */
html, body {
  background: var(--nb-bg) !important;
  color: var(--nb-text);
  font-family: var(--nb-font) !important;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: "";
  position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(900px 500px at 15% -10%, rgba(56, 189, 248, 0.10), transparent 60%),
    radial-gradient(700px 400px at 90% 0%, rgba(154, 199, 60, 0.04), transparent 60%);
}
.site { background: transparent !important; }
a { color: var(--nb-accent); }
a:hover { color: var(--nb-accent-2); }
h1, h2, h3, h4, h5 { font-family: var(--nb-font) !important; letter-spacing: -0.01em; }

::selection { background: var(--nb-accent); color: #0d1014; }
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb { background: #262e38; border-radius: 10px; border: 2px solid var(--nb-bg); }

/* ---------- buttons ---------- */
.btn-primary, .btn-secondary, .btn-tertiary, button.action, .nb-btn {
  font-family: var(--nb-font) !important;
  font-weight: 600;
  border-radius: 12px !important;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
}
.btn-primary, .nb-btn-primary {
  background: var(--nb-accent) !important;
  color: #0d1014 !important;
  border: 1px solid transparent !important;
  box-shadow: 0 8px 24px rgba(56, 189, 248, 0.22);
}
.btn-primary:hover, .nb-btn-primary:hover {
  background: var(--nb-accent-2) !important;
  box-shadow: 0 10px 28px rgba(56, 189, 248, 0.30);
}
.btn-secondary, .nb-btn-ghost {
  background: var(--nb-card-2) !important;
  color: var(--nb-text) !important;
  border: 1px solid var(--nb-line-2) !important;
}
.btn-secondary:hover, .nb-btn-ghost:hover {
  border-color: var(--nb-accent-ring) !important;
  background: #1f2730 !important;
}
.btn-tertiary { color: var(--nb-muted) !important; }
.btn-tertiary:hover { color: var(--nb-text) !important; }

/* ---------- header ---------- */
.site-header {
  background: rgba(13, 16, 20, 0.78) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--nb-line) !important;
  box-shadow: none !important;
  position: sticky; top: 0; z-index: 50;
}
.site-header-inner {
  max-width: 1200px; margin: 0 auto;
  padding: 12px 20px !important;
  display: flex !important; align-items: center; gap: 16px;
}
.site-header .site-title { margin: 0 !important; order: 0; }
.site-header .site-title img { height: 40px !important; width: auto !important; display: block; }
.site-header .site-title a { color: var(--nb-text); text-decoration: none; font-weight: 700; font-size: 20px; }

.site-header .actions { order: 3; }
.site-header .user-actions, .site-header .log-in { order: 2; margin-left: auto; display: flex; gap: 10px; align-items: center; }
.site-header .info { display: none !important; }      /* old server/discord boxes */
.site-header .nb-discord {
  order: 1; margin-left: auto;
  display: inline-flex; align-items: center; gap: 8px;
  padding: 9px 14px; border-radius: 12px;
  background: var(--nb-card-2); border: 1px solid var(--nb-line-2);
  color: var(--nb-text); text-decoration: none; font-weight: 600; font-size: 14px;
}
.site-header .nb-discord:hover { border-color: #5865f2; background: rgba(88, 101, 242, 0.14); }
.site-header .nb-discord svg { width: 18px; height: 18px; fill: #5865f2; }
.site-header .user-actions + .actions, .site-header .log-in + .actions { margin-left: 0; }
.site-header .nb-discord ~ .user-actions, .site-header .nb-discord ~ .log-in { margin-left: 0; }

.site-sale-banner {
  background: var(--nb-accent-soft) !important;
  color: var(--nb-accent-2) !important;
  border-bottom: 1px solid var(--nb-accent-ring);
  font-weight: 600; text-align: center; padding: 8px 16px; margin: 0;
}


/* --- Exo header layout reset (Exo uses a 355px absolute-positioned header) --- */
.site-header { max-width: none !important; width: 100% !important; padding: 0 !important; }
.site-header-inner, body.is-navigation-horizontal .site-header-inner { height: auto !important; min-height: 0 !important; position: relative !important; }
.site-header-inner .site-title,
.site-header-inner .log-in,
.site-header-inner .user-actions,
.site-header-inner .actions,
.site-header-inner .nb-discord { position: static !important; inset: auto !important; margin: 0 !important; width: auto !important; height: auto !important; line-height: normal !important; font-size: inherit !important; }
.site-header-inner .site-title img { max-height: 40px !important; height: 40px !important; width: auto !important; margin: 0 !important; }
.site-header-inner .user-actions, .site-header-inner .log-in { margin-left: auto !important; }
.site-header-inner .nb-discord ~ .user-actions, .site-header-inner .nb-discord ~ .log-in { margin-left: 0 !important; }
.site-header-inner .nb-discord { margin-left: auto !important; }
.site-header-inner .toggle-navigation { display: none !important; }
@media (max-width: 960px) { .site-header-inner .toggle-navigation { display: inline-flex !important; } }
.site-home-categories, .site-content, .site-footer-inner { max-width: 1200px !important; }
.nb-hero, .nb-trustbar, .nb-section, .site-home-categories, .site-content { width: 100%; box-sizing: border-box; justify-self: center; }
.site { font-size: 15px !important; }

/* ---------- navigation (inline in header) ---------- */
@media (min-width: 961px) {
  .site-header-inner .navigation-horizontal { flex: 1 1 auto; order: 0; margin: 0 8px 0 20px !important; padding: 0 !important; max-width: none; }
  .navigation-horizontal .menu { background: transparent !important; justify-content: flex-start !important; padding: 0 !important; line-height: normal !important; font-size: 14px !important; gap: 2px; }
  .navigation-horizontal .menu > li > a { padding: 8px 12px !important; max-width: none !important; }
  .navigation-horizontal .close-navigation { display: none !important; }
}
@media (max-width: 960px) {
  .site-header-inner .navigation-horizontal { order: 10; width: 100%; }
}

/* ---------- navigation ---------- */
.navigation-horizontal {
  background: transparent !important;
  border: 0 !important;
  max-width: 1200px; margin: 0 auto; padding: 0 12px 6px;
}
.navigation-horizontal .navigation-list { display: flex; flex-wrap: wrap; gap: 4px; padding: 0; margin: 0; list-style: none; }
.navigation-horizontal .navigation-list > li > a {
  display: inline-block; padding: 9px 14px; border-radius: 10px;
  color: var(--nb-muted); font-weight: 600; font-size: 14px; text-decoration: none;
  background: transparent !important; border: 0 !important;
}
.navigation-horizontal .navigation-list > li > a:hover { color: var(--nb-text); background: var(--nb-card) !important; }
.navigation-horizontal .navigation-list > li.active > a,
.navigation-horizontal .navigation-list > li > a.link-active {
  color: var(--nb-accent) !important; background: var(--nb-accent-soft) !important;
}
.navigation-horizontal .navigation-list li ul {
  background: var(--nb-card) !important; border: 1px solid var(--nb-line-2) !important;
  border-radius: 12px !important; box-shadow: var(--nb-shadow); padding: 6px;
}
.navigation-horizontal .navigation-list li ul a { color: var(--nb-text) !important; border-radius: 8px; }
.navigation-vertical.widget .navigation-list a { border-radius: 10px; }

/* ---------- layout ---------- */
.site-content {
  max-width: 1200px; margin: 28px auto 60px !important; padding: 0 20px;
  display: grid; gap: 24px; align-items: start;
}
.site-content.site-content-widgets { grid-template-columns: minmax(0, 1fr) 320px; }
.is-sidebar-right .site-content.site-content-widgets { grid-template-columns: minmax(0, 1fr) 320px; }
body:not(.is-sidebar-right) .site-content.site-content-widgets .store-sidebar { order: 2; }
@media (max-width: 960px) {
  .site-content.site-content-widgets { grid-template-columns: 1fr; }
}

/* ---------- cards / widgets ---------- */
.widget, .store-sidebar > * {
  background: var(--nb-card) !important;
  border: 1px solid var(--nb-line) !important;
  border-radius: var(--nb-radius) !important;
  box-shadow: none !important;
  color: var(--nb-text);
}
.widget .widget-title, .widget h3, .widget h4, .widget header {
  color: var(--nb-text) !important; font-weight: 700; letter-spacing: .02em;
  border-bottom: 1px solid var(--nb-line) !important;
  background: transparent !important;
}

/* category header + description */
.category-description, .store-text {
  background: var(--nb-card); border: 1px solid var(--nb-line);
  border-radius: var(--nb-radius); padding: 24px 28px;
}
.category-description { margin-bottom: 18px; }
.text-content { color: #c9d1dc; line-height: 1.65; }
.text-content h1, .text-content h2, .text-content h3 { color: var(--nb-text); }
.text-content img { max-width: 100%; border-radius: 12px; }
.text-content code { background: #0b0e12; border: 1px solid var(--nb-line); padding: 2px 6px; border-radius: 6px; }

/* ---------- product grid ---------- */
.store-products-grid, .store-products-list, .store-products-default,
[class^="store-products-"] {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 18px;
}
.store-products-list { grid-template-columns: 1fr; }

article.store-product {
  background: var(--nb-card) !important;
  border: 1px solid var(--nb-line) !important;
  border-radius: var(--nb-radius) !important;
  overflow: hidden; padding: 0 !important;
  display: flex; flex-direction: column;
  box-shadow: none !important;
  transition: border-color .15s ease, box-shadow .15s ease;
}
article.store-product:hover {
  border-color: var(--nb-accent-ring) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
}
article.store-product .image-link { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #0b0e12; position: relative; }
article.store-product .image { width: 100% !important; height: 100% !important; object-fit: cover; display: block; border-radius: 0 !important; }
article.store-product .image-default { width: 100%; height: 100%; background: linear-gradient(135deg, #1a2129, #0f141a); }
article.store-product .image-link::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(20, 26, 33, 0.9));
}
article.store-product .product-title {
  margin: 0 !important; padding: 14px 16px 4px;
  font-size: 16px; font-weight: 700; line-height: 1.3;
}
article.store-product .product-title a { color: var(--nb-text) !important; text-decoration: none; }
article.store-product .product-title a:hover { color: var(--nb-accent) !important; }
article.store-product .nb-badges { display: flex; gap: 6px; flex-wrap: wrap; padding: 4px 16px 0; }
.nb-badge {
  font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  padding: 3px 8px; border-radius: 999px;
  background: var(--nb-accent-soft); color: var(--nb-accent-2); border: 1px solid var(--nb-accent-ring);
}
.nb-badge.blue { background: rgba(95,207,116,.12); color: #7fd992; border-color: rgba(95,207,116,.3); }
.nb-badge.gold { background: rgba(244,203,78,.12); color: #f4cb4e; border-color: rgba(244,203,78,.3); }

/* price / action row (package-actions.twig output) */
article.store-product .product-actions,
article.store-product .actions,
article.store-product form {
  margin-top: auto; padding: 12px 16px 16px;
  display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap;
}
.store-product .price, .store-product .product-price, .price {
  font-weight: 800; font-size: 18px; color: var(--nb-text) !important;
}
.store-product .price .original, .price del, .discount { color: var(--nb-muted); font-weight: 500; font-size: 13px; }
.store-product .countdown {
  display: inline-block; margin-left: 8px; font-size: 11px; font-weight: 700;
  color: #e6a84f; background: rgba(230,168,79,.12); border: 1px solid rgba(230,168,79,.3);
  padding: 2px 8px; border-radius: 999px; vertical-align: middle;
}

/* ---------- package page ---------- */
.store-product-full {
  background: var(--nb-card) !important; border: 1px solid var(--nb-line) !important;
  border-radius: var(--nb-radius) !important; padding: 28px !important; box-shadow: none !important;
}
.store-product-full .product-title { font-size: 28px; font-weight: 800; margin: 0 0 18px !important; color: var(--nb-text); }
.store-product-full > .image, .store-product-full swiper-container, .store-product-full .package-media {
  width: 100%; border-radius: 12px; overflow: hidden; border: 1px solid var(--nb-line); background: #0b0e12;
}
.store-product-full > .image { height: auto !important; object-fit: contain; max-height: 520px; }
.store-product-full .descr { margin-top: 24px; }
.nb-buybox {
  position: sticky; top: 90px;
  background: var(--nb-card) !important; border: 1px solid var(--nb-line) !important;
  border-radius: var(--nb-radius) !important; padding: 20px !important;
}
.nb-buybox .price { font-size: 30px; display: block; margin-bottom: 12px; }
.nb-buybox .btn-primary { width: 100%; justify-content: center; padding: 12px 16px; font-size: 15px; }
.nb-buybox .product-actions, .nb-buybox form { display: flex; flex-direction: column; gap: 10px; }
.nb-trust { list-style: none; margin: 16px 0 0; padding: 14px 0 0; border-top: 1px solid var(--nb-line); display: grid; gap: 8px; }
.nb-trust li { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; color: #c9d1dc; }
.nb-trust svg { width: 16px; height: 16px; flex: none; fill: var(--nb-accent); margin-top: 1px; }
.nb-trust small { color: var(--nb-muted); display: block; }

/* ---------- HOME: hero ---------- */
.nb-hero {
  max-width: 1200px; margin: 28px auto 0; padding: 0 20px;
}
.nb-hero-inner {
  position: relative; overflow: hidden;
  border-radius: 22px; border: 1px solid var(--nb-line);
  background: linear-gradient(135deg, #141a21 0%, #0f141a 60%, #0d1014 100%);
  padding: 56px 48px; min-height: 320px;
  display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 32px; align-items: center;
}
.nb-hero-inner::before {
  content: ""; position: absolute; inset: -40% -20% auto auto; width: 70%; height: 180%;
  background: radial-gradient(closest-side, rgba(56,189,248,.18), transparent 70%);
  pointer-events: none;
}
.nb-hero-grid {
  position: absolute; inset: 0; pointer-events: none; opacity: .25;
  background-image: linear-gradient(var(--nb-line) 1px, transparent 1px), linear-gradient(90deg, var(--nb-line) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(70% 90% at 30% 50%, #000, transparent);
  -webkit-mask-image: radial-gradient(70% 90% at 30% 50%, #000, transparent);
}
.nb-kicker {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--nb-accent-2); background: var(--nb-accent-soft); border: 1px solid var(--nb-accent-ring);
  padding: 6px 12px; border-radius: 999px; margin-bottom: 18px;
}
.nb-kicker::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--nb-accent); box-shadow: 0 0 0 4px var(--nb-accent-soft); }
.nb-hero h1 { font-size: clamp(30px, 4.2vw, 48px); line-height: 1.08; margin: 0 0 14px; font-weight: 800; color: var(--nb-text); }
.nb-hero h1 span { color: var(--nb-accent); }
.nb-hero p.lead { font-size: 17px; color: #b8c2cf; max-width: 560px; margin: 0 0 26px; line-height: 1.6; }
.nb-hero-cta { display: flex; gap: 12px; flex-wrap: wrap; position: relative; }
.nb-btn { display: inline-flex; align-items: center; gap: 8px; padding: 12px 20px; font-size: 15px; text-decoration: none !important; cursor: pointer; }
.nb-btn svg { width: 18px; height: 18px; fill: currentColor; }
.nb-hero-visual { position: relative; }
.nb-hero-visual img {
  width: 100%; display: block; border-radius: 14px; border: 1px solid var(--nb-line-2);
  box-shadow: var(--nb-shadow); transform: rotate(-1.5deg);
}
.nb-stats { display: flex; gap: 28px; margin-top: 30px; flex-wrap: wrap; position: relative; }
.nb-stats div strong { display: block; font-size: 22px; font-weight: 800; color: var(--nb-text); }
.nb-stats div span { font-size: 12px; color: var(--nb-muted); text-transform: uppercase; letter-spacing: .06em; }
@media (max-width: 900px) {
  .nb-hero-inner { grid-template-columns: 1fr; padding: 36px 24px; }
  .nb-hero-visual { display: none; }
}

/* trust bar */
.nb-trustbar {
  max-width: 1200px; margin: 18px auto 0; padding: 0 20px;
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
}
.nb-trustbar > div {
  display: flex; gap: 12px; align-items: center;
  background: var(--nb-card); border: 1px solid var(--nb-line); border-radius: 14px; padding: 14px 16px;
}
.nb-trustbar svg { width: 22px; height: 22px; fill: var(--nb-accent); flex: none; }
.nb-trustbar > div > div { min-width: 0; }
.nb-trustbar strong { display: block; font-size: 14px; color: var(--nb-text); }
.nb-trustbar span { font-size: 12px; color: var(--nb-muted); }
@media (max-width: 900px) { .nb-trustbar { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .nb-trustbar { grid-template-columns: 1fr; } }

/* section titles */
.nb-section { max-width: 1200px; margin: 40px auto 0; padding: 0 20px; }
.nb-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.nb-section-head h2 { font-size: 22px; font-weight: 800; margin: 0; color: var(--nb-text); }
.nb-section-head a { font-size: 14px; font-weight: 600; text-decoration: none; }

/* home categories (Exo's .site-home-categories restyled) */
.site-home-categories {
  max-width: 1200px; margin: 40px auto 0 !important; padding: 0 20px;
  display: grid !important; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px;
  background: transparent !important; border: 0 !important;
}
.site-home-categories .category {
  display: flex !important; align-items: center; gap: 14px;
  background: var(--nb-card) !important; border: 1px solid var(--nb-line) !important;
  border-radius: 14px !important; padding: 14px 16px !important;
  color: var(--nb-text) !important; font-weight: 700; text-decoration: none;
  transition: border-color .15s, transform .15s;
}
.site-home-categories .category:hover { border-color: var(--nb-accent-ring) !important; }
.site-home-categories .category .image {
  width: 44px !important; height: 44px !important; border-radius: 10px !important; object-fit: cover;
  background: var(--nb-accent-soft);
}
.site-home-categories .category::after {
  content: "→"; margin-left: auto; color: var(--nb-muted); font-weight: 400;
}

/* feature cards */
.nb-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.nb-feature { background: var(--nb-card); border: 1px solid var(--nb-line); border-radius: 16px; padding: 20px; }
.nb-feature .ico {
  width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center;
  background: var(--nb-accent-soft); border: 1px solid var(--nb-accent-ring); margin-bottom: 14px;
}
.nb-feature .ico svg { width: 20px; height: 20px; fill: var(--nb-accent); }
.nb-feature h3 { margin: 0 0 6px; font-size: 16px; font-weight: 700; color: var(--nb-text); }
.nb-feature p { margin: 0; font-size: 14px; color: var(--nb-muted); line-height: 1.55; }
@media (max-width: 900px) { .nb-features { grid-template-columns: 1fr; } }

/* home text (index.description) */
.page-index .site-content { margin-top: 32px !important; }
.page-index .store-text:empty { display: none; }

/* ---------- footer ---------- */
.site-footer {
  background: transparent !important; border-top: 1px solid var(--nb-line) !important; margin-top: 40px;
}
.site-footer-inner {
  max-width: 1200px; margin: 0 auto; padding: 28px 20px 36px !important;
  display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center;
}
.site-footer .nb-footer-brand { display: flex; align-items: center; gap: 12px; }
.site-footer .nb-footer-brand img { height: 28px; width: auto; }
.site-footer .nb-footer-brand span { font-size: 13px; color: var(--nb-muted); }
.site-footer .nb-footer-links { display: flex; gap: 18px; flex-wrap: wrap; }
.site-footer .nb-footer-links a { color: var(--nb-muted); font-size: 13px; font-weight: 600; text-decoration: none; }
.site-footer .nb-footer-links a:hover { color: var(--nb-text); }
.site-footer .we-accept { display: flex; gap: 10px; list-style: none; margin: 0; padding: 0; opacity: .7; }
.site-footer .we-accept img { height: 20px; width: auto; filter: grayscale(1) brightness(1.6); }
.site-footer .copyright { grid-column: 1 / -1; margin: 0; font-size: 12px; color: var(--nb-muted); }
@media (max-width: 700px) { .site-footer-inner { grid-template-columns: 1fr; } }

/* ---------- basket / modals (Exo) ---------- */
.modal, .basket, .site-basket, [class*="modal-"] .modal-content, .toast {
  background: var(--nb-card) !important; color: var(--nb-text) !important;
  border: 1px solid var(--nb-line-2) !important; border-radius: 16px !important;
}
input, select, textarea {
  font-family: var(--nb-font) !important;
  background: #0b0e12 !important; color: var(--nb-text) !important;
  border: 1px solid var(--nb-line-2) !important; border-radius: 10px !important;
}
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--nb-accent) !important; box-shadow: 0 0 0 3px var(--nb-accent-soft); }

/* ---------- header user pills ---------- */
.site-header .user-name { position: relative; padding: 5px 14px 5px 42px !important; min-height: 40px; border-radius: 999px !important; background: radial-gradient(circle 15px at 20px 50%, var(--nb-accent) 97%, transparent 100%), var(--nb-card-2) !important; border: 1px solid var(--nb-line-2) !important; }
.site-header .user-name::before { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); width: 16px !important; height: 16px !important; margin: 0 !important; background-color: #0d1014 !important; }
.site-header .user-name:hover::before { background-color: #0d1014 !important; }
.site-header .user-name .text { font-weight: 600; }
.site-header .user-name:hover { border-color: var(--nb-accent-ring) !important; }
.site-header .open-basket { border-radius: 999px !important; padding: 9px 16px !important; min-height: 40px; }
.site-header .log-in { padding: 9px 16px !important; border-radius: 999px !important; background: transparent !important; border: 1px solid var(--nb-line-2) !important; color: var(--nb-text) !important; font-weight: 600; }
.site-header .log-in:hover { border-color: var(--nb-accent-ring) !important; background: var(--nb-accent-soft) !important; color: var(--nb-accent-2) !important; }
.site-header .nb-discord { border-radius: 999px !important; min-height: 40px; }

/* ---------- category page v2 ---------- */
.nb-cat-head { margin: 0 0 20px; padding: 26px 28px; background: var(--nb-card); border: 1px solid var(--nb-line); border-radius: var(--nb-radius); }
.nb-cat-head .nb-kicker { margin-bottom: 10px; }
.nb-cat-head h1 { margin: 0; font-size: 30px; font-weight: 800; color: var(--nb-text); }
.nb-cat-desc { margin-top: 10px; color: var(--nb-muted); font-size: 15px; }
.nb-cat-desc p:last-child { margin-bottom: 0; }
.category-description { display: none; }
.nb-products { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important; gap: 20px; }
article.store-product .product-title { text-align: left; font-size: 17px; padding: 16px 18px 6px; }
article.store-product .nb-badges { padding: 6px 18px 0; }
article.store-product .product-actions, article.store-product .actions { padding: 14px 18px 18px; }
article.store-product .price { font-size: 22px; margin: 0; }
article.store-product .price strong { font-weight: 800; }
article.store-product .btn-primary.add, article.store-product .btn-primary { padding: 11px 18px; }
article.store-product .image-link { aspect-ratio: 16 / 9; }

/* ---------- MOBILE ---------- */
@media (max-width: 960px) {
  .site-content.site-content-widgets, .is-sidebar-right .site-content.site-content-widgets { grid-template-columns: minmax(0, 1fr) !important; }
  .site-content { padding: 0 14px; margin: 16px auto 40px !important; gap: 16px; }
  .store-sidebar { width: 100% !important; max-width: none !important; }
  .nb-products { grid-template-columns: 1fr !important; }
  .nb-cat-head { padding: 18px; }
  .nb-cat-head h1 { font-size: 24px; }
  .store-product-full { padding: 18px !important; }
  .store-product-full .product-title { font-size: 22px; }
  body.page-package .store-sidebar { order: -1; }
  body.page-package .store-sidebar > :not(.nb-buybox) { display: none !important; }
  .nb-buybox { position: static; }
  .nb-hero, .nb-trustbar, .nb-section, .site-home-categories { padding: 0 14px; }
  .nb-hero-inner { padding: 28px 20px; min-height: 0; }
  .nb-hero h1 { font-size: 30px; }
  .nb-stats { gap: 18px; }
  .site-header-inner { padding: 10px 14px !important; gap: 8px; flex-wrap: wrap; }
  .site-header .nb-discord span { display: none; }
  .site-header .nb-discord { padding: 9px 11px; }
  .site-footer-inner { grid-template-columns: 1fr; text-align: left; }
}
@media (max-width: 480px) {
  .nb-trustbar { grid-template-columns: 1fr; }
  .site-home-categories { grid-template-columns: 1fr !important; }
}

/* ---------- mobile navigation overlay ---------- */
@media (max-width: 960px) {
  .site-navigation.navigation-horizontal { position: fixed !important; inset: 0 !important; width: 100% !important; height: 100dvh !important; max-width: none !important; margin: 0 !important; padding: 76px 18px 24px !important; background: rgba(13,16,20,.97) !important; backdrop-filter: blur(10px); z-index: 1000 !important; overflow: auto; display: none; }
  body.show-navigation .site-navigation.navigation-horizontal { display: block !important; }
  .navigation-horizontal .menu { display: flex !important; flex-direction: column; gap: 6px; padding: 0 !important; margin: 0 !important; list-style: none; background: transparent !important; position: static !important; inset: auto !important; transform: none !important; }
  .navigation-horizontal .menu > li { width: 100%; }
  .navigation-horizontal .menu > li > a { display: block !important; width: 100%; padding: 14px 16px !important; font-size: 18px !important; border-radius: 12px; background: var(--nb-card) !important; color: var(--nb-text) !important; max-width: none !important; }
  .navigation-horizontal .menu > li.active > a, .navigation-horizontal .menu > li > a.link-active { background: var(--nb-accent-soft) !important; color: var(--nb-accent) !important; }
  .navigation-horizontal .menu li ul { position: static !important; padding: 6px 0 0 16px !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
  .navigation-horizontal .close-navigation { position: fixed !important; top: 14px; right: 14px; width: 44px !important; height: 44px !important; border-radius: 50% !important; background: var(--nb-card-2) !important; border: 1px solid var(--nb-line-2) !important; display: grid !important; place-items: center; z-index: 1001; }
}

/* =========================================================
   HOME v2 (NotBad)
   ========================================================= */

/* sale bar */
.nb-salebar { background: linear-gradient(90deg, #0e7fb8, #38bdf8 55%, #0e7fb8); color: #04121b; }
.nb-salebar-inner { max-width: 1200px; margin: 0 auto; padding: 8px 20px; display: flex; align-items: center; gap: 18px; }
.nb-salebar-text { display: flex; align-items: center; gap: 10px; font-weight: 700; font-size: 14px; min-width: 0; }
.nb-salebar-text b { background: #04121b; color: #67cdfa; font-size: 11px; letter-spacing: .1em; padding: 4px 8px; border-radius: 6px; }
.nb-salebar-text span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nb-countdown { margin-left: auto; display: flex; align-items: center; gap: 6px; }
.nb-countdown div { text-align: center; line-height: 1; }
.nb-countdown b { display: block; font-size: 18px; font-weight: 800; font-variant-numeric: tabular-nums; }
.nb-countdown small { font-size: 9px; text-transform: uppercase; letter-spacing: .08em; opacity: .75; }
.nb-countdown i { font-style: normal; font-weight: 800; opacity: .6; margin-top: -10px; }
.nb-salebar-btn { background: #04121b; color: #fff !important; font-weight: 800; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; padding: 9px 16px; border-radius: 8px; text-decoration: none; white-space: nowrap; }
.nb-countdown + .nb-salebar-btn { margin-left: 8px; }
.nb-salebar-text + .nb-salebar-btn { margin-left: auto; }
.nb-salebar-btn:hover { background: #0b1f2c; }

/* ticker */
.nb-ticker { border-top: 1px solid var(--nb-line); overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.nb-ticker-track { display: flex; width: max-content; animation: nb-marquee 38s linear infinite; }
.nb-ticker span { padding: 9px 26px; font-size: 13px; font-weight: 600; color: var(--nb-muted); white-space: nowrap; position: relative; }
.nb-ticker span::before { content: ""; position: absolute; left: 0; top: 50%; width: 5px; height: 5px; margin-top: -2px; border-radius: 50%; background: var(--nb-accent); opacity: .7; }
@keyframes nb-marquee { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .nb-ticker-track { animation: none; } }

/* hero v2 */
.nb-hero2 { position: relative; overflow: hidden; width: 100%; }
.nb-hero2-bg { position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(700px 420px at 75% 40%, rgba(56,189,248,.16), transparent 70%),
    radial-gradient(500px 300px at 10% 0%, rgba(56,189,248,.08), transparent 70%),
    linear-gradient(var(--nb-line) 1px, transparent 1px) 0 0 / 44px 44px,
    linear-gradient(90deg, var(--nb-line) 1px, transparent 1px) 0 0 / 44px 44px;
  mask-image: linear-gradient(180deg, #000 60%, transparent); -webkit-mask-image: linear-gradient(180deg, #000 60%, transparent); opacity: .9; }
.nb-hero2-inner { position: relative; max-width: 1200px; margin: 0 auto; padding: 72px 20px 64px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 48px; align-items: center; }
.nb-eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: #b8c2cf; margin-bottom: 18px; }
.nb-eyebrow i { width: 7px; height: 7px; border-radius: 50%; background: var(--nb-accent); box-shadow: 0 0 12px var(--nb-accent); }
.nb-hero2 h1 { font-size: clamp(38px, 5.2vw, 64px); line-height: 1.02; letter-spacing: -0.03em; font-weight: 800; margin: 0 0 18px; color: #fff; }
.nb-hero2 h1 span { color: var(--nb-accent); text-shadow: 0 0 40px rgba(56,189,248,.45); }
.nb-hero2 .lead { font-size: 17px; line-height: 1.6; color: #a9b4c2; max-width: 520px; margin: 0 0 28px; }
.nb-hero2-cta { display: flex; gap: 12px; flex-wrap: wrap; }
.nb-cta { display: inline-flex; align-items: center; gap: 12px; padding: 12px 20px; border-radius: 14px; text-decoration: none !important; font-weight: 800; font-size: 17px; line-height: 1.1; transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease; }
.nb-cta small { display: block; font-size: 12px; font-weight: 600; opacity: .7; }
.nb-cta svg { width: 26px; height: 26px; fill: currentColor; flex: none; }
.nb-cta-light { background: #fff; color: #0d1014 !important; box-shadow: 0 10px 30px rgba(255,255,255,.08); }
.nb-cta-light:hover { transform: translateY(-1px); box-shadow: 0 14px 36px rgba(56,189,248,.25); color: #0d1014 !important; }
.nb-cta-dark { background: rgba(255,255,255,.03); color: #fff !important; border: 1px solid var(--nb-line-2); }
.nb-cta-dark:hover { border-color: var(--nb-accent-ring); color: #fff !important; }
.nb-hero2-stats { display: flex; align-items: flex-end; gap: 28px; flex-wrap: wrap; margin-top: 34px; padding-top: 22px; border-top: 1px solid var(--nb-line); }
.nb-hero2-stats div strong { display: block; font-size: 24px; font-weight: 800; color: #fff; letter-spacing: -0.02em; }
.nb-hero2-stats div span { font-size: 11px; font-weight: 700; color: var(--nb-muted); text-transform: uppercase; letter-spacing: .08em; }
.nb-docs { margin-left: auto; font-weight: 700; font-size: 14px; color: #c9d1dc !important; text-decoration: none; }
.nb-hero2-visual { position: relative; }
.nb-frame { padding: 10px; border-radius: 22px; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)); border: 1px solid var(--nb-line-2); box-shadow: 0 40px 100px rgba(0,0,0,.6), 0 0 80px rgba(56,189,248,.10); }
.nb-frame img { display: block; width: 100%; border-radius: 14px; }

/* features 4 */
.nb-feat4 { max-width: 1200px; margin: 0 auto; padding: 8px 20px 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 1px solid var(--nb-line); border-bottom: 1px solid var(--nb-line); width: 100%; box-sizing: border-box; }
.nb-feat4 > div { padding: 26px 22px; border-right: 1px solid var(--nb-line); }
.nb-feat4 > div:last-child { border-right: 0; }
.nb-feat4 i { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--nb-accent-soft); border: 1px solid var(--nb-accent-ring); margin-bottom: 14px; }
.nb-feat4 svg { width: 20px; height: 20px; fill: var(--nb-accent); }
.nb-feat4 h3 { margin: 0 0 6px; font-size: 16px; font-weight: 700; color: #fff; }
.nb-feat4 p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--nb-muted); }

/* generic home block */
.nb-block { max-width: 1200px; margin: 72px auto 0; padding: 0 20px; width: 100%; box-sizing: border-box; }
.nb-block-head { text-align: center; margin-bottom: 30px; }
.nb-pill { display: inline-block; padding: 7px 14px; border-radius: 999px; border: 1px solid var(--nb-line-2); background: var(--nb-card); font-size: 13px; font-weight: 700; color: #c9d1dc; margin-bottom: 14px; }
.nb-block-head h2 { font-size: clamp(28px, 3.6vw, 42px); font-weight: 800; letter-spacing: -0.02em; margin: 0; color: #fff; }
.nb-block-head p { margin: 10px 0 0; color: var(--nb-muted); }

/* featured grid */
.nb-feat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; }

/* reviews */
.nb-reviews { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.nb-reviews figure { margin: 0; padding: 22px; border-radius: 16px; background: var(--nb-card); border: 1px solid var(--nb-line); }
.nb-reviews .stars { color: #f4cb4e; letter-spacing: 2px; margin-bottom: 10px; }
.nb-reviews blockquote { margin: 0 0 14px; color: #dbe2ea; line-height: 1.6; }
.nb-reviews figcaption { font-size: 13px; color: var(--nb-muted); }
.nb-reviews figcaption b { color: #fff; }

/* FAQ */
.nb-faq { max-width: 820px; margin: 0 auto; display: grid; gap: 10px; }
.nb-faq details { background: var(--nb-card); border: 1px solid var(--nb-line); border-radius: 14px; transition: border-color .15s; }
.nb-faq details[open] { border-color: var(--nb-accent-ring); }
.nb-faq summary { list-style: none; cursor: pointer; padding: 18px 20px; font-weight: 700; color: #fff; display: flex; align-items: center; gap: 12px; }
.nb-faq summary::-webkit-details-marker { display: none; }
.nb-faq summary i { margin-left: auto; width: 28px; height: 28px; flex: none; border-radius: 8px; background: var(--nb-card-2); border: 1px solid var(--nb-line-2); position: relative; }
.nb-faq summary i::before { content: ""; position: absolute; inset: 0; margin: auto; width: 8px; height: 8px; border-right: 2px solid #c9d1dc; border-bottom: 2px solid #c9d1dc; transform: translateY(-2px) rotate(45deg); transition: transform .15s; }
.nb-faq details[open] summary i::before { transform: translateY(2px) rotate(-135deg); }
.nb-faq details p { margin: 0; padding: 0 20px 18px; color: #a9b4c2; line-height: 1.65; }

/* CTA band */
.nb-cta-band { max-width: 1160px; margin: 72px auto 0; padding: 34px 36px; border-radius: 22px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; width: calc(100% - 40px); box-sizing: border-box;
  background: radial-gradient(600px 200px at 0% 0%, rgba(56,189,248,.20), transparent 70%), var(--nb-card); border: 1px solid var(--nb-accent-ring); }
.nb-cta-band h2 { margin: 0 0 6px; font-size: 26px; font-weight: 800; color: #fff; }
.nb-cta-band p { margin: 0; color: var(--nb-muted); }

.page-index .nb-hero, .page-index .nb-trustbar, .page-index .nb-section { display: none; }

@media (max-width: 960px) {
  .nb-salebar-inner { flex-wrap: wrap; gap: 8px 12px; justify-content: center; padding: 8px 14px; }
  .nb-salebar-text { width: 100%; justify-content: center; font-size: 13px; }
  .nb-countdown { margin-left: 0; }
  .nb-countdown + .nb-salebar-btn, .nb-salebar-text + .nb-salebar-btn { margin-left: 0; }
  .nb-hero2-inner { grid-template-columns: 1fr; padding: 40px 16px 40px; gap: 30px; }
  .nb-hero2 h1 { font-size: 38px; }
  .nb-hero2 .lead { font-size: 16px; }
  .nb-cta { flex: 1 1 auto; justify-content: center; }
  .nb-hero2-stats { gap: 18px; }
  .nb-hero2-stats div strong { font-size: 19px; }
  .nb-docs { margin-left: 0; }
  .nb-feat4 { grid-template-columns: 1fr 1fr; padding: 0 14px; }
  .nb-feat4 > div { padding: 20px 14px; }
  .nb-feat4 > div:nth-child(2n) { border-right: 0; }
  .nb-feat4 > div:nth-child(-n+2) { border-bottom: 1px solid var(--nb-line); }
  .nb-block { margin-top: 52px; padding: 0 14px; }
  .nb-feat-grid { grid-template-columns: 1fr; }
  .nb-cta-band { width: calc(100% - 28px); padding: 24px 20px; margin-top: 52px; }
}
@media (max-width: 520px) {
  .nb-feat4 { grid-template-columns: 1fr; }
  .nb-feat4 > div { border-right: 0 !important; border-bottom: 1px solid var(--nb-line); }
  .nb-feat4 > div:last-child { border-bottom: 0; }
  .nb-hero2 h1 { font-size: 34px; }
}

/* home v2 fixes */
.page-index .site { gap: 0 !important; }
.page-index .site-footer { margin-top: 72px; }
a.nb-frame { display: block; transition: transform .2s ease; }
a.nb-frame:hover { transform: translateY(-3px); }
.nb-hero2-inner:not(.has-visual) { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); }
#nb-featured[hidden] { display: none !important; }

/* ---------- fixes round 3 ---------- */
/* Exo stretches .site grid rows -> big empty gaps */
.site { grid-auto-rows: auto !important; align-content: start; }

/* Add to Basket: Exo sets line-height = button height */
.store-product .btn-primary, .store-product a.add, .nb-buybox .btn-primary, .product-actions .btn-primary {
  display: flex !important; align-items: center; justify-content: center; gap: 8px;
  height: auto !important; min-height: 46px; line-height: 1.2 !important; padding: 12px 18px !important;
  font-size: 15px !important; font-weight: 700 !important; border-radius: 12px !important; width: 100%;
}
.store-product .product-actions { flex-direction: column; align-items: stretch !important; }
.store-product .product-actions .price { text-align: left; }

/* Login with FiveM */
.site-header-inner .nb-login { display: inline-flex; align-items: center; gap: 9px; min-height: 40px; padding: 6px 16px 6px 8px; border-radius: 999px; background: #fff; color: #0d1014 !important; font-weight: 700; font-size: 14px; text-decoration: none !important; white-space: nowrap; transition: box-shadow .15s ease, transform .15s ease; }
.site-header-inner .nb-login:hover { box-shadow: 0 0 0 3px var(--nb-accent-ring); }
.nb-login img, .nb-login svg { width: 26px; height: 26px; border-radius: 50%; background: #0d1014; padding: 5px; box-sizing: border-box; fill: #fff; object-fit: contain; }
.nb-login-short { display: none; }
@media (max-width: 960px) { .nb-login-long { display: none; } .nb-login-short { display: inline; } }

/* home: view all link */
.nb-viewall { text-align: center; margin-top: 22px; }
.nb-viewall a { display: inline-block; padding: 11px 20px; border-radius: 999px; border: 1px solid var(--nb-line-2); color: #fff !important; font-weight: 700; text-decoration: none; }
.nb-viewall a:hover { border-color: var(--nb-accent-ring); background: var(--nb-accent-soft); }
.nb-block { margin-top: 56px; }

/* all scripts page */
.nb-all { display: block !important; max-width: 1200px !important; }
.nb-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 20px; }
.nb-chip { padding: 9px 16px; border-radius: 999px; background: var(--nb-card); border: 1px solid var(--nb-line-2); color: #c9d1dc; font: 700 14px var(--nb-font); cursor: pointer; transition: all .15s ease; }
.nb-chip:hover { border-color: var(--nb-accent-ring); color: #fff; }
.nb-chip.active { background: var(--nb-accent); border-color: transparent; color: #0d1014; }
.nb-search { margin-left: auto; min-width: 240px; padding: 10px 14px !important; }
.nb-all-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.nb-all-grid article[hidden] { display: none !important; }
.nb-empty { text-align: center; color: var(--nb-muted); padding: 40px 0; }
@media (max-width: 960px) { .nb-search { margin-left: 0; width: 100%; min-width: 0; } .nb-all-grid { grid-template-columns: 1fr; } }

.site-header-inner .nb-login { order: 2; margin-left: 0 !important; }
.site-header-inner .nb-discord { order: 1; }
.site-header-inner .actions { order: 3; }

/* ---------- fixes round 4 ---------- */
/* respect Tebex hidden state (Add to Basket <-> quantity) */
.store-product [hidden], .nb-buybox [hidden], .product-actions [hidden] { display: none !important; }
.store-product .product-actions > * { flex: 0 0 auto !important; }
.store-product .btn-primary, .store-product a.add { max-height: 50px; }

/* quantity stepper after adding to basket */
.product-actions .quantity-field { display: flex !important; align-items: center; gap: 4px; width: 100%; height: 46px; padding: 0 5px; box-sizing: border-box; border-radius: 12px; background: var(--nb-accent-soft); border: 1px solid var(--nb-accent-ring); }
.product-actions .quantity-field[hidden] { display: none !important; }
.product-actions .quantity-field .adjust { order: 1; width: 36px !important; height: 36px !important; min-width: 36px; padding: 0 !important; border-radius: 9px !important; background: var(--nb-card-2) !important; border: 1px solid var(--nb-line-2) !important; color: #fff !important; }
.product-actions .quantity-field .adjust::before { background-color: #fff !important; }
.product-actions .quantity-field .increase { order: 4; }
.product-actions .quantity-field .quantity { order: 2; width: 44px !important; min-width: 0; height: 36px !important; padding: 0 !important; text-align: center; font-weight: 800; font-size: 16px; background: transparent !important; border: 0 !important; box-shadow: none !important; -moz-appearance: textfield; }
.product-actions .quantity-field .quantity::-webkit-inner-spin-button, .product-actions .quantity-field .quantity::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.product-actions .quantity-field .open-basket { order: 3; flex: 1; height: 36px; background: transparent !important; border: 0 !important; color: var(--nb-accent-2) !important; font: 700 14px var(--nb-font); cursor: pointer; text-align: left; padding: 0 4px !important; box-shadow: none !important; }
.product-actions .quantity-field .open-basket::before { display: none !important; }
.product-actions .quantity-field .open-basket:hover { text-decoration: underline; }

/* no sidebar on category / package pages */
.site-content.nb-wide { display: block !important; max-width: 1200px !important; }
.nb-wide .nb-products { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important; }
body.page-package .store-sidebar > :not(.nb-buybox) { display: none !important; }

/* ---------- fixes round 5 ---------- */
.store-product a.add[hidden], .store-product .btn-primary[hidden], .nb-buybox a.add[hidden], .nb-buybox .btn-primary[hidden], .product-actions .quantity-field[hidden] { display: none !important; }
.product-actions .quantity-field > .adjust.decrease { order: 1 !important; }
.product-actions .quantity-field > input.quantity { order: 2 !important; margin: 0 !important; left: 0 !important; }
.product-actions .quantity-field > .open-basket { order: 3 !important; }
.product-actions .quantity-field > .adjust.increase { order: 4 !important; }

/* in-button loading (replaces Exo's spinner over the whole price+button block) */
.store-product .actions.updating::before, .nb-buybox .actions.updating::before { display: none !important; }
.store-product .actions.updating > *, .nb-buybox .actions.updating > * { opacity: 1 !important; filter: none !important; }
.store-product .actions.updating, .nb-buybox .actions.updating { pointer-events: none; }
.actions.updating > a.add:not([hidden]), .actions.updating > .quantity-field:not([hidden]) { position: relative; color: transparent !important; cursor: progress; }
.actions.updating > .quantity-field:not([hidden]) > * { visibility: hidden; }
.actions.updating > a.add:not([hidden])::after, .actions.updating > .quantity-field:not([hidden])::after {
  content: ""; position: absolute; inset: 0; margin: auto; width: 20px; height: 20px; border-radius: 50%;
  border: 2.5px solid rgba(13,16,20,.25); border-top-color: #0d1014; animation: nb-spin .7s linear infinite; }
.actions.updating > .quantity-field:not([hidden])::after { border-color: var(--nb-accent-ring); border-top-color: var(--nb-accent); }
@keyframes nb-spin { to { transform: rotate(360deg); } }
.basket-popup-content.updating::before { background-color: var(--nb-accent) !important; }

/* =========================================================
   basket drawer v2
   ========================================================= */
.basket-popup .popup-content.basket { background: #0f1419 !important; border: 0 !important; border-left: 1px solid var(--nb-line-2) !important; border-radius: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column; min-height: 100%; box-shadow: -30px 0 80px rgba(0,0,0,.55) !important; color: var(--nb-text); }
.basket-popup .popup-close { top: 18px !important; right: 18px !important; width: 36px !important; height: 36px !important; border-radius: 50% !important; background: var(--nb-card-2) !important; border: 1px solid var(--nb-line-2) !important; --btn-color-text: #c9d1dc; --btn-color-text-hover: #fff; }
.basket-popup .popup-close:hover { border-color: var(--nb-accent-ring) !important; }

.basket .basket-header { padding: 26px 70px 6px 24px !important; background: transparent !important; border: 0 !important; }
.basket .basket-header::before { content: "Your basket"; display: block; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--nb-accent); margin-bottom: 6px; }
.basket .basket-title { margin: 0 !important; font-size: 22px !important; font-weight: 800 !important; color: #fff !important; text-transform: none !important; letter-spacing: -0.01em; line-height: 1.2 !important; }

.basket .basket-second-header { margin: 0 24px; padding: 0 0 14px !important; background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--nb-line) !important; font-size: 13px; font-weight: 600; color: var(--nb-muted) !important; }
.basket .basket-second-header .total { display: none; }

.basket .basket-content { flex: 1 1 auto; padding: 16px 24px !important; background: transparent !important; }
.basket .basket-item { display: grid !important; grid-template-columns: 48px minmax(0, 1fr) auto; grid-template-areas: "thumb info remove" "thumb qty qty"; gap: 10px 14px; align-items: center; padding: 14px !important; margin: 0 0 10px !important; border-radius: 14px !important; background: var(--nb-card) !important; border: 1px solid var(--nb-line) !important; }
.basket .basket-item:hover { border-color: var(--nb-line-2) !important; }
.nb-bk-thumb { grid-area: thumb; align-self: start; width: 48px; height: 48px; border-radius: 12px; display: grid; place-items: center; background: var(--nb-accent-soft); border: 1px solid var(--nb-accent-ring); }
.nb-bk-thumb svg { width: 22px; height: 22px; fill: var(--nb-accent); }
.basket .basket-item .info { grid-area: info; min-width: 0; padding: 0 !important; }
.basket .basket-item .title { margin: 0 0 4px !important; font-size: 15px !important; font-weight: 700 !important; line-height: 1.35 !important; }
.basket .basket-item .title a { color: #fff !important; text-decoration: none !important; }
.basket .basket-item .title a:hover { color: var(--nb-accent-2) !important; }
.basket .basket-item .options { margin: 0 0 4px !important; padding: 0 !important; list-style: none; font-size: 12px; color: var(--nb-muted); }
.basket .basket-item .options:empty { display: none; }
.basket .basket-item .price { font-size: 15px !important; font-weight: 800; color: #c9d1dc !important; }
.basket .basket-item .trial { font-size: 12px; color: #7fd992; }

.basket .basket-item .quantity-field { grid-area: qty; justify-self: start; display: flex !important; align-items: center; gap: 2px; height: 36px; padding: 3px !important; border-radius: 10px !important; background: var(--nb-card-2) !important; border: 1px solid var(--nb-line-2) !important; width: auto !important; }
.basket .basket-item .quantity-field .adjust { width: 28px !important; height: 28px !important; min-width: 28px; padding: 0 !important; border-radius: 7px !important; background: transparent !important; border: 0 !important; --btn-color-text: #c9d1dc; --btn-color-text-hover: #fff; }
.basket .basket-item .quantity-field .adjust:hover:not(:disabled) { background: rgba(255,255,255,.06) !important; }
.basket .basket-item .quantity-field .adjust:disabled { opacity: .35; }
.basket .basket-item .quantity-field .quantity { width: 34px !important; height: 28px !important; margin: 0 !important; padding: 0 !important; text-align: center; font-weight: 800; font-size: 14px; background: transparent !important; border: 0 !important; box-shadow: none !important; -moz-appearance: textfield; }
.basket .basket-item .quantity-field .quantity::-webkit-inner-spin-button, .basket .basket-item .quantity-field .quantity::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.basket .basket-item .remove { grid-area: remove; align-self: start; width: 34px !important; height: 34px !important; min-width: 34px; padding: 0 !important; border-radius: 10px !important; background: transparent !important; border: 1px solid var(--nb-line-2) !important; --btn-color-text: #8a95a3; --btn-color-text-hover: #e25c5c; }
.basket .basket-item .remove:hover { background: rgba(226,92,92,.1) !important; border-color: rgba(226,92,92,.4) !important; }

.basket .basket-checkout { position: sticky; bottom: 0; margin-top: auto; padding: 18px 24px 22px !important; background: #0f1419 !important; border: 0 !important; border-top: 1px solid var(--nb-line) !important; box-shadow: 0 -20px 30px rgba(15,20,25,.9); }
.basket .basket-checkout h3 { display: flex !important; justify-content: space-between; align-items: baseline; margin: 0 0 14px !important; font-size: 12px !important; font-weight: 800 !important; letter-spacing: .1em; text-transform: uppercase; color: var(--nb-muted) !important; }
.basket .basket-checkout h3 .total, .basket .basket-checkout h3 .total strong { font-size: 26px !important; font-weight: 800 !important; letter-spacing: -0.01em; text-transform: none; color: #fff !important; }
.basket .basket-checkout .checkout { display: flex !important; align-items: center; justify-content: center; width: 100% !important; min-height: 52px; height: auto !important; line-height: 1.2 !important; padding: 14px 18px !important; font-size: 16px !important; font-weight: 800 !important; border-radius: 14px !important; }
.basket .basket-checkout .checkout:disabled { opacity: .6; }
.nb-bk-trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; margin-top: 12px; font-size: 12px; color: var(--nb-muted); }
.nb-bk-trust span { display: inline-flex; align-items: center; gap: 6px; }
.nb-bk-trust svg { width: 13px; height: 13px; fill: #7fd992; }

.nb-bk-empty { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; padding: 50px 10px; color: var(--nb-muted); }
.nb-bk-empty svg { width: 46px; height: 46px; fill: var(--nb-line-2); margin-bottom: 8px; }
.nb-bk-empty strong { color: #fff; font-size: 17px; }
.nb-bk-browse { margin-top: 14px; padding: 11px 20px; border-radius: 12px; background: var(--nb-accent); color: #0d1014 !important; font-weight: 800; text-decoration: none !important; }
.basket:has(.nb-bk-empty) .basket-checkout, .basket:has(.nb-bk-empty) .basket-second-header { display: none !important; }

/* updating state inside basket: spinner over the item list only */
.basket-popup-content.updating > * { filter: none !important; opacity: .55; }
@media (max-width: 520px) { .basket .basket-header, .basket .basket-content, .basket .basket-checkout { padding-left: 16px !important; padding-right: 16px !important; } .basket .basket-second-header { margin: 0 16px; } }

/* basket header fix */
.basket .basket-header { display: flex !important; flex-direction: column !important; align-items: flex-start !important; justify-content: flex-start !important; gap: 0; }
.basket .basket-title { justify-content: flex-start !important; }
.basket .basket-title::before { width: 22px !important; height: 22px !important; }
.basket .basket-content { padding-left: 24px !important; padding-right: 24px !important; margin: 0 !important; }
.basket .basket-items { padding: 0 !important; margin: 0 !important; }
.basket-popup .popup-close { position: absolute !important; }

/* ---------- header pills v2 ---------- */
.site-header-inner .user-actions { display: flex !important; align-items: center; gap: 10px; order: 2; margin-left: 0 !important; position: static !important; }
.nb-user { display: inline-flex; align-items: center; gap: 9px; height: 40px; padding: 4px 12px 4px 4px; box-sizing: border-box; border-radius: 999px; background: var(--nb-card-2); border: 1px solid var(--nb-line-2); color: #fff !important; font-weight: 700; font-size: 14px; text-decoration: none !important; white-space: nowrap; transition: border-color .15s, background .15s; }
.nb-user:hover { border-color: rgba(226,92,92,.45); background: rgba(226,92,92,.08); }
.nb-avatar { width: 30px; height: 30px; flex: none; border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: linear-gradient(135deg, #38bdf8, #0e7fb8); color: #04121b; font-weight: 800; font-size: 13px; line-height: 1; }
.nb-avatar.has-img { background: #1a2129; }
.nb-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nb-user-out { width: 16px; height: 16px; flex: none; fill: #8a95a3; transition: fill .15s; }
.nb-user:hover .nb-user-out { fill: #e25c5c; }
.nb-basket { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 16px 0 14px; border: 0; border-radius: 999px; background: var(--nb-accent); color: #04121b; font: 800 14px var(--nb-font); cursor: pointer; white-space: nowrap; box-shadow: 0 6px 18px rgba(56,189,248,.22); transition: background .15s, box-shadow .15s; }
.nb-basket:hover { background: var(--nb-accent-2); box-shadow: 0 8px 24px rgba(56,189,248,.35); }
.nb-basket svg { width: 18px; height: 18px; fill: currentColor; flex: none; }
.nb-basket::before { display: none !important; }
.site-header .nb-discord svg { width: 18px; height: 18px; fill: #5865F2; }
.site-header-inner .nb-login { padding: 6px 16px 6px 13px; gap: 8px; }
.site-header-inner .nb-login svg, .site-header-inner .nb-login img { width: 18px !important; height: 18px !important; padding: 0 !important; border-radius: 0 !important; background: none !important; fill: #F40552 !important; }
@media (max-width: 960px) { .nb-user-name, .nb-basket span { display: none; } .nb-user { padding: 4px; } .nb-user-out { display: none; } .nb-basket { padding: 0 12px; } }

/* login dark */
.site-header-inner .nb-login { background: var(--nb-card-2) !important; color: #fff !important; border: 1px solid var(--nb-line-2); box-shadow: none !important; }
.site-header-inner .nb-login:hover { border-color: rgba(244,5,82,.55); background: rgba(244,5,82,.08) !important; box-shadow: none !important; }

/* hero CTA icon */
.nb-cta-ico { width: 38px; height: 38px; flex: none; border-radius: 11px; display: grid; place-items: center; background: #0d1014; }
.nb-cta-ico svg { width: 18px !important; height: 18px !important; fill: var(--nb-accent) !important; }
.nb-cta-light { padding: 9px 20px 9px 9px; }

/* framework badges (brand colours, toned down) */
.nb-badge.esx { color: #f9a23a; background: rgba(249,162,58,.10); border-color: rgba(249,162,58,.32); }
.nb-badge.qb { color: #f2627a; background: rgba(208,21,59,.13); border-color: rgba(208,21,59,.42); }
.nb-badge.neutral { color: #a9b4c2; background: rgba(255,255,255,.04); border-color: var(--nb-line-2); }

/* cta: tinted glass */
.nb-cta-light { background: linear-gradient(180deg, rgba(56,189,248,.18), rgba(56,189,248,.07)) !important; color: #fff !important; border: 1px solid rgba(56,189,248,.38); box-shadow: 0 0 0 1px rgba(56,189,248,.06), 0 12px 30px rgba(56,189,248,.10) !important; }
.nb-cta-light:hover { background: linear-gradient(180deg, rgba(56,189,248,.26), rgba(56,189,248,.10)) !important; border-color: rgba(56,189,248,.6); color: #fff !important; box-shadow: 0 0 0 1px rgba(56,189,248,.12), 0 14px 36px rgba(56,189,248,.18) !important; transform: none; }
.nb-cta-light small { color: #9fdcfb; opacity: 1; }
.nb-cta-ico { background: var(--nb-accent) !important; box-shadow: 0 4px 14px rgba(56,189,248,.35); }
.nb-cta-ico svg { fill: #04121b !important; }

/* page loading bar */
.nb-topbar { position: fixed; top: 0; left: 0; z-index: 10000; height: 3px; width: 0; opacity: 0; pointer-events: none; background: linear-gradient(90deg, #0e7fb8, #38bdf8, #a5e4fd); box-shadow: 0 0 10px rgba(56,189,248,.7), 0 0 4px rgba(56,189,248,.9); border-radius: 0 3px 3px 0; }
.nb-topbar.run { opacity: 1; animation: nb-bar 8s cubic-bezier(.1,.7,.2,1) forwards; }
@keyframes nb-bar { 0% { width: 0; } 10% { width: 35%; } 40% { width: 70%; } 100% { width: 92%; } }

/* login button loading */
.nb-login { position: relative; }
.nb-login.is-loading { pointer-events: none; }
.nb-login.is-loading svg, .nb-login.is-loading img { visibility: hidden; }
.nb-login.is-loading::before { content: ""; position: absolute; left: 13px; top: 50%; width: 14px; height: 14px; margin-top: -9px; border-radius: 50%; border: 2px solid rgba(244,5,82,.25); border-top-color: #F40552; animation: nb-spin .7s linear infinite; }
@media (prefers-reduced-motion: reduce) { .nb-topbar.run { animation-duration: .01s; } }

/* ---------- login popup v2 ---------- */
.nb-auth { max-width: 440px; margin: 0 auto; padding: 34px 32px 26px !important; text-align: center; background: radial-gradient(420px 180px at 50% 0%, rgba(56,189,248,.14), transparent 70%), var(--nb-card) !important; border: 1px solid var(--nb-line-2) !important; border-radius: 22px !important; }
.popup .nb-auth { border: 0 !important; background: radial-gradient(420px 180px at 50% 0%, rgba(56,189,248,.14), transparent 70%) !important; max-width: none; }
.nb-auth-logo { width: 60px; height: 60px; margin: 0 auto 18px; border-radius: 18px; display: grid; place-items: center; background: #0d1014; border: 1px solid var(--nb-line-2); box-shadow: 0 10px 30px rgba(0,0,0,.4), 0 0 0 6px rgba(56,189,248,.06); }
.nb-auth-logo img { width: 34px; height: 34px; object-fit: contain; }
.nb-auth-eyebrow { display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--nb-accent); margin-bottom: 8px; }
.nb-auth h2 { margin: 0 0 10px !important; font-size: 26px !important; font-weight: 800 !important; letter-spacing: -0.02em; color: #fff !important; }
.nb-auth-sub { margin: 0 auto 24px !important; max-width: 340px; font-size: 14px; line-height: 1.6; color: var(--nb-muted) !important; }
.nb-auth-btn { position: relative; display: flex !important; align-items: center; gap: 12px; width: 100%; box-sizing: border-box; min-height: 56px; padding: 8px 18px 8px 8px; border-radius: 16px; border: 1px solid rgba(244,5,82,.35); background: linear-gradient(180deg, rgba(244,5,82,.16), rgba(244,5,82,.06)); color: #fff !important; font: 800 16px var(--nb-font); text-decoration: none !important; cursor: pointer; transition: border-color .15s, background .15s, box-shadow .15s; }
.nb-auth-btn:hover { border-color: rgba(244,5,82,.65); background: linear-gradient(180deg, rgba(244,5,82,.24), rgba(244,5,82,.09)); box-shadow: 0 12px 32px rgba(244,5,82,.18); }
.nb-auth-btn-ico { width: 40px; height: 40px; flex: none; border-radius: 12px; display: grid; place-items: center; background: #F40552; box-shadow: 0 6px 18px rgba(244,5,82,.35); }
.nb-auth-btn-ico svg { width: 20px; height: 20px; fill: #fff; }
.nb-auth-btn-text { flex: 1; text-align: left; }
.nb-auth-arrow { width: 20px; height: 20px; fill: rgba(255,255,255,.7); transition: transform .15s; }
.nb-auth-btn:hover .nb-auth-arrow { transform: translateX(3px); fill: #fff; }
.nb-auth-btn.is-loading { pointer-events: none; }
.nb-auth-btn.is-loading .nb-auth-arrow { visibility: hidden; }
.nb-auth-btn.is-loading::after { content: ""; position: absolute; right: 18px; top: 50%; width: 18px; height: 18px; margin-top: -11px; border-radius: 50%; border: 2.5px solid rgba(255,255,255,.25); border-top-color: #fff; animation: nb-spin .7s linear infinite; }
.nb-auth-form { display: grid; gap: 10px; }
.nb-auth-form input { height: 50px; padding: 0 16px !important; font-size: 15px; }
.nb-auth-form .nb-auth-btn { justify-content: center; border-color: transparent; background: var(--nb-accent); color: #04121b !important; padding: 8px 18px; }
.nb-auth-form .nb-auth-btn-text { flex: none; }
.nb-auth-perks { list-style: none; margin: 24px 0 0 !important; padding: 18px 0 0 !important; border-top: 1px solid var(--nb-line); display: grid; gap: 10px; text-align: left; }
.nb-auth-perks li { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #c9d1dc; margin: 0 !important; padding: 0 !important; }
.nb-auth-perks li::before { display: none !important; }
.nb-auth-perks svg { width: 18px; height: 18px; flex: none; padding: 3px; border-radius: 50%; background: rgba(95,207,116,.14); fill: #7fd992; box-sizing: border-box; }
.nb-auth-foot { margin: 18px 0 0 !important; font-size: 12px; color: var(--nb-muted) !important; }
.page-login .site-content { display: block !important; padding-top: 30px; }

/* login popup fix (Exo moves the content into .login-popup-content) */
.login-popup .login-popup-content { max-width: 440px !important; padding: 30px 28px 24px !important; text-align: center !important; background: radial-gradient(420px 180px at 50% 0%, rgba(56,189,248,.14), transparent 70%), var(--nb-card) !important; border: 1px solid var(--nb-line-2) !important; border-radius: 22px !important; }
.login-popup .login-popup-content > h2, .login-popup .login-popup-content > .nb-auth-eyebrow, .login-popup .login-popup-content > .nb-auth-sub, .login-popup .login-popup-content > .nb-auth-foot { text-align: center !important; }
.login-popup .login-popup-content > .nb-auth-eyebrow { display: block; }
.login-popup .login-popup-content > h2 { margin: 0 0 10px !important; font-size: 26px !important; font-weight: 800 !important; color: #fff !important; }
.login-popup .login-popup-content > p.nb-auth-sub { margin: 0 auto 24px !important; padding: 0 !important; max-width: 340px; }
.login-popup .login-popup-content > p.nb-auth-foot { margin: 18px 0 0 !important; padding: 0 !important; }
.login-popup .login-popup-content > ul.nb-auth-perks { margin: 24px 0 0 !important; padding: 18px 0 0 !important; }

/* ---------- overlay popups (all except basket drawer) ---------- */
.popup:not(.basket-popup) { background: rgba(6, 10, 15, .62) !important; backdrop-filter: blur(10px) saturate(120%); -webkit-backdrop-filter: blur(10px) saturate(120%); animation: nb-overlay-in .2s ease-out; }
.popup:not(.basket-popup) .popup-content { animation: nb-modal-in .26s cubic-bezier(.2,.9,.3,1.15); box-shadow: 0 40px 120px rgba(0,0,0,.6), 0 0 0 1px rgba(255,255,255,.04), 0 0 80px rgba(56,189,248,.08) !important; }
.popup:not(.basket-popup) .popup-close { top: 14px !important; right: 14px !important; width: 34px !important; height: 34px !important; border-radius: 50% !important; background: var(--nb-card-2) !important; border: 1px solid var(--nb-line-2) !important; --btn-color-text: #c9d1dc; --btn-color-text-hover: #fff; }
.popup:not(.basket-popup) .popup-close:hover { border-color: var(--nb-accent-ring) !important; }
@keyframes nb-overlay-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes nb-modal-in { from { opacity: 0; transform: translateY(14px) scale(.96); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .popup:not(.basket-popup), .popup:not(.basket-popup) .popup-content { animation: none; } }
@media (max-width: 520px) { .popup:not(.basket-popup) .popup-scroll-cont { padding: 16px !important; } }

/* basket button v3 (tinted glass, matches hero CTA) */
.nb-basket { position: relative; gap: 9px !important; padding: 0 16px 0 13px !important; background: linear-gradient(180deg, rgba(56,189,248,.18), rgba(56,189,248,.07)) !important; color: #fff !important; border: 1px solid rgba(56,189,248,.38) !important; box-shadow: none !important; font-weight: 700 !important; }
.nb-basket:hover { background: linear-gradient(180deg, rgba(56,189,248,.26), rgba(56,189,248,.10)) !important; border-color: rgba(56,189,248,.6) !important; box-shadow: 0 8px 24px rgba(56,189,248,.15) !important; }
.nb-basket svg { width: 19px !important; height: 19px !important; fill: var(--nb-accent) !important; }
.nb-basket-count { min-width: 20px; height: 20px; padding: 0 6px; box-sizing: border-box; border-radius: 999px; display: inline-grid; place-items: center; background: var(--nb-accent); color: #04121b; font-size: 11px; font-weight: 800; line-height: 1; margin-left: 2px; }
.nb-basket-count[hidden] { display: none !important; }
.nb-basket-count.bump { animation: nb-bump .35s ease; }
@keyframes nb-bump { 40% { transform: scale(1.3); } }
@media (max-width: 960px) { .nb-basket-count { position: absolute; top: -5px; right: -5px; margin: 0; } }

.nb-basket-label { font-variant-numeric: tabular-nums; white-space: nowrap; }
@media (max-width: 960px) { .nb-basket .nb-basket-label { display: none; } }

/* =========================================================
   package page v2
   ========================================================= */
.nb-pkg { max-width: 1240px; width: 100%; margin: 0 auto; padding: 26px 20px 0; box-sizing: border-box; }
.nb-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 13px; color: var(--nb-muted); margin-bottom: 14px; }
.nb-crumbs a { color: var(--nb-muted) !important; text-decoration: none; }
.nb-crumbs a:hover { color: #fff !important; }
.nb-crumbs i { font-style: normal; opacity: .4; }
.nb-crumbs span { color: #c9d1dc; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 60ch; }
.nb-pkg-head { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-bottom: 22px; }
.nb-pkg-head h1 { margin: 0; font-size: clamp(26px, 3.2vw, 38px); font-weight: 800; letter-spacing: -0.02em; line-height: 1.15; color: #fff; }
.nb-pkg-head .nb-badges { display: flex; gap: 6px; flex-wrap: wrap; }
.nb-pkg-head .nb-badge { font-size: 12px; padding: 5px 10px; }

.nb-pkg .nb-pkg-grid { max-width: none !important; padding: 0 !important; margin: 0 0 60px !important; display: grid !important; grid-template-columns: minmax(0, 1fr) 360px !important; gap: 28px !important; align-items: start; }
.nb-pkg .store-product-full { background: transparent !important; border: 0 !important; padding: 0 !important; }
.nb-pkg .store-product-full > .product-title { display: none; }

/* gallery */
.nb-gallery { border-radius: 18px; overflow: hidden; background: #0b0e12; border: 1px solid var(--nb-line-2); box-shadow: 0 30px 80px rgba(0,0,0,.45); }
.nb-gallery .media-slider { position: relative; background: transparent !important; padding: 0 !important; border: 0 !important; }
.nb-gallery swiper-container { display: block; background: #0b0e12 !important; border: 0 !important; border-radius: 0 !important; }
.nb-gallery .slide-image, .nb-gallery > .image { display: block; width: 100% !important; height: auto !important; max-height: none !important; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0 !important; }
.nb-gallery .thumbs { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; margin: 0 !important; padding: 10px !important; list-style: none; background: #0f1419; border-top: 1px solid var(--nb-line); }
.nb-gallery .thumb { margin: 0 !important; padding: 0 !important; border-radius: 10px; overflow: hidden; border: 2px solid transparent; opacity: .55; cursor: pointer; transition: opacity .15s, border-color .15s; aspect-ratio: 16 / 9; }
.nb-gallery .thumb:hover { opacity: .9; }
.nb-gallery .thumb.active { opacity: 1; border-color: var(--nb-accent); }
.nb-gallery .thumb-image { width: 100% !important; height: 100% !important; object-fit: cover; display: block; border-radius: 0 !important; }
.nb-gallery .open-lightbox { position: absolute !important; top: 14px !important; right: 14px !important; left: auto !important; bottom: auto !important; z-index: 5; width: 40px !important; height: 40px !important; border-radius: 12px !important; background: rgba(13,16,20,.72) !important; border: 1px solid var(--nb-line-2) !important; backdrop-filter: blur(6px); --btn-color-text: #fff; }
.nb-gallery .open-lightbox:hover { border-color: var(--nb-accent-ring) !important; }
.nb-gallery swiper-container::part(button-prev), .nb-gallery swiper-container::part(button-next) { width: 40px; height: 40px; padding: 10px; box-sizing: border-box; border-radius: 50%; background: rgba(13,16,20,.72); border: 1px solid rgba(255,255,255,.12); color: #fff; }
.nb-gallery .slide-image { cursor: zoom-in; }

/* description */
.nb-descr { margin-top: 24px !important; padding: 32px 34px !important; background: var(--nb-card); border: 1px solid var(--nb-line); border-radius: 18px; font-size: 15px; line-height: 1.75; color: #c3ccd7; }
.nb-descr h1, .nb-descr h2 { font-size: 24px; margin: 30px 0 12px; color: #fff; letter-spacing: -0.01em; }
.nb-descr h3 { font-size: 18px; margin: 24px 0 10px; color: #fff; }
.nb-descr > :first-child { margin-top: 0 !important; }
.nb-descr ul { padding-left: 0; list-style: none; }
.nb-descr ul li { position: relative; padding-left: 22px; margin: 6px 0; }
.nb-descr ul li::before { content: ""; position: absolute; left: 4px; top: .7em; width: 6px; height: 6px; border-radius: 50%; background: var(--nb-accent); }
.nb-descr img { display: block; width: 100%; height: auto; border-radius: 14px; border: 1px solid var(--nb-line); margin: 18px 0; }
.nb-descr a { color: var(--nb-accent-2); }
.nb-descr hr { border: 0; border-top: 1px solid var(--nb-line); margin: 26px 0; }
.nb-descr strong { color: #fff; }

/* buy box */
.nb-pkg .store-sidebar { position: sticky; top: 126px; display: grid; gap: 14px; }
.nb-buybox { position: static !important; padding: 22px !important; border-radius: 18px !important; background: radial-gradient(360px 160px at 100% 0%, rgba(56,189,248,.12), transparent 70%), var(--nb-card) !important; }
.nb-buybox-label { display: block; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--nb-muted); margin-bottom: 8px; }
.nb-buybox .product-actions { flex-direction: column; align-items: stretch !important; gap: 14px; padding: 0 !important; }
.nb-buybox .price { display: flex !important; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; margin: 0 !important; font-size: 34px !important; }
.nb-buybox .price strong { font-size: 34px; font-weight: 800; color: #fff; letter-spacing: -0.02em; }
.nb-buybox .price del { order: 2; font-size: 16px; color: var(--nb-muted); }
.nb-off { order: 3; align-self: center; font-size: 12px; font-weight: 800; padding: 4px 8px; border-radius: 8px; background: rgba(95,207,116,.14); color: #7fd992; border: 1px solid rgba(95,207,116,.3); }
.nb-buybox .btn-primary, .nb-buybox a.add { min-height: 52px !important; font-size: 16px !important; font-weight: 800 !important; border-radius: 14px !important; }
.nb-help { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 16px; background: var(--nb-card); border: 1px solid var(--nb-line); text-decoration: none !important; color: #fff !important; transition: border-color .15s; }
.nb-help:hover { border-color: rgba(88,101,242,.5); }
.nb-help-ico { width: 38px; height: 38px; flex: none; border-radius: 11px; display: grid; place-items: center; background: rgba(88,101,242,.14); }
.nb-help-ico svg { width: 20px; height: 20px; fill: #5865F2; }
.nb-help b { display: block; font-size: 14px; }
.nb-help small { display: block; font-size: 12px; color: var(--nb-muted); }
.nb-help-arrow { margin-left: auto; width: 18px; height: 18px; fill: var(--nb-muted); }

@media (max-width: 960px) {
  .nb-pkg { padding: 16px 14px 0; }
  .nb-pkg .nb-pkg-grid { grid-template-columns: 1fr !important; gap: 18px !important; }
  .nb-pkg .store-sidebar { position: static; order: -1; }
  .nb-descr { padding: 22px 18px !important; }
  .nb-gallery .thumbs { grid-template-columns: repeat(4, 1fr); }
}

/* show help card on package page */
body.page-package .store-sidebar > .nb-help { display: flex !important; }

/* thumbs row + hide duplicate title in description */
.nb-gallery .thumbs { display: flex !important; gap: 8px; overflow-x: auto; scrollbar-width: thin; }
.nb-gallery .thumb { flex: 0 0 116px; width: 116px !important; height: auto !important; aspect-ratio: 16 / 9; }
.nb-gallery .thumb-image { aspect-ratio: 16 / 9; }
.nb-descr > h1:first-child, .nb-descr > h2:first-child { display: none; }
@media (max-width: 960px) { .nb-gallery .thumb { flex-basis: 88px; width: 88px !important; } }

/* thumbs nowrap */
.nb-gallery ul.thumbs { flex-wrap: nowrap !important; grid-template-columns: none !important; }

/* thumbs scrollbar */
.nb-gallery ul.thumbs { scrollbar-width: thin; scrollbar-color: #2a333e transparent; padding-bottom: 8px !important; }
.nb-gallery ul.thumbs::-webkit-scrollbar { height: 6px; }
.nb-gallery ul.thumbs::-webkit-scrollbar-track { background: transparent; }
.nb-gallery ul.thumbs::-webkit-scrollbar-thumb { background: #2a333e; border: 0; border-radius: 6px; }
.nb-gallery ul.thumbs::-webkit-scrollbar-thumb:hover { background: var(--nb-accent-ring); }

/* wide description: gallery | buybox on top, description full width below */
.nb-pkg .nb-pkg-grid { grid-template-areas: "gallery side" "descr descr"; }
.nb-pkg .store-product-full { display: contents !important; }
.nb-pkg .nb-gallery { grid-area: gallery; }
.nb-pkg .store-sidebar { grid-area: side; }
.nb-pkg .nb-descr { grid-area: descr; margin-top: 4px !important; padding: 40px 48px !important; }
.nb-pkg .nb-descr > * { max-width: 860px; margin-left: auto !important; margin-right: auto !important; }
.nb-pkg .nb-descr > p:has(> img), .nb-pkg .nb-descr > img, .nb-pkg .nb-descr > figure { max-width: none; }
.nb-descr img { cursor: zoom-in; transition: transform .2s ease, box-shadow .2s ease; box-shadow: 0 20px 50px rgba(0,0,0,.35); }
.nb-descr img:hover { transform: translateY(-2px); box-shadow: 0 26px 60px rgba(0,0,0,.45), 0 0 0 1px var(--nb-accent-ring); }
@media (max-width: 960px) {
  .nb-pkg .nb-pkg-grid { grid-template-areas: "side" "gallery" "descr"; }
  .nb-pkg .nb-descr { padding: 22px 16px !important; }
}

/* description image zoom */
.nb-zoom { position: fixed; inset: 0; z-index: 10001; display: grid; place-items: center; padding: 40px 80px; background: rgba(6,10,15,.88); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); animation: nb-overlay-in .18s ease-out; }
.nb-zoom[hidden] { display: none; }
.nb-zoom img { max-width: 100%; max-height: calc(100vh - 80px); border-radius: 14px; box-shadow: 0 40px 120px rgba(0,0,0,.6); animation: nb-modal-in .22s ease-out; }
.nb-zoom-close, .nb-zoom-nav { position: absolute; display: grid; place-items: center; border: 1px solid var(--nb-line-2); background: rgba(20,26,33,.85); color: #fff; cursor: pointer; font: 400 28px/1 var(--nb-font); transition: border-color .15s, background .15s; }
.nb-zoom-close { top: 18px; right: 18px; width: 44px; height: 44px; border-radius: 50%; }
.nb-zoom-nav { top: 50%; width: 52px; height: 52px; margin-top: -26px; border-radius: 50%; font-size: 34px; padding-bottom: 4px; }
.nb-zoom-nav.prev { left: 18px; } .nb-zoom-nav.next { right: 18px; }
.nb-zoom-close:hover, .nb-zoom-nav:hover { border-color: var(--nb-accent-ring); background: rgba(56,189,248,.12); }
.nb-zoom.single .nb-zoom-nav, .nb-zoom.single .nb-zoom-count { display: none; }
.nb-zoom-count { position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%); padding: 6px 12px; border-radius: 999px; background: rgba(20,26,33,.85); border: 1px solid var(--nb-line-2); font-size: 13px; font-weight: 700; color: #c9d1dc; }
@media (max-width: 700px) { .nb-zoom { padding: 60px 10px; } .nb-zoom-nav { top: auto; bottom: 14px; margin: 0; width: 44px; height: 44px; } }

/* sidebar no overlap with full-width description */
.nb-pkg .store-sidebar { position: static !important; top: auto !important; }

/* basket thumbs (package image) */
.basket .basket-item { grid-template-columns: auto minmax(0, 1fr) auto !important; }
.nb-bk-thumb.has-img { width: 96px; height: 54px; padding: 0; overflow: hidden; background: #0b0e12; border-color: var(--nb-line-2); border-radius: 10px; }
.nb-bk-thumb.has-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.basket .basket-items { display: grid; gap: 10px; }
.basket .basket-item { margin: 0 !important; }
@media (max-width: 520px) { .nb-bk-thumb.has-img { width: 72px; height: 40px; } }

/* promo code in basket */
.nb-coupon { margin: 4px 24px 0; padding: 14px 0 6px; border-top: 1px solid var(--nb-line); }
.nb-coupon-row { display: flex; gap: 8px; }
.nb-coupon-input { flex: 1; min-width: 0; height: 42px; padding: 0 14px !important; font-size: 14px !important; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.nb-coupon-input::placeholder { text-transform: none; letter-spacing: 0; font-weight: 500; color: var(--nb-muted); }
.nb-coupon-apply { position: relative; height: 42px; padding: 0 16px; border-radius: 10px; border: 1px solid var(--nb-accent-ring); background: var(--nb-accent-soft); color: var(--nb-accent-2); font: 700 14px var(--nb-font); cursor: pointer; transition: background .15s, border-color .15s; }
.nb-coupon-apply:hover { background: rgba(56,189,248,.2); border-color: var(--nb-accent); }
.nb-coupon-apply.is-loading { color: transparent; }
.nb-coupon-apply.is-loading::after { content: ""; position: absolute; inset: 0; margin: auto; width: 16px; height: 16px; border-radius: 50%; border: 2px solid var(--nb-accent-ring); border-top-color: var(--nb-accent); animation: nb-spin .7s linear infinite; }
.nb-coupon-msg { margin: 8px 2px 0 !important; font-size: 13px; font-weight: 600; color: #f2627a; }
.nb-coupon-msg.ok { color: #7fd992; }
.nb-coupon-applied { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; padding: 8px 10px 8px 12px; border-radius: 10px; background: rgba(95,207,116,.1); border: 1px solid rgba(95,207,116,.3); }
.nb-coupon-applied span { display: inline-flex; align-items: center; gap: 8px; font-weight: 800; font-size: 14px; letter-spacing: .05em; text-transform: uppercase; color: #7fd992; }
.nb-coupon-applied svg { width: 15px; height: 15px; fill: #7fd992; }
.nb-coupon-remove { background: none; border: 0; color: var(--nb-muted); font: 600 13px var(--nb-font); cursor: pointer; padding: 4px 6px; border-radius: 6px; }
.nb-coupon-remove:hover { color: #f2627a; background: rgba(226,92,92,.08); }
.basket:has(.nb-bk-empty) .nb-coupon { display: none; }
@media (max-width: 520px) { .nb-coupon { margin: 4px 16px 0; } }

/* coupon no shadow */
.basket .basket-checkout { box-shadow: none !important; }
.nb-coupon { padding-bottom: 14px; margin-bottom: 0; }

/* basket: locked quantity -> hide "+", keep "-" as remove */
.basket .basket-item .quantity-field .increase:disabled { display: none !important; }
.basket .basket-item .quantity-field .quantity:disabled { opacity: 1; color: #fff !important; -webkit-text-fill-color: #fff; }
.basket .basket-item .decrease[data-nb-remove]:hover { background: rgba(226,92,92,.12) !important; --btn-color-text-hover: #f2627a; }

/* ===================== buttons v3: add to basket + checkout ===================== */
a.add.btn-primary,
.basket-checkout .btn-primary.checkout{
  position:relative;
  display:flex !important;
  align-items:center;justify-content:center;gap:9px;
  min-height:48px;
  border-radius:12px !important;
  border:1px solid rgba(186,230,253,.35) !important;
  background:linear-gradient(180deg,#67d1fb 0%,#38bdf8 48%,#1aa3e3 100%) !important;
  background-size:100% 160% !important;
  background-position:0 0 !important;
  color:#03131f !important;
  font-weight:800 !important;
  letter-spacing:.015em;
  text-shadow:0 1px 0 rgba(255,255,255,.25);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.5),
    inset 0 -2px 0 rgba(2,48,77,.22),
    0 10px 24px -10px rgba(56,189,248,.75),
    0 0 0 0 rgba(56,189,248,0) !important;
  transition:transform .16s ease,box-shadow .22s ease,background-position .3s ease,filter .2s ease !important;
}
a.add.btn-primary:hover,
.basket-checkout .btn-primary.checkout:hover{
  transform:translateY(-1px);
  background-position:0 60% !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    inset 0 -2px 0 rgba(2,48,77,.22),
    0 14px 30px -10px rgba(56,189,248,.9),
    0 0 0 4px rgba(56,189,248,.14) !important;
}
a.add.btn-primary:active,
.basket-checkout .btn-primary.checkout:active{
  transform:translateY(1px) scale(.99);
  box-shadow:inset 0 2px 6px rgba(2,48,77,.35),0 4px 12px -6px rgba(56,189,248,.6) !important;
}
a.add.btn-primary:focus-visible,
.basket-checkout .btn-primary.checkout:focus-visible{outline:2px solid #bae6fd;outline-offset:2px}

/* icons (mask = takes text colour, disappears with the loading state) */
a.add.btn-primary::before,
.basket-checkout .btn-primary.checkout::before,
.basket-checkout .btn-primary.checkout::after{
  content:"";flex:0 0 auto;width:18px;height:18px;
  background:currentColor;
  -webkit-mask:var(--nb-ico) center/contain no-repeat;
          mask:var(--nb-ico) center/contain no-repeat;
}
a.add.btn-primary::before{
  --nb-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.4 11.2a1.5 1.5 0 0 0 1.5 1.2h8.6a1.5 1.5 0 0 0 1.5-1.1L21 8H6.2'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17' cy='20' r='1.3'/%3E%3Cpath d='M13.5 9.5v4M11.5 11.5h4'/%3E%3C/svg%3E");
}
.basket-checkout .btn-primary.checkout::before{
  width:16px;height:16px;
  --nb-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.5' y='10.5' width='15' height='10' rx='2.5'/%3E%3Cpath d='M8 10.5V7.5a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
}
.basket-checkout .btn-primary.checkout::after{
  --nb-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  transition:transform .2s ease;
}
.basket-checkout .btn-primary.checkout:hover::after{transform:translateX(3px)}
.basket-checkout .btn-primary.checkout{width:100% !important;min-height:52px;font-size:16px !important;height:auto !important;line-height:1.2 !important}

/* loading state keeps the spinner, hides the icon */
.actions.updating > a.add:not([hidden])::before{opacity:0}
.actions.updating > a.add:not([hidden]){transform:none;filter:saturate(.85)}
.actions.updating > a.add:not([hidden])::after{border-color:#03131f rgba(3,19,31,.25) rgba(3,19,31,.25) !important}
.basket-checkout .btn-primary.checkout:disabled,
.basket.updating .basket-checkout .btn-primary.checkout{opacity:.7;transform:none;cursor:progress}

/* ===================== contact page ===================== */
.site-content.nb-contact{display:block !important;max-width:1080px;margin:0 auto;padding:40px 20px 72px}
.nb-contact main{display:flex;flex-direction:column;gap:22px}
.nb-ct-head{text-align:center;max-width:640px;margin:0 auto 6px}
.nb-ct-head .nb-kicker{margin-bottom:12px}
.nb-ct-head h1{font-size:clamp(32px,5vw,48px);line-height:1.05;margin:0 0 12px;letter-spacing:-.02em}
.nb-ct-head p{color:var(--nb-muted,#8b98a9);font-size:16px;line-height:1.6;margin:0}

.nb-ct-hero{display:flex;align-items:center;gap:18px;padding:22px 24px;border-radius:18px;text-decoration:none !important;color:inherit !important;
  background:radial-gradient(120% 160% at 0% 0%,rgba(88,101,242,.28),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
  border:1px solid rgba(88,101,242,.35);transition:transform .18s ease,border-color .2s ease,box-shadow .2s ease}
.nb-ct-hero:hover{transform:translateY(-2px);border-color:rgba(88,101,242,.65);box-shadow:0 18px 40px -18px rgba(88,101,242,.6)}
.nb-ct-hero-ico{flex:0 0 56px;height:56px;border-radius:16px;display:grid;place-items:center;background:#5865F2;box-shadow:0 10px 24px -10px rgba(88,101,242,.9)}
.nb-ct-hero-ico svg{width:30px;height:30px;fill:#fff}
.nb-ct-hero-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.nb-ct-hero-txt b{font-size:19px;color:#fff}
.nb-ct-hero-txt small{font-size:14px;color:var(--nb-muted,#8b98a9)}
.nb-ct-hero-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;font-weight:700;font-size:15px;color:#fff;background:#5865F2;white-space:nowrap;transition:background .2s ease}
.nb-ct-hero-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.nb-ct-hero:hover .nb-ct-hero-btn{background:#4752e0}
.nb-ct-hero:hover .nb-ct-hero-btn svg{transform:translateX(3px)}

.nb-ct-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.nb-ct-card{display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:16px;text-decoration:none !important;color:inherit !important;
  background:var(--nb-card,#141a22);border:1px solid var(--nb-line,rgba(255,255,255,.07));transition:transform .18s ease,border-color .2s ease,box-shadow .2s ease}
.nb-ct-card:hover{transform:translateY(-2px);border-color:rgba(56,189,248,.45);box-shadow:0 16px 34px -18px rgba(56,189,248,.45)}
.nb-ct-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:6px;background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.25)}
.nb-ct-ico svg{width:21px;height:21px;fill:none;stroke:#38bdf8;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nb-ct-card h3{margin:0;font-size:17px;color:#fff}
.nb-ct-card p{margin:0;color:var(--nb-muted,#8b98a9);font-size:14px;line-height:1.55;flex:1}
.nb-ct-link{margin-top:6px;font-size:14px;font-weight:700;color:#38bdf8}
.nb-ct-link::after{content:" →";transition:margin .2s ease}
.nb-ct-card:hover .nb-ct-link::after{margin-left:3px}

.nb-ct-check{display:grid;grid-template-columns:1fr 1.3fr;gap:24px;align-items:center;padding:24px 26px;border-radius:16px;
  background:linear-gradient(180deg,rgba(56,189,248,.07),rgba(56,189,248,.02));border:1px solid rgba(56,189,248,.2)}
.nb-ct-check h2{margin:0 0 6px;font-size:20px;color:#fff}
.nb-ct-check p{margin:0;color:var(--nb-muted,#8b98a9);font-size:14px}
.nb-ct-check ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.nb-ct-check li{position:relative;padding-left:26px;font-size:14px;color:#dbe4ee;line-height:1.45}
.nb-ct-check li::before{content:"";position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:6px;background:rgba(56,189,248,.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2338bdf8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat}

@media (max-width:860px){
  .nb-ct-grid{grid-template-columns:1fr}
  .nb-ct-check{grid-template-columns:1fr}
}
@media (max-width:560px){
  .site-content.nb-contact{padding:28px 16px 56px}
  .nb-ct-hero{flex-wrap:wrap;padding:18px}
  .nb-ct-hero-btn{width:100%;justify-content:center}
  .nb-ct-check ul{grid-template-columns:1fr}
}

/* ===================== free MLO / map badges ===================== */
.nb-badge.gift{background:rgba(244,203,78,.22) !important;color:#ffd76a !important;border-color:rgba(244,203,78,.55) !important;font-weight:800}
.nb-badge.map{background:rgba(140,207,63,.14) !important;color:#b5e27a !important;border-color:rgba(140,207,63,.35) !important}

/* ===================== "already included" notices (HQ MLO) ===================== */
.nb-incl-note{display:flex;gap:12px;align-items:flex-start;margin:0 0 14px;padding:12px 14px;border-radius:12px;text-decoration:none !important;
  background:rgba(244,203,78,.10);border:1px solid rgba(244,203,78,.45);color:#f4e3b0 !important;transition:background .15s,border-color .15s}
.nb-incl-note:hover{background:rgba(244,203,78,.16);border-color:rgba(244,203,78,.7)}
.nb-incl-note svg{flex:0 0 22px;width:22px;height:22px;fill:#f4cb4e;margin-top:1px}
.nb-incl-note strong{display:block;color:#ffd76a;font-size:14px;margin-bottom:3px}
.nb-incl-note small{display:block;color:#d9c48a;font-size:12.5px;line-height:1.45}
.nb-bk-dup{display:flex;gap:12px;align-items:flex-start;margin:0 0 12px;padding:12px 14px;border-radius:12px;background:rgba(244,203,78,.10);border:1px solid rgba(244,203,78,.45);color:#f4e3b0}
.nb-bk-dup svg{flex:0 0 20px;width:20px;height:20px;fill:#f4cb4e;margin-top:1px}
.nb-bk-dup strong{display:block;color:#ffd76a;font-size:14px;margin-bottom:3px}
.nb-bk-dup span{display:block;font-size:12.5px;line-height:1.45;color:#d9c48a}
.nb-bk-dup-remove{display:inline-block;margin-top:8px;padding:6px 12px;border-radius:8px;font-size:12.5px;font-weight:700;color:#1f1503 !important;background:#f4cb4e;text-decoration:none !important}
.nb-bk-dup-remove:hover{background:#ffd76a}
