/* Universal Directory Category Display - Shared Styles */

/* Base styles for all components */
.uudcd-directorist,
.uudcd-universal {
    margin: 20px 0;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.uudcd-directorist .category-desc-title,
.uudcd-universal .category-desc-title {
    margin-top: 0;
    margin-bottom: 15px;
    color: #007cba;
    font-size: 1.5em;
    font-weight: 600;
}

.uudcd-directorist .category-description-content,
.uudcd-universal .category-description-content {
    margin-bottom: 20px;
    line-height: 1.6;
    color: #333;
}

.uudcd-directorist .category-image,
.uudcd-universal .category-image,
.uudcd-directorist .udcd-category-image,
.uudcd-universal .udcd-category-image {
    display: block;
    margin: 15px auto;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Subcategories */
.uudcd-subcategories {
    margin-top: 20px;
}

.uudcd-subcategories .subcategories-title {
    margin-bottom: 15px;
    font-size: 1.2em;
    color: #007cba;
}

.uudcd-subcategories .subcategories-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 15px;
}

.uudcd-subcategories .subcategory-item {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 15px;
    transition: all 0.3s ease;
}

.uudcd-subcategories .subcategory-item:hover {
    border-color: #007cba;
    box-shadow: 0 2px 8px rgba(0, 124, 186, 0.1);
    transform: translateY(-2px);
}

.uudcd-subcategories .subcategory-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    gap: 10px;
}

.uudcd-subcategories .subcategory-icon {
    color: #007cba;
    font-size: 1.2em;
    min-width: 20px;
    text-align: center;
}

.uudcd-subcategories .subcategory-name {
    font-weight: 600;
    color: #333;
    flex: 1;
}

.uudcd-subcategories .subcategory-count {
    color: #666;
    font-size: 0.9em;
    background: #f0f0f0;
    padding: 2px 8px;
    border-radius: 12px;
}

.uudcd-subcategories .subcategory-description {
    margin-top: 10px;
    font-size: 0.9em;
    color: #666;
    line-height: 1.4;
}

/* Responsive design */
@media (max-width: 768px) {
    .uudcd-subcategories .subcategories-list {
        grid-template-columns: 1fr;
    }
    
    .uudcd-directorist,
    .uudcd-universal {
        padding: 15px;
        margin: 15px 0;
    }
}

/* Custom subcategory colours - affects whole card */
.uudcd-subcategories.custom-colors .udcd-subcategory-link {
    background: var(--uudcd-subcategory-bg-light, rgba(0,124,186,0.05)) !important; /* Light tint of primary */
    border: 1px solid var(--uudcd-border-color, #007cba) !important;
    color: var(--uudcd-subcategory-primary, #007cba) !important;
}

/* Override default color inheritance for custom colors */
.uudcd-subcategories.custom-colors .udcd-subcategory-link,
.uudcd-subcategories.custom-colors .udcd-subcategory-link .udcd-subcategory-name {
    color: var(--uudcd-subcategory-primary, #007cba) !important;
}

/* More specific rule for subcategory names */
.uudcd-subcategories.custom-colors .udcd-subcategory-item .udcd-subcategory-link .udcd-subcategory-name {
    color: var(--uudcd-subcategory-primary, #007cba) !important;
}

.uudcd-subcategories.custom-colors .udcd-subcategory-link:hover {
    background: var(--uudcd-subcategory-hover, #005a87) !important;
    border-color: var(--uudcd-subcategory-hover, #005a87) !important;
    color: white !important;
}

.uudcd-subcategories.custom-colors .udcd-subcategory-icon {
    color: var(--uudcd-subcategory-primary, #007cba) !important;
    background: var(--uudcd-subcategory-bg-medium, rgba(0,124,186,0.1)) !important;
}

.uudcd-subcategories.custom-colors .udcd-subcategory-link:hover .udcd-subcategory-icon {
    background: rgba(255,255,255,0.2) !important;
    color: white !important;
}

.uudcd-subcategories.custom-colors .udcd-subcategory-count {
    background: linear-gradient(135deg, var(--uudcd-subcategory-primary, #007cba), var(--uudcd-subcategory-hover, #005a87)) !important;
    color: white !important;
    border-color: var(--uudcd-border-color, #007cba) !important;
}

.uudcd-subcategories.custom-colors .udcd-subcategory-link:hover .udcd-subcategory-count {
    background: linear-gradient(135deg, white, rgba(255,255,255,0.8)) !important;
    color: var(--uudcd-subcategory-hover, #005a87) !important;
    border-color: white !important;
}

.uudcd-subcategories.custom-colors .udcd-subcategory-description {
    color: var(--uudcd-text-color, #6c757d) !important;
    border-left: 3px solid var(--uudcd-border-color, #007cba) !important;
    background: var(--uudcd-subcategory-bg-light, rgba(0,124,186,0.05)) !important;
}

/* Custom colors for the subcategory line */
.uudcd-subcategories.custom-colors::before {
    background: linear-gradient(90deg, var(--uudcd-subcategory-primary, #007cba), var(--uudcd-subcategory-hover, #005a87));
}

/* Debug styles */
.uudcd-debug {
    background: #f0f0f0;
    border: 1px solid #ccc;
    padding: 10px;
    margin: 10px 0;
    font-family: monospace;
    font-size: 12px;
}







