@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@600;700&display=swap');
:root{
  --paper:#fbf5e8;
  --paper2:#efe0ba;
  --ink:#2a241a;
  --muted:#5a513f;
  --yellow:#ffd665;
  --yellow2:#f7bf3a;
  --green:#7bb55a;
  --orange:#e9752e;
  --pink:#ff7db8;
  --violet:#8568ff;
  --cyan:#6fdfff;
  --card:#fff8e9;
  --stroke:rgba(42,36,26,.18);
  --shadow:0 10px 0 rgba(42,36,26,.08);
  --radius:18px;
  --font-body:'Rubik', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --font-display:'Comfortaa', 'Rubik', system-ui, sans-serif;
}

*{box-sizing:border-box}
html,body{height:100%}
html{scroll-behavior:smooth}
body.muha{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:
    radial-gradient(1200px 800px at 15% -10%, rgba(255,214,101,.65), transparent 60%),
    radial-gradient(1000px 700px at 95% 8%, rgba(133,104,255,.18), transparent 62%),
    radial-gradient(900px 700px at 55% 30%, rgba(111,223,255,.16), transparent 58%),
    radial-gradient(900px 700px at 80% 55%, rgba(255,125,184,.14), transparent 56%),
    linear-gradient(180deg,var(--paper),var(--paper2));
  background-attachment:fixed;
}

.container{max-width:100%;margin:0 auto;padding:16px 16px 28px}

/* Top bar */
.topbar{position:sticky;top:0;z-index:10;background:rgba(251,245,232,.74);backdrop-filter:saturate(1.35) blur(14px);border-bottom:1px solid rgba(42,36,26,.09);box-shadow:0 10px 30px rgba(42,36,26,.05)}
.topbar-inner{display:flex;gap:10px;align-items:center;max-width:100%;margin:0 auto;padding:10px 16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0;transition:transform 0.2s}
.brand:hover{transform:scale(1.05)}
.brand-logo{height:64px;width:auto;image-rendering:auto;display:block;filter:drop-shadow(0 6px 14px rgba(42,36,26,.14))}
.search-wrap{position:relative;flex:1;min-width:180px}
.search{position:relative;width:100%;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.72);border:1px solid rgba(42,36,26,.12);border-radius:999px;padding:10px 14px;box-shadow:0 10px 24px rgba(42,36,26,.06), inset 0 1px 0 rgba(255,255,255,.65)}
.search-input{flex:1;border:0;outline:0;background:transparent;font-size:14px;color:var(--ink);min-width:0}
.search-input::placeholder{color:rgba(42,36,26,.58)}
.search-btn{border:0;background:linear-gradient(135deg,rgba(255,214,101,.9),rgba(255,125,184,.5));font-size:18px;cursor:pointer;flex-shrink:0;width:34px;height:34px;border-radius:999px;box-shadow:0 6px 12px rgba(42,36,26,.08)}
.search-live-results{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  right:0;
  z-index:30;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:10px;
  border-radius:20px;
  background:rgba(255,248,233,.96);
  border:1px solid rgba(42,36,26,.12);
  box-shadow:0 20px 44px rgba(42,36,26,.14);
  backdrop-filter:blur(12px);
}
.search-live-results[hidden]{
  display:none;
}
.search-live-item{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  padding:8px;
  border:0;
  border-radius:16px;
  text-align:left;
  background:rgba(255,255,255,.74);
  box-shadow:0 8px 18px rgba(42,36,26,.06);
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease;
}
.search-live-item:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 22px rgba(42,36,26,.1);
}
.search-live-thumb{
  width:54px;
  height:54px;
  border-radius:14px;
  flex:0 0 54px;
  overflow:hidden;
  border:1px solid rgba(42,36,26,.1);
  background:linear-gradient(180deg,#fff,#eef2f6);
  display:flex;
  align-items:center;
  justify-content:center;
}
.search-live-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.search-live-meta{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.search-live-title{
  font-family:var(--font-display);
  font-size:14px;
  font-weight:700;
  color:var(--ink);
  line-height:1.3;
}
.search-live-subtitle{
  font-size:12px;
  color:var(--muted);
  line-height:1.35;
}
.search-live-empty{
  padding:12px 10px;
  font-size:13px;
  color:var(--muted);
  font-weight:700;
}
.top-icons{display:flex;gap:8px;flex-shrink:0}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(42,36,26,.12);text-decoration:none;box-shadow:0 10px 20px rgba(42,36,26,.06);transition:all 0.18s}
.icon-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 14px 26px rgba(42,36,26,.1)}
.icon-btn:active{transform:translateY(0)}

.header-slogan-bar{
  display:flex;justify-content:center;align-items:center;
  max-width:100%;margin:0 auto;padding:6px 12px 8px;
  border-top:1px solid rgba(42,36,26,.06);
  background:linear-gradient(90deg,rgba(255,217,60,.2),rgba(251,245,232,.45) 50%,rgba(255,217,60,.16));
}
.header-slogan-stack{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:4px;width:100%;max-width:min(100%,720px);margin:0 auto;
}
.header-slogan-orbit-wrap{
  position:relative;display:inline-block;max-width:100%;padding:2px 6px 0;
}
.header-orbit-spinner{
  position:absolute;inset:-2px -6px 0;pointer-events:none;
  animation:headerOrbitSpin 4.8s linear infinite;
}
.header-orbit-fly{
  position:absolute;top:50%;left:50%;width:24px;height:24px;object-fit:contain;
  margin:-12px 0 0 -12px;pointer-events:none;z-index:2;
  filter:drop-shadow(0 2px 5px rgba(42,36,26,.22));
  transform:translateX(clamp(72px,22vw,148px));
  animation:headerFlyUpright 4.8s linear infinite;
}
.header-slogan-text{
  position:relative;z-index:1;margin:0;padding:2px 4px;
  font-family:"Fredoka","Comic Sans MS","Trebuchet MS",cursive;
  font-size:clamp(.95rem,2.4vw,1.32rem);font-weight:700;line-height:1.15;
  letter-spacing:.012em;color:#1a1408;text-shadow:0 1px 0 rgba(255,255,255,.45);
  text-align:center;
}
.header-slogan-cta{
  padding:6px 16px;font-size:.78rem;font-weight:900;min-height:32px;
  box-shadow:0 5px 16px rgba(240,170,23,.22);
}
@keyframes headerOrbitSpin{to{transform:rotate(360deg)}}
@keyframes headerFlyUpright{to{transform:translateX(clamp(72px,22vw,148px)) rotate(-360deg)}}
.nav-strip{display:flex;gap:8px;flex-wrap:wrap;max-width:100%;margin:0 auto;padding:0 16px 12px}
.nav-item{
  font-family:var(--font-display);
  font-weight:800;
  text-decoration:none;
  color:var(--ink);
  background:rgba(255,255,255,.62);
  border:1px solid rgba(42,36,26,.12);
  padding:8px 14px;
  border-radius:999px;
  transition:all 0.2s;
  box-shadow:0 8px 18px rgba(42,36,26,.06);
}
.nav-item:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 22px rgba(42,36,26,.1);
}
.nav-item-categories{
  background:linear-gradient(135deg,rgba(255,214,101,.95),rgba(255,235,172,.82));
  border-color:rgba(240,170,23,.28);
  box-shadow:0 10px 20px rgba(240,170,23,.18);
}
.nav-item-categories:hover{
  background:linear-gradient(135deg,rgba(255,201,87,.98),rgba(255,230,140,.9));
  box-shadow:0 14px 24px rgba(240,170,23,.24);
}
.nav-item-create{
  background:linear-gradient(135deg,rgba(255,214,101,.95),rgba(255,235,172,.82));
  border-color:rgba(240,170,23,.28);
  box-shadow:0 10px 20px rgba(240,170,23,.18);
}
.nav-item-create:hover{
  background:linear-gradient(135deg,rgba(255,201,87,.98),rgba(255,230,140,.9));
  box-shadow:0 14px 24px rgba(240,170,23,.24);
}
.nav-item-gallery{
  background:linear-gradient(135deg,rgba(146,231,168,.95),rgba(64,191,116,.82));
  border-color:rgba(64,191,116,.28);
  color:#17412a;
  box-shadow:0 10px 20px rgba(64,191,116,.16);
}
.nav-item-gallery:hover{
  background:linear-gradient(135deg,rgba(120,220,150,.98),rgba(52,175,98,.9));
  box-shadow:0 14px 24px rgba(64,191,116,.22);
}
.nav-item-latest{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(244,246,255,.86));
  border-color:rgba(91,140,255,.18);
  color:#324a8b;
  box-shadow:0 10px 20px rgba(91,140,255,.12);
}
.nav-item-latest:hover{
  background:linear-gradient(135deg,rgba(232,241,255,.98),rgba(214,228,255,.88));
  box-shadow:0 14px 24px rgba(91,140,255,.18);
}
.nav-item-designs{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,235,246,.9));
  border-color:rgba(255,95,162,.2);
  color:#8c2f66;
  box-shadow:0 10px 20px rgba(255,95,162,.12);
}
.nav-item-designs:hover{
  background:linear-gradient(135deg,rgba(255,232,244,.98),rgba(255,214,235,.92));
  box-shadow:0 14px 24px rgba(255,95,162,.18);
}
.nav-item-earn{
  background:linear-gradient(135deg,rgba(42,36,26,.96),rgba(98,72,32,.92));
  border-color:rgba(255,214,101,.28);
  color:#fff7df;
  box-shadow:0 12px 22px rgba(42,36,26,.2);
}
.nav-item-earn:hover{
  background:linear-gradient(135deg,rgba(71,56,29,.98),rgba(126,86,30,.94));
  box-shadow:0 16px 28px rgba(42,36,26,.24);
}

/* Hero */
.hero{position:relative;margin:14px 0 28px}
.hero-card{
  display:grid;grid-template-columns:1fr;gap:20px;
  background:
    linear-gradient(140deg,rgba(255,214,101,.82),rgba(255,248,233,.96) 38%,rgba(111,223,255,.34) 100%);
  border:1px solid rgba(255,255,255,.58);
  border-radius:28px;
  padding:24px 18px;
  box-shadow:0 20px 40px rgba(42,36,26,.1), inset 0 1px 0 rgba(255,255,255,.75);
  position:relative;
  overflow:hidden;
}
.hero-card::before{
  content:'';
  position:absolute;
  top:-50%;right:-50%;
  width:200%;height:200%;
  background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);
  animation:heroShine 8s ease-in-out infinite;
}
@keyframes heroShine{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(180deg) translate(-20px,20px)}
}
.hero-title{position:relative;z-index:1;text-align:center}
.hero-headlines{
  display:flex;flex-direction:column;align-items:center;gap:12px;
  max-width:100%;margin:0 auto 4px;
}
.hero-kicker{
  font-family:var(--font-display);
  margin:0;
  padding:0;
  font-weight:900;
  font-size:clamp(1.55rem,6.2vw,2.45rem);
  line-height:1.08;
  letter-spacing:-.015em;
  color:var(--ink);
  text-wrap:balance;
  max-width:16ch;
}
.hero-badge{
  font-family:var(--font-display);
  display:inline-block;
  width:min(100%,520px);
  text-align:center;
  background:linear-gradient(135deg,rgba(233,117,46,1),rgba(255,140,0,1) 58%,rgba(255,125,184,.9));
  color:#fff;
  padding:clamp(14px,3.5vw,22px) clamp(16px,4vw,28px);
  border-radius:20px;
  font-weight:900;
  font-size:clamp(1.65rem,6.8vw,2.55rem);
  line-height:1.1;
  border:2px solid rgba(255,255,255,.38);
  box-shadow:0 18px 36px rgba(233,117,46,.24), inset 0 1px 0 rgba(255,255,255,.35);
  text-shadow:2px 2px 4px rgba(0,0,0,.2);
  transform:rotate(-1deg);
  transition:transform 0.2s;
  text-wrap:balance;
}
.hero-badge:hover{transform:rotate(0deg) scale(1.02)}
.hero-sub{
  margin:16px auto 18px;font-weight:800;
  font-size:clamp(.95rem,2.6vw,1.05rem);line-height:1.55;color:var(--ink);
  max-width:42ch;text-align:center;text-wrap:pretty;
}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}
.hero-secondary-btn{
  background:rgba(255,255,255,.62);
  border-color:rgba(42,36,26,.16);
}
.hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;justify-content:center}
.hero-pill{
  font-family:var(--font-display);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(42,36,26,.08);
  box-shadow:0 10px 22px rgba(42,36,26,.06);
  font-weight:900;
  font-size:13px;
}
.hero-mascot{
  display:flex;
  align-items:center;
  justify-content:center;
  height:220px;
  min-height:220px;
  position:relative;
  overflow:visible;
  padding:20px;
}
.hero-orb{
  position:absolute;
  border-radius:999px;
  filter:blur(2px);
  opacity:.95;
}
.hero-orb-one{
  width:96px;
  height:96px;
  left:8%;
  top:6%;
  background:radial-gradient(circle,rgba(255,125,184,.75),rgba(255,125,184,0));
}
.hero-orb-two{
  width:130px;
  height:130px;
  right:4%;
  bottom:8%;
  background:radial-gradient(circle,rgba(111,223,255,.78),rgba(111,223,255,0));
}
.hero-mascot-img{
  width:auto;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 10px 20px rgba(42,36,26,.25)) drop-shadow(0 4px 8px rgba(42,36,26,.15));
  animation:flyDynamic 4s ease-in-out infinite;
  transition:transform 0.3s;
  transform-origin:center center;
}
.hero-mascot-img:hover{
  animation:flyHover 1.5s ease-in-out infinite;
  transform:scale(1.15);
}
@keyframes flyDynamic{
  0%{transform:translate(0, 0) rotate(0deg) scale(1)}
  10%{transform:translate(8px, -12px) rotate(5deg) scale(1.02)}
  20%{transform:translate(-6px, -18px) rotate(-4deg) scale(1.04)}
  30%{transform:translate(10px, -8px) rotate(6deg) scale(1.03)}
  40%{transform:translate(-8px, -20px) rotate(-5deg) scale(1.05)}
  50%{transform:translate(6px, -10px) rotate(4deg) scale(1.04)}
  60%{transform:translate(-10px, -16px) rotate(-6deg) scale(1.03)}
  70%{transform:translate(8px, -14px) rotate(5deg) scale(1.05)}
  80%{transform:translate(-6px, -8px) rotate(-4deg) scale(1.02)}
  90%{transform:translate(10px, -18px) rotate(6deg) scale(1.04)}
  100%{transform:translate(0, 0) rotate(0deg) scale(1)}
}
@keyframes flyHover{
  0%,100%{transform:translate(0, 0) rotate(0deg) scale(1.15)}
  25%{transform:translate(12px, -15px) rotate(8deg) scale(1.18)}
  50%{transform:translate(-12px, -20px) rotate(-8deg) scale(1.20)}
  75%{transform:translate(10px, -12px) rotate(6deg) scale(1.17)}
}

/* Fly + bubble */
.fly{position:absolute;right:12px;bottom:-8px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.fly-bubble{
  max-width:280px;
  background:rgba(255,248,233,.98);
  border:2px solid rgba(42,36,26,.22);
  border-radius:18px;
  padding:10px 12px;
  font-family:var(--font-body);
  font-weight:700;
  box-shadow:0 6px 0 rgba(42,36,26,.08);
}
.fly-body{
  width:84px;height:84px;border-radius:50%;
  background:
    radial-gradient(circle at 40% 38%, rgba(123,181,90,.85) 0 22%, transparent 23%),
    radial-gradient(circle at 60% 40%, rgba(123,181,90,.85) 0 22%, transparent 23%),
    radial-gradient(circle at 50% 62%, rgba(42,36,26,.85) 0 48%, transparent 49%),
    radial-gradient(circle at 50% 62%, rgba(255,255,255,.12) 0 48%, transparent 49%);
  border:3px solid rgba(42,36,26,.22);
  transition:transform 0.3s ease;
}
/* Когато се чака генериране — мухата се върти/лети */
body.gen-waiting .fly .fly-body{
  animation:flyBuzz 1.2s ease-in-out infinite;
}
@keyframes flyBuzz{
  0%,100%{transform:rotate(-8deg) translateY(0) scale(1)}
  25%{transform:rotate(8deg) translateY(-6px) scale(1.05)}
  50%{transform:rotate(-6deg) translateY(-10px) scale(1.02)}
  75%{transform:rotate(6deg) translateY(-4px) scale(1.05)}
}

/* Sections */
.section{margin-top:36px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.section-kicker{
  font-family:var(--font-display);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--orange);
  margin-bottom:4px;
}
.section-title{
  font-family:var(--font-display);
  margin:16px 0 14px;
  font-size:24px;
  font-weight:900;
  color:var(--ink);
  text-shadow:1px 1px 2px rgba(42,36,26,.1);
  position:relative;
  padding-bottom:8px;
}
.section-title::after{
  content:'';
  position:absolute;
  bottom:0;left:0;
  width:60px;
  height:4px;
  background:linear-gradient(90deg,var(--orange),var(--yellow));
  border-radius:2px;
}

.category-carousel-wrapper{
  position:relative;
  width:100%;
  max-width:1400px;
  margin:0 auto;
  padding:0 50px;
}
.category-carousel{
  overflow-x:auto;
  overflow-y:hidden;
  width:100%;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  scroll-snap-type:x mandatory;
}
.category-carousel::-webkit-scrollbar{display:none}
.category-carousel-track{
  display:flex;
  gap:20px;
  will-change:transform;
}
.category-item{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  flex:0 0 100%;
  min-width:0;
  gap:8px;
  scroll-snap-align:start;
  position:relative;
}
.category-label{
  font-family:var(--font-display);
  font-size:clamp(14px, 1.2vw, 18px);
  font-weight:700;
  color:var(--ink);
  text-align:center;
  text-transform:none;
  letter-spacing:0.5px;
  line-height:1.25;
  padding:9px 12px;
  background:linear-gradient(135deg, color-mix(in srgb, var(--cat-accent-1) 20%, white), color-mix(in srgb, var(--cat-accent-soft) 76%, white));
  border:1px solid color-mix(in srgb, var(--cat-accent-2) 24%, rgba(42,36,26,.12));
  border-radius:16px;
  box-shadow:
    0 10px 24px color-mix(in srgb, var(--cat-accent-1) 18%, transparent),
    inset 0 1px 0 rgba(255,255,255,.78);
  position:relative;
  z-index:2;
  white-space:normal;
  transform:none;
  transition:all 0.3s ease;
  align-self:stretch;
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.category-item:hover .category-label{
  transform:translateY(-2px) scale(1.02);
  box-shadow:
    0 14px 28px color-mix(in srgb, var(--cat-accent-1) 26%, transparent),
    inset 0 1px 0 rgba(255,255,255,.9);
  border-color:color-mix(in srgb, var(--cat-accent-2) 40%, rgba(42,36,26,.15));
}
.category-card{
  text-decoration:none;
  color:var(--ink);
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), color-mix(in srgb, var(--cat-accent-soft) 58%, white));
  border:1px solid color-mix(in srgb, var(--cat-accent-2) 24%, rgba(42,36,26,.12));
  border-radius:22px;
  padding:0;
  text-align:center;
  box-shadow:
    0 18px 34px rgba(42,36,26,.08),
    0 8px 22px color-mix(in srgb, var(--cat-accent-1) 18%, transparent),
    inset 0 1px 0 rgba(255,255,255,.88);
  transition:all 0.25s ease;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  width:100%;
  min-width:0;
  align-items:stretch;
}
.category-card:hover{
  transform:translateY(-6px) rotate(-.4deg);
  box-shadow:
    0 24px 44px rgba(42,36,26,.12),
    0 12px 28px color-mix(in srgb, var(--cat-accent-1) 28%, transparent),
    inset 0 1px 0 rgba(255,255,255,.92);
  border-color:color-mix(in srgb, var(--cat-accent-2) 42%, rgba(42,36,26,.18));
}
.category-shine{
  position:absolute;
  inset:auto -20% 52% auto;
  width:80%;
  height:55%;
  background:linear-gradient(135deg, rgba(255,255,255,.74), rgba(255,255,255,0));
  transform:rotate(10deg);
  pointer-events:none;
  z-index:1;
}
.category-icon{
  font-size:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:26px 20px 12px;
  min-height:96px;
}
.category-copy{
  padding:0 16px 18px;
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
  font-weight:700;
  text-align:center;
  position:relative;
  z-index:2;
}
.category-image{
  width:100%;
  padding-top:177.78%;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 16%, rgba(255,255,255,.92), rgba(255,255,255,.55) 36%, color-mix(in srgb, var(--cat-accent-soft) 60%, #dfe7f0) 37%, color-mix(in srgb, var(--cat-accent-soft) 70%, #d6dfe8) 100%);
  margin:0;
  flex-shrink:0;
  display:block;
}
@supports (aspect-ratio:9/16){
  .category-image{padding-top:0;aspect-ratio:9/16;max-height:320px;display:flex;align-items:center;justify-content:center}
}
.category-image img{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  background-color:rgba(255,255,255,.5);
  transition:transform .35s ease, filter .35s ease;
  z-index:2;
}
.category-item:hover .category-image img{
  transform:scale(1.045);
  filter:saturate(1.08) contrast(1.02);
}
.carousel-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(255,255,255,0.9);
  backdrop-filter:blur(8px);
  border:1px solid rgba(42,36,26,.12);
  border-radius:50%;
  width:44px;
  height:44px;
  color:var(--ink);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  box-shadow:0 2px 10px rgba(42,36,26,.08);
  transition:all 0.3s ease;
  z-index:10;
  user-select:none;
  padding:0;
  line-height:1;
  opacity:0.85;
}
.carousel-fly{
  display:block;
  width:32px;
  height:32px;
  position:absolute;
  top:-18px;
  left:50%;
  transform:translateX(-50%);
  z-index:11;
  transition:transform 0.2s ease;
  pointer-events:none;
}
.carousel-fly img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 2px 4px rgba(42,36,26,.2));
}
.carousel-btn-prev .carousel-fly img{transform:scaleX(-1)}
.carousel-arrow{
  font-size:20px;
  font-weight:900;
  line-height:1;
  margin-top:8px;
  position:relative;
  z-index:1;
}
.carousel-btn:hover{
  transform:translateY(-50%) scale(1.08);
  opacity:1;
  background:rgba(255,255,255,0.98);
  border-color:rgba(42,36,26,.2);
  box-shadow:0 4px 14px rgba(42,36,26,.12);
}
.carousel-btn:hover .carousel-fly{
  animation:carouselFlyTremble 0.4s ease-in-out infinite;
}
@keyframes carouselFlyTremble{
  0%,100%{transform:translateX(0) translateY(0) rotate(0deg)}
  25%{transform:translateX(1px) translateY(-1px) rotate(-1deg)}
  75%{transform:translateX(-1px) translateY(1px) rotate(1deg)}
}
.carousel-btn:active{
  transform:translateY(-50%) scale(1.02);
}
.carousel-btn-prev{
  left:8px;
}
.carousel-btn-next{
  right:8px;
}

.product-grid{display:grid;grid-template-columns:1fr;gap:14px}
.product-card{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,248,233,.96));
  border:1px solid rgba(42,36,26,.1);
  border-radius:24px;
  padding:14px;
  box-shadow:0 18px 36px rgba(42,36,26,.08), inset 0 1px 0 rgba(255,255,255,.85);
  transition:all 0.2s;
  backdrop-filter:blur(8px);
}
.product-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 44px rgba(42,36,26,.12);
}
.product-img{
  background:rgba(255,255,255,.85);
  border:2px dashed rgba(42,36,26,.2);
  border-radius:16px;
  padding:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:200px;
  margin-bottom:12px;
}
.product-img img{max-width:100%;height:auto;display:block;border-radius:8px}
.product-title{margin:12px 0 10px;font-family:var(--font-display);font-weight:700;font-size:16px;line-height:1.4}
.product-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.product-row-end{justify-content:flex-end}
.price{font-weight:900;font-size:18px;color:var(--orange)}

.section-latest{
  position:relative;
}
.latest-designs-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
.latest-design-card{
  position:relative;
  overflow:visible;
  border:2px solid color-mix(in srgb, var(--design-accent-2, var(--yellow2)) 55%, rgba(42,36,26,.08));
  background:
    linear-gradient(165deg, var(--design-accent-1, var(--yellow)) 0%, var(--design-accent-2, var(--yellow2)) 100%);
  box-shadow:
    0 20px 40px rgba(42,36,26,.08),
    0 10px 26px color-mix(in srgb, var(--design-accent-1, var(--yellow)) 24%, transparent),
    inset 0 1px 0 rgba(255,255,255,.9);
}
.latest-design-card .product-row{
  margin-top:0;
}
.latest-design-card::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,.18),transparent 35%),
    radial-gradient(circle at top right, rgba(255,255,255,.18), transparent 42%);
  pointer-events:none;
}
.latest-stage{
  position:relative;
  overflow:visible;
  min-height:280px;
  margin-bottom:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.88));
  border:1px solid rgba(255,255,255,.9);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 10px 24px rgba(42,36,26,.08);
}
.latest-card-panel{
  margin-top:0;
  padding:2px 4px 10px;
  border-radius:0;
  background:transparent;
  color:var(--design-panel-text, #2a241a);
}
.latest-design-title{
  margin:0 0 14px;
  color:var(--design-panel-text, #2a241a);
  text-shadow:0 1px 0 rgba(255,255,255,.12);
}
.latest-buy-btn{
  background:var(--design-button-bg, #fff);
  color:var(--design-button-text, #2a241a);
  border-color:color-mix(in srgb, var(--design-button-text, #2a241a) 18%, transparent);
  box-shadow:0 10px 20px rgba(42,36,26,.14);
}
.latest-buy-btn:hover{
  background:color-mix(in srgb, var(--design-button-bg, #fff) 88%, #ffffff);
}
.latest-empty{
  padding:22px 18px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,248,233,.96));
  border:1px solid rgba(42,36,26,.1);
  box-shadow:0 18px 36px rgba(42,36,26,.08);
}
.latest-empty-title{
  font-family:var(--font-display);
  font-size:20px;
  font-weight:900;
  margin-bottom:8px;
}

/* Mockup editor */
.mockup-editor{margin-top:14px}
.mockup-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:10px}
.mockup-title{font-family:var(--font-display);font-weight:700}
.mockup-design-link{
  font-size:.88rem;
  font-weight:800;
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
.mockup-editor .mockup-img{pointer-events:none}
.mockup-editor .overlay-img{pointer-events:none;cursor:default}
.mockup-zoom-hint{font-size:.82rem;font-weight:700;text-align:right}
.mockup-viewport{
  position:relative;
  margin-top:12px;
  border-radius:18px;
  overflow:hidden;
  border:2px solid rgba(42,36,26,.18);
  background:rgba(255,255,255,.55);
  box-shadow:0 10px 0 rgba(42,36,26,.08);
  height:min(62vh,520px);
  width:100%;
  touch-action:pan-y;
  cursor:zoom-in;
  user-select:none;
  -webkit-user-select:none;
}
.mockup-viewport:active{cursor:zoom-in}
.mockup-stage-canvas{
  width:100%;
  height:100%;
  transform-origin:center center;
}
.mockup-viewport.is-zoomed .mockup-stage-canvas{
  will-change:transform;
}
.mockup-viewport .mockup-stage{
  margin-top:0;
  border:0;
  box-shadow:none;
  height:100%;
  border-radius:0;
  overflow:hidden;
}
.mockup-viewport-card{
  height:280px;
  min-height:280px;
  margin-top:0;
  margin-bottom:12px;
  touch-action:pan-y;
  cursor:zoom-in;
}
.mockup-viewport-card:active{cursor:zoom-in}
.mockup-viewport-card .cart-stage,
.mockup-viewport-card .latest-stage{
  min-height:100%;
  height:100%;
  margin-bottom:0;
  border:0;
  box-shadow:none;
  border-radius:0;
  overflow:hidden;
}
.mockup-viewport-card::after{
  content:'Преглед';
  position:absolute;
  right:10px;
  bottom:8px;
  z-index:30;
  padding:4px 9px;
  border-radius:999px;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:rgba(42,36,26,.72);
  background:rgba(255,255,255,.78);
  border:1px solid rgba(42,36,26,.12);
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
}
.mockup-viewport-card:hover::after,
.mockup-viewport-card:focus-within::after{
  opacity:1;
}
.muha-protect-shield{
  position:absolute;
  inset:0;
  z-index:25;
  pointer-events:none;
  background:transparent;
  -webkit-touch-callout:none;
}
.muha-no-save img,
.muha-protected-stage img,
.mockup-viewport img,
img.overlay-img,
img.cart-overlay{
  -webkit-touch-callout:none;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
.section-gallery .section-head{margin-bottom:16px}
.gallery-filters{margin-bottom:14px;padding:16px}
.gallery-filters-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:end;
}
.gallery-filter-field{display:flex;flex-direction:column;gap:6px}
.gallery-filter-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.gallery-results-count{margin:0 0 14px;font-weight:700}
.gallery-card-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 8px;
  font-size:.82rem;
  font-weight:800;
}
.gallery-card-tags span{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.28);
  border:1px solid rgba(255,255,255,.35);
}
.mockup-text-toolbar{margin-top:10px;justify-content:flex-start;align-items:center;gap:10px}
.mockup-font-select{min-width:150px;padding:8px 10px;font-weight:900;border-radius:12px}
.mockup-control{display:flex;gap:10px;align-items:center;font-weight:800}
.mockup-control input[type="range"]{width:220px}
.mockup-control-color input[type="color"]{
  width:44px;
  height:34px;
  border:0;
  padding:0;
  background:none;
  cursor:pointer;
}
.mockup-stage{
  position:relative;
  margin-top:12px;
  border-radius:18px;
  overflow:visible;
  border:2px solid rgba(42,36,26,.18);
  background:rgba(255,255,255,.55);
  box-shadow:0 10px 0 rgba(42,36,26,.08);
  height:min(62vh, 520px);
  width:100%;
}
.mockup-editor{
  overflow:visible;
}
.mockup-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  border-radius:16px;
}
.mockup-overlay-zone{
  position:absolute;
  pointer-events:none;
  overflow:visible;
}
.mockup-overlay-frame{
  position:absolute;
  inset:7%;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
  pointer-events:none;
}
.overlay-img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
  transform-origin:center center;
  touch-action:none;
  cursor:default;
  user-select:none;
  pointer-events:none;
  image-rendering:auto;
}
.mockup-viewport.is-zoomed .overlay-img,
.mockup-viewport.is-zoomed .cart-overlay,
.mockup-viewport.is-zoomed .mockup-img{
  image-rendering:auto;
}
.overlay-text-badge{
  position:absolute;
  left:50%;
  top:42%;
  width:auto;
  min-width:40%;
  max-width:78%;
  min-height:38%;
  padding:0 8% 7%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  text-align:center;
  font-weight:900;
  font-family:"Arial Black","Trebuchet MS",Arial,sans-serif;
  font-size:clamp(12px,1.5vw,26px);
  line-height:.98;
  letter-spacing:.015em;
  color:#fff3a3;
  -webkit-text-stroke:1.8px #17120b;
  paint-order:stroke fill;
  text-shadow:
    0 2px 0 #17120b,
    2px 3px 0 rgba(224,76,43,.75),
    0 6px 10px rgba(0,0,0,.24);
  pointer-events:auto;
  user-select:none;
  z-index:3;
  transform:translate(-50%,-50%);
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  cursor:grab;
}
.overlay-text-badge[data-font="muha-bubble"]{
  font-family:"Arial Black","Trebuchet MS",Arial,sans-serif;
  letter-spacing:.01em;
  text-transform:uppercase;
}
.overlay-text-badge[data-font="muha-comic"]{
  font-family:"Comic Sans MS","Trebuchet MS",Arial,sans-serif;
  letter-spacing:.015em;
}
.overlay-text-badge[data-font="muha-impact"]{
  font-family:Impact,"Arial Black","Arial Narrow",Arial,sans-serif;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.overlay-text-badge[data-font="muha-rounded"]{
  font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif;
  letter-spacing:.02em;
}
.overlay-text-badge:active{cursor:grabbing}
.mockup-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-top:12px}

@media (max-width:640px){
  .topbar-inner{
    align-items:center;
  }
  .brand{order:1}
  .top-icons{order:2;margin-left:auto}
  .search{
    order:3;
    width:100%;
    min-width:0;
  }
  .nav-strip{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:12px;
    scrollbar-width:none;
  }
  .nav-strip::-webkit-scrollbar{display:none}
  .nav-item{flex:0 0 auto}
  .header-slogan-bar{padding:4px 8px 6px}
  .header-slogan-stack{gap:3px}
  .header-slogan-orbit-wrap{padding:0 2px}
  .header-orbit-spinner{inset:-1px -4px 0}
  .header-orbit-fly{width:20px;height:20px;margin:-10px 0 0 -10px;transform:translateX(clamp(58px,18vw,96px))}
  .header-slogan-text{font-size:.86rem;line-height:1.12;padding:0 2px}
  .header-slogan-cta{padding:5px 12px;font-size:.72rem;min-height:28px}
  @keyframes headerFlyUpright{to{transform:translateX(clamp(58px,18vw,96px)) rotate(-360deg)}}
  .hero-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .hero-actions .btn{
    width:100%;
  }
  .mockup-control input[type="range"]{width:180px}
  .mockup-viewport{height:min(55vh,420px)}
  .mockup-stage{height:min(55vh, 420px)}
  .gallery-filters-grid{grid-template-columns:1fr}
  .mockup-text-toolbar{align-items:stretch}
  .mockup-text-toolbar .mockup-control{width:100%}
  .mockup-font-select{width:100%;min-width:0}
  .overlay-text-badge{width:auto;min-width:52%;max-width:86%;font-size:clamp(11px,2.8vw,18px)}
}

/* Cart preview */
.cart-head-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  margin-bottom:14px;
}
.cart-head-note{margin:6px 0 0}
.cart-item-meta{margin-top:10px}
.cart-item-caption{font-weight:800;line-height:1.45;font-size:.92rem}
.cart-item-idea{margin-top:4px;font-size:.84rem;font-weight:700}
.cart-item-remove-form{margin-top:10px}
.cart-item-remove-btn{
  background:rgba(255,255,255,.72);
  color:#8a1f12;
  border-color:rgba(138,31,18,.22);
}
.cart-secondary-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:14px 0 4px;
}
.cart-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:14px}
.cart-item{background:rgba(255,255,255,.35);border:1px solid rgba(42,36,26,.12);border-radius:18px;padding:12px}
.cart-stage{
  position:relative;
  border-radius:16px;
  overflow:visible;
  border:2px solid rgba(42,36,26,.12);
  background:rgba(255,255,255,.55);
  min-height:320px;
}
.cart-stage .mockup-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.cart-stage .mockup-overlay-zone{
  position:absolute;
  pointer-events:none;
  overflow:visible;
}
.cart-stage .mockup-overlay-frame{
  position:absolute;
  inset:7%;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
  pointer-events:none;
}
.cart-stage .overlay-img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
  transform-origin:center center;
  z-index:2;
  background:transparent;
}
.cart-stage .overlay-text-badge{
  position:absolute;
  left:50%;
  top:42%;
  width:auto;
  min-width:40%;
  max-width:78%;
  min-height:38%;
  padding:0 8% 7%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  text-align:center;
  font-weight:900;
  font-family:"Arial Black","Trebuchet MS",Arial,sans-serif;
  font-size:clamp(12px,1.5vw,26px);
  line-height:.98;
  letter-spacing:.015em;
  color:#fff3a3;
  -webkit-text-stroke:1.8px #17120b;
  paint-order:stroke fill;
  text-shadow:
    0 2px 0 #17120b,
    2px 3px 0 rgba(224,76,43,.75),
    0 6px 10px rgba(0,0,0,.24);
  z-index:3;
  pointer-events:none;
  user-select:none;
  transform:translate(-50%,-50%);
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
}
.cart-stage .cart-overlay-missing{
  position:absolute;
  left:50%;
  top:42%;
  transform:translate(-50%,-50%);
  z-index:2;
  padding:12px 16px;
  background:rgba(42,36,26,.08);
  border-radius:12px;
  font-size:0.9rem;
  color:var(--muted);
}

@media (min-width:768px){
  .cart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .cart-stage{min-height:260px}
  .mockup-viewport-card{height:260px;min-height:260px}
}
}

/* Cart page — поръчка, забавно в стила с мухата */
.cart-page .card-fly-style{
  background:linear-gradient(135deg,rgba(255,248,233,.98),rgba(255,235,200,.4));
  border-color:rgba(255,214,101,.5);
  box-shadow:0 8px 0 rgba(42,36,26,.08),0 0 30px rgba(255,214,101,.15);
}
.cart-success-msg{
  font-size:1.1rem;
  padding:12px 0;
  margin:0 0 12px;
  color:var(--ink);
}
.cart-hr{
  border:0;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(42,36,26,.15),transparent);
  margin:1.5rem 0;
}
.cart-section-title{
  margin:0 0 8px;
  font-size:1.15rem;
  font-weight:900;
  color:var(--ink);
}
.cart-order-form .form-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px 16px;
}
@media (min-width:520px){
  .cart-order-form .form-grid{grid-template-columns:1fr 1fr}
  .cart-order-form .field-full{grid-column:1/-1}
}
.cart-order-form .input{
  width:100%;
  border-radius:14px;
  border:2px solid rgba(42,36,26,.18);
  background:rgba(255,255,255,.85);
  padding:10px 12px;
  font-size:14px;
  outline:none;
}
.cart-order-form .input:focus,.cart-order-form .textarea:focus{
  border-color:var(--yellow2);
  box-shadow:0 0 0 3px rgba(255,214,101,.3);
}
.cart-terms-label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-weight:800;
  cursor:pointer;
}
.cart-terms-label input{accent-color:var(--green);margin-top:4px}

/* Wizard */
.wizard{max-width:1240px;margin:0 auto;padding:0 10px}
.wizard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 12px}
.wizard-title{margin:0;font-size:22px;font-weight:900;font-family:var(--font-display)}
.wizard-steps{display:flex;gap:6px}
.wizard-steps-wide{flex-wrap:wrap;justify-content:flex-end}
.step{width:30px;height:30px;border-radius:999px;border:2px solid rgba(42,36,26,.22);display:flex;align-items:center;justify-content:center;font-weight:900;background:rgba(255,255,255,.75)}
.step.is-active{background:rgba(255,214,101,.95)}
.step.is-done{background:rgba(123,181,90,.35)}

.card{background:var(--card);border:2px solid rgba(42,36,26,.18);border-radius:24px;padding:22px;box-shadow:0 12px 0 rgba(42,36,26,.08),0 14px 32px rgba(42,36,26,.06);position:relative}
.card-funnel{
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,249,238,.9)),
    radial-gradient(circle at top right, rgba(255,214,101,.18), transparent 34%);
}
.wizard-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(42,36,26,.06);
  color:var(--muted);
  font-size:12px;
  font-family:var(--font-display);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:10px;
}
.card-title{margin:0 0 10px;font-size:18px;font-weight:900;font-family:var(--font-display)}
.field{margin:12px 0}
.label{display:block;font-weight:800;margin-bottom:6px}
.selected-summary{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  align-items:center;
  margin-bottom:18px;
  padding:14px 16px;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(245,242,235,.96));
  border:1px solid rgba(42,36,26,.1);
  border-radius:18px;
  font-size:.96rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
}
.select,.textarea{
  width:100%;
  border-radius:14px;
  border:2px solid rgba(42,36,26,.18);
  background:rgba(255,255,255,.75);
  padding:10px 12px;
  font-size:14px;
  outline:none;
}
.hint{margin-top:6px;color:var(--muted);font-size:12px;font-weight:700}
.funnel-hidden-select{
  position:absolute;
  opacity:0;
  pointer-events:none;
  width:1px;
  height:1px;
}

.recipient-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
  margin:16px 0;
}
.recipient-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:138px;
  padding:16px;
  border-radius:22px;
  border:2px solid rgba(42,36,26,.12);
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,247,230,.92));
  box-shadow:0 16px 30px rgba(42,36,26,.08);
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.recipient-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 38px rgba(42,36,26,.12);
}
.recipient-card.is-selected{
  border-color:rgba(255,155,68,.6);
  box-shadow:0 22px 40px rgba(255,155,68,.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,236,204,.94));
}
.recipient-card input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.recipient-card-icon{font-size:28px;line-height:1}
.recipient-card-title{font-family:var(--font-display);font-size:18px;font-weight:900;color:var(--ink)}
.recipient-card-copy{font-size:13px;line-height:1.45;color:var(--muted);font-weight:700}

.funnel-subcat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}

.vibe-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:14px;
  margin:18px 0 8px;
}
.vibe-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:146px;
  padding:16px;
  border-radius:22px;
  border:2px solid rgba(42,36,26,.1);
  background:
    linear-gradient(160deg, rgba(255,255,255,.98), rgba(240,246,255,.92));
  box-shadow:0 16px 30px rgba(42,36,26,.08);
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  width:100%;
}
.vibe-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 38px rgba(42,36,26,.12);
}
.vibe-card.is-selected,
.vibe-card:has(input:checked){
  border-color:rgba(123,181,90,.52);
  box-shadow:0 22px 40px rgba(123,181,90,.18);
  background:
    linear-gradient(160deg, rgba(255,255,255,.98), rgba(230,255,240,.94));
}
.vibe-card input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.vibe-card-title{font-family:var(--font-display);font-size:18px;font-weight:900}
.vibe-card-copy{font-size:13px;line-height:1.5;color:var(--muted);font-weight:700}

.idea-hero{
  padding:16px;
  border-radius:24px;
  border:2px solid rgba(42,36,26,.12);
  background:
    radial-gradient(circle at top right, rgba(255,214,101,.2), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,248,233,.92));
  box-shadow:0 18px 34px rgba(42,36,26,.08);
}
.idea-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.95fr);
  gap:18px;
  align-items:start;
}
.idea-side-panel{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.idea-textarea{
  min-height:148px;
  font-size:15px;
  line-height:1.6;
}
.idea-actions,
.idea-examples{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:0;
}
.idea-helper-btn{
  background:rgba(255,255,255,.96);
  width:100%;
  justify-content:flex-start;
}
.idea-example-chip{
  border:0;
  cursor:pointer;
  text-align:left;
  color:var(--ink);
  width:100%;
  border-radius:18px;
  justify-content:flex-start;
  padding:12px 14px;
  white-space:normal;
}
.ai-wait-show{
  margin:14px 0 6px;
  padding:16px;
  border-radius:26px;
  background:
    radial-gradient(circle at 22% 12%,rgba(255,214,101,.72),transparent 34%),
    radial-gradient(circle at 82% 18%,rgba(255,125,184,.28),transparent 32%),
    linear-gradient(135deg,rgba(255,214,101,.36),rgba(255,255,255,.78) 55%,rgba(255,125,184,.18));
  border:1px solid rgba(42,36,26,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 18px 36px rgba(42,36,26,.08);
  overflow:hidden;
}
.wait-hero-stage{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr);
  gap:18px;
  align-items:center;
  min-height:260px;
  padding:14px;
}
.wait-stage-copy{
  position:relative;
  min-height:170px;
  overflow:visible;
}
.wait-step{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:20px;
  border-radius:24px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(42,36,26,.1);
  box-shadow:0 14px 30px rgba(42,36,26,.1);
  opacity:0;
  transform:translateY(18px) scale(.97);
  animation:waitStepOut 6s ease both;
}
.wait-step-two{animation-delay:6s}
.wait-step-three{animation:waitStepFinal 6s ease 12s both}
.wait-step-count{
  align-self:flex-start;
  padding:7px 11px;
  border-radius:999px;
  background:#17120b;
  color:#ffd665;
  font-weight:950;
  font-size:.78rem;
  letter-spacing:.08em;
}
.wait-step strong{
  font-family:var(--font-display);
  font-size:clamp(1.55rem,4vw,2.9rem);
  line-height:1.02;
  color:#2a241a;
  text-shadow:0 3px 0 rgba(255,214,101,.55);
}
.wait-step small{
  max-width:46ch;
  color:#5f513d;
  font-size:1rem;
  font-weight:950;
  line-height:1.35;
}
.wait-orbit-fly{
  position:absolute;
  width:76px;
  height:auto;
  left:50%;
  top:50%;
  filter:drop-shadow(0 8px 8px rgba(42,36,26,.22));
  transform-origin:calc(-1 * min(28vw, 250px)) 0;
  animation:waitFlyOrbit 6s linear infinite;
  z-index:5;
  pointer-events:none;
}
.wait-video-panel{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:260px;
  padding:10px;
  border-radius:28px;
  background:rgba(255,255,255,.52);
  border:1px solid rgba(42,36,26,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 26px rgba(42,36,26,.08);
  overflow:visible;
}
.wait-video-panel video{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:320px;
  object-fit:contain;
  border-radius:20px;
  box-shadow:0 12px 28px rgba(42,36,26,.16);
}
.wait-media-strip{
  display:flex;
  gap:12px;
  overflow:hidden;
  padding:8px 0 2px;
}
.wait-media-strip-single{justify-content:center}
.wait-media-card{
  flex:0 0 clamp(130px,20vw,190px);
  height:112px;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(135deg,#17120b,#3b2a09);
  color:#fff3a3;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-weight:950;
  box-shadow:0 10px 24px rgba(42,36,26,.16);
  animation:waitCardSlide 16s linear infinite;
}
.wait-media-video-card{
  flex-basis:min(100%,620px);
  height:clamp(150px,26vw,260px);
  animation:none;
}
.wait-media-card img,.wait-media-card video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
@keyframes waitStepOut{
  0%,8%{opacity:0;transform:translateY(18px) scale(.97)}
  16%,78%{opacity:1;transform:translateY(0) scale(1)}
  100%{opacity:0;transform:translateY(-16px) scale(.98)}
}
@keyframes waitStepFinal{
  0%,8%{opacity:0;transform:translateY(18px) scale(.97)}
  16%,100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes waitFlyOrbit{
  0%{transform:translate(-50%,-50%) rotate(0deg) translateX(clamp(120px,22vw,250px)) rotate(0deg) scale(.82)}
  25%{transform:translate(-50%,-50%) rotate(90deg) translateX(clamp(120px,22vw,250px)) rotate(-70deg) scale(.95)}
  50%{transform:translate(-50%,-50%) rotate(180deg) translateX(clamp(120px,22vw,250px)) rotate(-160deg) scale(.86)}
  75%{transform:translate(-50%,-50%) rotate(270deg) translateX(clamp(120px,22vw,250px)) rotate(-250deg) scale(1)}
  100%{transform:translate(-50%,-50%) rotate(360deg) translateX(clamp(120px,22vw,250px)) rotate(-360deg) scale(.82)}
}
@keyframes waitCardSlide{
  0%{transform:translateX(0)}
  50%{transform:translateX(-18px)}
  100%{transform:translateX(0)}
}
@media (max-width:760px){
  .wait-hero-stage{grid-template-columns:1fr;min-height:430px}
  .wait-stage-copy{min-height:180px}
  .wait-video-panel{min-height:180px}
  .wait-video-panel video{max-height:220px}
  .wait-orbit-fly{width:58px}
  .wait-media-card{height:96px}
}
.subcat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.chip{display:flex;align-items:center;gap:10px;background:rgba(255,214,101,.55);border:1px solid rgba(42,36,26,.18);border-radius:999px;padding:8px 10px;font-family:var(--font-display);font-weight:700}
.chip input{accent-color:var(--orange)}

.checks{display:flex;flex-wrap:wrap;gap:10px}
.check{display:flex;align-items:center;gap:8px;background:rgba(123,181,90,.20);border:1px solid rgba(42,36,26,.16);border-radius:999px;padding:8px 10px;font-family:var(--font-display);font-weight:700}
.check input{accent-color:var(--green)}

.actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:12px;flex-wrap:wrap}

.btn{
  font-family:var(--font-display);
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 20px;
  border-radius:999px;
  border:3px solid rgba(42,36,26,.25);
  text-decoration:none;
  font-weight:900;
  font-size:16px;
  color:var(--ink);
  background:rgba(255,255,255,.85);
  box-shadow:0 8px 0 rgba(42,36,26,.12),0 4px 12px rgba(42,36,26,.1);
  cursor:pointer;
  transition:all 0.2s;
  position:relative;
}
.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 0 rgba(42,36,26,.15),0 6px 16px rgba(42,36,26,.15);
}
.btn:active{
  transform:translateY(2px);
  box-shadow:0 4px 0 rgba(42,36,26,.12);
}
.btn-primary{
  background:linear-gradient(135deg,var(--yellow),var(--yellow2));
  color:var(--ink);
  border-color:rgba(42,36,26,.3);
  box-shadow:0 8px 0 rgba(42,36,26,.15),0 0 20px rgba(255,214,101,.4);
  font-size:18px;
  padding:16px 24px;
}
.btn-primary:hover{
  box-shadow:0 10px 0 rgba(42,36,26,.18),0 0 25px rgba(255,214,101,.5);
  background:linear-gradient(135deg,var(--yellow2),var(--yellow));
}
.btn-small{padding:10px 16px;font-size:14px}

.muted{color:var(--muted);font-weight:600}
.notice{margin-top:10px;font-weight:900}

.loader{display:flex;gap:8px;align-items:center;justify-content:center;margin:14px 0}
.loader .dot{width:10px;height:10px;border-radius:999px;background:rgba(42,36,26,.55);animation:muhaDot 1.2s infinite ease-in-out}
.loader .dot:nth-child(2){animation-delay:.15s}
.loader .dot:nth-child(3){animation-delay:.3s}
@keyframes muhaDot{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1.2);opacity:1}}

/* Муха от логото в зоната за изчакване — същият размер като в хедъра (90px), върти се при body.gen-waiting */
.loader-with-fly{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;min-height:60px}
.loader-dots{display:flex;gap:8px;align-items:center}
.loader-fly-logo{
  height:90px;
  width:auto;
  flex-shrink:0;
  display:block;
  filter:drop-shadow(0 4px 8px rgba(42,36,26,.15));
}
body.gen-waiting .loader-fly-logo{
  animation:flyBuzz 1.2s ease-in-out infinite;
}
body.gen-waiting .fly .fly-body{
  animation:flyBuzz 1.2s ease-in-out infinite;
}

@media (min-width:640px){
  .container{padding:16px 24px}
  .topbar-inner{padding:12px 24px}
  .header-slogan-bar{max-width:1200px;padding:10px 24px 12px}
  .nav-strip{padding:0 24px 10px}
  .category-carousel-wrapper{padding:0 60px}
  .category-item{flex:0 0 calc((100% - 60px) / 4)}
  .category-icon{min-height:160px;font-size:64px}
  .category-label{font-size:16px;padding:6px 12px}
  .carousel-btn{width:40px;height:40px}
  .carousel-fly{width:28px;height:28px;top:-16px}
  .carousel-arrow{font-size:18px;margin-top:6px}
}

@media (max-width:900px){
  .idea-layout{grid-template-columns:1fr}
  .idea-helper-btn,.idea-example-chip{width:100%}
}

@media (max-width:640px){
  .card{padding:16px}
  .selected-summary{padding:12px 14px}
  .vibe-grid{grid-template-columns:1fr}
  .recipient-grid{grid-template-columns:1fr}
  .actions{justify-content:stretch}
  .actions .btn{width:100%}
}

@media (min-width:768px){
  .container{max-width:1200px;padding:24px 32px}
  .topbar-inner{max-width:1200px;padding:16px 32px}
  .header-slogan-bar{max-width:1200px;padding:10px 32px 12px}
  .nav-strip{max-width:1200px;padding:0 32px 12px}
  .hero-card{
    grid-template-columns:1.3fr 1fr;
    align-items:center;
    padding:36px 32px;
    gap:32px;
  }
  .hero-title{text-align:left}
  .hero-headlines{align-items:flex-start}
  .hero-sub{margin-left:0;margin-right:0;text-align:left}
  .hero-actions{justify-content:flex-start}
  .hero-pills{justify-content:flex-start}
  .hero-kicker{max-width:14ch;font-size:clamp(1.75rem,3.2vw,2.45rem)}
  .hero-badge{width:auto;max-width:100%;font-size:clamp(1.85rem,3.4vw,2.55rem)}
  .hero-mascot{height:320px;min-height:320px;padding:30px}
  .hero-mascot-img{max-width:450px;max-height:320px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .latest-designs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-filters-grid{grid-template-columns:1.4fr 1fr 1fr auto;gap:14px}
  .category-carousel-wrapper{padding:0 70px}
  .category-item{flex:0 0 calc((100% - 80px) / 5)}
  .category-icon{min-height:180px;font-size:72px}
  .category-label{font-size:17px;padding:6px 12px}
  .section-title{font-size:28px}
  .carousel-btn{width:48px;height:48px}
  .carousel-fly{width:30px;height:30px;top:-17px}
  .carousel-arrow{font-size:19px;margin-top:7px}
}

@media (min-width:1024px){
  .hero-card{padding:40px 36px}
  .hero-kicker{font-size:2.45rem}
  .hero-badge{font-size:2.55rem;padding:22px 28px}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  .latest-designs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .category-carousel-wrapper{padding:0 80px}
  .category-item{flex:0 0 calc((100% - 100px) / 6)}
  .category-icon{min-height:200px;font-size:80px}
  .category-label{font-size:18px;padding:6px 12px}
  .section-title{font-size:32px}
  .carousel-btn{width:46px;height:46px}
  .carousel-fly{width:30px;height:30px;top:-17px}
  .carousel-arrow{font-size:19px;margin-top:7px}
}

@media (min-width:1280px){
  .category-carousel-wrapper{max-width:1600px;padding:0 90px}
  .category-item{flex:0 0 calc((100% - 100px) / 6)}
  .category-icon{min-height:220px;font-size:88px}
  .category-label{font-size:19px;padding:7px 12px}
  .carousel-btn{width:48px;height:48px}
  .carousel-fly{width:32px;height:32px;top:-18px}
  .carousel-arrow{font-size:20px;margin-top:8px}
}

@media (min-width:1280px){
  .container{max-width:1400px}
  .topbar-inner{max-width:1400px}
  .header-slogan-bar{max-width:1400px}
  .nav-strip{max-width:1400px}
}

/* Anchor под sticky header */
#home-create{scroll-margin-top:96px}
#home-create-style{scroll-margin-top:112px}

/* Create funnel — повод / интереси (mockup) */
.muha-create-landing{padding-bottom:24px}
.muha-create-hero{text-align:center;padding:20px 12px 8px}
.muha-create-hero-title{font-family:var(--font-display);font-weight:900;letter-spacing:.04em;font-size:clamp(26px,5vw,40px);margin:0 0 12px}
.muha-create-hero-sub{max-width:520px;margin:0 auto 18px;color:var(--muted);line-height:1.45}
.muha-create-start{display:inline-flex}
.muha-field-group{margin-bottom:18px}
.muha-field-label{font-weight:800;margin-bottom:10px}
.pick-row{display:flex;flex-wrap:nowrap;gap:14px;overflow-x:auto;padding:8px 4px 14px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.pick-option{
  position:relative;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px;
  margin:0;
  border:none;
  background:transparent;
  border-radius:18px;
  cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease;
}
.pick-option input{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.pick-option:focus-within:not(.is-selected){
  outline:none;
  box-shadow:none;
}
.pick-option.is-selected:focus-within{
  outline:2px solid var(--yellow2);
  outline-offset:4px;
}
.pick-option.is-selected{
  box-shadow:0 0 0 3px var(--yellow2), 0 10px 28px rgba(240,170,23,.22);
}
.pick-option:not(.is-selected){
  box-shadow:none;
}
.pick-option.is-selected .pick-option-visual{
  transform:scale(1.02);
}
.pick-option-visual{
  width:clamp(88px, 20vw, 120px);
  height:clamp(88px, 20vw, 120px);
  border-radius:16px;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  transition:transform .15s ease;
}
.pick-option-visual img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.pick-option-emoji{font-size:clamp(40px, 11vw, 56px);line-height:1}
.muha-person-name-field{margin-bottom:14px}
.muha-name-gender-row{
  display:flex;
  gap:10px;
  align-items:stretch;
}
.muha-person-name-input{
  flex:1 1 auto;
  min-width:0;
  max-width:calc(100% - 132px);
  font-size:1.12rem;
  font-weight:800;
  letter-spacing:.01em;
}
.muha-gender-picks{
  display:flex;
  gap:8px;
  flex:0 0 auto;
  align-items:stretch;
}
.muha-gender-pick{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-width:58px;
  padding:6px 8px 5px;
  border:3px solid rgba(42,36,26,.16);
  border-radius:14px;
  background:rgba(255,255,255,.82);
  box-shadow:0 8px 18px rgba(42,36,26,.06);
  cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
}
.muha-gender-pick-check{
  position:absolute;
  top:4px;
  right:4px;
  width:18px;
  height:18px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.72rem;
  font-weight:900;
  line-height:1;
  color:#fff;
  background:rgba(42,36,26,.22);
  opacity:0;
  transform:scale(.7);
  transition:opacity .15s ease, transform .15s ease, background .15s ease;
  pointer-events:none;
}
.muha-gender-pick input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.muha-gender-pick-media{
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:10px;
  transition:background .15s ease, box-shadow .15s ease;
}
.muha-gender-pick-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.muha-gender-pick-label{
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--muted);
  line-height:1;
  transition:color .15s ease;
}
.muha-gender-pick:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 20px rgba(42,36,26,.1);
}
.muha-gender-pick.is-selected,
.muha-gender-pick:has(input:checked){
  transform:translateY(-1px);
}
.muha-gender-pick--male.is-selected,
.muha-gender-pick--male:has(input:checked){
  border-color:#2563eb;
  background:linear-gradient(180deg,#eef4ff,#ffffff);
  box-shadow:0 0 0 3px rgba(37,99,235,.18), 0 12px 24px rgba(37,99,235,.16);
}
.muha-gender-pick--male.is-selected .muha-gender-pick-label,
.muha-gender-pick--male:has(input:checked) .muha-gender-pick-label{
  color:#1d4ed8;
}
.muha-gender-pick--male.is-selected .muha-gender-pick-media,
.muha-gender-pick--male:has(input:checked) .muha-gender-pick-media{
  background:rgba(37,99,235,.08);
  box-shadow:inset 0 0 0 2px rgba(37,99,235,.18);
}
.muha-gender-pick--male.is-selected .muha-gender-pick-check,
.muha-gender-pick--male:has(input:checked) .muha-gender-pick-check{
  opacity:1;
  transform:scale(1);
  background:#2563eb;
}
.muha-gender-pick--female.is-selected,
.muha-gender-pick--female:has(input:checked){
  border-color:#db2777;
  background:linear-gradient(180deg,#fff0f7,#ffffff);
  box-shadow:0 0 0 3px rgba(219,39,119,.16), 0 12px 24px rgba(219,39,119,.14);
}
.muha-gender-pick--female.is-selected .muha-gender-pick-label,
.muha-gender-pick--female:has(input:checked) .muha-gender-pick-label{
  color:#be185d;
}
.muha-gender-pick--female.is-selected .muha-gender-pick-media,
.muha-gender-pick--female:has(input:checked) .muha-gender-pick-media{
  background:rgba(219,39,119,.08);
  box-shadow:inset 0 0 0 2px rgba(219,39,119,.18);
}
.muha-gender-pick--female.is-selected .muha-gender-pick-check,
.muha-gender-pick--female:has(input:checked) .muha-gender-pick-check{
  opacity:1;
  transform:scale(1);
  background:#db2777;
}
.muha-gender-picks.is-required .muha-gender-pick:not(.is-selected):not(:has(input:checked)){
  border-color:rgba(240,170,23,.55);
  box-shadow:0 0 0 2px rgba(240,170,23,.12);
}
.muha-gender-required-hint{
  margin:8px 0 0;
  font-size:.88rem;
  font-weight:800;
  color:#8a1f12;
}
@media (max-width:640px){
  .muha-person-name-input{max-width:calc(100% - 118px);font-size:1.06rem}
  .muha-gender-pick{min-width:52px;padding:5px 6px 4px}
  .muha-gender-pick-media{width:36px;height:36px}
}
.muha-crazy-idea-field{
  margin:18px 0;
  padding:14px;
  border:2px solid rgba(240,170,23,.45);
  border-radius:18px;
  background:linear-gradient(135deg,#fff8d9,#fffdf6 58%,#fff0b9);
  box-shadow:0 10px 26px rgba(42,36,26,.08);
}
.muha-crazy-idea-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:1.05rem;
  font-weight:950;
  color:#3b2a09;
}
.muha-crazy-idea-label::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--yellow2);
  box-shadow:0 0 0 5px rgba(240,170,23,.2);
}
.muha-crazy-idea-input{
  min-height:52px;
  font-size:1rem;
  border-width:2px;
  background:#fffef8;
}
.muha-crazy-idea-input:focus{
  border-color:var(--yellow2);
  box-shadow:0 0 0 4px rgba(240,170,23,.18);
}
.muha-choice-summary{margin:14px 0 18px;padding:12px 14px;background:#ebe6dc;border-radius:12px;font-size:0.95rem;color:var(--muted)}
.style-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;background:transparent}
.style-picks-image{gap:14px;padding:0;background:transparent}
.style-pick-image{
  position:relative;min-height:0;padding:0;border-radius:14px;border:3px solid transparent;
  background:transparent;display:block;overflow:visible;cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.style-pick-image input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.style-pick-media{
  position:relative;display:block;width:100%;overflow:visible;background:transparent;
}
.style-pick-photo{
  width:100%;height:auto;display:block;border-radius:12px;
  box-shadow:0 10px 28px rgba(42,36,26,.14);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
.style-pick-fallback{
  display:flex;align-items:center;justify-content:center;min-height:120px;width:100%;
  font-size:3rem;color:var(--ink);background:rgba(255,255,255,.45);border-radius:12px;
}
.style-pick-image .style-pick-check{
  position:absolute;top:10px;right:10px;width:26px;height:26px;border-radius:999px;
  background:rgba(255,255,255,.92);border:2px solid rgba(42,36,26,.18);
  opacity:0;transform:scale(.85);
  transition:opacity .14s ease,transform .14s ease;
}
.style-pick-image:hover{transform:translateY(-2px)}
.style-pick-image:hover .style-pick-photo{transform:scale(1.015);box-shadow:0 14px 32px rgba(42,36,26,.18)}
.style-pick-image.is-selected{
  border-color:#f8d236;
  box-shadow:0 0 0 3px rgba(248,210,54,.28);
}
.style-pick-image.is-selected .style-pick-photo{
  box-shadow:0 14px 34px rgba(240,170,23,.28);
  filter:saturate(1.04) brightness(1.02);
}
.style-pick-image.is-selected .style-pick-check{opacity:1;transform:scale(1)}
.style-pick{
  position:relative;
  min-height:112px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  padding:18px 20px;
  border-radius:12px;
  border:3px solid transparent;
  background:#f8f8f8;
  cursor:pointer;
  font-weight:800;
  overflow:visible;
  box-shadow:none;
  transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background .14s ease;
}
.style-pick input{position:absolute;opacity:0;width:0;height:0}
.style-pick:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.22)}
.style-pick.is-selected{border-color:#1a1a1a;background:linear-gradient(180deg,#ffd93c,#f4b900);box-shadow:0 0 0 2px #f8d236,0 12px 26px rgba(0,0,0,.26)}
.style-pick-icon{
  flex:0 0 64px;
  width:64px;
  height:64px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:46px;
  line-height:1;
}
.style-pick-body{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;text-align:left;min-width:0}
.style-pick-name{font-size:1.12rem;font-weight:950;color:#17120b;text-transform:uppercase;letter-spacing:.02em}
.style-pick-desc{font-size:.88rem;line-height:1.25;color:#4a4030;font-weight:800}
.style-pick-check{
  position:absolute;
  right:-10px;
  top:-10px;
  width:34px;
  height:34px;
  border-radius:999px;
  background:#17120b;
  border:3px solid #ffd93c;
  opacity:0;
  transform:scale(.8);
  transition:opacity .14s ease,transform .14s ease;
}
.style-pick-check::after{
  content:"";
  position:absolute;
  left:9px;
  top:7px;
  width:10px;
  height:16px;
  border:solid #ffd93c;
  border-width:0 4px 4px 0;
  transform:rotate(45deg);
}
.style-pick.is-selected .style-pick-check{opacity:1;transform:scale(1)}
.style-fly-logo{display:block;width:74px;height:74px;object-fit:contain;filter:drop-shadow(0 4px 4px rgba(0,0,0,.18))}
@media (max-width:900px){
  .style-picks:not(.style-picks-image){grid-template-columns:1fr}
  .style-pick:not(.style-pick-image){min-height:96px}
}
@media (max-width:700px){
  .style-picks-image{grid-template-columns:1fr;gap:12px}
  .style-picks:not(.style-picks-image){grid-template-columns:1fr}
  .style-pick:not(.style-pick-image){min-height:88px;padding:14px}
  .style-pick-icon{width:54px;height:54px;flex-basis:54px;font-size:38px}
}
.muha-generate-row{margin-top:8px}
.idea-chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.idea-chip{
  font:inherit;
  font-size:0.9rem;
  line-height:1.35;
  text-align:left;
  padding:10px 14px;
  border-radius:14px;
  border:2px solid var(--stroke);
  background:var(--card);
  color:var(--ink);
  cursor:pointer;
  max-width:100%;
  transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;
}
.idea-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow)}
.idea-chip.is-selected{border-color:var(--yellow2);background:linear-gradient(180deg,#fff9e0,#fff4cc)}
.idea-chip-loading{margin:8px 0 0;font-size:0.88rem}
.saved-suggestions-row{display:flex;gap:12px;overflow-x:auto;padding:8px 4px 14px;margin-top:8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.saved-suggestion-card{flex:0 0 150px;margin:0}
.saved-suggestion-button{width:100%;height:100%;display:flex;flex-direction:column;gap:7px;align-items:stretch;text-align:left;padding:9px;border:2px solid var(--stroke);border-radius:16px;background:linear-gradient(180deg,#fffdf6,#fff7df);color:var(--ink);cursor:pointer;box-shadow:0 8px 18px rgba(42,36,26,.08);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
.saved-suggestion-button:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--yellow2)}
.saved-suggestion-thumb{height:104px;border-radius:12px;background:#f5f2eb;display:flex;align-items:center;justify-content:center;overflow:hidden}
.saved-suggestion-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.saved-suggestion-missing{font-weight:900;color:var(--muted)}
.saved-suggestion-title{font-size:.82rem;line-height:1.25;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.05em}
.saved-suggestion-cta{align-self:flex-start;font-size:.78rem;font-weight:900;padding:5px 9px;border-radius:999px;background:var(--yellow);border:1px solid var(--yellow2)}
.saved-suggestions-loading,.saved-suggestions-empty{margin:8px 0 0;font-size:0.88rem}

.btn-lg{padding:14px 28px;font-size:1.05rem}

.hero-genz-btn{
  background:linear-gradient(135deg,#7c3aed,#ec4899);
  color:#fff;
  border:2px solid rgba(42,36,26,.12);
  font-weight:900;
  letter-spacing:.02em;
}
.hero-genz-btn.is-active,.gen-z-inline-toggle.is-active{
  box-shadow:0 0 0 3px rgba(124,58,237,.35);
}
.gen-z-toggle-hint{margin:8px 0 0;font-size:.88rem}
.gen-z-inline-toggle{
  background:none;border:0;padding:0;font:inherit;font-weight:800;color:#7c3aed;text-decoration:underline;text-underline-offset:3px;cursor:pointer;
}
.gen-z-wrap{margin-top:4px}
.gen-z-picks{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:10px;
  width:100%;
}
@media (min-width:640px){
  .gen-z-picks{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:960px){
  .gen-z-picks{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
}
.gen-z-pick{
  width:100%;
  max-width:none;
  min-width:0;
  padding:0;
  margin:0;
  border:none;
  border-radius:0;
  background:transparent;
  cursor:pointer;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  transition:transform .15s ease;
}
.gen-z-pick:focus{
  outline:none;
}
.gen-z-pick:focus-visible{
  outline:2px solid #7c3aed;
  outline-offset:6px;
  border-radius:12px;
}
.gen-z-pick-visual{
  width:100%;
  height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:none;
  background:transparent;
}
@media (min-width:960px){
  .gen-z-pick-visual{height:118px}
}
.gen-z-pick img{
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:contain;
  object-position:center bottom;
  border-radius:0;
  display:block;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}
.gen-z-pick.is-selected img{
  filter:drop-shadow(0 10px 22px rgba(124,58,237,.28));
  transform:scale(1.03);
}
.gen-z-pick:hover img{transform:scale(1.02)}
.gen-z-pick.is-selected:hover img{transform:scale(1.04)}

.muha-lightbox{
  position:fixed;inset:0;z-index:9999;
  background:rgba(18,14,10,.88);
  display:flex;align-items:center;justify-content:center;
  padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
}
.muha-lightbox[hidden]{display:none!important}
body.muha-lightbox-open{overflow:hidden}
.muha-lightbox-inner{
  max-width:min(96vw,920px);
  max-height:min(88vh,920px);
  display:flex;align-items:center;justify-content:center;
  position:relative;
}
.muha-lightbox-img-wrap{
  position:relative;
  max-width:100%;
  max-height:min(88vh,920px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.muha-lightbox-img{
  max-width:100%;max-height:min(88vh,920px);
  width:auto;height:auto;
  object-fit:contain;
  border-radius:12px;
  box-shadow:0 24px 60px rgba(0,0,0,.45);
  image-rendering:auto;
  -webkit-user-drag:none;
  user-select:none;
  pointer-events:none;
}
.muha-lightbox .muha-protect-shield{
  pointer-events:auto;
  cursor:zoom-out;
}
@media print{
  body.muha .mockup-editor,
  body.muha .muha-lightbox,
  body.muha .section-gallery,
  body.muha .mockup-viewport-card .cart-overlay,
  body.muha .overlay-img{
    visibility:hidden!important;
  }
  body.muha::after{
    content:'Печат на дизайни не е разрешен.';
    display:block;
    padding:24px;
    font-weight:800;
  }
}
.muha-lightbox-close{
  position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));
  width:44px;height:44px;border-radius:999px;border:0;
  background:rgba(255,255,255,.92);color:#2a241a;font-size:1.6rem;line-height:1;cursor:pointer;font-weight:700;
}

.site-footer{
  margin-top:48px;padding:28px 16px 36px;
  border-top:2px solid rgba(42,36,26,.08);
  background:linear-gradient(180deg,rgba(255,252,245,.6),rgba(255,248,230,.9));
}
.site-footer-inner{max-width:980px;margin:0 auto;text-align:center}
.site-footer-nav{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;margin:12px 0}
.site-footer-nav a{font-weight:800;color:var(--ink);text-decoration:none}
.site-footer-nav a:hover{text-decoration:underline;text-underline-offset:3px}
.site-footer-name{font-family:var(--font-display);font-weight:800;font-size:1.1rem}
.site-footer-tag{display:block;margin-top:4px;font-size:.88rem}
.site-footer-copy{margin:14px 0 0;font-size:.82rem}

.section-legal .legal-prose{max-width:780px;margin:0 auto;line-height:1.65}
.legal-prose h2{margin:1.4em 0 .5em;font-size:1.05rem;font-family:var(--font-display)}
.legal-prose ul{padding-left:1.2em}
.legal-prose a{color:var(--ink);font-weight:700}

.wait-video-panel{position:relative}
.wait-video-panel video{width:100%;display:block;background:#000;border-radius:12px}
.wait-video-panel.needs-user-play video{opacity:.72}
.wait-video-unlock{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  z-index:4;border:0;border-radius:999px;padding:10px 16px;font-weight:900;cursor:pointer;
  background:linear-gradient(135deg,#ffb703,#fb8500);color:#2a241a;box-shadow:0 10px 24px rgba(42,36,26,.22);
}
.gallery-pagination{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:center;margin:22px 0 8px}
.gallery-pagination-label{font-weight:700}

.account-page{
  max-width:980px;
  margin:0 auto;
  padding-bottom:24px;
}
.account-page--narrow{
  max-width:520px;
}
.account-page-head{
  margin-bottom:18px;
  text-align:center;
}
@media (min-width:720px){
  .account-page-head{text-align:left}
}
.account-page-kicker{
  margin:0 0 6px;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--orange);
}
.account-page-title{
  margin-bottom:8px;
}
.account-page-lead{
  margin:0;
  max-width:42rem;
  line-height:1.45;
}
.account-flash{
  margin-bottom:16px;
  padding:12px 16px;
  border-radius:14px;
  font-weight:800;
  text-align:center;
  border:2px solid transparent;
}
.account-flash--ok{
  background:rgba(123,181,90,.14);
  border-color:rgba(123,181,90,.45);
}
.account-flash--error{
  background:rgba(233,117,46,.14);
  border-color:var(--orange);
}
.account-auth-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
@media (min-width:820px){
  .account-auth-grid{grid-template-columns:1fr 1fr;align-items:stretch}
}
.account-dashboard{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.account-panel{
  position:relative;
  padding:22px 20px;
  border-radius:20px;
  box-shadow:0 6px 0 rgba(42,36,26,.07);
}
.account-panel-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  font-size:1.35rem;
  margin-bottom:10px;
  border-radius:14px;
  background:linear-gradient(145deg,rgba(255,214,101,.5),rgba(255,183,3,.25));
  border:2px solid rgba(42,36,26,.1);
}
.account-panel--note{
  margin-top:16px;
  padding:16px 18px;
}
.account-panel-foot{
  margin-top:14px;
  margin-bottom:0;
}
.account-form .field{margin-bottom:14px}
.account-form-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}
.account-btn-ghost{
  background:rgba(255,255,255,.5);
}
.account-welcome-top{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:16px;
}
.account-avatar{
  flex-shrink:0;
  width:52px;
  height:52px;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:1.25rem;
  background:linear-gradient(145deg,var(--yellow),var(--orange));
  border:2px solid rgba(42,36,26,.12);
  box-shadow:0 4px 0 rgba(42,36,26,.08);
}
.account-welcome-name{margin:0 0 4px}
.account-welcome-email{margin:0;font-size:.92rem}
.account-welcome-actions{margin-top:4px}
.account-orders-list{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.account-orders-empty{margin-bottom:14px;line-height:1.45}
.account-order-row{
  padding:14px 16px;
  border-radius:16px;
  border:2px solid rgba(42,36,26,.12);
  background:rgba(255,255,255,.72);
}
.account-order-head{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  align-items:center;
  justify-content:space-between;
  margin-bottom:8px;
}
.account-order-id{font-size:1rem}
.account-order-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  font-size:.88rem;
  font-weight:700;
  color:var(--muted);
  margin-bottom:6px;
}
.account-order-total{
  color:var(--ink);
  font-weight:900;
}
.account-order-address{
  font-size:.88rem;
  line-height:1.4;
  color:rgba(42,36,26,.78);
  padding-top:8px;
  border-top:1px dashed rgba(42,36,26,.12);
}
.account-order-address-label{
  display:block;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--muted);
  margin-bottom:4px;
}
.account-order-status{
  font-size:.78rem;
  font-weight:900;
  padding:5px 11px;
  border-radius:999px;
  border:1px solid transparent;
}
.account-order-status--pending{background:rgba(255,214,101,.45);border-color:var(--yellow2)}
.account-order-status--processing{background:rgba(123,181,90,.35);border-color:rgba(123,181,90,.5)}
.account-order-status--shipped{background:rgba(233,117,46,.25);border-color:rgba(233,117,46,.45)}
.account-order-status--delivered,
.account-order-status--completed{background:rgba(123,181,90,.55);color:#fff;border-color:rgba(42,36,26,.15)}
.account-order-status--cancelled{background:rgba(42,36,26,.12);color:var(--muted)}
@media (max-width:480px){
  .account-panel{padding:18px 16px}
  .account-welcome-actions .btn{flex:1 1 calc(50% - 5px);justify-content:center;text-align:center}
  .account-form-actions .btn{width:100%;justify-content:center}
  .account-page--narrow .account-form-actions .btn{width:auto;flex:1 1 auto}
}



/* --- Checkout: couriers, summary, order statuses --- */
.account-order-status--pending_payment{background:rgba(255,214,101,.3);border-color:var(--yellow2)}
.account-order-status--payment_failed{background:rgba(200,50,40,.18);border-color:rgba(200,50,40,.4)}

.checkout-delivery-block{margin-top:1.25rem}
.checkout-delivery-head{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.checkout-delivery-hint{font-size:.88rem;line-height:1.35}
.courier-picker{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0 0 16px;
}
@media (max-width:520px){
  .courier-picker{grid-template-columns:1fr}
}
.courier-card{
  position:relative;
  margin:0;
  cursor:pointer;
  border-radius:16px;
  -webkit-tap-highlight-color:transparent;
}
.courier-card__input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.courier-card__inner{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:10px;
  height:100%;
  padding:14px 14px 12px;
  border:2px solid rgba(42,36,26,.12);
  border-radius:16px;
  background:linear-gradient(165deg,#fff 0%,#faf6ee 100%);
  box-shadow:0 4px 14px rgba(42,36,26,.06);
  transition:border-color .2s,box-shadow .2s,transform .15s;
}
.courier-card:hover .courier-card__inner{
  border-color:rgba(233,117,46,.45);
  box-shadow:0 8px 22px rgba(42,36,26,.1);
}
.courier-card.is-active .courier-card__inner{
  border-color:var(--orange,#e9752e);
  box-shadow:0 0 0 3px rgba(255,214,101,.45),0 10px 24px rgba(233,117,46,.15);
  transform:translateY(-1px);
}
.courier-card--disabled{cursor:default;pointer-events:none;user-select:none}
.courier-card--disabled .courier-card__inner{
  background:#faf8f4;
  border-style:dashed;
  border-color:rgba(42,36,26,.22);
  box-shadow:none;
}
.courier-card__soon{
  display:block;
  margin-top:6px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(42,36,26,.08);
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  text-align:center;
  letter-spacing:.02em;
}
.courier-card__logo-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:6px 8px;
  border-radius:12px;
  background:#fff;
}
.courier-card__logo{
  display:block;
  width:100%;
  max-width:220px;
  height:auto;
  object-fit:contain;
}
.courier-card__meta{text-align:center;line-height:1.25}
.courier-card__name{display:block;font-weight:900;font-size:1rem}
.courier-card__desc{display:block;margin-top:4px;font-size:.78rem;color:var(--muted)}
.courier-card__badge{
  align-self:center;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--orange,#e9752e);
  min-height:1em;
}
.courier-card.is-active .courier-card__badge::after{content:attr(data-active-label)}
.courier-card:not(.is-active) .courier-card__badge::after{content:''}
.courier-panel-lead{margin:0 0 10px;font-size:.88rem}
.notice--soft{background:rgba(255,214,101,.25);border-color:rgba(233,117,46,.25)}
.courier-options{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 14px}
.courier-option{
  display:flex;align-items:center;gap:10px;
  flex:1 1 220px;
  padding:12px 14px;
  border:2px solid rgba(42,36,26,.15);
  border-radius:14px;
  background:#fff;
  cursor:pointer;
}
.courier-option:has(input:checked){border-color:var(--orange, #e9752e);background:rgba(255,214,101,.2)}
.courier-option strong{display:block}
.courier-option small{display:block;color:var(--muted)}
.courier-panel{margin:10px 0 16px}
.courier-panel[hidden]{display:none}
.courier-frame-holder iframe{
  width:100%;
  min-height:clamp(380px,62vh,620px);
  border:1px solid rgba(42,36,26,.15);
  border-radius:14px;
  background:#fff;
}
.courier-selected{margin:8px 0 0;padding:10px 12px;border-radius:10px;background:rgba(123,181,90,.2);font-weight:700}
.courier-selected[hidden]{display:none}

.checkout-summary-lead{margin:0 0 .65rem;font-size:.92rem}
.checkout-summary{
  margin:16px 0 0;padding:14px 16px;
  border-radius:14px;background:#f5f2eb;
}
.checkout-summary-row{display:flex;justify-content:space-between;gap:12px;padding:3px 0}
.checkout-summary-row--total{margin-top:6px;padding-top:8px;border-top:1px solid rgba(42,36,26,.15);font-size:1.1rem;font-weight:900}
.checkout-client-error{margin:10px 0 0;color:#8a1f12;font-weight:800}
.checkout-client-error[hidden]{display:none}

/* --- Language switcher --- */
.lang-switch{display:inline-flex;align-items:center;gap:2px;margin-left:8px}
.lang-switch__btn{
  padding:4px 9px;border-radius:999px;
  font-size:.78rem;font-weight:900;text-decoration:none;
  color:inherit;border:1px solid transparent;
}
.lang-switch__btn.is-active{background:rgba(255,214,101,.55);border-color:rgba(42,36,26,.2)}
.lang-switch__btn:hover{border-color:rgba(42,36,26,.25)}
