:root {
  --cream: #FAFAF7;
  --white: #FFFFFF;
  --ink: #111111;
  --ink2: #222222;
  --muted: #6B7280;
  --light: #F3F4F6;
  --border: #E5E7EB;
  --border2: #D1D5DB;
  --orange: #F97316;
  --orange-h: #EA6C0E;
  --orange-bg: #FFF7ED;
  --orange-border: #FED7AA;
  --teal: #0D9488;
  --teal-bg: #F0FDFA;
  --green: #16A34A;
  --red: #DC2626;
  --r: 10px;
  --r-sm: 6px;
  --r-lg: 16px;
  --r-xl: 24px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --shadow: 0 4px 16px rgba(0,0,0,0.07);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.10);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',sans-serif;background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}

/* ─── ANNOUNCE BAR ─── */
.bar{background:var(--ink);color:#fff;text-align:center;padding:9px 1rem;font-size:.75rem;font-weight:600;letter-spacing:.04em}
.bar span{color:#FCD34D}

/* ─── NAV ─── */
nav{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:200;box-shadow:var(--shadow-sm)}
.nav-inner{max-width:1280px;margin:0 auto;padding:0 1.5rem;height:64px;display:flex;align-items:center;gap:1rem}
.logo{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.5rem;font-weight:800;color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:8px;text-decoration:none;letter-spacing:-.03em}
.logo-mark{width:34px;height:34px;background:var(--orange);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.05rem;font-weight:900;flex-shrink:0}
.nav-links{display:flex;gap:2px;margin-left:2rem}
.nl{background:none;border:none;color:var(--muted);font-size:.83rem;font-weight:600;padding:.45rem .8rem;border-radius:var(--r-sm);cursor:pointer;font-family:inherit;transition:all .15s}
.nl:hover,.nl.on{background:var(--light);color:var(--ink)}
.nav-r{margin-left:auto;display:flex;align-items:center;gap:.6rem}
/* FLAGS */
.flags{display:flex;gap:3px;padding:4px;background:var(--light);border-radius:var(--r-sm);border:1px solid var(--border)}
.flag-btn{width:32px;height:26px;background:none;border:none;border-radius:4px;cursor:pointer;padding:2px;transition:all .15s;display:flex;align-items:center;justify-content:center}
.flag-btn:hover{background:var(--border2)}
.flag-btn.on{background:var(--orange);box-shadow:0 0 0 2px var(--orange-border)}
.flag-svg{width:22px;height:15px;border-radius:2px;display:block;overflow:hidden}
/* BUTTONS */
.btn{padding:.5rem 1.1rem;font-size:.8rem;font-weight:700;font-family:inherit;cursor:pointer;border:none;border-radius:var(--r-sm);letter-spacing:.02em;transition:all .15s}
.btn-ghost{background:none;border:1.5px solid var(--border2);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);background:var(--light)}
.btn-orange{background:var(--orange);color:#fff}
.btn-orange:hover{background:var(--orange-h);transform:translateY(-1px);box-shadow:0 4px 14px rgba(249,115,22,.3)}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:var(--ink2)}
.btn-outline-ink{background:none;border:2px solid var(--ink);color:var(--ink);padding:.75rem 1.75rem;font-size:.9rem;border-radius:var(--r)}
.btn-outline-ink:hover{background:var(--ink);color:#fff}

/* ─── PAGES ─── */
.page{display:none}
.page.on{display:block}

/* ─── HERO ─── */
.hero {
  background: radial-gradient(circle at 10% 20%, rgba(254,243,199,0.3) 0%, transparent 45%),
              radial-gradient(circle at 90% 80%, rgba(204,251,241,0.2) 0%, transparent 45%),
              linear-gradient(180deg, var(--white) 0%, var(--cream) 100%);
  border-bottom: 1.5px solid var(--border);
  padding: 6.5rem 1.5rem 5.5rem;
  overflow: hidden;
  position: relative;
}
.hero::before {
  content: '';
  position: absolute;
  top: -120px;
  right: -120px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(249,115,22,0.06) 0%, transparent 70%);
  pointer-events: none;
  border-radius: 50%;
}
.hero::after {
  content: '';
  position: absolute;
  bottom: -90px;
  left: -90px;
  width: 350px;
  height: 350px;
  background: radial-gradient(circle, rgba(13,148,136,0.05) 0%, transparent 70%);
  pointer-events: none;
  border-radius: 50%;
}
.hero-inner {
  max-width: 1280px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 5rem;
  align-items: center;
  position: relative;
  z-index: 1;
}
.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  background: rgba(249, 115, 22, 0.08);
  border: 1.5px solid var(--orange-border);
  color: var(--orange);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .4rem 1rem;
  border-radius: 100px;
  margin-bottom: 1.5rem;
}
.hero h1 {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: clamp(3rem, 5.5vw, 4.8rem);
  font-weight: 850;
  line-height: 1.0;
  letter-spacing: -.05em;
  color: var(--ink);
  margin-bottom: 1.5rem;
}
.hero h1 em {
  font-style: normal;
  color: var(--orange);
  background: linear-gradient(120deg, var(--orange) 30%, #F97316 100%);
  -webkit-background-clip: text;
}
.hero-sub {
  color: var(--muted);
  font-size: 1.05rem;
  line-height: 1.75;
  margin-bottom: 2.5rem;
  max-width: 460px;
}
.hero-btns {
  display: flex;
  gap: .85rem;
  flex-wrap: wrap;
}
.hero-btns .btn {
  padding: .95rem 2rem;
  font-size: .92rem;
  border-radius: var(--r);
  box-shadow: var(--shadow-sm);
}
.hero-visual {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.shirt-card {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  border-radius: var(--r-xl);
  padding: 3.5rem 3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  box-shadow: 0 25px 50px rgba(0,0,0,0.05);
  position: relative;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.shirt-card:hover {
  transform: scale(1.025);
  box-shadow: 0 30px 60px rgba(249, 115, 22, 0.08);
}
.shirt-emoji {
  font-size: 8rem;
  animation: bob 4s ease-in-out infinite;
}
@keyframes bob {
  0%, 100% { transform: translateY(0) rotate(-2deg); }
  50% { transform: translateY(-15px) rotate(3deg); }
}
.shirt-label {
  background: var(--orange);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .35rem 1rem;
  border-radius: 100px;
  box-shadow: 0 4px 10px rgba(249, 115, 22, 0.2);
}
.hero-stat {
  position: absolute;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1.5px solid rgba(255, 255, 255, 0.6);
  border-radius: var(--r-lg);
  padding: .9rem 1.3rem;
  box-shadow: 0 12px 30px rgba(0,0,0,0.03);
  white-space: nowrap;
  transition: transform 0.3s ease;
  z-index: 10;
}
.hero-stat:hover {
  transform: translateY(-4px);
}
.hero-stat-num {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 1.15rem;
  font-weight: 850;
  color: var(--ink);
}
.hero-stat-label {
  font-size: .7rem;
  color: var(--muted);
  font-weight: 600;
  margin-top: 1px;
}
.hs1 { top: -20px; left: -25px; }
.hs2 { bottom: 5px; right: -25px; }

/* ─── SECTION HEADERS ─── */
.s-pill{display:inline-block;background:var(--orange-bg);color:var(--orange);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .8rem;border-radius:100px;margin-bottom:.6rem;border:1px solid var(--orange-border)}
.s-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:var(--ink);letter-spacing:-.03em;margin-bottom:.4rem}
.s-sub{color:var(--muted);font-size:.875rem;line-height:1.6}

/* ─── CAROUSEL ─── */
.carousel-sect{padding:5rem 1.5rem;max-width:1280px;margin:0 auto}
.carousel-head{margin-bottom:2.5rem}
.c-wrap{overflow:hidden;position:relative;border-radius:var(--r-lg)}
.c-track{display:flex;gap:1.25rem;transition:transform .55s cubic-bezier(.25,.46,.45,.94)}
.p-card{min-width:calc((100% - 2.5rem) / 3);background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;transition:all .2s;flex-shrink:0;box-shadow:var(--shadow-sm)}
.p-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px);border-color:var(--orange-border)}
.p-img{height:210px;display:flex;align-items:center;justify-content:center;font-size:5.5rem;position:relative}
.p-img.g1{background:linear-gradient(135deg,#FFF7ED,#FEF3C7)}
.p-img.g2{background:linear-gradient(135deg,#F0FDFA,#CCFBF1)}
.p-img.g3{background:linear-gradient(135deg,#EFF6FF,#DBEAFE)}
.p-img.g4{background:linear-gradient(135deg,#FAF5FF,#EDE9FE)}
.p-img.g5{background:linear-gradient(135deg,#FFF0F3,#FFE4E6)}
.p-badge{position:absolute;top:10px;left:10px;background:var(--orange);color:#fff;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:100px}
.p-info{padding:1.1rem 1.25rem}
.p-name{font-weight:800;font-size:.95rem;color:var(--ink);margin-bottom:.2rem}
.p-desc{font-size:.77rem;color:var(--muted);margin-bottom:.85rem}
.p-foot{display:flex;align-items:center;justify-content:space-between}
.p-price{font-weight:800;color:var(--orange);font-size:1rem}
.add-btn{background:var(--orange);color:#fff;border:none;border-radius:var(--r-sm);width:30px;height:30px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;font-weight:900}
.add-btn:hover{background:var(--orange-h);transform:scale(1.1)}
.c-controls{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.75rem}
.c-dots{display:flex;gap:6px}
.c-dot{width:8px;height:8px;border-radius:50%;background:var(--border2);border:none;cursor:pointer;transition:all .3s;padding:0}
.c-dot.on{background:var(--orange);width:22px;border-radius:4px}
.c-progress{height:2px;background:var(--border);border-radius:2px;margin-top:1.25rem;overflow:hidden}
.c-pbar{height:100%;background:var(--orange);border-radius:2px;width:0%}

/* ─── HOW IT WORKS ─── */
.how-sect{background:var(--ink);padding:5rem 1.5rem}
.how-inner{max-width:1280px;margin:0 auto}
.how-inner .s-title{color:#fff}
.how-inner .s-sub{color:rgba(255,255,255,.55)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.1);margin-top:3rem;border:1px solid rgba(255,255,255,.1);border-radius:var(--r-lg);overflow:hidden}
.step{background:var(--ink2);padding:2rem 1.75rem}
.step-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:2.5rem;font-weight:800;color:var(--orange);margin-bottom:1rem;opacity:.9}
.step h3{font-weight:700;font-size:.9rem;color:#fff;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.04em}
.step p{font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.7}

/* ─── PRICES ─── */
.price-sect{padding:5rem 1.5rem;max-width:1280px;margin:0 auto}
.price-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:2.5rem}
.pr-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:1.75rem 1.25rem;text-align:center;transition:all .2s;box-shadow:var(--shadow-sm)}
.pr-card:hover{border-color:var(--orange-border);box-shadow:var(--shadow)}
.pr-card.feat{background:var(--orange);border-color:var(--orange)}
.pr-cat{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem}
.pr-card.feat .pr-cat{color:rgba(255,255,255,.8)}
.pr-amt{font-family:'Plus Jakarta Sans',sans-serif;font-size:2.2rem;font-weight:800;color:var(--ink);line-height:1;letter-spacing:-.02em}
.pr-card.feat .pr-amt{color:#fff}
.pr-amt em{font-size:.85rem;font-family:'Plus Jakarta Sans',sans-serif;font-style:normal;color:var(--muted);font-weight:500}
.pr-card.feat .pr-amt em{color:rgba(255,255,255,.75)}
.pr-desc{font-size:.72rem;color:var(--muted);margin-top:.4rem}
.pr-card.feat .pr-desc{color:rgba(255,255,255,.7)}

/* ─── AUTH ─── */
.auth-pg{min-height:calc(100vh - 64px);background:var(--cream);display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem}
.auth-box{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:2.5rem;width:100%;max-width:440px;box-shadow:var(--shadow-lg)}
.auth-logo{display:flex;justify-content:center;margin-bottom:.5rem}
.auth-tagline{text-align:center;font-size:.875rem;color:var(--muted);margin-bottom:2rem}
.auth-tabs{display:flex;background:var(--light);border-radius:var(--r-sm);padding:3px;gap:3px;margin-bottom:2rem}
.a-tab{flex:1;padding:.55rem;border:none;background:none;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit;color:var(--muted);border-radius:5px;transition:all .2s;letter-spacing:.02em}
.a-tab.on{background:var(--white);color:var(--ink);box-shadow:var(--shadow-sm)}
.a-form{display:none}
.a-form.on{display:block}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.fg{margin-bottom:1.35rem}
.fg label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.45rem;color:var(--muted)}
.fg input,.fg select,.fg textarea{width:100%;padding:.6rem .85rem;border:1.5px solid var(--border);border-radius:var(--r-sm);font-size:.875rem;font-family:inherit;background:var(--cream);color:var(--ink);transition:border-color .15s;outline:none}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--orange);background:var(--white)}
.fg input::placeholder,.fg textarea::placeholder{color:var(--muted)}
.a-foot{text-align:center;margin-top:1.25rem;font-size:.8rem;color:var(--muted)}
.a-foot a{color:var(--orange);font-weight:700;cursor:pointer;text-decoration:none}

/* ─── ORDER ─── */
.order-pg{max-width:780px;margin:0 auto;padding:3rem 1.5rem}
.order-prog{display:flex;align-items:center;margin-bottom:3rem}
.pdot{width:30px;height:30px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;background:var(--white);flex-shrink:0;color:var(--muted);transition:all .25s}
.pdot.on{background:var(--orange);border-color:var(--orange);color:#fff}
.pdot.done{background:var(--teal);border-color:var(--teal);color:#fff}
.pline{flex:1;height:2px;background:var(--border)}
.pline.done{background:var(--teal)}
.o-block{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:1.75rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}
.o-block h3{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}
.sn{display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--orange);color:#fff;font-size:.62rem;font-weight:900;align-items:center;justify-content:center;flex-shrink:0}
/* TOGGLE GROUP */
.tog-group{display:flex;gap:8px;flex-wrap:wrap}
.tog{background:var(--cream);border:1.5px solid var(--border);border-radius:var(--r-sm);padding:.5rem 1rem;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit;color:var(--ink);transition:all .15s}
.tog:hover{border-color:var(--orange-border);background:var(--orange-bg)}
.tog.on{border-color:var(--orange);background:var(--orange-bg);color:var(--orange)}
/* GENDER / CAT CARDS */
.card-group{display:flex;gap:.75rem;margin-bottom:1.25rem}
.sel-card{flex:1;border:1.5px solid var(--border);border-radius:var(--r);padding:1rem;cursor:pointer;background:var(--cream);text-align:center;transition:all .15s}
.sel-card:hover{border-color:var(--orange-border);background:var(--orange-bg)}
.sel-card.on{border-color:var(--orange);background:var(--orange-bg)}
.sel-card .sc-icon{font-size:1.6rem;margin-bottom:.3rem}
.sel-card .sc-label{font-size:.78rem;font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:.04em}
/* COLORS */
.color-grid{display:flex;flex-wrap:wrap;gap:.5rem}
.csw{width:32px;height:32px;border-radius:50%;cursor:pointer;border:3px solid transparent;outline:2px solid transparent;transition:all .15s;position:relative}
.csw:hover{outline-color:var(--border2);transform:scale(1.12)}
.csw.on{outline-color:var(--orange);outline-offset:2px;transform:scale(1.12)}
/* FONT COLOR PICKER */
.font-color-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.fc-swatch{width:28px;height:28px;border-radius:6px;cursor:pointer;border:2.5px solid transparent;transition:all .15s}
.fc-swatch:hover,.fc-swatch.on{border-color:var(--orange);transform:scale(1.15)}
.fc-swatch.fc-white{border:2.5px solid var(--border)}
/* UPLOAD */
.upload-area{border:2px dashed var(--border2);border-radius:var(--r);padding:2rem;text-align:center;cursor:pointer;transition:all .2s;color:var(--muted);background:var(--cream)}
.upload-area:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-bg)}
/* SUMMARY */
.sum-box{background:var(--orange-bg);border:1.5px solid var(--orange-border);border-radius:var(--r-lg);padding:1.5rem;margin-bottom:1.25rem}
.sum-box h4{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.sum-row{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:.4rem;color:var(--muted)}
.sum-total{display:flex;justify-content:space-between;font-weight:800;font-size:1.1rem;color:var(--orange);border-top:1px solid var(--orange-border);padding-top:.75rem;margin-top:.75rem}
/* PAY */
.pay-opts{display:flex;flex-direction:column;gap:.6rem}
.pay-opt{padding:1rem 1.25rem;border:1.5px solid var(--border);border-radius:var(--r);display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .15s;background:var(--cream)}
.pay-opt:hover,.pay-opt.on{border-color:var(--orange);background:var(--orange-bg)}
.pay-icon{font-size:1.3rem;width:36px;text-align:center}
.pay-label{font-weight:700;font-size:.875rem;color:var(--ink)}
.pay-desc{font-size:.73rem;color:var(--muted);margin-top:1px}
.o-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:2rem}

/* ─── CUSTOMER ─── */
.cust-pg{max-width:960px;margin:0 auto;padding:3rem 1.5rem}
.cust-header{display:flex;align-items:center;gap:1rem;margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}
.av{width:52px;height:52px;border-radius:50%;background:var(--orange);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;font-weight:800}
.c-name{font-weight:800;font-size:1.05rem}
.c-email{font-size:.8rem;color:var(--muted);margin-top:1px}
.orders-list{border:1.5px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.o-card{background:var(--white);padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;cursor:pointer;transition:background .15s;border-bottom:1px solid var(--border)}
.o-card:last-child{border-bottom:none}
.o-card:hover{background:var(--cream)}
.o-thumb{width:54px;height:54px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:1.65rem;flex-shrink:0}
.t1{background:#FFF7ED}.t2{background:#F0FDFA}.t3{background:#EFF6FF}
.o-num{font-weight:800;font-size:.875rem;color:var(--orange)}
.o-items{font-size:.78rem;color:var(--muted);margin-top:2px}
.o-date{font-size:.7rem;color:var(--border2);margin-top:3px}
.badge{padding:.25rem .75rem;border-radius:100px;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.b-order{background:var(--teal-bg);color:var(--teal);border:1px solid #99F6E4}
.b-prod{background:#FFFBEB;color:#B45309;border:1px solid #FDE68A}
.b-done{background:#FAF5FF;color:#7C3AED;border:1px solid #DDD6FE}
.b-delivered{background:#F0FDF4;color:var(--green);border:1px solid #BBF7D0}
.o-price{font-weight:800;font-size:1rem;color:var(--orange);text-align:right;white-space:nowrap}

/* ─── ADMIN ─── */
.admin-pg{display:flex;min-height:calc(100vh - 64px)}
.a-sidebar{width:230px;background:var(--ink);flex-shrink:0;padding:1.5rem 0;display:flex;flex-direction:column;transition:width 0.2s ease-in-out, padding 0.2s ease-in-out;overflow-x:hidden}
.a-logo{display:flex;align-items:center;gap:.5rem;font-family:'Plus Jakarta Sans',sans-serif;font-size:1.15rem;font-weight:800;color:#fff;padding:0 1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1rem;letter-spacing:-.03em}
.a-logo span{color:var(--orange)}
.a-nav{padding:0 .75rem;display:flex;flex-direction:column;gap:2px}
.ai{display:flex;align-items:center;gap:.7rem;padding:0 .75rem;height:2.25rem;border-radius:var(--r-sm);color:rgba(255,255,255,.5);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s;box-sizing:border-box;white-space:nowrap}
.ai:hover{background:rgba(255,255,255,.07);color:rgba(255,255,255,.85)}
.ai.on{background:var(--orange);color:#fff}
.ai-icon{font-size:.95rem;width:18px;text-align:center;display:inline-flex;align-items:center;justify-content:center;line-height:1}
.a-sidebar.collapsed{width:70px}
.a-sidebar.collapsed .logo-text,
.a-sidebar.collapsed .ai-text{display:none}
.a-sidebar.collapsed .a-logo{justify-content:center;padding:0 0 1.5rem}
.a-sidebar.collapsed .ai{justify-content:center;padding:0}
.a-sidebar.collapsed .a-vs{padding:1rem 0 0}
.a-vs{margin-top:auto;padding:1rem .75rem 0;border-top:1px solid rgba(255,255,255,.1)}
.a-content{flex:1;padding:2.75rem 2rem 2rem;background:var(--cream);overflow-y:auto}
.a-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem}
.a-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.5rem;font-weight:800;color:var(--ink);letter-spacing:-.02em}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.mc{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:1.25rem;box-shadow:var(--shadow-sm)}
.mc-label{font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}
.mc-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.9rem;font-weight:800;color:var(--ink);line-height:1.1;letter-spacing:-.02em}
.mc-chg{font-size:.72rem;color:var(--green);font-weight:700;margin-top:.25rem}
.tbl-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.tbl-head{padding:1rem 1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.tbl-head h3{font-weight:800;font-size:.9rem}
table{width:100%;border-collapse:collapse}
th{padding:.7rem 1.25rem;text-align:left;font-size:.64rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;background:var(--cream);border-bottom:1px solid var(--border)}
td{padding:.875rem 1.25rem;border-bottom:1px solid var(--border);font-size:.82rem;color:var(--ink)}
tr:last-child td{border-bottom:none}
tr:hover td{background:var(--cream)}
.td-ord{font-weight:800;color:var(--orange)}
.td-cust{display:flex;align-items:center;gap:.55rem}
.mini-av{width:26px;height:26px;border-radius:50%;background:var(--orange-bg);border:1.5px solid var(--orange-border);display:flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:800;color:var(--orange);flex-shrink:0}
.td-acts{display:flex;gap:.4rem}
.icon-btn{width:28px;height:28px;border:1.5px solid var(--border);border-radius:var(--r-sm);background:none;cursor:pointer;font-size:.78rem;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all .15s}
.icon-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-bg)}
.sel-st{padding:.25rem .5rem;border:1.5px solid var(--border);border-radius:var(--r-sm);font-size:.72rem;font-family:inherit;background:var(--cream);cursor:pointer;color:var(--ink)}

/* ─── FOOTER ─── */
footer{background:var(--ink);padding:4rem 1.5rem 2rem}
.f-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;gap:3rem}
.f-brand .logo{color:#fff;margin-bottom:1rem}
.f-brand .logo-mark{background:var(--orange)}
.f-brand p{font-size:.82rem;color:rgba(255,255,255,.45);line-height:1.7;max-width:270px}
.f-col h4{font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:1.25rem}
.f-col ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.f-col ul li a{color:rgba(255,255,255,.5);text-decoration:none;font-size:.82rem;cursor:pointer;transition:color .15s}
.f-col ul li a:hover{color:var(--orange)}
.f-bottom{max-width:1280px;margin:2.5rem auto 0;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:.73rem;color:rgba(255,255,255,.3)}

/* ─── STATIC PAGES ─── */
.static-pg{max-width:720px;margin:0 auto;padding:4rem 1.5rem}
.faq-item{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;margin-bottom:.75rem;box-shadow:var(--shadow-sm)}
.faq-item h3{font-weight:800;font-size:.9rem;color:var(--ink);margin-bottom:.5rem}
.faq-item p{font-size:.825rem;color:var(--muted);line-height:1.7}

/* ─── TOAST ─── */
.toast{position:fixed;bottom:2rem;right:2rem;background:var(--ink);color:#fff;padding:.875rem 1.5rem;border-radius:var(--r-lg);font-size:.82rem;font-weight:600;z-index:9999;transform:translateY(100px);opacity:0;transition:all .3s;max-width:320px;box-shadow:var(--shadow-lg)}
.toast.show{transform:translateY(0);opacity:1}
.t-bar{height:2px;background:var(--orange);border-radius:2px;margin-top:.6rem;width:100%}
.toast.show .t-bar{animation:tbar 3s linear forwards}
@keyframes tbar{from{width:100%}to{width:0%}}

@media(max-width:1100px){
  .hs1{left:-10px;top:-10px}
  .hs2{right:-10px;bottom:5px}
}
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr}.hero-visual{display:none}
  .steps{grid-template-columns:1fr 1fr}
  .price-grid{grid-template-columns:1fr 1fr}
  .f-inner{grid-template-columns:1fr 1fr}
  .metrics{grid-template-columns:1fr 1fr}
  .p-card{min-width:calc((100% - 1.25rem)/2)}
  .admin-grid{grid-template-columns:1fr}
  #sidebar-toggle{display:none !important}
  .admin-pg {
    flex-direction: column;
  }
  .a-sidebar {
    width: 100%;
    padding: 1rem;
    border-bottom: 1px solid rgba(255,255,255,.1);
  }
  .a-logo {
    padding: 0 0 1rem;
    text-align: center;
    border-bottom: 1px solid rgba(255,255,255,.1);
    margin-bottom: 1rem;
  }
  .a-nav {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.4rem;
  }
  .a-vs {
    margin-top: 1rem;
    padding: 1rem 0 0;
    border-top: 1px solid rgba(255,255,255,.1);
    width: 100%;
    text-align: center;
  }
}
@media(max-width:600px){
  nav {
    height: auto !important;
  }
  .nav-inner {
    height: auto !important;
    flex-direction: column;
    padding: 0.75rem 1rem;
    gap: 0.5rem;
    align-items: stretch;
  }
  .nav-links {
    display: flex !important;
    justify-content: center;
    margin-left: 0;
    gap: 0.2rem;
    width: 100%;
    order: 3;
    border-top: 1px solid var(--border);
    padding-top: 0.5rem;
  }
  .nav-r {
    margin-left: 0;
    justify-content: center;
    width: 100%;
    order: 2;
    gap: 0.4rem;
  }
  .logo {
    justify-content: center;
    order: 1;
  }
  .p-card{min-width:85%}
  .steps{grid-template-columns:1fr}
  .price-grid{grid-template-columns:1fr 1fr}
  .card-group{flex-wrap:wrap}
  .sel-card{min-width:130px}
  .f-row{grid-template-columns:1fr}
}

.admin-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;align-items:start}
.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

/* ─── SHOPPING CART DRAWER ─── */
.cart-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(17, 17, 17, 0.4);
  backdrop-filter: blur(4px);
  z-index: 1999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.cart-overlay.open {
  opacity: 1;
  pointer-events: auto;
}
.cart-sidebar {
  position: fixed;
  top: 0;
  right: -450px;
  width: 450px;
  max-width: 100%;
  height: 100vh;
  background: var(--white);
  box-shadow: var(--shadow-lg);
  z-index: 2000;
  transition: right 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
}
.cart-sidebar.open {
  right: 0;
}
.cart-header {
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cart-header h3 {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--ink);
  letter-spacing: -.02em;
}
.cart-close {
  background: none;
  border: none;
  font-size: 1.75rem;
  cursor: pointer;
  color: var(--muted);
  transition: color 0.15s;
  line-height: 1;
}
.cart-close:hover {
  color: var(--ink);
}
.cart-body {
  flex: 1;
  overflow-y: auto;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.cart-item {
  display: flex;
  gap: 1rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--border);
  position: relative;
}
.cart-item-img {
  width: 70px;
  height: 70px;
  object-fit: cover;
  border-radius: var(--r-sm);
  background: var(--light);
  border: 1px solid var(--border);
}
.cart-item-details {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.cart-item-name {
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--ink);
}
.cart-item-meta {
  font-size: 0.75rem;
  color: var(--muted);
  line-height: 1.3;
}
.cart-item-price-qty {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0.5rem;
}
.cart-item-qty {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--light);
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
}
.cart-item-qty-btn {
  background: none;
  border: none;
  font-weight: bold;
  cursor: pointer;
  font-size: 0.9rem;
  padding: 0 0.25rem;
  color: var(--ink);
}
.cart-item-qty-num {
  font-size: 0.85rem;
  font-weight: 700;
  min-width: 20px;
  text-align: center;
}
.cart-item-price {
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--orange);
}
.cart-item-remove {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--muted);
  font-size: 0.9rem;
  position: absolute;
  top: 0;
  right: 0;
  transition: color 0.15s;
}
.cart-item-remove:hover {
  color: var(--red);
}
.cart-checkout-section {
  padding: 1.5rem;
  border-top: 1px solid var(--border);
  background: var(--cream);
  overflow-y: auto;
  max-height: 50vh;
}
.cart-pay-opts {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.cart-pay-opt {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  border: 1.5px solid var(--border);
  border-radius: var(--r-sm);
  cursor: pointer;
  transition: all 0.15s;
  background: var(--white);
}
.cart-pay-opt:hover {
  border-color: var(--border2);
}
.cart-pay-opt.on {
  border-color: var(--orange);
  background: var(--orange-bg);
}
