/* ========= Levincia Store Theme ========= */
:root {
  --nm-bg:#0b0f14;
  --nm-bg-soft:#10161d;
  --nm-panel:#111821ee;
  --nm-panel-2:#0d141be6;

  /* Levincia blues */
  --nm-emerald:#2DA7CE;      /* Primary blue */
  --nm-emerald-600:#1C7CA3;  /* Darker mid-blue */
  --nm-emerald-700:#115A7A;  /* Deep trim */

  /* Diamond cyan palette */
  --nm-gold:#A8E6FF;
  --nm-gold-600:#66C9F4;
  --nm-gold-700:#DDF7FF;

  --nm-text:#dce7f8;
  --nm-muted:#9fb3cc;

  --nm-border:#1e2a37;
  --nm-shadow: 0 6px 30px rgba(0,0,0,.35);

  --radius-lg:16px;
  --radius-md:12px;
  --radius-sm:8px;
}

/* Base */
.nm-body {
  margin:0; padding:0;
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:
    radial-gradient(1100px 600px at 80% -10%, rgba(45,167,206,0.08), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(168,230,255,0.06), transparent 60%),
    var(--nm-bg) url('/img/Levincia-bg.jpg') center top / cover no-repeat fixed;
  color:var(--nm-text);
  text-shadow: 0 1px 2px rgba(0,0,0,.5);
}

/* Layout helpers */
.nm-container { width:min(1200px, 92%); margin-inline:auto; }
.nm-page { padding: 28px 0 48px; }
.nm-grid { display:grid; grid-template-columns: 320px minmax(0,1fr); gap: 22px; }
.nm-left { display:flex; flex-direction:column; gap:22px; }
.nm-right { min-width:0; }

/* Header / Nav */
.nm-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(10px);
  background: linear-gradient(180deg, rgba(13,20,27,.7), rgba(13,20,27,.4));
  border-bottom:1px solid var(--nm-border);
}
.nm-header__inner{
  display:flex; align-items:center; justify-content:space-between;
  min-height:72px;
}
.nm-brand{display:flex; align-items:center; gap:.6rem; color:var(--nm-text); text-decoration:none}
.nm-brand__logo{
  width:28px; height:28px; border-radius:50%;
  background: radial-gradient(circle at 40% 40%, var(--nm-emerald), #0b2f3f 70%);
  filter: drop-shadow(0 0 8px rgba(45,167,206,.55));
}
.nm-brand__text{letter-spacing:.5px; font-weight:600}
.nm-nav{display:flex; align-items:center; gap:1.2rem}
.nm-nav__list{display:flex; gap:.8rem; list-style:none; margin:0; padding:0}
.nm-nav__link{
  display:inline-block; padding:.55rem .85rem; border-radius:10px; text-decoration:none;
  color:var(--nm-muted); transition: 200ms ease;
}
.nm-nav__link:hover{color:#fff; background:rgba(255,255,255,.05)}
.nm-nav__link--active{color:#fff; background:rgba(255,255,255,.08)}
.nm-nav__cta{margin-left:.25rem}
.nm-burger{display:none; background:transparent; border:0; padding:.5rem; cursor:pointer}
.nm-burger span{display:block; width:22px; height:2px; margin:5px 0; background:#cbd7ea}

/* Mobile drawer */
.nm-mobile{
  display:none; flex-direction:column; gap:.6rem; padding:1rem 1.2rem;
  background:var(--nm-panel);
  border-bottom:1px solid var(--nm-border);
}
.nm-mobile a{
  color:var(--nm-text); text-decoration:none; padding:.75rem 1rem; border-radius:10px;
  background:rgba(255,255,255,.03); border:1px solid var(--nm-border);
}
.nm-mobile a.active{outline:2px solid rgba(168,230,255,.6)}
.nm-mobile.open{display:flex}

/* Hero (small) */
.nm-hero{position:relative; display:grid; place-items:center; text-align:center}
.nm-hero--sm{min-height: 42vh}
.nm-hero__bg{
  position:absolute; inset:0;
  background:
    url('/img/Levincia-bg.jpg') center/cover no-repeat,
    radial-gradient(ellipse at center, rgba(0,0,0,.35), rgba(0,0,0,.9) 70%);
  z-index:-2;
}
.nm-hero__overlay{
  position:absolute; inset:0;
  background: radial-gradient(1000px 600px at 50% 40%, rgba(45,167,206,.14), transparent 60%),
              linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.75));
  z-index:-1;
}
.nm-hero__content{padding:60px 0}
.nm-hero__title{font-size: clamp(34px, 5vw, 56px); margin:0 0 .5rem}
.nm-hero__title span{color:var(--nm-emerald)}
.nm-hero__subtitle{color:var(--nm-muted); max-width:780px; margin-inline:auto}
.nm-hero__ctas{margin-top:1.1rem; display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center}

/* Panels */
.nm-panel{
  background: linear-gradient(180deg, var(--nm-panel), var(--nm-panel-2));
  border:1px solid var(--nm-border); border-radius: var(--radius-lg);
  box-shadow: var(--nm-shadow);
}
.nm-panel__header{
  padding:14px 16px; border-bottom:1px solid var(--nm-border);
  display:flex; align-items:center; justify-content:space-between;
}
.nm-panel__title{margin:0; font-size:1rem}
.nm-panel__body{padding:16px}

/* Lists / badges */
.nm-list{display:flex; flex-direction:column; gap:8px}
.nm-list__item{
  display:flex; align-items:center; justify-content:space-between;
  padding:.75rem .9rem; border:1px solid var(--nm-border); border-radius:12px;
  background:rgba(255,255,255,.02); color:var(--nm-text); text-decoration:none;
  transition:180ms ease;
}
.nm-list__item:hover{background:rgba(255,255,255,.05)}
.nm-badge{
  background: linear-gradient(180deg, var(--nm-emerald), var(--nm-emerald-600));
  color:#021a26; font-weight:800; padding:.18rem .5rem; border-radius:999px; font-size:.8rem;
}

/* Buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem; padding:.85rem 1.1rem; border-radius:12px;
  font-weight:700; text-decoration:none; border:1px solid transparent;
  box-shadow: var(--nm-shadow); transition: 140ms ease;
}
.btn:hover{transform: translateY(-1px)}
.btn:active{transform: translateY(0)}
.btn--emerald{
  background: linear-gradient(180deg, var(--nm-emerald), var(--nm-emerald-600));
  color:#021a26; border-color:#115A7A;
}
.btn--gold{
  background: linear-gradient(180deg, var(--nm-gold), var(--nm-gold-600));
  color:#021a26; border-color:#1C7CA3;
}
.btn--outline{
  background:transparent; color:#e7f3ff; border-color:#2a394a;
}
.btn--outline:hover{background:rgba(255,255,255,.06)}
.btn--ghost{
  background:rgba(255,255,255,.04); color:#e7f3ff; border-color:#253243;
}
.btn--ghost:hover{background:rgba(255,255,255,.08)}
.btn--block{display:flex; width:100%}

/* Alerts */
.nm-alert{
  border:1px solid var(--nm-border); border-radius:12px; padding:12px 14px;
  background:rgba(255,255,255,.04); margin-bottom:14px;
}
.nm-alert--danger{border-color:#42222a; background:rgba(255,70,70,.06)}

/* Forms */
input, select, textarea, .form-control {
  background-color:#0f1722; border:1px solid #2a394a; color:#e6f0ff;
  padding:10px 12px; border-radius:10px; width:100%;
}
input:focus, select:focus, textarea:focus, .form-control:focus {
  outline:none; border-color:#1C7CA3; box-shadow:0 0 0 3px rgba(45,167,206,.15);
}

/* Legacy mappings */
.panel, .panel-default { background:transparent; border:none }
.panel .panel-heading, .panel-default .panel-heading { display:none }
.panel .panel-footer, .panel-default .panel-footer { display:none }
.list-group { display:flex; flex-direction:column; gap:8px; }
.list-group-item {
  display:flex; align-items:center; justify-content:space-between;
  padding:.75rem .9rem; border:1px solid var(--nm-border); border-radius:12px;
  background:rgba(255,255,255,.02); color:var(--nm-text); text-decoration:none;
}
.list-group-item .badge, .badge {
  background: linear-gradient(180deg, var(--nm-emerald), var(--nm-emerald-600));
  color:#021a26; font-weight:800; padding:.18rem .5rem; border-radius:999px; font-size:.8rem;
}
.alert { border-radius:12px; border:1px solid var(--nm-border); background:rgba(255,255,255,.04); color:var(--nm-text) }
.alert-danger { border-color:#42222a; background:rgba(255,70,70,.06) }
.btn-primary { background: linear-gradient(180deg, var(--nm-emerald), var(--nm-emerald-600)); border:1px solid #115A7A; color:#021a26; }

/* Product grid */
.product-grid{
  display:grid; gap:18px;
  grid-template-columns: repeat( auto-fill, minmax(240px, 1fr) );
}
.item, .product-card{
  background: linear-gradient(180deg, var(--nm-panel), var(--nm-panel-2));
  border:1px solid var(--nm-border); border-radius:14px; padding:16px;
  text-align:center; transition: 180ms ease; box-shadow: var(--nm-shadow);
}
.item:hover, .product-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 6px 26px rgba(0,0,0,.45);
}
.item img, .product-thumb img{
  width:100%; max-height:180px; object-fit:contain; border-radius:10px; margin-bottom:10px;
}
.item h3, .product-title{ margin:8px 0 6px; font-size:1rem }
.item p, .product-price{ color:var(--nm-muted); margin:0 0 10px }
.quantity-row{ display:flex; gap:8px; justify-content:center; align-items:center }
.quantity{ max-width:72px }

/* Footer */
.nm-footer{
  border-top:1px solid var(--nm-border);
  background: rgba(7,10,15,.9);
}
.nm-footer__grid{
  display:grid; gap:18px; padding:26px 0;
  grid-template-columns: 1fr auto;
}
.nm-footer__copy{grid-column:1 / -1; color:var(--nm-muted); font-size:.9rem}

/* Utilities */
.nm-muted{ color:var(--nm-muted) }
.nm-ul{ margin:0; padding-left:18px }
.nm-ul li{ margin:.25rem 0 }

/* Responsive */
@media (max-width: 980px){
  .nm-grid{ grid-template-columns: 1fr }
}
@media (max-width: 720px){
  .nm-nav__list{ display:none }
  .nm-burger{ display:block }
}
