@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600;700;900&family=Rajdhani:wght@300;400;500;600;700&family=Share+Tech+Mono&display=swap');

:root {
  --bg:          #020209;
  --bg2:         #08081a;
  --blue:        #00b4ff;
  --blue-dim:    #0077cc;
  --purple:      #8b2be2;
  --purple-lite: #b44fff;
  --violet:      #5a1fa8;
  --glow-b:      rgba(0,180,255,0.35);
  --glow-p:      rgba(139,43,226,0.35);
  --card:        rgba(12,12,30,0.75);
  --border:      rgba(0,180,255,0.18);
  --text:        #e8eaf6;
  --muted:       rgba(200,210,240,0.55);
  --font-head:   'Orbitron', sans-serif;
  --font-body:   'Rajdhani', sans-serif;
  --font-mono:   'Share Tech Mono', monospace;
  --nav-h:       72px;
  --nav-anim:    0.3s;
  --nav-ease:    cubic-bezier(0.25, 0.1, 0.25, 1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:clamp(15px,1.6vw,16px);line-height:1.7;overflow-x:hidden;min-height:100vh;width:100%;}
img,video,svg{max-width:100%;height:auto;}
::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:linear-gradient(var(--purple),var(--blue));border-radius:3px;}

body::before{
  content:'';position:fixed;inset:0;
  background-image:linear-gradient(rgba(0,180,255,0.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,255,0.035) 1px,transparent 1px);
  background-size:60px 60px;pointer-events:none;z-index:0;
}

/* ── NAV / HEADER ───────────────────────────────────────── */
.site-header{
  position:sticky;top:0;z-index:1000;height:var(--nav-h);
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:0 48px;
  background:rgba(2,2,14,0.95);
  border-bottom:1px solid var(--border);
  isolation:isolate;
}
.nav-logo,.nav-toggle,.nav-actions{position:relative;z-index:3;}
.site-header::after{
  content:'';position:absolute;bottom:-1px;left:10%;width:80%;height:1px;
  background:linear-gradient(90deg,transparent,var(--blue),var(--purple),transparent);opacity:0.55;
  pointer-events:none;
}

.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--font-head);font-size:19px;font-weight:900;letter-spacing:4px;background:linear-gradient(90deg,var(--blue),var(--purple-lite));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.nav-logo .logo-icon{width:34px;height:34px;border:2px solid var(--blue);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;background:rgba(0,180,255,0.08);box-shadow:0 0 12px var(--glow-b);flex-shrink:0;-webkit-text-fill-color:var(--blue);}

.nav-links{display:flex;align-items:center;justify-content:center;gap:4px;flex:1;}
.nav-links a{position:relative;color:var(--muted);text-decoration:none;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;padding:8px 16px;border-radius:6px;transition:color 0.25s;}
.nav-links a::after{content:'';position:absolute;bottom:4px;left:16px;right:16px;height:1px;background:linear-gradient(90deg,var(--blue),var(--purple));transform:scaleX(0);transition:transform 0.3s ease;}
.nav-links a:hover,.nav-links a.active{color:#fff;}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1);}

.nav-actions{display:flex;align-items:center;gap:10px;}
.nav-icon-btn{width:38px;height:38px;border-radius:8px;border:1px solid var(--border);background:rgba(0,180,255,0.06);color:var(--blue);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.25s;text-decoration:none;font-size:15px;}
.nav-icon-btn:hover{background:rgba(0,180,255,0.15);border-color:var(--blue);box-shadow:0 0 14px var(--glow-b);}
.nav-btn{padding:9px 22px;font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:2px;border:none;border-radius:8px;cursor:pointer;background:linear-gradient(135deg,var(--blue-dim),var(--purple));color:#fff;transition:all 0.3s;text-decoration:none;box-shadow:0 0 20px var(--glow-b);}
.nav-btn:hover{filter:brightness(1.25);box-shadow:0 0 30px var(--glow-p);transform:translateY(-1px);}

/* ── HERO ──────────────────────────────────────────────── */
.hero{position:relative;min-height:calc(92vh - var(--nav-h));display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:80px 24px;overflow:hidden;z-index:1;}
.hero::before{content:'';position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(0,180,255,0.1) 0%,transparent 70%);top:-200px;left:-200px;pointer-events:none;}
.hero::after{content:'';position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(139,43,226,0.13) 0%,transparent 70%);bottom:-150px;right:-100px;pointer-events:none;}

.hero-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:4px;color:var(--blue);margin-bottom:24px;opacity:0;animation:fadeUp 0.7s 0.2s forwards;}
.hero h1{font-family:var(--font-head);font-size:clamp(2.4rem,7vw,5.5rem);font-weight:900;line-height:1.05;letter-spacing:2px;background:linear-gradient(135deg,#fff 30%,var(--blue) 60%,var(--purple-lite) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:24px;opacity:0;animation:fadeUp 0.7s 0.4s forwards;}
.hero p,.hero-sub{font-size:clamp(1rem,2.5vw,1.15rem);color:var(--muted);max-width:min(540px,92vw);margin-bottom:44px;opacity:0;animation:fadeUp 0.7s 0.6s forwards;}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;opacity:0;animation:fadeUp 0.7s 0.8s forwards;}

/* ── BUTTONS ────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 36px;font-family:var(--font-head);font-size:12px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;border:none;border-radius:10px;cursor:pointer;transition:all 0.3s ease;}
.btn-primary{background:linear-gradient(135deg,var(--blue-dim) 0%,var(--purple) 100%);color:#fff;box-shadow:0 0 28px var(--glow-b),0 8px 32px rgba(0,0,0,0.4);}
.btn-primary:hover{filter:brightness(1.2);box-shadow:0 0 40px var(--glow-p),0 10px 40px rgba(0,0,0,0.5);transform:translateY(-2px);}
.btn-outline{background:transparent;color:var(--blue);border:1px solid var(--border);}
.btn-outline:hover{background:rgba(0,180,255,0.08);border-color:var(--blue);box-shadow:0 0 20px var(--glow-b);transform:translateY(-2px);}
.btn-3d{display:inline-flex;align-items:center;gap:8px;padding:14px 36px;font-family:var(--font-head);font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-decoration:none;border:none;border-radius:10px;cursor:pointer;transition:all 0.3s ease;background:linear-gradient(135deg,var(--blue-dim) 0%,var(--purple) 100%);color:#fff;box-shadow:0 0 28px var(--glow-b),0 8px 32px rgba(0,0,0,0.4);}
.btn-3d:hover{filter:brightness(1.2);box-shadow:0 0 40px var(--glow-p);transform:translateY(-2px);}

/* ── SECTION HEADER ─────────────────────────────────────── */
.section-header{text-align:center;margin-bottom:56px;}
.section-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:4px;color:var(--purple-lite);margin-bottom:12px;}
.section-header h2{font-family:var(--font-head);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;background:linear-gradient(135deg,#fff 40%,var(--blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* ── LAYOUT ─────────────────────────────────────────────── */
.container{max-width:1240px;width:100%;margin:0 auto;padding:clamp(48px,8vw,80px) clamp(16px,4vw,32px);position:relative;z-index:1;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:clamp(16px,3vw,28px);}

/* ── CARD ───────────────────────────────────────────────── */
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:28px;position:relative;overflow:hidden;backdrop-filter:blur(12px);transition:transform 0.35s,box-shadow 0.35s,border-color 0.35s;}
.card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,180,255,0.04),rgba(139,43,226,0.04));opacity:0;transition:opacity 0.3s;pointer-events:none;z-index:0;}
.card:hover{transform:translateY(-8px);border-color:rgba(0,180,255,0.5);box-shadow:0 24px 60px rgba(0,0,0,0.5),0 0 30px var(--glow-b);}
.card:hover::before{opacity:1;}
.card img{width:100%;border-radius:10px;margin-bottom:20px;object-fit:cover;aspect-ratio:4/3;position:relative;z-index:1;}
.card h3{font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:8px;color:#fff;position:relative;z-index:1;}
.card p{font-size:14px;color:var(--muted);margin-bottom:12px;position:relative;z-index:1;}
.card .price{font-family:var(--font-mono);font-size:1.3rem;color:var(--blue);font-weight:700;margin-bottom:18px;position:relative;z-index:1;}
.card button,.card .btn,.card a.btn{position:relative;z-index:2;}
.card::after{content:'';position:absolute;top:0;right:0;width:40px;height:40px;border-top:2px solid rgba(0,180,255,0.35);border-right:2px solid rgba(0,180,255,0.35);border-radius:0 16px 0 0;pointer-events:none;z-index:0;}

/* ── ABOUT ──────────────────────────────────────────────── */
.about-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.about-text p{color:var(--muted);margin-bottom:18px;font-size:1.05rem;}
.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px;}
.stat-box{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:22px;text-align:center;}
.stat-box .num{font-family:var(--font-head);font-size:2rem;font-weight:900;background:linear-gradient(135deg,var(--blue),var(--purple-lite));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.stat-box .lbl{font-size:11px;letter-spacing:2px;color:var(--muted);margin-top:4px;font-family:var(--font-mono);}
.about-visual{position:relative;height:360px;display:flex;align-items:center;justify-content:center;}
.about-orb{width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(0,180,255,0.18) 0%,rgba(139,43,226,0.18) 60%,transparent 80%);border:1px solid rgba(0,180,255,0.3);animation:pulse 4s ease-in-out infinite;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-size:12px;letter-spacing:3px;color:var(--blue);flex-direction:column;gap:8px;}
@keyframes pulse{0%,100%{transform:scale(1);box-shadow:0 0 40px var(--glow-b);}50%{transform:scale(1.04);box-shadow:0 0 80px var(--glow-b),0 0 120px var(--glow-p);}}

/* ── GALLERY ────────────────────────────────────────────── */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,260px);gap:16px;}
.gallery-item{overflow:hidden;border-radius:14px;border:1px solid var(--border);position:relative;cursor:pointer;}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s;filter:brightness(0.8) saturate(1.1);}
.gallery-item:hover img{transform:scale(1.07);filter:brightness(1) saturate(1.3);}
.gallery-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.6) 0%,transparent 50%);opacity:0;transition:opacity 0.3s;}
.gallery-item:hover .gallery-overlay{opacity:1;}

/* ── FOOTER ─────────────────────────────────────────────── */
footer{position:relative;z-index:1;background:rgba(0,0,0,0.5);border-top:1px solid var(--border);text-align:center;padding:40px 32px;}
footer::before{content:'';position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,var(--purple),var(--blue),transparent);}
.footer-logo{font-family:var(--font-head);font-size:16px;font-weight:900;letter-spacing:4px;background:linear-gradient(90deg,var(--blue),var(--purple-lite));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px;}
footer p{font-size:12px;color:var(--muted);letter-spacing:1px;}

/* ── ANIMATIONS ─────────────────────────────────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}

/* ── AUTH PAGE ──────────────────────────────────────────── */
.auth-page{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:9999;overflow:hidden;}
.auth-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 20% 50%,rgba(0,180,255,0.07) 0%,transparent 60%),radial-gradient(ellipse 70% 60% at 80% 50%,rgba(139,43,226,0.1) 0%,transparent 60%),linear-gradient(180deg,#020209 0%,#06061a 50%,#020209 100%);pointer-events:none;}
.auth-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,180,255,0.055) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,255,0.055) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;}
.auth-orb{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;animation:floatOrb 8s ease-in-out infinite;}
.auth-orb-1{width:420px;height:420px;background:rgba(0,180,255,0.09);top:-120px;left:-120px;animation-delay:0s;}
.auth-orb-2{width:380px;height:380px;background:rgba(139,43,226,0.11);bottom:-80px;right:-80px;animation-delay:4s;}
.auth-orb-3{width:220px;height:220px;background:rgba(0,180,255,0.06);top:50%;right:18%;animation-delay:2s;}
@keyframes floatOrb{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(20px,-20px) scale(1.05);}66%{transform:translate(-15px,15px) scale(0.97);}}

.auth-card{position:relative;z-index:10;width:100%;max-width:460px;background:rgba(8,8,26,0.82);border:1px solid rgba(0,180,255,0.22);border-radius:24px;padding:48px 44px;backdrop-filter:blur(24px);box-shadow:0 0 0 1px rgba(139,43,226,0.08),0 32px 80px rgba(0,0,0,0.7),inset 0 1px 0 rgba(255,255,255,0.04);animation:cardIn 0.7s cubic-bezier(0.16,1,0.3,1) forwards;}
@keyframes cardIn{from{opacity:0;transform:translateY(32px) scale(0.97);}to{opacity:1;transform:translateY(0) scale(1);}}
.auth-card-tl{position:absolute;top:0;left:0;width:60px;height:60px;border-top:2px solid var(--blue);border-left:2px solid var(--blue);border-radius:24px 0 0 0;opacity:0.65;}
.auth-card-br{position:absolute;bottom:0;right:0;width:60px;height:60px;border-bottom:2px solid var(--purple);border-right:2px solid var(--purple);border-radius:0 0 24px 0;opacity:0.65;}

.auth-logo{text-align:center;margin-bottom:36px;}
.auth-logo-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:2px solid var(--blue);border-radius:14px;background:rgba(0,180,255,0.08);box-shadow:0 0 24px var(--glow-b);font-size:22px;margin-bottom:14px;}
.auth-logo-text{font-family:var(--font-head);font-size:21px;font-weight:900;letter-spacing:5px;background:linear-gradient(90deg,var(--blue),var(--purple-lite));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.auth-logo-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:3px;color:var(--muted);margin-top:4px;}

.auth-tabs{display:flex;background:rgba(0,0,0,0.3);border:1px solid var(--border);border-radius:12px;padding:4px;margin-bottom:32px;}
.auth-tab{flex:1;padding:11px;font-family:var(--font-head);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:none;border-radius:9px;cursor:pointer;background:transparent;color:var(--muted);transition:all 0.3s;}
.auth-tab.active{background:linear-gradient(135deg,var(--blue-dim),var(--purple));color:#fff;box-shadow:0 4px 16px rgba(0,0,0,0.4);}

.auth-form{display:none;}
.auth-form.active{display:block;}

.auth-field{margin-bottom:20px;}
.auth-field label{display:block;font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-family:var(--font-mono);}
.auth-field input{width:100%;padding:14px 18px;background:rgba(0,0,0,0.35);border:1px solid rgba(0,180,255,0.2);border-radius:10px;color:#fff;font-family:var(--font-body);font-size:15px;outline:none;transition:border-color 0.3s,box-shadow 0.3s;}
.auth-field input::placeholder{color:rgba(200,210,240,0.28);}
.auth-field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,180,255,0.1),0 0 16px rgba(0,180,255,0.08);}

.auth-submit{width:100%;padding:15px;margin-top:8px;font-family:var(--font-head);font-size:12px;font-weight:700;letter-spacing:3px;text-transform:uppercase;border:none;border-radius:10px;cursor:pointer;background:linear-gradient(135deg,var(--blue-dim) 0%,var(--purple) 100%);color:#fff;box-shadow:0 0 24px var(--glow-b);transition:all 0.3s;position:relative;overflow:hidden;}
.auth-submit::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,0.1),transparent);transform:translateX(-100%);transition:transform 0.5s;}
.auth-submit:hover{filter:brightness(1.2);box-shadow:0 0 40px var(--glow-p),0 0 20px var(--glow-b);transform:translateY(-1px);}
.auth-submit:hover::before{transform:translateX(100%);}

.auth-footer-note{text-align:center;margin-top:22px;font-size:13px;color:var(--muted);}
.auth-footer-note a{color:var(--blue);text-decoration:none;}
.auth-footer-note a:hover{color:var(--purple-lite);}

.auth-skip{position:fixed;bottom:28px;right:28px;z-index:10000;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:rgba(200,210,240,0.3);text-decoration:none;transition:color 0.2s;cursor:pointer;background:none;border:none;}
.auth-skip:hover{color:var(--blue);}

/* ── MOBILE NAV TOGGLE & ANIMATIONS ─────────────────────── */
.nav-toggle{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  width:42px;height:42px;padding:10px;margin-left:4px;
  background:rgba(0,180,255,0.06);border:1px solid var(--border);border-radius:10px;
  cursor:pointer;flex-shrink:0;
  transition:transform var(--nav-anim) var(--nav-ease),background var(--nav-anim) var(--nav-ease),
    border-color var(--nav-anim) var(--nav-ease),box-shadow var(--nav-anim) var(--nav-ease);
}
.nav-toggle:hover{background:rgba(0,180,255,0.12);border-color:var(--blue);box-shadow:0 0 14px var(--glow-b);}
.nav-toggle:active{transform:scale(0.96);}
body.nav-open .nav-toggle{background:rgba(0,180,255,0.14);border-color:var(--blue);box-shadow:0 0 20px var(--glow-b);}

.nav-toggle span{
  display:block;width:100%;height:2px;background:var(--blue);border-radius:2px;
  transform-origin:center;
  transition:transform var(--nav-anim) var(--nav-ease),opacity calc(var(--nav-anim) * 0.5) ease;
}
body.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
body.nav-open .nav-toggle span:nth-child(2){opacity:0;transform:scaleX(0);}
body.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
body.nav-open{overflow:hidden;}

.nav-overlay{
  display:none;position:fixed;inset:0;top:var(--nav-h);
  background:rgba(0,0,0,0.6);z-index:1;pointer-events:none;
  opacity:0;visibility:hidden;
  transition:opacity var(--nav-anim) var(--nav-ease),visibility var(--nav-anim) var(--nav-ease);
}
body.nav-open .nav-overlay{
  opacity:1;visibility:visible;pointer-events:auto;
}

/* Header action buttons — press feedback */
.nav-icon-btn,.nav-btn,.lang-btn{
  transition:transform var(--nav-anim) var(--nav-ease),background var(--nav-anim) ease,border-color var(--nav-anim) ease,box-shadow var(--nav-anim) ease,filter var(--nav-anim) ease;
}
.nav-icon-btn:active,.nav-btn:active,.lang-btn:active{transform:scale(0.96);}

/* ── PRODUCTS PAGE (shared) ─────────────────────────────── */
.products-toolbar{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:640px;margin:24px auto 0;}
.products-toolbar .search-container{width:100%;max-width:100%;margin:0!important;}
.products-filters{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;}
.sort-bar{width:100%;justify-content:center;}
.category-menu{width:100%;justify-content:center;margin-top:0!important;}
.search-input{width:100%;padding:14px 20px;background:rgba(0,0,0,0.35);border:1px solid var(--border);border-radius:12px;color:#fff;font-family:var(--font-body);font-size:15px;outline:none;transition:all 0.3s;text-align:center;}
.search-input:focus{border-color:var(--blue);box-shadow:0 0 16px rgba(0,180,255,0.15);}
.cat-btn{padding:8px 16px;background:rgba(0,0,0,0.35);border:1px solid var(--border);border-radius:20px;color:var(--muted);font-family:var(--font-mono);font-size:13px;cursor:pointer;transition:all 0.3s;}
.cat-btn.active{background:linear-gradient(135deg,var(--blue-dim),var(--purple));border-color:transparent;color:#fff;}
.sort-label{font-family:var(--font-mono);font-size:10px;letter-spacing:2px;color:var(--muted);}
.sort-select{max-width:100%;padding:10px 36px 10px 16px;background:rgba(0,0,0,0.35);border:1px solid var(--border);border-radius:12px;color:#fff;font-size:14px;appearance:none;cursor:pointer;}

.product-card .product-img-wrap{position:relative;cursor:pointer;border-radius:10px;overflow:hidden;margin-bottom:16px;}
.product-card .product-img-wrap img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;}
.product-overlay{position:absolute;inset:0;background:rgba(0,180,255,0.15);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s;font-family:var(--font-mono);font-size:12px;letter-spacing:3px;color:#fff;}
.product-img-wrap:hover .product-overlay{opacity:1;}

.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.75);z-index:8000;display:none;align-items:center;justify-content:center;backdrop-filter:blur(6px);padding:16px;}
.modal-overlay.open{display:flex;}
.modal-box{max-width:860px;width:100%;max-height:min(90vh,900px);overflow-y:auto;border-radius:20px;background:rgba(8,8,26,0.97);border:1px solid var(--border);}
.modal-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.modal-gallery img{width:100%;height:100%;object-fit:cover;display:block;}
.modal-info{padding:clamp(20px,4vw,36px);}

.cart-toast{position:fixed;bottom:clamp(16px,4vw,32px);left:16px;right:16px;max-width:360px;margin-left:auto;z-index:9000;}
.cart-toast.show{transform:translateY(0);opacity:1;}

.checkout-grid{display:grid;grid-template-columns:1fr 360px;gap:32px;align-items:start;}
.cart-table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}

/* ── RESPONSIVE BREAKPOINTS ─────────────────────────────── */

/* Large tablet / small laptop */
@media(max-width:1100px){
  .site-header{padding:0 24px;}
  .nav-logo{font-size:16px;letter-spacing:2px;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,220px);}
}

/* Tablet & mobile */
@media(max-width:992px){
  .site-header{padding:0 16px;gap:8px;}
  .nav-toggle{display:flex;order:2;}
  .nav-logo{order:1;flex-shrink:1;min-width:0;}
  .nav-logo-text{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .nav-actions{order:3;gap:6px;margin-left:auto;flex-shrink:0;}
  .nav-overlay{display:block;}

  .nav-links{
    display:flex;position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;
    flex:unset;flex-direction:column;align-items:stretch;justify-content:flex-start;
    gap:10px;padding:20px 16px 40px;
    background:rgba(2,2,14,0.99);
    border-top:1px solid var(--border);
    overflow-y:auto;z-index:2;
    -webkit-overflow-scrolling:touch;
    opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(-10px);
    transition:opacity var(--nav-anim) var(--nav-ease),transform var(--nav-anim) var(--nav-ease),
      visibility var(--nav-anim) var(--nav-ease);
  }
  body.nav-open .nav-links{
    opacity:1;visibility:visible;pointer-events:auto;
    transform:translateY(0);
  }

  .nav-links a{
    flex-shrink:0;width:100%;
    padding:18px 20px;font-size:16px;border-radius:10px;
    background:rgba(0,0,0,0.35);color:var(--muted);
    border:1px solid transparent;
    opacity:0;
    transform:translateX(-12px);
    transition:
      opacity var(--nav-anim) var(--nav-ease),
      transform var(--nav-anim) var(--nav-ease),
      background 0.25s ease,color 0.25s ease,border-color 0.25s ease,box-shadow 0.25s ease;
    transition-delay:0s;
  }
  body.nav-open .nav-links a{
    opacity:1;
    transform:translateX(0);
    color:#fff;
  }
  body.nav-open .nav-links a:nth-child(1){transition-delay:0.04s;}
  body.nav-open .nav-links a:nth-child(2){transition-delay:0.07s;}
  body.nav-open .nav-links a:nth-child(3){transition-delay:0.10s;}
  body.nav-open .nav-links a:nth-child(4){transition-delay:0.13s;}

  .nav-links a:hover{
    background:rgba(0,180,255,0.12);
    border-color:rgba(0,180,255,0.35);
    color:#fff;
    box-shadow:0 0 20px var(--glow-b);
    transform:translateX(4px);
  }
  .nav-links a:active{
    transform:scale(0.98) translateX(2px);
    transition-duration:0.15s;
  }
  .nav-links a.active{
    background:linear-gradient(135deg,rgba(0,96,170,0.5),rgba(139,43,226,0.45));
    border-color:rgba(0,180,255,0.4);
    color:#fff;
    box-shadow:0 0 24px var(--glow-b);
  }
  .nav-links a::after{display:none;}
  .nav-user{display:none;}
  .nav-btn{padding:8px 14px;font-size:10px;}
  .about-wrapper{grid-template-columns:1fr;gap:40px;}
  .about-visual{height:240px;order:-1;}
  .checkout-grid{grid-template-columns:1fr;}
  .modal-inner{grid-template-columns:1fr;}
  .modal-gallery img{border-radius:20px 20px 0 0;max-height:min(50vh,320px);}
}

@media (prefers-reduced-motion: reduce) {
  .nav-toggle span,.nav-links,.nav-links a,.nav-overlay,.nav-icon-btn,.nav-btn,.lang-btn{
    transition-duration:0.01ms!important;
    transition-delay:0s!important;
  }
  body.nav-open .nav-links a:nth-child(n){transition-delay:0s!important;}
}

/* Large phone / small tablet */
@media(max-width:768px){
  :root{--nav-h:64px;}
  .site-header{padding:0 12px;}
  .hero{min-height:auto;padding:56px 16px 64px;}
  .hero-actions{width:100%;flex-direction:column;align-items:stretch;}
  .hero-actions .btn{width:100%;justify-content:center;}
  .section-header{margin-bottom:40px;}
  .grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));}
  .gallery-grid{grid-template-columns:1fr;grid-template-rows:auto;}
  .gallery-item{min-height:220px;}
  .about-stats{grid-template-columns:1fr 1fr;gap:12px;}
  .stat-box{padding:16px;}
  .card{padding:20px;}
  .btn{padding:12px 24px;width:auto;max-width:100%;}
  .pag-info{display:none;}
  .cart-header,.cart-row,.cart-footer{grid-template-columns:1.5fr 0.8fr 0.8fr 36px;padding:12px 14px;font-size:13px;}
  .cart-header span:nth-child(4),.cart-row .cart-subtotal,.cart-footer .cart-total-label{display:none;}
}

/* Phone */
@media(max-width:576px){
  .nav-logo .nav-logo-text{display:none;}
  .nav-logo{font-size:0;gap:0;}
  .nav-icon-btn{width:36px;height:36px;font-size:14px;}
  .lang-btn{padding:6px 8px;}
  .container{padding:40px 14px;}
  .hero h1{font-size:clamp(1.75rem,9vw,2.4rem);}
  .grid{grid-template-columns:1fr;}
  .about-stats{grid-template-columns:1fr;}
  .card-actions{flex-direction:column!important;}
  .card-actions .btn,.card-actions a.btn{width:100%!important;justify-content:center!important;}
  .sort-select{width:100%;}
  .category-menu{gap:8px;}
  .cat-btn{font-size:12px;padding:7px 12px;}
  .pagination{gap:6px;margin-top:32px;}
  .pag-btn{min-width:38px;height:38px;font-size:12px;}
  footer{padding:28px 16px;}
  .cart-header{display:none;}
  .cart-row,.cart-footer{grid-template-columns:1fr auto 36px;gap:8px;}
  .cart-row .cart-price{display:none;}
  .cart-item-name span{font-size:14px;}
}

/* Very small phone */
@media(max-width:400px){
  .nav-actions .nav-btn:not(#nav-signin-btn):not(#nav-logout-btn){display:none;}
  .hero{padding:40px 12px 48px;}
  .modal-overlay{padding:8px;}
  .modal-info{padding:16px;}
}

/* ── NAV USER CHIP ── */
.nav-user {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--blue);
  padding: 6px 14px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: rgba(0,180,255,0.06);
  white-space: nowrap;
  overflow: hidden;
  max-width: 140px;
  text-overflow: ellipsis;
}

/* ── CART BADGE ── */
.cart-btn { position: relative; font-size: 17px; }
.cart-badge {
  display: none;
  position: absolute;
  top: -6px; right: -6px;
  width: 18px; height: 18px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--blue-dim), var(--purple));
  color: #fff;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 700;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 8px var(--glow-b);
}

/* ── LANGUAGE SWITCHER ── */
.lang-switcher {
  position: relative;
  z-index: 1001;
}
.lang-btn {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 7px 12px;
  background: rgba(0,180,255,0.06);
  border: 1px solid var(--border);
  border-radius: 8px;
  color: var(--blue);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.25s;
  white-space: nowrap;
}
.lang-btn:hover {
  background: rgba(0,180,255,0.14);
  border-color: var(--blue);
  box-shadow: 0 0 14px var(--glow-b);
}
.lang-flag {
  font-size: 14px;
  line-height: 1;
}
.lang-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 160px;
  background: rgba(8,8,26,0.97);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 6px;
  box-shadow: 0 16px 48px rgba(0,0,0,0.7), 0 0 20px var(--glow-b);
  backdrop-filter: blur(20px);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.lang-dropdown.open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.lang-option {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 14px;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--muted);
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: left;
}
.lang-option:hover {
  background: rgba(0,180,255,0.1);
  color: #fff;
}
.lang-option.active {
  background: rgba(0,180,255,0.12);
  color: var(--blue);
}
.lang-option .lang-flag {
  font-size: 16px;
}

@media(max-width:600px) {
  .lang-btn { padding: 6px 8px; font-size: 10px; }
  .lang-dropdown { right: -10px; min-width: 140px; }
}
