/* Inherit base font from the theme */
.asq-analyzer-container, .asq-analyzer-container h1, .asq-analyzer-container h2, .asq-analyzer-container h3, .asq-analyzer-container h4, .asq-analyzer-container p, .asq-analyzer-container label, .asq-analyzer-container button, .asq-analyzer-container input, .asq-analyzer-container textarea {
    font-family: inherit !important;
}

/* Main container styling */
.asq-analyzer-container {
    direction: rtl;
    background-color: #f9f9f9;
    padding: 25px;
    border-radius: 12px;
    border: 1px solid #e0e0e0;
    max-width: 800px;
    margin: 20px auto;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.asq-main-title { text-align: center; color: #2c3e50; }
.asq-analyzer-container h2, .asq-analyzer-container h3 { text-align: center; color: #2c3e50; margin-bottom: 20px; }

/* Form elements */
.asq-form-group { margin-bottom: 20px; }
.asq-form-group label { display: block; margin-bottom: 8px; font-weight: bold; color: #34495e; }
.asq-form-group input[type='text'], .asq-form-group input[type='tel'], .asq-form-group input[type='number'], .asq-form-group textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 8px;
    box-sizing: border-box;
    background-color: #fff;
    transition: border-color 0.3s, box-shadow 0.3s;
}
.asq-form-group input:focus, .asq-form-group textarea:focus {
    border-color: #3498db;
    box-shadow: 0 0 8px rgba(52, 152, 219, 0.3);
    outline: none;
}
.asq-form-group input[type="checkbox"] { width: auto; margin-left: 8px; }

/* Buttons */
.asq-submit-btn, .asq-print-btn, .asq-share-btn {
    display: inline-block;
    width: auto;
    padding: 12px 25px;
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s;
    text-decoration: none;
    text-align: center;
    margin: 5px;
}
.asq-submit-btn { background-color: #3498db; }
.asq-submit-btn:hover { background-color: #2980b9; transform: translateY(-2px); }
.asq-print-btn { background-color: #2ecc71; }
.asq-print-btn:hover { background-color: #27ae60; transform: translateY(-2px); }
.asq-share-btn { background-color: #9b59b6; }
.asq-share-btn:hover { background-color: #8e44ad; transform: translateY(-2px); }


/* Questionnaire sections */
.questionnaire-section {
    margin-top: 30px;
    padding: 20px;
    border-top: 2px solid #3498db;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.question-item, .general-question-item {
    padding: 15px;
    margin-bottom: 15px;
    border-radius: 8px;
    border-right: 5px solid #bdc3c7;
    background-color: #fdfdfd;
}
.question-item p, .general-question-item p { margin: 0 0 10px 0; font-weight: 500;}
.question-options, .general-question-options { display: flex; flex-wrap: wrap; gap: 20px; }
.question-options label, .general-question-options label { font-weight: normal; cursor: pointer; display: flex; align-items: center; }
.question-options input, .general-question-options input { margin-left: 8px; }

/* Results styles */
.results-summary { text-align: center; padding: 20px; background-color: #eaf5ff; border-radius: 12px; }
.result-domain { background-color: #fff; padding: 15px; margin-bottom: 15px; border-radius: 8px; box-shadow: 0 2px 6px rgba(0,0,0,0.05); }
.result-domain h4 { margin-top: 0; color: #2c3e50; border-bottom: 2px solid #eee; padding-bottom: 10px; }
.result-status { font-weight: bold; padding: 5px 10px; border-radius: 5px; color: #fff; display: inline-block; }
.status-normal { background-color: #2ecc71; } 
.status-monitoring { background-color: #f1c40f; } 
.status-referral { background-color: #e74c3c; }

/* Intro & error messages */
.asq-intro { padding: 20px; background: #fff; border-radius: 8px; line-height: 1.7; }
.asq-intro ul { padding-right: 20px; }

.error-message {
    color: #e74c3c; font-weight: bold; text-align: center; margin-bottom: 15px;
    background: #ffebee; padding: 10px; border-radius: 8px; border: 1px solid #e74c3c;
}
.missing-field-section {
    border: 2px solid #e74c3c !important;
    background-color: #fff9f9;
    padding: 20px;
    border-radius: 12px;
}
.domain-error-message {
    color: #c0392b;
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
    background-color: #fbeae5;
    padding: 10px;
    border-radius: 8px;
    display: block;
}

/* Feedback message for sharing */
.asq-feedback-message {
    text-align: center;
    margin-top: 15px;
    padding: 12px;
    background-color: #eaf5ff;
    border: 1px solid #3498db;
    border-radius: 8px;
    color: #2c3e50;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    visibility: hidden;
    height: 0;
    overflow: hidden;
}
.asq-feedback-message.show {
    opacity: 1;
    visibility: visible;
    height: auto;
}

/* Print styles */
@media print {
    body * { visibility: hidden; }
    #wpadminbar, .asq-no-print { display: none !important; }
    .asq-print-area, .asq-print-area * { visibility: visible; }
    .asq-print-area {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        margin: 0;
        padding: 10px;
        box-shadow: none !important;
        border: none !important;
    }
    .asq-print-area .result-domain {
        page-break-inside: avoid;
        box-shadow: none;
        border: 1px solid #ccc;
    }
}

