
:root {
  --ps-bg: #f4f7fb;
  --ps-surface: rgba(255,255,255,.88);
  --ps-surface-strong: #ffffff;
  --ps-border: rgba(15, 23, 42, 0.08);
  --ps-text: #0f172a;
  --ps-text-soft: #5b6475;
  --ps-primary: #2563eb;
  --ps-primary-2: #0f5bd8;
  --ps-dark: #0b1220;
  --ps-accent: #38bdf8;
  --ps-shadow: 0 18px 55px rgba(15, 23, 42, 0.09);
  --ps-shadow-sm: 0 10px 30px rgba(15, 23, 42, 0.07);
  --ps-radius-xl: 28px;
  --ps-radius-lg: 20px;
  --ps-radius-md: 16px;
}

body {
  background: linear-gradient(180deg, #eef4ff 0%, #f7f9fc 180px, #f4f7fb 100%);
  color: var(--ps-text);
}

.u-header__section,
.bg-primary-down-lg,
.u-header {
  background: transparent !important;
}

.u-header-topbar {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important;
  color: #e2e8f0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.u-header-topbar__nav-link,
.topbar-left a {
  color: #e2e8f0 !important;
  font-weight: 600;
  letter-spacing: -.01em;
}

.u-header-topbar__nav-item-border {
  border-right-color: rgba(255,255,255,.12) !important;
}

.bg-primary-down-lg .container > .row {
  margin-top: 22px;
  margin-bottom: 12px;
  padding: 18px 18px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: var(--ps-shadow);
  border-radius: 26px;
  backdrop-filter: blur(16px);
}

.u-header__navbar-brand img {
  height: 46px;
  width: auto;
  object-fit: contain;
}

.u-hamburger {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: #eff6ff;
  border: 1px solid rgba(37, 99, 235, .08);
}

form[action*="search"],
.navbar-search {
  width: 100%;
}

.js-focus-state {
  border-radius: 999px !important;
}

input[type="search"],
input[name="query"],
.u-search-form__input,
.form-control {
  border-radius: 999px !important;
}

.u-search-form,
.input-group,
.u-search-form__input,
form[action*="search"] .form-control {
  min-height: 58px;
}

.u-search-form__input,
form[action*="search"] .form-control,
form[action*="search"] input[type="search"] {
  background: #f8fbff !important;
  border: 1px solid rgba(37, 99, 235, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
  font-size: 1.05rem;
  padding-left: 24px !important;
}

button[type="submit"],
.btn,
.u-header .input-group-append .btn,
form[action*="search"] .btn {
  border-radius: 999px !important;
}

.u-header .input-group-append .btn,
form[action*="search"] button[type="submit"] {
  min-width: 58px;
  background: linear-gradient(135deg, var(--ps-primary) 0%, #38bdf8 100%) !important;
  border: none !important;
  box-shadow: 0 10px 25px rgba(37, 99, 235, .24);
}

.u-header-icons-group .btn,
.u-header-icons-group .dropdown-toggle,
.u-header-icons-group .text-reset,
.u-header__navbar .text-gray-90 {
  color: var(--ps-text) !important;
}

.ps-hero-section {
  padding: 22px 0 8px;
}

.ps-hero-slider,
.ps-hero-slide img {
  border-radius: 32px;
}

.ps-hero-slider {
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(15, 23, 42, .15);
  border: 1px solid rgba(255,255,255,.65);
}

.ps-hero-overlay {
  max-width: 520px;
  left: 34px;
  bottom: 34px;
  padding: 28px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(15, 23, 42, .24), rgba(15, 23, 42, .72));
  backdrop-filter: blur(10px);
}

.ps-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  color: #fff;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  font-size: .75rem;
}

.ps-hero-headline {
  font-size: clamp(1.8rem, 4vw, 3.4rem);
  line-height: 1.02;
  font-weight: 800;
  color: #fff;
  letter-spacing: -.03em;
}

.ps-hero-subtext {
  color: rgba(255,255,255,.82);
  font-size: 1rem;
}

.ps-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 20px;
  border-radius: 999px;
  background: #fff;
  color: var(--ps-text);
  font-weight: 700;
  box-shadow: 0 10px 25px rgba(15, 23, 42, .15);
}

.ps-premium-strip {
  padding: 4px 0 28px;
}

.ps-premium-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.ps-premium-strip__item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 18px;
  background: rgba(255,255,255,.92);
  border: 1px solid var(--ps-border);
  border-radius: 22px;
  box-shadow: var(--ps-shadow-sm);
}

.ps-premium-strip__item strong {
  display: block;
  margin-bottom: 2px;
  font-size: .98rem;
}

.ps-premium-strip__item small {
  color: var(--ps-text-soft);
  display: block;
  font-size: .86rem;
}

.ps-premium-strip__icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: linear-gradient(135deg, #dbeafe 0%, #e0f2fe 100%);
  font-size: 1.3rem;
}

.products-section,
.categories-section {
  position: relative;
}

.products-section .section-header,
.categories-section .section-header {
  margin-bottom: 24px !important;
}

.ps-section-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  margin-bottom: 14px;
  border-radius: 999px;
  background: #e8f1ff;
  color: var(--ps-primary);
  font-weight: 700;
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.section-title {
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  font-weight: 800;
  letter-spacing: -.04em;
  color: var(--ps-dark);
  margin-bottom: 18px;
}

.product-tabs .nav,
.category-tabs .nav {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 8px;
  background: rgba(255,255,255,.8);
  border: 1px solid var(--ps-border);
  border-radius: 999px;
  box-shadow: var(--ps-shadow-sm);
}

.product-tabs .nav-link,
.category-tabs .nav-link,
.u-header__nav-link,
.u-header__sub-menu-nav-link {
  border-radius: 999px !important;
  font-weight: 700;
}

.product-tabs .nav-link,
.category-tabs .nav-link {
  color: var(--ps-text-soft);
  padding: 12px 18px;
  background: transparent;
  border: none;
}

.product-tabs .nav-link.active,
.category-tabs .nav-link.active {
  color: #fff;
  background: linear-gradient(135deg, var(--ps-primary) 0%, #38bdf8 100%);
  box-shadow: 0 10px 22px rgba(37,99,235,.22);
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 20px;
}

.jumia-product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(15, 23, 42, 0.07);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.95));
  box-shadow: var(--ps-shadow-sm);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.jumia-product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 60px rgba(15, 23, 42, .14);
  border-color: rgba(37,99,235,.14);
}

.jumia-product-image {
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(135deg, #f8fafc, #eef5ff);
  min-height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.jumia-product-image img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  transition: transform .28s ease;
}

.jumia-product-card:hover .jumia-product-image img {
  transform: scale(1.04);
}

.jumia-product-info {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 4px 4px;
  flex: 1;
}

.jumia-product-category {
  color: var(--ps-primary);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.jumia-product-title a {
  color: var(--ps-dark);
  font-size: 1.02rem;
  line-height: 1.3;
  font-weight: 800;
  letter-spacing: -.02em;
}

.jumia-product-description {
  color: var(--ps-text-soft);
  min-height: 38px;
}

.jumia-current-price {
  display: inline-block;
  font-size: 1.28rem;
  font-weight: 800;
  color: var(--ps-dark);
  letter-spacing: -.03em;
}

.jumia-original-price {
  color: #94a3b8;
}

.jumia-discount-percent,
.ps-stock-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .02em;
}

.jumia-discount-percent {
  background: #eff6ff;
  color: var(--ps-primary);
}

.ps-stock-pill {
  margin-right: 8px;
  background: #ecfdf3;
  color: #0f9f61;
}

.ps-product-meta {
  padding-top: 6px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.jumia-product-actions {
  margin-top: auto;
  padding-top: 10px;
}

.jumia-btn {
  min-height: 46px;
  border-radius: 14px !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  background: #fff;
  color: var(--ps-dark);
  font-weight: 700;
  box-shadow: none;
}

.jumia-btn-primary {
  background: linear-gradient(135deg, var(--ps-primary) 0%, #38bdf8 100%) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 12px 24px rgba(37,99,235,.22);
}

.jumia-btn-secondary {
  background: #eff6ff !important;
  color: var(--ps-primary) !important;
  border-color: rgba(37,99,235,.14) !important;
}

.categories-section {
  background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%) !important;
}

.cookie-consent-banner,
.cookie-banner,
#cookie-banner {
  background: rgba(15, 23, 42, 0.9) !important;
  backdrop-filter: blur(16px);
  border-top: 1px solid rgba(255,255,255,.08);
}

.accept-cookies,
#accept-cookies,
.cookie-btn-accept {
  background: linear-gradient(135deg, var(--ps-primary) 0%, #38bdf8 100%) !important;
  border: none !important;
  color: #fff !important;
  border-radius: 14px !important;
}

.decline-cookies,
#decline-cookies,
.cookie-btn-decline {
  border-radius: 14px !important;
}

@media (max-width: 1199.98px) {
  .bg-primary-down-lg .container > .row {
    padding: 14px;
    border-radius: 22px;
  }

  .ps-premium-strip__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .u-header-topbar {
    display: none !important;
  }

  .bg-primary-down-lg .container > .row {
    margin-top: 12px;
    padding: 12px;
    border-radius: 20px;
  }

  .u-header__navbar-brand img {
    height: 34px;
  }

  .u-hamburger {
    width: 46px;
    height: 46px;
    border-radius: 14px;
  }

  .ps-hero-section {
    padding-top: 12px;
  }

  .ps-hero-slider,
  .ps-hero-slide img {
    border-radius: 24px;
  }

  .ps-hero-overlay {
    left: 16px;
    right: 16px;
    bottom: 16px;
    padding: 18px;
    max-width: none;
    border-radius: 18px;
  }

  .ps-premium-strip__grid,
  .products-grid {
    grid-template-columns: 1fr 1fr;
    gap: 14px;
  }

  .ps-premium-strip__item {
    padding: 14px;
    border-radius: 18px;
  }

  .section-title {
    font-size: 1.65rem;
  }

  .product-tabs .nav,
  .category-tabs .nav {
    justify-content: flex-start;
    overflow-x: auto;
    white-space: nowrap;
    flex-wrap: nowrap;
    width: 100%;
    padding: 6px;
  }

  .jumia-product-card {
    padding: 10px;
    border-radius: 18px;
  }

  .jumia-product-image,
  .jumia-product-image img {
    min-height: 150px;
    height: 150px;
    border-radius: 16px;
  }

  .jumia-product-title a {
    font-size: .95rem;
  }

  .jumia-current-price {
    font-size: 1.08rem;
  }

  .jumia-btn {
    min-height: 42px;
    border-radius: 12px !important;
  }
}

@media (max-width: 575.98px) {
  .ps-premium-strip__grid,
  .products-grid {
    grid-template-columns: 1fr;
  }
}


/* Premium pass: product detail, cart/checkout, auth, dashboards */
.premium-page-hero{padding:12px 0 2px}
.premium-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#e8f1ff;color:#0f5bd8;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:14px}
.premium-primary-btn,.premium-secondary-btn,.premium-cta-btn{border:none !important;border-radius:999px !important;font-weight:800 !important;letter-spacing:-.01em;box-shadow:0 12px 28px rgba(15,23,42,.12)}
.premium-primary-btn,.premium-cta-btn{background:linear-gradient(135deg,#2563eb 0%,#38bdf8 100%) !important;color:#fff !important}
.premium-cta-btn--alt{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%) !important}
.premium-secondary-btn{background:#eef4ff !important;color:#0f172a !important}

.premium-product-page .breadcrumb,.premium-cart-page .breadcrumb,.premium-checkout-page .breadcrumb{background:rgba(255,255,255,.72);padding:10px 14px;border-radius:999px;display:inline-flex;border:1px solid rgba(15,23,42,.06)}
.premium-product-shell,.premium-cart-shell,.premium-checkout-shell{padding-bottom:28px}
.premium-product-gallery .main-image img{width:100%;max-height:560px;object-fit:cover;border-radius:28px;border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 60px rgba(15,23,42,.12);background:#fff}
.premium-product-gallery .thumbnail-images{display:flex;gap:12px;flex-wrap:wrap}
.premium-product-gallery .thumbnail-images img{width:92px;height:92px;object-fit:cover;border-radius:18px;border:1px solid rgba(15,23,42,.08);padding:6px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.08)}
.premium-product-panel{padding:28px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.74);border-radius:28px;box-shadow:0 22px 55px rgba(15,23,42,.09);backdrop-filter:blur(12px)}
.premium-product-panel .product-title{font-size:clamp(1.8rem,3vw,2.75rem);line-height:1.02;font-weight:900;letter-spacing:-.04em;margin-bottom:14px}
.premium-product-price .current-price,.premium-product-price .discounted-price{font-size:2rem !important;font-weight:900;letter-spacing:-.03em;color:#0f172a !important}
.premium-product-price .original-price{font-size:1rem;font-weight:700;margin-right:10px}
.premium-buy-box{margin-top:22px;padding:18px;border-radius:22px;background:linear-gradient(180deg,#f8fbff 0%,#eff6ff 100%);border:1px solid rgba(37,99,235,.12)}
.premium-buy-box .product-action-row{display:flex;gap:12px;flex-wrap:wrap}.premium-buy-box .product-action-row .btn{min-height:52px;padding:0 22px}
.premium-tabs{gap:10px;border:none}.premium-tabs .nav-link{border:none;border-radius:999px;padding:12px 18px;background:#fff;color:#475569;font-weight:800;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.premium-tabs .nav-link.active{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:#fff}
.premium-spec-table{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 12px 30px rgba(15,23,42,.06)}
.premium-spec-table th{width:220px;color:#64748b;font-weight:800}
.premium-section-title{font-size:1.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:20px}

.premium-cart-page .cart-table,.premium-checkout-page .premium-summary-card,.premium-checkout-page .premium-billing-card,.premium-auth-card,.premium-dash-card,.premium-dash-shell{background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.72);border-radius:28px;box-shadow:0 22px 55px rgba(15,23,42,.09);backdrop-filter:blur(12px)}
.premium-cart-page .cart-table{padding:16px 16px 2px;overflow:hidden}
.premium-table{margin-bottom:0}.premium-table thead th{border-top:none;border-bottom:1px solid rgba(15,23,42,.08);color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800}
.premium-table tbody td{vertical-align:middle;border-color:rgba(15,23,42,.06)}
.premium-icon-btn{width:40px;height:40px;border-radius:12px !important}.premium-qty-input{border-radius:14px !important;min-height:44px;text-align:center;font-weight:800}
.premium-soft-danger{border-radius:999px !important;padding-inline:16px !important}
.premium-order-summary-box{padding:18px 18px 8px;border-radius:22px;background:linear-gradient(180deg,#f8fbff 0%,#f3f7ff 100%);border:1px solid rgba(37,99,235,.08)}

.premium-checkout-page .premium-summary-column .pl-lg-3{padding-left:0 !important}.premium-summary-card{padding:14px}.premium-summary-card .section-title,.premium-billing-card .section-title{font-size:1.4rem;font-weight:900;letter-spacing:-.03em}
.premium-billing-card{padding:28px}.premium-billing-card .form-control,.premium-auth-card .form-control{min-height:54px;border-radius:18px !important;border:1px solid rgba(15,23,42,.09) !important;background:#f8fbff !important;box-shadow:none !important}
.premium-billing-card textarea.form-control{min-height:120px;border-radius:22px !important}.premium-billing-card label.form-label{font-weight:800;color:#334155;margin-bottom:10px}
.premium-checkout-page .btn-outline-primary,.premium-checkout-page .btn-outline-success{border-radius:999px !important}

.premium-auth-page{padding:18px 0 34px}.premium-auth-shell{max-width:760px}.premium-auth-card{padding:30px 28px !important}.premium-auth-header h2{font-size:2rem;font-weight:900;letter-spacing:-.04em}.premium-auth-header p{color:#64748b;font-size:1rem}
.premium-auth-page .input-group{background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 24px rgba(15,23,42,.05)}
.premium-auth-page .input-group-text{background:transparent;border:none;color:#64748b;padding-left:18px}.premium-auth-page .form-control{border:none !important;background:transparent !important;padding-left:8px !important}
.premium-auth-page .password-toggle-btn{border:none;background:transparent;padding:0 18px;color:#64748b}.premium-auth-subcard{margin-top:14px;background:linear-gradient(180deg,#f9fbff 0%,#f3f7ff 100%) !important;border:1px solid rgba(37,99,235,.08) !important;border-radius:22px !important}

.premium-dashboard-page .native-card,.premium-dashboard-page .card{border:none;overflow:hidden}.premium-dashboard-page .card-header{background:transparent;border-bottom:1px solid rgba(15,23,42,.06);padding:18px 22px}.premium-dashboard-page .card-body{padding:20px 22px}.premium-dashboard-page .table thead th{border-top:none;color:#64748b;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.premium-dashboard-page .table td{border-color:rgba(15,23,42,.05)}
.premium-customer-dashboard .ps-avatar{width:72px;height:72px;border:3px solid rgba(255,255,255,.9);box-shadow:0 10px 24px rgba(15,23,42,.12)}.premium-customer-dashboard .ps-notice{margin-top:14px;padding:12px 14px;border-radius:16px;background:#eff6ff;color:#1e3a8a;border:1px solid rgba(37,99,235,.08)}
.premium-customer-dashboard .pagination .page-link{border:none;border-radius:12px;margin-inline:3px;color:#334155;background:#fff;box-shadow:0 6px 16px rgba(15,23,42,.05)}.premium-customer-dashboard .pagination .active .page-link{background:linear-gradient(135deg,#2563eb 0%,#38bdf8 100%);color:#fff}
.premium-staff-dashboard .ps-tabbar{display:flex;gap:10px;flex-wrap:wrap}.premium-staff-dashboard .ps-tab{border-radius:999px;background:#eef4ff;color:#0f172a;font-weight:800;padding:10px 16px;border:none}.premium-staff-dashboard .ps-tab:hover{background:#dbeafe}
.premium-reseller-wrap .top{padding:16px 18px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.72);border-radius:24px;box-shadow:0 18px 44px rgba(15,23,42,.09)}.premium-reseller-wrap .btnx{border-radius:999px;padding:10px 14px;background:#eef4ff;border-color:rgba(37,99,235,.08)}
.premium-reseller-grid .card{padding:20px}.premium-reseller-grid .kpi .v{font-size:2rem;letter-spacing:-.04em}

@media (max-width: 767.98px){
  .premium-product-panel,.premium-auth-card,.premium-billing-card,.premium-summary-card,.premium-cart-page .cart-table{padding:18px 16px !important;border-radius:22px}
  .premium-product-gallery .main-image img{border-radius:22px;max-height:420px}
  .premium-tabs{overflow:auto;flex-wrap:nowrap;padding-bottom:8px}.premium-tabs .nav-link{white-space:nowrap}
  .premium-buy-box .product-action-row{flex-direction:column}.premium-buy-box .product-action-row .btn{width:100%}
  .premium-page-hero h1,.premium-auth-header h2{font-size:1.7rem}
}
