/* SimuPoll Custom Styles */

/* General Styles */
.icon-22 {
    width: 22px;
    height: 22px;
}

.icon-40 {
    width: 40px;
    height: 40px;
}

/* Module Cards */
.module-card {
    transition: transform 0.3s ease;
}

.module-card:hover {
    transform: translateY(-5px);
}

/* Demographic Filters */
.filter-section {
    margin-bottom: 1.5rem;
}

.filter-title {
    font-weight: 600;
    margin-bottom: 0.5rem;
}

/* Results Visualization */
.result-card {
    margin-bottom: 1.5rem;
}

.chart-container {
    min-height: 300px;
}

/* Custom Loader */
#loading .loader-body {
    border-color: #3a57e8;
    border-right-color: transparent;
}

/* Ensure visibility of filter checkboxes */
.filter-checkbox-group {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.filter-checkbox {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

.form-check {
    display: block !important;
    visibility: visible !important;
}

/* --- Product Idea Module: Question Type Button UX Improvements --- */

/* Question type buttons container */
.question-types-container {
    margin-bottom: 1rem;
}

/* Question type button styling */
.question-type-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
    padding: 0.75rem 0.5rem;
}

/* Subtitle styling */
.question-subtitle {
    color: rgba(0, 0, 0, 0.6);
    margin-top: 0.25rem;
}

/* Make subtitle text readable when button is selected */
.btn-check:checked + .btn .question-subtitle {
    color: #fff;
    font-weight: 500;
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
    .question-type-label {
        padding: 0.5rem 0.25rem;
        font-size: 0.9rem;
    }
    
    .question-subtitle {
        font-size: 0.75rem;
    }
}
