/* Shared customer application system: purchase, forwarding, storage, payment and TT. */
:is(#applyForm,#requestForm) .application-entry-summary{position:relative;overflow:hidden;background:linear-gradient(115deg,#15365f,#244f83);border:1px solid #183c69;border-radius:17px;padding:23px 26px;box-shadow:0 8px 22px #183b6a16}
:is(#applyForm,#requestForm) .application-entry-summary:before{content:"";width:5px;position:absolute;inset:0 auto 0 0;background:#8db9ef}
:is(#applyForm,#requestForm) .application-entry-summary small{color:#c2d5ee;letter-spacing:.04em;font-size:11px;margin-bottom:7px}
:is(#applyForm,#requestForm) .application-entry-summary strong{display:block;color:#fff;font-size:23px;letter-spacing:-.5px;line-height:1.4}
:is(#applyForm,#requestForm) .application-entry-summary .btn{background:#ffffff12!important;color:#fff!important;border:1px solid #ffffff45!important;border-radius:10px;padding:12px 17px!important}
:is(#applyForm,#requestForm) .draft-actions{background:linear-gradient(120deg,#edf4ff,#f8fbff);border:1px solid #a8c1e4;border-left:5px solid #28578e;box-shadow:0 7px 20px #173b6c0a;padding:23px 24px;border-radius:15px;gap:20px}
:is(#applyForm,#requestForm) .draft-actions strong{font-size:16px;color:#173c6b;display:block}
:is(#applyForm,#requestForm) .draft-actions p{margin:8px 0 0;color:#5a7090;font-size:12px;line-height:1.8}
:is(#applyForm,#requestForm) .draft-actions button{background:#244e80!important;color:#fff!important;border:1px solid #244e80!important;min-width:130px;padding:13px 22px!important;border-radius:11px;font-size:14px;font-weight:700;box-shadow:0 4px 10px #234b7920}
:is(#applyForm,#requestForm) .draft-actions [role=status]:not(:empty){display:block;margin-top:10px;font-weight:700;color:#244e80}
:is(#applyForm,#requestForm) .draft-actions[data-state=error] [role=status]{color:#b83f50}
:is(#requestForm,#ttForm) .field-caption{display:flex;align-items:baseline;gap:5px;min-height:18px;line-height:1.5}
:is(#requestForm,#ttForm) .field-caption .required{display:inline!important;flex:none;color:#d34e58;font-size:12px;font-weight:700;line-height:1;margin:0}
:is(#applyForm,#requestForm) .application-consent{padding:26px!important;background:#fff!important;border:1px solid #d8e3f2!important;border-radius:17px!important;max-width:920px;margin:0 auto 24px!important;color:#234365}
:is(#applyForm,#requestForm) .application-consent h3{font-size:21px!important;color:#17365e;margin:0!important;line-height:1.5}
:is(#applyForm,#requestForm) .application-consent>p{font-size:13px;color:#6d819d;line-height:1.8}
:is(#applyForm,#requestForm) .application-consent>ul{list-style:none;padding:19px!important;max-height:260px;overflow:auto;overscroll-behavior:contain;background:#f5f8fd;border:1px solid #dce6f3;border-radius:12px;line-height:1.9;font-size:12px;color:#526b8a;margin:18px 0!important}
:is(#applyForm,#requestForm) .application-consent>ul li+li{margin-top:9px}
:is(#applyForm,#requestForm) .application-consent>label{display:flex;align-items:flex-start;gap:10px;padding:15px;background:#edf3fc;border-radius:10px;color:#244c7f;line-height:1.7;font-size:13px}
:is(#applyForm,#requestForm) .application-consent>label input{flex:none;width:17px;height:17px;margin-top:3px;accent-color:#234c7f}
:is(#applyForm,#requestForm) .application-consent>small{display:block;margin:13px 0;color:#778aa2;font-size:12px}
:is(#applyForm,#requestForm) .consent-next{width:100%;background:#214779!important;color:#fff!important;border:1px solid #214779!important;border-radius:11px!important;padding:15px!important;font-size:14px;font-weight:700;cursor:pointer}
:is(#applyForm,#requestForm) .consent-next:disabled{opacity:.4;cursor:not-allowed}
:is(#applyForm,#requestForm) .application-consent.consent-complete{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#edf3fc!important;padding:18px 22px!important}
:is(#applyForm,#requestForm) .consent-complete>:is(p,ul,label,small){display:none!important}
:is(#applyForm,#requestForm) .consent-complete h3{font-size:14px!important}
:is(#applyForm,#requestForm) .consent-complete .consent-next{width:auto;flex:none;padding:10px 15px!important;font-size:12px;background:#fff!important;color:#244c7f!important;border-color:#c9d9ee!important}
.application-consent-body[hidden]{display:none!important}.application-consent-body{padding:0;border:0;min-width:0;scroll-margin-top:140px}
#requestForm>.application-centers,#requestForm .form-section{border:1px solid #dce5f0;border-radius:15px;background:#fbfcff;padding:22px;margin:20px 0}
#requestForm h3{color:#1a3e6b;font-size:16px;letter-spacing:-.2px}
#requestForm .form-actions{gap:12px;padding-top:16px}
#requestForm .form-actions .btn[type=submit]{border-radius:11px;background:#204778;color:#fff;padding:15px 22px}
#ttForm .tt-panel{border-radius:17px;border-color:#dce5f0;box-shadow:0 6px 24px #183c6b06}
#ttForm .tt-panel-head h2,#ttForm .tt-summary h2{color:#173b67}
@media(max-width:650px){:is(#applyForm,#requestForm) .application-entry-summary{padding:20px;flex-wrap:wrap;gap:15px}:is(#applyForm,#requestForm) .application-entry-summary strong{font-size:21px}:is(#applyForm,#requestForm) .draft-actions{padding:20px;flex-direction:column;align-items:stretch}:is(#applyForm,#requestForm) .draft-actions button{width:100%}:is(#applyForm,#requestForm) .application-consent{padding:19px!important}:is(#applyForm,#requestForm) .application-consent h3{font-size:18px!important}:is(#applyForm,#requestForm) .application-consent>ul{max-height:220px;padding:14px!important}:is(#applyForm,#requestForm) .application-consent.consent-complete{flex-wrap:wrap}#requestForm .form-section{padding:18px}}

.shipping-progress{display:flex;align-items:stretch;gap:12px;padding:0!important;margin:24px 0!important;background:transparent!important;border:0!important}
.shipping-progress>span{display:flex;align-items:center;justify-content:center;gap:10px;flex:1;padding:18px 16px;border:1px solid #d7e3f2;border-radius:13px;background:#edf3fb;color:#6d83a0;font-size:14px;font-weight:600}
.shipping-progress>span b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#dce7f6;color:#45678f;font-size:11px}
.shipping-progress>span.is-current{background:#1b3e6c;color:#fff;border-color:#1b3e6c;box-shadow:0 6px 18px #163c6a20}
.shipping-progress>span.is-current b{background:#ffffff24;color:#fff}
.shipping-progress>span.is-current:after{content:'현재 단계';font-size:10px;color:#d3e5fb;border:1px solid #ffffff40;padding:3px 6px;border-radius:5px;white-space:nowrap}
.shipping-progress>span.is-done{color:#274f80;background:#e4edf9;border-color:#bed0e8}
.shipping-progress>i{align-self:center;color:#9aadc5;font-style:normal}
#modalContent .request-review-overview{font-size:23px!important;font-weight:750;line-height:1.6;color:#fff;background:linear-gradient(115deg,#183b65,#285589);padding:24px 26px;border-radius:15px;margin:22px 0;letter-spacing:-.4px}
#modalContent .request-final-actions{display:flex;flex-wrap:wrap;gap:12px;border-top:1px solid #dce5f1;background:#f1f6fd;border-radius:14px;padding:23px!important;margin:28px 0 0!important}
#modalContent .request-final-actions h3{flex-basis:100%;font-size:19px;color:#193e6d;margin:0 0 4px}
#modalContent .request-final-actions #finishRequest{min-height:52px;background:#214b7c;color:#fff;border:1px solid #214b7c;border-radius:10px;padding:14px 26px;font-size:15px;font-weight:700}
@media(max-width:650px){.shipping-progress{gap:6px}.shipping-progress>span{flex-direction:column;gap:7px;padding:13px 6px;font-size:11px;text-align:center}.shipping-progress>span.is-current:after{font-size:9px}.shipping-progress>i{display:none}#modalContent .request-review-overview{font-size:20px!important;padding:21px}#modalContent .request-final-actions button{width:100%}}

.shipping-progress[hidden]{display:none!important}

.shipping-progress:has(>span:nth-of-type(6)){display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.shipping-progress:has(>span:nth-of-type(6))>span{min-width:0;font-size:13px;padding:14px 10px}@media(max-width:800px){.shipping-progress:has(>span:nth-of-type(6)){grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:430px){.shipping-progress:has(>span:nth-of-type(6)){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Saving a draft and continuing are separate choices in one footer. */
.application-save-next{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:16px;align-items:stretch;margin-top:26px;padding-top:20px;border-top:1px solid #e1e8f2}
:is(#applyForm,#requestForm) .application-save-next .draft-actions{margin:0!important;padding:18px!important;min-width:0;border-radius:12px!important;box-shadow:none}
:is(#applyForm,#requestForm) .application-save-next .draft-actions p{font-size:11px;line-height:1.6;margin:7px 0 0}.application-save-next .draft-actions strong{font-size:13px}
:is(#applyForm,#requestForm) .application-save-next .draft-actions button{min-width:90px!important;padding:11px 15px!important;background:#fff!important;color:#244c83!important;box-shadow:none!important}
.application-save-next>.form-actions,.application-save-next>.purchase-submit-bar{display:flex!important;flex-direction:column;justify-content:center;align-items:stretch;gap:12px;margin:0!important;padding:18px!important;border:1px solid #dbe5f1!important;border-radius:12px;background:#f7faff}
.application-save-next>.form-actions:before{content:'입력 내용을 확인하고 다음 단계로 진행하세요';font-size:12px;color:#607894;line-height:1.6}.application-save-next .purchase-live-summary{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;font-size:12px}.application-save-next [type=submit]{width:100%;min-height:46px}
@media(max-width:800px){.application-save-next{grid-template-columns:minmax(0,1fr)}.application-save-next .draft-actions{flex-wrap:wrap;gap:14px}.application-save-next .draft-actions>div{flex:1;min-width:180px}}

/* Three application types share the same section rhythm and controls. */
:is(#applyForm,#requestForm) :is(.unified-application-section,.form-section,.application-info){box-sizing:border-box;border:1px solid #dce5f1;border-radius:16px;background:#fbfcff;padding:24px;margin:22px 0;min-width:0}
:is(#applyForm,#requestForm) :is(.application-section-title,.form-section>h3){font-size:16px;font-weight:700;color:#173b67;line-height:1.6;margin:0 0 20px;letter-spacing:-.2px}
:is(#applyForm,#requestForm) .purchase-section-heading{display:block;padding:0;margin:0 0 20px;border:0;background:transparent}
:is(#applyForm,#requestForm) .purchase-section-heading>small{display:none}
:is(#applyForm,#requestForm) .purchase-section-heading h3{margin:0 0 10px;font-size:16px;color:#173b67;line-height:1.6}
:is(#applyForm,#requestForm) :is(.purchase-section-heading>p,.application-section-help){font-size:12px;color:#70849e;line-height:1.8;margin:8px 0 0}
:is(#applyForm,#requestForm) .application-info-heading{margin-top:22px;padding-top:20px;border-top:1px solid #e1e8f3;display:flex;align-items:center;justify-content:space-between;gap:12px}
:is(#applyForm,#requestForm) .application-info-heading h3{font-size:14px;margin:0;color:#244c83}
:is(#applyForm,#requestForm) .application-info .application-choice-grid{padding-bottom:0;border-bottom:0;gap:20px}
:is(#applyForm,#requestForm) .application-info label{font-size:12px;gap:8px;color:#607894}
:is(#applyForm,#requestForm) .application-info :is(input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select){min-height:46px;border-radius:10px;font-size:14px;background:#fff}
:is(#applyForm,#requestForm) .application-info :is(.application-types,.application-center-row){gap:8px}
:is(#applyForm,#requestForm) .application-info .application-types span{min-height:46px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:12px;padding:10px 12px}
:is(#applyForm,#requestForm) .application-info :is(.application-address-search,.application-load){border-radius:10px;font-size:12px;min-height:42px;padding:10px 14px}
:is(#applyForm,#requestForm) #serviceFields{background:#f3f7fc;padding:18px;margin:20px 0 0;border-radius:12px}
:is(#applyForm,#requestForm) #serviceFields[hidden]{display:none!important}
:is(#applyForm,#requestForm) .inventory-application-info .application-centers{margin:0;padding:0;border:0}
@media(max-width:650px){:is(#applyForm,#requestForm) :is(.unified-application-section,.form-section,.application-info){padding:18px;margin:18px 0;border-radius:14px}:is(#applyForm,#requestForm) .application-info-heading{flex-wrap:wrap}:is(#applyForm,#requestForm) .application-info .application-types span{padding:10px 8px;font-size:12px}}

/* Readable field feedback and secondary saving actions across application forms. */
:is(#applyForm,#requestForm) .application-field-error{display:block;margin-top:7px;color:#b33247;font-size:13px;line-height:1.6;white-space:normal}
:is(#applyForm,#requestForm) [aria-invalid=true]{border-color:#b83f50!important;box-shadow:0 0 0 3px #b83f5012}
:is(#applyForm,#requestForm) :is(input,textarea,select,button,a):focus-visible{outline:3px solid #8db9ef;outline-offset:3px}
:is(#applyForm,#requestForm) .draft-actions button{background:#fff!important;color:#244e80!important;box-shadow:none;border-color:#c2d3e9!important}
:is(#applyForm,#requestForm) .draft-actions p{font-size:14px}
@media(max-width:650px){:is(#applyForm,#requestForm) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}:is(#applyForm,#requestForm) :is(button,.btn){min-height:44px}:is(#applyForm,#requestForm) label{font-size:14px}}
/* One quiet footer, with just draft and application actions. */
:is(#applyForm,#requestForm) .application-save-compact{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;border-top:1px solid #dce5f1;margin-top:22px;padding:18px 0 0;box-shadow:none;background:transparent}
:is(#applyForm,#requestForm) .application-save-compact>.draft-actions,:is(#applyForm,#requestForm) .application-save-compact>:is(.purchase-submit-bar,.form-actions){display:contents!important}
:is(#applyForm,#requestForm) .application-save-compact .purchase-live-summary{display:none}
:is(#applyForm,#requestForm) .application-save-compact .draft-actions>[role=status]{order:0;flex:1;min-width:180px;font-size:12px;line-height:1.6;margin:0;color:#617b9b}
:is(#applyForm,#requestForm) .application-save-compact .draft-actions>button{order:1;width:auto;min-width:110px;min-height:44px;padding:10px 20px!important;background:#fff!important;color:#244e80!important;border:1px solid #c2d3e9!important;border-radius:10px;box-shadow:none}
:is(#applyForm,#requestForm) .application-save-compact button[type=submit]{order:2;min-width:140px;min-height:44px;padding:10px 24px!important;border-radius:10px;background:#244c83;color:#fff}
:is(#applyForm,#requestForm) .application-save-compact .draft-actions[data-state=error]>[role=status]{color:#b33247}
@media(max-width:650px){:is(#applyForm,#requestForm) .application-save-compact .draft-actions>[role=status]{flex-basis:100%;min-width:0}:is(#applyForm,#requestForm) .application-save-compact .draft-actions>button,:is(#applyForm,#requestForm) .application-save-compact button[type=submit]{flex:1;min-width:0}}
