.cat-container {
    max-width: 1128px;
    margin: 0 auto;
    padding: 40px 24px;
    position: relative;
    z-index: 999;
    min-height: 100vh;
}
.cat-title {
    font-size: 28px;
    font-weight: 700;
    color: white;
    margin-bottom: 8px;
	text-align:center;
}
.cat-subtitle {
    color: white;
    font-size: 16px;
    margin-bottom: 40px;
	text-align:center;
}
.docs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 24px;
}
.doc-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}
.doc-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(0,0,0,0.12);
}
.doc-card-img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}
.doc-card-no-img {
    width: 100%;
    height: 180px;
    background: linear-gradient(135deg, #84e482 0%, #0EB3CE 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}
.doc-card-no-img i { font-size: 50px; color: white; }
.doc-card-body { padding: 20px; }
.doc-card-titre { font-size: 16px; font-weight: 700; color: #202B36; margin-bottom: 8px; }
.doc-card-desc { font-size: 13px; color: #5B6F82; line-height: 1.5; margin-bottom: 15px; }
.doc-card-btn {
    display: block;
    text-align: center;
    background: linear-gradient(65deg, #00A2B8 -25%, #00F9D2 100%);
    color: white !important;
    padding: 10px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.3s ease;
}
.doc-card-btn:hover { opacity: 0.9; transform: translateY(-2px); }
.empty-state { text-align: center; padding: 80px 20px; }
.empty-state i { font-size: 60px; color: #E3E7EB; margin-bottom: 20px; display: block; }
.empty-state p { color: #5B6F82; font-size: 16px; }

@media (max-width: 640px) {
    .docs-grid { grid-template-columns: 1fr; }
    .cat-title { font-size: 22px; }
    .cat-container { padding: 30px 16px; }
}
@media (max-width: 480px) {
    .doc-card-titre { font-size: 14px; }
    .doc-card-desc { font-size: 12px; }
}