/* 自定义字体类 */
.font-oleo {
  font-family: 'Oleo Script', cursive !important;
  font-weight: normal;
}


/* 直接为英文页面内容区域设置Rubik字体 */
.content p, 
.content h1, 
.content h2, 
.content h3, 
.content h4, 
.content h5, 
.content h6, 
.content li, 
.content ol, 
.content ul, 
.content blockquote, 
.header-title {
  font-family: 'Rubik', "Open Sans", sans-serif !important;
}

/* 中文内容使用PingFang SC字体 */
html[lang="zh-cn"] .content p,
html[lang="zh-cn"] .content h1,
html[lang="zh-cn"] .content h2,
html[lang="zh-cn"] .content h3,
html[lang="zh-cn"] .content h4,
html[lang="zh-cn"] .content h5,
html[lang="zh-cn"] .content h6,
html[lang="zh-cn"] .content li,
html[lang="zh-cn"] .content ol,
html[lang="zh-cn"] .content ul,
html[lang="zh-cn"] .content blockquote,
html[lang="zh-cn"] .header-title {
  font-family: "PingFang SC", -apple-system, "Hiragino Sans GB", "Microsoft YaHei", sans-serif !important;
}


/* 确保在h2标签中正确显示Oleo字体 */
h2 .font-oleo, h2 span.font-oleo {
  font-family: 'Oleo Script', cursive !important;
  font-weight: normal;
  display: inline-block;
}

p.author-name {
  font-family: 'Oleo Script', cursive !important;
  font-size: 1.2em;
}

.container.content .author-card .author-box .author-content p.author-name {
  font-family: 'Oleo Script', cursive !important;
}

/* 覆盖主题中spotify iframe的居中样式 */
.spotify-left, 
iframe.spotify-left,
iframe.spotify.spotify-track {
  margin-left: 0 !important;
  margin-right: auto !important;
  margin-bottom: 10px !important;
}

/* 强制覆盖主题对所有iframe的居中设置 */
.content iframe.spotify-left {
  margin-left: 0 !important;
  margin-right: auto !important;
  display: block;
}

/* 美化blockquote样式 */
blockquote {
  border-left: 4px solid #ccc;
  background-color: #f9f9f9;
  padding: 15px 20px;
  margin: 1.5em 0;
  border-radius: 0 4px 4px 0;
  font-size: 16px;
  color: #555;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* 修复blockquote内部段落间距问题 */
blockquote p {
  margin: 0;
}

blockquote p + p {
  margin-top: 1em;
}

html[lang="zh-cn"] blockquote {
  font-style: normal;
}

/* 响应式Spotify播放器 */
.spotify-responsive,
iframe.spotify-responsive,
.content iframe.spotify-responsive {
  margin-left: 0 !important;
  margin-right: auto !important;
  margin-bottom: 10px !important;
  width: 95% !important; /* 默认宽度为移动设备 */
}

/* 桌面设备 */
@media screen and (min-width: 768px) {
  .spotify-responsive,
  iframe.spotify-responsive,
  .content iframe.spotify-responsive {
    width: 45% !important;
  }
}

/* 确保内容区域中的Spotify iframe也应用这个规则 */
.content iframe.spotify-responsive {
  display: block;
}

/* 更新剧透区块样式 */
.spoiler {
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 8px;
  margin: 1.5rem 0;
  background: linear-gradient(145deg, #f8f9fa 0%, #ffffff 100%);
  box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
}

.spoiler summary {
  cursor: pointer;
  padding: 1.2rem 1.8rem;
  background: linear-gradient(135deg, rgba(255,255,255,0.9) 0%, rgba(245,245,245,0.85) 100%);
  backdrop-filter: blur(8px) saturate(180%);
  border-radius: 8px 8px 0 0;
  font-weight: 600;
  color: #2d3748;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

.spoiler-content {
  padding: 1.5rem;
  background: linear-gradient(145deg, rgba(255,255,255,0.95) 0%, rgba(248,249,250,0.92) 100%);
  border-radius: 0 0 8px 8px;
  backdrop-filter: blur(12px) saturate(160%);
  position: relative;
  line-height: 1.6;
  box-shadow: inset 0 8px 16px -8px rgba(0,0,0,0.08),
              inset 0 -4px 12px -4px rgba(255,255,255,0.6);
}
