/* 홍판사 우산몰 대량견적 — 테마(umbrella.css)와 같은 네이비·청록 팔레트 */
#umb_quote { --umb-navy:#16324c; --umb-teal:#246577; --umb-line:#d6e1e5; --umb-soft:#f4f8f9; --umb-text:#222; --umb-sub:#405b69;
    max-width:720px; margin:0 auto; padding:24px 16px 48px; color:var(--umb-text); font-size:16px; word-break:keep-all; }
#umb_quote h2 { margin:0 0 8px; font-size:clamp(22px, 5vw, 28px); letter-spacing:-.03em; color:var(--umb-navy); }
#umb_quote .umb_q_lead { margin:0 0 20px; padding:14px 16px; background:#eaf3f6; border-radius:12px; color:var(--umb-sub); line-height:1.65; font-size:15px; }
#umb_quote .umb_q_lead a { color:var(--umb-navy); font-weight:700; white-space:nowrap; }
#umb_quote fieldset { min-width:0; margin:0 0 16px; padding:16px; border:1px solid var(--umb-line); border-radius:12px; background:#fff; }
#umb_quote legend { padding:0 8px; font-weight:700; color:var(--umb-navy); }
#umb_quote p { margin:0 0 14px; }
#umb_quote fieldset p:last-child { margin-bottom:0; }
#umb_quote label { display:block; margin-bottom:6px; font-size:14px; font-weight:600; color:#334; }
#umb_quote label b { color:#c62828; }
#umb_quote input[type=text], #umb_quote input[type=tel], #umb_quote input[type=email],
#umb_quote input[type=number], #umb_quote input[type=date], #umb_quote textarea {
    width:100%; box-sizing:border-box; min-height:48px; padding:10px 12px; border:1px solid #b2c7cf; border-radius:8px; background:#fff; font-size:16px; color:var(--umb-text); font-family:inherit; }
#umb_quote textarea { min-height:110px; resize:vertical; line-height:1.5; }
#umb_quote input::placeholder, #umb_quote textarea::placeholder { color:#8a9aa3; }
#umb_quote input[type=file] { width:100%; box-sizing:border-box; padding:10px; border:1px dashed #b2c7cf; border-radius:8px; background:var(--umb-soft); font-size:14px; }
#umb_quote :is(input, textarea, button, a):focus-visible { outline:3px solid var(--umb-teal); outline-offset:2px; }
#umb_quote input:not([type=checkbox]):not([type=radio]):focus, #umb_quote textarea:focus { border-color:var(--umb-teal); }
#umb_quote input[type=radio], #umb_quote input[type=checkbox] { width:20px; height:20px; margin:0; accent-color:var(--umb-navy); flex-shrink:0; }
#umb_quote .umb_q_radio { display:flex; flex-wrap:wrap; gap:4px 16px; align-items:center; }
#umb_quote .umb_q_radio label { display:inline-flex; align-items:center; gap:8px; margin:0; min-height:44px; font-weight:500; font-size:15px; color:var(--umb-text); cursor:pointer; }
#umb_quote .umb_q_radio span { flex:0 0 100%; font-size:14px; font-weight:600; color:#334; }
#umb_quote .umb_q_hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
#umb_quote .umb_q_agree { padding:14px 16px; margin-bottom:16px; background:var(--umb-soft); border-radius:12px; font-size:13px; line-height:1.6; color:var(--umb-sub); }
#umb_quote .umb_q_agree label { display:flex; align-items:center; gap:8px; margin:0 0 8px; min-height:44px; font-size:15px; font-weight:500; color:var(--umb-text); }
#umb_quote .umb_q_agree p { margin:0 0 6px; }
#umb_quote .umb_q_agree a { color:var(--umb-teal); }
#umb_quote .umb_q_submit { display:block; width:100%; min-height:54px; border:0; border-radius:8px; background:var(--umb-navy); color:#fff; font-size:17px; font-weight:700; cursor:pointer; }
#umb_quote .umb_q_submit:hover { background:var(--umb-teal); }
#umb_quote .umb_q_submit:disabled { opacity:.6; cursor:default; }
#umb_quote .umb_q_lookup { margin-top:16px; text-align:center; }
#umb_quote .umb_q_lookup a { color:var(--umb-teal); font-weight:600; }

/* PC 견적 신청 */
.shop-content #umb_quote.umb_q_request { max-width:none; padding-inline:0; }
@media (min-width:1000px) {
    .shop-content #umb_quote.umb_q_request form { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:16px; }
    .shop-content #umb_quote.umb_q_request form > :is(fieldset, .umb_q_agree, .umb_q_lookup) { margin:0; }
    .shop-content #umb_quote.umb_q_request form > :is(.umb_q_agree, .umb_q_submit, .umb_q_lookup) { grid-column:1 / -1; }
}

/* 접수 완료·조회 */
#umb_quote .umb_q_done { text-align:center; }
#umb_quote .umb_q_no strong { font-size:22px; color:var(--umb-navy); }
#umb_quote .umb_q_actions { display:flex; gap:8px; justify-content:center; margin:20px 0; }
#umb_quote .umb_q_btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border:1px solid var(--umb-navy); border-radius:8px; background:var(--umb-navy); color:#fff; font-weight:700; text-decoration:none; }
#umb_quote .umb_q_btn:hover { background:var(--umb-teal); border-color:var(--umb-teal); }
#umb_quote .umb_q_btn.line { background:#fff; color:var(--umb-navy); }
#umb_quote .umb_q_btn.line:hover { background:#f3f9fa; border-color:var(--umb-teal); color:var(--umb-teal); }
#umb_quote .umb_q_msg { padding:12px 14px; background:#fff4f4; border:1px solid #f0c4c4; border-radius:8px; color:#a22; }
#umb_quote .umb_q_result { margin-top:20px; padding:16px; border:1px solid var(--umb-line); border-radius:12px; text-align:left; }
#umb_quote .umb_q_result dl { margin:0; }
#umb_quote .umb_q_result dl div { display:flex; gap:10px; padding:10px 0; border-top:1px solid #e6eef1; }
#umb_quote .umb_q_result dt { flex:0 0 100px; color:var(--umb-sub); }
#umb_quote .umb_q_result dd { margin:0; flex:1; min-width:0; overflow-wrap:anywhere; }
#umb_quote .umb_q_timeline { margin:12px 0 0; padding-left:20px; font-size:14px; color:#445; }
#umb_quote .umb_q_timeline span { color:#889; margin-right:6px; }

#umb_quote .umb_q_lookup_form { padding:16px; border:1px solid var(--umb-line); border-radius:12px; background:#fff; }
#umb_quote .umb_q_tel { margin-top:16px; color:var(--umb-sub); }
#umb_quote .umb_q_tel a { color:var(--umb-navy); font-weight:700; }
@media (max-width:480px) {
    #umb_quote { padding:16px 12px 40px; }
    #umb_quote fieldset { padding:14px 12px; }
    #umb_quote .umb_q_actions { flex-direction:column; }
    #umb_quote .umb_q_result dt { flex-basis:80px; }
}
/* 모바일 하단 고정 전화·견적 바가 제출 버튼을 가리지 않게 */
@media (max-width:768px) { #umb_quote { padding-bottom:96px; } }
@media (prefers-reduced-motion:reduce) { #umb_quote * { transition:none !important; } }
