/* Design & Development by CodiFlux — https://codiflux.com/ */
/* 3D / depth layer. Loaded after theme.css. All colours come from the --cf-* tokens (admin-editable). */

:root{
  --cf-dark-shade:color-mix(in srgb,var(--cf-primary) 72%,#000);
  --cf-lift-1:0 1px 0 rgba(255,255,255,.85) inset,0 1px 2px rgba(15,23,42,.08),0 8px 16px -8px rgba(15,23,42,.16),0 18px 32px -18px rgba(15,23,42,.2);
  --cf-lift-2:0 1px 0 rgba(255,255,255,.9) inset,0 2px 4px rgba(15,23,42,.08),0 16px 28px -10px rgba(15,23,42,.24),0 30px 50px -24px rgba(15,23,42,.3);
  --cf-ease:cubic-bezier(.22,.9,.3,1);
  --cf-spring:cubic-bezier(.34,1.56,.64,1);
}
[data-bs-theme="dark"]{
  --cf-lift-1:0 1px 0 rgba(255,255,255,.07) inset,0 1px 2px rgba(0,0,0,.5),0 10px 22px -10px rgba(0,0,0,.7);
  --cf-lift-2:0 1px 0 rgba(255,255,255,.09) inset,0 2px 4px rgba(0,0,0,.5),0 20px 34px -12px rgba(0,0,0,.8);
}

body{
  background:
    radial-gradient(900px 420px at 8% -8%,color-mix(in srgb,var(--cf-primary) 11%,transparent),transparent 62%),
    radial-gradient(760px 380px at 100% 4%,color-mix(in srgb,var(--cf-accent) 9%,transparent),transparent 60%),
    var(--cf-bg);
}

/* ---------- surfaces ---------- */
.cf-card{
  background:linear-gradient(180deg,var(--cf-surface),color-mix(in srgb,var(--cf-surface) 94%,var(--cf-surface-2)));
  box-shadow:var(--cf-lift-1);
  transition:transform .35s var(--cf-ease),box-shadow .35s var(--cf-ease),border-color .25s;
}
.cf-tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--ty,0));will-change:transform}
.cf-pcard:hover,.cf-cat:hover,.cf-trust-card:hover,.cf-review:hover{--ty:-5px;box-shadow:var(--cf-lift-2);border-color:color-mix(in srgb,var(--cf-primary) 45%,var(--cf-border))}
.cf-cat:hover{text-decoration:none}

/* section headings with a raised accent bar */
.cf-h{display:flex;align-items:center;gap:.6rem;font-weight:700}
.cf-h::before{content:"";width:6px;height:1.4em;border-radius:6px;background:linear-gradient(180deg,var(--cf-primary),var(--cf-dark-shade));box-shadow:0 3px 8px -2px color-mix(in srgb,var(--cf-primary) 60%,transparent)}

/* raised icon tile */
.cf-ico3d{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:15px;flex:none;
  background:linear-gradient(145deg,color-mix(in srgb,var(--cf-primary) 14%,var(--cf-surface)),color-mix(in srgb,var(--cf-primary) 26%,var(--cf-surface)));
  color:var(--cf-primary-text);font-size:1.4rem;
  box-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 -3px 0 color-mix(in srgb,var(--cf-primary) 25%,transparent) inset,0 8px 14px -6px color-mix(in srgb,var(--cf-primary) 45%,transparent);
  transition:transform .35s var(--cf-spring)}
.cf-ico3d i{font-size:inherit;color:inherit}
.cf-cat:hover .cf-ico3d,.cf-trust-card:hover .cf-ico3d{transform:translateY(-3px) rotate(-6deg) scale(1.08)}
.cf-cat i,.cf-trust i{color:inherit}

/* ---------- buttons: physical keys ---------- */
.btn{border-radius:.7rem;transition:transform .15s var(--cf-ease),box-shadow .15s var(--cf-ease),filter .2s,background .2s}
.btn-cf{
  background:linear-gradient(180deg,var(--cf-primary),color-mix(in srgb,var(--cf-primary) 90%,#000));
  border:0;color:var(--cf-on-primary);font-weight:600;
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 4px 0 var(--cf-dark-shade),0 10px 16px -6px color-mix(in srgb,var(--cf-primary) 55%,transparent);
  transform:translateY(0);
}
.btn-cf:hover,.btn-cf:focus-visible{filter:brightness(1.06);transform:translateY(-1px);color:var(--cf-on-primary);
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 5px 0 var(--cf-dark-shade),0 14px 20px -6px color-mix(in srgb,var(--cf-primary) 60%,transparent)}
.btn-cf:active{transform:translateY(3px);filter:none;box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 1px 0 var(--cf-dark-shade),0 3px 6px -2px color-mix(in srgb,var(--cf-primary) 50%,transparent)}
.btn-cf:disabled,.btn-cf.disabled{opacity:.6;transform:none;box-shadow:none}
.btn-outline-cf{border-width:2px;font-weight:600;box-shadow:0 3px 0 color-mix(in srgb,var(--cf-primary) 45%,transparent)}
.btn-outline-cf:hover{transform:translateY(-1px)}.btn-outline-cf:active{transform:translateY(2px);box-shadow:0 1px 0 color-mix(in srgb,var(--cf-primary) 45%,transparent)}
.btn-wa{background:linear-gradient(180deg,#128c4a,#0d7a3f);color:#fff;border:0;box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 4px 0 #0a5c2f,0 10px 14px -6px rgba(18,140,74,.55)}
.btn-wa:hover{color:#fff;filter:brightness(1.08);transform:translateY(-1px)}.btn-wa:active{transform:translateY(3px);box-shadow:0 1px 0 #0a5c2f}
.form-control,.form-select{border-radius:.7rem;background-color:var(--cf-surface);box-shadow:0 2px 3px rgba(15,23,42,.06) inset;transition:box-shadow .25s,border-color .25s,transform .25s}
.form-control:focus,.form-select:focus{border-color:var(--cf-primary);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--cf-primary) 22%,transparent),0 2px 3px rgba(15,23,42,.06) inset}
.cf-chip{display:inline-block;padding:.28rem .7rem;border-radius:2rem;font-size:.82rem;color:var(--cf-text);background:var(--cf-surface-2);border:1px solid var(--cf-border);text-decoration:none;
  box-shadow:0 2px 0 var(--cf-border);transition:transform .15s,box-shadow .15s,border-color .2s}
.cf-chip:hover{border-color:var(--cf-primary);color:var(--cf-primary-text);transform:translateY(-1px);text-decoration:none}
.cf-chip:active{transform:translateY(2px);box-shadow:none}

/* ---------- header ---------- */
.cf-header{box-shadow:0 8px 24px -14px rgba(15,23,42,.35)}
.cf-icon-btn{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;border:1px solid transparent;transition:transform .2s var(--cf-spring),background .2s,box-shadow .2s}
.cf-icon-btn:hover{background:var(--cf-surface-2);box-shadow:var(--cf-lift-1);transform:translateY(-2px);color:var(--cf-text)}
.cf-search .form-control{border-start-start-radius:.8rem;border-end-start-radius:.8rem}
.cf-search .btn-cf{border-start-end-radius:.8rem;border-end-end-radius:.8rem}
.cf-nav{background:linear-gradient(180deg,color-mix(in srgb,var(--cf-secondary) 94%,#fff),var(--cf-secondary));box-shadow:0 10px 18px -14px rgba(0,0,0,.6)}

/* ---------- product card ---------- */
.cf-pcard .thumb{background:radial-gradient(circle at 50% 35%,var(--cf-surface),var(--cf-surface-2));position:relative}
.cf-pcard .thumb img{transition:transform .5s var(--cf-ease)}
.cf-pcard:hover .thumb img{transform:scale(1.07) translateY(-2px)}
.cf-pcard .thumb img.is-ph{object-fit:cover;opacity:.9}
.cf-pcard .actions{display:flex;gap:.45rem}
.cf-pcard .actions form{flex:1}
.cf-pcard .btn-wa{width:40px;padding:0;display:grid;place-items:center;flex:none}
.cf-pcard .wish{box-shadow:var(--cf-lift-1);transition:transform .25s var(--cf-spring)}.cf-pcard .wish:hover{transform:scale(1.15)}

/* ---------- hero slider ---------- */
.cf-slider{position:relative;border-radius:1.25rem;box-shadow:var(--cf-lift-2);overflow:hidden;isolation:isolate;transform:translateZ(0)}
.cf-slide{min-height:260px;display:flex;align-items:center;position:relative;color:#fff;background-size:cover;background-position:center}
@media(min-width:768px){.cf-slide{min-height:360px}}
.cf-slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,6,23,.72),rgba(2,6,23,.15));z-index:0}
[dir="rtl"] .cf-slide::before{background:linear-gradient(270deg,rgba(2,6,23,.72),rgba(2,6,23,.15))}
.cf-slide .inner{position:relative;z-index:2;padding:2rem 2.2rem 3rem;max-width:620px;animation:cfRise .8s var(--cf-ease) both}
.cf-slide h2,.cf-slide h1{font-weight:800;letter-spacing:-.02em;text-shadow:0 3px 14px rgba(0,0,0,.35)}
.cf-slide .shape{position:absolute;z-index:1;border-radius:28%;background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(2px);box-shadow:0 20px 40px -12px rgba(0,0,0,.45);animation:cfFloat 7s ease-in-out infinite}
.cf-slide .s1{width:150px;height:150px;inset-inline-end:8%;top:14%;transform:rotate(14deg)}
.cf-slide .s2{width:90px;height:90px;inset-inline-end:26%;bottom:12%;animation-delay:-2s;transform:rotate(-12deg)}
.cf-slide .s3{width:60px;height:60px;inset-inline-end:3%;bottom:18%;animation-delay:-4s}
.cf-slide .big-ico{position:absolute;z-index:1;inset-inline-end:10%;top:50%;transform:translateY(-50%);font-size:8rem;color:rgba(255,255,255,.9);filter:drop-shadow(0 18px 24px rgba(0,0,0,.4));animation:cfFloat 6s ease-in-out infinite}
@media(max-width:767.98px){.cf-slide .big-ico{font-size:4.5rem;opacity:.5}.cf-slide .s1{width:90px;height:90px}}
.cf-slider .carousel-indicators{margin-bottom:.8rem;padding:.3rem .6rem;width:max-content;margin-inline:auto;border-radius:2rem;background:rgba(2,6,23,.45);backdrop-filter:blur(6px)}
.cf-slider .carousel-indicators [data-bs-target]{width:10px;height:10px;border-radius:50%;border:0;margin:0 4px;transition:width .3s var(--cf-spring),background .3s}
.cf-slider .carousel-indicators .active{width:28px;border-radius:6px;background:#fff}
.cf-slider .carousel-control-prev,.cf-slider .carousel-control-next{width:48px;opacity:1}
.cf-slider .carousel-control-prev-icon,.cf-slider .carousel-control-next-icon{width:42px;height:42px;border-radius:50%;background-color:rgba(2,6,23,.5);background-size:45%;box-shadow:0 8px 16px -4px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.3) inset;transition:transform .25s var(--cf-spring)}
.cf-slider .carousel-control-prev:hover .carousel-control-prev-icon,.cf-slider .carousel-control-next:hover .carousel-control-next-icon{transform:scale(1.12)}
.cf-slide-bg1{background:linear-gradient(120deg,#0f172a,color-mix(in srgb,var(--cf-primary) 80%,#0f172a))}
.cf-slide-bg2{background:linear-gradient(120deg,#0b3b2e,color-mix(in srgb,var(--cf-accent) 70%,#0b1220))}
.cf-slide-bg3{background:linear-gradient(120deg,#1e1b4b,color-mix(in srgb,var(--cf-primary) 55%,#312e81))}

/* ---------- reviews / stats ---------- */
.cf-review{padding:1rem;height:100%;display:flex;flex-direction:column;gap:.6rem}
.cf-review .stars{color:var(--cf-warn-text);letter-spacing:1px}
.cf-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:#fff;background:linear-gradient(145deg,color-mix(in srgb,var(--cf-primary) 85%,#fff),var(--cf-dark-shade));box-shadow:0 6px 10px -4px rgba(0,0,0,.35),0 1px 0 rgba(255,255,255,.4) inset;flex:none}
.cf-verified{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;padding:.1rem .5rem;border-radius:1rem;color:var(--cf-accent-text);background:color-mix(in srgb,var(--cf-accent) 12%,var(--cf-surface));border:1px solid color-mix(in srgb,var(--cf-accent) 35%,var(--cf-border))}
.cf-stat{text-align:center;padding:1rem .5rem}
.cf-stat b{display:block;font-size:1.55rem;color:var(--cf-primary-text);line-height:1.2}
.cf-rating-box{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border-radius:.9rem;background:var(--cf-surface);border:1px solid var(--cf-border);box-shadow:var(--cf-lift-1)}

/* ---------- WhatsApp + install prompt ---------- */
.cf-wa-float{width:auto;height:52px;border-radius:2rem;padding:0 1.1rem 0 .9rem;gap:.5rem;font-size:1.5rem;background:linear-gradient(180deg,#128c4a,#0d7a3f);color:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 4px 0 #0a5c2f,0 14px 22px -8px rgba(13,122,63,.7);bottom:104px;font-weight:700;transition:transform .2s var(--cf-spring)}
.cf-wa-float span{font-size:.88rem}
.cf-wa-float:hover{color:#fff;transform:translateY(-3px)}.cf-wa-float:active{transform:translateY(2px)}
.cf-wa-float i{animation:cfPulse 2.4s ease-in-out infinite}
@media(min-width:992px){.cf-wa-float{bottom:22px}}
.cf-install{position:fixed;inset-inline:12px;bottom:112px;z-index:1045;max-width:380px;margin-inline-start:auto;padding:.9rem;border-radius:1.1rem;background:linear-gradient(160deg,#111a2e,#0b1220);color:#fff;
  border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 50px -12px rgba(0,0,0,.65),0 1px 0 rgba(255,255,255,.1) inset;animation:cfRise .6s var(--cf-spring) both}
.cf-install[hidden]{display:none}
.cf-install small{color:#c3cde0}
.cf-install .btn-ghost{background:rgba(255,255,255,.1);color:#fff;border:0;box-shadow:0 3px 0 rgba(0,0,0,.35)}
@media(min-width:992px){.cf-install{bottom:90px;inset-inline-end:20px;inset-inline-start:auto}}
#cfTop{box-shadow:var(--cf-lift-2)!important;bottom:170px!important}
@media(min-width:992px){#cfTop{bottom:90px!important}}

/* ---------- mobile bottom bar (floating, raised active key) ---------- */
@media(max-width:991.98px){body{padding-bottom:96px}}
.cf-bottom-nav{inset-inline:10px;bottom:calc(10px + env(safe-area-inset-bottom));border-radius:24px;padding:.5rem .35rem .4rem;border:1px solid var(--cf-border);
  background:color-mix(in srgb,var(--cf-surface) 90%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 -1px 0 var(--cf-border),0 18px 34px -10px rgba(15,23,42,.45);justify-content:space-between}
.cf-bottom-nav a{flex:1;min-width:0;font-size:.68rem;font-weight:600;gap:.1rem;color:var(--cf-muted);transition:color .2s}
.cf-bottom-nav .ico{position:relative;width:44px;height:44px;border-radius:15px;display:grid;place-items:center;transition:transform .35s var(--cf-spring),background .25s,box-shadow .25s;font-size:1.25rem}
.cf-bottom-nav .ico i{font-size:1.28rem}
.cf-bottom-nav a:active .ico{transform:scale(.88)}
.cf-bottom-nav a.active{color:var(--cf-primary-text)}
.cf-bottom-nav a.active .ico{transform:translateY(-16px) scale(1.06);color:var(--cf-on-primary);
  background:linear-gradient(145deg,color-mix(in srgb,var(--cf-primary) 85%,#fff),var(--cf-primary) 55%,var(--cf-dark-shade));
  box-shadow:0 1px 0 rgba(255,255,255,.45) inset,0 4px 0 var(--cf-dark-shade),0 14px 18px -6px color-mix(in srgb,var(--cf-primary) 70%,transparent)}
.cf-bottom-nav a.active .lbl{transform:translateY(-12px)}
.cf-bottom-nav .lbl{display:block;transition:transform .35s var(--cf-spring);line-height:1}
.cf-bottom-nav .cf-badge{top:-2px;inset-inline-end:-2px}

/* ---------- side menu ---------- */
#cfMenu{width:min(88vw,340px);background:linear-gradient(180deg,var(--cf-surface),var(--cf-surface-2));border:0;box-shadow:0 0 60px rgba(2,6,23,.45)}
#cfMenu .menu-head{position:relative;padding:1.1rem 1rem 1rem;color:var(--cf-on-secondary);overflow:hidden;
  background:linear-gradient(135deg,var(--cf-secondary),color-mix(in srgb,var(--cf-primary) 55%,var(--cf-secondary)))}
#cfMenu .menu-head::after{content:"";position:absolute;inset-inline-end:-30px;top:-30px;width:120px;height:120px;border-radius:30%;transform:rotate(18deg);background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,0));box-shadow:0 20px 30px -10px rgba(0,0,0,.4)}
#cfMenu .menu-head .btn-close{filter:invert(1) grayscale(1) brightness(2);opacity:.9;position:relative;z-index:2}
#cfMenu .menu-user{display:flex;gap:.5rem;margin-top:.8rem;position:relative;z-index:2}
#cfMenu .menu-user .btn{flex:1;font-size:.85rem}
.cf-menu-link{display:flex;align-items:center;gap:.8rem;padding:.55rem .6rem;border-radius:.95rem;color:var(--cf-text)!important;text-decoration:none!important;font-weight:600;
  transition:transform .2s var(--cf-ease),background .2s,box-shadow .2s}
.cf-menu-link .cf-ico3d{width:38px;height:38px;font-size:1.1rem;border-radius:12px}
.cf-menu-link .go{margin-inline-start:auto;color:var(--cf-muted);font-size:.8rem}
.cf-menu-link:hover,.cf-menu-link:focus-visible{background:var(--cf-surface);box-shadow:var(--cf-lift-1);transform:translateX(3px)}
[dir="rtl"] .cf-menu-link:hover{transform:translateX(-3px)}
.cf-menu-link:active{transform:scale(.98)}
.cf-menu-sec{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cf-muted);margin:1rem .6rem .35rem;font-weight:700}
#cfMenu .accordion-button{padding:0;background:none!important;box-shadow:none!important;color:var(--cf-text)}
#cfMenu .accordion-button::after{margin-inline-start:auto}
#cfMenu .accordion-item{border:0;background:none}
#cfMenu .accordion-body a{display:block;padding:.4rem .6rem .4rem 3.4rem;color:var(--cf-text);text-decoration:none;border-radius:.6rem}
#cfMenu .accordion-body a:hover{background:var(--cf-surface);color:var(--cf-primary-text)}
.cf-social{display:flex;flex-wrap:wrap;gap:.5rem}
.cf-social a{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;text-decoration:none;color:var(--cf-text);background:var(--cf-surface);border:1px solid var(--cf-border);
  box-shadow:0 3px 0 var(--cf-border),0 10px 14px -8px rgba(15,23,42,.3);transition:transform .2s var(--cf-spring),background .2s,color .2s}
.cf-social a:hover{transform:translateY(-4px) rotate(-4deg);background:var(--cf-primary);color:var(--cf-on-primary);border-color:var(--cf-primary)}
.cf-social a:active{transform:translateY(1px);box-shadow:none}

/* ---------- footer ---------- */
.cf-footer{position:relative;margin-top:3rem;padding:3rem 0 1rem;color:var(--cf-on-secondary);
  background:radial-gradient(700px 260px at 90% 0,color-mix(in srgb,var(--cf-primary) 30%,transparent),transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--cf-secondary) 94%,#000),color-mix(in srgb,var(--cf-secondary) 70%,#000))}
.cf-footer::before{content:"";position:absolute;inset-inline:0;top:0;height:4px;background:linear-gradient(90deg,var(--cf-primary),var(--cf-accent),var(--cf-primary));box-shadow:0 6px 18px color-mix(in srgb,var(--cf-primary) 60%,transparent)}
.cf-footer a{color:inherit;text-decoration:none;opacity:.88;transition:opacity .2s,transform .2s,color .2s}
.cf-footer a:hover{opacity:1;text-decoration:none;transform:translateX(3px)}
[dir="rtl"] .cf-footer a:hover{transform:translateX(-3px)}
.cf-footer h2{font-size:.85rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;margin-bottom:1rem;position:relative;padding-bottom:.6rem}
.cf-footer h2::after{content:"";position:absolute;inset-inline-start:0;bottom:0;width:34px;height:3px;border-radius:3px;background:var(--cf-primary);box-shadow:0 2px 8px color-mix(in srgb,var(--cf-primary) 70%,transparent)}
.cf-footer ul li{margin-bottom:.45rem}
.cf-footer li i{margin-inline-end:.45rem;opacity:.85}
.cf-footer .cf-muted,.cf-footer .small.text-muted{color:inherit;opacity:.78}
.cf-footer .cf-social a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:inherit;box-shadow:0 3px 0 rgba(0,0,0,.35),0 10px 14px -8px rgba(0,0,0,.6);opacity:1}
.cf-footer .cf-social a:hover{background:var(--cf-primary);color:var(--cf-on-primary);transform:translateY(-4px) rotate(-4deg)}
.cf-footer .form-control{background:rgba(255,255,255,.08);color:inherit;border-color:rgba(255,255,255,.2);box-shadow:none}
.cf-footer .form-control::placeholder{color:inherit;opacity:.6}
.cf-footer hr{border-color:rgba(255,255,255,.16);opacity:1}
.cf-footer .cf-credit{opacity:.9}.cf-footer .cf-credit a{text-decoration:underline;transform:none}

/* ---------- auth ---------- */
.cf-auth{position:relative;padding:2.5rem 0 3rem;overflow:hidden;min-height:70vh;display:flex;align-items:center}
.cf-auth-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.cf-auth-bg span{position:absolute;border-radius:50%;filter:blur(46px);opacity:.55;animation:cfDrift 14s ease-in-out infinite}
.cf-auth-bg .b1{width:340px;height:340px;background:var(--cf-primary);top:-80px;inset-inline-start:-60px}
.cf-auth-bg .b2{width:300px;height:300px;background:var(--cf-accent);bottom:-90px;inset-inline-end:-40px;animation-delay:-5s}
.cf-auth-bg .b3{width:220px;height:220px;background:color-mix(in srgb,var(--cf-primary) 50%,#6366f1);top:40%;inset-inline-start:45%;animation-delay:-9s;opacity:.3}
.cf-auth > .container{position:relative;z-index:1}
.cf-auth-card{padding:1.6rem;border-radius:1.4rem;backdrop-filter:blur(8px);animation:cfFlipIn .8s var(--cf-ease) both;transform-origin:50% 100%}
.cf-auth-card > *{animation:cfRise .6s var(--cf-ease) both}
.cf-auth-card > *:nth-child(1){animation-delay:.1s}.cf-auth-card > *:nth-child(2){animation-delay:.18s}.cf-auth-card > *:nth-child(3){animation-delay:.26s}.cf-auth-card > *:nth-child(4){animation-delay:.34s}.cf-auth-card > *:nth-child(5){animation-delay:.42s}
.cf-auth-card .btn-cf{position:relative;overflow:hidden}
.cf-auth-card .btn-cf::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.35) 50%,transparent 65%);transform:translateX(-120%);animation:cfShine 3.6s 1.2s infinite}
.cf-auth-hero{perspective:900px}
.cf-auth-hero .stack{position:relative;height:250px;transform-style:preserve-3d;margin-bottom:1.5rem}
.cf-auth-hero .tile{position:absolute;display:grid;place-items:center;border-radius:26px;color:#fff;font-size:2.6rem;width:116px;height:116px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--cf-primary) 80%,#fff),var(--cf-dark-shade));
  box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 8px 0 var(--cf-dark-shade),0 30px 40px -14px rgba(0,0,0,.5);animation:cfFloat3d 7s ease-in-out infinite}
.cf-auth-hero .t1{inset-inline-start:6%;top:10%;--r:-12deg}.cf-auth-hero .t2{inset-inline-start:38%;top:34%;width:132px;height:132px;font-size:3rem;--r:6deg;animation-delay:-2.2s;
  background:linear-gradient(145deg,#34d399,color-mix(in srgb,var(--cf-accent) 80%,#000));box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 8px 0 color-mix(in srgb,var(--cf-accent) 60%,#000),0 30px 40px -14px rgba(0,0,0,.5)}
.cf-auth-hero .t3{inset-inline-start:66%;top:2%;width:96px;height:96px;font-size:2.2rem;--r:14deg;animation-delay:-4.4s;background:linear-gradient(145deg,#a5b4fc,#4338ca);box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 8px 0 #312e81,0 30px 40px -14px rgba(0,0,0,.5)}
.cf-auth-hero ul{list-style:none;padding:0;margin:0}.cf-auth-hero li{display:flex;gap:.6rem;align-items:center;margin-bottom:.6rem}
.cf-auth-hero li i{color:var(--cf-accent-text);font-size:1.2rem}

/* ---------- cart ---------- */
.cf-qty{display:inline-flex;align-items:center;border-radius:.8rem;background:var(--cf-surface-2);border:1px solid var(--cf-border);box-shadow:0 2px 3px rgba(15,23,42,.08) inset;overflow:hidden}
.cf-qty button{width:34px;height:34px;border:0;background:var(--cf-surface);color:var(--cf-text);font-size:1.1rem;font-weight:700;box-shadow:0 2px 0 var(--cf-border);transition:transform .12s}
.cf-qty button:active{transform:translateY(2px);box-shadow:none}
.cf-qty input{width:44px;text-align:center;border:0;background:transparent;color:var(--cf-text);font-weight:700;-moz-appearance:textfield}
.cf-qty input::-webkit-outer-spin-button,.cf-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
#cfCart.is-loading{opacity:.55;pointer-events:none;transition:opacity .2s}
.cf-line-img{width:72px;height:72px;flex:none;border-radius:.8rem;overflow:hidden;background:var(--cf-surface-2);box-shadow:var(--cf-lift-1)}
.cf-line-img img{width:72px;height:72px;object-fit:cover}

/* ---------- sidebar filters ---------- */
.cf-filter{padding:0;overflow:hidden}
.cf-filter .fh{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1rem;font-weight:800;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--cf-border)}
.cf-filter section{padding:.8rem 1rem;border-bottom:1px dashed var(--cf-border)}
.cf-filter section:last-child{border-bottom:0}
.cf-filter h3{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;margin:0 0 .5rem;display:flex;align-items:center;gap:.4rem}
.cf-filter h3 i{color:var(--cf-primary-text)}
.cf-filter ul{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto}
.cf-filter li a{display:flex;align-items:center;gap:.5rem;padding:.32rem .55rem;border-radius:.6rem;color:var(--cf-text);text-decoration:none;font-size:.86rem;transition:background .15s,transform .15s,box-shadow .15s}
.cf-filter li a:hover{background:var(--cf-surface-2);transform:translateX(3px);text-decoration:none}
[dir="rtl"] .cf-filter li a:hover{transform:translateX(-3px)}
.cf-filter li a.on{background:color-mix(in srgb,var(--cf-primary) 10%,var(--cf-surface));color:var(--cf-text);font-weight:700;box-shadow:inset 3px 0 0 var(--cf-primary),0 2px 0 color-mix(in srgb,var(--cf-primary) 25%,transparent)}
[dir="rtl"] .cf-filter li a.on{box-shadow:inset -3px 0 0 var(--cf-primary),0 2px 0 color-mix(in srgb,var(--cf-primary) 25%,transparent)}
.cf-filter li a i{opacity:.7;font-size:.95rem;width:1.1rem;text-align:center}

/* ---------- keyframes ---------- */
@keyframes cfRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes cfFlipIn{from{opacity:0;transform:perspective(900px) rotateX(-14deg) translateY(30px)}to{opacity:1;transform:perspective(900px) rotateX(0) translateY(0)}}
@keyframes cfFloat{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-14px) rotate(calc(var(--r,0deg) + 3deg))}}
@keyframes cfFloat3d{0%,100%{transform:translateY(0) rotateX(8deg) rotateY(var(--r,0deg))}50%{transform:translateY(-16px) rotateX(-4deg) rotateY(calc(var(--r,0deg) * -1))}}
@keyframes cfDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,30px) scale(1.12)}}
@keyframes cfShine{0%{transform:translateX(-120%)}40%,100%{transform:translateX(120%)}}
@keyframes cfPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}
@media(prefers-reduced-motion:reduce){.cf-tilt{transform:none}}

/* ---------- fixes from visual QA ---------- */
#cfMenu .menu-head{flex:none}
@media(min-width:768px){.cf-slide .inner{padding-inline:4.2rem}}
.cf-footer{padding-bottom:5.2rem}
@media(max-width:991.98px){.cf-footer{padding-bottom:1rem}}

html[lang="ur"] .cf-menu-sec,html[lang="ur"] .cf-filter h3,html[lang="ur"] .cf-footer h2{letter-spacing:0;text-transform:none;font-size:.95rem}
