/* roulang page: index */
:root {
            --primary-900: #0f172a;
            --primary-800: #1e3a8a;
            --primary-700: #1d4ed8;
            --primary-600: #2563eb;
            --primary-500: #3b82f6;
            --primary-50: #eff6ff;
            --accent-emerald: #10b981;
            --accent-amber: #f59e0b;
            --slate-body: #334155;
            --slate-muted: #64748b;
            --surface-card: #ffffff;
            --surface-bg: #f8fafc;
            --border-light: #e2e8f0;
            --shadow-soft: 0 4px 20px -2px rgba(15, 23, 42, 0.05), 0 2px 6px -1px rgba(15, 23, 42, 0.03);
            --shadow-hover: 0 20px 25px -5px rgba(30, 58, 138, 0.08), 0 8px 10px -6px rgba(30, 58, 138, 0.04);
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
            background-color: var(--surface-bg);
            color: var(--slate-body);
            -webkit-font-smoothing: antialiased;
        }

        .custom-card {
            background: var(--surface-card);
            border: 1px solid var(--border-light);
            border-radius: 1rem;
            box-shadow: var(--shadow-soft);
            transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .custom-card:hover {
            box-shadow: var(--shadow-hover);
            transform: translateY(-2px);
            border-color: #cbd5e1;
        }

        .badge-live {
            background-color: #ecfdf5;
            color: #047857;
            border: 1px solid #a7f3d0;
        }

        .badge-hot {
            background-color: #fffbeb;
            color: #b45309;
            border: 1px solid #fde68a;
        }

        .badge-blue {
            background-color: var(--primary-50);
            color: var(--primary-700);
            border: 1px solid #bfdbfe;
        }

        .btn-primary {
            background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 100%);
            color: #ffffff;
            font-weight: 600;
            transition: all 0.2s ease;
            box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25);
        }

        .btn-primary:hover {
            background: linear-gradient(135deg, #1e40af 0%, #1d4ed8 100%);
            box-shadow: 0 6px 16px rgba(37, 99, 235, 0.35);
            transform: translateY(-1px);
        }

        .sidebar-item-active {
            background-color: var(--primary-50);
            color: var(--primary-700);
            font-weight: 600;
            border-right: 3px solid var(--primary-600);
        }

        .custom-scrollbar::-webkit-scrollbar {
            width: 5px;
            height: 5px;
        }
        .custom-scrollbar::-webkit-scrollbar-track {
            background: #f1f5f9;
        }
        .custom-scrollbar::-webkit-scrollbar-thumb {
            background: #cbd5e1;
            border-radius: 4px;
        }
