/* =============================================
   [樱粉假日]
   base-hue:330  base-sat:80%  is-dark:0  accent-hue:330  accent-sat:80%

   bg-deep:#fdfdfd   bg-default:#fdfdfd   bg-paper:#fff5f9   bg-raised:#ffe8f0
   bg-hover:rgba(255,240,248,0.8)  text-main:#831843    text-sub:#9d174d   text-muted:rgba(244,114,182,0.4)
   border:rgba(244,114,182,0.2)    accent:#ec4899       accent-dim:rgba(236,72,153,0.12) accent-text:#9d174d
   glow: 0 0 0px rgba(236,72,153,0.1)

   亮点① blockquote → 柔和粉色左边框+微透背景的日记摘录样式
   亮点② 加载动画  → 内嵌SVG实现的粉色圆点柔和跳动
   亮点③ 分隔线    → 粉色虚线居中点缀樱花符号 ✿
   ============================================= */

/* ===== 危险区域 ===== */
[class*="bg-[#F1CBCB]"], [class*="bg-[#c9e1e9]"] { display: none !important; }

.markdown-body pre { background: rgba(252,228,240,1) !important; border: 1px solid rgba(236,72,153,0.45) !important; border-left: 3px solid #ec4899 !important; border-radius: 6px !important; padding: 1em 1.2em !important; overflow-x: auto !important; }
.markdown-body pre code { background: transparent !important; color: #500724 !important; }
.markdown-body :not(pre)>code { background: rgba(236,72,153,0.12) !important; color: #9d174d !important; padding: 0.15em 0.45em !important; border-radius: 4px !important; }

details { background: rgba(255,240,248,0.6) !important; border: 1px solid rgba(244,114,182,0.18) !important; border-radius: 6px !important; margin: 8px 0 !important; overflow: hidden !important; transition: border-color 0.15s !important; color: #831843 !important; }
details[open] { border-color: rgba(236,72,153,0.45) !important; }
details summary { background: rgba(0,0,0,0.06) !important; color: #9d174d !important; padding: 8px 12px 8px 32px !important; display: block !important; position: relative !important; border-bottom: 1px solid rgba(136,136,136,0.15) !important; cursor: pointer !important; font-weight: 600 !important; list-style: none !important; user-select: none !important; }
details summary::before { content: '\25B6' !important; position: absolute !important; left: 12px !important; top: 50% !important; transform: translateY(-50%) !important; color: #ec4899 !important; font-size: 11px !important; transition: transform 0.2s ease !important; }
details[open] summary::before { transform: translateY(-50%) rotate(90deg) !important; }
details summary::-webkit-details-marker { display: none !important; }

::-webkit-scrollbar { width: 3px !important; height: 3px !important; }
::-webkit-scrollbar-track { background: #fdfdfd !important; }
::-webkit-scrollbar-thumb { background: #f472b6 !important; border-radius: 3px !important; }
::-webkit-scrollbar-thumb:hover { background: #ec4899 !important; }

::placeholder { color: rgba(244,114,182,0.4) !important; opacity: 1 !important; }
::selection { background: rgba(236,72,153,0.12) !important; color: #9d174d !important; }

#ai-chat-input { background: rgba(255,249,252,0.96) !important; color: #831843 !important; caret-color: #ec4899 !important; }
textarea.rc-textarea { background: rgba(255,249,252,0.96) !important; color: #831843 !important; border: 1px solid rgba(244,114,182,0.28) !important; }

/* ===== 全局 ===== */
body, #root, .h-screen { background-color: #fdfdfd !important; color: #831843 !important; cursor: auto !important; }

/* ===== 顶部导航 ===== */
.sticky.w-full.top-0.flex.items-center { background: rgba(255,245,250,0.96) !important; border-bottom: 1px solid rgba(244,114,182,0.18) !important; backdrop-filter: blur(12px) !important; }
#ai-model-selector .group.flex.items-center { background: rgba(244,114,182,0.08) !important; border: 1px solid rgba(244,114,182,0.3) !important; border-radius: 6px !important; }
#ai-model-selector .truncate.text-[13px] { color: #db2777 !important; }
#ai-model-selector .shrink-0.flex.items-center svg { color: #e11d48 !important; }
#header-setting-button { background: rgba(255,255,255,0.6) !important; border: 1px solid rgba(244,114,182,0.15) !important; color: #9d174d !important; border-radius: 6px !important; }

/* ===== 开场白区域 ===== */
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"] { background: rgba(255,255,255,0.6) !important; border: 1px solid rgba(244,114,182,0.15) !important; border-radius: 6px !important; }
div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="SlidersH"] { color: #9d174d !important; }
div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="ChevronDown"] { color: #ec4899 !important; }

/* ===== 侧边栏 ===== */
.shadow-lg.border-r.border-gray-200 { background: #fdfdfd !important; border-right: 1px solid rgba(244,114,182,0.2) !important; }
.MuiList-root { background: #fdfdfd !important; color: #831843 !important; }
.conversation-text { color: #831843 !important; }

/* ===== 功能按钮 ===== */
#ai-mod-button2 { background: transparent !important; }
#ai-mod-button2 button.MuiButton-root { background: rgba(236,72,153,0.07) !important; border: 1px solid rgba(244,114,182,0.22) !important; color: #9d174d !important; border-radius: 6px !important; }
#ai-mod-button2 button.MuiButton-root svg { color: #9d174d !important; }

/* ===== 聊天气泡 ===== */
.bg-gray-100\/90.relative.inline-block { background: #fff5f9 !important; border: 1px solid rgba(244,114,182,0.2) !important; border-radius: 16px !important; padding: 10px 14px !important; box-shadow: 0 0 0px rgba(236,72,153,0.1) !important; }
.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90) { background: #ffe8f0 !important; }
.markdown-body { color: #831843 !important; font-size: 14px !important; line-height: 1.8 !important; font-weight: 400 !important; letter-spacing: 0.02em !important; }
.markdown-body h1, h2, h3 { color: #9d174d !important; border-bottom: 1px solid rgba(244,114,182,0.2) !important; padding-bottom: 0.3em !important; }
.markdown-body ul, ol, li { color: #831843 !important; }
.markdown-body blockquote { background: rgba(0,0,0,0.03) !important; border-left: 4px solid rgba(244,114,182,0.55) !important; color: #831843 !important; padding: 0.6em 1.2em !important; margin: 1em 0 !important; border-radius: 0 6px 6px 0 !important; font-style: italic !important; }
.markdown-body table, th, td { border: 1px solid rgba(244,114,182,0.2) !important; }
.markdown-body th { background: rgba(255,240,248,0.6) !important; color: #9d174d !important; }
.markdown-body strong, em, a { color: #9d174d !important; }

/* ===== 加载动画 ===== */
.style_dot-flashing__8L91Q.style_text__zGhNq { display: none !important; }
.flex.items-center.justify-center.w-6.h-5 { position: relative !important; background: transparent !important; }
.flex.items-center.justify-center.w-6.h-5::before { content: '' !important; position: absolute !important; width: 24px !important; height: 10px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 10' fill='%23f472b6'%3E%3Ccircle cx='4' cy='5' r='3'%3E%3Canimate attributeName='opacity' values='0.3;1;0.3' begin='0s' dur='1s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='12' cy='5' r='3'%3E%3Canimate attributeName='opacity' values='0.3;1;0.3' begin='0.3s' dur='1s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='20' cy='5' r='3'%3E%3Canimate attributeName='opacity' values='0.3;1;0.3' begin='0.6s' dur='1s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: center !important; }
.flex.items-center.justify-center.w-6.h-5::after { display: none !important; }

/* ===== 底部输入 ===== */
.bg-gradient-to-t { background: linear-gradient(to top, #fdfdfd 80%, transparent) !important; }
#ai-chat-bottom-input { background: transparent !important; }
#ai-chat-input { border-radius: 14px !important; border: 1px solid rgba(244,114,182,0.28) !important; }
#ai-chat-input:focus { border-color: rgba(236,72,153,0.52) !important; outline: none !important; }
#ai-chat-input::placeholder { color: rgba(244,114,182,0.4) !important; }
#ai-chat-input::selection { background: rgba(236,72,153,0.12) !important; color: #9d174d !important; }
#ai-send-button { background: linear-gradient(135deg, #db2777, #be185d) !important; border-radius: 50% !important; color: #fff !important; border: none !important; }

/* ===== 评论区 ===== */
div[class*="w-full"][class*="bg-white"][class*="bottom-0"] { background: #fdfdfd !important; border-top: 1px solid rgba(244,114,182,0.2) !important; }
div.text-lg.font-bold { color: #9d174d !important; }
p.MuiTypography-body1.text-grey-600 { color: #831843 !important; }
span.MuiRating-root { color: #ec4899 !important; }
span.MuiRating-iconEmpty svg { color: rgba(244,114,182,0.4) !important; }
span.MuiRating-iconFilled svg { color: #ec4899 !important; }
span.text-orange-500 { color: #ec4899 !important; }
div.flex.flex-col.border-gray-200 { border-color: rgba(244,114,182,0.2) !important; }
div.bg-gray-100.text-gray-500 { background: rgba(255,240,248,0.6) !important; color: #831843 !important; }
div.cursor-pointer.group.flex.items-center.justify-center { background: rgba(236,72,153,0.07) !important; border-radius: 6px !important; }
div[data-state="closed"] svg[data-icon="Send03"] { color: #db2777 !important; }
div.style_divider__mW0YX { border-top: 1px dashed rgba(244,114,182,0.4) !important; position: relative !important; margin: 24px 0 !important; background: transparent !important; }
div.style_divider__mW0YX::after { content: '✿' !important; position: absolute !important; left: 50% !important; top: -12px !important; transform: translateX(-50%) !important; color: #f472b6 !important; font-size: 16px !important; background: #fdfdfd !important; padding: 0 8px !important; }
.MuiStack-root.css-1dmzxoz { background: transparent !important; }
button.MuiButton-containedPrimary { background: #db2777 !important; color: #fff !important; }
button.MuiButton-outlinedPrimary { border-color: #db2777 !important; color: #db2777 !important; }
div.p-3.overflow-y-auto { background: #fdfdfd !important; }
div.group.ml-0 { background: transparent !important; }
div.group img.rounded-full { border: 1px solid rgba(244,114,182,0.2) !important; }
div.text-sm.text-grey-600 span.font-bold { color: #9d174d !important; }
span.text-[10px] { color: rgba(244,114,182,0.6) !important; }
div.break-all { color: #831843 !important; }
div.text-xs.text-grey-600 { color: rgba(244,114,182,0.6) !important; }
button.text-gray-400 { color: rgba(244,114,182,0.6) !important; }
button.text-gray-400 svg { color: rgba(244,114,182,0.6) !important; }
span.cursor-pointer { color: #db2777 !important; }
div.ml-8.border-l { border-left: 2px solid rgba(244,114,182,0.2) !important; }

/* ===== 分页 ===== */
.MuiPaginationItem-root { color: #831843 !important; }
.MuiPaginationItem-root.Mui-selected { background: rgba(236,72,153,0.12) !important; color: #db2777 !important; font-weight: bold !important; }
.MuiPaginationItem-root.Mui-disabled { opacity: 0.5 !important; }
.MuiPaginationItem-icon { color: #ec4899 !important; }
.MuiStack-root.css-1uwir8f { background: transparent !important; }
.MuiInputBase-input { color: #831843 !important; }

/* ===== MUI 全局 ===== */
.MuiButton-root, .MuiButton-contained, .MuiButton-outlined { text-transform: none !important; border-radius: 6px !important; }
.MuiIconButton-root { color: #ec4899 !important; }
.MuiDialog-paper, .MuiDrawer-paper, .MuiBackdrop-root { background: #fdfdfd !important; color: #831843 !important; }
.MuiDivider-root { border-color: rgba(244,114,182,0.18) !important; }
.MuiTypography-root { color: #831843 !important; }
.MuiRating-icon { color: #ec4899 !important; }
.MuiOutlinedInput-root { border-radius: 14px !important; }
.MuiOutlinedInput-notchedOutline { border-color: rgba(244,114,182,0.28) !important; }
.MuiTouchRipple-root { color: rgba(236,72,153,0.2) !important; }
.MuiTypography-root.MuiTypography-body2.css-6c0gf2 { color: #831843 !important; }
.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary { color: #db2777 !important; }
.text-orange-500 { color: #ec4899 !important; }

/* ===== 响应式 ===== */
@media (max-width: 480px) {
  .bg-gray-100\/90.relative.inline-block { padding: 8px 12px !important; border-radius: 12px !important; }
  .markdown-body { font-size: 13px !important; }
  #ai-chat-input { border-radius: 10px !important; }
}

/* ===== 降速 ===== */
@media (prefers-reduced-motion: reduce) {
  .flex.items-center.justify-center.w-6.h-5::before,
  .flex.items-center.justify-center.w-6.h-5::after { animation-duration: 4s !important; }
  * { transition: none !important; animation: none !important; }
}