:root{
  --bg:#130905;
  --bg2:#1f0d05;
  --bg3:#2b1004;
  --text:#ffffff;
  --muted:#f0e6d8;
  --gold:#ffd400;
  --orange:#ff9a1f;
  --hot:#ff2f6d;
  --warm:#ffb347;
  --card:rgba(255,255,255,0.06);
  --border:rgba(255,255,255,0.10);
  --shadow:0 20px 50px rgba(0,0,0,0.35);
  --radius:24px;
  --max:1120px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  margin:0;
  padding-top:84px;
  font-family:Arial, Helvetica, sans-serif;
  font-size:13px;
  color:var(--text);
  background:
    radial-gradient(circle at 20% 15%, rgba(255,180,0,.12), transparent 26%),
    radial-gradient(circle at 80% 10%, rgba(255,90,0,.10), transparent 24%),
    radial-gradient(circle at 50% 100%, rgba(255,47,109,.10), transparent 28%),
    linear-gradient(145deg, var(--bg), var(--bg2), var(--bg3));
  min-height:100vh;
  overflow-x:hidden;
}

img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

.container{
  width:min(100% - 16px, var(--max));
  margin-inline:auto;
}

.bg-grid{
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.10;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size:28px 28px;
  -webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,.95), rgba(0,0,0,.55));
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.95), rgba(0,0,0,.55));
}

.bg-orb{
  position:fixed;
  border-radius:999px;
  filter:blur(70px);
  pointer-events:none;
  opacity:.45;
}

.orb-1{
  width:220px;
  height:220px;
  background:rgba(255,180,0,.24);
  top:40px;
  left:-40px;
}

.orb-2{
  width:250px;
  height:250px;
  background:rgba(255,90,0,.20);
  right:-60px;
  top:220px;
}

.site-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:1000;
  background:rgba(19,9,5,0.58);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}

.elite-nav::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,212,0,.45), rgba(255,154,31,.55), rgba(255,47,109,.45), transparent);
  pointer-events:none;
}

.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:84px;
}

.brand-link{
  display:inline-flex;
  align-items:center;
}

.brand-logo{
  height:60px;
  width:auto;
}

.elite-logo{
  filter:drop-shadow(0 4px 18px rgba(255,180,0,.18)) drop-shadow(0 2px 8px rgba(255,47,109,.12));
  transition:transform .2s ease, filter .2s ease;
}

.brand-link:hover .elite-logo{
  transform:translateY(-1px);
  filter:drop-shadow(0 6px 22px rgba(255,180,0,.24)) drop-shadow(0 3px 10px rgba(255,47,109,.16));
}

.elite-nav-actions{
  display:flex;
  align-items:center;
  gap:6px;
}

.btn{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:none;
  border-radius:12px;
  padding:8px 12px;
  font-weight:800;
  font-size:.76rem;
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, opacity .18s ease, filter .22s ease;
}

.btn:hover{
  transform:translateY(-2px);
  filter:saturate(1.08);
}

.btn:active{
  transform:translateY(0) scale(.99);
}

.btn::after{
  content:"";
  position:absolute;
  top:0;
  left:-120%;
  width:60%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.26), transparent);
  transform:skewX(-18deg);
  transition:left .55s ease;
  pointer-events:none;
}

.btn:hover::after{
  left:130%;
}

.btn-primary{
  color:#1b1007;
  background:linear-gradient(90deg, var(--gold), var(--orange), var(--hot));
  box-shadow:0 10px 30px rgba(255,140,0,.24);
}

.btn-secondary{
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}

.nav-btn{
  min-width:96px;
  min-height:36px;
  border-radius:12px;
  font-size:.7rem;
}

.full{width:100%}

.hero{
  padding:26px 0 10px;
}

.hero-container{
  max-width:1100px;
}

.hero-inner-copy{
  text-align:center;
  max-width:860px;
  margin:0 auto 24px;
}

.eyebrow{
  display:inline-block;
  margin:0 0 5px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#fff;
  padding:5px 8px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.10);
}

.hero h1,
.section-head h2{
  margin:0 0 5px;
  line-height:1.02;
  letter-spacing:-1px;
}

.hero h1{
  font-size:clamp(1.52rem, 3vw, 2.18rem);
  background:linear-gradient(90deg, #ffffff, #ffe7b1 55%, #ffffff);
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.hero-text,
.section-head p{
  color:var(--muted);
  font-size:.84rem;
  line-height:1.35;
}

.hero-text{
  max-width:760px;
  margin:0 auto;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin-top:12px;
}

.card-glow,
.hero-card,
.feature-card,
.price-card,
.qr-panel,
.qr-preview{
  position:relative;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  backdrop-filter:blur(14px);
}

.card-glow::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg, rgba(255,212,0,.22), rgba(255,154,31,.18), rgba(255,47,109,.14), rgba(255,255,255,.08));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  opacity:.55;
}

.hero-value-wrap{
  max-width:920px;
  margin:14px auto 0;
}

.hero-value-card{
  border-radius:22px;
  overflow:hidden;
  padding:12px 14px 10px;
}

.hero-value-topbar{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:3px;
  background:linear-gradient(90deg, var(--gold), var(--orange), var(--hot));
}

#valueCarouselTrack{
  position:relative;
  min-height:88px;
}

.hero-value-controls{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-top:8px;
  flex-wrap:wrap;
}

.arrow-group,
.dot-group{
  display:flex;
  gap:8px;
  align-items:center;
}

.small-btn{
  padding:7px 10px;
  min-height:34px;
}

.value-slide-label{
  margin:0 0 4px;
  font-size:.7rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
}

.value-slide-label.gold{color:var(--gold)}
.value-slide-label.orange{color:var(--orange)}
.value-slide-label.hot{color:var(--hot)}

.value-slide-title{
  margin:0 0 4px;
  font-size:1rem;
}

.value-slide-copy{
  margin:0;
  color:var(--muted);
  max-width:820px;
  font-size:.8rem;
  line-height:1.24;
}

.value-dot{
  width:9px;
  height:9px;
  border-radius:999px;
  border:none;
  background:rgba(255,255,255,.25);
  cursor:pointer;
}

.section{
  padding:6px 0 12px;
}

.section-head{
  text-align:center;
  max-width:620px;
  margin:0 auto 10px;
}

.section-head h2{
  font-size:clamp(1.22rem, 3vw, 1.72rem);
}

.premium-generator-section{
  padding-top:0;
}

.premium-generator-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:8px;
  align-items:start;
}

.premium-builder-panel,
.premium-preview-panel{
  padding:8px;
  border-radius:18px;
  overflow:visible !important;
}

.builder-section{
  margin:0 0 8px;
  padding:10px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.025));
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  transition:border-color .26s ease, box-shadow .26s ease, transform .26s ease;
}

.builder-section:hover{
  border-color:rgba(255,212,0,.16);
  box-shadow:0 12px 30px rgba(0,0,0,.14), 0 0 0 1px rgba(255,212,0,.04) inset;
}

.builder-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}

.builder-section-title{
  display:grid;
  gap:2px;
  min-width:0;
}

.builder-section-title strong{
  font-size:.8rem;
  color:#fff;
  line-height:1.08;
}

.builder-section-title span{
  color:var(--muted);
  font-size:.68rem;
  line-height:1.18;
}

.builder-section-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:4px 8px;
  border-radius:999px;
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.04em;
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.08);
  text-transform:uppercase;
  white-space:nowrap;
  flex:0 0 auto;
}

.builder-section-pill.is-highlight{
  color:#1b1007;
  background:linear-gradient(90deg, var(--gold), var(--orange));
  border-color:transparent;
}

.lp-input{
  width:100%;
  padding:7px 9px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:.74rem;
  outline:none;
}

.lp-input::placeholder{
  color:rgba(255,255,255,.45);
}

.lp-input:focus{
  border-color:rgba(255,180,0,.65);
  box-shadow:0 0 0 3px rgba(255,180,0,.14);
}

.builder-utility-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.builder-mini-stack{
  display:grid;
  gap:8px;
}

.design-studio{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.design-group{
  padding:7px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.design-group-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:5px;
  margin-bottom:6px;
}

.design-group h4,
.design-group-head h4{
  margin:0;
  font-size:.68rem;
  font-weight:800;
  color:#fff;
}

.design-group-head span{
  color:var(--muted);
  font-size:.58rem;
  line-height:1;
  text-align:right;
  opacity:.9;
}

.design-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
}

.four-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:4px;
}

.three-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4px;
}

.two-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}

.style-tile-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4px;
}

.style-tile-grid-small{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.style-tile{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-height:54px;
  padding:6px 5px;
  border-radius:9px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  color:#fff;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 6px 14px rgba(0,0,0,.10);
  transform-style:preserve-3d;
  will-change:transform, box-shadow;
  overflow:hidden;
  transition:transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.style-tile::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg, rgba(255,212,0,0), rgba(255,212,0,.30), rgba(255,47,109,.18));
  opacity:0;
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  transition:opacity .24s ease;
}

.style-tile::after{
  content:"";
  position:absolute;
  inset:-45%;
  background:radial-gradient(circle at var(--mx, 50%) var(--my, 50%), rgba(255,255,255,.16), transparent 38%);
  opacity:0;
  transition:opacity .22s ease;
  pointer-events:none;
  z-index:-1;
}

.style-tile:hover::before,
.style-tile.active::before{
  opacity:1;
}

.style-tile:hover::after{
  opacity:1;
}

.style-tile:hover{
  border-color:rgba(255,212,0,.32);
  box-shadow:0 12px 28px rgba(0,0,0,.18), 0 0 0 1px rgba(255,212,0,.08) inset;
}

.style-tile.active{
  color:#1b1007;
  border-color:rgba(255,212,0,.55) !important;
  background:linear-gradient(180deg, rgba(255,212,0,.18), rgba(255,154,31,.12));
  box-shadow:0 10px 26px rgba(255,154,31,.14), 0 0 0 1px rgba(255,212,0,.18) inset;
}

.style-tile.just-selected,
.style-tile.active .tile-preview{
  animation:softPulse 1.8s ease-in-out infinite;
}

.style-tile strong{
  position:relative;
  z-index:4;
  font-size:.56rem;
  line-height:1;
  text-align:center;
  font-weight:800;
}

.tile-preview{
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  min-height:34px !important;
  display:grid !important;
  place-items:center !important;
  padding:4px !important;
  box-sizing:border-box !important;
  border-radius:11px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.035)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 8px 18px rgba(0,0,0,.18) !important;
  overflow:hidden !important;
  z-index:2;
  transition:transform .28s cubic-bezier(.2,.8,.2,1), filter .28s ease;
}

.style-tile:hover .tile-preview{
  transform:translateY(-1px) scale(1.08);
  filter:drop-shadow(0 8px 16px rgba(255,154,31,.22));
}

.hp-icon i{
  display:block !important;
  min-width:0 !important;
  min-height:0 !important;
  background:linear-gradient(135deg, #fff9d8, #ffd400 45%, #ff9a1f) !important;
  box-shadow:0 0 8px rgba(255,212,0,.22) !important;
}

.theme-icon{
  grid-template-columns:repeat(2, 1fr) !important;
  grid-template-rows:repeat(2, 1fr) !important;
  gap:3px !important;
}

.theme-icon i{
  border-radius:4px !important;
}

.theme-sunset-pro i:nth-child(1){background:#111111 !important}
.theme-sunset-pro i:nth-child(2){background:#ff9a1f !important}
.theme-sunset-pro i:nth-child(3){background:#ffd400 !important}
.theme-sunset-pro i:nth-child(4){background:#ffffff !important}

.theme-royal-pro i:nth-child(1){background:#1c2450 !important}
.theme-royal-pro i:nth-child(2){background:#4b6bff !important}
.theme-royal-pro i:nth-child(3){background:#d7e3ff !important}
.theme-royal-pro i:nth-child(4){background:#ffffff !important}

.theme-mint-pro i:nth-child(1){background:#10382f !important}
.theme-mint-pro i:nth-child(2){background:#25D366 !important}
.theme-mint-pro i:nth-child(3){background:#9ff1c0 !important}
.theme-mint-pro i:nth-child(4){background:#ffffff !important}

.theme-mono-pro i:nth-child(1){background:#111111 !important}
.theme-mono-pro i:nth-child(2){background:#666666 !important}
.theme-mono-pro i:nth-child(3){background:#d7d7d7 !important}
.theme-mono-pro i:nth-child(4){background:#ffffff !important}

.mini-qr{
  grid-template-columns:repeat(5, 1fr) !important;
  grid-template-rows:repeat(5, 1fr) !important;
  gap:2px !important;
}

.mini-qr i:nth-child(4),
.mini-qr i:nth-child(5),
.mini-qr i:nth-child(9),
.mini-qr i:nth-child(10),
.mini-qr i:nth-child(14),
.mini-qr i:nth-child(15),
.mini-qr i:nth-child(16),
.mini-qr i:nth-child(17),
.mini-qr i:nth-child(19),
.mini-qr i:nth-child(22){
  opacity:.38;
}

.mini-qr.rounded i{border-radius:3px !important}
.mini-qr.square i{border-radius:0 !important}
.mini-qr.dots i{border-radius:999px !important; transform:scale(.88)}
.mini-qr.classy i:nth-child(odd){border-radius:999px !important}
.mini-qr.classy i:nth-child(even){border-radius:4px !important; opacity:.82}

.eye-icon{
  grid-template-columns:repeat(3, 1fr) !important;
  grid-template-rows:repeat(3, 1fr) !important;
  gap:2px !important;
}

.eye-icon i{
  background:linear-gradient(135deg, #ffffff, #ffda55) !important;
}

.eye-icon i:nth-child(5){
  background:linear-gradient(135deg, #ff9a1f, #ff2f6d) !important;
}

.eye-soft i{border-radius:4px !important}
.eye-square i{border-radius:0 !important}
.eye-round i{border-radius:999px !important}
.eye-dots i{border-radius:999px !important; transform:scale(.72)}
.eye-classy i:nth-child(odd){border-radius:999px !important}
.eye-classy i:nth-child(even){border-radius:4px !important}

.center-icon{
  display:grid !important;
  place-items:center !important;
}

.center-icon::before{
  content:"";
  width:18px;
  height:18px;
  display:block;
  background:linear-gradient(135deg, #ffffff, #ffd400 55%, #ff9a1f) !important;
  box-shadow:0 0 0 4px rgba(255,212,0,.12), 0 0 16px rgba(255,154,31,.18) !important;
}

.center-round::before{border-radius:999px}
.center-square::before{border-radius:1px}
.center-soft::before{border-radius:6px}
.center-classy::before{border-radius:40% 12% 40% 12%}

.center-dots{
  display:grid !important;
  grid-template-columns:repeat(2, 8px) !important;
  grid-template-rows:repeat(2, 8px) !important;
  gap:4px !important;
  place-content:center !important;
}

.center-dots::before{display:none}
.center-dots i{width:8px !important;height:8px !important;border-radius:999px !important}

.size-icon{
  display:grid !important;
  place-items:center !important;
}

.size-icon::before{
  content:"";
  display:block;
  border:2px solid #ffd400;
  background:linear-gradient(135deg, rgba(255,212,0,.35), rgba(255,154,31,.20));
  box-shadow:0 0 14px rgba(255,212,0,.20);
}

.size-small::before{width:12px;height:12px;border-radius:3px}
.size-medium::before{width:18px;height:18px;border-radius:4px}
.size-large::before{width:24px;height:24px;border-radius:5px}

.premium-icon{
  grid-template-columns:repeat(3, 1fr) !important;
  grid-template-rows:repeat(3, 1fr) !important;
  gap:2px !important;
}

.premium-honey i{
  clip-path:polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%);
  background:linear-gradient(135deg, #ffd85a, #d8901c) !important;
}

.premium-neon i{
  border-radius:999px;
  background:#89ffcb !important;
  box-shadow:0 0 8px rgba(55,216,255,.85), 0 0 14px rgba(137,255,203,.35) !important;
}

.premium-luxury i{
  border-radius:1px;
  background:linear-gradient(135deg, #fff4c7, #b8892f) !important;
}

.premium-preset-tile{
  position:relative;
}

.premium-preset-tile::before{
  content:"";
  position:absolute;
  top:-40%;
  left:-85%;
  width:55%;
  height:180%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
  transform:rotate(22deg);
  opacity:.65;
  animation:premiumSweep 3.8s ease-in-out infinite;
  pointer-events:none;
}

.premium-preset-tile.active,
.premium-preset-tile:focus-visible{
  animation:premiumBreath 2.4s ease-in-out infinite;
}

.premium-badge{
  position:absolute;
  top:4px;
  right:4px;
  font-size:.42rem;
  font-weight:800;
  color:#1b1007;
  background:linear-gradient(90deg, #ffd400, #ff9a1f);
  padding:2px 4px;
  border-radius:999px;
  z-index:4;
  animation:badgeGlow 2.7s ease-in-out infinite;
}

.tile-ripple{
  position:absolute;
  width:14px;
  height:14px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,255,255,.42), rgba(255,212,0,.18), transparent 70%);
  transform:translate(-50%, -50%) scale(0);
  animation:tileRipple .55s ease-out forwards;
  pointer-events:none;
  z-index:3;
}

.color-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:4px;
}

.color-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  padding:4px 3px;
  border-radius:9px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  text-align:center;
}

.color-card span{
  font-size:.44rem;
  font-weight:800;
  color:#fff;
  line-height:1;
}

.compact-color{
  width:22px;
  height:15px;
  border:none;
  padding:0;
  background:transparent;
  cursor:pointer;
}

.compact-color::-webkit-color-swatch-wrapper{padding:0}
.compact-color::-webkit-color-swatch{
  border:none;
  border-radius:5px;
}

.control-card{
  padding:7px 8px;
  border-radius:10px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.control-card-title{
  font-weight:800;
  color:#fff;
  margin-bottom:3px;
  font-size:.58rem;
}

.control-card input{
  width:100%;
}

.control-card-value{
  margin-top:4px;
  font-size:.58rem;
  color:var(--muted);
}

.builder-note{
  position:relative;
  overflow:hidden;
  margin-top:8px;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(255,212,0,.18);
  background:linear-gradient(135deg, rgba(255,212,0,.09), rgba(255,154,31,.08), rgba(255,255,255,.04));
  color:rgba(255,255,255,.78);
  font-size:.68rem;
  line-height:1.25;
  display:flex;
  gap:7px;
  align-items:flex-start;
}

.builder-note::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  transform:translateX(-120%);
  animation:noteSweep 5.8s ease-in-out infinite;
  pointer-events:none;
}

.effect-stack{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
}

.effect-inline-row,
.effect-basic-row{
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 8px;
  border-radius:10px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.effect-inline-check input{
  width:15px;
  height:15px;
  accent-color:#ff9a1f;
}

.effect-inline-copy{
  flex:1;
  min-width:0;
}

.effect-title{
  font-weight:800;
  color:#fff;
  margin-bottom:2px;
  font-size:.58rem;
}

.effect-copy{
  font-size:.56rem;
  color:var(--muted);
  line-height:1.1;
}

.inline-gradient-color{
  width:28px;
  height:24px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.18);
  overflow:hidden;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease;
}

.inline-gradient-color:hover{
  transform:translateY(-1px) scale(1.03);
  box-shadow:0 8px 18px rgba(0,0,0,.18), 0 0 0 1px rgba(255,212,0,.10) inset;
}

.inline-gradient-fill{
  width:100%;
  height:100%;
}

.inline-gradient-color input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.upload-wrap{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.upload-btn{
  width:max-content;
  min-width:88px;
}

.upload-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:5px;
  flex-wrap:wrap;
  padding:5px 6px;
  border-radius:8px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.upload-file-name{
  color:var(--muted);
  font-size:.56rem;
  word-break:break-word;
}

.remove-upload-btn,
.history-clear-btn{
  border:none;
  border-radius:7px;
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:4px 6px;
  cursor:pointer;
  font-weight:700;
  font-size:.52rem;
}

.mobile-upload-actions{
  display:none;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:6px;
  margin-bottom:6px;
}

.mobile-upload-btn{
  min-width:0;
  padding:8px 6px;
  font-size:.66rem;
  border-radius:10px;
}

.premium-inline-note{
  margin-top:8px;
  padding:9px 10px;
  border-radius:12px;
  background:linear-gradient(135deg, rgba(255,212,0,.10), rgba(255,154,31,.10), rgba(255,47,109,.08));
  border:1px solid rgba(255,154,31,.16);
  color:var(--muted);
  font-size:.74rem;
  line-height:1.22;
  display:grid;
  gap:8px;
}

.premium-unlock-btn{
  width:100%;
}

.premium-unlocked .premium-unlock-btn{
  opacity:.6;
  pointer-events:none;
}

.builder-actions{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  margin-top:6px;
}

.builder-actions .btn{
  width:100%;
  min-width:0;
  padding:8px 6px;
  font-size:.66rem;
  border-radius:9px;
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}

.builder-actions .btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  transform:none;
}

.compact-actions-note{
  margin:8px 0 0;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.26;
}

.subtle-divider{
  height:1px;
  margin:8px 0 2px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
}

.history-section{
  margin-top:10px;
}

.history-list{
  display:grid;
  gap:5px;
}

.history-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  width:100%;
  text-align:left;
  border-radius:9px;
  padding:6px 7px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  cursor:pointer;
}

.history-item:hover{
  border-color:rgba(255,180,0,.26);
  transform:translateY(-1px);
}

.history-item-title{
  font-size:.58rem;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.history-item-meta{
  font-size:.5rem;
  text-transform:uppercase;
  color:var(--muted);
  flex:0 0 auto;
}

.history-empty{
  padding:7px;
  border-radius:9px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:var(--muted);
  font-size:.58rem;
  text-align:center;
}

.premium-preview-panel{
  position:sticky;
  top:86px;
  height:fit-content;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)), linear-gradient(135deg, rgba(255,212,0,.05), rgba(255,90,0,.04), rgba(255,47,109,.04));
}

.preview-head{
  margin-bottom:5px;
}

.preview-head h3{
  margin:0 0 2px;
  font-size:.78rem;
}

.builder-subtext{
  margin:0;
  color:var(--muted);
  font-size:.62rem;
  line-height:1.12;
}

.preview-top-note{
  margin:0 0 8px;
  padding:9px 10px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
  color:var(--muted);
  font-size:.7rem;
  line-height:1.25;
  text-align:center;
}

.preview-top-note strong{
  color:#fff;
}

.premium-preview-wrap{
  min-height:210px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#ffffff;
  border:1px solid rgba(255,255,255,.08);
  padding:8px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75), inset 0 -10px 30px rgba(0,0,0,.04), 0 12px 30px rgba(0,0,0,.12);
  transition:box-shadow .28s ease, transform .28s ease, border-color .28s ease;
}

.premium-preview-wrap:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(0,0,0,.18), 0 0 0 1px rgba(255,212,0,.10) inset;
}

.preview-placeholder{
  width:100%;
  min-height:86px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:9px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.05);
}

.muted-text{
  color:var(--muted);
  text-align:center;
  margin:0;
  font-size:.68rem;
}

#homepageQrWrap{
  transition:transform .2s ease, opacity .2s ease;
}

#homepageQrWrap.qr-refreshing{
  animation:qrRefreshPop .26s ease-out, qrGlowRing .55s ease-out;
}

#homepageQrWrap canvas,
#homepageQrWrap svg{
  width:min(100%, var(--qr-preview-size, 248px)) !important;
  max-width:var(--qr-preview-size, 248px) !important;
  height:auto !important;
}

.preview-stack{
  margin-top:6px;
  display:grid;
  gap:6px;
}

.phone-shell{
  width:100%;
  max-width:198px;
  margin:0 auto;
  border-radius:18px;
  padding:5px;
  background:linear-gradient(180deg, #2b2b31, #151519);
  box-shadow:0 14px 30px rgba(0,0,0,.24);
  border:1px solid rgba(255,255,255,.08);
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.phone-shell.preview-bump{
  transform:translateY(-2px) scale(1.01);
}

.phone-notch-wrap{
  height:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:4px;
}

.phone-notch{
  width:38px;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
}

.phone-card{
  background:#ffffff;
  border-radius:13px;
  padding:9px;
  min-height:176px;
  display:flex;
  flex-direction:column;
  gap:8px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}

.phone-card-top{
  display:flex;
  align-items:center;
  gap:6px;
}

.phone-card-logo-wrap{
  width:24px;
  height:24px;
  border-radius:8px;
  background:linear-gradient(135deg, #ffd400, #ff9a1f 60%, #ff2f6d);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  color:#1b1007;
  overflow:hidden;
  flex:0 0 auto;
  transition:background .25s ease, transform .25s ease, box-shadow .25s ease;
}

.phone-card-logo-fallback{
  font-size:.52rem;
}

.phone-card-logo{
  width:100%;
  height:100%;
  object-fit:cover;
  display:none;
}

.phone-title-wrap{
  min-width:0;
}

.phone-card-title{
  font-size:.62rem;
  font-weight:800;
  color:#111;
  line-height:1.05;
  margin-bottom:1px;
}

.phone-card-label{
  font-size:.48rem;
  color:#666;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:700;
}

.phone-card-box{
  border-radius:9px;
  background:#f6f6f8;
  border:1px solid #ececf1;
  padding:6px;
}

.phone-card-box-label{
  font-size:.48rem;
  color:#888;
  margin-bottom:2px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:700;
}

.phone-card-url{
  font-size:.58rem;
  color:#111;
  font-weight:700;
  line-height:1.1;
  word-break:break-word;
}

.phone-card-description-wrap{
  border-radius:9px;
  padding:6px;
  background:linear-gradient(135deg, rgba(255,212,0,.10), rgba(255,154,31,.10), rgba(255,47,109,.08));
  border:1px solid rgba(255,154,31,.18);
}

.phone-card-description{
  font-size:.54rem;
  color:#4c3a1c;
  line-height:1.14;
  font-weight:700;
}

.phone-card-button{
  margin-top:auto;
  border:none;
  border-radius:9px;
  padding:6px 8px;
  font-weight:800;
  font-size:.58rem;
  color:#1b1007;
  background:linear-gradient(90deg, #ffd400, #ff9a1f 60%, #ff2f6d);
  box-shadow:0 10px 22px rgba(255,140,0,.18);
  cursor:default;
}

.analytics-preview-shell{
  border-radius:11px;
  padding:9px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
}

.analytics-preview-head{
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:center;
  margin-bottom:6px;
}

.analytics-preview-head h4{
  margin:0;
  font-size:.68rem;
}

.analytics-preview-head span{
  color:var(--muted);
  font-size:.52rem;
  text-transform:uppercase;
  font-weight:800;
}

.analytics-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:4px;
  margin-bottom:4px;
}

.analytics-card{
  padding:5px;
  border-radius:9px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.analytics-card:hover{
  transform:translateY(-1px);
  border-color:rgba(255,212,0,.16);
  box-shadow:0 10px 20px rgba(0,0,0,.12);
}

.analytics-label{
  color:var(--muted);
  font-size:.44rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:700;
  margin-bottom:2px;
}

.analytics-value{
  font-size:.62rem;
  font-weight:900;
  color:#fff;
}

.analytics-bars{
  display:grid;
  gap:4px;
}

.analytics-bar-row{
  display:grid;
  grid-template-columns:18px 1fr;
  gap:4px;
  align-items:center;
}

.analytics-bar-row span{
  font-size:.48rem;
  color:var(--muted);
  font-weight:700;
}

.analytics-bar-track{
  height:5px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}

.analytics-bar-fill{
  height:100%;
  width:40%;
  border-radius:999px;
  background:linear-gradient(90deg, var(--gold), var(--orange), var(--hot));
  background-size:180% 100%;
  transition:width .5s cubic-bezier(.2,.8,.2,1);
  animation:barFlow 3.8s linear infinite;
}

.preview-format-note{
  margin-top:10px;
  color:var(--muted);
  font-size:.52rem;
  text-align:center;
  letter-spacing:.02em;
}

.preview-format-note::before{
  content:"Scan-ready";
  display:block;
  margin-bottom:2px;
  font-size:.48rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--orange);
}

.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.price-card{
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.plan-name{
  margin:0;
  font-weight:800;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:.4px;
  font-size:.6rem;
}

.price-card h3{
  margin:0;
  font-size:1.34rem;
  line-height:1;
}

.price-card h3 span{
  font-size:.7rem;
  color:var(--muted);
  font-weight:700;
}

.plan-copy{
  margin:0;
  color:var(--muted);
  font-size:.72rem;
}

.price-card ul{
  margin:0;
  padding-left:16px;
  color:var(--muted);
}

.price-card li{
  margin:0 0 4px;
  font-size:.68rem;
}

.featured{
  transform:translateY(-2px);
}

.premium{
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)), linear-gradient(135deg, rgba(255,180,0,.10), rgba(255,90,0,.08), rgba(255,47,109,.06));
}

.site-footer{
  padding:16px 0 20px;
}

.footer-wrap{
  display:grid;
  justify-items:center;
  gap:7px;
  text-align:center;
  color:var(--muted);
  font-size:.74rem;
}

.footer-logo{
  width:min(100%, 210px);
}

.footer-ir-logo{
  width:min(100%, 84px);
  height:auto;
}

@keyframes softPulse{
  0%,100%{transform:scale(1); filter:drop-shadow(0 4px 10px rgba(0,0,0,.18))}
  50%{transform:scale(1.08); filter:drop-shadow(0 0 12px rgba(255,212,0,.20))}
}

@keyframes premiumSweep{
  0%,45%{left:-85%}
  72%,100%{left:140%}
}

@keyframes premiumBreath{
  0%,100%{box-shadow:0 10px 26px rgba(255,154,31,.14), 0 0 0 1px rgba(255,212,0,.18) inset}
  50%{box-shadow:0 14px 34px rgba(255,154,31,.22), 0 0 22px rgba(255,212,0,.12), 0 0 0 1px rgba(255,212,0,.30) inset}
}

@keyframes badgeGlow{
  0%,100%{filter:drop-shadow(0 0 0 rgba(255,212,0,0))}
  50%{filter:drop-shadow(0 0 8px rgba(255,212,0,.35))}
}

@keyframes tileRipple{
  to{transform:translate(-50%, -50%) scale(12); opacity:0}
}

@keyframes qrRefreshPop{
  0%{transform:scale(.985); opacity:.82}
  100%{transform:scale(1); opacity:1}
}

@keyframes qrGlowRing{
  0%{box-shadow:0 0 0 0 rgba(255,212,0,.22)}
  100%{box-shadow:0 0 0 14px rgba(255,212,0,0)}
}

@keyframes barFlow{
  0%{background-position:0% 50%}
  100%{background-position:180% 50%}
}

@keyframes noteSweep{
  0%,65%{transform:translateX(-120%)}
  100%{transform:translateX(120%)}
}

@media (max-width: 900px){
  .premium-generator-grid{
    grid-template-columns:minmax(0,1fr) 208px;
  }

  #homepageQrWrap canvas,
  #homepageQrWrap svg{
    width:min(100%, var(--qr-preview-size, 228px)) !important;
    max-width:var(--qr-preview-size, 228px) !important;
  }
}

@media (max-width: 760px){
  .builder-utility-grid{
    grid-template-columns:1fr;
  }

  .mobile-upload-actions{
    display:grid;
  }

  .premium-generator-grid{
    grid-template-columns:1fr;
  }

  .premium-preview-panel{
    order:-1;
    position:static;
  }

  .design-split{
    grid-template-columns:1fr;
  }

  .four-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .pricing-grid{
    grid-template-columns:1fr;
  }

  #homepageQrWrap canvas,
  #homepageQrWrap svg{
    width:min(100%, var(--qr-preview-size, 212px)) !important;
    max-width:var(--qr-preview-size, 212px) !important;
  }
}

@media (max-width: 640px){
  body{
    padding-top:74px;
  }

  .container{
    width:min(100% - 12px, var(--max));
  }

  .brand-logo{
    height:50px;
  }

  .btn{
    width:100%;
  }

  .elite-nav-actions{
    width:auto;
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  .nav-btn{
    min-width:82px;
    width:auto;
    font-size:.66rem;
    min-height:32px;
  }

  .hero-actions{
    flex-direction:column;
  }

  .two-grid{
    grid-template-columns:1fr;
  }

  .builder-actions{
    grid-template-columns:1fr;
  }

  .color-row{
    grid-template-columns:1fr 1fr;
  }

  .analytics-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 520px){
  .style-tile-grid,
  .style-tile-grid-small,
  .three-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  #homepageQrWrap canvas,
  #homepageQrWrap svg{
    width:min(100%, var(--qr-preview-size, 196px)) !important;
    max-width:var(--qr-preview-size, 196px) !important;
  }
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
  }
}

/* =========================================================
   FINAL HIVEPOP ICON FIX — CSS GENERATED ICONS
   This makes every tile icon visible even if the <i> blocks are missing/truncated.
   ========================================================= */

.style-tile .tile-preview,
.style-tile .tile-preview.hp-icon{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  display:block !important;
  position:relative !important;
  overflow:hidden !important;
  border-radius:12px !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.22) !important;
  background:
    radial-gradient(circle at 30% 30%, rgba(255,212,0,.42), rgba(255,154,31,.18) 45%, rgba(255,255,255,.05) 100%) !important;
  box-shadow:
    0 0 14px rgba(255,212,0,.18),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -8px 16px rgba(0,0,0,.18) !important;
  z-index:3 !important;
}

.style-tile.active .tile-preview,
.style-tile.active .tile-preview.hp-icon{
  background:
    radial-gradient(circle at 30% 30%, rgba(255,255,255,.95), rgba(255,212,0,.90) 38%, rgba(255,154,31,.58) 100%) !important;
  border-color:rgba(255,212,0,.85) !important;
  box-shadow:
    0 0 18px rgba(255,212,0,.70),
    0 0 32px rgba(255,154,31,.36),
    inset 0 1px 0 rgba(255,255,255,.45) !important;
}

/* Hide fragile child blocks. Icons below are drawn with pseudo-elements. */
.tile-preview.hp-icon > i,
.tile-preview.theme-icon > i,
.tile-preview.mini-qr > i,
.tile-preview.eye-icon > i,
.tile-preview.premium-icon > i,
.tile-preview.center-dots > i{
  display:none !important;
}

/* Preset Theme icons */
.theme-sunset-pro::before,
.theme-royal-pro::before,
.theme-mint-pro::before,
.theme-mono-pro::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:5px;
  background:
    linear-gradient(var(--c1) 0 0) left top/11px 11px no-repeat,
    linear-gradient(var(--c2) 0 0) right top/11px 11px no-repeat,
    linear-gradient(var(--c3) 0 0) left bottom/11px 11px no-repeat,
    linear-gradient(var(--c4) 0 0) right bottom/11px 11px no-repeat;
}

.theme-sunset-pro{--c1:#111111;--c2:#ff9a1f;--c3:#ffd400;--c4:#ffffff;}
.theme-royal-pro{--c1:#1c2450;--c2:#4b6bff;--c3:#d7e3ff;--c4:#ffffff;}
.theme-mint-pro{--c1:#10382f;--c2:#25D366;--c3:#9ff1c0;--c4:#ffffff;}
.theme-mono-pro{--c1:#111111;--c2:#666666;--c3:#d7d7d7;--c4:#ffffff;}

/* QR Body icons */
.tile-preview.mini-qr::before{
  content:"";
  position:absolute;
  inset:7px;
}

.tile-preview.mini-qr.rounded::before{
  background:
    radial-gradient(circle at 3px 3px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 14px 3px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 25px 3px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 3px 14px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 14px 14px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 25px 14px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 3px 25px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 14px 25px, #fff7c7 0 2px, transparent 2.4px),
    radial-gradient(circle at 25px 25px, #fff7c7 0 2px, transparent 2.4px);
}

.tile-preview.mini-qr.square::before{
  background:
    linear-gradient(#fff7c7 0 0) 0 0/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 11px 0/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 22px 0/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 0 11px/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 11px 11px/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 22px 11px/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 0 22px/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 11px 22px/6px 6px no-repeat,
    linear-gradient(#fff7c7 0 0) 22px 22px/6px 6px no-repeat;
}

.tile-preview.mini-qr.dots::before{
  background:
    radial-gradient(circle at 3px 3px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 14px 3px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 25px 3px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 3px 14px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 14px 14px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 25px 14px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 3px 25px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 14px 25px, #fff7c7 0 2.3px, transparent 2.6px),
    radial-gradient(circle at 25px 25px, #fff7c7 0 2.3px, transparent 2.6px);
}

.tile-preview.mini-qr.classy::before{
  background:
    radial-gradient(circle at 3px 3px, #fff7c7 0 2.2px, transparent 2.5px),
    linear-gradient(#fff7c7 0 0) 11px 0/6px 6px no-repeat,
    radial-gradient(circle at 25px 3px, #fff7c7 0 2.2px, transparent 2.5px),
    linear-gradient(#fff7c7 0 0) 0 11px/6px 6px no-repeat,
    radial-gradient(circle at 14px 14px, #fff7c7 0 2.2px, transparent 2.5px),
    linear-gradient(#fff7c7 0 0) 22px 11px/6px 6px no-repeat,
    radial-gradient(circle at 3px 25px, #fff7c7 0 2.2px, transparent 2.5px),
    linear-gradient(#fff7c7 0 0) 11px 22px/6px 6px no-repeat,
    radial-gradient(circle at 25px 25px, #fff7c7 0 2.2px, transparent 2.5px);
}

/* Eye Frame icons */
.tile-preview.eye-icon::before{
  content:"";
  position:absolute;
  inset:10px;
  border:5px solid #fff7c7;
  box-sizing:border-box;
}

.tile-preview.eye-soft::before{border-radius:8px;}
.tile-preview.eye-square::before{border-radius:1px;}
.tile-preview.eye-round::before{border-radius:999px;}
.tile-preview.eye-classy::before{border-radius:10px 3px 10px 3px;}

.tile-preview.eye-dots::before{
  border:none;
  inset:8px;
  background:radial-gradient(circle, #fff7c7 45%, transparent 48%) 0 0/8px 8px;
}

/* Eye Center icons */
.tile-preview.center-icon::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:18px;
  height:18px;
  transform:translate(-50%, -50%);
  background:#fff7c7;
  box-shadow:0 0 0 4px rgba(255,212,0,.18), 0 0 16px rgba(255,154,31,.18);
}

.tile-preview.center-round::before{border-radius:999px;}
.tile-preview.center-square::before{border-radius:1px;}
.tile-preview.center-soft::before{border-radius:6px;}
.tile-preview.center-classy::before{border-radius:40% 12% 40% 12%;}

.tile-preview.center-dots::before{
  width:24px;
  height:24px;
  background:radial-gradient(circle, #fff7c7 42%, transparent 46%) 0 0/12px 12px;
  box-shadow:none;
}

/* Size icons */
.tile-preview.size-icon::before,
.tile-preview.size-small::before,
.tile-preview.size-medium::before,
.tile-preview.size-large::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  border:2px solid #ffd400;
  background:rgba(255,247,199,.95);
  box-shadow:0 0 14px rgba(255,212,0,.28);
}

.tile-preview.size-small::before{width:13px;height:13px;border-radius:3px;}
.tile-preview.size-medium::before{width:20px;height:20px;border-radius:4px;}
.tile-preview.size-large::before{width:27px;height:27px;border-radius:5px;}

/* Premium icons */
.tile-preview.premium-icon::before{
  content:"";
  position:absolute;
  inset:8px;
}

.tile-preview.premium-honey::before{
  background:
    linear-gradient(135deg, #ffd85a, #d8901c) 0 2px/8px 8px no-repeat,
    linear-gradient(135deg, #ffd85a, #d8901c) 10px 2px/8px 8px no-repeat,
    linear-gradient(135deg, #ffd85a, #d8901c) 20px 2px/8px 8px no-repeat,
    linear-gradient(135deg, #ffd85a, #d8901c) 5px 13px/8px 8px no-repeat,
    linear-gradient(135deg, #ffd85a, #d8901c) 15px 13px/8px 8px no-repeat;
  clip-path:polygon(10% 0, 90% 0, 100% 50%, 90% 100%, 10% 100%, 0 50%);
}

.tile-preview.premium-neon::before{
  inset:7px;
  background:
    radial-gradient(circle at 3px 3px, #89ffcb 0 2px, transparent 2.4px),
    radial-gradient(circle at 14px 3px, #37d8ff 0 2px, transparent 2.4px),
    radial-gradient(circle at 25px 3px, #89ffcb 0 2px, transparent 2.4px),
    radial-gradient(circle at 3px 14px, #37d8ff 0 2px, transparent 2.4px),
    radial-gradient(circle at 14px 14px, #89ffcb 0 2px, transparent 2.4px),
    radial-gradient(circle at 25px 14px, #37d8ff 0 2px, transparent 2.4px),
    radial-gradient(circle at 3px 25px, #89ffcb 0 2px, transparent 2.4px),
    radial-gradient(circle at 14px 25px, #37d8ff 0 2px, transparent 2.4px),
    radial-gradient(circle at 25px 25px, #89ffcb 0 2px, transparent 2.4px);
  filter:drop-shadow(0 0 6px rgba(55,216,255,.9));
}

.tile-preview.premium-luxury::before{
  background:
    linear-gradient(#fff4c7 0 0) 0 0/7px 7px no-repeat,
    linear-gradient(#b8892f 0 0) 11px 0/7px 7px no-repeat,
    linear-gradient(#fff4c7 0 0) 22px 0/7px 7px no-repeat,
    linear-gradient(#b8892f 0 0) 0 11px/7px 7px no-repeat,
    linear-gradient(#fff4c7 0 0) 11px 11px/7px 7px no-repeat,
    linear-gradient(#b8892f 0 0) 22px 22px/7px 7px no-repeat;
}

.style-tile.active .tile-preview::before{
  filter:brightness(0) saturate(2);
}

@keyframes softPulse{
  0%,100%{transform:scale(1); filter:drop-shadow(0 4px 10px rgba(0,0,0,.18));}
  50%{transform:scale(1.08); filter:drop-shadow(0 0 12px rgba(255,212,0,.20));}
}

@keyframes premiumSweep{
  0%,45%{left:-85%;}
  72%,100%{left:140%;}
}

@keyframes premiumBreath{
  0%,100%{box-shadow:0 10px 26px rgba(255,154,31,.14), 0 0 0 1px rgba(255,212,0,.18) inset;}
  50%{box-shadow:0 14px 34px rgba(255,154,31,.22), 0 0 22px rgba(255,212,0,.12), 0 0 0 1px rgba(255,212,0,.30) inset;}
}

@keyframes badgeGlow{
  0%,100%{filter:drop-shadow(0 0 0 rgba(255,212,0,0));}
  50%{filter:drop-shadow(0 0 8px rgba(255,212,0,.35));}
}

@keyframes tileRipple{
  to{transform:translate(-50%, -50%) scale(12); opacity:0;}
}

@keyframes qrRefreshPop{
  0%{transform:scale(.985); opacity:.82;}
  100%{transform:scale(1); opacity:1;}
}

@keyframes qrGlowRing{
  0%{box-shadow:0 0 0 0 rgba(255,212,0,.22);}
  100%{box-shadow:0 0 0 14px rgba(255,212,0,0);}
}

@keyframes barFlow{
  0%{background-position:0% 50%;}
  100%{background-position:180% 50%;}
}

@keyframes noteSweep{
  0%,65%{transform:translateX(-120%);}
  100%{transform:translateX(120%);}
}

@media (max-width: 900px){
  .premium-generator-grid{grid-template-columns:minmax(0,1fr) 208px;}

  #homepageQrWrap canvas,
  #homepageQrWrap svg{
    width:min(100%, var(--qr-preview-size, 228px)) !important;
    max-width:var(--qr-preview-size, 228px) !important;
  }
}

@media (max-width: 760px){
  .builder-utility-grid{grid-template-columns:1fr;}
  .mobile-upload-actions{display:grid;}
  .premium-generator-grid{grid-template-columns:1fr;}
  .premium-preview-panel{order:-1;position:static;}
  .design-split{grid-template-columns:1fr;}
  .four-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pricing-grid{grid-template-columns:1fr;}

  #homepageQrWrap canvas,
  #homepageQrWrap svg{
    width:min(100%, var(--qr-preview-size, 212px)) !important;
    max-width:var(--qr-preview-size, 212px) !important;
  }
}

@media (max-width: 640px){
  body{padding-top:74px;}
  .container{width:min(100% - 12px, var(--max));}
  .brand-logo{height:50px;}
  .btn{width:100%;}
  .elite-nav-actions{width:auto;flex-wrap:wrap;justify-content:flex-end;}
  .nav-btn{min-width:82px;width:auto;font-size:.66rem;min-height:32px;}
  .hero-actions{flex-direction:column;}
  .two-grid{grid-template-columns:1fr;}
  .builder-actions{grid-template-columns:1fr;}
  .color-row{grid-template-columns:1fr 1fr;}
  .analytics-grid{grid-template-columns:1fr;}
}

@media (max-width: 520px){
  .style-tile-grid,
  .style-tile-grid-small,
  .three-grid{grid-template-columns:repeat(2,minmax(0,1fr));}

  #homepageQrWrap canvas,
  #homepageQrWrap svg{
    width:min(100%, var(--qr-preview-size, 196px)) !important;
    max-width:var(--qr-preview-size, 196px) !important;
  }
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
  }
}
/* FIX: Eye Center Dots icon */
.tile-preview.center-dots::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%, -50%) !important;
  width:26px !important;
  height:26px !important;

  background:
    radial-gradient(circle at 5px 5px, #fff7c7 0 2.3px, transparent 2.7px),
    radial-gradient(circle at 13px 5px, #fff7c7 0 2.3px, transparent 2.7px),
    radial-gradient(circle at 21px 5px, #fff7c7 0 2.3px, transparent 2.7px),

    radial-gradient(circle at 5px 13px, #fff7c7 0 2.3px, transparent 2.7px),
    radial-gradient(circle at 13px 13px, #fff7c7 0 2.3px, transparent 2.7px),
    radial-gradient(circle at 21px 13px, #fff7c7 0 2.3px, transparent 2.7px),

    radial-gradient(circle at 5px 21px, #fff7c7 0 2.3px, transparent 2.7px),
    radial-gradient(circle at 13px 21px, #fff7c7 0 2.3px, transparent 2.7px),
    radial-gradient(circle at 21px 21px, #fff7c7 0 2.3px, transparent 2.7px) !important;

  background-repeat:no-repeat !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

/* keeps active selected dot icon dark like the others */
.style-tile.active .tile-preview.center-dots::before{
  filter:brightness(0) saturate(2) !important;
}