/* ===================================================================
   Spletninakupi.si — Modern UI & Mobile-First Design Stylesheet
   Preserving brand colors:
   - Primary Green: #7c3aed
   - Accent Green: #a78bfa
   - Dark Slate: #1e293b
   - Light Gray / Soft Background: #f8fafc / #ffffff
   =================================================================== */

:root, [data-bs-theme=light] {
  --sn-primary: #7c3aed;
  --sn-primary-dark: #5b21b6;
  --sn-primary-light: #009e6a;
  --sn-accent: #a78bfa;
  --sn-accent-hover: #71a601;
  --sn-dark: #1e293b;
  --sn-text-main: #334155;
  --sn-text-muted: #64748b;
  --sn-border: #e2e8f0;
  --sn-border-light: #f1f5f9;
  --sn-bg-soft: #f8fafc;
  --sn-radius-sm: 6px;
  --sn-radius-md: 10px;
  --sn-radius-lg: 16px;
  --sn-radius-pill: 9999px;
  --sn-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05);
  --sn-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.07);
  --sn-shadow-lg: 0 10px 30px rgba(0, 0, 0, 0.12);
  --sn-transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);

  /* Bootstrap primary variables overridden with brand green */
  --bs-primary: #7c3aed;
  --bs-primary-rgb: 0, 132, 89;
  --bs-primary-text-emphasis: #4c1d95;
  --bs-primary-bg-subtle: #e6f5ef;
  --bs-primary-border-subtle: #a6dec8;
  --bs-link-color: #7c3aed;
  --bs-link-color-rgb: 0, 132, 89;
  --bs-link-hover-color: #5b21b6;
  --bs-link-hover-color-rgb: 0, 104, 70;
  --bs-focus-ring-color: rgba(124, 58, 237, 0.25);

  /* Bootstrap 4 variables */
  --primary: #7c3aed;
  --primary-rgb: 0, 132, 89;
}

/* Base Body Spacing */
body {
  color: var(--sn-text-main);
  background-color: #fbfcfd;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 991px) {
  body {
    padding-top: 114px !important;
    padding-bottom: 74px !important;
  }
}

@media (min-width: 992px) {
  body {
    padding-top: 195px !important;
    padding-bottom: 0 !important;
  }
}

.shop-page-container {
  padding-top: 20px !important;
}

/* Prevent horizontal overflow */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}

/* Container constraints */
.container {
  max-width: 1240px;
}
@media (min-width: 1400px) {
  .container {
    max-width: 1560px;
  }
}

/* ===================================================================
   1. DESKTOP HEADER (>= 992px)
   =================================================================== */
@media (min-width: 992px) {
  /* Header wrapper */
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background: #ffffff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  }

  /* Top Bar */
  .header-top {
    background: #f8fafc;
    border-bottom: 1px solid var(--sn-border);
    padding: 7px 0;
    font-size: 13px;
    height: 36px;
    display: flex;
    align-items: center;
  }
  .header-top-badge {
    background: rgba(124, 58, 237, 0.08);
    color: var(--sn-primary) !important;
    font-weight: 600;
    padding: 3px 12px;
    border-radius: var(--sn-radius-pill);
    display: inline-flex;
    align-items: center;
    gap: 6px;
  }
  .header-top-menu ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .header-top-menu ul li a {
    color: var(--sn-text-muted);
    font-weight: 500;
    transition: var(--sn-transition);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none !important;
  }
  .header-top-menu ul li a:hover {
    color: var(--sn-primary);
  }

  /* Main Header */
  .header-bottom {
    background: #ffffff;
    padding: 12px 0;
    height: 76px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  }
  .header-bottom .logo {
    position: relative !important;
    top: auto !important;
    transform: none !important;
    margin: 0 !important;
    text-align: left;
  }
  .header-bottom .logo img {
    max-height: 44px;
    width: auto;
  }

  /* Search Bar */
  .header-search-form {
    width: 100%;
  }
  .header-search-form .search-input-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
  }
  .header-search-form input[type="text"] {
    width: 100%;
    height: 46px;
    padding: 0 52px 0 22px;
    border: 1.5px solid var(--sn-border);
    border-radius: var(--sn-radius-pill);
    font-size: 14px;
    color: var(--sn-dark);
    background: #f8fafc;
    transition: var(--sn-transition);
    outline: none;
  }
  .header-search-form input[type="text"]:focus {
    background: #ffffff;
    border-color: var(--sn-primary);
    box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.12);
  }
  .header-search-form button[type="submit"] {
    position: absolute;
    right: 5px;
    top: 5px;
    width: 36px;
    height: 36px;
    border-radius: var(--sn-radius-pill);
    background: var(--sn-primary);
    color: #ffffff;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: var(--sn-transition);
    font-size: 15px;
  }
  .header-search-form button[type="submit"]:hover {
    background: var(--sn-accent);
    transform: scale(1.05);
  }

  /* Header Actions Group */
  .header-actions-group {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
  }

  /* User Account Button */
  .header-user-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 6px 14px;
    border: 1.5px solid var(--sn-border);
    border-radius: var(--sn-radius-pill);
    color: var(--sn-dark) !important;
    background: #ffffff;
    transition: var(--sn-transition);
    text-decoration: none !important;
    font-size: 13px;
    height: 44px;
  }
  .header-user-btn:hover {
    border-color: var(--sn-primary);
    color: var(--sn-primary) !important;
    background: rgba(124, 58, 237, 0.04);
  }
  .header-user-btn i {
    font-size: 22px;
    color: var(--sn-primary);
  }
  .header-user-btn .user-meta {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
    text-align: left;
  }
  .header-user-btn .user-meta small {
    color: var(--sn-text-muted);
    font-size: 10px;
    text-transform: uppercase;
    font-weight: 500;
  }
  .header-user-btn .user-meta b {
    font-weight: 600;
    color: var(--sn-dark);
    max-width: 90px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
  }

  /* Shopping Cart Button */
  .shopping-cart > a {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    padding: 6px 16px;
    background: rgba(124, 58, 237, 0.06);
    border: 1.5px solid rgba(124, 58, 237, 0.25);
    border-radius: var(--sn-radius-pill);
    color: var(--sn-dark) !important;
    transition: var(--sn-transition);
    text-decoration: none !important;
    height: 44px;
  }
  .shopping-cart > a:hover {
    background: rgba(124, 58, 237, 0.12);
    border-color: var(--sn-primary);
  }
  .shopping-cart .cart-icon {
    position: relative;
    margin-right: 0 !important;
  }
  .shopping-cart .cart-icon span {
    font-size: 20px !important;
    color: var(--sn-primary);
  }
  .shopping-cart .cart-info p {
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--sn-dark) !important;
    line-height: 1.2 !important;
    text-align: left;
  }
  .shopping-cart .cart-info p span {
    font-size: 11px;
    font-weight: 500;
    color: var(--sn-text-muted);
    display: block;
  }
  .shopping-cart .cart-info p span b {
    color: var(--sn-primary);
    font-weight: 700;
  }

  /* Floating Cart Box */
  .cart-floating-box {
    border-radius: var(--sn-radius-md) !important;
    border: 1px solid var(--sn-border) !important;
    box-shadow: var(--sn-shadow-lg) !important;
    top: 55px !important;
    right: 0 !important;
    width: 360px !important;
  }
  .shopping-cart:hover .cart-floating-box {
    display: block !important;
  }

  /* ===================================================================
     2. DESKTOP NAVIGATION BAR (SINGLE LINE, ZERO WRAPPING)
     =================================================================== */
  .home-other-navigation-menu {
    background: var(--sn-primary) !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
    padding: 0;
    height: 50px;
  }

  .desktop-nav-bar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 50px;
    flex-wrap: nowrap;
    position: relative;
  }

  /* 2.1 "VSE KATEGORIJE" Button */
  .nav-all-categories {
    position: static;
    height: 50px;
    flex-shrink: 0;
  }
  .nav-all-categories-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: var(--sn-primary-dark);
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    height: 50px;
    padding: 0 20px;
    cursor: pointer;
    transition: var(--sn-transition);
    text-decoration: none !important;
  }
  .nav-all-categories-btn:hover {
    background: #005639;
    color: #ffffff !important;
  }
  .nav-all-categories-btn i.fa-bars {
    font-size: 15px;
  }
  .nav-all-categories-btn i.fa-angle-down {
    transition: transform 0.2s ease;
  }
  .nav-all-categories:hover .nav-all-categories-btn i.fa-angle-down {
    transform: rotate(180deg);
  }

  /* Mega-Menu Dropdown Panel */
  .nav-all-categories-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: auto;
    max-width: none;
    background: #ffffff;
    border: 1px solid var(--sn-border);
    border-radius: 0 0 var(--sn-radius-md) var(--sn-radius-md);
    box-shadow: var(--sn-shadow-lg);
    padding: 24px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px 28px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    max-height: 75vh;
    overflow-y: auto;
  }
  .nav-all-categories:hover .nav-all-categories-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .mega-cat-col {
    display: flex;
    flex-direction: column;
  }
  .mega-cat-title {
    font-size: 13px;
    font-weight: 700;
    color: var(--sn-dark);
    text-transform: uppercase;
    margin-bottom: 6px;
    padding-bottom: 4px;
    border-bottom: 1.5px solid rgba(124, 58, 237, 0.15);
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none !important;
    transition: var(--sn-transition);
  }
  .mega-cat-title:hover {
    color: var(--sn-primary);
  }
  .mega-cat-sublist {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
  }
  .mega-cat-sublist li a {
    font-size: 12.5px;
    color: var(--sn-text-muted);
    transition: var(--sn-transition);
    display: block;
    padding: 2px 0;
    text-decoration: none !important;
  }
  .mega-cat-sublist li a:hover {
    color: var(--sn-primary);
    padding-left: 4px;
  }

  /* 2.2 Primary Category Bar Items */
  .desktop-nav-bar ul.nav-primary-items {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    height: 50px;
    flex-wrap: nowrap;
    flex: 1;
  }
  .desktop-nav-bar ul.nav-primary-items > li {
    position: relative;
    height: 50px;
    flex-shrink: 0;
  }
  .desktop-nav-bar ul.nav-primary-items > li > a {
    display: flex;
    align-items: center;
    gap: 4px;
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.2px;
    padding: 0 11px;
    height: 50px;
    white-space: nowrap;
    transition: var(--sn-transition);
    text-decoration: none !important;
  }
  .desktop-nav-bar ul.nav-primary-items > li:hover > a,
  .desktop-nav-bar ul.nav-primary-items > li.active > a {
    background: rgba(255, 255, 255, 0.12);
    color: var(--sn-accent) !important;
  }

  /* Responsive category item paddings */
  @media (max-width: 1200px) {
    .desktop-nav-bar ul.nav-primary-items > li > a {
      padding: 0 8px;
      font-size: 12px;
    }
    .nav-all-categories-btn {
      padding: 0 14px;
      font-size: 12px;
    }
  }

  /* Dropdown Menu for Bar Items */
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 250px;
    background: #ffffff;
    border: 1px solid var(--sn-border);
    border-radius: 0 0 var(--sn-radius-md) var(--sn-radius-md);
    box-shadow: var(--sn-shadow-lg);
    padding: 8px 0;
    list-style: none;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 999;
  }
  .desktop-nav-bar ul.nav-primary-items > li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu li {
    position: relative;
  }
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 18px;
    color: var(--sn-dark) !important;
    font-size: 13px;
    font-weight: 500;
    text-transform: none;
    transition: var(--sn-transition);
    text-decoration: none !important;
    white-space: normal;
  }
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu li a:hover {
    background: rgba(124, 58, 237, 0.05);
    color: var(--sn-primary) !important;
    padding-left: 22px;
  }

  /* 2nd Level Flyout */
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu li:hover > .sub-menu {
    position: absolute;
    top: 0;
    left: 100%;
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    border-radius: var(--sn-radius-md);
  }

  /* 2.3 "Več" Dropdown */
  .desktop-nav-bar .nav-item-more > a::after {
    font-family: FontAwesome;
    content: "\f107";
    margin-left: 5px;
  }

  /* 2.4 Right Side Promotion Badge */
  .desktop-nav-bar .nav-promo-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--sn-accent);
    color: #ffffff !important;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 6px 14px;
    border-radius: var(--sn-radius-pill);
    transition: var(--sn-transition);
    text-decoration: none !important;
    box-shadow: 0 2px 6px rgba(167, 139, 250, 0.35);
    margin-left: auto;
    white-space: nowrap;
    flex-shrink: 0;
  }
  .desktop-nav-bar .nav-promo-badge:hover {
    background: var(--sn-accent-hover);
    transform: translateY(-1px);
    color: #ffffff !important;
  }
}

/* ===================================================================
   3. MOBILE FIRST LAYOUT (< 992px)
   =================================================================== */
@media (max-width: 991px) {
  /* Hide desktop header completely */
  .header-top,
  .header-bottom.header-sticky,
  .home-other-navigation-menu {
    display: none !important;
  }

  /* Mobile Top Header Bar */
  .mobile-top-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 56px;
    background: #ffffff;
    border-bottom: 1px solid var(--sn-border);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
    z-index: 1030;
  }

  .mobile-nav-toggle-btn {
    background: none;
    border: none;
    font-size: 22px;
    color: var(--sn-dark);
    cursor: pointer;
    padding: 8px;
    border-radius: var(--sn-radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
  }
  .mobile-nav-toggle-btn:hover {
    color: var(--sn-primary);
  }

  .mobile-logo a img {
    height: 34px;
    width: auto;
    object-fit: contain;
  }

  .mobile-header-actions {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .mobile-header-actions a {
    color: var(--sn-dark);
    font-size: 21px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    transition: var(--sn-transition);
    text-decoration: none !important;
  }
  .mobile-header-actions a:hover {
    background: #f1f5f9;
    color: var(--sn-primary);
  }
  .mobile-header-actions .cart-badge {
    position: absolute;
    top: 2px;
    right: 2px;
    background: var(--sn-accent);
    color: #ffffff;
    font-size: 10px;
    font-weight: 700;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1.5px solid #ffffff;
  }

  /* Mobile Search Bar Row (Sticky Below Mobile Top Header) */
  .mobile-search-bar {
    position: fixed;
    top: 56px;
    left: 0;
    right: 0;
    background: #ffffff;
    padding: 8px 14px;
    border-bottom: 1px solid var(--sn-border);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
    z-index: 1025;
    height: 54px;
    display: flex;
    align-items: center;
  }
  .mobile-search-bar form {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
  }
  .mobile-search-bar input[type="text"] {
    width: 100%;
    height: 38px;
    background: #f1f5f9;
    border: 1px solid var(--sn-border);
    border-radius: var(--sn-radius-pill);
    padding: 0 44px 0 16px;
    font-size: 14px;
    color: var(--sn-dark);
    outline: none;
    -webkit-appearance: none;
  }
  .mobile-search-bar input[type="text"]:focus {
    background: #ffffff;
    border-color: var(--sn-primary);
  }
  .mobile-search-bar button {
    position: absolute;
    right: 3px;
    top: 3px;
    width: 32px;
    height: 32px;
    background: var(--sn-primary);
    color: #ffffff;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    cursor: pointer;
  }
}

/* ===================================================================
   4. MOBILE OFFCANVAS DRAWER MENU
   =================================================================== */
.mobile-drawer-overlay {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.6);
  backdrop-filter: blur(4px);
  z-index: 1050;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.mobile-drawer-overlay.active {
  opacity: 1;
  visibility: visible;
}

.mobile-drawer {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  width: 310px;
  max-width: 85vw;
  background: #ffffff;
  z-index: 1060;
  box-shadow: var(--sn-shadow-lg);
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.mobile-drawer.active {
  transform: translateX(0);
}

/* Drawer Header */
.drawer-header {
  background: var(--sn-primary);
  color: #ffffff;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.drawer-user-info {
  display: flex;
  align-items: center;
  gap: 10px;
}
.drawer-user-info i {
  font-size: 32px;
  color: var(--sn-accent);
}
.drawer-user-meta {
  line-height: 1.2;
}
.drawer-user-meta span {
  font-size: 11px;
  opacity: 0.9;
}
.drawer-user-meta b {
  font-size: 14px;
  display: block;
}
.drawer-close-btn {
  background: rgba(255, 255, 255, 0.2);
  border: none;
  color: #ffffff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  cursor: pointer;
  line-height: 1;
}

/* Drawer User Actions */
.drawer-user-actions {
  background: #f8fafc;
  padding: 10px 14px;
  border-bottom: 1px solid var(--sn-border);
  display: flex;
  gap: 8px;
}
.drawer-user-actions .btn {
  flex: 1;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 600;
  border-radius: var(--sn-radius-pill);
}

/* Drawer Body & Category Accordion */
.drawer-body {
  flex: 1;
  overflow-y: auto;
  padding: 8px 0;
}
.drawer-category-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.drawer-category-item {
  border-bottom: 1px solid var(--sn-border-light);
}
.drawer-category-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 46px;
  padding: 0 16px;
}
.drawer-category-row a {
  color: var(--sn-dark);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  flex: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 0;
}
.drawer-category-row a:hover {
  color: var(--sn-primary);
}
.drawer-accordion-btn {
  background: none;
  border: none;
  color: var(--sn-text-muted);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.2s ease;
}
.drawer-accordion-btn.expanded i {
  transform: rotate(180deg);
}

/* Drawer Subcategories */
.drawer-subcategories {
  display: none;
  background: #f8fafc;
  padding: 6px 16px 8px 32px;
  list-style: none;
  margin: 0;
}
.drawer-subcategories.show {
  display: block;
}
.drawer-subcategories li a {
  display: block;
  padding: 7px 0;
  font-size: 13px;
  color: var(--sn-text-muted);
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(226, 232, 240, 0.7);
}
.drawer-subcategories li a:hover {
  color: var(--sn-primary);
  font-weight: 500;
}

/* Drawer Footer */
.drawer-footer {
  background: #f8fafc;
  border-top: 1px solid var(--sn-border);
  padding: 14px 16px;
  font-size: 12px;
}
.drawer-footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-bottom: 8px;
}
.drawer-footer-links a {
  color: var(--sn-text-muted);
  text-decoration: none !important;
}
.drawer-footer-links a:hover {
  color: var(--sn-primary);
}
.drawer-free-shipping {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--sn-primary);
  font-weight: 600;
  font-size: 12px;
}

/* ===================================================================
   5. MOBILE BOTTOM APP BAR (STICKY D-FLEX D-LG-NONE)
   =================================================================== */
.mobile-bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 58px;
  background: #ffffff;
  border-top: 1px solid var(--sn-border);
  box-shadow: 0 -3px 12px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: space-around;
  z-index: 1040;
  padding-bottom: env(safe-area-inset-bottom, 0px);
}
.bottom-nav-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  color: var(--sn-text-muted);
  text-decoration: none !important;
  font-size: 11px;
  font-weight: 500;
  background: none;
  border: none;
  padding: 6px 0;
  cursor: pointer;
  transition: var(--sn-transition);
}
.bottom-nav-item i {
  font-size: 18px;
  color: var(--sn-text-muted);
  transition: var(--sn-transition);
}
.bottom-nav-item.active,
.bottom-nav-item:hover {
  color: var(--sn-primary);
}
.bottom-nav-item.active i,
.bottom-nav-item:hover i {
  color: var(--sn-primary);
}
.bottom-nav-badge {
  position: absolute;
  top: -4px;
  right: -8px;
  background: var(--sn-accent);
  color: #ffffff;
  font-size: 10px;
  font-weight: 700;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid #ffffff;
}

/* ===================================================================
   6. MODERN CARD & COMPONENT STYLING
   =================================================================== */
.gf-product, .single-product {
  background: #ffffff;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-md);
  padding: 14px;
  transition: var(--sn-transition);
  position: relative;
  overflow: hidden;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}
.gf-product:hover, .single-product:hover {
  border-color: #cbd5e1;
  box-shadow: var(--sn-shadow-md);
  transform: translateY(-2px);
}
.gf-product .image {
  border-radius: var(--sn-radius-sm);
  overflow: hidden;
  background: #ffffff;
  width: 100% !important;
  margin-bottom: 10px;
  flex-shrink: 0;
  position: relative;
}
/* Explicit 1:1 Square Image Aspect Ratio Guarantee */
.gf-product .embed-responsive,
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.gf-product .embed-responsive-1by1::before,
.embed-responsive-1by1::before {
  display: block;
  content: "";
  padding-top: 100%;
}
.gf-product .embed-responsive .embed-responsive-item,
.embed-responsive .embed-responsive-item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.gf-product .onsale {
  background: var(--sn-accent) !important;
  color: #ffffff !important;
  border-radius: var(--sn-radius-pill) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  box-shadow: 0 2px 6px rgba(167, 139, 250, 0.4);
}
.gf-product .product-content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 0 !important;
  width: 100% !important;
}
.gf-product .product-title,
.shop-grid-view-product .product-content h3.product-title {
  margin-bottom: 6px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  line-height: 22px !important;
  overflow: hidden !important;
  text-align: center;
}
.gf-product .product-title a,
.shop-grid-view-product .product-content h3.product-title a {
  color: var(--sn-dark) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  transition: var(--sn-transition);
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 22px !important;
}
.gf-product .product-title a:hover,
.shop-grid-view-product .product-content h3.product-title a:hover {
  color: var(--sn-primary) !important;
}
.gf-product .price-box {
  margin-bottom: 8px;
  font-size: 13px;
}
.gf-product .discounted-price {
  color: var(--sn-primary) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
}
.gf-product .main-price {
  color: var(--sn-text-muted) !important;
  font-size: 13px !important;
  text-decoration: line-through !important;
  margin-right: 6px;
}
.gf-product .product-buy,
.gf-product .product-buy-container {
  margin-top: auto !important;
  width: 100% !important;
}
.gf-product-col {
  padding: 6px !important;
  display: flex;
}
.shop-grid-view-product {
  width: 100%;
}

/* ===================================================================
   Bootstrap Primary Color Overrides (Green #7c3aed instead of Blue)
   =================================================================== */
/* Text */
.text-primary {
  color: var(--sn-primary) !important;
}
a.text-primary:hover,
a.text-primary:focus {
  color: var(--sn-primary-dark) !important;
}

/* Backgrounds & Badges */
.bg-primary {
  background-color: var(--sn-primary) !important;
}
.bg-primary-subtle {
  background-color: #e6f5ef !important;
  color: var(--sn-primary-dark) !important;
}
.badge-primary,
.badge.bg-primary {
  background-color: var(--sn-primary) !important;
  color: #ffffff !important;
}

/* Borders */
.border-primary {
  border-color: var(--sn-primary) !important;
}
.border-primary-subtle {
  border-color: #a6dec8 !important;
}

/* Modernized Buttons */
.btn-primary {
  background-color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
  color: #ffffff !important;
  border-radius: var(--sn-radius-sm);
  font-weight: 600;
  transition: var(--sn-transition);
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: var(--sn-primary-dark) !important;
  border-color: var(--sn-primary-dark) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(124, 58, 237, 0.25) !important;
}
.btn-primary:disabled,
.btn-primary.disabled {
  background-color: var(--sn-primary-light) !important;
  border-color: var(--sn-primary-light) !important;
  opacity: 0.65;
}

/* Outline Buttons */
.btn-outline-primary {
  color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
  background-color: transparent !important;
  border-radius: var(--sn-radius-sm);
  font-weight: 600;
  transition: var(--sn-transition);
}
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #ffffff !important;
  background-color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
  box-shadow: 0 4px 12px rgba(124, 58, 237, 0.2) !important;
}

/* Form Controls & Focus Rings */
.form-control:focus,
.form-select:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
  border-color: var(--sn-primary) !important;
  box-shadow: 0 0 0 0.25rem rgba(124, 58, 237, 0.2) !important;
  outline: 0 !important;
}

/* Form Checkbox & Radio */
.form-check-input:checked,
.custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
}
.form-check-input:focus,
.custom-control-input:focus ~ .custom-control-label::before {
  border-color: var(--sn-primary) !important;
  box-shadow: 0 0 0 0.25rem rgba(124, 58, 237, 0.2) !important;
}

/* Pagination */
.page-item.active .page-link,
.pagination .active > .page-link,
.pagination .page-item.active .page-link {
  background-color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
  color: #ffffff !important;
}
.page-link {
  color: var(--sn-primary);
}
.page-link:hover,
.page-link:focus {
  color: var(--sn-primary-dark);
}

/* Nav Pills & Tabs */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: var(--sn-primary) !important;
  color: #ffffff !important;
}
.nav-tabs .nav-link.active {
  color: var(--sn-primary) !important;
  border-bottom-color: #ffffff !important;
}
.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  color: var(--sn-primary);
}

/* List Groups & Dropdowns */
.list-group-item.active {
  background-color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
  color: #ffffff !important;
}
.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--sn-primary) !important;
  color: #ffffff !important;
}

/* Links */
.link-primary {
  color: var(--sn-primary) !important;
}
.link-primary:hover,
.link-primary:focus {
  color: var(--sn-primary-dark) !important;
}

/* Progress bar */
.progress-bar {
  background-color: var(--sn-primary) !important;
}

/* Spinners */
.spinner-border.text-primary,
.spinner-grow.text-primary {
  color: var(--sn-primary) !important;
}

.btn-success {
  background-color: var(--sn-accent) !important;
  border-color: var(--sn-accent) !important;
  border-radius: var(--sn-radius-sm);
  font-weight: 600;
  transition: var(--sn-transition);
}
.btn-success:hover, .btn-success:focus {
  background-color: var(--sn-accent-hover) !important;
  border-color: var(--sn-accent-hover) !important;
}

/* Alert Boxes */
.alert {
  border-radius: var(--sn-radius-md);
  border-width: 1px;
}
.alert-primary {
  background-color: #e6f5ef !important;
  border-color: #a6dec8 !important;
  color: var(--sn-primary-dark) !important;
}
.alert-info {
  background-color: #f5f3ff;
  border-color: #bbf7d0;
  color: #166534;
}

/* Form inputs on mobile (avoid iOS auto-zoom) */
@media (max-width: 767px) {
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="phone"],
  input[type="number"],
  select {
    font-size: 16px !important;
  }
}

/* ===================================================================
   SEARCH AUTOCOMPLETE, TOP PADDING, LIST VIEW & HOMEPAGE ENHANCEMENTS
   =================================================================== */

/* Increased Page Content Top Padding from Navigation */
.home-page-container,
.shop-page-wrapper,
.page-section,
#main-content,
.product-details-page-wrapper {
  padding-top: 12px !important;
}
@media (min-width: 992px) {
  .home-page-container,
  .shop-page-wrapper,
  .page-section,
  #main-content,
  .product-details-page-wrapper {
    padding-top: 16px !important;
  }
}

/* Modern Header Shopping Cart Link */
.modern-header-cart-link {
  display: flex !important;
  align-items: center !important;
  text-decoration: none !important;
  padding: 8px 14px;
  background: #f8fafc;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-pill);
  transition: var(--sn-transition);
  white-space: nowrap !important;
}
.modern-header-cart-link:hover {
  background: #ffffff;
  border-color: var(--sn-primary);
  box-shadow: var(--sn-shadow-sm);
}
.cart-icon-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(124, 58, 237, 0.1);
  color: var(--sn-primary);
  font-size: 20px;
  margin-right: 10px;
  flex-shrink: 0;
}
.cart-badge-count {
  position: absolute;
  top: -4px;
  right: -6px;
  min-width: 18px;
  height: 18px;
  line-height: 18px;
  padding: 0 4px;
  border-radius: 9px;
  background: var(--sn-accent);
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  text-align: center;
}
.cart-details-wrapper {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
  white-space: nowrap !important;
}
.cart-label-title {
  font-size: 11px;
  color: var(--sn-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: nowrap !important;
}
.cart-label-amount {
  font-size: 15px;
  font-weight: 700;
  color: var(--sn-primary);
  white-space: nowrap !important;
}

/* Dropdowns: Category Thumbnails & Single Arrow */
.nav-primary-items > li > a {
  white-space: nowrap !important;
}
.sub-menu {
  min-width: 260px !important;
}
.sub-menu li a {
  display: flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  gap: 10px;
  padding: 9px 16px !important;
}
.dropdown-cat-thumb {
  width: 28px;
  height: 28px;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 4px;
  padding: 2px;
  flex-shrink: 0;
}
.mega-cat-thumb {
  width: 30px;
  height: 30px;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 4px;
  padding: 2px;
  margin-right: 8px;
  flex-shrink: 0;
}
.drawer-cat-thumb {
  width: 26px;
  height: 26px;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 4px;
  padding: 2px;
  flex-shrink: 0;
}

/* Eliminate double right arrow in sub-menus */
.sub-menu li.menu-item-has-children > a > i.fa-angle-right {
  display: none !important;
}
.sub-menu li.menu-item-has-children > a::after {
  display: inline-block;
  content: "\f105";
  font-family: FontAwesome;
  margin-left: auto;
  padding-left: 14px;
  color: #94a3b8;
  font-size: 13px;
}

/* Search Autocomplete Floating Box */
.search-input-wrapper {
  position: relative;
  width: 100%;
}
.search-autocomplete-dropdown {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  background: #ffffff;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-md);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.15);
  z-index: 1050;
  max-height: 480px;
  overflow-y: auto;
  display: none;
  text-align: left;
}
.autocomplete-loading,
.autocomplete-empty {
  padding: 16px 20px;
  color: var(--sn-text-muted);
  font-size: 14px;
  text-align: center;
}
.autocomplete-section {
  padding: 6px 0;
  border-bottom: 1px solid var(--sn-border-light);
}
.autocomplete-section-title {
  padding: 6px 16px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--sn-text-muted);
  letter-spacing: 0.5px;
  background: #f8fafc;
}
.autocomplete-section-title i {
  color: var(--sn-primary);
  margin-right: 5px;
}
.autocomplete-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.autocomplete-item {
  display: flex !important;
  align-items: center;
  padding: 8px 16px;
  color: var(--sn-text-main);
  text-decoration: none !important;
  transition: var(--sn-transition);
  border-bottom: 1px solid #f8fafc;
}
.autocomplete-item:hover {
  background-color: #f5f3ff;
  color: var(--sn-primary);
}
.autocomplete-thumb {
  width: 44px;
  height: 44px;
  object-fit: contain;
  border-radius: 4px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  padding: 2px;
  margin-right: 12px;
  flex-shrink: 0;
}
.autocomplete-name {
  font-size: 14px;
  font-weight: 500;
  flex-grow: 1;
}
.autocomplete-prod-info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  min-width: 0;
}
.autocomplete-prod-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--sn-text-main);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 2px;
}
.autocomplete-prod-pricing {
  display: flex;
  align-items: center;
  gap: 8px;
}
.autocomplete-price {
  font-size: 14px;
  font-weight: 700;
  color: var(--sn-primary);
}
.autocomplete-regular-price {
  font-size: 12px;
  color: var(--sn-text-muted);
  text-decoration: line-through;
}
.autocomplete-discount {
  font-size: 11px;
  font-weight: 700;
  color: #ef4444;
  background: #fee2e2;
  padding: 1px 6px;
  border-radius: 4px;
}
.autocomplete-view-all {
  display: block;
  padding: 12px 16px;
  text-align: center;
  background: #f8fafc;
  color: var(--sn-primary);
  font-weight: 600;
  font-size: 13px;
  text-decoration: none !important;
  border-top: 1px solid var(--sn-border);
  transition: var(--sn-transition);
}
.autocomplete-view-all:hover {
  background: var(--sn-primary);
  color: #ffffff;
}

/* Unified Sidebar Search Matching Header Search */
.header-advance-search {
  margin-bottom: 20px;
}
.header-advance-search .search-input-wrapper {
  display: flex;
  position: relative;
  width: 100%;
}
.header-advance-search input.search-autocomplete-input {
  width: 100% !important;
  height: 44px !important;
  border-radius: var(--sn-radius-pill) !important;
  border: 1.5px solid var(--sn-border) !important;
  padding: 0 46px 0 18px !important;
  font-size: 14px !important;
  background: #ffffff !important;
  transition: var(--sn-transition);
}
.header-advance-search input.search-autocomplete-input:focus {
  border-color: var(--sn-primary) !important;
  box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.15) !important;
  outline: none !important;
}
.header-advance-search button {
  position: absolute !important;
  right: 5px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  border: none !important;
  background: var(--sn-primary) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer;
  transition: var(--sn-transition);
}
.header-advance-search button:hover {
  background: var(--sn-primary-dark) !important;
}

/* Product Grid & List View */
.view-mode-icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: var(--sn-radius-sm);
  background: #f1f5f9;
  color: var(--sn-text-muted);
  margin-right: 6px;
  text-decoration: none !important;
  transition: var(--sn-transition);
}
.view-mode-icons a.active,
.view-mode-icons a:hover {
  background: var(--sn-primary);
  color: #ffffff;
}

/* Shop Product Wrap Grid vs List */
.shop-product-wrap.grid .shop-list-view-product {
  display: none !important;
}
.shop-product-wrap.list .shop-grid-view-product {
  display: none !important;
}
.shop-product-wrap.list .gf-product-col {
  width: 100% !important;
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* List View Product Card */
.shop-list-item-wrapper {
  background: #ffffff;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-md);
  margin-bottom: 16px;
  padding: 16px;
  transition: var(--sn-transition);
}
.shop-list-item-wrapper:hover {
  border-color: var(--sn-primary-light);
  box-shadow: var(--sn-shadow-md);
}
.list-item-image-col {
  width: 180px;
  height: 180px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8fafc;
  border-radius: var(--sn-radius-sm);
  overflow: hidden;
  padding: 10px;
}
.list-thumb {
  max-width: 100%;
  max-height: 160px;
  object-fit: contain;
}
.list-item-content-col {
  flex: 1;
}
.list-item-content-col h3.product-title a {
  color: var(--sn-text-main);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
}
.list-item-content-col h3.product-title a:hover {
  color: var(--sn-primary);
}
.product-description-snippet {
  font-size: 13px;
  color: var(--sn-text-muted);
  line-height: 1.5;
}
.badge-success-soft {
  background: #dcfce7;
  color: #15803d;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 4px;
}
.list-item-actions-col {
  min-width: 200px;
  flex-shrink: 0;
}

/* Action & Quantity input in cards */
.product-buy-container {
  width: 100% !important;
}
.product-qty-action-wrap {
  width: 100% !important;
  display: block !important;
}
.product-qty-row {
  width: 100% !important;
}
.product-qty-group {
  border-radius: var(--sn-radius-sm);
  overflow: hidden;
  border: 1px solid var(--sn-border);
  display: inline-flex !important;
  vertical-align: middle;
}
.product-qty-group .form-control {
  border: none !important;
  box-shadow: none !important;
  font-size: 13px !important;
}
.product-qty-group .input-group-text {
  border: none !important;
  border-left: 1px solid var(--sn-border) !important;
}
.product-qty-action-wrap .btn,
.product-cart-btn,
.gf-product .product-cart-btn,
.shop-grid-view-product .product-cart-btn {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  height: 36px !important;
  border-radius: var(--sn-radius-sm) !important;
  padding: 6px 12px !important;
  margin: 0 !important;
}

/* NLB Buy&Go Installment Pill in Product Cards */
.nlbBuyGoInstallments {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden;
}
.nlb-installment-pill {
  background-color: #2A0172 !important;
  color: #ffffff !important;
  border-radius: var(--sn-radius-pill) !important;
  font-family: inherit !important;
  box-shadow: 0 1px 4px rgba(42, 1, 114, 0.2);
}
.nlb-installment-pill select {
  background-color: #84BD00 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  border: none !important;
  outline: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background-image: none !important;
  padding: 0 10px !important;
  min-width: 3rem !important;
  text-align: center !important;
  text-align-last: center !important;
  line-height: 24px !important;
}

/* NLB pill: prevent logo overlapping installment text */
.nlb-installment-pill { gap: 6px; overflow: hidden; }
.nlb-installment-pill > div { flex: 0 1 auto; min-width: 0 !important; }
.nlb-installment-pill select { padding: 0 6px !important; min-width: 2.4rem !important; }
.nlb-installment-pill > img { flex: 0 1 auto !important; min-width: 0; height: auto !important; max-height: 14px; max-width: 48% !important; object-fit: contain; margin-left: auto !important; }

/* Sidebar Area Modern Styling */
.sidebar-area .sidebar {
  background: #ffffff !important;
  border: 1px solid var(--sn-border) !important;
  border-radius: var(--sn-radius-md) !important;
  padding: 18px !important;
  box-shadow: var(--sn-shadow-sm) !important;
  margin-bottom: 20px !important;
}
.sidebar-area .sidebar h3.sidebar-title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--sn-dark) !important;
  border-bottom: 2px solid var(--sn-border) !important;
  padding-bottom: 8px !important;
  margin-bottom: 14px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.sidebar-area .sidebar h5 {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--sn-dark) !important;
  margin-top: 14px !important;
  margin-bottom: 8px !important;
}
.sidebar-area .sidebar .search-autocomplete-input {
  width: 100% !important;
  height: 38px !important;
  padding: 0 38px 0 14px !important;
  border: 1.5px solid var(--sn-border) !important;
  border-radius: var(--sn-radius-pill) !important;
  font-size: 13px !important;
  background: #f8fafc !important;
  outline: none !important;
  transition: var(--sn-transition) !important;
}
.sidebar-area .sidebar .search-autocomplete-input:focus {
  background: #ffffff !important;
  border-color: var(--sn-primary) !important;
  box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.15) !important;
}
.sidebar-area .sidebar .search-input-wrapper button {
  position: absolute !important;
  right: 4px !important;
  top: 4px !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  background: var(--sn-primary) !important;
  color: #ffffff !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  font-size: 12px !important;
  transition: var(--sn-transition) !important;
}
.sidebar-area .sidebar .search-input-wrapper button:hover {
  background: var(--sn-accent) !important;
}
.sidebar-area .sidebar .badge-secondary {
  background: #f1f5f9 !important;
  color: #334155 !important;
  border: 1px solid #e2e8f0 !important;
  font-weight: 500 !important;
  font-size: 11.5px !important;
  padding: 4px 10px !important;
  border-radius: var(--sn-radius-pill) !important;
  margin: 2px 2px !important;
  display: inline-block !important;
  text-decoration: none !important;
  transition: var(--sn-transition) !important;
}
.sidebar-area .sidebar .badge-secondary:hover {
  background: #e6f5ef !important;
  color: var(--sn-primary) !important;
  border-color: var(--sn-primary) !important;
}
.sidebar-price #price-range {
  height: 6px !important;
  border: none !important;
  background: #e2e8f0 !important;
  border-radius: 3px !important;
  margin: 15px 0 10px 0 !important;
}
.sidebar-price #price-range .ui-slider-range {
  background: var(--sn-primary) !important;
  border-radius: 3px !important;
}
.sidebar-price #price-range .ui-slider-handle {
  background: var(--sn-accent) !important;
  border: 2px solid #ffffff !important;
  border-radius: 50% !important;
  width: 18px !important;
  height: 18px !important;
  top: -6px !important;
  cursor: pointer !important;
  outline: none !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
}

/* Modern Homepage Sections */
.home-hero-card {
  background: linear-gradient(135deg, #f5f3ff 0%, #ffffff 50%, #f8fafc 100%);
  border: 1px solid #e2e8f0;
  border-radius: var(--sn-radius-lg);
  padding: 36px 32px;
  box-shadow: var(--sn-shadow-sm);
}
.hero-badge {
  display: inline-block;
  background: rgba(124, 58, 237, 0.1);
  color: var(--sn-primary);
  font-size: 13px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: var(--sn-radius-pill);
}
.hero-title {
  font-size: 32px;
  font-weight: 800;
  color: var(--sn-dark);
  line-height: 1.25;
}
.hero-subtitle {
  font-size: 16px;
  color: var(--sn-text-muted);
}
.hero-category-pills {
  gap: 8px;
}
.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #ffffff;
  color: var(--sn-text-main);
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-pill);
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
  transition: var(--sn-transition);
}
.hero-pill:hover {
  background: #f5f3ff;
  border-color: var(--sn-primary);
  color: var(--sn-primary);
  transform: translateY(-1px);
}
.hero-pill-accent {
  background: #fef08a;
  border-color: #fde047;
  color: #854d0e;
}
.hero-pill-accent:hover {
  background: #fef9c3;
  color: #713f12;
}
.hero-stats-box {
  display: flex;
  flex-direction: column;
  gap: 12px;
  background: #ffffff;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-md);
  padding: 20px 24px;
  box-shadow: var(--sn-shadow-sm);
}
.hero-stat-item {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.hero-stat-number {
  font-size: 24px;
  font-weight: 800;
  color: var(--sn-primary);
  line-height: 1;
}
.hero-stat-label {
  font-size: 12px;
  color: var(--sn-text-muted);
  text-transform: uppercase;
}

/* Feature Item Cards */
.feature-item-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #ffffff;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-md);
  padding: 14px 16px;
  height: 100%;
}
.feature-icon-circle {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #f5f3ff;
  color: var(--sn-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}

.feature-text h6 {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--sn-dark);
}
.feature-text small {
  display: block;
  font-size: 12px;
  line-height: 1.3;
}

.home-categories-section {
  padding-top: 32px;
}

/* Homepage Category Cards */
.section-main-heading {
  font-size: 24px;
  font-weight: 800;
  color: var(--sn-dark);
}
.section-sub-heading {
  font-size: 14px;
}
.home-cat-card {
  background: #ffffff;
  border: 1px solid var(--sn-border);
  border-radius: var(--sn-radius-md);
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: var(--sn-transition);
}
.home-cat-card:hover {
  border-color: var(--sn-primary);
  box-shadow: var(--sn-shadow-md);
  transform: translateY(-2px);
}
.home-cat-img-wrap {
  display: block;
  height: 160px;
  background: #f8fafc;
  overflow: hidden;
  text-align: center;
  padding: 12px;
}
.home-cat-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}
.home-cat-card:hover .home-cat-img {
  transform: scale(1.05);
}
.home-cat-body {
  padding: 16px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.home-cat-title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
}
.home-cat-title a {
  color: var(--sn-dark);
  text-decoration: none;
}
.home-cat-title a:hover {
  color: var(--sn-primary);
}
.home-cat-sublinks {
  list-style: none;
  padding: 0;
  margin: 0 0 12px 0;
  flex: 1;
}
.home-cat-sublinks li {
  margin-bottom: 4px;
}
.home-cat-sublinks li a {
  font-size: 12px;
  color: var(--sn-text-muted);
  text-decoration: none;
}
.home-cat-sublinks li a:hover {
  color: var(--sn-primary);
}
.home-cat-cta {
  font-size: 12px;
  font-weight: 600;
  color: var(--sn-primary);
  text-decoration: none !important;
}
.home-cat-cta:hover {
  color: var(--sn-primary-dark);
}

/* Bootstrap 4 / 5 Compatibility Helpers */
.mr-1 { margin-right: 0.25rem !important; }
.mr-2 { margin-right: 0.5rem !important; }
.mr-3 { margin-right: 1rem !important; }
.mr-4 { margin-right: 1.5rem !important; }
.mr-5 { margin-right: 3rem !important; }
.mr-10 { margin-right: 10px !important; }
.ml-1 { margin-left: 0.25rem !important; }
.ml-2 { margin-left: 0.5rem !important; }
.ml-3 { margin-left: 1rem !important; }
.ml-4 { margin-left: 1.5rem !important; }
.ml-5 { margin-left: 3rem !important; }
.ml-auto { margin-left: auto !important; }
.mr-auto { margin-right: auto !important; }
.pr-1 { padding-right: 0.25rem !important; }
.pr-2 { padding-right: 0.5rem !important; }
.pr-3 { padding-right: 1rem !important; }
.pl-1 { padding-left: 0.25rem !important; }
.pl-2 { padding-left: 0.5rem !important; }
.pl-3 { padding-left: 1rem !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.font-weight-bold { font-weight: 700 !important; }
.font-weight-light { font-weight: 300 !important; }
.no-gutters { margin-right: 0; margin-left: 0; }
.no-gutters > .col, .no-gutters > [class*="col-"] { padding-right: 0; padding-left: 0; }
.badge-secondary { background-color: #64748b !important; color: #ffffff !important; }
.badge-danger { background-color: #ef4444 !important; color: #ffffff !important; }
.badge-warning { background-color: #f59e0b !important; color: #1e293b !important; }
.badge-light { background-color: #f1f5f9 !important; color: #334155 !important; }


/* Toast styling & BS5 close button compatibility */
#toast-api, .toast {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1095 !important;
  min-width: 280px;
  max-width: 360px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
}

#toast-api .toast-header {
  display: flex;
  align-items: center;
  padding: 10px 14px;
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
}

#toast-api .toast-header .btn-close {
  margin-left: auto;
  padding: 0.25rem;
  font-size: 0.8rem;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.15s ease-in-out;
}

#toast-api .toast-header .btn-close:hover {
  opacity: 1;
}

#toast-api .toast-body {
  padding: 12px 14px;
  font-size: 0.95rem;
  color: #1e293b;
}

/* Fallback for legacy .close class to BS5 SVG icon */
button.close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em;
  color: #000;
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.375rem;
  opacity: 0.5;
  cursor: pointer;
}
button.close:hover {
  opacity: 0.75;
}
button.close > span {
  display: none !important;
}

/* ===================================================================
   7. PREŠIRNA SODOBNA NOGA (MODERN PREMIUM FOOTER)
   =================================================================== */
footer.modern-footer {
  background-color: #111827 !important;
  color: #94a3b8;
  padding-bottom: 0 !important;
  margin-top: 50px;
  position: relative;
  font-family: inherit;
  border-top: none;
}
@media (max-width: 991px) {
  footer.modern-footer {
    padding-bottom: 74px !important; /* Prostor za mobilno spodnjo vrstico */
  }
}

/* 1. Zaupanje in prednosti nakupa (Trust Bar) */
.footer-trust-bar {
  background-color: #f8fafc;
  border-top: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
  padding: 32px 0;
}
.footer-trust-bar .trust-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  background: #ffffff;
  border-radius: 12px;
  border: 1px solid #edf2f7;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
  height: 100%;
  transition: all 0.25s ease;
}
.footer-trust-bar .trust-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  border-color: #cbd5e1;
}
.footer-trust-bar .trust-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: 12px;
  background: #e6f5ef;
  color: #7c3aed;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  transition: all 0.25s ease;
}
.footer-trust-bar .trust-card:hover .trust-icon {
  background: #7c3aed;
  color: #ffffff;
}
.footer-trust-bar .trust-content {
  display: flex;
  flex-direction: column;
}
.footer-trust-bar .trust-title {
  font-size: 15px;
  font-weight: 600;
  color: #1e293b;
  margin-bottom: 3px;
  line-height: 1.3;
}
.footer-trust-bar .trust-desc {
  font-size: 13px;
  color: #64748b;
  line-height: 1.35;
}

/* 2. E-obveščanje in popusti (Newsletter Card) */
.footer-newsletter-section {
  background: linear-gradient(135deg, #7c3aed 0%, #4c1d95 100%);
  color: #ffffff;
  padding: 44px 0;
  position: relative;
  overflow: hidden;
}
.footer-newsletter-section::before {
  content: "";
  position: absolute;
  top: -40%;
  right: -5%;
  width: 380px;
  height: 380px;
  background: radial-gradient(circle, rgba(167, 139, 250, 0.2) 0%, rgba(124, 58, 237, 0) 70%);
  border-radius: 50%;
  pointer-events: none;
}
.newsletter-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(4px);
  color: #ffffff;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 12px;
  border-radius: 9999px;
  margin-bottom: 10px;
}
.newsletter-headline .newsletter-title {
  font-size: 24px;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 8px;
  line-height: 1.3;
}
.newsletter-headline .newsletter-subtitle {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.88);
  margin-bottom: 0;
  line-height: 1.5;
  max-width: 520px;
}
.modern-subscribe-form .input-group-modern {
  display: flex;
  align-items: center;
  background: #ffffff;
  border-radius: 9999px;
  padding: 4px 4px 4px 18px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease;
}
.modern-subscribe-form .input-group-modern:focus-within {
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25), 0 0 0 3px rgba(167, 139, 250, 0.5);
}
.modern-subscribe-form .input-icon {
  color: #94a3b8;
  font-size: 16px;
  margin-right: 10px;
}
.modern-subscribe-form input {
  flex: 1;
  border: none;
  background: transparent;
  padding: 10px 4px;
  font-size: 15px;
  color: #1e293b;
  outline: none;
  min-width: 0;
}
.modern-subscribe-form input::placeholder {
  color: #94a3b8;
}
.modern-subscribe-form .btn-subscribe {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #a78bfa;
  color: #ffffff;
  border: none;
  border-radius: 9999px;
  padding: 12px 26px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.modern-subscribe-form .btn-subscribe:hover {
  background: #71a601;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(113, 166, 1, 0.4);
}
.modern-subscribe-form .btn-subscribe:active {
  transform: translateY(0);
}
.newsletter-privacy-note {
  display: block;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.75);
  margin-top: 10px;
}
.newsletter-privacy-note i {
  margin-right: 4px;
}
.footer-newsletter-section .mailchimp-alerts {
  margin-top: 8px;
  font-size: 13px;
  font-weight: 500;
}
.footer-newsletter-section .mailchimp-success {
  color: #ddd6fe;
  background: rgba(6, 78, 59, 0.5);
  padding: 6px 14px;
  border-radius: 6px;
  display: inline-block;
}
.footer-newsletter-section .mailchimp-error {
  color: #fecdd3;
  background: rgba(136, 19, 55, 0.5);
  padding: 6px 14px;
  border-radius: 6px;
  display: inline-block;
}

/* 3. Glavni navigacijski del (Main Navigation Section) */
.footer-main-section {
  background-color: #111827;
  color: #94a3b8;
  padding: 60px 0 44px;
}
.footer-logo-badge {
  display: inline-block;
  background: transparent;
  padding: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 20px;
  transition: opacity 0.2s ease;
}
.footer-logo-badge:hover {
  opacity: 0.85;
}
.footer-logo-badge img {
  display: block;
  height: auto;
  max-width: 230px;
}
.footer-brand-desc {
  font-size: 14px;
  line-height: 1.6;
  color: #94a3b8;
  margin-bottom: 24px;
}
.footer-contact-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.footer-contact-item .contact-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  color: #a78bfa;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  margin-top: 2px;
}
.footer-contact-item .contact-text {
  font-size: 13.5px;
  line-height: 1.4;
  color: #cbd5e1;
}
.footer-contact-item .contact-text .label {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #64748b;
  font-weight: 600;
  margin-bottom: 2px;
}
.footer-contact-item .contact-text a {
  color: #f1f5f9;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.15s ease;
}
.footer-contact-item .contact-text a:hover {
  color: #a78bfa;
}
.footer-social-box {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
}
.footer-social-box .social-label {
  font-size: 13px;
  color: #64748b;
}
.social-icons .social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  font-size: 15px;
  transition: all 0.2s ease;
  text-decoration: none;
}
.social-icons .social-btn.facebook:hover {
  background: #1877f2;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(24, 119, 242, 0.3);
}
.social-icons{display:flex;gap:8px;flex-wrap:wrap;}
.social-icons .social-btn.instagram:hover {
  background: linear-gradient(45deg, #f09433, #dc2743 50%, #bc1888);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(220, 39, 67, 0.3);
}
.social-icons .social-btn.pinterest:hover {
  background: #e60023;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(230, 0, 35, 0.3);
}
.footer-contact-item .contact-text span{display:block;}

/* Nav Widgets & Links */
.footer-nav-widget .footer-nav-title {
  color: #f8fafc;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 8px;
  position: relative;
  display: inline-block;
}
.footer-nav-widget .footer-nav-title a {
  color: #f8fafc;
  text-decoration: none;
}
.footer-nav-widget .footer-nav-title a:hover {
  color: #a78bfa;
}
.footer-nav-widget .footer-nav-title::after {
  content: "";
  display: block;
  width: 28px;
  height: 3px;
  background: #a78bfa;
  border-radius: 2px;
  margin-top: 8px;
  margin-bottom: 18px;
}
.footer-nav-links {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-nav-links li {
  margin-bottom: 9px;
}
.footer-nav-links li:last-child {
  margin-bottom: 0;
}
.footer-nav-links li a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #94a3b8;
  font-size: 13.5px;
  text-decoration: none;
  transition: all 0.2s ease;
  padding: 2px 0;
}
.footer-nav-links li a i {
  font-size: 11px;
  color: #64748b;
  transition: all 0.2s ease;
}
.footer-nav-links li a:hover {
  color: #ffffff;
  transform: translateX(4px);
}
.footer-nav-links li a:hover i {
  color: #a78bfa;
}
.footer-nav-links li.active a {
  color: #a78bfa;
  font-weight: 600;
}
.footer-nav-links li.active a i {
  color: #a78bfa;
}
.footer-notice-box {
  background: rgba(255, 255, 255, 0.04);
  border-left: 3px solid #a78bfa;
  padding: 10px 14px;
  border-radius: 0 8px 8px 0;
  font-size: 12px;
  color: #94a3b8;
  line-height: 1.4;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.footer-notice-box i {
  color: #a78bfa;
  font-size: 14px;
  margin-top: 2px;
}

/* 4. Zaključna spodnja vrstica (Bottom Bar) */
.footer-bottom-bar {
  background-color: #090d16;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding: 24px 0;
  font-size: 13px;
  color: #64748b;
}
.footer-legal-text .copyright-main {
  color: #cbd5e1;
  margin-bottom: 4px;
  font-size: 13.5px;
}
.footer-legal-text .copyright-main .brand-link {
  color: #ffffff;
  font-weight: 700;
  text-decoration: none;
}
.footer-legal-text .copyright-main .brand-link:hover {
  color: #a78bfa;
}
.footer-legal-text .legal-sub {
  margin-bottom: 0;
  font-size: 12px;
  color: #64748b;
  line-height: 1.45;
}
.footer-legal-text .legal-sub strong {
  color: #94a3b8;
}
.footer-badges-wrap {
  gap: 16px;
}
.badge-pill-ssl {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 6px 12px;
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 600;
  color: #cbd5e1;
}
.badge-pill-ssl i {
  color: #a78bfa !important;
}
.payment-icons-wrapper {
  display: inline-flex;
  align-items: center;
  background: #ffffff;
  padding: 5px 12px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.payment-icons-img {
  max-height: 24px;
  width: auto;
  object-fit: contain;
}
.production-badge {
  font-size: 12px;
}
.production-badge a {
  color: #94a3b8;
  font-weight: 600;
  text-decoration: none;
}
.production-badge a:hover {
  color: #a78bfa;
}

/* Scroll to top button */
a.scroll-top {
  right: 25px !important;
  bottom: 25px !important;
  background: #7c3aed !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(124, 58, 237, 0.4) !important;
  transition: all 0.25s ease !important;
}
a.scroll-top:hover {
  background-color: #a78bfa !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 18px rgba(167, 139, 250, 0.5) !important;
}

/* Odzivnost za mobilne naprave */
@media (max-width: 767px) {
  .footer-trust-bar {
    padding: 20px 0;
  }
  .footer-trust-bar .trust-card {
    padding: 12px 14px;
  }
  .footer-trust-bar .trust-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    font-size: 17px;
  }
  .footer-trust-bar .trust-title {
    font-size: 14px;
  }
  .footer-trust-bar .trust-desc {
    font-size: 12px;
  }
  .footer-newsletter-section {
    padding: 30px 0;
  }
  .newsletter-headline .newsletter-title {
    font-size: 20px;
  }
  .modern-subscribe-form .input-group-modern {
    flex-direction: column;
    padding: 6px;
    border-radius: 16px;
    background: #ffffff;
  }
  .modern-subscribe-form .input-icon {
    display: none;
  }
  .modern-subscribe-form input {
    width: 100%;
    padding: 10px 14px;
    text-align: center;
  }
  .modern-subscribe-form .btn-subscribe {
    width: 100%;
    justify-content: center;
    border-radius: 12px;
    margin-top: 4px;
    padding: 12px 20px;
  }
  .footer-main-section {
    padding: 40px 0 25px;
  }
  .footer-badges-wrap {
    flex-direction: column;
    gap: 12px;
  }
}


/* ===== Kategorije: mobile-first filtri, kartice podkategorij, SEO besedilo ===== */
.category-filters-toggle { background:#7c3aed; color:#fff; border-radius:10px; font-weight:600; padding:12px 16px; text-align:left; }
.category-filters-toggle:hover, .category-filters-toggle:focus { background:#6d28d9; color:#fff; box-shadow:none; }
.category-filters-toggle .fa { margin-right:8px; }
.category-sidebar { display:none; background:#fff; border-radius:12px; padding:14px; margin-top:8px; box-shadow:0 1px 6px rgba(15,23,42,.08); }
.category-sidebar.is-open { display:block; }
.category-filters-title { font-size:16px; margin:0 0 10px; }
.category-sidebar .product-categories { max-height:180px; overflow:auto; -webkit-overflow-scrolling:touch; }
.category-sidebar .product-categories a.active { color:#7c3aed; font-weight:700; }
@media (min-width:992px) {
  .category-sidebar { display:block; background:transparent; padding:0; box-shadow:none; margin-top:0; }
}
.category-card { background:#fff; border-radius:12px; padding:12px; box-shadow:0 1px 6px rgba(15,23,42,.08); transition:box-shadow .2s, transform .2s; }
.category-card:hover { box-shadow:0 6px 18px rgba(15,23,42,.14); transform:translateY(-2px); }
.category-card-main { display:block; text-align:center; color:#1e293b; }
.category-card-main h4 { font-size:14px; line-height:1.3; margin:8px 0; font-weight:700; }
.category-card-img { display:block; aspect-ratio:1/1; max-width:120px; margin:0 auto; }
.category-card-img img { width:100%; height:100%; object-fit:contain; }
.category-card-sub { list-style:none; margin:0; padding:8px 0 0; border-top:1px solid #e2e8f0; font-size:12px; }
.category-card-sub li { padding:2px 0; }
.category-card-sub a { color:#475569; }
.category-card-sub a:hover { color:#7c3aed; }
.category-products-title { margin:16px 0 4px; font-size:18px; }
.category-seo-text { background:#fff; border-radius:12px; padding:16px; color:#334155; font-size:14px; line-height:1.65; content-visibility:auto; contain-intrinsic-size:auto 400px; }
.category-seo-text h2 { font-size:20px; margin:0 0 10px; color:#1e293b; }
.category-seo-text h3 { font-size:16px; margin:16px 0 6px; color:#1e293b; }
.category-seo-text .category-seo-links { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:6px; }
.category-seo-text .category-seo-links li a { display:inline-block; padding:4px 10px; background:#f1f5f9; border-radius:999px; font-size:13px; }
@media (min-width:768px) { .category-seo-text { padding:24px; font-size:15px; } }

/* Fix: aktivna kategorija (kontrast) in poravnava podmenija brez puscice */
@media (min-width: 992px) {
  .desktop-nav-bar ul.nav-primary-items > li:hover > a,
  .desktop-nav-bar ul.nav-primary-items > li.active > a {
    background: #4c1d95;
    color: #ffffff !important;
    box-shadow: inset 0 -3px 0 var(--sn-accent);
  }
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu li a {
    justify-content: flex-start;
    text-align: left;
  }
  .desktop-nav-bar ul.nav-primary-items > li .sub-menu li a > span {
    flex: 1 1 auto;
    text-align: left;
  }
}

/* Sidebar search: neutralise header pill styles inherited from .header-advance-search */
.sidebar-area .sidebar .header-advance-search {
  height: auto !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  flex-basis: auto !important;
  margin-bottom: 16px !important;
}
.sidebar-area .sidebar .header-advance-search .search-input-wrapper {
  display: block !important;
  position: relative !important;
}
.sidebar-area .sidebar .header-advance-search input.search-autocomplete-input {
  margin: 0 !important;
  width: 100% !important;
  color: #1e293b !important;
}
.sidebar-area .sidebar .header-advance-search .search-input-wrapper button {
  top: 4px !important;
  right: 4px !important;
  transform: none !important;
}

/* =====================================================================
   CART & CHECKOUT – modern look + mobile-first cards
   ===================================================================== */
#cart > .container > .row > .col-12 > h2,
.checkout-form,
#cart h2:first-child { letter-spacing: -0.01em; }
#cart .col-12.text-center > h2,
.page-section .col-12.text-center > h2 {
  font-size: 28px; font-weight: 800; color: var(--sn-dark); margin-bottom: 4px;
}

/* ---- Cart table (desktop) ---- */
#cart .cart-table {
  border-radius: var(--sn-radius-lg); overflow: hidden;
  border: 1px solid var(--sn-border); box-shadow: var(--sn-shadow-md);
}
#cart .cart-table .table thead { background: var(--sn-bg-soft); }
#cart .cart-table .table thead tr th {
  font-size: 12px; letter-spacing: .04em; color: var(--sn-text-muted);
  border-bottom: 1px solid var(--sn-border);
}
#cart .cart-table .table tbody tr td { border-bottom: 1px solid var(--sn-border-light); padding: 12px 10px; }
#cart .cart-table .table tbody tr:last-child td { border-bottom: none; }
#cart .cart-table td.pro-thumbnail img { border-radius: var(--sn-radius-md); border: 1px solid var(--sn-border-light); }
#cart .cart-table td.pro-title a { font-size: 15px; font-weight: 600; color: var(--sn-dark); line-height: 1.35; }
#cart .cart-table td.pro-title a:hover { color: var(--sn-primary); }
#cart .cart-table td.pro-subtotal span { font-weight: 800; color: var(--sn-dark); }
#cart .cart-table .pro-remove a {
  display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center;
  border-radius: 50%; background: #fef2f2; transition: var(--sn-transition);
}
#cart .cart-table .pro-remove a:hover { background: #fee2e2; }
#cart .cart-table .product-qty-action-wrap .product-cart-btn { display: none; }
#cart .cart-table .product-qty-row { margin-bottom: 0 !important; }

/* ---- Info boxes / coupon / summary ---- */
#cart .alert, .page-section .alert { border-radius: var(--sn-radius-md); }
#cart .alert.border-success { background: #f0fdf7; border: 1px solid #bbf7d9 !important; color: var(--sn-text-main); }
#cart .alert.border-info { background: #f5f3ff; border-radius: var(--sn-radius-md); }
#cart .cart-summary { width: 100%; }
#cart .cart-summary .cart-summary-wrap {
  background: #fff; border: 1px solid var(--sn-border); border-radius: var(--sn-radius-lg);
  box-shadow: var(--sn-shadow-md); padding: 22px; width: 100%;
}
#cart .cart-summary-wrap h4 { font-size: 18px; font-weight: 800; color: var(--sn-dark); }
#cart .cart-summary-wrap p { color: var(--sn-text-main); }
#cart .cart-summary-wrap h2 {
  font-size: 18px; font-weight: 800; color: var(--sn-primary);
  border-top: 2px dashed var(--sn-border); padding-top: 14px; margin-top: 10px;
}
.place-order {
  background: linear-gradient(135deg, var(--sn-primary), var(--sn-primary-dark)) !important;
  color: #fff !important; border: none !important; border-radius: var(--sn-radius-pill) !important;
  min-height: 52px; font-size: 16px; letter-spacing: .01em; text-decoration: none !important;
  box-shadow: 0 8px 20px rgba(124,58,237,.28); transition: var(--sn-transition);
}
.place-order:hover { transform: translateY(-1px); box-shadow: 0 12px 26px rgba(124,58,237,.36); }
.place-order:active { transform: scale(.98); }
a.place-order { display: inline-flex; align-items: center; justify-content: center; padding: 10px 24px !important; width: auto !important; margin-top: 10px; }

/* ---- Checkout ---- */
.checkout-form .checkout-title {
  font-size: 17px; font-weight: 800; color: var(--sn-dark);
  padding-bottom: 10px; margin-bottom: 18px; border-bottom: 2px solid var(--sn-border);
  position: relative;
}
.checkout-form .checkout-title::after {
  content: ""; position: absolute; left: 0; bottom: -2px; width: 48px; height: 2px; background: var(--sn-primary);
}
.checkout-form #billing-form, .checkout-form #shipping-form, .checkout-form #company_buyer-form {
  background: #fff; border: 1px solid var(--sn-border); border-radius: var(--sn-radius-lg);
  box-shadow: var(--sn-shadow-sm); padding: 22px;
}
.checkout-form label { font-size: 13px; font-weight: 600; color: var(--sn-text-main); margin-bottom: 6px; }
.checkout-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.checkout-form textarea, .checkout-form .nice-select {
  width: 100%; min-height: 46px; border: 1.5px solid var(--sn-border) !important;
  border-radius: var(--sn-radius-md) !important; background: var(--sn-bg-soft);
  padding: 8px 14px; font-size: 15px; color: var(--sn-dark); transition: var(--sn-transition);
}
.checkout-form textarea { min-height: 96px; }
.checkout-form input:focus, .checkout-form textarea:focus, .checkout-form .nice-select.open {
  background: #fff; border-color: var(--sn-primary) !important;
  box-shadow: 0 0 0 3px rgba(124,58,237,.15); outline: none;
}
.checkout-form .nice-select { line-height: 28px; float: none; }
.checkout-form .checkout-cart-total {
  background: #fff; border: 1px solid var(--sn-border); border-radius: var(--sn-radius-lg);
  box-shadow: var(--sn-shadow-md); padding: 20px;
}
.checkout-form .checkout-cart-total ul { padding: 0; list-style: none; }
.checkout-form .checkout-cart-total li {
  display: flex; justify-content: space-between; gap: 12px; padding: 8px 0;
  border-bottom: 1px solid var(--sn-border-light); font-size: 14px;
}
.checkout-form .checkout-cart-total li a { color: var(--sn-dark); font-weight: 500; }
.checkout-form .checkout-cart-total li span, .checkout-form .checkout-cart-total p span { font-weight: 700; white-space: nowrap; }
.checkout-form .checkout-cart-total p { display: flex; justify-content: space-between; margin: 0; padding: 6px 0; font-size: 14px; }
.checkout-form .checkout-cart-total h4 {
  display: flex; justify-content: space-between; font-size: 16px; font-weight: 800; margin: 0; padding: 8px 0;
}
.checkout-form .checkout-cart-total > h4:last-child {
  border-top: 2px dashed var(--sn-border); margin-top: 8px; padding-top: 14px; color: var(--sn-primary); font-size: 19px;
}
.checkout-form .single-method {
  background: #fff; border: 1.5px solid var(--sn-border); border-radius: var(--sn-radius-md);
  padding: 12px 14px; transition: var(--sn-transition); margin-bottom: 10px;
}
.checkout-form .single-method:hover { border-color: var(--sn-primary); background: #f0fdf7; }
.checkout-form .single-method label { margin: 0; cursor: pointer; font-weight: 600; }
.checkout-form .single-method input[type=radio]:checked + label,
.checkout-form .single-method input[type=checkbox]:checked + label { color: var(--sn-primary); }
.checkout-form .check-box label { font-weight: 600; cursor: pointer; }

/* ---- Mobile ---- */
@media (max-width: 767.98px) {
  .page-section .col-12.text-center > h2 { font-size: 22px; }
  #cart, .page-section { overflow-x: hidden; }

  /* table -> cards */
  #cart .cart-table { background: transparent; border: none; box-shadow: none; overflow: visible; }
  #cart .cart-table .table, #cart .cart-table .table tbody { display: block; border: none !important; }
  #cart .cart-table .table thead { display: block; background: transparent; }
  #cart .cart-table .table thead tr {
    display: flex; justify-content: space-between; align-items: center;
    background: #fff; border: 1px solid var(--sn-border); border-radius: var(--sn-radius-md);
    padding: 10px 14px; margin-bottom: 12px;
  }
  #cart .cart-table .table thead th { display: none !important; border: none; padding: 0; font-size: 0; text-transform: none; }
  #cart .cart-table .table thead th:nth-child(3),
  #cart .cart-table .table thead th:nth-child(5) { display: block !important; }
  #cart .cart-table .table thead th:nth-child(3) label { font-size: 13px; font-weight: 600; color: var(--sn-text-main); }
  #cart .cart-table .table thead th:nth-child(5) a { font-size: 13px; }
  #cart .cart-table .table thead th:nth-child(5) a::after { content: " Izprazni"; font-family: inherit; font-weight: 600; color: #dc2626; }

  #cart .cart-table .table tbody tr {
    display: grid; grid-template-columns: 84px 1fr auto; column-gap: 12px; row-gap: 6px;
    background: #fff; border: 1px solid var(--sn-border); border-radius: var(--sn-radius-lg);
    box-shadow: var(--sn-shadow-sm); padding: 12px; margin-bottom: 12px; align-items: center;
  }
  #cart .cart-table .table tbody tr td { display: block; border: none !important; padding: 0 !important; width: auto !important; max-width: none !important; min-width: 0 !important; text-align: left; }
  #cart .cart-table td.pro-thumbnail { grid-column: 1; grid-row: 1 / span 4; align-self: start; }
  #cart .cart-table td.pro-thumbnail a { width: 100% !important; }
  #cart .cart-table td.pro-title { grid-column: 2; grid-row: 1; align-self: start; }
  #cart .cart-table td.pro-title a {
    font-size: 14px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
  }
  #cart .cart-table td.pro-remove { grid-column: 3; grid-row: 1; align-self: start; }
  #cart .cart-table .pro-remove a { width: 38px; height: 38px; }
  #cart .cart-table .table tbody tr td:nth-child(3) { grid-column: 2 / 4; grid-row: 2; font-size: 12px; }
  #cart .cart-table .table tbody tr td:nth-child(3) label { font-size: 12px; color: var(--sn-text-muted); font-weight: 500; margin: 0; }
  #cart .cart-table td.pro-price { grid-column: 2; grid-row: 3; font-size: 12px; color: var(--sn-text-muted); }
  #cart .cart-table td.pro-price::after { content: " / kos"; }
  #cart .cart-table td.pro-quantity { grid-column: 2; grid-row: 4; }
  #cart .cart-table td.pro-quantity .product-qty-group { max-width: 130px !important; }
  #cart .cart-table td.pro-quantity .product-qty-input, #cart .cart-table td.pro-quantity .input-group-text { height: 40px !important; font-size: 16px !important; }
  #cart .cart-table td.pro-quantity .product-qty-row { justify-content: flex-start !important; }
  #cart .cart-table td.pro-subtotal { grid-column: 3; grid-row: 4; align-self: center; text-align: right; }
  #cart .cart-table td.pro-subtotal span { font-size: 16px; }

  #cart .cart-summary .cart-summary-wrap { padding: 18px; }

  /* sticky CTA above bottom app nav */
  #cart .col-12.text-center.mb-4:last-child {
    position: sticky; bottom: 72px; z-index: 50; padding: 8px 0 0;
    background: linear-gradient(to top, #fff 70%, rgba(255,255,255,0));
  }

  /* checkout */
  .checkout-form #billing-form, .checkout-form #shipping-form, .checkout-form #company_buyer-form { padding: 16px; }
  .checkout-form input:not([type=checkbox]):not([type=radio]), .checkout-form textarea, .checkout-form .nice-select { font-size: 16px; }
  .checkout-form .mb-20 { margin-bottom: 14px !important; }
  .checkout-form .checkout-cart-total { padding: 16px; }
  .checkout-form .checkout-cart-total ul { max-height: 320px !important; }
  .checkout-form .single-method { padding: 14px; }
  .checkout-form .place-order { position: sticky; bottom: 72px; z-index: 50; min-height: 56px; font-size: 17px; }
  .checkout-form .col-12.text-center.mb-4 { padding: 0; }
}

/* =====================================================================
   CART & CHECKOUT – polish v2 (consistent cards, mobile perfection)
   ===================================================================== */
#cart .container, .page-section .container { max-width: 1200px; }
#cart .cart-table input[type=number]::-webkit-outer-spin-button,
#cart .cart-table input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
#cart .cart-table input[type=number] { -moz-appearance: textfield; appearance: textfield; }
#cart .cart-table .custom-control-label { cursor: pointer; font-size: 13px; }
#cart .alert.border-success, #cart .alert.border-info { padding: 16px 18px; }
#cart .alert.border-info { border: 1px solid #ddd6fe !important; }
#cart .alert-danger { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; font-weight: 500; }
#cart .alert-success { background: #f0fdf7; border: 1px solid #bbf7d9; color: #065f46; }
#cart .alert-info:not(.border-info) { background: var(--sn-bg-soft); border: 1px solid var(--sn-border); color: var(--sn-text-main); }
#cart .cart-summary-wrap p, .checkout-form .checkout-cart-total p { display: flex; justify-content: space-between; gap: 12px; margin: 0; padding: 6px 0; font-size: 14px; }
#cart .cart-summary-wrap h2 { display: flex; justify-content: space-between; gap: 12px; }
.checkout-form .checkout-cart-total h4 { display: flex; justify-content: space-between; gap: 12px; font-size: 15px; font-weight: 800; }
.checkout-form .single-method { background: #fff; border: 1.5px solid var(--sn-border); border-radius: var(--sn-radius-md); transition: var(--sn-transition); }
.checkout-form .single-method:has(input:checked) { border-color: var(--sn-primary); background: #f0fdf7; }
.checkout-form .single-method label { display: block; margin: 0; cursor: pointer; line-height: 1.45; }
.checkout-form .single-method label div { font-weight: 400; font-size: 12px; color: var(--sn-text-muted); margin-top: 2px; }
.checkout-form .single-method p[data-method] { display: none; }
.checkout-form .place-order { width: 100%; }

@media (max-width: 767.98px) {
  #cart { margin-top: 0 !important; padding-bottom: 24px; }
  #cart .container, .page-section .container { padding-left: 12px; padding-right: 12px; }
  #cart .col-12, .page-section .row > .col-12 { padding-left: 4px; padding-right: 4px; }
  #cart .alert { font-size: 13px; padding: 12px 14px; }
  #cart .cart-table .table tbody tr { grid-template-columns: 76px minmax(0,1fr) auto; padding: 12px 12px 12px 10px; }
  #cart .cart-table td.pro-thumbnail .image-square { border-radius: var(--sn-radius-md); overflow: hidden; }
  #cart .cart-table td.pro-title a { font-size: 14px; line-height: 1.3; }
  #cart .cart-table .table tbody tr td:nth-child(3) { grid-column: 2 / 4; }
  #cart .cart-table td.pro-price { grid-column: 2 / 4; grid-row: 3; font-size: 12px; }
  #cart .cart-table td.pro-price span { font-weight: 600; color: var(--sn-text-muted); }
  #cart .cart-table td.pro-quantity .product-qty-group { max-width: 112px !important; }
  #cart .cart-table td.pro-quantity .product-qty-input { border-radius: 10px 0 0 10px; }
  #cart .cart-table td.pro-subtotal span { font-size: 17px; color: var(--sn-primary); }
  #cart .cart-table .custom-control-label::before, #cart .cart-table .custom-control-label::after { top: .1rem; }
  #cart .cart-summary { margin-bottom: 14px; }
  #cart .cart-summary .cart-summary-wrap { padding: 16px; }
  #cart .cart-summary-wrap h2 { font-size: 19px; }
  #cart .border-info .col-lg-6 { margin-bottom: 8px; }
  #cart .card-body .input-group .form-control, #cart .card-body .btn { height: 46px; font-size: 16px; }
  #cart .place-order { width: 100% !important; min-height: 56px; font-size: 17px; }
  #cart .col-12.text-center.mb-4:last-child { margin: 0 -4px; padding: 10px 4px 0; }
  .checkout-form .checkout-title { font-size: 16px; margin-top: 4px; }
  .checkout-form .checkout-cart-total ul { max-height: 260px !important; }
  .checkout-form .checkout-cart-total li { gap: 10px; font-size: 13px; }
  .checkout-form .mb-40 { margin-bottom: 20px !important; }
  .checkout-form .col-12.mt-4 { margin-top: 12px !important; }
  .checkout-form .single-method { padding: 12px 14px; }
  .checkout-form .single-method label { font-size: 14px; }
  .checkout-form .alert { font-size: 13px; }
  .checkout-form .place-order { bottom: calc(72px + env(safe-area-inset-bottom, 0px)); }
  .checkout-form .col-12.text-center.mb-4 { background: linear-gradient(to top, #fff 70%, rgba(255,255,255,0)); padding-top: 8px; }
  .page-section .alert.d-flex { flex-direction: column; align-items: stretch !important; gap: 10px; text-align: center; }
}

/* ===== Product page: price box & quantity ===== */
.product-buy .alert-light { background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:20px 22px; box-shadow:0 4px 18px rgba(15,23,42,.06); }
.product-buy .product-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; margin:0 0 16px; font-size:15px; font-weight:500; color:#64748b; }
.product-buy .product-price .main-price { order:1; font-size:18px; font-weight:500; color:#94a3b8; text-decoration:line-through; }
.product-buy .product-price .discounted-price { order:2; font-size:36px; font-weight:800; line-height:1; color:#7c3aed; letter-spacing:-.5px; }
.product-buy .product-price .price-unit { order:3; font-size:15px; font-weight:500; color:#64748b; }
.product-buy .product-price .price-badge { order:4; background:#ef4444; color:#fff; font-size:13px; font-weight:700; padding:3px 9px; border-radius:999px; align-self:center; }
.product-buy .product-qty-row { justify-content:flex-start !important; margin-bottom:14px !important; }
.product-buy .product-qty-group { max-width:170px !important; border:1px solid #e2e8f0; border-radius:12px; overflow:hidden; background:#f8fafc; }
.product-buy .product-qty-group .form-control { height:44px !important; border:0; background:#fff; font-size:17px; box-shadow:none; }
.product-buy .product-qty-group .input-group-text { height:44px !important; border:0; background:#f8fafc !important; font-size:12px !important; font-weight:600; text-transform:uppercase; letter-spacing:.5px; color:#64748b !important; }
.product-buy .product-cart-btn { height:50px; border-radius:12px; font-size:16px; font-weight:700; box-shadow:0 6px 16px rgba(124,58,237,.28); transition:transform .15s, box-shadow .15s; }
.product-buy .product-cart-btn:hover { transform:translateY(-1px); box-shadow:0 8px 20px rgba(124,58,237,.36); }
/* Breadcrumb (pathway) - kompaktna, moderna razlicica */
.breadcrumb-area.mb-50 { margin-bottom: 18px !important; }
.breadcrumb-area .breadcrumb-container { border-bottom: 0; padding: 10px 0 0; }
.breadcrumb-area .breadcrumb-container ul { margin: 0; padding: 6px 14px; display: inline-flex; flex-wrap: wrap; align-items: center; background: #fff; border: 1px solid #e5e9f0; border-radius: 999px; box-shadow: 0 1px 3px rgba(15,23,42,.05); max-width: 100%; }
.breadcrumb-area .breadcrumb-container ul li { font-size: 13px; line-height: 20px; padding-right: 22px; color: #1e293b; max-width: 320px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.breadcrumb-area .breadcrumb-container ul li a { color: #475569; transition: color .15s; }
.breadcrumb-area .breadcrumb-container ul li a:hover { color: #7c3aed; text-decoration: none; }
.breadcrumb-area .breadcrumb-container ul li:after { content: "\203A"; right: 8px; top: 0; color: #94a3b8; font-size: 16px; }
.breadcrumb-area .breadcrumb-container ul li.active { color: #7c3aed; font-weight: 600; padding-right: 0; max-width: 420px; }

/* Kategorije: širši sidebar, vnos cene, filter nakupa */
@media (min-width:992px) {
  .category-sidebar-col { flex:0 0 290px; max-width:290px; }
  .category-main-col { flex:1 1 0; max-width:calc(100% - 290px); min-width:0; }
}
.price-inputs { display:flex; align-items:center; gap:6px; }
.price-inputs .form-control { min-width:0; flex:1 1 0; padding:4px 8px; height:34px; border-radius:8px; }
.price-inputs-go { background:#7c3aed; color:#fff; border-radius:8px; height:34px; width:36px; padding:0; }
.price-inputs-go:hover { background:#6d28d9; color:#fff; }
.buyable-filter { display:flex; align-items:flex-start; gap:8px; cursor:pointer; font-size:13px; font-weight:600; color:#1e293b; }
.buyable-filter input { margin-top:3px; accent-color:#7c3aed; }
.buyable-filter small { font-weight:400; color:#64748b; }

/* Product trust box + related products */
.product-trust-box { font-size: 13px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 10px 14px; }
.product-trust-box li { padding: 3px 0; }
.product-trust-box .fa { color: #7c3aed; width: 18px; text-align: center; margin-right: 4px; }
.related-products-section .section-title h3 { font-size: 22px; font-weight: 700; margin-bottom: 14px; }

/* List view fixes: main.css [class*="col"] wildcard wrongly hit list-item-*-col */
.shop-product-wrap.list .shop-list-view-product {
  display: block !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  overflow: visible !important;
  width: 100%;
}
.shop-product-wrap.list .shop-list-item-wrapper .list-item-image-col {
  flex: 0 0 180px !important;
  width: 180px !important;
  max-width: 180px !important;
}
.shop-product-wrap.list .shop-list-item-wrapper .list-item-content-col {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0;
}
.shop-product-wrap.list .shop-list-item-wrapper .list-item-actions-col {
  flex: 0 0 240px !important;
  width: 240px !important;
  max-width: 240px !important;
}
@media (max-width: 767px) {
  .shop-product-wrap.list .shop-list-item-wrapper .list-item-image-col,
  .shop-product-wrap.list .shop-list-item-wrapper .list-item-actions-col {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .shop-product-wrap.list .shop-list-item-wrapper .list-item-image-col { height: 200px; }
}

/* Povezave v opisih kategorij: znamčna zelena namesto modre */
.category-description a, .category-description a strong, .category-seo-text a, .category-seo-text a strong { color:#7c3aed !important; }
.category-description a:hover, .category-seo-text a:hover, .category-description a:hover strong, .category-seo-text a:hover strong { color:#4c1d95 !important; text-decoration:underline; }

/* Language switcher */
.lang-switcher { display: inline-flex; gap: 4px; align-items: center; }
.lang-switcher .lang-link { display: inline-block; padding: 2px 7px; border-radius: 6px; font-size: 12px; font-weight: 600; color: #1e293b; text-decoration: none; border: 1px solid #e2e8f0; line-height: 1.5; }
.lang-switcher .lang-link:hover { background: #f1f5f9; color: #7c3aed; }
.lang-switcher .lang-link.active { background: #7c3aed; border-color: #7c3aed; color: #fff; }
.header-top-menu .lang-switcher { margin-left: 8px; }
.drawer-lang-switcher { padding: 10px 16px 0; }

/* Product: categories & share */
.single-product-category { padding-top: 18px; border-top: 1px solid #e2e8f0; }
.single-product-category > b { display: block; font-size: 12px; letter-spacing: .06em; color: #64748b; margin-bottom: 8px; }
.single-product-category > span { display: inline-flex; flex-wrap: wrap; gap: 8px; }
.single-product-category > span a.mr-2 { margin: 0 !important; display: inline-block; padding: 5px 14px; background: #f1f5f9; color: #1e293b; border-radius: 999px; font-size: 13px; line-height: 1.4; text-decoration: none; transition: all .2s; }
.single-product-category > span a.mr-2:hover { background: #7c3aed; color: #fff; }
.social-share-buttons { margin-top: 18px; }
.social-share-buttons h3 { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #64748b; margin: 0 0 10px; }
.social-share-buttons ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 10px; }
.social-share-buttons ul li { margin: 0; padding: 0; }
.social-share-buttons ul li a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; color: #fff; font-size: 16px; text-decoration: none; transition: transform .2s, box-shadow .2s; }
.social-share-buttons ul li a.facebook { background: #1877f2; }
.social-share-buttons ul li a.twitter { background: #0f172a; }
.social-share-buttons ul li a:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(15,23,42,.2); color: #fff; }

.product-trust-box .product-payment-highlight { background: #f5f3ff; border: 1px solid #7c3aed; border-radius: 6px; padding: 8px 10px; margin: 4px 0; font-size: 14px; }

/* Obvestilo o piškotkih */
#sn-cookie{position:fixed;left:20px;bottom:20px;z-index:99999;width:420px;max-width:calc(100vw - 24px);font-size:14px;color:#1e293b;animation:snCk .35s ease-out}
@keyframes snCk{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
#sn-cookie .sn-cookie-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 20px 50px rgba(15,23,42,.25),0 0 0 1px rgba(15,23,42,.06);border-top:4px solid #7c3aed;max-height:85vh;overflow:auto}
#sn-cookie .sn-cookie-head{display:flex;align-items:center;gap:10px;font-size:17px;margin-bottom:8px}
#sn-cookie .sn-cookie-ico{display:inline-flex;width:36px;height:36px;border-radius:50%;background:#f5f3ff;align-items:center;justify-content:center;font-size:20px}
#sn-cookie .sn-cookie-p{margin:0 0 14px;line-height:1.55;color:#475569;font-size:13px}
#sn-cookie a{color:#7c3aed;text-decoration:underline}
#sn-cookie .sn-cookie-settings{margin:0 0 14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}
#sn-cookie .sn-c-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:10px 12px;cursor:pointer}
#sn-cookie .sn-c-row+.sn-c-row{border-top:1px solid #e2e8f0}
#sn-cookie .sn-c-info b{display:block;font-size:13px}
#sn-cookie .sn-c-info small{display:block;color:#64748b;font-size:12px;line-height:1.35}
#sn-cookie .sn-switch{position:relative;flex:0 0 42px;height:24px}
#sn-cookie .sn-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2}
#sn-cookie .sn-switch i{position:absolute;inset:0;background:#cbd5e1;border-radius:24px;transition:.2s}
#sn-cookie .sn-switch i:before{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
#sn-cookie .sn-switch input:checked+i{background:#7c3aed}
#sn-cookie .sn-switch input:checked+i:before{transform:translateX(18px)}
#sn-cookie .sn-switch input:disabled+i{opacity:.55}
#sn-cookie .sn-switch input:focus-visible+i{outline:2px solid #a78bfa;outline-offset:2px}
#sn-cookie .sn-cookie-btns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#sn-cookie .sn-btn{border-radius:10px;padding:10px 16px;font-weight:600;cursor:pointer;border:2px solid #7c3aed;font-size:14px;flex:1 1 auto;transition:.15s}
#sn-cookie .sn-btn-main{background:#7c3aed;color:#fff}
#sn-cookie .sn-btn-main:hover{background:#4c1d95;border-color:#4c1d95}
#sn-cookie .sn-btn-ghost{background:#fff;color:#7c3aed}
#sn-cookie .sn-btn-ghost:hover{background:#f5f3ff}
#sn-cookie .sn-btn-link{flex:1 1 100%;background:none;border:0;color:#475569;text-decoration:underline;padding:4px;font-weight:500;font-size:13px}
@media(max-width:991px){#sn-cookie{left:12px;right:12px;width:auto;bottom:78px}}

/* Poenoteni gumbi */
.btn,.btn-sm,.btn-lg,.btn-success,.btn-outline-success,.btn-outline-primary{border-radius:8px !important}
.btn-outline-primary{color:#7c3aed;border-color:#7c3aed}
.btn-outline-primary:hover{background:#7c3aed;color:#fff;border-color:#7c3aed}

/* ===== Clean product page (manj kvadratkov) ===== */
.product-details-page-wrapper .product-feature-details .bg-light,
.product-feature-details .bg-light{background:transparent !important;padding:0 !important;border:0 !important}
.product-feature-details .product-buy .alert,
.product-feature-details .product-buy .alert-light{background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 !important;border-radius:0 !important}
.product-feature-details .product-buy,
.product-feature-details .product-buy-container{background:transparent !important;border:0 !important;box-shadow:none !important}
.product-feature-details .product-title{font-weight:700;text-transform:none !important;letter-spacing:0;font-size:1.5rem;line-height:1.25;color:#111827}
.product-feature-details .product-description{color:#475569}
.product-feature-details .product-trust-box{border:0 !important;background:transparent !important;padding:0 !important;font-size:.88rem;color:#475569}
.product-feature-details .product-trust-box li{border:0 !important;padding:6px 0 !important;background:transparent !important}
.product-feature-details .single-product-category{border:0 !important}
.product-feature-details .social-share-buttons{border:0 !important;background:transparent !important;padding:0 !important}
.product-large-image-list .tab-pane,
.product-large-image-list img,
.small-image-slider-single-product a{border:0 !important;box-shadow:none !important;background:transparent !important}
.single-product-tab-section .nav-tabs{border:0 !important;border-bottom:1px solid #e5e7eb !important}
.single-product-tab-section .nav-tabs .nav-link{border:0 !important;border-radius:0 !important;background:transparent !important}
.single-product-tab-section .nav-tabs .nav-link.active{border-bottom:2px solid #7c3aed !important;color:#7c3aed}
.single-product-tab-section .tab-content{border:0 !important;background:transparent !important;box-shadow:none !important}
@media (max-width:991px){
  .product-details-page-wrapper{background:#fff !important}
  .product-details-page-wrapper .container{padding-left:18px;padding-right:18px}
}
/* ===== Galerija pod sliko ===== */
.single-product-content-container .product-image-slider{flex-direction:column !important;flex-wrap:nowrap !important;align-items:stretch !important}
.single-product-content-container .product-image-slider .tab-content.product-large-image-list{order:1;width:100%;max-width:100%}
.single-product-content-container .product-image-slider .product-small-image-list{order:2 !important;flex:0 0 auto !important;flex-basis:auto !important;width:100% !important;max-width:100% !important;display:block !important;margin:14px 0 0 !important;padding:0 28px;position:relative}
.small-image-slider-single-product .slick-slide{padding:0 4px;outline:0}
.small-image-slider-single-product a{display:block !important;border:2px solid transparent !important;border-radius:8px;overflow:hidden;opacity:.65;transition:opacity .2s,border-color .2s}
.small-image-slider-single-product a.active,.small-image-slider-single-product a:hover{opacity:1;border-color:#7c3aed !important}
.small-image-slider-single-product a img{width:100%;aspect-ratio:1/1;object-fit:cover}
.small-image-slider-single-product .slick-arrow{position:absolute;top:50%;transform:translateY(-50%);width:24px;height:24px;line-height:24px;text-align:center;font-size:22px;color:#475569;cursor:pointer;z-index:2}
.small-image-slider-single-product .fa-angle-left{left:-26px}
.small-image-slider-single-product .fa-angle-right{right:-26px}
.small-image-slider-single-product .slick-arrow.slick-disabled{opacity:.25;cursor:default}

/* ===== Naslov čez celo širino + Deli z ostalimi ===== */
.product-title-full{font-size:1.75rem;font-weight:700;line-height:1.25;color:#111827;margin:0 0 20px;text-transform:none}
@media(max-width:991px){.product-title-full{font-size:1.35rem;margin-bottom:14px}}
.sn-share{display:flex !important;align-items:center;gap:8px;margin-top:8px}
.sn-share .sn-share-label{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin-right:4px}
.sn-share a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#f1f5f9;color:#475569;font-size:16px;transition:background .2s,color .2s;text-decoration:none}
.sn-share a:hover{color:#fff}
.sn-share a.facebook:hover{background:#1877f2}
.sn-share a.whatsapp:hover{background:#25d366}
.sn-share a.twitter:hover{background:#111}

/* ===== Najnižja cena: manjša, brez bolda, aktualna cena sama v vrstici ===== */
.product-buy .product-price .lowest-price-30d{order:0;flex:0 0 100%;font-size:12px !important;font-weight:400 !important;color:#94a3b8 !important;line-height:1.3}
.product-buy .product-price .lowest-price-30d b{font-weight:400}
.product-buy .product-price .discounted-price{order:2}

/* ===== Količina: več paddinga ===== */
.product-buy .product-qty-group{max-width:150px !important}
.product-buy .product-qty-group .input-group-text{padding:0 16px !important}
.product-buy .product-qty-row{margin-bottom:14px !important}

/* ===== Poenoteni paddingi na izdelku (32px desktop / 16px mobile) ===== */
.breadcrumb-area.mb-50{margin-bottom:24px !important}
.breadcrumb-area .breadcrumb-container{padding:0 !important}
.single-product-content-container{padding:32px !important;margin-bottom:24px !important}
.product-title-full{margin:0 0 24px !important}
.single-product-content-container .product-image-slider{margin-bottom:0 !important}
.single-product-content-container .product-image-slider .product-small-image-list{margin:16px 0 0 !important}
.single-product-content-container .product-feature-details .product-buy-container{margin-top:16px !important}
.single-product-content-container .product-feature-details .single-product-category{margin:24px 0 16px !important}
.single-product-content-container .product-feature-details .product-trust-box{margin-top:24px !important}
@media(max-width:991px){
  .single-product-content-container{padding:16px !important}
  .product-title-full{margin-bottom:16px !important}
  .single-product-content-container .product-feature-details{margin-top:24px}
}

/* ===== Nakupni card (cena + obroki + količina + košarica + zaupanje) ===== */
.product-feature-details .product-buy{background:#fff !important;border:1px solid #e5e9f0 !important;border-radius:16px !important;box-shadow:0 2px 12px rgba(15,23,42,.06) !important;padding:24px !important;margin-top:8px}
.product-feature-details .product-buy .product-price{margin-bottom:16px}
.product-feature-details .product-buy .product-trust-box{margin:20px 0 0 !important;padding:16px 0 0 !important;border-top:1px solid #eef2f6 !important}
.product-feature-details .product-buy .product-qty-row{justify-content:flex-start !important}
.nlb-info-title{font-size:13px;font-weight:600;color:#1e293b;margin:0 0 6px}
.nlb-info-note{font-size:12px;line-height:1.4;color:#64748b;margin:6px 0 0}
.nlb-per-month{font-weight:400;font-size:.8rem;opacity:.85}
.product-feature-details .nlbBuyGoInstallments{margin-bottom:16px !important}
@media(max-width:991px){.product-feature-details .product-buy{padding:16px !important}}

/* View mode toggle as joined input group */
.view-mode-icons {
  display: inline-flex;
  flex-wrap: nowrap;
}
.view-mode-icons a,
.view-mode-icons a:first-child,
.view-mode-icons a:last-child {
  width: 40px;
  height: 36px;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1;
  border: 1px solid #e2e8f0;
  border-radius: 0;
}
.view-mode-icons a:first-child {
  border-radius: 8px 0 0 8px;
}
.view-mode-icons a:last-child {
  border-radius: 0 8px 8px 0;
  margin-left: -1px !important;
}
.view-mode-icons a.active,
.view-mode-icons a:hover {
  border-color: #7c3aed;
  position: relative;
  z-index: 1;
}

/* Avoid doubled top padding when containers are nested */
#main-content .home-page-container,
#main-content .shop-page-wrapper,
#main-content .page-section,
#main-content .product-details-page-wrapper {
  padding-top: 0 !important;
}
.price-inputs input[type=number]::-webkit-outer-spin-button,
.price-inputs input[type=number]::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.price-inputs input[type=number] { -moz-appearance:textfield; appearance:textfield; padding:4px 6px; font-size:14px; text-align:center; }

/* Božično-novoletni gumb Posebna ponudba */
@media (min-width: 992px) {
  .desktop-nav-bar .nav-promo-badge {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #e11d2e, #b3001b) !important;
    border: 2px dashed #ffd76a;
    box-shadow: 0 0 0 2px #c8102e, 0 3px 10px rgba(200, 16, 46, 0.55), inset 0 0 8px rgba(255, 255, 255, 0.25);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    letter-spacing: .3px;
  }
  .desktop-nav-bar .nav-promo-badge:hover {
    background: linear-gradient(135deg, #f0283a, #c8102e) !important;
    box-shadow: 0 0 0 2px #c8102e, 0 5px 14px rgba(200, 16, 46, 0.7), 0 0 12px rgba(255, 215, 106, 0.8);
  }
  .nav-promo-badge .xmas-ico { display: inline-block; font-size: 15px; line-height: 1; text-shadow: none; }
  .nav-promo-badge .xmas-l { animation: xmasSwing 2.4s ease-in-out infinite; transform-origin: 50% 100%; }
  .nav-promo-badge .xmas-r { animation: xmasBounce 1.8s ease-in-out infinite; }
  .nav-promo-badge .xmas-snow {
    position: absolute; top: -4px; width: 4px; height: 4px; border-radius: 50%;
    background: #fff; opacity: .9; animation: xmasSnow 2.6s linear infinite; pointer-events: none;
  }
  .nav-promo-badge .xmas-snow.s1 { left: 20%; animation-delay: 0s; }
  .nav-promo-badge .xmas-snow.s2 { left: 50%; animation-delay: .9s; width: 3px; height: 3px; }
  .nav-promo-badge .xmas-snow.s3 { left: 80%; animation-delay: 1.7s; }
}
@keyframes xmasSwing { 0%,100% { transform: rotate(-8deg); } 50% { transform: rotate(8deg); } }
@keyframes xmasBounce { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-2px); } }
@keyframes xmasSnow { 0% { transform: translateY(0); opacity: 0; } 20% { opacity: .9; } 100% { transform: translateY(34px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  .nav-promo-badge .xmas-ico, .nav-promo-badge .xmas-snow { animation: none !important; }
}

/* Posebna ponudba: enak videz na mobilnih napravah (drawer) kot na namizju */
@media (max-width: 991px) {
  .drawer-category-row a.nav-promo-badge {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px;
    position: relative; overflow: hidden; width: 100%;
    background: linear-gradient(135deg, #e11d2e, #b3001b) !important;
    color: #ffffff !important; font-size: 13px; font-weight: 700; text-transform: uppercase;
    padding: 10px 14px; border-radius: 999px; border: 2px dashed #ffd76a;
    box-shadow: 0 0 0 2px #c8102e, 0 3px 10px rgba(200, 16, 46, 0.55), inset 0 0 8px rgba(255, 255, 255, 0.25);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35); letter-spacing: .3px; text-decoration: none !important;
  }
  .nav-promo-badge .xmas-ico { display: inline-block; font-size: 15px; line-height: 1; text-shadow: none; }
  .nav-promo-badge .xmas-l { animation: xmasSwing 2.4s ease-in-out infinite; transform-origin: 50% 100%; }
  .nav-promo-badge .xmas-r { animation: xmasBounce 1.8s ease-in-out infinite; }
  .nav-promo-badge .xmas-snow {
    position: absolute; top: -4px; width: 4px; height: 4px; border-radius: 50%;
    background: #fff; opacity: .9; animation: xmasSnow 2.6s linear infinite; pointer-events: none;
  }
  .nav-promo-badge .xmas-snow.s1 { left: 20%; }
  .nav-promo-badge .xmas-snow.s2 { left: 50%; animation-delay: .9s; width: 3px; height: 3px; }
  .nav-promo-badge .xmas-snow.s3 { left: 80%; animation-delay: 1.7s; }
}

/* ===== Product price refined ===== */
.product-buy .product-price{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 18px;font-weight:400}
.product-buy .product-price .discounted-price{order:2;font-size:32px;font-weight:600;letter-spacing:-.3px;line-height:1.1;color:#7c3aed;font-variant-numeric:tabular-nums}
.product-buy .product-price .main-price{order:1;font-size:16px;font-weight:400;color:#94a3b8;text-decoration:line-through;font-variant-numeric:tabular-nums}
.product-buy .product-price .price-unit{order:3;font-size:14px;font-weight:400;color:#64748b;margin-left:-4px}
.product-buy .product-price .price-badge{order:4;font-size:12px;font-weight:600;padding:2px 8px;border-radius:6px;background:#fee2e2;color:#dc2626;letter-spacing:0}
.product-buy .product-price .lowest-price-30d{order:5;flex:0 0 100%;margin-top:4px}
/* Kartica za opis / tehnične podatke izdelka */
.single-product-tab-section .tab-slider-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 12px rgba(15,23,42,.06);overflow:hidden}
.single-product-tab-section .nav-tabs{background:#f8fafc;padding:0 12px}
.single-product-tab-section .tab-content{padding:22px 24px}
@media (max-width:991px){.single-product-tab-section .tab-slider-wrapper{border-radius:10px}.single-product-tab-section .tab-content{padding:16px}}

/* NLB pill fix: logo no longer overlaps installment text; wraps below on narrow cards */
.nlb-installment-pill { flex-wrap: wrap; justify-content: center !important; row-gap: 3px; overflow: visible; border-radius: 18px !important; padding: 5px 10px !important; }
.nlb-installment-pill > div { flex: 0 0 auto !important; }
.nlb-installment-pill > img { flex: 0 0 auto !important; max-width: 100% !important; height: 13px !important; margin: 0 !important; object-fit: contain; }
@media (min-width: 576px) { .nlb-installment-pill { flex-wrap: nowrap; justify-content: space-between !important; border-radius: 50rem !important; } .nlb-installment-pill > img { margin-left: auto !important; max-width: 48% !important; } }

/* Top bar: enough vertical padding above/below badge */
@media (min-width: 992px) {
  .header-top { height: auto !important; min-height: 44px; padding: 8px 0 !important; box-sizing: border-box; }
  .header-top .row { min-height: 28px; }
  .header-top-badge { padding: 4px 12px; line-height: 1.4; }
}

/* Sidebar: lepši seznam kategorij */
.sidebar-area .sidebar ul.product-categories { list-style: none; margin: 0; padding: 0 4px 0 0; max-height: 340px !important; scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.sidebar-area .sidebar ul.product-categories li { list-style: none; margin: 0 0 2px; padding: 0; }
.sidebar-area .sidebar ul.product-categories li::before, .sidebar-area .sidebar ul.product-categories li::after { display: none !important; content: none !important; }
.sidebar-area .sidebar ul.product-categories li a { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border-radius: 8px; color: #334155; font-size: 14px; font-weight: 500; line-height: 1.35; text-decoration: none; transition: background .15s, color .15s, padding-left .15s; }
.sidebar-area .sidebar ul.product-categories li a::before { content: "\f105"; font-family: FontAwesome; font-size: 14px; color: #7c3aed; width: 8px; flex: 0 0 8px; transition: transform .15s; }
.sidebar-area .sidebar ul.product-categories li a:hover { background: #f0fdf7; color: #7c3aed; padding-left: 16px; }
.sidebar-area .sidebar ul.product-categories li a:hover::before { transform: translateX(2px); }
.sidebar-area .sidebar ul.product-categories li a.active { background: #7c3aed; color: #fff; font-weight: 600; }
.sidebar-area .sidebar ul.product-categories li a.active::before { color: #fff; }
/* Filtri: ime + števec v isti vrstici */
.sidebar-area .sidebar h3.facet-title { font-size: 14px; }
.sidebar-area .sidebar ul.facet-list li a { font-size: 13px; padding: 6px 10px; }
.sidebar-area .sidebar ul.facet-list .facet-name { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; }
.sidebar-area .sidebar ul.facet-list .facet-count { flex: 0 0 auto; font-size: 11px; font-weight: 600; color: #64748b; background: #f1f5f9; border-radius: 50rem; padding: 1px 8px; }
.sidebar-area .sidebar ul.facet-list a.active .facet-count { background: rgba(255,255,255,.25); color: #fff; }
/* Filtri: brez bolda, bolj zgoščeno */
.sidebar-area .sidebar ul.facet-list { max-height: 200px !important; padding-right: 2px; }
.sidebar-area .sidebar ul.facet-list li { margin: 0 !important; }
.sidebar-area .sidebar ul.facet-list li a { font-weight: 400 !important; font-size: 13px; line-height: 1.25; padding: 3px 8px !important; gap: 6px; border-radius: 6px; }
.sidebar-area .sidebar ul.facet-list li a:hover { padding-left: 10px !important; }
.sidebar-area .sidebar ul.facet-list li a.active { font-weight: 500 !important; }
.sidebar-area .sidebar ul.facet-list .facet-name { font-weight: 400; }
.sidebar-area .sidebar ul.facet-list .facet-count { font-weight: 400; font-size: 11px; padding: 0 6px; }
.sidebar-area .sidebar ul.facet-list li a::before { font-size: 12px; width: 6px; flex-basis: 6px; }
.sidebar-area .sidebar ul.product-categories:not(.facet-list) li a { font-weight: 400; padding: 5px 10px; }
.sidebar-area .sidebar ul.product-categories:not(.facet-list) li a.active { font-weight: 500; }
.sidebar-area .sidebar { padding-bottom: 12px; }
.sidebar-area .sidebar h3.facet-title { font-weight: 600; margin-bottom: 8px; padding-bottom: 6px; }
/* Top bar: stabilna struktura pri daljših prevodih (IT, DE, ...) */
@media (min-width: 992px) {
  .header-top .row { flex-wrap: nowrap; }
  .header-top .row > .col-6:first-child { flex: 1 1 auto; max-width: none; min-width: 0; width: auto; }
  .header-top .row > .col-6:last-child { flex: 0 0 auto; max-width: none; width: auto; }
  .header-top-badge { max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-block; }
  .header-top-menu ul { flex-wrap: nowrap; gap: 14px; white-space: nowrap; }
  .header-top-menu ul li, .header-top-menu ul li a { white-space: nowrap; flex-shrink: 0; }
  .header-top-menu .lang-switcher { flex-wrap: nowrap; margin-left: 0; }
  .header-top-menu .lang-switcher .lang-link { white-space: nowrap; padding: 2px 6px; font-size: 11px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .header-top-menu ul { gap: 10px; }
  .header-top-menu ul li a i { display: none; }
}
/* Pathway: enak na vseh straneh, enak odmik */
.breadcrumb-area.mb-30 { margin-bottom: 18px !important; margin-top: 14px; }
.breadcrumb-area.mb-50 { margin-top: 14px; }
/* Top bar: simetričen padding zgoraj/spodaj */
@media (min-width: 992px) {
  .header-top { height: auto !important; min-height: 0 !important; padding: 8px 0 !important; box-sizing: border-box; }
  .header-top .container, .header-top .row { display: flex; align-items: center; }
  .header-top .row { min-height: 28px !important; margin-top: 0; margin-bottom: 0; }
  .header-top-badge, .header-top-menu ul, .header-top-menu .lang-switcher { margin-top: 0; margin-bottom: 0; }
  .header-top-badge { padding: 4px 12px !important; line-height: 20px !important; }
  .header-top-menu ul li a { line-height: 20px; }
}

/* Domača stran: newsletter kartica - popravek poravnave obrazca */
.home-newsletter-section .card-body { padding: 40px 48px !important; }
.home-newsletter-form .input-group { display: flex; flex-wrap: nowrap; align-items: center; width: 100%; padding: 5px !important; overflow: hidden; }
.home-newsletter-form .input-group .form-control { flex: 1 1 auto; width: 1%; min-width: 0; height: 48px; background: transparent; }
.home-newsletter-form .input-group-append { margin-left: 0; flex: 0 0 auto; }
.home-newsletter-form .input-group-append .btn { height: 48px; padding: 0 26px; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; border-radius: 50px; }
.home-newsletter-form .input-group-append .btn:hover { background: #0f172a !important; transform: translateY(-1px); }
@media (max-width: 575.98px) {
  .home-newsletter-section .card-body { padding: 28px 20px !important; }
  .home-newsletter-form .input-group-append .btn { padding: 0 16px; }
}

/* Top bar: desni meni (Blog, O nas, ...) naj ne skače ob odštevanju */
@media (min-width: 992px) {
  .header-top .row > .col-6:last-child { margin-left: auto; padding-left: 24px; }
  .header-top .row > .col-6:first-child { flex: 0 1 auto; }
  .header-top-badge { font-variant-numeric: tabular-nums; min-width: 420px; }
  .header-top-badge .delivery-countdown { display: inline-block; min-width: 118px; text-align: left; font-variant-numeric: tabular-nums; }
}

/* Hero slideshow (nakljucni izdelki) */
.home-hero-card { overflow: hidden; }
.hero-slider { position: relative; background: #fff; border: 1px solid #e2e8f0; border-radius: 20px; box-shadow: 0 12px 32px rgba(15,23,42,.10); overflow: hidden; }
.hero-slider-track { position: relative; height: 380px; }
.hero-slide { position: absolute; inset: 0; display: flex; flex-direction: column; text-decoration: none !important; color: inherit; opacity: 0; visibility: hidden; transform: scale(.97) translateX(24px); transition: opacity .6s ease, transform .6s ease, visibility .6s; }
.hero-slide.active { opacity: 1; visibility: visible; transform: none; z-index: 1; }
.hero-slide-img { flex: 1 1 auto; min-height: 0; display: flex; align-items: center; justify-content: center; padding: 20px 20px 4px; background: radial-gradient(circle at 50% 40%, #f5f3ff 0%, #fff 70%); }
.hero-slide-img img { max-width: 100%; max-height: 100%; object-fit: contain; transition: transform 6s ease; }
.hero-slide.active .hero-slide-img img { transform: scale(1.06); }
.hero-slide-info { flex: 0 0 auto; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 20px 22px; }
.hero-slide-title { font-size: 14px; font-weight: 600; color: #1e293b; line-height: 1.35; }
.hero-slide-price { text-align: right; white-space: nowrap; display: flex; flex-direction: column; }
.hero-slide-price s { font-size: 12px; color: #94a3b8; }
.hero-slide-price b { font-size: 20px; color: #7c3aed; font-weight: 800; }
.hero-slide-badge { position: absolute; top: 16px; left: 16px; z-index: 2; background: #e11d48; color: #fff; font-weight: 700; font-size: 13px; padding: 4px 12px; border-radius: 999px; box-shadow: 0 4px 10px rgba(225,29,72,.35); }
.hero-slider-nav { position: absolute; top: 42%; z-index: 3; width: 38px; height: 38px; border-radius: 50%; border: 0; background: rgba(255,255,255,.92); color: #1e293b; font-size: 24px; line-height: 1; box-shadow: 0 4px 12px rgba(0,0,0,.15); opacity: 0; transition: opacity .2s, background .2s; cursor: pointer; }
.hero-slider-nav.prev { left: 10px; } .hero-slider-nav.next { right: 10px; }
.hero-slider:hover .hero-slider-nav { opacity: 1; }
.hero-slider-nav:hover { background: #7c3aed; color: #fff; }
.hero-slider-dots { position: absolute; bottom: 6px; left: 0; right: 0; display: flex; justify-content: center; gap: 6px; z-index: 3; }
.hero-slider-dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; background: #cbd5e1; transition: all .3s; cursor: pointer; }
.hero-slider-dots button.active { width: 22px; background: #7c3aed; }
.hero-slider-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: #f1f5f9; z-index: 3; }
.hero-slider-progress span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #7c3aed, #a78bfa); }
@media (max-width: 991.98px) { .hero-slider-track { height: 340px; } .hero-slider-nav { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .hero-slide, .hero-slide-img img { transition: none; } }
/* Alineje v filtrih: majhna zelena pika namesto drobne puscice */
.sidebar-area .sidebar ul.product-categories li a::before { content: "" !important; font-family: inherit !important; width: 6px !important; height: 6px !important; flex: 0 0 6px !important; border-radius: 50%; background: #7c3aed; opacity: .55; transition: transform .15s, opacity .15s; }
.sidebar-area .sidebar ul.product-categories li a:hover::before { opacity: 1; transform: scale(1.25); }
.sidebar-area .sidebar ul.product-categories li a.active::before { background: #fff; opacity: 1; }
/* Hero slider: cistejsi izgled kartice */
.hero-slider-track { height: 400px; }
.hero-slide-img { padding: 28px 28px 12px; background: #fff; }
.hero-slide-img img { border-radius: 14px; box-shadow: 0 6px 18px rgba(15,23,42,.10); }
.hero-slide-info { align-items: flex-end; padding: 12px 22px 34px; border-top: 1px solid #f1f5f9; }
.hero-slide-title { flex: 1 1 auto; min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-weight: 500; font-size: 14px; }
.hero-slide-price b { font-size: 22px; }
.hero-slider-dots { bottom: 12px; }
.hero-slider-progress { height: 4px; }
@media (max-width: 991.98px) { .hero-slider-track { height: 370px; } }
.hero-slide-info { padding-bottom: 10px; border-top: 0; }
.hero-slide-cta { flex: 0 0 auto; padding: 0 22px 34px; display: block; }
.hero-cta-btn { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 11px 18px; border-radius: 999px; background: linear-gradient(135deg, #7c3aed, #00a06c); color: #fff; font-weight: 700; font-size: 14px; box-shadow: 0 6px 14px rgba(124,58,237,.28); transition: transform .15s, box-shadow .15s, background .15s; }
.hero-cta-btn i { transition: transform .15s; }
.hero-slide:hover .hero-cta-btn { background: linear-gradient(135deg, #6d28d9, #7c3aed); box-shadow: 0 8px 18px rgba(124,58,237,.38); transform: translateY(-1px); }
.hero-slide:hover .hero-cta-btn i { transform: translateX(3px); }
.hero-slider-track { height: 450px; }
@media (max-width: 991.98px) { .hero-slider-track { height: 420px; } }

/* Kartice izdelkov: količina čez celotno širino */
.gf-product .product-qty-group,
.shop-grid-view-product .product-qty-group,
.product-content .product-buy .product-qty-group { display: flex !important; width: 100% !important; max-width: 100% !important; }
.gf-product .product-qty-group .form-control,
.product-content .product-buy .product-qty-group .form-control { flex: 1 1 auto; width: 1%; min-width: 0; }
.gf-product .product-qty-group .input-group-append,
.product-content .product-buy .product-qty-group .input-group-append { flex: 0 0 auto; }
.gf-product .product-qty-group .input-group-text,
.product-content .product-buy .product-qty-group .input-group-text { min-width: 110px; justify-content: center; }

/* ===== Blagovne znamke ===== */
.brand-logo { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; border-radius: 14px; background: #fff; border: 1px solid #e2e8f0; overflow: hidden; }
.brand-logo img { max-width: 78%; max-height: 78%; object-fit: contain; }
.brand-logo-mono { color: #fff; font-weight: 800; letter-spacing: .5px; border: 0; background: linear-gradient(135deg, hsl(var(--bh), 62%, 42%), hsl(calc(var(--bh) + 28), 58%, 32%)); }
.brand-logo-sm { width: 40px; height: 40px; border-radius: 10px; font-size: 14px; }
.brand-logo-lg { width: 88px; height: 88px; font-size: 28px; }
.brand-logo-xl { width: 132px; height: 132px; font-size: 42px; border-radius: 20px; box-shadow: 0 8px 22px rgba(15,23,42,.10); }

.brands-hero { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; background: linear-gradient(135deg, #7c3aed, #4c1d95); color: #fff; border-radius: 16px; padding: 32px 30px; margin-bottom: 18px; }
.brands-hero h1 { color: #fff; font-weight: 800; font-size: 30px; margin: 0 0 6px; }
.brands-hero p { margin: 0; opacity: .9; }
.brands-search { display: flex; align-items: center; background: #fff; border-radius: 999px; padding: 4px 4px 4px 16px; min-width: 320px; max-width: 100%; box-shadow: 0 8px 24px rgba(0,0,0,.15); }
.brands-search i { color: #94a3b8; margin-right: 8px; }
.brands-search input { flex: 1; border: 0; outline: 0; background: transparent; min-width: 0; font-size: 15px; height: 40px; }
.brands-search button { border: 0; background: #1e293b; color: #fff; border-radius: 999px; height: 40px; padding: 0 20px; font-weight: 600; cursor: pointer; }
.brands-search button:hover { background: #0f172a; }

.brands-az { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 24px; }
.brands-az a { min-width: 36px; height: 36px; padding: 0 12px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: #f1f5f9; color: #334155; font-weight: 600; font-size: 14px; text-decoration: none !important; transition: all .15s; }
.brands-az a:hover { background: #ede9fe; color: #7c3aed; }
.brands-az a.active { background: #7c3aed; color: #fff; }

.brand-card { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; height: 100%; padding: 18px 12px; background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; text-decoration: none !important; transition: all .2s; }
.brand-card:hover { border-color: #7c3aed; box-shadow: 0 10px 24px rgba(15,23,42,.10); transform: translateY(-3px); }
.brand-card-name { font-weight: 700; color: #1e293b; line-height: 1.25; }
.brand-card-count { font-size: 12px; color: #64748b; }
.brand-row { display: flex; align-items: center; gap: 10px; padding: 8px 12px; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; text-decoration: none !important; transition: all .15s; }
.brand-row:hover { border-color: #7c3aed; background: #f5f3ff; }
.brand-row-name { flex: 1; min-width: 0; font-weight: 600; color: #1e293b; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.brand-row-count { font-size: 12px; color: #64748b; background: #f1f5f9; border-radius: 999px; padding: 2px 8px; }

.brand-hero { display: flex; gap: 26px; align-items: center; background: linear-gradient(135deg, #f5f3ff 0%, #ffffff 55%, #f8fafc 100%); border: 1px solid #e2e8f0; border-radius: 18px; padding: 28px; margin-bottom: 20px; }
.brand-hero h1 { font-size: 32px; font-weight: 800; color: #1e293b; margin: 0 0 8px; }
.brand-hero-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.brand-hero-meta span { background: #ede9fe; color: #7c3aed; border-radius: 999px; padding: 3px 12px; font-size: 13px; font-weight: 600; }
.brand-hero-meta i { margin-right: 4px; }
.brand-hero-desc { color: #475569; font-size: 15px; line-height: 1.65; margin: 0; max-width: 820px; }
.brand-cats { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 20px; }
.brand-cats-label { font-weight: 600; color: #475569; margin-right: 4px; }
.brand-chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 14px; border-radius: 999px; background: #f1f5f9; color: #334155; font-size: 13px; font-weight: 600; text-decoration: none !important; transition: all .15s; }
.brand-chip small { color: #64748b; font-weight: 500; }
.brand-chip:hover { background: #ede9fe; color: #7c3aed; }
.brand-chip.active { background: #7c3aed; color: #fff; }
.brand-chip.active small { color: rgba(255,255,255,.8); }
.brand-sort select { border: 1px solid #e2e8f0; border-radius: 10px; padding: 6px 12px; background: #fff; font-size: 14px; }
.brand-logo-strip { display: flex; flex-wrap: wrap; gap: 14px; }
@media (max-width: 767.98px) {
  .brands-hero { padding: 22px 18px; } .brands-hero h1 { font-size: 24px; } .brands-search { min-width: 0; width: 100%; }
  .brand-hero { flex-direction: column; text-align: center; padding: 22px 16px; } .brand-hero-meta { justify-content: center; } .brand-hero h1 { font-size: 26px; }
  .brand-logo-xl { width: 108px; height: 108px; }
}
/* Hero slider: slika čez cel blok kot banner */
.hero-slider { background: #0f172a; }
.hero-slider-track { height: 420px; }
.hero-slide-img { position: absolute !important; inset: 0; padding: 0 !important; background: #0f172a !important; z-index: 0; display: block !important; }
.hero-slide-img img { width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; border-radius: 0 !important; box-shadow: none !important; }
.hero-slide::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(15,23,42,.18) 0%, rgba(15,23,42,0) 30%, rgba(15,23,42,.55) 62%, rgba(15,23,42,.92) 100%); }
.hero-slide-badge { z-index: 3; box-shadow: 0 4px 12px rgba(225,29,72,.4); }
.hero-slide-info { position: relative; z-index: 2; margin-top: auto; border-top: 0 !important; padding: 0 26px 12px !important; align-items: flex-end; }
.hero-slide-title { color: #fff !important; font-size: 17px; font-weight: 700; text-shadow: 0 2px 8px rgba(0,0,0,.5); }
.hero-slide-price s { color: rgba(255,255,255,.7); }
.hero-slide-price b { color: #fff !important; font-size: 28px !important; text-shadow: 0 2px 8px rgba(0,0,0,.5); }
.hero-slide-cta { position: relative; z-index: 2; padding: 0 26px 38px !important; }
.hero-cta-btn { backdrop-filter: blur(4px); }
.hero-slider-dots button { background: rgba(255,255,255,.5); }
.hero-slider-dots button.active { background: #fff; }
.hero-slider-progress { background: rgba(255,255,255,.2); }
@media (max-width: 991.98px) { .hero-slider-track { height: 380px; } }
/* Kartice oddelkov: cover slika in poenotene velikosti pisave */
.home-cat-card .home-cat-img-wrap { height: 170px; padding: 0 !important; background: #f1f5f9; position: relative; }
.home-cat-card .home-cat-img { width: 100%; height: 100%; object-fit: cover !important; display: block; }
.home-cat-card .home-cat-img-wrap::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(15,23,42,0) 55%, rgba(15,23,42,.18) 100%); }
.home-cat-card .home-cat-body { padding: 16px 18px 18px; }
.home-cat-card .home-cat-title { font-size: 17px !important; line-height: 1.3; font-weight: 700; margin-bottom: 10px; }
.home-cat-card .home-cat-sublinks li { margin-bottom: 6px; }
.home-cat-card .home-cat-sublinks li a { font-size: 14px !important; line-height: 1.4; }
.home-cat-card .home-cat-cta { font-size: 14px !important; font-weight: 700; }

/* Top bar: badge levo, vse ostalo desno; enak padding zgoraj/spodaj */
@media (min-width: 992px) {
  .header-top { padding: 0 !important; height: 44px !important; min-height: 44px !important; display: flex !important; align-items: center !important; }
  .header-top > .container { display: flex; align-items: center; height: 100%; }
  .header-top .row { width: 100%; margin: 0 !important; justify-content: space-between; align-items: center !important; min-height: 0 !important; }
  .header-top .row > [class*="col-"] { display: flex; align-items: center; padding-top: 0; padding-bottom: 0; }
  .header-top .row > .col-6:last-child { margin-left: auto; justify-content: flex-end; }
  .header-top-badge { display: inline-flex !important; align-items: center; padding: 0 14px !important; height: 28px; line-height: 1 !important; vertical-align: middle; }
  .header-top-menu, .header-top-menu ul { display: flex; align-items: center; justify-content: flex-end; }
  .header-top-menu ul li { display: flex; align-items: center; }
}

/* Top bar badge: icon/text starts flush with logo left edge */
@media (min-width: 992px) {
  .header-top-badge { background: transparent !important; padding-left: 0 !important; margin-left: 0 !important; min-width: 0 !important; }
  .header-top .row > .col-6:first-child { padding-left: 15px; }
}

/* Naše trgovine - logotipi čez celotno širino, centrirano */
.footer-our-stores{width:100%;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);}
.footer-our-stores .footer-nav-title{display:inline-block;text-align:center;}
.footer-our-stores .footer-nav-title::after{margin-left:auto;margin-right:auto;margin-bottom:14px;}
.footer-our-stores-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;}
.footer-our-stores-logos a{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:10px;padding:10px 20px;min-height:60px;transition:transform .2s;}
.footer-our-stores-logos a:hover{transform:translateY(-2px);}
.footer-our-stores-logos img{height:40px;width:auto;max-width:100%;}

/* Header: poenotena tipografija Prijava / Košarica */
.header-user-btn .user-meta small,
.cart-label-title {
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: var(--sn-text-muted) !important;
}
.header-user-btn .user-meta b,
.cart-label-amount {
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: var(--sn-dark) !important;
}
.header-user-btn .user-meta b {
  text-transform: uppercase !important;
  max-width: 120px;
}

/* Desktop header: actions group never overlaps search (admin button) */
@media (min-width: 992px) {
  .header-bottom.header-sticky > .container > .row { flex-wrap: nowrap; }
  .header-bottom.header-sticky > .container > .row > .col-lg-7 { flex: 1 1 0; min-width: 0; max-width: none; }
  .header-bottom.header-sticky > .container > .row > .col-lg-3 { flex: 0 0 auto; width: auto; max-width: none; }
  .header-bottom .header-actions-group { gap: 8px; flex-wrap: nowrap; }
}
