/* Nassif Store — front-end styles. Uses the Nassif Digital theme's colours, with fallbacks for any theme. */

/* ---------- code pages (verify / reset) ---------- */
.nds-card{max-width:520px;margin:0 auto;border:1px solid var(--line,#2a2620);border-radius:18px;background:var(--surface,#131217);padding:28px;color:var(--cream,#F1E9D8)}
.nds-card h2{font-size:26px;margin:0 0 10px}
.nds-card p{color:#d7cfbe;line-height:1.8;margin:0 0 6px}
.nds-card a{color:var(--gold-hi,#E7C877)}
.nds-form{display:grid;gap:8px;margin-top:18px}
.nds-form label{font-size:14px;color:#cabfa9;margin-top:6px}
.nds-form input{width:100%;background:#100f13;color:var(--cream,#F1E9D8);border:1px solid var(--line,#2a2620);border-radius:12px;padding:12px 14px;font-size:16px;font-family:inherit}
.nds-form input:focus{outline:none;border-color:var(--gold,#C9A24B)}
.nds-form .button{margin-top:12px}
.nds-code{letter-spacing:.5em;font-size:24px!important;text-align:center;font-weight:700}
.nds-alert{border-radius:12px;padding:12px 14px;margin:14px 0 4px;font-size:15px;line-height:1.7;border:1px solid}
.nds-ok{border-color:#1f9d55;background:rgba(31,157,85,.12)}
.nds-err{border-color:#e0525a;background:rgba(224,82,90,.12)}
.nds-link{background:none;border:0;color:var(--gold-hi,#E7C877);cursor:pointer;padding:6px 0;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.nds-resend{margin-top:6px}
.nds-small{font-size:14px;margin-top:14px!important}

/* ---------- guest reminder above the login form ---------- */
.nds-guest-note{border:1px solid #1f9d55;background:rgba(31,157,85,.1);border-radius:14px;padding:14px 16px;margin:0 0 22px;color:var(--cream,#F1E9D8);line-height:1.8}
.nds-guest-note a{color:var(--gold-hi,#E7C877);text-decoration:underline}

/* ---------- order success ---------- */
.nds-wa-box{text-align:center;border:1px solid var(--gold,#C9A24B);border-radius:18px;background:var(--surface,#131217);padding:30px 22px;margin:0 0 30px;color:var(--cream,#F1E9D8)}
.nds-wa-box h2{font-size:26px;margin:12px 0 8px}
.nds-wa-box p{color:#d7cfbe;margin:0 0 18px}
.nds-wa-ok{width:64px;height:64px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:rgba(31,157,85,.15);color:#3ccf7b;border:1px solid #1f9d55}
.woocommerce .nds-wa-box .nds-wa-btn,.nds-wa-btn{background:#1f9d55!important;color:#fff!important;box-shadow:0 8px 24px rgba(31,157,85,.3)!important;font-size:17px!important;padding:14px 28px!important}
.nds-wa-count{font-size:14px;color:var(--muted,#8C8474)!important;margin:16px 0 0!important}

/* ---------- shop category chips (sticky) ---------- */
.nds-chips{position:sticky;top:84px;z-index:5;display:flex;gap:8px;flex-wrap:wrap;padding:10px 0;margin:0 0 20px;background:var(--bg,#0B0B0D)}
.nds-chips a{border:1px solid var(--line,#2a2620);border-radius:999px;padding:8px 16px;color:#cabfa9;font-size:14px;transition:border-color .25s,color .25s}
.nds-chips a.on,.nds-chips a:hover{border-color:var(--gold,#C9A24B);color:var(--gold-hi,#E7C877)}
body.admin-bar .nds-chips{top:116px}

/* ---------- badges ---------- */
.badge{display:inline-block;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700}
.badge-gold{background:rgba(11,11,13,.82);border:1px solid var(--gold,#C9A24B);color:var(--gold-hi,#E7C877)}
.badge-navy{background:#1e3a8a;border:1px solid #3b5bb5;color:#dbeafe}
.badge-red{background:#b91c1c;border:1px solid #e0525a;color:#fee2e2}
.woocommerce ul.products li.product .badge{position:absolute;top:12px;right:12px;z-index:2}
.woocommerce div.product .summary>.badge{margin-bottom:12px}

/* ---------- newsletter ---------- */
.nds-nl{max-width:var(--maxw,1280px);margin:0 auto;padding:clamp(40px,7vw,90px) clamp(16px,4vw,48px)}
.nds-nl-in{border:1px solid var(--line,#2a2620);border-radius:22px;background:radial-gradient(120% 140% at 50% 120%,rgba(201,162,75,.14),transparent 60%),var(--surface,#131217);padding:clamp(28px,5vw,54px);text-align:center}
.nds-nl h2{font-size:clamp(28px,4vw,46px);margin:0 0 10px}
.nds-nl p{color:var(--muted,#8C8474);max-width:520px;margin:0 auto 24px;line-height:1.8}
.nds-nl-form{display:flex;gap:10px;max-width:520px;margin:0 auto}
.nds-nl-form input[type=email]{flex:1;min-width:0;background:#100f13;color:var(--cream,#F1E9D8);border:1px solid var(--line,#2a2620);border-radius:12px;padding:14px 18px;font-size:16px;font-family:inherit}
.nds-nl-form input[type=email]:focus{outline:none;border-color:var(--gold,#C9A24B)}
.nds-nl-form .button{background:var(--gold-grad,#C9A24B);color:#0B0B0D;border:0;border-radius:12px;padding:14px 26px;font-weight:700;font-family:inherit;cursor:pointer}
@media(max-width:768px){.nds-nl-form{flex-direction:column}.nds-nl-form input[type=email]{text-align:center}.nds-nl-form .button{width:100%}}
.nds-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

/* ---------- welcome modal ---------- */
.nds-wlc{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:16px}
.nds-wlc[hidden]{display:none}
.nds-wlc-back{position:absolute;inset:0;background:rgba(0,0,0,.66);backdrop-filter:blur(3px)}
.nds-wlc-box{position:relative;width:100%;max-width:420px;background:var(--surface,#131217);border:1px solid var(--gold,#C9A24B);border-radius:22px;padding:34px 26px 24px;text-align:center;color:var(--cream,#F1E9D8);box-shadow:0 30px 80px rgba(0,0,0,.6);animation:ndsIn .35s ease-out}
.nds-wlc-box h2{font-size:26px;margin:14px 0 8px}
.nds-wlc-box p{color:#d7cfbe;line-height:1.8;margin:0 0 8px}
.nds-wlc-gift{color:var(--gold-hi,#E7C877)!important;font-weight:700;border:1px dashed var(--gold,#C9A24B);border-radius:12px;padding:10px 12px;margin:14px 0 4px!important}
.nds-wlc-ic{width:64px;height:64px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:rgba(201,162,75,.12);color:var(--gold-hi,#E7C877);border:1px solid var(--gold,#C9A24B)}
.nds-wlc-x{position:absolute;top:12px;left:12px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line,#2a2620);background:transparent;color:#cabfa9;cursor:pointer;display:grid;place-items:center}
.nds-wlc-x:hover{border-color:var(--gold,#C9A24B);color:var(--gold-hi,#E7C877)}
.nds-wlc-btns{display:grid;gap:10px;margin:18px 0 8px}
.nds-wlc-btns .button{display:block;background:var(--gold-grad,#C9A24B);color:#0B0B0D;border-radius:12px;padding:14px;font-weight:700;text-decoration:none}
.nds-wlc-alt{display:block;border:1px solid var(--gold,#C9A24B);color:var(--gold-hi,#E7C877);border-radius:12px;padding:13px;font-weight:700;text-decoration:none}
body.nds-noscroll{overflow:hidden}
@keyframes ndsIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}

/* ---------- toast ---------- */
.nds-toast{position:fixed;bottom:96px;left:50%;transform:translateX(-50%);z-index:9998;max-width:calc(100% - 32px);background:var(--surface,#131217);border:1px solid var(--gold,#C9A24B);color:var(--cream,#F1E9D8);padding:12px 20px;border-radius:12px;box-shadow:0 14px 40px rgba(0,0,0,.5);transition:opacity .4s;font-size:15px}
.nds-toast.out{opacity:0;pointer-events:none}

/* ---------- banners ---------- */
.nds-banners{max-width:var(--maxw,1280px);margin:0 auto;padding:clamp(30px,5vw,60px) clamp(16px,4vw,48px) 0;display:grid;gap:18px}
.nds-bn{position:relative;display:block;overflow:hidden;border-radius:18px;background:var(--surface,#131217);isolation:isolate}
.nds-bn img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
a.nds-bn:hover img{transform:scale(1.04)}
.nds-bn-ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:6px;padding:clamp(16px,3vw,30px);text-shadow:0 2px 14px rgba(0,0,0,.55)}
.nds-bn-ov h3{font-size:clamp(20px,3vw,34px);margin:0;line-height:1.2;color:inherit}
.nds-bn-ov p{margin:0;font-size:clamp(14px,1.6vw,17px);color:inherit;opacity:.92}
.nds-bn-btn{margin-top:8px;display:inline-block;background:var(--gold-grad,#C9A24B);color:#0B0B0D;border-radius:10px;padding:9px 18px;font-weight:700;font-size:14px;text-shadow:none}
.nds-bn-solo{max-width:900px;margin:0 auto;width:100%}
.nds-bn-solo .nds-bn{aspect-ratio:21/8}
.nds-bn-dual{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.nds-bn-dual .nds-bn{aspect-ratio:16/9}
.nds-bn-trio{display:grid;grid-template-columns:2fr 1fr;gap:18px}
.nds-bn-big .nds-bn{height:100%;min-height:320px}
.nds-bn-side{display:grid;gap:18px}
.nds-bn-side .nds-bn{aspect-ratio:16/9}
.nds-bn-rest{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.nds-bn-rest .nds-bn{aspect-ratio:16/9}
@media(max-width:768px){
  .nds-bn-dual,.nds-bn-trio{grid-template-columns:1fr}
  .nds-bn-big .nds-bn{min-height:0;aspect-ratio:16/10}
  .nds-bn-solo .nds-bn{aspect-ratio:16/9}
}

@media(prefers-reduced-motion:reduce){
  .nds-wlc-box{animation:none}
  .nds-bn img{transition:none}
}
