/* 상담·견적 신청 화면 (2026-11-01, 똑똑하지-Claude, 결정 86) — /question/write/, /question/done/ 전용 */
body.sg-quote{--q-navy:#0E3A63; --q-blue:#1A6DB5; --q-line:#E3E7EB; --q-sub:#6B6D70; --q-ink:#3F4A55; --q-tint:#E9F5FC}
/* 신청 화면에는 떠 있는 '견적문의' 버튼이 필요 없음 */
body.sg-quote .mainQuick{display:none !important}

/* 제목과 본문 사이가 떠 보이던 것 (결정 90): 제목 아래 여백을 줄이고, 파란 상자 윗선과 같은 높이에 오른쪽으로 옅은 선을 이어 한 판으로 */
body.sg-quote #subCon .pageTitle{padding-bottom:44px}
body.sg-quote .question_contact_right{position:relative; padding-top:44px}
/* 가로선은 신청서 폭에만 (파란 상자에 붙이지 않고 양옆 여백 안쪽) — 결정 93 */
body.sg-quote .question_contact_right:before{content:""; position:absolute; top:0; left:70px; right:60px; border-top:1px solid var(--q-line)}
@media screen and (max-width:767px){
  body.sg-quote #subCon .pageTitle{padding-bottom:28px}
  body.sg-quote .question_contact_right:before{display:none}
}

/* 왼쪽 파란 상자: 신뢰 근거 */
body.sg-quote .sgq-trust{margin:22px 0 26px; padding:0; list-style:none}
body.sg-quote .sgq-trust li{position:relative; padding:0 0 0 26px; margin:0 0 10px; font-size:15px; line-height:1.5; color:#fff; word-break:keep-all}
body.sg-quote .sgq-trust li:before{content:"✓"; position:absolute; left:0; top:0; width:18px; height:18px; border-radius:50%; background:rgba(255,255,255,.2); font-size:11px; line-height:18px; text-align:center; font-weight:700}
body.sg-quote .sgq-hours{display:block; margin-top:4px; font-size:13.5px; opacity:.85}

/* 단계 제목 */
body.sg-quote .sgq-block{margin:0 0 26px; padding:0; border:0; min-width:0}
body.sg-quote .sgq-block legend{position:static; width:auto; height:auto; text-indent:0; overflow:visible; line-height:1.4}  /* 옛 기본 스타일의 legend 숨김 해제 */
body.sg-quote .sgq-block legend, body.sg-quote .sgq-step3{display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; padding:0; margin:0 0 14px; font-size:18px; font-weight:800; color:var(--q-navy)}
body.sg-quote .sgq-step{display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:var(--q-navy); color:#fff; font-size:14px; font-weight:800}
body.sg-quote .sgq-block legend em, body.sg-quote .sgq-req{font-style:normal; font-size:13.5px; font-weight:500; color:var(--q-sub)}
body.sg-quote .sgq-req{color:#D2453B}
body.sg-quote .sgq-step3{margin-top:4px}
/* 옛 신청서의 굵은 검은 위·아래 선: 위 선이 ① 제목에 붙어 깨져 보임 → 위 선은 ③ 입력표 위로 옮기고, 색은 남색으로 (결정 89) */
body.sg-quote .questionWrap{border-top:0; border-bottom:2px solid var(--q-navy); padding-top:4px}
body.sg-quote .sgq-step3{margin-bottom:0; padding-bottom:14px; border-bottom:2px solid var(--q-navy)}

/* ① 관심 서비스 카드 */
body.sg-quote .sgq-svc-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px}
body.sg-quote .sgq-svc{position:relative; display:block; margin:0; cursor:pointer}
body.sg-quote .sgq-svc input{position:absolute; opacity:0; width:1px; height:1px}
body.sg-quote .sgq-svc span{display:block; height:100%; padding:14px 16px 13px 46px; border:1.5px solid #D9DDE1; border-radius:8px; background:#fff; transition:border-color .15s, background .15s}
body.sg-quote .sgq-svc span:before{content:""; position:absolute; left:16px; top:16px; width:18px; height:18px; border:1.5px solid #B5BDC5; border-radius:4px; background:#fff}
body.sg-quote .sgq-svc b{display:block; font-size:16px; font-weight:700; color:var(--q-navy)}
body.sg-quote .sgq-svc small{display:block; margin-top:3px; font-size:13px; line-height:1.4; color:var(--q-sub); word-break:keep-all}
body.sg-quote .sgq-svc:hover span{border-color:var(--q-blue)}
body.sg-quote .sgq-svc.is-on span{border-color:var(--q-blue); background:var(--q-tint)}
body.sg-quote .sgq-svc.is-on span:before{border-color:var(--q-blue); background:var(--q-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
body.sg-quote .sgq-svc input:focus-visible + span{outline:3px solid #33A8E0; outline-offset:2px}
body.sg-quote .sgq-hint{margin:12px 0 0; padding:11px 14px; border-radius:6px; background:#F5F7F9; font-size:14px; line-height:1.5; color:var(--q-ink)}
body.sg-quote .sgq-hint:before{content:"💡 "}

/* ② 사업장 정보 */
body.sg-quote .sgq-sel-row{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px}
body.sg-quote .sgq-sel span{display:block; margin-bottom:6px; font-size:14px; font-weight:600; color:var(--q-ink)}
body.sg-quote .sgq-sel input{width:100%; height:46px; padding:0 12px; border:1px solid #CFD5DB; border-radius:6px; background:#fff; font:inherit; font-size:15px; color:var(--q-ink); box-sizing:border-box}
body.sg-quote .sgq-sel input:focus{outline:2px solid var(--q-blue); outline-offset:1px}
body.sg-quote .sgq-sel select{width:100%; height:46px; padding:0 12px; border:1px solid #CFD5DB; border-radius:6px; background:#fff; font:inherit; font-size:15px; color:var(--q-ink)}
body.sg-quote .sgq-sel select:focus{outline:2px solid var(--q-blue); outline-offset:1px}

/* 개인정보 안내·버튼 */
/* 동의 줄: 동의 문구 + 보관기간을 한 줄로, 아래 선과 간격 (결정 91) */
body.sg-quote .sg_privacy{display:flex; align-items:center; margin:0; padding:16px 0}
body.sg-quote .sg_privacy input{flex:0 0 auto; margin:0 8px 0 0}
body.sg-quote .sg_privacy label{margin:0; line-height:1.5}
body.sg-quote .sgq-privsub{margin-left:10px; padding-left:10px; border-left:1px solid #D9DDE1; font-size:13px; color:var(--q-sub)}
@media screen and (max-width:767px){
  body.sg-quote .sg_privacy{align-items:flex-start}
  body.sg-quote .sgq-privsub{display:block; margin:4px 0 0; padding:0; border:0}
}
body.sg-quote #btn_submit{min-width:260px; font-weight:700}

/* 접수 완료 */
body.sg-quote .sgq-done{max-width:640px; margin:0 auto; padding:40px 20px 20px; text-align:center}
body.sg-quote .sgq-done-ico{width:64px; height:64px; margin:0 auto 18px; border-radius:50%; background:var(--q-tint); color:var(--q-blue); font-size:32px; line-height:64px; font-weight:800}
body.sg-quote .sgq-done h2{margin:0 0 14px; font-size:26px; font-weight:800; color:var(--q-navy)}
body.sg-quote .sgq-done > p{font-size:16px; line-height:1.8; color:var(--q-ink)}
body.sg-quote .sgq-done-more{margin:32px 0 0; padding:20px; border-radius:8px; background:#F5F7F9}
body.sg-quote .sgq-done-more p{margin:0 0 10px; font-weight:700; color:var(--q-navy)}
body.sg-quote .sgq-done-more ul{display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:0; padding:0; list-style:none}
body.sg-quote .sgq-done-more a{display:inline-block; padding:7px 14px; border:1px solid #D9DDE1; border-radius:999px; background:#fff; font-size:14.5px; color:var(--q-ink)}
body.sg-quote .sgq-done-more a:hover{border-color:var(--q-blue); color:var(--q-blue)}
body.sg-quote .sgq-done-home{margin-top:28px}
body.sg-quote .sgq-done-home a{display:inline-block; padding:12px 34px}

@media screen and (max-width:767px){
  body.sg-quote .sgq-svc-grid, body.sg-quote .sgq-sel-row{grid-template-columns:1fr}
  body.sg-quote .sgq-block legend, body.sg-quote .sgq-step3{font-size:16.5px}
  body.sg-quote #btn_submit{min-width:0; width:100%}
}

/* 동의 안내 펼쳐 보기: 목적·항목·보유기간·거부권 (2026-11-02) */
body.sg-quote .sgq-privmore{margin:-6px 0 14px 24px; font-size:13px; color:var(--q-sub)}
body.sg-quote .sgq-privmore summary{cursor:pointer; color:#0f75bd; width:max-content}
body.sg-quote .sgq-privmore dl{display:grid; grid-template-columns:5.5em 1fr; gap:6px 10px; margin:10px 0 0; padding:12px 14px; background:#F6F8FA; border-radius:8px; line-height:1.55}
body.sg-quote .sgq-privmore dt{font-weight:700; color:#3A4450}
body.sg-quote .sgq-privmore dd{margin:0}
@media screen and (max-width:767px){
  body.sg-quote .sgq-privmore{margin-left:0}
  body.sg-quote .sgq-privmore dl{grid-template-columns:1fr; gap:2px}
  body.sg-quote .sgq-privmore dd{margin-bottom:6px}
}

/* 필수 칸 별표 — default.css 와 같은 규칙. default.css 는 주소에 버전(?v=)이 없어 옛 사이트를 본 브라우저가
   예전 사본(깨진 require.png)을 쓸 수 있으므로 버전이 붙은 이 파일에도 둠 (2026-11-02) */
body.sg-quote .required, body.sg-quote textarea.required{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M7 3v8M3.5 5l7 4M10.5 5l-7 4' stroke='%23e0393e' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") !important; background-repeat:no-repeat !important; background-position:right 6px top 6px !important; background-size:9px 9px !important}
