.pd-page{
  --pd-bg:#17181B;
  --pd-surface:#1E2024;
  --pd-surface-2:#24262B;
  --pd-border:#2E3136;
  --pd-text:#F4F4F1;
  --pd-muted:#9DA0A7;
  --pd-accent:#FF6A35;
  --pd-accent-hover:#FF8257;
  --pd-thumb-bg:#F3EEDA;
  --pd-thumb-ink:#3A3626;
  font-family:'Manrope',system-ui,sans-serif;
}
.pd-page .display-font{ font-family:'Outfit',system-ui,sans-serif; }

.pd-gallery{ border-radius:16px; overflow:hidden; border:1px solid var(--pd-border); }
.pd-gallery .carousel-item img{ height:260px; object-fit:cover; }
.pd-gallery-empty{
  height:200px; border-radius:16px; background:var(--pd-thumb-bg); color:var(--pd-thumb-ink);
  display:flex; align-items:center; justify-content:center;
}
.pd-gallery-empty i{ font-size:3rem; opacity:.6; }

.pd-title-block{ min-width:0; flex:1 1 auto; }
.pd-title{ font-family:'Outfit',sans-serif; font-weight:700; color:var(--pd-text); }
.pd-store-link{ color:var(--pd-accent); text-decoration:none; }
.pd-store-link:hover{ color:var(--pd-accent-hover); }
.pd-price{ font-family:'Outfit',sans-serif; font-weight:700; color:var(--pd-text); }
.pd-delivery{ color:var(--pd-muted); font-size:.72rem; }
.pd-tag{ background:var(--pd-surface-2); color:var(--pd-muted); border:1px solid var(--pd-border); font-weight:600; }
.pd-desc{ color:var(--pd-muted); }

.pd-btn-solid{
  background:var(--pd-accent); border:none; color:#fff; border-radius:10px; font-weight:700;
}
.pd-btn-solid:hover{ background:var(--pd-accent-hover); color:#fff; }
.pd-btn-solid:disabled{ opacity:.5; }

.pd-notice, .pd-options{ background:var(--pd-surface); border:1px solid var(--pd-border); border-radius:14px; }
.pd-notice i{ color:var(--pd-accent); }
.pd-notice p, .pd-warning{ color:var(--pd-muted); }
.pd-warning{ background:var(--pd-surface); border:1px solid var(--pd-border); border-radius:14px; }

.pd-attr-label{ color:var(--pd-muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.04em; }
.pd-attr-btn{
  font-size:.78rem; padding:.3rem .8rem; border-radius:20px; font-weight:600;
  border:1.5px solid var(--pd-border); color:var(--pd-muted); background:transparent;
}
.pd-attr-btn:hover{ border-color:var(--pd-accent); color:var(--pd-text); }
.pd-attr-btn.pd-attr-active{ background:var(--pd-accent); border-color:var(--pd-accent); color:#fff; }
