/* ========================================
   Chat Room — 粉紫主题（仅 .theme-purple 时生效）
   ======================================== */

.theme-purple #chat-room-screen {
    background: linear-gradient(135deg, #667eea 0%, #9b59b6 50%, #f093fb 100%) !important;
}
.theme-purple #chat-room-screen .app-header {
    background: rgba(255,255,255,0.12) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid rgba(255,255,255,0.15) !important;
}
.theme-purple #chat-room-screen .app-header .title {
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(0,0,0,0.2) !important;
}
.theme-purple #chat-room-screen .app-header .status {
    color: rgba(255,255,255,0.6) !important;
}
.theme-purple #chat-room-screen .app-header .back-btn {
    color: #fff !important;
}

/* 气泡 */
.theme-purple .message-bubble.sent {
    background: rgba(255,255,255,0.2) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.25) !important;
    border-bottom-right-radius: 4px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
}
.theme-purple .message-bubble.received {
    background: rgba(255,255,255,0.12) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    border-bottom-left-radius: 4px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
}
.theme-purple .message-wrapper { animation: msgSlideIn 0.3s ease-out; }
.theme-purple .message-wrapper.sent { animation-name: msgSlideInRight; }
@keyframes msgSlideIn { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@keyframes msgSlideInRight { from { opacity:0; transform:translateX(12px); } to { opacity:1; transform:translateX(0); } }

.theme-purple .sender-name { color: rgba(255,255,255,0.5) !important; }
.theme-purple .msg-avatar { border: 2px solid rgba(255,255,255,0.25) !important; box-shadow: 0 2px 10px rgba(0,0,0,0.2) !important; }
.theme-purple .image-bubble { background: rgba(255,255,255,0.1) !important; border: 1px solid rgba(255,255,255,0.15) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important; }
.theme-purple .voice-bubble { background: rgba(255,255,255,0.12) !important; color: #fff !important; border: 1px solid rgba(255,255,255,0.15) !important; }
.theme-purple .voice-bubble .play-icon { color: #fff !important; }
.theme-purple .voice-bubble .duration { color: rgba(255,255,255,0.6) !important; }
.theme-purple .voice-transcript { background: rgba(255,255,255,0.1) !important; color: rgba(255,255,255,0.8) !important; border: 1px solid rgba(255,255,255,0.1) !important; }
.theme-purple .pv-card { background: rgba(255,255,255,0.1) !important; border: 1px solid rgba(255,255,255,0.15) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important; }
.theme-purple .pv-card-content { background: rgba(30,42,58,0.9) !important; color: rgba(255,255,255,0.9) !important; }
.theme-purple .gift-card { background: rgba(255,255,255,0.15) !important; border: 1px solid rgba(255,255,255,0.2) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important; }
.theme-purple .gift-card-text { color: #fff !important; }
.theme-purple .gift-card-description { color: rgba(255,255,255,0.6) !important; }
.theme-purple .transfer-card { box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important; }
.theme-purple .transfer-content { color: #fff !important; }
.theme-purple .system-notification-bubble { background: rgba(255,255,255,0.1) !important; color: rgba(255,255,255,0.5) !important; }
.theme-purple .message-time { color: rgba(255,255,255,0.35) !important; }

/* 输入栏 */
.theme-purple .message-input-area {
    background: rgba(255,255,255,0.12) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-top: 1px solid rgba(255,255,255,0.15) !important;
}
.theme-purple .message-input-area input { background: rgba(255,255,255,0.12) !important; color: #fff !important; border: 1px solid rgba(255,255,255,0.15) !important; }
.theme-purple .message-input-area input::placeholder { color: rgba(255,255,255,0.4) !important; }
.theme-purple .message-input-area .icon-btn { background: linear-gradient(135deg, #667eea 0%, #9b59b6 50%, #f093fb 100%) !important; box-shadow: 0 2px 10px rgba(155,89,182,0.4) !important; }
.theme-purple .message-input-area input:focus { box-shadow: 0 0 0 2px rgba(155,89,182,0.4), 0 0 15px rgba(155,89,182,0.15) !important; border-color: rgba(155,89,182,0.5) !important; }
.theme-purple .message-input-area .icon-btn:active { transform: scale(0.92); box-shadow: 0 4px 20px rgba(155,89,182,0.6) !important; }

/* 表情 */
.theme-purple #sticker-bar { background: rgba(255,255,255,0.12) !important; backdrop-filter: blur(20px) !important; border-top: 1px solid rgba(255,255,255,0.1) !important; }
.theme-purple .sticker-bar-btn svg { fill: rgba(255,255,255,0.6) !important; }
.theme-purple #sticker-modal { background: rgba(20,25,40,0.95) !important; backdrop-filter: blur(40px) !important; -webkit-backdrop-filter: blur(40px) !important; border-top: 1px solid rgba(255,255,255,0.1) !important; box-shadow: 0 -10px 60px rgba(0,0,0,0.3) !important; }
.theme-purple #sticker-modal .header { color: #fff !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
.theme-purple .sticker-item span { color: rgba(255,255,255,0.5) !important; }
.theme-purple .typing-indicator { color: rgba(255,255,255,0.4) !important; }
.theme-purple .load-more-btn { background: rgba(255,255,255,0.12) !important; color: rgba(255,255,255,0.6) !important; border: 1px solid rgba(255,255,255,0.15) !important; }
.theme-purple #multi-select-bar { background: rgba(255,255,255,0.12) !important; backdrop-filter: blur(20px) !important; border-top: 1px solid rgba(255,255,255,0.15) !important; }
.theme-purple .settings-sidebar {
    background: linear-gradient(180deg, rgba(25,30,50,0.97), rgba(30,35,55,0.95)) !important;
    box-shadow:
        -10px 0 30px rgba(0,0,0,0.35),
        -4px 0 12px rgba(0,0,0,0.2),
        0 0 0 1px rgba(255,255,255,0.06) !important;
}
.theme-purple .settings-sidebar::before {
    background: linear-gradient(to right, rgba(255,255,255,0.08), transparent) !important;
}
.theme-purple .settings-sidebar::after {
    border-color: transparent transparent rgba(255,255,255,0.06) transparent !important;
}
.theme-purple .settings-sidebar .header {
    color: #a5b4fc !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    background: linear-gradient(180deg, rgba(40,50,80,0.9), transparent) !important;
}
.theme-purple .settings-sidebar .content { color: rgba(255,255,255,0.8) !important; }
.theme-purple #send-gift-modal { background: rgba(0,0,0,0.5) !important; backdrop-filter: blur(4px) !important; }
.theme-purple .msg-select-check { background: rgba(255,255,255,0.15) !important; border-color: rgba(255,255,255,0.3) !important; }
.theme-purple .message-wrapper.multi-select-selected .msg-select-check { background: linear-gradient(135deg, #667eea, #9b59b6) !important; border-color: transparent !important; }
