<style>
        body {
            background-color: #f4f8fb;
            font-family: 'Segoe UI', sans-serif;
        }

        .notice-card {
            transition: all 0.3s ease-in-out;
            border: none;
            border-radius: 10px;
        }

        .notice-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
        }

        .notice-title {
            font-size: 1.25rem;
            font-weight: 600;
            color: #0d6efd;
            line-height: 1.4;
            margin-bottom: 0.5rem;
            border-bottom: 2px solid #e0f0ff;
            padding-bottom: 6px;
            word-break: break-word;
        }

        .card-text-preview {
            min-height: 60px;
            max-height: 60px;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .meta {
            font-size: 0.875rem;
            color: #6c757d;
        }

        .btn-sm {
            font-size: 0.8rem;
        }

        .notice-image {
            height: 200px;
            object-fit: contain;
            background-color: #fff;
            /* Optional: for visual consistency */
            border-top-left-radius: 10px;
            border-top-right-radius: 10px;
            padding: 10px;
            /* Optional: create breathing room */
        }
    </style>