.application-dialog { width:min(660px,calc(100% - 32px)); max-height:90svh; overflow-y:auto; border:1px solid #cccdbb; border-radius:22px; padding:30px; background:#fffefa; color:#263f32; box-shadow:0 24px 80px #172d3266; font-family:Pretendard,sans-serif; font-size:19px; line-height:1.7; }
.application-dialog::backdrop { background:#162b24b8; backdrop-filter:blur(4px); }
.application-dialog * { box-sizing:border-box; }
.application-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:15px; color:#80643c; font-size:17px; font-weight:700; }
.application-heading button { border:0; color:#315644; background:#efeee4; border-radius:50%; width:44px; min-height:44px; font-size:28px; cursor:pointer; }
.application-dialog h2 { margin:0; color:#263f32; font-size:29px; font-weight:800; line-height:1.4; letter-spacing:-.03em; }
.application-dialog h2+p { margin:12px 0 20px; color:#63705d; }
.application-steps { display:flex; gap:7px; justify-content:space-between; list-style:none; padding:14px; background:#eaf0e3; border-radius:10px; margin:22px 0; font-size:16px; color:#3d5b42; }
.application-steps li+li::before { content:'→'; padding-right:8px; color:#9c865a; }
.application-fee { padding:14px 16px; border-left:3px solid #ae9059; background:#f4f0e6; font-size:17px; line-height:1.8; margin:18px 0; white-space:pre-line; }
.application-dialog form>label,.application-fields>label { display:block; font-size:19px; font-weight:700; margin-top:18px; }
.application-dialog label>span:not(.application-consent span) { color:#76836e; font-size:15px; font-weight:500; margin-left:8px; }
.application-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.application-dialog input:not([type=checkbox]),.application-dialog textarea { display:block; width:100%; margin-top:8px; padding:13px 14px; border:1px solid #bec8b6; border-radius:10px; background:#fff; color:#263f32; font:inherit; font-size:19px; line-height:1.5; }
.application-dialog input:focus,.application-dialog textarea:focus { outline:2px solid #a98242; outline-offset:2px; }
.application-dialog input::placeholder,.application-dialog textarea::placeholder { color:#79816f; font-size:17px; font-weight:400; }
.application-dialog .application-consent { display:flex; align-items:flex-start; gap:10px; font-size:18px; font-weight:500; }
.application-consent input { flex:0 0 22px; width:22px; height:22px; margin-top:5px; accent-color:#315644; }
.application-consent strong { color:#80643c; font-size:16px; }
.application-privacy { margin-top:24px; border-top:1px solid #dedecd; padding-top:14px; }
.application-privacy summary { font-size:18px; cursor:pointer; }
.application-privacy p { color:#63705d; font-size:16px; line-height:1.85; margin-top:12px; }
.application-connection,.application-error { margin:16px 0; font-size:17px; line-height:1.7; }
.application-error { padding:14px; color:#8a3e31; background:#f7e8e2; border-radius:10px; }
.application-submit { width:100%; margin-top:20px; padding:15px 20px; border:0; border-radius:11px; background:#315644; color:#fffefa; font:inherit; font-weight:750; font-size:20px; min-height:58px; cursor:pointer; }
.application-submit:disabled { opacity:.6; cursor:wait; }
.application-note { margin-top:14px; font-size:16px; color:#63705d; line-height:1.75; }
.application-trap { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }
#applicationSuccess { text-align:center; padding:30px 0; }
.application-success-mark { display:grid; place-items:center; width:65px; height:65px; background:#eaf0e3; color:#315644; border-radius:50%; margin:0 auto 22px; font-size:35px; }
#applicationSuccess p { color:#536357; font-size:18px; margin-top:20px; overflow-wrap:anywhere; }
.application-dialog [hidden] { display:none!important; }
@media(max-width:520px){.application-dialog{padding:23px 20px;max-height:92svh}.application-fields{grid-template-columns:1fr;gap:0}.application-steps{flex-direction:column;gap:8px;font-size:17px}.application-steps li+li::before{content:'';padding:0}.application-dialog h2{font-size:26px}}
@media print {.application-dialog {display:none!important}}
