 body {
            font-family: 'Sarabun', sans-serif;
            background-color: #f8f9fa;
        }
        /* Theme Colors (CMU Purple inspired) */
        :root {
            --primary-color: #662d91; 
            --accent-color: #edba18;
        }
        
        /* Navbar */
        .navbar {
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
        }
        .nav-link {
            font-weight: 500;
        }
        .nav-link.active {
            color: var(--primary-color) !important;
            border-bottom: 2px solid var(--primary-color);
        }

        /* Hero Section */
        .hero-section {
            background: linear-gradient(135deg, var(--primary-color), #4a148c);
            color: white;
            padding: 3rem 0;
            margin-bottom: 2rem;
            position: relative;
            overflow: hidden;
        }
        .hero-section::after {
            content: '';
            position: absolute;
            top: 0; right: 0; bottom: 0; left: 0;
            background: url('https://via.placeholder.com/1200x400?text=Abstract+Background') center/cover;
            opacity: 0.1;
        }

        /* Quick Menu Cards */
        .quick-card {
            transition: all 0.3s ease;
            border: none;
            border-radius: 12px;
            background: white;
            box-shadow: 0 4px 6px rgba(0,0,0,0.02);
            height: 100%;
            cursor: pointer;
        }
        .quick-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 20px rgba(0,0,0,0.1);
            border-bottom: 4px solid var(--accent-color);
        }
        .icon-box {
            font-size: 2rem;
            color: var(--primary-color);
            margin-bottom: 10px;
        }

        /* Content Section */
        .section-header {
            border-left: 5px solid var(--accent-color);
            padding-left: 15px;
            margin-bottom: 20px;
            color: #333;
        }
        .news-list-item {
            border-bottom: 1px solid #eee;
            padding: 10px 0;
        }
        .news-list-item:last-child {
            border-bottom: none;
        }
        .news-date {
            font-size: 0.85rem;
            color: #888;
        }
        .badge-new {
            background-color: var(--primary-color);
            color: white;
        }

        /* Footer */
        footer {
            background-color: #333;
            color: #aaa;
            padding: 2rem 0;
            margin-top: 3rem;
        }