body {
    background: #f0f2f5;
    font-family: 'Segoe UI', sans-serif;
}
.navbar {
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}
.card {
    border-radius: 15px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
#chat-box {
    background: #f8f9fa;
}
.rounded-circle {
    object-fit: cover;
}
.img-fluid {
    border-radius: 12px;
}

/* Dark mode styles */
.dark-mode body, .dark-mode {
    --bg: #0b1220;
    --card: #0f1724;
    --muted: #9aa4b2;
    --text: #e6eef6;
}

body.dark-mode, .dark-mode body {
    background: var(--bg) !important;
    color: var(--text) !important;
}

.dark-mode .navbar, .navbar.dark-mode {
    background: #071021 !important;
}

.dark-mode .card {
    background: #0f1724 !important;
    border-color: rgba(255,255,255,0.03) !important;
    color: var(--text) !important;
}

.dark-mode .chat-sidebar { background: #071226; }
.dark-mode .chat-box { background: linear-gradient(180deg, #071226, #0b1220); }
.dark-mode .message-me { background: #1f6feb !important; color: #fff; }
.dark-mode .message-other { background: #0b1220 !important; color: var(--text); box-shadow: none; }
.dark-mode .form-control { background: rgba(255,255,255,0.03); color: var(--text); border-color: rgba(255,255,255,0.03); }
.dark-mode .list-group-item { border-bottom: 1px solid rgba(255,255,255,0.03); }
.dark-mode .unread-badge { background: #ff6b6b; }
.dark-mode .navbar .nav-link { color: rgba(230,238,246,0.9) !important; }

/* Ensure images keep contrast */
.dark-mode img { filter: none; }

/* Guest disabled appearance for unauthenticated users' interactive controls */
.guest-disabled {
    opacity: 0.75;
    cursor: not-allowed !important;
}