/* ===== survey ===== */
.survey-wrap { width: 700px; max-width: 100%; margin: 0 auto; }

/* header */
.survey-wrap .survey-header { margin-bottom: 40px; padding-bottom: 15px; border-bottom: 1px solid var(--line); }
.survey-wrap .input-group > .tit { margin-bottom: 12px; }
.survey-wrap .survey-header .survey-meta { display: grid; grid-template-columns: auto 1fr; gap: 4px 14px; margin-top: 10px; font-size: 1.5rem; line-height: 1.6; padding: 15px 20px; background: #efefef; border-radius: 8px;}
.survey-wrap .survey-header .survey-meta dt { font-weight: 600; color: #333; }
.survey-wrap .survey-header .survey-meta dd { margin: 0; color: #333; }
.survey-wrap .survey-header .survey-desc { font-size: 1.6rem; line-height: 1.7; word-break: keep-all; margin-top: 20px; color: #333; }
.survey-wrap .survey-header .survey-required { margin-top: 20px; font-size: 1.3rem; color: #c62828; font-weight: 600; }

/* radio 세로 배치 */
.survey-wrap .input-group .input-radio { display: block; margin: 0 0 12px; }

/* likert table */
.survey-wrap .q-table { width: 100%; border-collapse: collapse; margin-top: 10px; table-layout: fixed; }
.survey-wrap .q-table colgroup .col-label { width: 45%; }
.survey-wrap .q-table thead th { font-size: 1.3rem; font-weight: 600; color: #555; padding: 12px 0; text-align: center; background: #e4e7eb; border-bottom: 1px solid var(--line); word-break: keep-all; line-height: 1.2; }
.survey-wrap .q-table tbody td { padding: 15px 0; text-align: center; border-bottom: 1px solid var(--line); font-size: 1.6rem; color: #333; }
.survey-wrap .q-table tbody td:first-child { text-align: left; font-weight: 600; padding-left: 0; }
.survey-wrap .q-table tbody td .input-radio { display: inline-block; margin: 0; }

/* submit */
.survey-wrap .apply-form-btns { display: flex; justify-content: center; margin-top: 30px; padding-top: 10px; border-top: 1px solid var(--line); }
.survey-wrap .apply-form-btns .btn-wrap { display: flex; gap: 10px; width: 100%; max-width: 350px; }
.survey-wrap .apply-form-btns .btn-wrap .a-btn,
.survey-wrap .apply-form-btns .btn-wrap button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; padding: 14px 0; margin-top: 0; font-size: 1.6rem; font-weight: 600; border-radius: 8px; border: 1px solid #bbb; background: #fff; color: #444; cursor: pointer; transition: border-color 0.2s, background 0.2s; }
.survey-wrap .apply-form-btns .btn-wrap .a-btn { width: 100px;}
.survey-wrap .apply-form-btns .btn-wrap .a-btn:hover { border-color: #888; }
.survey-wrap .apply-form-btns .btn-wrap button[type="submit"] { flex: 1; font-weight: 700; border: 0; background: var(--dark); color: #fff; }
.survey-wrap .apply-form-btns .btn-wrap button[type="submit"]:hover { background: #001a55; }

/* 완료 페이지 */
.survey-wrap .complete-area { text-align: center; padding: 80px 0; }
.survey-wrap .complete-area .complete-icon { margin-bottom: 25px; }
.survey-wrap .complete-area .complete-title { font-size: 2.8rem; font-weight: 800; color: #111; margin-bottom: 15px; }
.survey-wrap .complete-area .complete-desc { font-size: 1.6rem; color: #555; line-height: 1.8; margin-bottom: 40px; }
.survey-wrap .complete-area .complete-btns { display: flex; justify-content: center; gap: 10px; }
.survey-wrap .complete-area .complete-btns .btn-cert { padding: 14px 40px; font-size: 1.6rem; font-weight: 700; border: 0; border-radius: 8px; background: var(--dark); color: #fff; cursor: pointer; transition: background 0.2s; }
.survey-wrap .complete-area .complete-btns .btn-cert:hover { background: #001a55; }
.survey-wrap .complete-area .complete-btns .btn-home { display: inline-flex; align-items: center; padding: 14px 40px; font-size: 1.6rem; font-weight: 600; border: 1px solid #bbb; border-radius: 8px; background: #fff; color: #444; transition: border-color 0.2s; }
.survey-wrap .complete-area .complete-btns .btn-home:hover { border-color: #888; }

@media (max-width: 768px) {
    .survey-wrap .survey-header { margin-bottom: 30px; }
    .survey-wrap .q-table thead th { font-size: 1.2rem; padding: 10px 0; }
    .survey-wrap .q-table tbody td { padding: 12px 0; font-size: 1.5rem; }
    .survey-wrap .survey-header .survey-desc { font-size: 1.4rem;}
    .survey-wrap .survey-header .survey-meta { font-size: 1.4rem; padding: 12px 15px;}
    .survey-wrap .input-group > .tit { font-size: 1.7rem; }

    .survey-wrap .complete-area .complete-title { font-size: 2.4rem; }
}

@media (max-width: 480px) {
    .survey-wrap .apply-form-btns .btn-wrap { max-width: 100%; width: 100%; }
}