:root {
  --primary: #E8475F;
  --primary-dark: #C4324A;
  --primary-light: #FFB3BE;
  --secondary: #FF8C42;
  --accent: #FF5E7A;
}

/* 多巴胺糖果色块拼贴风 —— video19 */
html { scroll-behavior: smooth; }

::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: #ffe14d; }
::-webkit-scrollbar-thumb { background: #ff2d8e; border-radius: 99px; border: 2px solid #ffe14d; }
::-webkit-scrollbar-thumb:hover { background: #8b3dff; }

body { background: #fff7ec; }

/* 糖果色调色板工具类 */
.dopa-grape   { background: #8b3dff; }
.dopa-orange  { background: #ff7a1a; }
.dopa-mint    { background: #18c99b; }
.dopa-pink    { background: #ff2d8e; }
.dopa-lemon   { background: #ffd400; }
.dopa-sky     { background: #2bb8ff; }
.dopa-cream   { background: #fff7ec; }
.dopa-ink     { background: #1a0b2e; }

/* 拼贴卡片：粗描边 + 硬阴影 */
.candy-card {
  border: 3px solid #1a0b2e;
  border-radius: 1.5rem;
  box-shadow: 6px 6px 0 #1a0b2e;
  transition: transform .18s ease, box-shadow .18s ease;
}
.candy-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: 9px 9px 0 #1a0b2e;
}

/* 旋转贴纸标签 */
.sticker {
  display: inline-block;
  border: 3px solid #1a0b2e;
  border-radius: 999px;
  transform: rotate(-3deg);
}

/* 描边大标题 */
.pop-title {
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.05;
}

/* 文字渐变（糖果） */
.text-gradient {
  background: linear-gradient(90deg, var(--primary), var(--accent), var(--secondary));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* 链接下划波浪 */
.candy-link { position: relative; }
.candy-link:hover { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 4px; }

/* 移动端抽屉导航 */
.nav { transition: transform .3s ease; }
@media (max-width: 1023px) {
  .nav {
    position: fixed; top: 0; right: 0; bottom: 0;
    width: 82%; max-width: 340px;
    flex-direction: column;
    align-items: flex-start;
    background: #ffd400;
    padding: 5.5rem 1.75rem 2rem;
    transform: translateX(100%);
    z-index: 60; overflow-y: auto;
    border-left: 4px solid #1a0b2e;
  }
  .nav.active { transform: translateX(0); }
  .menu-overlay {
    position: fixed; inset: 0;
    background: rgba(26,11,46,.55);
    opacity: 0; visibility: hidden;
    transition: opacity .3s ease;
    z-index: 55;
  }
  .menu-overlay.active { opacity: 1; visibility: visible; }
  body.menu-open { overflow: hidden; }
}

/* FAQ 折叠 */
.faq-answer {
  max-height: 0; overflow: hidden; opacity: 0;
  transition: max-height .3s ease, opacity .3s ease;
}
.faq-icon { transition: transform .25s ease; }
.faq-item.active .faq-icon { transform: rotate(45deg); }

/* 分类 Tab 选中态 */
.cat-tab { transition: transform .15s ease, background .15s ease; }
.cat-tab.active { transform: rotate(-2deg) scale(1.03); }

/* 回到顶部 */
.back-to-top {
  opacity: 0; visibility: hidden;
  transition: opacity .3s ease, transform .3s ease;
}
.back-to-top.visible { opacity: 1; visibility: visible; }
.back-to-top:hover { transform: rotate(12deg) scale(1.1); }

@media print {
  header, footer, nav, .no-print { display: none !important; }
  body { background: #fff; color: #000; }
}
