/* serviceprovider_survey.html 専用のスタイル */

/* メインコンテンツのラッパー */
.survey-content-wrapper {
    /* フォームを中央に配置するため */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start; /* 上部から開始 */
    padding: 24px 16px; /* 上下のパディングを追加 */
    box-sizing: border-box;
    width: 100%;
}

/* フォームカード */
.survey-form-card {
    width: 100%;
    max-width: 600px; /* 最大幅を少し広げます */
    background-color: var(--white);
    padding: 24px; /* パディングを調整 */
    border-radius: 8px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border-color);
}

/* フォームタイトル (h2) */
.survey-form-title-main {
    font-size: 24px; /* style.css の .section-heading に近いサイズ */
    font-weight: 700;
    text-align: center;
    color: var(--text-color-dark);
    margin-bottom: 8px;
}

/* フォームサブタイトル (h3) */
.survey-form-title-sub {
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    color: var(--text-color);
    margin-bottom: 24px;
}

/* フォーム説明文 */
.survey-form-description {
    text-align: center;
    color: var(--text-color);
    margin-bottom: 24px;
    font-size: 18px; /* 基本フォントサイズより少し小さく */
    line-height: 1.6;
}

/* フォーム */
.survey-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.survey-form-group {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* フォームラベル */
.survey-form-label {
    font-size: 16px;
    font-weight: 500;
    color: var(--text-color-dark);
}

/* フォーム入力欄 */
.survey-form-input {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 18px;
    color: var(--text-color-dark);
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.05);
    transition: border-color 0.3s, box-shadow 0.3s;
    box-sizing: border-box; /* パディングを含めて幅100%にするため */
}

.survey-form-input:focus {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(138, 180, 247, 0.3); /* primary-colorの薄い影 */
}

/* フォームボタン (共通の .btn を活用) */
.survey-form-button {
    width: 100%;
    font-size: 18px;
    padding: 14px; /* 少し大きめに */
}

/* 結果表示ボックス */
.survey-result-box {
    margin-top: 24px;
    padding: 16px;
    background-color: var(--background-color); /* ごく薄いグレー */
    border-radius: 6px;
    border: 1px solid var(--border-color);
    min-height: 50px;
}

.survey-result-box.hidden {
    display: none;
}

/* 結果ボックス内の説明文 */
.survey-result-description {
    margin-top: 8px;
    color: var(--text-color);
    font-size: 18px;
}

/* 結果表示メッセージ */
.message-info {
    color: var(--text-color);
    font-weight: 500;
}
.message-warning {
    color: #e67e22; /* オレンジ系 */
    font-weight: 500;
}
.message-success {
    color: var(--secondary-color); /* やわらかい緑 */
    font-weight: 600;
}
.message-error {
    color: #e74c3c; /* 赤系 */
    font-weight: 600;
}

/* 結果のリンクボタン */
.survey-result-link {
    background-color: var(--secondary-color); /* 緑系 */
    margin-top: 16px;
    font-size: 18px;
}

.survey-result-link:hover {
    background-color: #7abf83; /* 少し濃い緑 */
}
