.shop-page .shop-top{max-width:960px}
.shop-page .nav-active{color:var(--pink)}
.shop-page main{max-width:720px;margin:0 auto;padding:32px 24px 64px;position:relative;z-index:1}

.shop-hero{text-align:center;padding:48px 0 32px}
.shop-hero h1{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:800;margin:16px 0 12px}
.shop-hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--pink),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.shop-tagline{color:var(--muted);font-size:1.05rem;max-width:480px;margin:0 auto}
.shop-tagline strong{color:var(--pink)}
.plus-badge-preview.xl{font-size:56px;letter-spacing:-3px}

.shop-tabs{
  display:flex;gap:10px;justify-content:center;margin-bottom:28px;flex-wrap:wrap;
}
.shop-tab{
  padding:10px 22px;border-radius:999px;border:1px solid var(--line);
  background:var(--surface);color:var(--muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer;
  transition:all .2s;
}
.shop-tab:hover{color:var(--text);border-color:rgba(255,110,180,.3)}
.shop-tab.active{
  background:linear-gradient(135deg,var(--pink),var(--mag));color:#fff;border-color:transparent;
  box-shadow:0 6px 24px rgba(255,110,180,.25);
}

.shop-panel{display:none;animation:fadeIn .3s ease}
.shop-panel.active{display:block}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.price-card{
  text-align:center;padding:36px 28px;margin-bottom:20px;
  background:linear-gradient(160deg,rgba(255,110,180,.14),rgba(123,44,191,.1));
  border:1px solid rgba(255,110,180,.28);border-radius:20px;
}
.price-label{font-size:.85rem;color:var(--pink);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.price-amount{font-size:3rem;font-weight:800;line-height:1;margin-bottom:8px;background:linear-gradient(135deg,#fff,var(--pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.price-note{color:var(--muted);font-size:.9rem;margin-bottom:20px}
.price-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;align-items:center;color:var(--muted);font-size:.9rem}
.price-features li{display:flex;align-items:center;gap:10px}

.shop-buy-block,.gift-card{margin-bottom:16px}
.btn-shop.big{padding:16px 28px;font-size:1rem;width:100%;max-width:100%}
.gift-card{border-color:rgba(255,110,180,.25)}
.gift-list{margin-top:20px;display:flex;flex-direction:column;gap:8px}
.gift-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:.9rem;
}
.gift-row strong{color:var(--text)}
.gift-row span{color:var(--muted);font-size:.8rem}

.shop-admin-panel{margin-top:40px;border:1px dashed rgba(255,200,80,.25);border-radius:14px;padding:16px 20px;background:rgba(255,200,80,.04)}
.shop-admin-panel summary{cursor:pointer;font-weight:700;color:#ffc850;font-size:.9rem;user-select:none}
.admin-card{margin-top:14px;border-color:rgba(255,200,80,.2)!important}
.admin-result{margin-top:12px;font-size:.85rem;color:var(--muted)}
.admin-result.ok{color:#3dd68c}
.admin-result.err{color:#ff8a8a}
.shop-status-card.gold{border-color:rgba(255,200,80,.4);background:rgba(255,200,80,.06)}
.shop-gold-badge{color:#ffc850;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}

.shop-page .brand{text-decoration:none;color:inherit}
