/* 신청 유형(개인 · 법인) 선택 카드 — 입찰 · 비입찰 공통(10-15 범주). 법인 신청을 받는 현장이면 common/fragments.html 이 읽는다.
   색: 현장 style.css 에서 --company-brand · --company-accent · --company-accent-bg 로 바꾼다. 없으면 입찰 현장의 --bid-* , 그것도 없으면 기본값 */
.company-select .type-guide { margin: -10px 0 24px; color: #666; font-size: 15px; text-align: center; }
.company-select .type-guide strong { color: #111; font-size: 15px; }
.company-select .type-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 800px; margin: 0 auto 40px; }
.company-select button.type-card {
  display: flex; flex-direction: column; align-items: stretch; width: 100%; height: auto; padding: 0;
  border: 1px solid #e5e5e5; border-radius: 0; background: #fff; text-align: left; letter-spacing: -0.03em;
  font-family: 'Nanum Gothic', sans-serif; cursor: pointer; transition: border-color .15s, background-color .15s;
}
.company-select .type-head { display: flex; flex-direction: column; gap: 6px; padding: 30px 32px 22px; border-bottom: 1px solid #f0f0f0; }
.company-select .type-icon svg { width: 34px; height: 34px; fill: none; stroke: #111; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.company-select .type-name { color: #111; font-size: 26px; font-weight: 800; font-family: NanumSquare, serif; }
.company-select .type-desc { color: #666; font-size: 15px; font-weight: 400; }
.company-select .type-list { display: flex; flex-direction: column; gap: 10px; padding: 22px 32px 26px; flex: 1; }
.company-select .type-list span { position: relative; padding-left: 22px; color: #333; font-size: 14px; font-weight: 400; line-height: 1.5; }
.company-select .type-list span::before { position: absolute; left: 0; top: 0; font-weight: 800; }
.company-select .type-list .ok::before { content: "✓"; color: var(--company-accent, var(--bid-accent, #0096de)); }
.company-select .type-list .no { color: #888; }
.company-select .type-list .no::before { content: "✕"; color: #bbb; }
.company-select .type-go {
  display: flex; justify-content: space-between; align-items: center; height: 56px; padding: 0 32px;
  color: #fff; background: var(--company-brand, var(--bid-brand, #222)); font-size: 16px; font-weight: 700; font-family: NanumSquare, serif;
}
.company-select .type-go i { font-style: normal; color: #fff; font-size: 18px; transition: transform .15s; }
.company-select button.type-card:hover { border-color: var(--company-accent, var(--bid-accent, #0096de)); background: var(--company-accent-bg, var(--bid-accent-bg, #eef7fc)); }
.company-select button.type-card:hover .type-go { background: var(--company-accent, var(--bid-accent, #0096de)); }
.company-select button.type-card:hover .type-go i { transform: translateX(4px); }
@media only screen and (max-width: 620px) {
  .company-select .type-cards { grid-template-columns: 1fr; }
  .company-select .type-head, .company-select .type-list, .company-select .type-go { padding-left: 22px; padding-right: 22px; }
}

/* 신청 유형 카드 — 좁은 화면에서 항목이 줄바꿈되지 않게 여백 · 글자 간격을 조금 줄인다 */
@media only screen and (max-width: 620px) {
  .company-select .type-head, .company-select .type-list, .company-select .type-go { padding-left: 18px; padding-right: 18px; }
  .company-select .type-list span { padding-left: 20px; letter-spacing: -0.05em; }
}
/* 안내 문장은 단어 중간에서 끊지 않는다(한국어 keep-all). 줄바꿈 표시(.m-br)는 좁은 화면에서만 */
.company-select .type-guide { word-break: keep-all; }
.company-select .m-br { display: none; }
@media only screen and (max-width: 620px) { .company-select .m-br { display: inline; } }

/* 법인 정보 입력칸 — 입찰 · 비입찰 공통이라 bid.css 에서 옮겼다(QA-187) */
/* 법인 정보 — 사업자등록번호 칸과 [사업자 확인]은 한 묶음(.input-group, 공통 style.css · QA-155). 좁은 화면에서도 단추가 아래로 떨어지지 않는다 */
/* 법인 정보 입력칸은 모두 같은 폭 — 기본 222px, 좁은 화면에서는 사업자등록번호 칸처럼 [사업자 확인](110px) 자리를 뺀 폭으로 맞춘다 */
.apply .apply-container .insert-company dd > input { box-sizing: border-box; width: min(222px, calc(100% - 110px)) !important; }
.apply .apply-container .insert-company .input-group > input { box-sizing: border-box; width: 222px !important; height: 34px; }
@media only screen and (max-width: 770px) {
  /* 좁은 화면: 항목 이름이 바로 아래 입력칸에 붙고, 항목 사이는 띄워서 어느 칸의 이름인지 보이게 */
  .apply .apply-container .insert-company dl { height: auto !important; margin: 0 0 18px !important; }
  .apply .apply-container .insert-company dt { float: none !important; width: auto !important; height: auto !important; margin: 0 0 6px !important; padding: 0 !important; line-height: 1.4 !important; }
  .apply .apply-container .insert-company dl:last-child { margin-bottom: 6px !important; }  /* 사업장 소재지: 이름 바로 아래 주소 입력(.address) */
  .apply .apply-container .insert-company dd { float: none !important; width: 100% !important; height: auto !important; margin: 0 !important; line-height: normal !important; }
}
