/* ===== AUTO DARK THEME OVERRIDES — 2026-06-08 (gen-dark-css.js) ===== */
/* 변경 선언 257개 / 규칙 174개. 자동생성 — 수정 금지. */
[data-theme="dark"] {
    /* Colors - Dark Teal Theme */
    --bg-body: #0a0f14;
    --bg-primary: #0f1419;
    --bg-secondary: #151c24;
    --bg-tertiary: #1a222c;
    --bg-hover: #1e2836;
    --bg-input: #121a22;

    /* Glassmorphism Backgrounds */
    --glass-bg: #0f1419;
    --glass-bg-light: #151c24;
    --glass-bg-dark: #0a0f14;
    --glass-border: rgba(255, 255, 255, 0.08);
    --glass-border-light: rgba(255, 255, 255, 0.12);

    /* Accent Colors - Teal + Green */
    --accent-primary: #14b8a6;
    --accent-secondary: #10b981;
    --accent-dark: #0d9488;
    --accent-blue: #06b6d4;
    --accent-glow: rgba(20, 184, 166, 0.15);
    --accent-primary-rgb: 20, 184, 166;   /* 다크 브랜드(#14b8a6) RGB — 라이트 별칭(--primary/--teal 등)은 --accent-primary 참조라 자동 추종 */

    /* Neon Glow Effects */
    --neon-glow-sm: 0 0 10px rgba(20, 184, 166, 0.3);
    --neon-glow-md: 0 0 20px rgba(20, 184, 166, 0.4);
    --neon-glow-lg: 0 0 30px rgba(20, 184, 166, 0.5), 0 0 60px rgba(20, 184, 166, 0.2);
    --neon-text-glow: 0 0 10px rgba(20, 184, 166, 0.8), 0 0 20px rgba(20, 184, 166, 0.5);
    --neon-border: 1px solid rgba(20, 184, 166, 0.3);

    /* Status Colors */
    --danger: #ef4444;
    --danger-dark: #dc2626;
    --success: #22c55e;
    --warning: #f59e0b;
    --info: #06b6d4;

    /* Text Colors */
    --text-white: #ffffff;
    --text-primary: #f1f5f9;
    --text-secondary: #cbd5e1;
    --text-light: #e2e8f0;
    --text-muted: #64748b;
    --text-gray: #94a3b8;
    --text-dark: #475569;

    /* Border */
    --border-dark: #1e293b;
    --border-light: #334155;

    /* Shadows - Softer for glassmorphism */
    --shadow-sm: 0 2px 8px rgba(0,0,0,0.2);
    --shadow-md: 0 4px 16px rgba(0,0,0,0.25);
    --shadow-lg: 0 8px 32px rgba(0,0,0,0.3);
    --shadow-glass: 0 8px 32px rgba(0,0,0,0.2), inset 0 1px 0 rgba(255,255,255,0.05);

    /* Spacing */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --spacing-xl: 32px;

    /* Border Radius - Larger for glassmorphism */
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 20px;
    --radius-full: 9999px;

    /* Transitions */
    --transition-fast: 0.15s ease;
    --transition-normal: 0.25s ease;
}
[data-theme="dark"] a:hover {
    /* glow 제거(라이트와 동일): 다크모드 링크 호버 깜빡임 차단 */
    color: #5eead4;
}
[data-theme="dark"] .header-right .search-box button {
    color: #f5f5f5;
}
[data-theme="dark"] .header-right .search-box button:hover {
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .lotto-header-text {
    background: linear-gradient(90deg, #f59e0b, #fff, #ef4444, #fff, #f59e0b);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
[data-theme="dark"] .lotto-sidebar-text {
    color: var(--text-light, #e2e8f0);
}
[data-theme="dark"] .mobile-lotto-text {
    background: linear-gradient(90deg, #f59e0b, #fff, #ef4444, #fff, #f59e0b);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
[data-theme="dark"] .main-nav .container {
    background: linear-gradient(180deg, var(--accent-primary) 0%, var(--accent-dark) 100%);
    box-shadow: none;
}
[data-theme="dark"] .nav-item > a:hover, [data-theme="dark"] .nav-item > a.active {
    background: transparent;
    color: #ffffff;
    box-shadow: none;
}
/* 홈/본문 배경: 라이트는 흰색 하드코딩이지만 다크모드는 원래 어두운 배경 복원 */
[data-theme="dark"] .index-content,
[data-theme="dark"] .main-wrapper {
    background: var(--bg-primary);
}
[data-theme="dark"] .dropdown-highlight {
    color: #ef4444 !important;
}
[data-theme="dark"] .hot-menu {
    color: #ef4444 !important;
}
[data-theme="dark"] .new-badge {
    background: linear-gradient(135deg, #f59e0b, #ef4444);
    color: #fff;
}
[data-theme="dark"] .mobile-nav-title {
    color: var(--text-white);
}
[data-theme="dark"] .mobile-nav-user {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.14), rgba(20, 184, 166, 0.06));
    border-bottom: 1px solid rgba(20, 184, 166, 0.28);
}
[data-theme="dark"] .mobile-stat-item .stat-value {
    text-shadow: 0 0 6px rgba(20, 184, 166, 0.55);
}
[data-theme="dark"] .mobile-user-quick-links .mobile-logout-btn {
    color: #fff !important;
}
[data-theme="dark"] .mobile-user-quick-links {
    border-top: 1px solid rgba(20, 184, 166, 0.18);
}
[data-theme="dark"] .mobile-nav-menu > li {
    border-bottom: 1px solid rgba(20, 184, 166, 0.12);
}
[data-theme="dark"] .mobile-nav-menu > li > a {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.08), rgba(20, 184, 166, 0.03));
}
[data-theme="dark"] .mobile-nav-menu > li > a:hover {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.18), rgba(20, 184, 166, 0.08));
}
[data-theme="dark"] .widget-header {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-bottom: 1px solid rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .banner-nav {
    color: #fff;
}
[data-theme="dark"] .banner-label {
    color: #f5f5f5;
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .board-header {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .section-header {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .btn-report {
    color: #fff;
}
[data-theme="dark"] .btn-report:hover {
    color: #fff;
}
[data-theme="dark"] .scam-card:hover {
    border-color: rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .scam-type.danger {
    color: #fff;
}
[data-theme="dark"] .scam-name {
    color: var(--text-white);
}
[data-theme="dark"] .btn-primary {
    color: #f5f5f5;
    box-shadow: 0 4px 15px rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .btn-primary:hover {
    color: #f5f5f5;
    box-shadow: 0 6px 25px rgba(20, 184, 166, 0.5);
}
[data-theme="dark"] .btn-secondary:hover {
    border-color: rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .btn-danger {
    color: #fff;
}
[data-theme="dark"] .form-group input:focus, [data-theme="dark"] .form-group textarea:focus, [data-theme="dark"] .form-group select:focus {
    box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.15), var(--neon-glow-sm);
}
[data-theme="dark"] .auth-header {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .board-table th {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.08) 0%, rgba(16, 185, 129, 0.04) 100%);
}
[data-theme="dark"] .board-table td {
    background: var(--card-bg, #0f1419);
}
[data-theme="dark"] .board-table .col-num {
    color: #a78bfa;
}
[data-theme="dark"] .pagination button:hover, [data-theme="dark"] .pagination a:hover {
    border-color: rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .pagination button.active, [data-theme="dark"] .pagination a.active {
    color: #f5f5f5;
    box-shadow: 0 4px 15px rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .cash-approval-panel.approved {
    background: rgba(20, 184, 166, 0.08);
    border: 1px solid rgba(20, 184, 166, 0.32);
}
[data-theme="dark"] .cash-approval-badge.approved {
    background: rgba(20, 184, 166, 0.20);
    color: #5eead4;
    border: 1px solid rgba(20, 184, 166, 0.45);
}
[data-theme="dark"] .cash-approval-badge.pending {
    color: #fcd34d;
}
[data-theme="dark"] .btn-cash-approve {
    background: linear-gradient(90deg, #14b8a6, #10b981);
    color: #0a0f1a;
    box-shadow: 0 0 10px rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .btn-cash-approve:hover {
    box-shadow: 0 0 14px rgba(20, 184, 166, 0.5);
}
[data-theme="dark"] .btn-jump-comment {
    background: rgba(20, 184, 166, 0.1);
    border: 1px solid rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .btn-jump-comment:hover {
    background: rgba(20, 184, 166, 0.22);
    color: #2dd4bf;
}
[data-theme="dark"] .report-badge.danger {
    color: #fff;
}
[data-theme="dark"] .modal-header {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: rgba(255,255,255,0.3);
}
[data-theme="dark"] .user-info-widget {
    /* 상단 패널(아바타+닉네임)과 하단 통계영역(sidebar-stats-row-labeled) 배경 통일 —
       그라데이션을 하단 톤으로 평탄화해 패널이 더 진하게 보이던 문제 제거 */
    background: rgba(20, 184, 166, 0.06);
    border: 1px solid rgba(20, 184, 166, 0.28);
}
[data-theme="dark"] .user-info-time {
    color: #ffffff;
    border-bottom: 1px solid rgba(20, 184, 166, 0.18);
}
[data-theme="dark"] .btn-login-small {
    color: #f5f5f5;
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.2);
    color: #f5f5f5;
}
[data-theme="dark"] .btn-login-small:hover {
    box-shadow: 0 0 25px rgba(20, 184, 166, 0.4);
    box-shadow: 0 0 20px rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .btn-register-small:hover {
    background: rgba(20, 184, 166, 0.1);
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.2);
    background: rgba(20, 184, 166, 0.1);
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .user-avatar-large {
    color: #f5f5f5;
    box-shadow: 0 0 20px rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .user-avatar-img-large {
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] a.user-rank.admin {
    background: linear-gradient(135deg, #ef4444, #dc2626);
}
[data-theme="dark"] a.user-rank.admin:hover {
    background: linear-gradient(135deg, #f87171, #ef4444);
}
[data-theme="dark"] .user-rank-name {
    background: linear-gradient(135deg, #4a5568, #2d3748);
}
[data-theme="dark"] .user-balance-link.trx .balance-label {
    color: #ef4444;
}
[data-theme="dark"] .sidebar-stat-item .stat-value {
    text-shadow: 0 0 6px rgba(20, 184, 166, 0.55);
}
[data-theme="dark"] .sidebar-stat-item.sidebar-stat-dopamine .stat-label {
    color: #c4b5fd;
}
[data-theme="dark"] .sidebar-stat-item.sidebar-stat-dopamine .stat-value {
    color: #c4b5fd;
}
[data-theme="dark"] .sidebar-stat-item.sidebar-stat-dopamine:hover {
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.18), rgba(168, 85, 247, 0.08));
}
[data-theme="dark"] .sidebar-stat-item.sidebar-stat-cash .stat-label {
    color: #fcd34d;
}
[data-theme="dark"] .sidebar-stat-item.sidebar-stat-cash .stat-value {
    color: #fcd34d;
}
[data-theme="dark"] .sidebar-stat-item.member-tier {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.10), rgba(20, 184, 166, 0.03));
    border: 1px solid rgba(20, 184, 166, 0.30);
}
[data-theme="dark"] .sidebar-stat-item.member-tier .stat-label, [data-theme="dark"] .sidebar-stat-item.member-tier .stat-value.member-tier-name {
    color: #5eead4;
}
[data-theme="dark"] .sidebar-stat-item.member-tier:hover {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.18), rgba(20, 184, 166, 0.08));
}
[data-theme="dark"] .sidebar-stat-item.member-tier.member-tier-family .stat-label, [data-theme="dark"] .sidebar-stat-item.member-tier.member-tier-family .stat-value.member-tier-name {
    color: #fcd34d;
}
[data-theme="dark"] .sidebar-stat-item.member-tier.member-tier-blind .stat-label, [data-theme="dark"] .sidebar-stat-item.member-tier.member-tier-blind .stat-value.member-tier-name {
    color: #fca5a5;
}
[data-theme="dark"] .progress-fill-small {
    background: linear-gradient(90deg, var(--accent-primary), #6366f1);
}
[data-theme="dark"] .level-progress-bar-small.max-level .progress-fill-small {
    background: linear-gradient(90deg, #f59e0b, #ef4444);
}
[data-theme="dark"] .cash-xp-label {
    color: #fff;
}
[data-theme="dark"] .cash-xp-fill {
    background: linear-gradient(90deg, #f59e0b, #14b8a6);
}
[data-theme="dark"] .user-info-links {
    border-top: 1px solid rgba(20, 184, 166, 0.18);
    border-bottom: 1px solid rgba(20, 184, 166, 0.18);
}
[data-theme="dark"] .unread-badge {
    background: #ef4444;
}
[data-theme="dark"] .notification-badge {
    background: #ef4444;
}
[data-theme="dark"] .notification-icon.type-warning {
    color: #ef4444;
}
[data-theme="dark"] .global-right-sidebar .widget-header {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .chat-notice-panel {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.15), rgba(20, 184, 166, 0.05));
}
[data-theme="dark"] .chat-notice-header:hover {
    background: rgba(255,255,255,0.03);
}
[data-theme="dark"] .global-right-sidebar .chat-message .chat-admin-badge {
    background: #7c3aed;
}
[data-theme="dark"] .global-right-sidebar .chat-message.system-message .system-msg-content {
    color: #a78bfa;
}
[data-theme="dark"] .global-right-sidebar .btn-chat-login {
    color: #f5f5f5;
}
[data-theme="dark"] .global-right-sidebar .btn-chat-login:hover {
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .global-right-sidebar .chat-input-area button {
    color: #f5f5f5;
}
[data-theme="dark"] .global-right-sidebar .chat-input-area button:hover {
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .chat-mention {
    background: rgba(20, 184, 166, 0.15);
}
[data-theme="dark"] .chat-mention:hover {
    background: rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .global-right-sidebar .chat-toast {
    color: #fff;
}
[data-theme="dark"] .mobile-chat-btn {
    color: #f5f5f5;
    box-shadow: 0 4px 20px rgba(20, 184, 166, 0.3);
}
[data-theme="dark"] .mobile-chat-btn:hover {
    box-shadow: 0 6px 30px rgba(20, 184, 166, 0.5);
}
[data-theme="dark"] .mobile-chat-modal {
    border-top: 1px solid rgba(20, 184, 166, 0.3);
    box-shadow: 0 -5px 40px rgba(0, 0, 0, 0.5), 0 -5px 30px rgba(20, 184, 166, 0.15);
}
[data-theme="dark"] .mobile-chat-header {
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
}
[data-theme="dark"] .mobile-chat-header h3 {
    text-shadow: 0 0 10px rgba(20, 184, 166, 0.5);
}
[data-theme="dark"] .mobile-chat-body .chat-message .chat-admin-badge {
    background: #7c3aed;
}
[data-theme="dark"] .mobile-chat-body .chat-message.system-message .system-msg-content {
    color: #a78bfa;
}
[data-theme="dark"] .mobile-chat-body .chat-input-area button {
    color: #f5f5f5;
}
[data-theme="dark"] .mobile-chat-body .chat-input-area button:hover {
    box-shadow: 0 0 15px rgba(20, 184, 166, 0.4);
}
[data-theme="dark"] .chat-toast {
    color: #fff;
}
[data-theme="dark"] .header-banner-item img {
    background: #1a1a2e;
}
[data-theme="dark"] .footer-banner-item img {
    background: #1a1a2e;
}
[data-theme="dark"] .notification-toast {
    border: 1px solid rgba(20, 184, 166, 0.4);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 30px rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .notification-toast.type-attendance .notification-toast-icon {
    color: #8b5cf6;
}
[data-theme="dark"] .notification-toast.type-attendance .notification-toast-title {
    color: #8b5cf6;
}
[data-theme="dark"] .global-toast {
    border: 1px solid rgba(20, 184, 166, 0.4);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 30px rgba(20, 184, 166, 0.2);
}
[data-theme="dark"] .global-toast.success {
    border-left: 4px solid #10b981;
}
[data-theme="dark"] .global-toast.success .global-toast-icon {
    color: #10b981;
}
[data-theme="dark"] .global-toast.error {
    border-left: 4px solid #ef4444;
}
[data-theme="dark"] .global-toast.error .global-toast-icon {
    color: #ef4444;
}
[data-theme="dark"] .global-toast.attendance {
    border-left: 4px solid #8b5cf6;
}
[data-theme="dark"] .global-toast.attendance .global-toast-icon {
    color: #8b5cf6;
}
[data-theme="dark"] .notice-row {
    background: rgba(20, 184, 166, 0.08) !important;
}
[data-theme="dark"] .notice-row:hover {
    background: rgba(20, 184, 166, 0.15) !important;
}
[data-theme="dark"] .notice-badge {
    background: #0f1419;
    color: #14b8a6;
    border: 1px solid #14b8a6;
}
[data-theme="dark"] .qna-status.qna-answered {
    background: rgba(20, 184, 166, 0.18);
    color: #14b8a6;
    border: 1px solid rgba(20, 184, 166, 0.45);
}
[data-theme="dark"] .qna-status.qna-deleted {
    color: #94a3b8;
}
[data-theme="dark"] .title-text.deleted-title {
    color: #64748b !important;
}
[data-theme="dark"] .locked-content-notice .lock-message {
    color: #ef4444;
}
[data-theme="dark"] .locked-notice.admin-view {
    color: #ef4444;
}
[data-theme="dark"] .mention-item.active {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.2), rgba(16, 185, 129, 0.15));
}
[data-theme="dark"] .reaction-link:hover {
    background: rgba(255, 255, 255, 0.05);
}
[data-theme="dark"] .reaction-link.like-link.active {
    color: #ef4444;
}
[data-theme="dark"] .chat-room-tabs {
    background: rgba(0, 0, 0, 0.2);
}
[data-theme="dark"] .chat-room-tab:hover {
    background: rgba(20, 184, 166, 0.05);
}
[data-theme="dark"] .chat-room-tab.active {
    background: rgba(20, 184, 166, 0.1);
}
[data-theme="dark"] .chat-user-item:hover {
    background: rgba(255, 255, 255, 0.03);
}
[data-theme="dark"] .chat-users-list .chat-admin-badge, [data-theme="dark"] .chat-admin-badge-mini {
    background: #7c3aed;
    color: #fff;
}
[data-theme="dark"] .chat-whisper-bar {
    color: #a78bfa;
}
[data-theme="dark"] .whisper-cancel {
    color: #a78bfa;
}
[data-theme="dark"] .chat-message.whisper-message {
    border-left: 2px solid #8b5cf6;
}
[data-theme="dark"] .whisper-label-tag {
    color: #a78bfa;
}
[data-theme="dark"] .whisper-from, [data-theme="dark"] .whisper-to {
    color: #a78bfa;
}
[data-theme="dark"] .msg-content.whisper-content {
    color: #c4b5fd;
}
[data-theme="dark"] .current-points-card.dopamine-points-card .points-label {
    color: #c4b5fd;
}
[data-theme="dark"] .current-points-card.dopamine-points-card .points-value {
    color: #c4b5fd;
}
[data-theme="dark"] .dopa-tag {
    color: #c4b5fd;
}
[data-theme="dark"] .dopamine-history-card h4 {
    color: #c4b5fd;
}
[data-theme="dark"] .dopamine-history-table th {
    color: #94a3b8;
}
[data-theme="dark"] .dopa-family-status {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(20, 184, 166, 0.04));
    border: 1px solid rgba(16, 185, 129, 0.30);
}
[data-theme="dark"] .dfs-title {
    color: #5eead4;
}
[data-theme="dark"] .dfs-state.active {
    background: rgba(16, 185, 129, 0.18);
    color: #5eead4;
    border: 1px solid rgba(16, 185, 129, 0.45);
}
[data-theme="dark"] .dfs-state.warning {
    color: #fbbf24;
}
[data-theme="dark"] .dfs-state.expired {
    color: #fca5a5;
}
[data-theme="dark"] .dfs-stat {
    background: rgba(255, 255, 255, 0.03);
}
[data-theme="dark"] .dfs-stat-label {
    color: #94a3b8;
}
[data-theme="dark"] .dfs-stat-value {
    color: #5eead4;
}
[data-theme="dark"] .dfs-stat-value.warning {
    color: #fbbf24;
}
[data-theme="dark"] .dfs-stat-value.expired {
    color: #fca5a5;
}
[data-theme="dark"] .dfs-notice {
    background: rgba(20, 184, 166, 0.06);
    border-left: 3px solid #14b8a6;
    color: #cbd5e1;
}
[data-theme="dark"] .dfs-notice-icon {
    color: #14b8a6;
}
[data-theme="dark"] .dfs-notice strong {
    color: #5eead4;
}
[data-theme="dark"] .rank-notice-banner {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.10) 0%, rgba(20, 184, 166, 0.06) 100%);
}
[data-theme="dark"] .rank-notice-banner::before {
    background: linear-gradient(180deg, #f59e0b 0%, #14b8a6 100%);
}
[data-theme="dark"] .cash-eligibility {
    color: #cbd5e1;
}
[data-theme="dark"] .cash-eligibility .ce-label {
    color: #94a3b8;
}
[data-theme="dark"] .cash-eligibility .ce-sep {
    color: #64748b;
}
[data-theme="dark"] .cash-eligibility .ce-xp {
    color: #e2e8f0;
}
[data-theme="dark"] .cash-eligibility .ce-user-state {
    color: #94a3b8;
}
[data-theme="dark"] .cash-eligibility .ce-user-state.ok {
    color: #2dd4bf;
}
[data-theme="dark"] .cash-eligibility .ce-user-state.guest {
    color: #94a3b8;
}
[data-theme="dark"] .rank-notice-banner .rn-rank-label {
    color: #94a3b8;
}
[data-theme="dark"] .rank-notice-banner .rn-title {
    color: #fcd34d;
}
[data-theme="dark"] .rank-notice-banner .rn-desc {
    color: var(--text-secondary, #cbd5e1);
}
[data-theme="dark"] .rank-notice-banner .rn-status.ok {
    background: rgba(20, 184, 166, 0.15);
    color: #5eead4;
    border: 1px solid rgba(20, 184, 166, 0.45);
}
[data-theme="dark"] .rank-notice-banner .rn-status.locked {
    color: #fca5a5;
}
[data-theme="dark"] .rank-notice-banner .rn-status.admin {
    color: #c4b5fd;
}
[data-theme="dark"] .rank-notice-banner .rn-status.guest {
    color: #94a3b8;
}
[data-theme="dark"] .rank-notice-banner .rn-progress {
    background: rgba(255, 255, 255, 0.06);
}
[data-theme="dark"] .rank-notice-banner .rn-progress .rn-progress-fill {
    background: linear-gradient(90deg, #f59e0b 0%, #14b8a6 100%);
}
@media (max-width: 1024px) {
    [data-theme="dark"] .mobile-cash-xp-fill {
        background: linear-gradient(90deg, #f59e0b, #14b8a6);
    }
}
@media (max-width: 768px) {
    [data-theme="dark"] .notification-toast {
        border: 1px solid rgba(20, 184, 166, 0.3);
    }
}

/* === 다크모드 보완: 라이트 리스킨으로 생긴 하드코딩 박스/텍스트를 다크모드에서 다크화 === */
[data-theme="dark"] .royal-ne-section,
[data-theme="dark"] .bs-box,
[data-theme="dark"] .sbw-panel,
[data-theme="dark"] .sb-panel,
[data-theme="dark"] .royal-casino-card,
[data-theme="dark"] .quick-menu-item,
[data-theme="dark"] .best-period-section,
[data-theme="dark"] .board-sections-wrap .bs-box { background: #0f1419; border-color: #1e293b; }
[data-theme="dark"] .bs-head { background: rgba(30,164,89,0.12); border-color: #1e293b; }
[data-theme="dark"] .royal-ne-title,
[data-theme="dark"] .bs-pt,
[data-theme="dark"] .sbw-title,
[data-theme="dark"] .bs-title { color: #cbd5e1; }
[data-theme="dark"] .royal-ne-date,
[data-theme="dark"] .royal-ne-cmt,
[data-theme="dark"] .bs-bullet { color: #94a3b8; }
[data-theme="dark"] .royal-ne-item,
[data-theme="dark"] .bs-list li,
[data-theme="dark"] .sbw-list li { border-color: #1e293b; }
/* 다크모드 목록 hover 배경 — 구 0.12 알파 그린은 어두운 배경 위에서 거의 안 보여
   hover가 안 먹는 느낌 → 확실히 보이는 틸 톤. bp-ranking 행/board-table 행도 통일. */
[data-theme="dark"] .royal-ne-link:hover,
[data-theme="dark"] .bs-list a:hover,
[data-theme="dark"] .sbw-link:hover,
[data-theme="dark"] .bp-rank-item:hover,
[data-theme="dark"] .board-table tr:hover td { background: rgba(20, 184, 166, 0.16); }
/* 다크모드 hover 제목색 — 기본 제목색(#cbd5e1)보다 밝은 틸로 강조 (구 #6db142 는 더 어두워 hover 시 오히려 안 보임) */
[data-theme="dark"] .royal-ne-link:hover .royal-ne-title,
[data-theme="dark"] .bs-list a:hover .bs-pt,
[data-theme="dark"] .sbw-link:hover .sbw-title,
[data-theme="dark"] .bp-rank-item:hover .bp-rank-title,
[data-theme="dark"] .bp-rank-title:hover,
[data-theme="dark"] .royal-ne-title-link:hover,
/* 행 전체 hover 시 제목색 변경 — 구 .title-text:hover 는 글자에 정확히 올려야만 발동해
   "제목만 hover 안 먹는 느낌"의 원인. tr:hover 로 행 어디든 올리면 제목이 켜지게. */
[data-theme="dark"] .board-table tr:hover .title-cell .title-text { color: #5eead4; }
/* 전역 다크 보정 [class$="-row"] 가 .title-row 에 불투명 배경(--glass-bg)을 깔아
   제목 칸만 tr:hover 틸 배경을 가렸음 → 투명화해 행 hover 배경이 비치게 */
[data-theme="dark"] .board-table .title-cell .title-row { background: transparent; }

/* ============================================================
   다크모드 전역 보완 — 라이트 리스킨으로 하드코딩된 박스/텍스트를
   다크모드에서만 다크화. 변수 기반이라 라이트모드는 영향 없음.
   ============================================================ */
[data-theme="dark"] body { background: var(--bg-body); color: var(--text-secondary); }
[data-theme="dark"] [class$="-card"],
[data-theme="dark"] [class$="-box"],
[data-theme="dark"] [class$="-panel"],
[data-theme="dark"] [class$="-section"],
[data-theme="dark"] [class$="-widget"],
[data-theme="dark"] [class$="-wrap"],
[data-theme="dark"] [class$="-container"],
[data-theme="dark"] [class$="-content"],
[data-theme="dark"] [class$="-inner"],
[data-theme="dark"] [class$="-list"],
[data-theme="dark"] [class$="-row"],
[data-theme="dark"] [class$="-table"],
[data-theme="dark"] [class$="-header"],
[data-theme="dark"] [class$="-body"],
[data-theme="dark"] section,
[data-theme="dark"] article,
[data-theme="dark"] table,
[data-theme="dark"] thead,
[data-theme="dark"] tbody,
[data-theme="dark"] tr,
[data-theme="dark"] td,
[data-theme="dark"] th { border-color: var(--border-dark); }
/* ⚠️ 2026-07-08 근본수정: 위 접미사 catch-all 에서 `background-color: var(--glass-bg)` 제거.
   원래 이 blanket 배경이 클래스가 -content/-wrap/-inner/-list/-header/-body/-row/-container 등으로
   끝나는 '투명 래퍼'에까지 #0f1419 박스를 강제로 씌워, 라이트엔 없는 '글자 뒤 검정박스'를 사방에서 만들었음
   (toast .toast-content, 모달 .lotto-modal-content, .result-content, .royal-post-body, .notification-list 등).
   실제 표면(.sidebar-widget, .page-content, 카드류)은 자체적으로 var(--glass-bg)/전용 다크규칙을 이미 가지므로
   배경 제거해도 다크 유지. 테두리색(border-color)만 남겨 기존 구분선 톤은 보존.
   → 그동안 lotto-modal/jackpot-winners/dopa-family 등에서 개별 transparent 로 덮던 '일일이 땜빵'의 근원 제거. */
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea { background-color: var(--bg-input); border-color: var(--border-dark); color: var(--text-primary); }
[data-theme="dark"] h1, [data-theme="dark"] h2, [data-theme="dark"] h3,
[data-theme="dark"] h4, [data-theme="dark"] h5, [data-theme="dark"] p,
[data-theme="dark"] li, [data-theme="dark"] dt, [data-theme="dark"] dd,
[data-theme="dark"] td, [data-theme="dark"] th, [data-theme="dark"] label,
[data-theme="dark"] [class$="-title"], [data-theme="dark"] [class$="-name"],
[data-theme="dark"] [class$="-text"], [data-theme="dark"] [class$="-label"],
[data-theme="dark"] [class$="-desc"] { color: var(--text-secondary); }

/* ── 전역 다크 catch-all([class$=…])이 컴포넌트 고유 색/배경을 덮어 "납작·박스 중첩"으로 보이는 것 보정 (2026-06-24).
   catch-all(specificity 0,2,0)보다 우선하도록 컴포넌트 스코프(0,3,0)로 지정. 라이트모드엔 영향 없음. ── */
/* 도파민가족등급 카드: header/body 에 깔린 불필요한 박스 배경 제거 + 제목/라벨 색 복원 */
[data-theme="dark"] .dopa-family-status .dfs-header,
[data-theme="dark"] .dopa-family-status .dfs-body { background-color: transparent; border-color: transparent; }
[data-theme="dark"] .dopa-family-status .dfs-title { color: #5eead4; }
[data-theme="dark"] .dopa-family-status .dfs-stat-label { color: #94a3b8; }
/* 프로필 '작성한 댓글': header/본문에 깔린 박스 배경 제거 + 글 제목 강조색 복원(본문 회색과 구분) */
[data-theme="dark"] .profile-comment-item .comment-header,
[data-theme="dark"] .profile-comment-item .comment-content { background-color: transparent; }
[data-theme="dark"] .profile-comment-item .comment-post-title { color: var(--accent-primary); }
